source: branches/Mars_use_drstimefiles/mjobs/MJCalib.h@ 18225

Last change on this file since 18225 was 8439, checked in by tbretz, 18 years ago
*** empty log message ***
File size: 2.1 KB
Line 
1#ifndef MARS_MJCalib
2#define MARS_MJCalib
3
4#ifndef MARS_MJob
5#include "MJob.h"
6#endif
7
8class MRunIter;
9
10class MJCalib : public MJob
11{
12public:
13
14private:
15
16 static const Int_t fgCheckedPixId; //! Default for fCheckedPixId
17
18 enum Storage_t // Possible devices for calibration
19 {
20 kNoStorage,
21 kHistsStorage
22 }; // Possible flags for the storage of results
23
24 Byte_t fStorage; // Bit-field for chosen storage type
25
26 enum Device_t // Possible devices for calibration
27 {
28 kUseBlindPixel,
29 kUsePINDiode
30 };
31
32 Byte_t fDevices; // Bit-field for used devices for calibration
33
34protected:
35
36 Bool_t fIsPixelCheck; // Check a test pixel?
37 Int_t fCheckedPixId; // ID of checked pixel
38
39 Bool_t fIsPulsePosCheck; // Check pulse position?
40
41 Bool_t CheckEnvLocal();
42
43 Bool_t IsNoStorage () const { return TESTBIT(fStorage,kNoStorage); }
44 Bool_t IsHistsStorage () const { return TESTBIT(fStorage,kHistsStorage); }
45
46public:
47 MJCalib();
48
49 Bool_t IsUseBlindPixel() const { return TESTBIT(fDevices,kUseBlindPixel); }
50 Bool_t IsUsePINDiode () const { return TESTBIT(fDevices,kUsePINDiode); }
51
52 void SetCheckedPixId ( const Int_t i=fgCheckedPixId ) { fCheckedPixId = i; }
53
54 void SetNoStorage ( const Bool_t b=kTRUE ) { b ? SETBIT(fStorage,kNoStorage) : CLRBIT(fStorage,kNoStorage); }
55 void SetHistsStorage ( const Bool_t b=kTRUE ) { b ? SETBIT(fStorage,kHistsStorage) : CLRBIT(fStorage,kHistsStorage); }
56
57 void SetPixelCheck ( const Bool_t b=kTRUE ) { fIsPixelCheck = b; }
58 void SetPulsePosCheck ( const Bool_t b=kTRUE ) { fIsPulsePosCheck = b; }
59
60 void SetUseBlindPixel(const Bool_t b=kTRUE) { b ? SETBIT(fDevices,kUseBlindPixel) : CLRBIT(fDevices,kUseBlindPixel); }
61 void SetUsePINDiode(const Bool_t b=kTRUE) { b ? SETBIT(fDevices,kUsePINDiode) : CLRBIT(fDevices,kUsePINDiode); }
62
63 ClassDef(MJCalib, 0) // Base class for calibration jobs
64};
65
66#endif
Note: See TracBrowser for help on using the repository browser.