1 #ifndef WCSim_RootEvent
2 #define WCSim_RootEvent
12 #include "TClonesArray.h"
14 #include "TLorentzVector.h"
62 Double_t
time,Int_t
id);
73 Float_t
GetDir(Int_t i=0)
const {
return (i<3) ?
fDir[i] : 0;}
119 Int_t primaryParentID);
202 void Set(Double_t pi0Vtx[3],
205 Double_t gammaVtx[2][3]);
265 void Clear(Option_t *option =
"");
266 static void Reset(Option_t *option =
"");
268 void SetHeader(Int_t i, Int_t run, int64_t date,Int_t subevtn=1);
277 void SetVtxs(Int_t n, Int_t i, Double_t f) {
fVtxs[n][i]= ( (i<4) ? f : 0);}
288 Double_t gammaVtx[2][3]);
301 Float_t
GetVtxs(Int_t n, Int_t i=0)
const {
return (i<3) ?
fVtxs[n][i]: 0;}
340 std::vector<Double_t> truetime,
341 std::vector<Int_t> primParID);
348 std::vector<int> photon_ids);
368 void Clear(Option_t *option =
"");
369 static void Reset(Option_t *option =
"");
400 for (
int i =
fEventList->GetLast() ; i>=1 ; i--) {
virtual ~WCSimRootEvent()
Double_t GetTruetime() const
WCSimRootTrigger & operator=(const WCSimRootTrigger &in)
Float_t GetGammaE(int i) const
virtual ~WCSimRootCherenkovHit()
enum ETriggerType TriggerType_t
void SetNumDigitizedTubes(Int_t i)
TriggerType_t fTriggerType
const WCSimRootPi0 * GetPi0Info() const
Int_t GetGammaID(int i) const
WCSimRootCherenkovHit * AddCherenkovHit(Int_t tubeID, std::vector< Double_t > truetime, std::vector< Int_t > primParID)
const WCSimRootEventHeader * GetHeader() const
Int_t GetParentID() const
void SetMode(Int_t index, Int_t value)
bool CompareAllVariables(const WCSimRootTrack *c) const
Float_t GetPdir(Int_t i=0) const
WCSimRootCherenkovHitTime()
Float_t GetPi0Vtx(int i) const
TClonesArray * GetCherenkovHitTimes() const
WCSimRootEventHeader * GetHeader()
static void Reset(Option_t *option="")
void SetVtxs(Int_t n, Int_t i, Double_t f)
Int_t GetNcherenkovdigihits() const
void SetNumTubesHit(Int_t i)
TLorentzVector Get4Vertex(Int_t i)
TClonesArray * GetCherenkovHits() const
WCSimRootEvent & operator=(const WCSimRootEvent &in)
Float_t GetGammaVtx(int i, int j) const
WCSimRootCherenkovDigiHit * RemoveCherenkovDigiHit(WCSimRootCherenkovDigiHit *digit)
Float_t GetVtxs(Int_t n, Int_t i=0) const
Float_t GetVtx(Int_t i=0)
void SetPhotonIds(std::vector< int > photon_ids)
Int_t GetNumTubesHit() const
Int_t fCherenkovHitCounter
Float_t GetStart(Int_t i=0) const
const WCSimRootTrigger * GetTrigger(int number) const
std::vector< Float_t > GetTriggerInfo() const
bool CompareAllVariables(const WCSimRootCherenkovHitTime *c) const
void Clear(Option_t *option="")
std::vector< Float_t > fTriggerInfo
WCSimRootPi0 * GetPi0Info()
Int_t fNcherenkovdigihits_slots
TClonesArray * GetTracks() const
Int_t GetStartvol() const
WCSimRootCherenkovDigiHit * AddCherenkovDigiHit(Double_t q, Double_t t, Int_t tubeid, std::vector< int > photon_ids)
void Clear(Option_t *option="")
Float_t fVtxs[MAX_N_VERTICES][4]
Int_t fNcherenkovhittimes
std::vector< int > GetPhotonIds() const
TClonesArray * fCherenkovDigiHits
bool CompareAllVariables(const WCSimRootPi0 *c) const
Int_t GetVtxsvol(Int_t i) const
bool CompareAllVariables(const WCSimRootEvent *c, bool deep_comparison=false) const
void SetTriggerInfo(TriggerType_t trigger_type, std::vector< Float_t > trigger_info)
Int_t GetParenttype() const
TVector3 GetVertex(Int_t i)
Int_t fMode[MAX_N_VERTICES]
std::vector< int > fPhotonIds
void SetPi0Info(Double_t pi0Vtx[3], Int_t gammaID[2], Double_t gammaE[2], Double_t gammaVtx[2][3])
WCSimRootTrigger * GetTrigger(int number)
WCSimRootEventHeader fEvtHdr
Float_t GetStop(Int_t i=0) const
Int_t GetNtrack_slots() const
virtual ~WCSimRootTrack()
Int_t GetNumberOfEvents() const
Int_t GetMode(Int_t index) const
bool CompareAllVariables(const WCSimRootCherenkovHit *c) const
TClonesArray * fCherenkovHitTimes
WCSimRootCherenkovDigiHit()
static void Reset(Option_t *option="")
WCSimRootTrack * AddTrack(Int_t ipnu, Int_t flag, Double_t m, Double_t p, Double_t E, Int_t startvol, Int_t stopvol, Double_t dir[3], Double_t pdir[3], Double_t stop[3], Double_t start[3], Int_t parenttype, Double_t time, Int_t id)
Int_t GetNcherenkovhits() const
TriggerType_t GetTriggerType() const
TClonesArray * GetCherenkovDigiHits() const
Int_t GetNumberOfSubEvents() const
void SetHeader(Int_t i, Int_t run, int64_t date, Int_t subevtn=1)
virtual ~WCSimRootTrigger()
void Set(Double_t pi0Vtx[3], Int_t gammaID[2], Double_t gammaE[2], Double_t gammaVtx[2][3])
Int_t GetVecRecNumber() const
bool CompareAllVariables(const WCSimRootCherenkovDigiHit *c) const
Int_t fNcherenkovdigihits
static const int MAX_N_VERTICES
Float_t GetDir(Int_t i=0) const
void SetVecRecNumber(Int_t i)
TClonesArray * fCherenkovHits
Int_t GetTotalPe(int i) const
bool CompareAllVariables(const WCSimRootTrigger *c, bool deep_comparison=false) const
void SetVtxsvol(Int_t i, Int_t v)
WCSimRootTrack * RemoveTrack(WCSimRootTrack *track)
void SetVtx(Int_t i, Double_t f)
Int_t GetNcherenkovdigihits_slots() const
Int_t GetNumDigiTubesHit() const
virtual ~WCSimRootCherenkovDigiHit()
Int_t GetNcherenkovhittimes() const
virtual ~WCSimRootCherenkovHitTime()
Int_t fVtxsvol[MAX_N_VERTICES]