#ifndef HSTARTHISTFILLER_H #define HSTARTHISTFILLER_H #include "TNamed.h" class HParamList; class HOnlineMonHistAddon; class HOnlineMonHist; class HOnlineMonHist2; class HOnlineTrendHist; class HOnlineTrendArray; class HOnlineHistArray; class HOnlineHistArray2; class HStartRaw; class HStartCal; class HStartHit; class HIterator; class TList; class TArrayI; class TString; /** Class to fill Start histograms. * This class is responible of booking, creating * and filling of the Start histograms. The fill * functions are called by HOnlineStartMon or HOnlineSerser. * All actions on the histograms have to go through * HOnlineStartHistBooker and HOnlineStartHistFiller. */ class HOnlineStartHistFiller : public TNamed { protected: // Histpointers static HOnlineHistArray* hstrips_hodo_tof; //!< hist pointer static HOnlineHistArray* hstrips_hodo_pos; //!< hist pointer static HOnlineHistArray* hstrips_hodo_raw; //!< hist pointer static HOnlineHistArray* hstrips_hodo_mult; //!< hist pointer static HOnlineHistArray* hstrips_hodo_both_raw; //!< hist pointer static HOnlineHistArray* hstrips_hodo_cal; //!< hist pointer static HOnlineHistArray* hstrips_start_veto_raw; //!< hist pointer static HOnlineHistArray* hstrips_start_vetotemp_raw; //!< hist pointer static HOnlineTrendArray* hstartmeanstriptrend_raw; //!< hist pointer static HOnlineHistArray* hmult_start_veto_raw; //!< hist pointer static HOnlineHistArray* htime_start_raw; //!< hist pointer static HOnlineHistArray* htime_veto_raw; //!< hist pointer static HOnlineTrendArray* htime_trend_start; //!< hist pointer static HOnlineTrendArray* htime_trend_hodo; //!< hist pointer static HOnlineHistArray* htime_start_temp; //!< hist pointer static HOnlineHistArray* htime_hodo_temp; //!< hist pointer static HOnlineMonHist2* hstart_veto_corr_raw; //!< hist pointer //Scalers static HOnlineTrendArray* hscaler[8]; //! static HOnlineHistArray* hscaler_tmp; //!< hist pointer //Latch data static HOnlineHistArray* hlatchdata; //!< hist pointer //Vertex static HOnlineMonHist2* hvertex_xy; //!< hist pointer static HOnlineMonHist2* hvertex_xz; //!< hist pointer static HOnlineMonHist2* hvertex_yz; //!< hist pointer static HOnlineMonHistAddon* hstrips_hodo_tofA; //!< hist addon pointer static HOnlineMonHistAddon* hstrips_hodo_posA; //!< hist addon pointer static HOnlineMonHistAddon* hstrips_hodo_rawA; //!< hist addon pointer static HOnlineMonHistAddon* hstrips_hodo_multA; //!< hist addon pointer static HOnlineMonHistAddon* hstrips_hodo_both_rawA; //!< hist addon pointer static HOnlineMonHistAddon* hstrips_hodo_calA; //!< hist addon pointer static HOnlineMonHistAddon* hstrips_start_veto_rawA; //!< hist addon pointer static HOnlineMonHistAddon* hstrips_start_vetotemp_rawA; //!< hist addon pointer static HOnlineMonHistAddon* hstartmeanstriptrend_rawA; //!< hist addon pointer static HOnlineMonHistAddon* hmult_start_veto_rawA; //!< hist addon pointer static HOnlineMonHistAddon* htime_start_rawA; //!< hist addon pointer static HOnlineMonHistAddon* htime_veto_rawA; //!< hist addon pointer static HOnlineMonHistAddon* htime_trend_startA; //!< hist addon pointer static HOnlineMonHistAddon* htime_trend_hodoA; //!< hist addon pointer static HOnlineMonHistAddon* htime_start_tempA; //!< hist addon pointer static HOnlineMonHistAddon* htime_hodo_tempA; //!< hist addon pointer static HOnlineMonHistAddon* hstart_veto_corr_rawA; //!< hist addon pointer //scaler static HOnlineMonHistAddon* hscalerA[8]; //! static HOnlineMonHistAddon* hscaler_tmpA; //Latch data static HOnlineMonHistAddon* hlatchdataA; //!< hist addon pointer //Vertex static HOnlineMonHistAddon* hvertex_xyA; //!< hist pointer static HOnlineMonHistAddon* hvertex_xzA; //!< hist pointer static HOnlineMonHistAddon* hvertex_yzA; //!< hist pointer // Colors static TArrayI colorsModule; ///< colors for hists to be compared in modules static TArrayI colorsStrips; ///< colors for hists to be compared for all strips static TArrayI colorsCuts; ///< colors for hists to be compared for cuts public: HOnlineStartHistFiller(const Char_t* name ="StartHistFiller", const Char_t* title ="parameters for Start hists"); ~HOnlineStartHistFiller(); /// put parameter to the list of HParCond void putStartParams(HParamList*,TList*); /// get parameter from list of HParCond Bool_t getStartParams(HParamList*,TList*,TList*); /// fill latch histograms void fillLatch(void); /// fill vertex histograms void fillVertex(void); /// fill raw histograms void fillRaw(HIterator*); /// fill cal histograms void fillCal(HIterator*); /// fill hit histograms void fillHit(HIterator*); /// fill scaler histograms void fillScaler(HIterator*); /// fill trend histograms void fillTrend(); ClassDef(HOnlineStartHistFiller,1) // Container for the Start Hists }; #endif /*!HSTARTHISTFILLER_H*/