00001 00025 #ifndef StEmcMicroDstMaker_h 00026 #define StEmcMicroDstMaker_h 00027 #include "StMaker.h" 00028 #include "TH1.h" 00029 #include "TFile.h" 00030 #include "TTree.h" 00031 #include "TChain.h" 00032 00033 class StEvent; 00034 class StEmcMicroEvent; 00035 class StEmcFilter; 00036 class StEmcMicroUtil; 00037 00038 class StEmcMicroDstMaker : public StMaker 00039 { 00040 protected: 00041 00042 TH1F* mAcc; 00043 00044 StEvent *mStEvent; 00045 StEmcMicroEvent *mMicroEvent; 00046 00047 TFile *mMicroDstFile; 00048 TTree *mEmcTree; 00049 TString mEventFile; 00050 TString mEventFileOld; 00051 TString mEventDir; 00052 00053 Int_t mFileCounter; 00054 Int_t mAccEv; 00055 00056 StEmcFilter *mPFilter; 00057 StEmcFilter *mGFilter; 00058 00059 StEmcMicroUtil *mMicroUtil; 00060 StEmcMicroDstMaker *mOldMaker; 00061 00062 TChain *mMicroEventChain; 00063 Int_t mNMicroEvents; 00064 Int_t mCurMicroEvent; 00065 Int_t mStart; 00066 00067 Bool_t mDoRead; 00068 Bool_t mDoCreateStEvent; 00069 00070 Bool_t mDoSavePrimaries; 00071 Bool_t mDoSaveGlobals; 00072 Bool_t mDoSaveEmc; 00073 Bool_t mDoSaveFpd; 00074 Bool_t mDoSaveV0; 00075 00076 Int_t initMicroEventFile(); 00077 00078 private: 00079 00080 public: 00081 00082 StEmcMicroDstMaker(const Char_t *name="EmcMicroDst"); 00083 virtual ~StEmcMicroDstMaker(); 00084 Int_t Init(); 00085 Int_t Make(); 00086 Int_t Finish(); 00087 00088 const char* getOutputDir() { return mEventDir.Data(); } 00089 const char* getCurrentFile() { return mEventFile.Data(); } 00090 00091 StEmcFilter* getPrimaryFilter() { return mPFilter; } 00092 StEmcFilter* getGlobalFilter() { return mGFilter; } 00093 StEmcMicroEvent* getMicroEvent() { return mMicroEvent; } 00094 Int_t getNEvents() { return mNMicroEvents; } 00095 StEvent* getStEvent() { return mStEvent; } 00096 00097 void setOutputDir(char *dir) { mEventDir = dir; } 00098 void setCreateStEvent(Bool_t b) { mDoCreateStEvent = b; } 00099 void setSavePrimaries(Bool_t a) { mDoSavePrimaries = a; } 00100 void setSaveGlobals(Bool_t a) { mDoSaveGlobals = a; } 00101 void setSaveEmc(Bool_t a) { mDoSaveEmc = a; } 00102 void setSaveFpd(Bool_t a) { mDoSaveFpd = a; } 00103 void setSaveV0(Bool_t a) { mDoSaveV0 = a; } 00104 void setStart(Int_t a) { mStart = a; } 00105 void setOldMaker(StEmcMicroDstMaker* a) { mOldMaker = a; } 00106 00107 void addMicroEventFile(char*); 00108 00109 00110 ClassDef(StEmcMicroDstMaker,1) 00111 }; 00112 00113 #endif
1.5.9