#ifndef MCBM_RICH_TOTSHIFTER #define MCBM_RICH_TOTSHIFTER #include "FairTask.h" class TClonesArray; class CbmHistManager; class TVector3; #include #include using namespace std; class CbmRichMCbmToTShifter : public FairTask { public: /** * \brief Standard constructor. */ CbmRichMCbmToTShifter(); /** * \brief Standard destructor. */ virtual ~CbmRichMCbmToTShifter() {}; /** * \brief Inherited from FairTask. */ virtual InitStatus Init(); /** * \brief Inherited from FairTask. */ virtual void Exec(Option_t* option); /** * \brief Inherited from FairTask. */ virtual void Finish(); /** * \brief Set output directory where you want to write results (figures and json). * \param[in] dir Path to the output directory. */ void SetOutputDir(const string& dir) {fOutputDir = dir;} /** * \brief Draw histogram from file */ void DrawFromFile( const string& fileName, const string& outputDir); private: TClonesArray* fRichDigis; CbmHistManager* fHM; Int_t fEventNum; string fOutputDir; // output dir for results /** * \brief Initialize histograms. */ void InitHistograms(); /** * \brief Draw histograms. */ void DrawHist(); inline int getDirichAddress(const int dirich){ return (dirich >>16) & 0xffff; } inline int getDirichChannel(const int dirich){ return (dirich) & 0xffff; } Double_t FindPeak( const std::string histName); /** * \brief Copy constructor. */ CbmRichMCbmToTShifter(const CbmRichMCbmToTShifter&); /** * \brief Assignment operator. */ CbmRichMCbmToTShifter& operator=(const CbmRichMCbmToTShifter&); ClassDef(CbmRichMCbmToTShifter,1) }; #endif