#ifndef HSTARTHISTBOOKER_H #define HSTARTHISTBOOKER_H #include "hparcond.h" class TList; class TString; class HOnlineStartHistFiller; class HStartDetector; class HParamList; /** Start Histogram Booker. * The container keeps the list of histograms (pool) * and the list of activehistograms and the HOnlineStartHistFiller, * which is responsible of booking, creating and filling * of the histograms. All actions on the histograms * have to through HOnlineStartHistBooker and HOnlineStartHistFiller. */ class HOnlineStartHistBooker : public HParCond { protected: HStartDetector* fStart; //! static TList* startHistpool; //!< list of poool histograms static TList* startActiveHists; //!< list of active histograms static HOnlineStartHistBooker* fStartHistBooker; //!< pointer to self static HOnlineStartHistFiller* startfiller; //!< pointer to internal HOnlineStartHistFiller public: HOnlineStartHistBooker(const Char_t* name ="StartHistBooker", const Char_t* title ="parameters for Start hists", const Char_t* context="StartHistBookerProduction"); ~HOnlineStartHistBooker(); /// get pointer to container static HOnlineStartHistBooker* getExObject(); /// get pointer to container , if /// it not exists, it will be craeted static HOnlineStartHistBooker* getObject(); /// init the container standalone (no rtdb) Bool_t initStandAlone(); /// get list of active histograms TList* getListOfActiveHists(){return startActiveHists;} /// get list of pool histograms TList* getListOfHists() {return startHistpool;} /// reset histograms on active list void resetActiveList(Int_t level,Int_t count); /// put parameter to the list of HParCond void putParams(HParamList*); /// get parameter from the list of HParCond Bool_t getParams(HParamList*); /// reset the container void clear(); /// print the parameter to the screen void printParam(void); /// print nthe status of the container to the screen void printStatus(void); /// get the pointer to the internal HOnlineStartHistFiller HOnlineStartHistFiller* getStartFiller(){return startfiller;} ClassDef(HOnlineStartHistBooker,1) // Container for the Start Hists }; #endif /*!HSTARTHISTBOOKER_H*/