end-of-line normalization
[u/mrichter/AliRoot.git] / TRD / AliTRDtrackletBase.h
CommitLineData
a65a7e70 1#ifndef ALITRDTRACKLETBASE_H
2#define ALITRDTRACKLETBASE_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7/* $Id: AliTRDtrackletBase.h 26327 2008-06-02 15:36:18Z cblume $ */
8
9////////////////////////////////////////////////////////////////////////////
10// //
11// TRD tracklet //
12// abstract base class for TRD tracklets //
13// //
14// Authors //
15// Alex Bercuci (A.Bercuci@gsi.de) //
16// Jochen Klein (jochen.klein@cern.ch) //
17// //
18////////////////////////////////////////////////////////////////////////////
19
20#ifndef ROOT_TObject
21#include "TObject.h"
22#endif
23
24class AliTRDtrackletBase : public TObject {
25
26 public:
27
28 AliTRDtrackletBase() : TObject() {}
29 AliTRDtrackletBase(const AliTRDtrackletBase &o) : TObject(o) {}
30 virtual ~AliTRDtrackletBase() {}
31
32 AliTRDtrackletBase& operator=(const AliTRDtrackletBase &o) { TObject::operator=(o); return *this; }
33
34 virtual Bool_t CookPID() = 0;
35
36 virtual Int_t GetDetector() const = 0 ;
37 virtual Int_t GetHCId() const { return 2 * GetDetector() + (GetYbin() > 0 ? 1 : 0); }
38
39 virtual Float_t GetX() const = 0;
40 virtual Float_t GetY() const = 0;
41 virtual Float_t GetZ() const = 0;
42 virtual Float_t GetdYdX() const = 0;
43 virtual Float_t GetdZdX() const { return 0; }
44
45 virtual Int_t GetdY() const = 0; // in units of 140um
46 virtual Int_t GetYbin() const = 0; // in units of 160um
47 virtual Int_t GetZbin() const = 0; // in pad length units
48
49 virtual Double_t GetPID(Int_t is=-1) const = 0;
50
51 virtual void LocalToGlobal(Float_t&, Float_t&, Float_t&, Float_t&) {}
52
53 virtual void Print(Option_t * /*option=""*/) const {}
54
55 virtual UInt_t GetTrackletWord() const = 0;
56
57 virtual void SetDetector(Int_t id) = 0;
58
59 protected:
60
61 ClassDef(AliTRDtrackletBase, 1); // Base class for TRD on- and offline tracklets
62
63};
64
65#endif