CMS 3D CMS Logo

CSCMonitorObject.h

Go to the documentation of this file.
00001 /*
00002  * =====================================================================================
00003  *
00004  *       Filename:  MonitorObject.h
00005  *
00006  *    Description:  Monitor Object envelope
00007  *
00008  *        Version:  1.0
00009  *        Created:  10/06/2008 01:49:51 PM
00010  *       Revision:  none
00011  *       Compiler:  gcc
00012  *
00013  *         Author:  Valdas Rapsevicius, valdas.rapsevicius@cern.ch
00014  *        Company:  CERN, CH
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

Generated on Tue Jun 9 17:32:32 2009 for CMSSW by  doxygen 1.5.4