Universita' di GenovaINFN Sezione di Genova  
AIRWATCH / EUSO Genova

TestLightToEuso

#include "TestLightToEuso.hh"

TestLightToEuso


class description - source file - inheritance tree (.pdf)

class TestLightToEuso : public LightToEuso

Inheritance Chart:
EsafConfigurable
EsafMsgSource
<-
LightToEuso
<-
TestLightToEuso
    private:
PhotonsOnPupil* MakeCFluxDiffuse(const Double_t& th1, const Double_t& th2, const Double_t rad, Int_t nPhotons, const Double_t& tm) PhotonsOnPupil* MakeCircle(const Double_t& ph1, const Double_t& ph2, const Double_t& th, Int_t nPhotons, const Double_t& tm) PhotonsOnPupil* MakeDiffuse(const Double_t& th1, const Double_t& th2, const Double_t rad, Int_t nPhotons, const Double_t& tm) PhotonsOnPupil* MakeExtCircle(const Double_t& ph1, const Double_t& ph2, const Double_t& th1, const Double_t th2, Int_t nPhotons, const Double_t& tm) PhotonsOnPupil* MakeExtRadius(const Double_t& ph, const Double_t& th1, const Double_t& th2, Int_t nPhotons, const Double_t& tm) PhotonsOnPupil* MakeExtSpot(const Double_t& th1, const Double_t& ph1, const Double_t rad, Int_t nPhotons, const Double_t& tm) PhotonsOnPupil* MakeRadius(const Double_t& ph, const Double_t& th1, const Double_t& th2, Int_t nPhotons, const Double_t& tm) PhotonsOnPupil* MakeShowerTrack(const DetectorGeometry*) PhotonsOnPupil* MakeSpot(const Double_t& th, const Double_t& ph, Int_t nPhotons, const Double_t& tm) PhotonsOnPupil* MakeTrack(const Double_t& ph1, const Double_t& ph2, const Double_t& th1, const Double_t& th2, Int_t nPhotons, const Double_t& tm) virtual void Reset() public:
TestLightToEuso() virtual ~TestLightToEuso() static TClass* Class() virtual const char* ClassName() const virtual const char* ClassType() const virtual void Configure() virtual PhotonsOnPupil* Get(const DetectorGeometry*) virtual PhysicsData* GetPhysics() virtual MCTruth* GetTruth() virtual TClass* IsA() const virtual void ReplaceInputFile(const char*) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members

    private:
ListPhotonsOnPupil* fPhOnPupil MCTruth* fTruth

Class Description

 This class brings test fPhotons to the Euso Pupil
 The type of events supported are the following:
     SPOT         light from a single point at the same time
     EXTSPOT      light from a single point at the same time
     RANDSPOT     single point randomly chosen
     CIRCLE       light making a circle in focal surface (theta constant,
                  phi 0-360 degrees)
     EXTCIRCLE    light making a thick circle in focal surface (theta
                  constant, phi 0-360 degrees)
     RADIUS       light making a radius (phi constant, theta 0-30 degrees)
     TRACK        light making a track in focal surface with peaked pattern
     SHOWERTRACK  track in the atmosphere

 The parameters needed are the following:
     TestLightToEuso.Type       see above
     TestLightToEuso.Duration   event duration in micro-seconds
     TestLightToEuso.Photons    number of fPhotons generated per event
     TestLightToEuso.Theta1     constant if CIRCLE, SPOT or EXTSPOT,
               				  starting point if EXTCIRCLE, RADIUS or TRACK
     TestLightToEuso.Theta2     ignored if CIRCLE, SPOT or EXTSPOT,
     							  end point if RADIU, EXTCIRCLE or TRACK
     TestLightToEuso.Phi1       starting point if CIRCLE, EXTCIRCLE or TRACK,
     							  constant if RADIUS, SPOT or EXTSPOT
     TestLightToEuso.Phi2       end point if CIRCLE, EXTCIRCLE or TRACK,
                                ignored if RADIUS
     				  or SPOT, radius of the beam in EXTSPOT


TestLightToEuso() : LightToEuso("TEST"), fTruth(NULL)
 Constructor


~TestLightToEuso()
 Destructor


void Reset()
 Reset internal list of fPhotons


PhotonsOnPupil* Get(const DetectorGeometry* dg)
 Returns the list of fPhotons for the pupil.
 The type of photon distribution is determined
 by TestLightToEuso.Type


PhotonsOnPupil* MakeSpot(const Double_t& th, const Double_t& ph, Int_t nPhotons, const Double_t& tm)
 Produce light in a single spot


PhotonsOnPupil* MakeExtSpot(const Double_t& theta, const Double_t& phi, const Double_t radius, Int_t nPhotons, const Double_t& tm)
 Produce light in an extensive spot


PhotonsOnPupil* MakeCircle(const Double_t& ph1, const Double_t& ph2, const Double_t& th, Int_t nPhotons, const Double_t& tm)
 Produce light in a circle


PhotonsOnPupil* MakeExtCircle(const Double_t& ph1, const Double_t& ph2, const Double_t& th1, const Double_t th2, Int_t nPhotons, const Double_t& tm)
 Produce light in a extensive circle (fPhotons with th1 < th < th2)


PhotonsOnPupil* MakeDiffuse(const Double_t& th1, const Double_t& th2, const Double_t rad, Int_t nPhotons, const Double_t& tm)



PhotonsOnPupil* MakeCFluxDiffuse(const Double_t& th1, const Double_t& th2, const Double_t rad, Int_t nPhotons, const Double_t& tm)

PhotonsOnPupil* MakeRadius(const Double_t& ph, const Double_t& th1, const Double_t& th2, Int_t nPhotons, const Double_t& tm)
 Produce light along a focal surface radius.


PhotonsOnPupil* MakeExtRadius(const Double_t& ph, const Double_t& th1, const Double_t& th2, Int_t nPhotons, const Double_t& tm)
 Produce light along a focal surface radius.


PhotonsOnPupil* MakeTrack(const Double_t& ph1, const Double_t& ph2, const Double_t& th1, const Double_t& th2, Int_t nPhotons, const Double_t& tm)
 Produce light along a track


PhotonsOnPupil* MakeShowerTrack(const DetectorGeometry* geo)
 produce light along a track



Inline Functions


                void Configure()
            MCTruth* GetTruth()
        PhysicsData* GetPhysics()
                void ReplaceInputFile(const char*)
         const char* ClassType() const
         const char* ClassName() const
             TClass* Class()
             TClass* IsA() const
                void ShowMembers(TMemberInspector& insp, char* parent)
                void Streamer(TBuffer& b)
                void StreamerNVirtual(TBuffer& b)
About Us | EUSO Official Website | Web pages created by Roberto Pesce and Alessandro Thea - Last Update Wed Nov 16 16:22:08 2005