#ifndef HPHYSICSHISTBOOKER_H #define HPHYSICSHISTBOOKER_H #include "hparcond.h" class TList; class TString; class HOnlinePhysicsHistFiller; class HParamList; /** Physic Histogram Booker. * The container keeps the list of histograms (pool) * and the list of activehistograms and the HPhysicHistFiller, * which is responsible of booking, creating and filling * of the histograms. All actions on the histograms * have to through HPhysicHistBooker and HPhysicHistFiller. */ class HOnlinePhysicsHistBooker : public HParCond { protected: //HStartDetector* fStart; //! static TList* physicsHistpool; //!< list of poool histograms static TList* physicsActiveHists; //!< list of active histograms static HOnlinePhysicsHistBooker* fPhysicsHistBooker; //!< pointer to self static HOnlinePhysicsHistFiller* physicsfiller; //!< pointer to internal HOnlinePhysicsHistFiller public: HOnlinePhysicsHistBooker(const Char_t* name ="PhysicsHistBooker", const Char_t* title ="parameters for Physics hists", const Char_t* context="PhysicsHistBookerProduction"); ~HOnlinePhysicsHistBooker(); /// get pointer to container static HOnlinePhysicsHistBooker* getExObject(); /// get pointer to container , if /// it not exists, it will be craeted static HOnlinePhysicsHistBooker* getObject(); /// init the container standalone (no rtdb) Bool_t initStandAlone(); /// get list of active histograms TList* getListOfActiveHists(){return physicsActiveHists;} /// get list of pool histograms TList* getListOfHists() {return physicsHistpool;} /// 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 HOnlinePhysicsHistFiller HOnlinePhysicsHistFiller* getPhysicsFiller(){return physicsfiller;} ClassDef(HOnlinePhysicsHistBooker,1) // Container for the Physics Hists }; #endif /*!HPHYSICSHISTBOOKER_H*/