source: trunk/Mars/msimcamera/MSimRandomPhotons.h@ 9932

Last change on this file since 9932 was 9913, checked in by tbretz, 14 years ago
Improved the range checks in MSimRandomPhotons.
File size: 1.6 KB
Line 
1#ifndef MARS_MSimRandomPhotons
2#define MARS_MSimRandomPhotons
3
4#ifndef MARS_MTask
5#include "MTask.h"
6#endif
7
8class MGeomCam;
9class MParList;
10class MParSpline;
11class MPhotonEvent;
12class MPhotonStatistics;
13class MCorsikaRunHeader;
14class MPedestalCam;
15
16class MSimRandomPhotons : public MTask
17{
18private:
19 MGeomCam *fGeom; //! container with the geometry
20 MPhotonEvent *fEvt; //! Event storing the photons
21 MPhotonStatistics *fStat; //! Container storing evenet statistics
22// MCorsikaEvtHeader *fEvtHeader; //! Header storing event information
23 MCorsikaRunHeader *fRunHeader; //! Header storing run information
24 MPedestalCam *fRates; // Random count rate per pixel
25
26 // FIXME: Make this a single number per Pixel/APD
27 Double_t fFreqFixed; // [1/ns] A fixed frequency per pixel
28 Double_t fFreqNSB; // [1/ns/cm^2] A frequency depending on area
29
30 Double_t fScale;
31
32 Bool_t fSimulateWavelength;
33
34 TString fNameGeomCam;
35 TString fFileNameNSB;
36
37 // MTask
38 Int_t PreProcess(MParList *pList);
39 Bool_t ReInit(MParList *pList);
40 Int_t Process();
41
42 // MParContainer
43 Int_t ReadEnv(const TEnv &env, TString prefix, Bool_t print=kFALSE);
44
45 // MSimRandomPhotons
46 Bool_t CheckWavelengthRange(const MParSpline &sp, const char *txt) const;
47
48public:
49 MSimRandomPhotons(const char *name=NULL, const char *title=NULL);
50
51 void SetFreq(Float_t fnsb, Float_t fdc) { fFreqNSB=fnsb; fFreqFixed=fdc; }
52
53 void SetNameGeomCam(const char *name="MGeomCam") { fNameGeomCam = name; }
54
55 ClassDef(MSimRandomPhotons, 0) // Simulate possonian photons (like NSB or dark current)
56};
57
58#endif
Note: See TracBrowser for help on using the repository browser.