source: trunk/Mars/mjobs/MJSimulation.h @ 14792

Last change on this file since 14792 was 14792, checked in by lyard, 7 years ago
Added fits output for MC data
File size: 1.4 KB
Line 
1#ifndef MARS_MJSimulation
2#define MARS_MJSimulation
3
4#ifndef MARS_MJob
5#include "MJob.h"
6#endif
7
8class MHn;
9class MArgs;
10class MParList;
11class MSequence;
12class MWriteRootFile;
13class MWriteFitsFile;
14
15class MJSimulation : public MJob
16{
17public:
18    enum Mode_t { kModeData, kModePed, kModeCal, kModePointRun };
19
20private:
21    Bool_t fForceMode;      // Force execution even if RUNE-section was not foundm
22
23    Bool_t fCamera;         // Switch on/off camera (for fast reflector processing)
24    Bool_t fForceTrigger;   // Force the use of the trigger "electronics"
25
26    Int_t  fOperationMode;  // Operation mode (data, ped, cal, pointrun)
27    Int_t  fRunNumber;      // 8 digits run number to be used for the file names
28
29    Bool_t WriteResult(const MParList &plist, const MSequence &seq, Int_t run);
30    Bool_t CheckEnvLocal();
31
32    void SetupHist(MHn &hist) const;
33    void SetupCommonFileStructure(MWriteRootFile &write) const;
34    void SetupCommonFileStructure(MWriteFitsFile& write) const;
35
36public:
37    MJSimulation(const char *name=NULL, const char *title=NULL);
38
39    void SetForceMode(Bool_t force=kTRUE) { fForceMode = force; }
40
41    void SetMode(Int_t mode) { fOperationMode = mode; }
42
43    void SetRunNumber(Int_t n=-1) { fRunNumber = n%100000000; }
44
45    // Process
46    Bool_t Process(const MArgs &args, const MSequence &seq);
47
48    ClassDef(MJSimulation, 0) // Job to run the simulation (ceres)
49};
50
51#endif
Note: See TracBrowser for help on using the repository browser.