#ifndef HHODOHISTBOOKER_H #define HHODOHISTBOOKER_H #include "hparcond.h" class TList; class TString; class HOnlineHodoHistFiller; class HHodoDetector; class HParamList; /** Hodo Histogram Booker. * The container keeps the list of histograms (pool) * and the list of activehistograms and the HOnlineHodoHistFiller, * which is responsible of booking, creating and filling * of the histograms. All actions on the histograms * have to through HOnlineHodoHistBooker and HOnlineHodoHistFiller. */ class HOnlineHodoHistBooker : public HParCond { protected: HHodoDetector* fHodo; //! static TList* hodoHistpool; //!< list of pool histograms static TList* hodoActiveHists; //!< list of active histograms static HOnlineHodoHistBooker* fHodoHistBooker; //!< pointer to self static HOnlineHodoHistFiller* hodofiller; //!< pointer to internal HOnlineHodoHistFiller public: HOnlineHodoHistBooker(const Char_t* name ="HodoHistBooker", const Char_t* title ="parameters for Hodo hists", const Char_t* context="HodoHistBookerProduction"); ~HOnlineHodoHistBooker(); /// get pointer to container static HOnlineHodoHistBooker* getExObject(); /// get pointer to container, if /// it does not exist, it will be created static HOnlineHodoHistBooker* getObject(); /// init the container standalone (no rtdb) Bool_t initStandAlone(); /// get list of active histograms TList* getListOfActiveHists(){return hodoActiveHists;} /// get list of pool histograms TList* getListOfHists() {return hodoHistpool;} /// reset histograms of active list void resetActiveList(Int_t level,Int_t count); /// put parameter to lsit of HParCond void putParams(HParamList*); /// ge parameter from list of HParCond Bool_t getParams(HParamList*); /// reset the container void clear(); Bool_t check(); /// print parameter to the screen void printParam(void); /// print status of the container to the screen void printStatus(void); /// get pointer t the internal HOnlineHodoHistFiller HOnlineHodoHistFiller* getHodoFiller(){return hodofiller;} ClassDef(HOnlineHodoHistBooker,1) // Container for the Hodo Hists }; #endif /*!HHODOHISTBOOKER_H*/