source: trunk/Mars/msimreflector/MSimReflector.h@ 19955

Last change on this file since 19955 was 19544, checked in by tbretz, 5 years ago
Replaced MReflector by new base class MOptics.
File size: 2.1 KB
Line 
1#ifndef MARS_MSimReflector
2#define MARS_MSimReflector
3
4#ifndef MARS_MTask
5#include "MTask.h"
6#endif
7
8class MParList;
9class MGeomCam;
10class MPointingPos;
11class MPhotonEvent;
12class MCorsikaEvtHeader;
13
14class MOptics;
15
16class MSimReflector : public MTask
17{
18private:
19 MPhotonEvent *fEvt; //! Event storing the photons
20 MPhotonEvent *fMirror0; //! Event storing the photons in the mirror plane (w/o camera shadow)
21 MPhotonEvent *fMirror1; //! Event storing the photons in the mirror plane (w/ camera shadow)
22 MPhotonEvent *fMirror2; //! Event storing the photons in the mirror plane (w/ camera shadow)
23 MPhotonEvent *fMirror3; //! Event storing the photons in the mirror plane (w/ camera shadow)
24 MPhotonEvent *fMirror4; //! Event storing the photons in the mirror plane (w/ camera shadow)
25 //MCorsikaRunHeader *fRunHeader; //! Header storing event information
26 MCorsikaEvtHeader *fEvtHeader; //! Header storing event information
27
28 MOptics *fReflector; //!
29 MGeomCam *fGeomCam; //!
30 MPointingPos *fPointing; //!
31
32 TString fNameGeomCam; // Name of the geometry container storing the APD gemeotry
33 TString fNameReflector; // Name of the container storing the reflector geometry
34
35 Double_t fDetectorFrame; // A disk of radius DetectorFrame around the focal point absorbing photons
36 Double_t fDetectorMargin; // A margin around the detector (MGeomCam::HitCamera) in which photons are also stored
37
38 // MParContainer
39 Int_t ReadEnv(const TEnv &env, TString prefix, Bool_t print);
40
41 // MTask
42 Int_t PreProcess(MParList *pList);
43 Int_t Process();
44
45public:
46 MSimReflector(const char *name=NULL, const char *title=NULL);
47
48 // MSimReflector
49 void SetNameGeomCam(const char *name="MGeomCam") { fNameGeomCam = name; }
50 void SetNameReflector(const char *name="MReflector") { fNameReflector = name; }
51
52 void SetDetectorFrame(Double_t cm=0) { fDetectorFrame = cm; }
53 void SetDetectorMargin(Double_t mm=0) { fDetectorMargin = mm; }
54
55 ClassDef(MSimReflector, 0) // Task to calculate reflection on a mirror
56};
57
58#endif
Note: See TracBrowser for help on using the repository browser.