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