StFms  0.0.0
FMS software in the STAR framework
StFmsQAHistoMaker.h
Go to the documentation of this file.
1 #ifndef ST_FMS_QAHISTO_MAKER_H
2 #define ST_FMS_QAHISTO_MAKER_H
3 #include <stdio.h>
4 #include <stdlib.h>
5 
6 #include <map>
7 
8 // ROOT
9 class TFile;
10 class TH1F;
11 class TH2F;
12 class TTree;
13 class TObjArray;
14 class TLorentzVector;
15 
16 // STAR
17 #include "StMaker.h"
18 class StMuEvent;
19 class StMuTrack;
20 class StMuDstMaker;
21 class StBemcTables;
22 class StEEmcDb;
23 
25 
26 //only save event QA histograms (run-by-run). Lighter version of StFmsQAMaker
27 class StFmsQAHistoMaker : public StMaker {
28 
29 public:
30  StFmsQAHistoMaker( const char* name = "StFmsQAMaker" );
31 
33 
34  void Clear( const char* opt = "" );
35  void SetOutputFile( Char_t* filename );
36  void SetFmsQA ( Bool_t fmsqa = true ) { mFmsQA = fmsqa; }
37  void SetEmcQA ( Bool_t emcqa = true ) { mEmcQA = emcqa; }
38  void SetEmcEt ( Float_t emcet = 0.2 ) { mEmcEt = emcet; }
39  void SetTrackQA ( Bool_t trackqa = true ) { mTrackQA = trackqa; }
40  Int_t InitRun(Int_t runNumber);
41  Int_t Init();
42  Int_t Make();
43  Int_t Finish();
44 
45 private:
46  void fmsEventQa();
47  void fmsMuDstQa();
48  TFile* mFile;
49  Bool_t mFmsQA;
50  Bool_t mEmcQA;
51  Float_t mEmcEt;
52  Bool_t mTrackQA;
53 
54  UInt_t Rnum; //run number
55  UInt_t ievt; //event number
56  Char_t* mFilename;
57 
58  StBemcTables* mBemcTables;
59  StEEmcDb* mEeDb;
60 
61  //BbcQA
62  TH2F* hbbcratevsevt; //bbc coincidence rate vs event#
63  TH1F* hbunchid;
64 
65  //FmsQA
72 // TH2F* hfmshitEvseta;
73 // TH2F* hfmshitEvsphi;
75  TH2F* hmufmshitEvsChannel; // Like hfmshitEvsChannel but for StMuDst hits
76  TH2F* hmufms1stHitEvsChannel; // 1st hit in cluster
77  TH2F* hmufmsClusterHitEvsChannel; // All hits in clusters
80  TH2F* hmufmscluEvseta; // Like hfmscluEvseta but for StMuDst clusters
82  TH2F* hmufmscluEvsphi; // Like hfmscluEvsphi but for StMuDst clusters
84  TH2F* hmufmsphoEvseta; // Like hfmsphoEvseta but for StMuDst photons
85  TH2F* hmufms1stphoEvseta; // 1st photon in cluster
87  TH2F* hmufmsphoEvsphi; // Like hfmsphoEvsphi but for StMuDst photons
88  TH1F* hmufmsPairMass; // Invariant mass of 2-photon pairs
89  std::map<int, TH2F*> hfmsy0x0;
90 
91  //EmcQA
92  //TH2F* hemchitEtavsevt = new TH2F("hemchitEtavsevt","emc hit #eta vs evt",2e4,0,2e6,100,-1,1);
93 // TH2F* hemcNhitvsevt; //hit with good status
94 // TH2F* hemchitEvsevt;
95 // TH2F* hemchitEvseta;
96 // TH2F* hemchitEvsphi;
103 
104 // TH2F* hemchitEtvseta;
105 // TH2F* hemchitEtvsphi;
106 // TH2F* hemchitEtavsevt; //for Et > 0.2 GeV with good tower status
107 // TH2F* hemchitPhivsevt;
108 // TH2F* hemchitEtavsphi;
109 
120 
121  //TPCQA
124  TH2F* htpcptvsevt;
128 
129  Bool_t isUsableTrack(const StMuTrack& track);
131  ClassDef(StFmsQAHistoMaker,0)
132 };
133 
134 #endif
void SetEmcQA(Bool_t emcqa=true)
StFmsQAHistoMaker(const char *name="StFmsQAMaker")
void SetEmcEt(Float_t emcet=0.2)
Declaration of StFmsGeometry, an FMS database geometry interface.
void SetFmsQA(Bool_t fmsqa=true)
StBemcTables * mBemcTables
void Clear(const char *opt="")
FMSCluster::StFmsGeometry mGeometry
TH2F * hmufmsClusterHitEvsChannel
Int_t InitRun(Int_t runNumber)
void SetOutputFile(Char_t *filename)
std::map< int, TH2F * > hfmsy0x0
Bool_t isUsableTrack(const StMuTrack &track)
void SetTrackQA(Bool_t trackqa=true)