1 #ifndef ALITPCCLUSTERKR_H
\r\r
2 #define ALITPCCLUSTERKR_H
\r\r
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
\r\r
4 * See cxx source for full Copyright notice */
\r\r
6 /* $Id: AliTPCclusterKr.h,v 1.8 2008/01/22 16:07:15 matyja Exp $ */
\r\r
8 //-------------------------------------------------------
\r\r
9 // TPC Kr Cluster Class
\r\r
11 // Origin: Adam Matyja, INP PAN, adam.matyja@ifj.edu.pl
\r\r
12 //-------------------------------------------------------
\r\r
14 #include "AliCluster.h"
\r\r
15 #include "TObjArray.h"
\r\r
16 #include "AliTPCvtpr.h"
\r\r
17 //#include "TH1F.h"
\r\r
18 #include "TMath.h"
\r\r
19 #include "TArrayI.h"
\r\r
21 //_____________________________________________________________________________
\r\r
22 class AliTPCclusterKr: public AliCluster{
\r\r
24 AliTPCclusterKr();
\r\r
25 AliTPCclusterKr(const AliTPCclusterKr & param);//copy constructor
\r\r
26 AliTPCclusterKr &operator = (const AliTPCclusterKr & param);
\r\r
27 virtual ~AliTPCclusterKr();
\r\r
29 virtual void SetCenter();//set center of the cluster weighted by charge
\r\r
31 virtual void SetMax(AliTPCvtpr q){fMax=q;}//set values of max. in cluster
\r\r
32 virtual void SetADCcluster(Int_t q){fADCcluster=q;}
\r\r
33 virtual void SetSec(Short_t q){fSec=q;}
\r\r
34 virtual void SetNPads(Short_t q){fNPads=q;}
\r\r
35 virtual void SetNRows(Short_t q){fNRows=q;}
\r\r
36 virtual void SetSize(){fSize=fCluster->GetEntriesFast();}
\r\r
37 virtual void SetCenterX(Double_t q){fCenterX=q;}
\r\r
38 virtual void SetCenterY(Double_t q){fCenterY=q;}
\r\r
39 virtual void SetCenterT(Double_t q){fCenterT=q;}
\r\r
41 virtual void SetTimebins1D(Short_t q){fTimebins1D=q;}
\r\r
42 virtual void SetPads1D(Short_t q){fPads1D=q;}
\r\r
43 virtual void Set1D();
\r\r
44 virtual void SetPadRMS(Double_t q){fPadRMS=q;}
\r\r
45 virtual void SetRowRMS(Double_t q){fRowRMS=q;}
\r\r
46 virtual void SetTimebinRMS(Double_t q){fTimebinRMS=q;}
\r\r
47 virtual void SetPadRMS();
\r\r
48 virtual void SetRowRMS();
\r\r
49 virtual void SetTimebinRMS();
\r\r
50 virtual void SetRMS();
\r\r
51 virtual void SetTimeStamp(UInt_t timestamp){ fTimeStamp = timestamp; }
\r\r
52 //void AddDigitToCluster(AliTPCvtpr *q){fCluster.push_back(q);}
\r\r
53 virtual void AddDigitToCluster(AliTPCvtpr *q){
\r\r
54 fCluster->AddLast(q);
\r\r
55 //fCluster->Compress();
\r\r
58 AliTPCvtpr GetMax() const {return fMax;}
\r\r
59 Int_t GetADCcluster() const {return fADCcluster;}
\r\r
60 Short_t GetSec() const {return fSec;}
\r\r
61 Short_t GetNPads() const {return fNPads;}
\r\r
62 Short_t GetNRows() const {return fNRows;}
\r\r
63 Short_t GetSize() const {return fSize;}
\r\r
65 Short_t GetTimebins1D(){return fTimebins1D;}
\r\r
66 Short_t GetPads1D(){return fPads1D;}
\r\r
67 Double_t GetPadRMS(){return fPadRMS;}
\r\r
68 Double_t GetRowRMS(){return fRowRMS;}
\r\r
69 Double_t GetTimebinRMS(){return fTimebinRMS;}
\r\r
71 Double_t GetCenterX() const {return fCenterX;}
\r\r
72 Double_t GetCenterY() const {return fCenterY;}
\r\r
73 Double_t GetCenterT() const {return fCenterT;}
\r\r
74 AliTPCvtpr *GetDigitFromCluster(Int_t i) const {return (AliTPCvtpr*)fCluster->At(i);}
\r\r
75 UInt_t GetTimeStamp() const {return fTimeStamp;}
\r\r
78 AliTPCvtpr fMax;//max (ADC,timebin,pad,row) in cluster
\r\r
79 Int_t fADCcluster; //ADC of cluster
\r\r
80 Short_t fSec; //sector of the cluster
\r\r
81 Short_t fNPads; //number of pads in cluster
\r\r
82 Short_t fNRows; //number of rows in cluster or row max - min
\r\r
84 Short_t fTimebins1D; //Timebin max - min
\r\r
85 Short_t fPads1D; //Pad max - min
\r\r
86 Double_t fPadRMS; //Pad RMS
\r\r
87 Double_t fRowRMS; //Row RMS
\r\r
88 Double_t fTimebinRMS; //Timebin RMS
\r\r
90 Short_t fSize; //size of vector
\r\r
91 Double_t fCenterX;// X coordinate of the cluster center in cm
\r\r
92 Double_t fCenterY;// Y coordinate of the cluster center in cm
\r\r
93 Double_t fCenterT;// time coordinate of the cluster center in timebins
\r\r
94 //std::vector< AliTPCvtpr*> fCluster;//cluster contents(adc,nt,np,nr)
\r\r
95 TObjArray *fCluster;//cluster contents(adc,nt,np,nr)
\r\r
96 UInt_t fTimeStamp; //time stamp from event header
\r\r
98 ClassDef(AliTPCclusterKr,7) // Time Projection Chamber Kr clusters
\r\r