SinglePhotonPropagator
#include "SinglePhotonPropagator.hh" |
SinglePhotonPropagator
class description - source file - inheritance tree (.pdf)
class SinglePhotonPropagator : public EsafMsgSource
Inheritance Chart: | |||||||||
|
private:
EarthVector EUSO() const Double_t EusoOmega(const EarthVector& pos) const Medium GetNextImpact(const EarthVector&, const EarthVector&, EarthVector&, Bool_t without_clouds = false) const public:
SinglePhotonPropagator() SinglePhotonPropagator(const Ground*, Double_t, Double_t) virtual ~SinglePhotonPropagator() static TClass* Class() void CopyDetectorGeometry(const DetectorGeometry* dg, Bool_t decoupled, Bool_t GrndDetec) void CopyGround(const Ground* g) void DoOnePhoton(SinglePhoton&, Int_t scatorder) const void Go(const vector<SinglePhoton*>&, Int_t scatorder) const virtual TClass* IsA() const void Reset() void SetOmegaMax(Double_t omegamax) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)
Data Members
private:
FastRadiativeProcessesCalculator* fCalcul interaction length, transmission etc.. WITHOUT Lowtran const Ground* fGround copy of the RadativeTransfer ground description object const DetectorGeometry* fDetGeom copy of detector geometry built in RT part Bool_t fDecoupled in case detector geometry is decoupled from RT simu Bool_t fDetAtGrnd flag is true if ground detector simulation //GRNDetec Double_t fMaxPhaseFunction to normalize all the phase function Double_t fOmegaMax factor defining 'reduced solid angle' used in algo Double_t fTofCut maximum TOF treated by scattering simu
Class Description
SinglePhotonPropagator <extensive class description> Config file parameters ====================== <parameter name>: <parameter description> -Valid options: <available options>
SinglePhotonPropagator() : EsafMsgSource()
Constructor
SinglePhotonPropagator(const Ground* g, Double_t maxphfunc, Double_t maxtof)
Constructor which copy RT ground description
~SinglePhotonPropagator()
Destructor
void Go(const vector<SinglePhoton*>& list,Int_t scatorder) const
MC code for photon scattering simulation
void DoOnePhoton(SinglePhoton& s,Int_t scatorder) const
MC propagation : handle rayleigh, clouds and ground for fluo and cerenkov Each scattering order simulation is independent from another
Medium GetNextImpact(const EarthVector& pos,const EarthVector& dir,EarthVector& res,Bool_t without_clouds) const
Calculate the impact upon the next medium according to the given track Return type of the next encountered medium - If pos is underground, NONE medium is returned and impact set to (0,0,-HUGE) OUT OF TOA is handled
void Reset()
ready for next event
Inline Functions
void CopyDetectorGeometry(const DetectorGeometry* dg, Bool_t decoupled, Bool_t GrndDetec) void CopyGround(const Ground* g) void SetOmegaMax(Double_t omegamax) EarthVector EUSO() const Double_t EusoOmega(const EarthVector& pos) const TClass* Class() TClass* IsA() const void ShowMembers(TMemberInspector& insp, char* parent) void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)