5 // Class containing MUON data: hits, digits, rawclusters, globaltrigger, localtrigger, etc ...
6 // Gines Martinez, Subatech, September 2003
11 #include "AliLoader.h"
12 #include "AliMUONConstants.h"
18 class AliMUONRawCluster;
20 //__________________________________________________________________
21 /////////////////////////////////////////////////////////////////////
23 // class AliMUONData //
25 /////////////////////////////////////////////////////////////////////
27 class AliMUONData : public TNamed {
30 AliMUONData(AliLoader * loader, const char* name, const char* title);
31 AliMUONData(const AliMUONData& rMUONData);
32 virtual ~AliMUONData();
33 virtual void AddDigit(Int_t id, Int_t* tracks, Int_t* charges,
35 virtual void AddHit(Int_t fIshunt, Int_t track, Int_t iChamber,
36 Int_t idpart, Float_t X, Float_t Y, Float_t Z,
37 Float_t tof, Float_t momentum, Float_t theta,
38 Float_t phi, Float_t length, Float_t destep);
39 virtual void AddGlobalTrigger(Int_t *singlePlus, Int_t *singleMinus,
40 Int_t *singleUndef, Int_t *pairUnlike,
42 virtual void AddLocalTrigger(Int_t* ltrigger);
43 virtual void AddRawCluster(Int_t id, const AliMUONRawCluster& clust);
44 TClonesArray* Hits() {return fHits;}
45 TClonesArray* Digits(Int_t DetectionPlane, Int_t /*Cathode*/)
46 {return ( (TClonesArray*) fDigits->At(DetectionPlane) );}
47 TClonesArray* LocalTrigger() {return fLocalTrigger;}
48 TClonesArray* GlobalTrigger() {return fGlobalTrigger;}
49 TClonesArray* RawClusters(Int_t DetectionPlane)
50 {return ( (TClonesArray*) fRawClusters->At(DetectionPlane) );}
52 virtual AliLoader* GetLoader() {return fLoader;}
53 virtual void SetLoader(AliLoader * loader) {fLoader=loader;}
55 virtual void MakeBranch(Option_t *opt=" ");
56 virtual void SetTreeAddress(Option_t *opt=" ");
58 virtual void ResetHits();
59 virtual void ResetDigits();
60 virtual void ResetTrigger();
61 virtual void ResetRawClusters();
63 TTree* TreeH() {return fLoader->TreeH(); }
64 TTree* TreeD() {return fLoader->TreeD(); }
65 TTree* TreeR() {return fLoader->TreeR(); }
66 TTree* TreeT() {return fLoader->TreeT(); }
67 TTree* TreeP() {return fLoader->TreeP(); }
70 //descendant classes should
71 //use protected interface methods to access these folders
77 TClonesArray* fHits; // One event in treeH per primary track
78 TObjArray* fDigits; // One event in treeD and one branch per detection plane
79 TObjArray* fRawClusters; //One event in TreeR/Rawcluster and one branch per tracking detection plane
80 TClonesArray* fGlobalTrigger; //! List of Global Trigger One event in TreeR/GlobalTriggerBranch
81 TClonesArray* fLocalTrigger; //! List of Local Trigger, ONe event in TreeR/LocalTriggerBranch
85 Int_t fNglobaltrigger;
88 ClassDef(AliMUONData,1)