]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TPC/Rec/AliTPCclusterMI.h
make the update of the period level QA safe (by running in a temp location and only...
[u/mrichter/AliRoot.git] / TPC / Rec / AliTPCclusterMI.h
CommitLineData
1c53abe2 1#ifndef ALITPCCLUSTERMI_H
2#define ALITPCCLUSTERMI_H
3
4//-------------------------------------------------------
5// TPC Cluster Class
6d171107 6// Parallel tracking
1c53abe2 7// Origin: Marian Ivanov
8//-------------------------------------------------------
9
6d171107 10/* $Id$ */
11
12
1c53abe2 13#include "AliCluster.h"
14#include "TMath.h"
f5b043b1 15#include "AliTPCclusterInfo.h"
05da1b4e 16#include <AliTrackPointArray.h>
5a10f09e 17
1c53abe2 18//_____________________________________________________________________________
19class AliTPCclusterMI : public AliCluster {
20public:
d101caf3 21 AliTPCclusterMI();
03fe1804 22 AliTPCclusterMI(const AliTPCclusterMI & cluster);
23 AliTPCclusterMI &operator = (const AliTPCclusterMI & cluster); //assignment operator
2f32844a 24 AliTPCclusterMI(Int_t *lab, Float_t *hit);
03fe1804 25 virtual ~AliTPCclusterMI();
f5b043b1 26 virtual void Clear(const Option_t*) { delete fInfo; fInfo=0;}
1c53abe2 27 virtual Bool_t IsSortable() const;
28 virtual Int_t Compare(const TObject* obj) const;
7fd61510 29 inline void Use(Int_t inc=10);
508541c7 30 virtual Int_t GetDetector() const {return fDetector;}
31 virtual Int_t GetRow() const {return fRow;}
1ac29fc4 32 virtual void SetDetector(Int_t detector);
508541c7 33 virtual void SetRow(Int_t row){fRow = (UChar_t)(row%256);}
03fe1804 34 virtual void SetTimeBin(Float_t timeBin){ fTimeBin= timeBin;}
35 virtual void SetPad(Float_t pad){ fPad = pad;}
508541c7 36 //
6c024a0e 37 void SetQ(Float_t q) {fQ=(UShort_t)q;}
1c53abe2 38 void SetType(Char_t type) {fType=type;}
6c024a0e 39 void SetMax(UShort_t max) {fMax=max;}
7fd61510 40 Int_t IsUsed(Int_t th=10) const {return (fUsed>=th) ? 1 : 0;}
1c53abe2 41 Float_t GetQ() const {return TMath::Abs(fQ);}
42 Float_t GetMax() const {return fMax;}
43 Char_t GetType()const {return fType;}
03fe1804 44 Float_t GetTimeBin() const { return fTimeBin;}
45 Float_t GetPad() const { return fPad;}
46 AliTPCclusterInfo * GetInfo() const { return fInfo;}
b127a65f 47 void SetInfo(AliTPCclusterInfo * info);
5a10f09e 48 //
49 AliTPCclusterMI* MakeCluster(AliTrackPoint* point);
32438f4e 50 AliTrackPoint* MakePoint();
e83fd282 51 static void SetGlobalTrackPoint(const AliCluster &cl, AliTrackPoint &point);
52
1c53abe2 53private:
e32b09f8 54 AliTPCclusterInfo * fInfo; // pointer to the cluster debug info
55 Float_t fTimeBin; //time bin coordinate
56 Float_t fPad; //pad coordinate
1c53abe2 57 Short_t fQ ; //Q of cluster (in ADC counts)
1c53abe2 58 Short_t fMax; //maximal amplitude in cluster
e32b09f8 59 Char_t fType; //type of the cluster 0 means golden
7fd61510 60 Char_t fUsed; //counter of usage
508541c7 61 UChar_t fDetector; //detector number
62 UChar_t fRow; //row number number
76dc9fe0 63 ClassDef(AliTPCclusterMI,5) // Time Projection Chamber clusters
1c53abe2 64};
65
7fd61510 66void AliTPCclusterMI::Use(Int_t inc)
67{
68 if (inc>0) fUsed+=inc;
69 else
70 fUsed=0;
71}
72
1c53abe2 73
74
75#endif
76
77