source: JEM-EUSO/esaf_cc_at_lal/packages/simulation/radiativetransfer/include/ClearSkyPropagator.hh @ 114

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

actual version of ESAF at CCin2p3

File size: 1.3 KB
Line 
1// ESAF : Euso Simulation and Analysis Framework
2// $Id: ClearSkyPropagator.hh 1717 2005-04-14 16:39:27Z moreggia $
3// Sylvain Moreggia created Jun,  1 2004
4
5#ifndef __CLEARSKYPROPAGATOR_HH_
6#define __CLEARSKYPROPAGATOR_HH_
7
8#include "euso.hh"
9#include "BunchPropagator.hh"
10
11class RadiativeProcessesCalculator;
12
13
14class ClearSkyPropagator : public BunchPropagator {
15public:
16    // ctor (should not be used)
17    ClearSkyPropagator();
18   
19    // ctor, copy RadiatvieTransfer ground description
20    ClearSkyPropagator(const Ground*);
21
22    // dtor
23    virtual ~ClearSkyPropagator();
24
25    // Transport a BunchOfPhotons in clear sky conditions
26    // if relevant, generates SinglePhotons all along the travel (filling ListPhotonsInAtmosphere)
27    virtual Medium Go(BunchOfPhotons&,ListPhotonsInAtmosphere&) const = 0;
28
29    // get ready for next event
30    // NB: fCalcul must be reset by child classes
31    virtual void Reset() = 0;
32   
33    // Get members methods
34    inline Int_t GetOrder() const {return fOrder;}
35   
36protected:
37
38    RadiativeProcessesCalculator* fCalcul;    // calculate coefficients of photon-atmosphere interactions
39    Int_t fOrder;                             // order of propagation complexity
40
41    ClassDef(ClearSkyPropagator,0)
42};
43
44#endif  /* __CLEARSKYPROPAGATOR_HH_ */
45
Note: See TracBrowser for help on using the repository browser.