/////////////////////////////////////////////////////////////////////////////// // 2002.12.25 P.Murat: STNTUPLE singleton for beam management in AC++ // /////////////////////////////////////////////////////////////////////////////// #ifndef StntupleBeamManager_hh #define StntupleBeamManager_hh #include "TNamed.h" class CotBeam; class SvxBeam; class StntupleBeamManager: public TNamed { //----------------------------------------------------------------------------- // data members //----------------------------------------------------------------------------- protected: static StntupleBeamManager* fgInstance; CotBeam* fCotBeam; SvxBeam* fSvxBeam; Int_t fLastRun; Int_t fHistoryCode; class Cleaner { public: Cleaner (); ~Cleaner(); }; friend class Cleaner; //----------------------------------------------------------------------------- // functions //----------------------------------------------------------------------------- public: StntupleBeamManager(const char* Name = "BeamManager"); virtual ~StntupleBeamManager(); static StntupleBeamManager* Instance(); //----------------------------------------------------------------------------- // accessors //----------------------------------------------------------------------------- Int_t LastRun () { return fLastRun; } Int_t HistoryCode() { return fHistoryCode; } CotBeam* GetCotBeam () { return fCotBeam; } SvxBeam* GetSvxBeam () { return fSvxBeam; } //----------------------------------------------------------------------------- // setters //----------------------------------------------------------------------------- void SetHistoryCode(Int_t Code) { fHistoryCode = Code; } //----------------------------------------------------------------------------- // other methods //----------------------------------------------------------------------------- Int_t BeginRun(Int_t RunNumber,Int_t McFlag); //----------------------------------------------------------------------------- // overloaded methods of TObject //----------------------------------------------------------------------------- virtual void Clear(const char* Opt = ""); virtual void Print(const char* Opt = "") const; // *MENU* ClassDef(StntupleBeamManager,0) }; #endif