00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef CSCMonitorObject_H
00020 #define CSCMonitorObject_H
00021
00022 #include "DQMServices/Core/interface/MonitorElement.h"
00023 #include "DQM/CSCMonitorModule/interface/CSCDQM_MonitorObject.h"
00024
00029 class CSCMonitorObject : public cscdqm::MonitorObject {
00030
00031 private:
00032
00033 MonitorElement *me;
00034
00035 public:
00036
00037 CSCMonitorObject(MonitorElement* p_me){ me = p_me; }
00038 virtual ~CSCMonitorObject() { }
00039
00040 void Fill(float x) {
00041 lock();
00042 me->Fill(x);
00043 unlock();
00044 }
00045
00046 void Fill(float x, float yw) {
00047 lock();
00048 me->Fill(x, yw);
00049 unlock();
00050 }
00051
00052 void Fill(float x, float y, float zw) {
00053 lock();
00054 me->Fill(x, y, zw);
00055 unlock();
00056 }
00057
00058 void Fill(float x, float y, float z, float w) {
00059 lock();
00060 me->Fill(x, y, z, w);
00061 unlock();
00062 }
00063
00064 void SetEntries(const double value) {
00065 lock();
00066 me->setEntries(value);
00067 unlock();
00068 }
00069
00070 void SetBinContent(const int binX, const double value) {
00071 lock();
00072 me->setBinContent(binX, value);
00073 unlock();
00074 }
00075
00076 void SetBinContent(const int binX, const int binY, const double value) {
00077 lock();
00078 me->setBinContent(binX, binY, value);
00079 unlock();
00080 }
00081
00082 double GetBinContent(const int binX) {
00083 lock();
00084 double d = me->getBinContent(binX);
00085 unlock();
00086 return d;
00087 }
00088
00089 double GetBinContent(const int binX, int binY) {
00090 lock();
00091 double d = me->getBinContent(binX, binY);
00092 unlock();
00093 return d;
00094 }
00095
00096 void SetAxisRange(const double from, const double to, const std::string& axis) {
00097 lock();
00098 me->getTH1()->SetAxisRange(from, to, axis.c_str());
00099 unlock();
00100 }
00101
00102 void setAxisTitle(const std::string title, const int axisN) {
00103 lock();
00104 me->setAxisTitle(title, axisN);
00105 unlock();
00106 }
00107
00108 const int GetMaximumBin() {
00109 lock();
00110 int i = me->getTH1()->GetMaximumBin();
00111 unlock();
00112 return i;
00113 }
00114
00115 void SetNormFactor(const double factor) {
00116 lock();
00117 me->getTH1()->SetNormFactor(factor);
00118 unlock();
00119 }
00120
00121 const double GetEntries() {
00122 lock();
00123 double d = me->getTH1()->GetEntries();
00124 unlock();
00125 return d;
00126 }
00127
00128 void SetMaximum(const double d) {
00129 lock();
00130 me->getTH1()->SetMaximum(d);
00131 unlock();
00132 }
00133
00134 const TObject *getRefRootObject(void) const {
00135 return me->getRefRootObject();
00136 }
00137
00138 const double GetBinError(const int bin) {
00139 lock();
00140 double d = me->getTH1()->GetBinError(bin);
00141 unlock();
00142 return d;
00143 }
00144
00145 void SetBinError(const int bin, const double error) {
00146 lock();
00147 me->getTH1()->SetBinError(bin, error);
00148 unlock();
00149 }
00150
00151 const TH1 *getTH1(void) const {
00152 return me->getTH1();
00153 }
00154
00155 TH1 *getTH1Lock(void) {
00156 lock();
00157 return me->getTH1();
00158 }
00159
00160
00161 };
00162
00163 #endif