source: branches/Mars_McMismatchStudy/msimreflector/MSimRays.h@ 18065

Last change on this file since 18065 was 9903, checked in by tbretz, 14 years ago
Added MSimRays to simulate rays from point sources.
File size: 1.4 KB
Line 
1#ifndef MARS_MSimRays
2#define MARS_MSimRays
3
4#ifndef MARS_MTask
5#include "MTask.h"
6#endif
7
8class MParList;
9class MGeomCam;
10class MPointingPos;
11class MPhotonEvent;
12class MCorsikaEvtHeader;
13
14class MReflector;
15
16class MSimRays : public MTask
17{
18private:
19 MPhotonEvent *fEvt; //! Event storing the photons
20 MReflector *fReflector; //! Geometry of the reflector
21 MPointingPos *fPointPos; //! Direction the telescope is pointing to
22 MPointingPos *fSource; //! Direction the rays are coming from relative to the telescope
23
24 UInt_t fNumPhotons; // Number of photons to be produced
25 Double_t fHeight; //[km] Height of point source (<=0 means infinity)
26
27 TString fNameReflector;
28 TString fNamePointPos;
29 TString fNameSource;
30
31 // MParContainer
32 Int_t ReadEnv(const TEnv &env, TString prefix, Bool_t print);
33
34 // MTask
35 Int_t PreProcess(MParList *pList);
36 Int_t Process();
37
38public:
39 MSimRays(const char *name=NULL, const char *title=NULL);
40
41 void SetNameReflector(const char *name="MReflector") { fNameReflector = name; }
42 void SetNamePointPos(const char *name="MPointingPos") { fNamePointPos = name; }
43 void SetNameSource(const char *name="Source") { fNameSource = name; }
44
45 void SetHeight(Double_t h=-1) { fHeight=h; }
46 void SetNumPhotons(UInt_t n) { fNumPhotons=n; }
47
48 // MSimRays
49 ClassDef(MSimRays, 0) // Task to simulate a source for rays
50};
51
52#endif
Note: See TracBrowser for help on using the repository browser.