source: branches/Mars_MC/mjobs/MJSimulation.h@ 17010

Last change on this file since 17010 was 14864, checked in by tbretz, 12 years ago
Added the possibility to switch between fits and root files.
File size: 1.5 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 Bool_t fWriteFitsFile;
26
27 Int_t fOperationMode; // Operation mode (data, ped, cal, pointrun)
28 Int_t fRunNumber; // 8 digits run number to be used for the file names
29
30 Bool_t WriteResult(const MParList &plist, const MSequence &seq, Int_t run);
31 Bool_t CheckEnvLocal();
32
33 void SetupHist(MHn &hist) const;
34 void SetupCommonFileStructure(MWriteRootFile &write) const;
35 void SetupCommonFileStructure(MWriteFitsFile& write) const;
36
37public:
38 MJSimulation(const char *name=NULL, const char *title=NULL);
39
40 void SetForceMode(Bool_t force=kTRUE) { fForceMode = force; }
41 void SetMode(Int_t mode) { fOperationMode = mode; }
42 void SetWriteFitsFile(Bool_t fits) { fWriteFitsFile = fits; }
43
44 void SetRunNumber(Int_t n=-1) { fRunNumber = n%100000000; }
45
46 // Process
47 Bool_t Process(const MArgs &args, const MSequence &seq);
48
49 ClassDef(MJSimulation, 0) // Job to run the simulation (ceres)
50};
51
52#endif
Note: See TracBrowser for help on using the repository browser.