9 #include "TLorentzVector.h" 14 #include "FairDetector.h" 32 PndDsk(
const char *name, Bool_t active);
73 virtual void Print()
const;
88 virtual void CopyClones(TClonesArray *cl1, TClonesArray *cl2, Int_t offset);
113 PndDskCerenkov *
AddCerenkov(Int_t trackID, Int_t detectorID, TVector3 position, TVector3 momentum, Double_t time, Double_t energy, Double_t wavelength, Int_t motherTrackID,
114 Int_t motherPdgCode, TString motherPdgName);
116 PndDskFLGHit *
AddHit(Int_t trackID, Int_t detectorID, TVector3 position_store, TVector3 momentum_store, Double_t time, Double_t angIn, Double_t thetaC_store,
117 TVector3 Cherenkov_photon, Int_t light_guide, Int_t
pixel);
123 PndDskParticle *
AddParticle(Int_t trackID, Int_t detectorID, TVector3 position, TVector3 momentum, Double_t time, Int_t pdgCode, TString pdgName, Double_t energy,
124 Int_t motherTrackID, Int_t motherPdgCode, TString motherPdgName, Double_t mass, Double_t angIn, Double_t thetaC, Int_t nPhot);
130 PndDskTrackPoint *
AddTrackPoint(Int_t trackID, Int_t detectorID, TVector3 position, TVector3 momentum, Double_t time, Double_t length, Double_t eLoss);
135 void SetPDE(Double_t pde) { fPDE = pde; }
149 Bool_t ProcessHitsCerenkov(FairVolume *vol = 0);
150 Bool_t ProcessHitsCerenkov_FLG(FairVolume *vol = 0);
158 Bool_t ProcessHitsParticle(FairVolume *vol = 0);
164 Bool_t DoNotTrackCerenkov();
172 TClonesArray *fDskCerenkovCollection;
173 TClonesArray *fDskParticleCollection;
174 TClonesArray *fDskTrackPointCollection;
176 TClonesArray *fDskFLGHitArray;
178 Bool_t fStoreCerenkovs;
179 Bool_t fStoreParticles;
180 Bool_t fStoreTrackPoints;
181 Bool_t fStoreFLGHits;
183 Bool_t fMeasureTotalRefAngle;
196 Double_t fWavelength;
198 Int_t fMotherTrackID;
199 Int_t fMotherPdgCode;
200 TString fMotherPdgName;
205 TVector3 fDetMomentum;
207 Double_t fPrimaryAngleToCerenkov;
208 Double_t fPrimaryHitAngle;
209 TVector3 fPrimaryHitMomentum;
212 TVector3 fEndPosition;
214 TVector3 fEndMomentum;
220 TLorentzVector tmpLVec;
virtual void CopyClones(TClonesArray *cl1, TClonesArray *cl2, Int_t offset)
PndDskFLGHit * AddHit(Int_t trackID, Int_t detectorID, TVector3 position_store, TVector3 momentum_store, Double_t time, Double_t angIn, Double_t thetaC_store, TVector3 Cherenkov_photon, Int_t light_guide, Int_t pixel)
virtual Bool_t ProcessHits(FairVolume *vol=0)
virtual TClonesArray * GetCollection(Int_t iColl) const
void SetTrapFraction(std::string name)
virtual Bool_t CheckIfSensitive(std::string name)
virtual void ConstructGeometry()
void SetDebugLevel(Int_t debugLevel)
virtual void EndOfEvent()
void SetStoreTrackPoints(Bool_t storeTrackPoints)
virtual void Print() const
void SetStoreCerenkovs(Bool_t storeCerenkovs)
void SetStoreParticles(Bool_t storeParticles)
PndDskParticle * AddParticle(Int_t trackID, Int_t detectorID, TVector3 position, TVector3 momentum, Double_t time, Int_t pdgCode, TString pdgName, Double_t energy, Int_t motherTrackID, Int_t motherPdgCode, TString motherPdgName, Double_t mass, Double_t angIn, Double_t thetaC, Int_t nPhot)
PndDskTrackPoint * AddTrackPoint(Int_t trackID, Int_t detectorID, TVector3 position, TVector3 momentum, Double_t time, Double_t length, Double_t eLoss)
Bool_t DichroicMirrorTransmitted(Double_t wavelength, Int_t detector_type)
void SetPDE(Double_t pde)
virtual void Initialize()
PndDskCerenkov * AddCerenkov(Int_t trackID, Int_t detectorID, TVector3 position, TVector3 momentum, Double_t time, Double_t energy, Double_t wavelength, Int_t motherTrackID, Int_t motherPdgCode, TString motherPdgName)