#ifndef MARS_MJCalib #define MARS_MJCalib #ifndef MARS_MJob #include "MJob.h" #endif class MRunIter; class MJCalib : public MJob { public: enum DataType_t { kIsUseRootData, kIsUseRawData, kIsUseMC }; private: static const Int_t fgCheckedPixId; //! Default for fCheckedPixId Byte_t fDataFlag; // Bit-field to store the data type protected: Bool_t fPixelCheck; // Check a test pixel? Int_t fCheckedPixId; // ID of checked pixel MRunIter *fRuns; // Data files, only used for test applications, default is sequence files! Bool_t CheckEnvLocal(); Byte_t GetDataFlag() { return fDataFlag; } public: MJCalib(); void SetInput(MRunIter *iter) { fRuns = iter; } Bool_t IsUseRawData() const { return fDataFlag==kIsUseRawData; } Bool_t IsUseRootData() const { return fDataFlag==kIsUseRootData; } Bool_t IsUseMC() const { return fDataFlag==kIsUseMC; } void SetUseRawData () { fDataFlag=kIsUseRawData; } void SetUseRootData() { fDataFlag=kIsUseRootData; } void SetUseMC () { fDataFlag=kIsUseMC; } void SetDataType(DataType_t type) { fDataFlag=type; } void SetPixelCheck ( const Bool_t b=kTRUE ) { fPixelCheck = b; } void SetCheckedPixId( const Int_t i=fgCheckedPixId ) { fCheckedPixId = i; } ClassDef(MJCalib, 0) // Base class for calibration jobs }; #endif