00001 00002 00003 // Program name: CDTrackerModule.cxx 00004 // 00005 // Package: CalDetTracker 00006 // 00007 // Purpose: Search for muon events 00008 // 00009 // Contact: Chris Smith, Ryan Nichol, Leo Jenner or Jeff Hartnell 00011 00012 #ifndef CDTRACKERMODULE_H 00013 #define CDTRACKERMODULE_H 00014 00015 class TClonesArray; 00016 class TFile; 00017 class TTree; 00018 00019 class CandCalDetPIDHandle; 00020 class CandCalDetSIHandle; 00021 #include "JobControl/JobCModule.h" 00022 class MomNavigator; 00023 #include "Conventions/SimFlag.h" 00024 00025 class CDTrackedHitInfo; 00026 class CDTrackInfo; 00027 class CDTrackerOptions; 00028 class CDPIDInfo; 00029 00030 class CDTrackerModule : public JobCModule 00031 { 00032 public: 00033 CDTrackerModule(); // Class constructor 00034 00035 // JobCModule methods implemented by this module 00036 00037 JobCResult Ana(const MomNavigator *mom); // Analysis method 00038 void HandleCommand(JobCommand* cmd); // Handle a job command 00039 void EndJob(); 00040 00041 // Methods specific to the analysis this module does 00042 00043 private: 00044 00045 void CleanDataMembers(); 00046 void FillPID(CandCalDetSIHandle* CDSI); 00047 void FillPID(const CandCalDetPIDHandle* cdpid); 00048 void InitialiseTree(); 00049 TFile* OpenFile(Int_t runNumber,Int_t runNumberSub); 00050 00051 bool ffirstrecord; //this is set to TRUE in constructor in order to 00052 //get validity info from the first record 00053 00054 Float_t fBeamMomentum; 00055 Int_t fNumDeadChips; 00056 Float_t fTemperature; 00057 SimFlag::SimFlag_t fSimFlag; 00058 Int_t frun; 00059 Int_t fsubrun; 00060 Int_t fsnarl; 00061 Int_t fSec; 00062 Int_t fStartSnarl; 00063 Int_t fEndSnarl; 00064 Int_t fStartTime; 00065 Int_t fEndTime; 00066 Char_t ftag[256]; 00067 00068 TFile *fsavefile;//File for saving trees 00069 00070 CDTrackerOptions *fTrkOpt;//tracking options 00071 00072 TTree *ftree;// Tree to save hits info and pid 00073 00074 CDTrackInfo *fTrkInfo;// Info from track 00075 TClonesArray *fTrkHits;// Tracked hit info ClonesArray 00076 TClonesArray *fStTrkHits;// Tracked hit info ClonesArray assuming 00077 // straight tracks 00078 TClonesArray *fCCHits;// Cosmic Counter hit info ClonesArray 00079 TClonesArray *fXTalkHits;// Cross Talk hit info ClonesArray 00080 TClonesArray *fUnTrkHits;// UnTracked hit info ClonesArray 00081 // (Does not include crosstalk hits either, 00082 // if crosstalker is used) 00083 TClonesArray *fTruthHits;// Tracked hit info ClonesArray 00084 00085 CDPIDInfo *fPID;//PID info from CalDetSI 00086 00087 Int_t fJustWriteTracks; 00088 Int_t fOverwriteFile; 00089 Int_t fWritePID; 00090 Int_t fWriteTruth; 00091 }; 00092 #endif // CDTRACKERMODULE_H 00093
1.3.9.1