Go to the documentation of this file.00001 #ifndef DTTimeEvolutionHisto_H
00002 #define DTTimeEvolutionHisto_H
00003
00012 #include <string>
00013 #include <map>
00014
00015 class DQMStore;
00016 class MonitorElement;
00017
00018 class DTTimeEvolutionHisto {
00019 public:
00033 DTTimeEvolutionHisto(DQMStore *dbe, const std::string& name,
00034 const std::string& title,
00035 int nbins,
00036 int lsPrescale,
00037 bool sliding,
00038 int mode = 0);
00039
00040
00041 DTTimeEvolutionHisto(DQMStore *dbe, const std::string& name,
00042 const std::string& title,
00043 int nbins,
00044 int firstLS,
00045 int lsPrescale,
00046 bool sliding,
00047 int mode = 0);
00048
00049
00050
00052 DTTimeEvolutionHisto(DQMStore *dbe, const std::string& name);
00053
00055 virtual ~DTTimeEvolutionHisto();
00056
00057
00058
00059 void setTimeSlotValue(float value, int timeSlot);
00060
00061 void accumulateValueTimeSlot(float value);
00062
00063 void updateTimeSlot(int ls, int nEventsInLS);
00064
00065 void normalizeTo(const MonitorElement *histForNorm);
00066
00067 protected:
00068
00069 private:
00070 float valueLastTimeSlot;
00071 std::map<int,int> nEventsInLastTimeSlot;
00072 std::map<int,int> nLumiTrInLastTimeSlot;
00073 int theFirstLS;
00074 int theLSPrescale;
00075 bool doSlide;
00076 int nBookedBins;
00077 int theMode;
00078 MonitorElement *histo;
00079
00080 };
00081 #endif
00082