File indexing completed on 2023-03-17 10:53:59
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019 #ifndef CSCDQM_MonitorObject_H
0020 #define CSCDQM_MonitorObject_H
0021
0022 #include <TH1.h>
0023
0024 #include "CSCDQM_Logger.h"
0025 #include "CSCDQM_Lock.h"
0026
0027 namespace cscdqm {
0028
0029
0030
0031
0032
0033
0034
0035 class MonitorObject : public Lock {
0036 public:
0037 virtual void Fill(float x) = 0;
0038 virtual void Fill(float x, float yw) = 0;
0039 virtual void Fill(float x, float y, float zw) = 0;
0040 virtual void Fill(float x, float y, float z, float w) = 0;
0041 virtual const TH1 *getTH1(void) const = 0;
0042 virtual TH1 *getTH1Lock(void) = 0;
0043 virtual void SetEntries(const double value) = 0;
0044 virtual const double GetEntries() = 0;
0045 virtual void SetBinContent(const int binX, const double value) = 0;
0046 virtual void SetBinContent(const int binX, const int binY, const double value) = 0;
0047 virtual double GetBinContent(const int binX) = 0;
0048 virtual double GetBinContent(const int binX, int binY) = 0;
0049 virtual void SetAxisRange(const double from, const double to, const std::string &axis) = 0;
0050 virtual void setAxisTitle(const std::string title, const int axisN) = 0;
0051 virtual const TObject *getRefRootObject(void) const = 0;
0052 virtual const int GetMaximumBin() = 0;
0053 virtual void SetMaximum(const double d) = 0;
0054 virtual void SetNormFactor(const double factor = 1) = 0;
0055 virtual const double GetBinError(const int bin) = 0;
0056 virtual void SetBinError(const int bin, const double error) = 0;
0057 };
0058
0059 }
0060
0061 #endif