WCSimTrueEvent.hh

Go to the documentation of this file.
00001 #ifndef WCSIMTRUEEVENT_HH
00002 #define WCSIMTRUEEVENT_HH
00003 
00004 #include "TObject.h"
00005 
00006 #include <vector>
00007 
00008 class WCSimTrueTrack;
00009 
00010 class WCSimTrueEvent : public TObject {
00011 
00012  public:
00013   WCSimTrueEvent();
00014   ~WCSimTrueEvent();
00015 
00016   void SetHeader( Int_t ipdg,
00017                   Double_t g4vx, Double_t g4vy, Double_t g4vz,
00018                   Double_t g4ex, Double_t g4ey, Double_t g4ez,
00019                   Double_t vx, Double_t vy, Double_t vz,
00020                   Double_t ex, Double_t ey, Double_t ez,
00021                   Double_t px, Double_t py, Double_t pz,
00022                   Double_t trkE, Double_t trkP );
00023 
00024   Int_t GetPDG()  { return fIpdg; }
00025 
00026   Double_t GetG4VtxX() { return fG4VtxX; }
00027   Double_t GetG4VtxY() { return fG4VtxY; }
00028   Double_t GetG4VtxZ() { return fG4VtxZ; }
00029 
00030   Double_t GetG4EndX() { return fG4EndX; }
00031   Double_t GetG4EndY() { return fG4EndY; }
00032   Double_t GetG4EndZ() { return fG4EndZ; }
00033 
00034   Double_t GetVtxX() { return fVtxX; }
00035   Double_t GetVtxY() { return fVtxY; }
00036   Double_t GetVtxZ() { return fVtxZ; }  
00037 
00038   Double_t GetEndX() { return fEndX; }
00039   Double_t GetEndY() { return fEndY; }
00040   Double_t GetEndZ() { return fEndZ; } 
00041   
00042   Double_t GetDirX() { return fDirX; }
00043   Double_t GetDirY() { return fDirY; }
00044   Double_t GetDirZ() { return fDirZ; }
00045 
00046   Double_t GetLength() { return fLength; }
00047 
00048   Double_t GetMomentum() { return fTrkP; }
00049   Double_t GetEnergy()   { return fTrkE; }
00050 
00051   Int_t GetNTracks();  
00052   WCSimTrueTrack* GetTrack(Int_t itrack);
00053 
00054   void AddTrack(WCSimTrueTrack* track);
00055   void ClearTracks();
00056   
00057   void Reset();
00058 
00059   void PrintEvent();
00060 
00061  private:
00062   
00063   Int_t fIpdg;
00064 
00065   Double_t fTrkP;
00066   Double_t fTrkE;
00067 
00068   Double_t fG4VtxX;
00069   Double_t fG4VtxY;
00070   Double_t fG4VtxZ;  
00071   
00072   Double_t fG4EndX;
00073   Double_t fG4EndY;
00074   Double_t fG4EndZ; 
00075 
00076   Double_t fVtxX;
00077   Double_t fVtxY;
00078   Double_t fVtxZ; 
00079 
00080   Double_t fEndX;
00081   Double_t fEndY;
00082   Double_t fEndZ;
00083   
00084   Double_t fDirX;
00085   Double_t fDirY;
00086   Double_t fDirZ;
00087 
00088   Double_t fLength;
00089 
00090   std::vector<WCSimTrueTrack*>* fTrackList;
00091 
00092   ClassDef(WCSimTrueEvent,0)
00093 
00094 };
00095 
00096 #endif