source: JEM-EUSO/esaf_lal/tags/v1_r0/esaf/packages/simulation/lightsources/include/ShowerLightSource.hh @ 117

Last change on this file since 117 was 117, checked in by moretto, 11 years ago

ESAF version compilable on mac OS

File size: 1.7 KB
Line 
1// ESAF : Euso Simulation and Analysis Framework
2// $Id: ShowerLightSource.hh 2604 2006-03-20 21:51:35Z thea $
3// Alessandro Thea created Nov, 24 2003
4
5#ifndef __SHOWERLIGHTSOURCE_HH_
6#define __SHOWERLIGHTSOURCE_HH_
7
8#include "euso.hh"
9#include "LightSource.hh"
10#include "BunchOfPhotons.hh"
11#include "ShowerTrack.hh"
12#include <TF2.h>
13#include <TF12.h>
14
15class FluoCalculator;
16class CrkCalculator;
17class ListPhotonsInAtmosphere;
18class PhysicsData;
19 
20class ShowerLightSource : public LightSource, public EsafMsgSource {
21public:
22    // ctor
23    ShowerLightSource();
24 
25    // dtor
26    virtual ~ShowerLightSource();
27 
28    // generate photons
29    virtual PhotonsInAtmosphere* Get( const PhysicsData* );
30
31    MCTruth* Truth();
32   
33    // get ready for next event
34    virtual void Reset();
35
36    // release all the mem hold in the buffers
37    virtual Bool_t ClearMemory();
38
39    EsafConfigClass(LightSource,ShowerLightSource)
40   
41private:
42    BunchOfPhotons* MakeFluoStep(const ShowerStep& step,TF2* EnergyDistribution,
43                                 TF2* LateralDistribution,TF2* AngularDistribution);
44
45    BunchOfPhotons* MakeCerenkovStep(const ShowerStep& step, TF2* EnergyDistribution, 
46                                     TF2* LateralDistribution,TF2* AngularDistribution);
47
48    void Configure();
49
50    ListPhotonsInAtmosphere* fPh_in_atmo;
51    FluoCalculator* fFluocalcul;
52    CrkCalculator* fCrkcalcul;
53    Double_t fShowerNemax;
54    string fEnergyDistributionType;
55    string fEnergyDistributionName;
56    string fLateralDistributionName;
57    string fAngularDistributionName;
58    Bool_t fUseAngDev;                  // (config) if true -> Electrons angular deviation used for Yield calculation
59
60    ClassDef(ShowerLightSource,0)
61};
62
63#endif  /* __SHOWERLIGHTSOURCE_HH_ */
64
Note: See TracBrowser for help on using the repository browser.