/* * AculCalParsScint.h * * Created on: Oct 21, 2016 * Author: vratik */ #ifndef ACULCALIB_ACULCALPARSSCINT_H_ #define ACULCALIB_ACULCALPARSSCINT_H_ #include "AculCalPars.h" #include "AculCalParsScintFile.h" //#include "TCutG.h" using std::cerr; class AculCalParsScint: public AculCalPars { private: Int_t fNoCrystals; TString fDetName; TString fPartName; Int_t fNoFiles; vector fFilePars; //todo following parameters should be probably moved to AculCalParsScintFile //as far as they are related to each file separately vector fCutName; vector fCuts; Int_t fEnergyPoints; TString fCutsFileName; Int_t fNoCuts; //number of cuts public: AculCalParsScint(); AculCalParsScint(const char* parFile); virtual ~AculCalParsScint(); ClassDef(AculCalParsScint, 1); virtual void Init(); void PrintParameters(const char* option = ""); // If option contains "all", all parameters will be printed out. // By default important parameters only will be printed out. void Reset(); //getters Int_t GetNoCrystals() {return fNoCrystals;} const char* GetDetName() {return fDetName.Data();} const char* GetParticleName() {return fPartName.Data();} Int_t GetNoRawFiles() {return fNoFiles;} const char* GetFileName(Int_t i); const char* GetCutName(Int_t i); Int_t GetNoEPoints() {return fEnergyPoints;} Double_t GetCalEnergy(Int_t i); const char* GetCutsFileName() {return fCutsFileName.Data();} Int_t GetNoCuts() {return fNoCuts;} TCutG* GetCut(Int_t i); TCutG* GetCut(const char* cutName); Int_t GetMinChannel(Int_t energy, Int_t crystal); Int_t GetMaxChannel(Int_t energy, Int_t crystal); //private: void LoadCuts(); protected: void SetPars(); }; #endif /* ACULCALIB_ACULCALPARSSCINT_H_ */