CMS 3D CMS Logo

MonitorElement Class Reference

The base class for all MonitorElements (ME). More...

#include <DQMServices/Core/interface/MonitorElement.h>

List of all members.

Public Types

enum  Kind {
  DQM_KIND_INVALID, DQM_KIND_INT, DQM_KIND_REAL, DQM_KIND_STRING,
  DQM_KIND_TH1F, DQM_KIND_TH1S, DQM_KIND_TH2F, DQM_KIND_TH2S,
  DQM_KIND_TH3F, DQM_KIND_TPROFILE, DQM_KIND_TPROFILE2D
}
typedef std::vector< QReport >
::const_iterator 
QReportIterator

Public Member Functions

void Fill (float x, float y, float z, float w)
 can be used with 3D (x, y, z, w) histograms
void Fill (float x, float y, float zw)
 can be used with 3D (x, y, z) or 2D (x, y, w) histograms
void Fill (float x, float yw)
 can be used with 2D (x,y) or 1D (x, w) histograms
void Fill (float x)
 "Fill" ME methods: can be used with 1D histograms or scalars
uint32_t flags (void) const
 Get the object flags.
std::string getAxisTitle (int axis=1) const
 get x-, y- or z-axis title (axis=1, 2, 3 respectively)
float getBinContent (int binx, int biny, int binz) const
 get content of bin (3-D)
float getBinContent (int binx, int biny) const
 get content of bin (2-D)
float getBinContent (int binx) const
 get content of bin (1-D)
float getBinEntries (int bin) const
 get # of bin entries (for profiles)
float getBinError (int binx, int biny, int binz) const
 get uncertainty on content of bin (3-D) - See TH1::GetBinError for details
float getBinError (int binx, int biny) const
 get uncertainty on content of bin (2-D) - See TH1::GetBinError for details
float getBinError (int binx) const
 get uncertainty on content of bin (1-D) - See TH1::GetBinError for details
float getEntries (void) const
 get # of entries
const double & getFloatValue (void) const
const std::string & getFullname (void) const
 get full name of ME including Pathname
const intgetIntValue (void) const
float getMean (int axis=1) const
 get mean value of histogram along x, y or z axis (axis=1, 2, 3 respectively)
float getMeanError (int axis=1) const
 get mean value uncertainty of histogram along x, y or z axis (axis=1, 2, 3 respectively)
const std::string & getName (void) const
 get name of ME
int getNbinsX (void) const
 get # of bins in X-axis
int getNbinsY (void) const
 get # of bins in Y-axis
int getNbinsZ (void) const
 get # of bins in Z-axis
const std::string & getPathname (void) const
 get pathname of parent folder
std::vector< QReport * > getQErrors (void) const
 get errors from last set of quality tests
std::vector< QReport * > getQOthers (void) const
 get "other" (i.e.
const QReportgetQReport (const std::string &qtname) const
 get QReport corresponding to <qtname> (null pointer if QReport does not exist)
std::vector< QReport * > getQReports (void) const
 get map of QReports
std::vector< QReport * > getQWarnings (void) const
 get warnings from last set of quality tests
TObject * getRefRootObject (void) const
TH1 * getRefTH1 (void) const
TH1F * getRefTH1F (void) const
TH1S * getRefTH1S (void) const
TH2F * getRefTH2F (void) const
TH2S * getRefTH2S (void) const
TH3F * getRefTH3F (void) const
TProfile * getRefTProfile (void) const
TProfile2D * getRefTProfile2D (void) const
float getRMS (int axis=1) const
 get RMS of histogram along x, y or z axis (axis=1, 2, 3 respectively)
float getRMSError (int axis=1) const
 get RMS uncertainty of histogram along x, y or z axis(axis=1,2,3 respectively)
TObject * getRootObject (void) const
const std::string & getStringValue (void) const
const DQMNet::TagListgetTags (void) const
TH1 * getTH1 (void) const
TH1F * getTH1F (void) const
TH1S * getTH1S (void) const
TH2F * getTH2F (void) const
TH2S * getTH2S (void) const
TH3F * getTH3F (void) const
std::string getTitle (void) const
 get MonitorElement title
TProfile * getTProfile (void) const
TProfile2D * getTProfile2D (void) const
bool hasError (void) const
 true if at least of one of the quality tests returned an error
bool hasOtherReport (void) const
 true if at least of one of the tests returned some other (non-ok) status
bool hasWarning (void) const
 true if at least of one of the quality tests returned a warning
Kind kind (void) const
 Get the type of the monitor element.
 MonitorElement (void)
std::string qualityTagString (const DQMNet::QValue &qv) const
void Reset (void)
 reset ME (ie. contents, errors, etc)
void runQTests (void)
 run all quality tests
void setAxisRange (float xmin, float xmax, int axis=1)
 set x-, y- or z-axis range (axis=1, 2, 3 respectively)
void setAxisTimeDisplay (int value, int axis=1)
 set x-, y-, or z-axis to display time values
void setAxisTimeFormat (const char *format="", int axis=1)
 set the format of the time values that are displayed on an axis
void setAxisTitle (const std::string &title, int axis=1)
 set x-, y- or z-axis title (axis=1, 2, 3 respectively)
void setBinContent (int binx, int biny, int binz, float content)
 set content of bin (3-D)
void setBinContent (int binx, int biny, float content)
 set content of bin (2-D)
void setBinContent (int binx, float content)
 set content of bin (1-D)
void setBinEntries (int bin, float nentries)
 set # of bin entries (to be used for profiles)
void setBinError (int binx, int biny, int binz, float error)
 set uncertainty on content of bin (3-D)
void setBinError (int binx, int biny, float error)
 set uncertainty on content of bin (2-D)
void setBinError (int binx, float error)
 set uncertainty on content of bin (1-D)
void setBinLabel (int bin, const std::string &label, int axis=1)
 set bin label for x, y or z axis (axis=1, 2, 3 respectively)
void setEntries (float nentries)
 set # of entries
void setResetMe (bool flag)
 specify whether ME should be reset at end of monitoring cycle (default:false); (typically called by Sources that control the original ME)
void setTitle (const std::string &title)
 set (ie. change) histogram/profile title
std::string tagString (void) const
 return tagged value of ME in string format (eg.
void update (void)
 Mark the object updated.
std::string valueString (void) const
 returns value of ME in string format (eg.
bool wasUpdated (void) const
 true if ME was updated in last monitoring cycle
 ~MonitorElement (void)

Static Public Attributes

static const uint32_t DQM_FLAG_ACCUMULATE = 0x02000000
static const uint32_t DQM_FLAG_RESET = 0x01000000

Private Member Functions

TH1 * accessRootObject (const char *func, int reqdim) const
void addProfiles (TProfile2D *h1, TProfile2D *h2, TProfile2D *sum, float c1, float c2)
void addProfiles (TProfile *h1, TProfile *h2, TProfile *sum, float c1, float c2)
void addQReport (QCriterion *qc)
void addQReport (const DQMNet::QValue &desc, QCriterion *qc)
 Add quality report, from DQMStore.
void copyFrom (TH1 *from)
void copyFunctions (TH1 *from, TH1 *to)
void disableSoftReset (void)
 reverts action of softReset
TAxis * getAxis (const char *func, int axis) const
void getQReport (bool create, const std::string &qtname, QReport *&qr, DQMNet::QValue *&qv)
float getYmax (void) const
 get max Y value (for profiles)
float getYmin (void) const
 get min Y value (for profiles)
void incompatible (const char *func) const
MonitorElementinitialise (Kind kind, const std::string &path, const std::string &value)
MonitorElementinitialise (Kind kind, const std::string &path, TH1 *rootobj)
MonitorElementinitialise (Kind kind, const std::string &path)
bool isAccumulateEnabled (void) const
 whether ME contents should be accumulated over multiple monitoring periods; default: false
bool isSoftResetEnabled (void) const
 whether soft-reset is enabled; default is false
bool resetMe (void) const
 true if ME should be reset at end of monitoring cycle
void resetUpdate (void)
 reset "was updated" flag
void setAccumulate (bool flag)
 if true, will accumulate ME contents (over many periods) until method is called with flag = false again
void setAxisTimeOffset (double toffset, const char *option="local", int axis=1)
 set the time offset, if option = "gmt" then the offset is treated as a GMT time
void softReset (void)
 reset contents (does not erase contents permanently) (makes copy of current contents; will be subtracted from future contents)
void updateQReportStats (void)
 Refresh QReport stats, usually after MEs were read in from a file.

Private Attributes

Value curvalue_
DQMNet::CoreObject data_
Kind kind_
std::string name_
size_t nqerror_
size_t nqother_
size_t nqwarning_
std::string path_
std::vector< QReportqreports_
TH1 * refvalue_

Friends

class DQMService
class DQMStore

Classes

struct  Value


Detailed Description

The base class for all MonitorElements (ME).

Definition at line 32 of file MonitorElement.h.


Member Typedef Documentation

typedef std::vector<QReport>::const_iterator MonitorElement::QReportIterator

Definition at line 58 of file MonitorElement.h.


Member Enumeration Documentation

enum MonitorElement::Kind

Enumerator:
DQM_KIND_INVALID 
DQM_KIND_INT 
DQM_KIND_REAL 
DQM_KIND_STRING 
DQM_KIND_TH1F 
DQM_KIND_TH1S 
DQM_KIND_TH2F 
DQM_KIND_TH2S 
DQM_KIND_TH3F 
DQM_KIND_TPROFILE 
DQM_KIND_TPROFILE2D 

Definition at line 43 of file MonitorElement.h.


Constructor & Destructor Documentation

MonitorElement::MonitorElement ( void   ) 

Definition at line 150 of file MonitorElement.cc.

References curvalue_, data_, DQMNet::DQM_FLAG_NEW, DQMNet::CoreObject::flags, MonitorElement::Value::num, DQMNet::CoreObject::object, MonitorElement::Value::real, DQMNet::CoreObject::reference, MonitorElement::Value::tobj, and DQMNet::CoreObject::version.

00151   : kind_ (DQM_KIND_INVALID),
00152     nqerror_ (0),
00153     nqwarning_ (0),
00154     nqother_ (0),
00155     refvalue_ (0)
00156 {
00157   data_.version = 0;
00158   data_.object = 0;
00159   data_.reference = 0;
00160   data_.flags = DQMNet::DQM_FLAG_NEW;
00161 
00162   curvalue_.num = 0;
00163   curvalue_.real = 0;
00164   curvalue_.tobj = 0;
00165 }

MonitorElement::~MonitorElement ( void   ) 

Definition at line 167 of file MonitorElement.cc.

References data_, DQMNet::CoreObject::object, and refvalue_.

00168 {
00169   delete data_.object;
00170   delete refvalue_;
00171 }


Member Function Documentation

TH1 * MonitorElement::accessRootObject ( const char *  func,
int  reqdim 
) const [private]

Definition at line 415 of file MonitorElement.cc.

References checkRootObject(), curvalue_, data_, DQMNet::CoreObject::name, and MonitorElement::Value::tobj.

Referenced by copyFrom(), Fill(), getAxis(), getBinContent(), getBinEntries(), getBinError(), getEntries(), getMean(), getMeanError(), getNbinsX(), getNbinsY(), getNbinsZ(), getRMS(), getRMSError(), getTH1(), getTH1F(), getTH1S(), getTH2F(), getTH2S(), getTH3F(), getTitle(), getTProfile(), getTProfile2D(), getYmax(), getYmin(), Reset(), setBinContent(), setBinEntries(), setBinError(), setEntries(), and setTitle().

00416 { return checkRootObject(data_.name, curvalue_.tobj, func, reqdim); }

void MonitorElement::addProfiles ( TProfile2D *  h1,
TProfile2D *  h2,
TProfile2D *  sum,
float  c1,
float  c2 
) [private]

Definition at line 971 of file MonitorElement.cc.

References python::tagInventory::entries, error, and i.

00972 {
00973   assert(h1);
00974   assert(h2);
00975   assert(sum);
00976 
00977   static const Int_t NUM_STAT = 9;
00978   Double_t stats1[NUM_STAT];
00979   Double_t stats2[NUM_STAT];
00980   Double_t stats3[NUM_STAT];
00981   for (Int_t i = 0; i < NUM_STAT; ++i)
00982     stats1[i] = stats2[i] = stats3[i] = 0;
00983 
00984   h1->GetStats(stats1);
00985   h2->GetStats(stats2);
00986 
00987   for (Int_t i = 0; i < NUM_STAT; i++)
00988     stats3[i] = c1*stats1[i] + c2*stats2[i];
00989 
00990   stats3[1] = c1*TMath::Abs(c1)*stats1[1]
00991               + c2*TMath::Abs(c2)*stats2[1];
00992 
00993   Double_t entries = c1*h1->GetEntries() + c2*h2->GetEntries();
00994   TArrayD *h1sumw2 = h1->GetSumw2();
00995   TArrayD *h2sumw2 = h2->GetSumw2();
00996   for (Int_t xbin = 0, nxbin = sum->GetNbinsX()+1; xbin <= nxbin; ++xbin)
00997     for (Int_t ybin = 0, nybin = sum->GetNbinsY()+1; ybin <= nybin; ++ybin)
00998     {
00999       Int_t bin = sum->GetBin(xbin, ybin);
01000       Double_t entries = c1*h1->GetBinEntries(bin)
01001                          + c2*h2->GetBinEntries(bin);
01002       Double_t content = c1*h1->GetBinEntries(bin)*h1->GetBinContent(bin)
01003                          + c2*h2->GetBinEntries(bin)*h2->GetBinContent(bin);
01004       Double_t error = TMath::Sqrt(c1*TMath::Abs(c1)*h1sumw2->fArray[bin]
01005                                    + c2*TMath::Abs(c2)*h2sumw2->fArray[bin]);
01006 
01007       sum->SetBinContent(bin, content);
01008       sum->SetBinError(bin, error);
01009       sum->SetBinEntries(bin, entries);
01010     }
01011   sum->SetEntries(entries);
01012   sum->PutStats(stats3);
01013 }

void MonitorElement::addProfiles ( TProfile *  h1,
TProfile *  h2,
TProfile *  sum,
float  c1,
float  c2 
) [private]

Definition at line 925 of file MonitorElement.cc.

References python::tagInventory::entries, error, and i.

Referenced by DQMStore::collateProfile(), DQMStore::collateProfile2D(), copyFrom(), disableSoftReset(), and softReset().

00926 {
00927   assert(h1);
00928   assert(h2);
00929   assert(sum);
00930 
00931   static const Int_t NUM_STAT = 6;
00932   Double_t stats1[NUM_STAT];
00933   Double_t stats2[NUM_STAT];
00934   Double_t stats3[NUM_STAT];
00935 
00936   for (Int_t i = 0; i < NUM_STAT; ++i)
00937     stats1[i] = stats2[i] = stats3[i] = 0;
00938 
00939   h1->GetStats(stats1);
00940   h2->GetStats(stats2);
00941 
00942   for (Int_t i = 0; i < NUM_STAT; ++i)
00943     stats3[i] = c1*stats1[i] + c2*stats2[i];
00944 
00945   stats3[1] = c1*TMath::Abs(c1)*stats1[1]
00946               + c2*TMath::Abs(c2)*stats2[1];
00947 
00948   Double_t entries = c1*h1->GetEntries() + c2* h2->GetEntries();
00949   TArrayD* h1sumw2 = h1->GetSumw2();
00950   TArrayD* h2sumw2 = h2->GetSumw2();
00951   for (Int_t bin = 0, nbin = sum->GetNbinsX()+1; bin <= nbin; ++bin) 
00952   {
00953     Double_t entries = c1*h1->GetBinEntries(bin)
00954                        + c2*h2->GetBinEntries(bin);
00955     Double_t content = c1*h1->GetBinEntries(bin)*h1->GetBinContent(bin)
00956                        + c2*h2->GetBinEntries(bin)*h2->GetBinContent(bin);
00957     Double_t error = TMath::Sqrt(c1*TMath::Abs(c1)*h1sumw2->fArray[bin]
00958                                  + c2*TMath::Abs(c2)*h2sumw2->fArray[bin]);
00959     sum->SetBinContent(bin, content);
00960     sum->SetBinError(bin, error);
00961     sum->SetBinEntries(bin, entries);
00962   }
00963   
00964   sum->SetEntries(entries);
00965   sum->PutStats(stats3);
00966 }

void MonitorElement::addQReport ( QCriterion qc  )  [private]

Definition at line 1130 of file MonitorElement.cc.

References DQMNet::QValue::code, dqm::qstatus::DID_NOT_RUN, QCriterion::getName(), getQReport(), DQMNet::QValue::message, QReport::qcriterion_, and update().

01131 {
01132   QReport *qr;
01133   DQMNet::QValue *qv;
01134   getQReport(true, qc->getName(), qr, qv);
01135   qv->code = dqm::qstatus::DID_NOT_RUN;
01136   qv->message = "NO_MESSAGE_ASSIGNED";
01137   qr->qcriterion_ = qc;
01138   update();
01139 }

void MonitorElement::addQReport ( const DQMNet::QValue desc,
QCriterion qc 
) [private]

Add quality report, from DQMStore.

Definition at line 1119 of file MonitorElement.cc.

References getQReport(), QReport::qcriterion_, DQMNet::QValue::qtname, and update().

Referenced by DQMStore::extract(), and DQMStore::initialise().

01120 {
01121   QReport *qr;
01122   DQMNet::QValue *qv;
01123   getQReport(true, desc.qtname, qr, qv);
01124   qr->qcriterion_ = qc;
01125   *qv = desc;
01126   update();
01127 }

void MonitorElement::copyFrom ( TH1 *  from  )  [private]

Definition at line 1047 of file MonitorElement.cc.

References accessRootObject(), addProfiles(), copyFunctions(), DQM_KIND_TH1F, DQM_KIND_TH1S, DQM_KIND_TH2F, DQM_KIND_TH2S, DQM_KIND_TH3F, DQM_KIND_TPROFILE, DQM_KIND_TPROFILE2D, incompatible(), isAccumulateEnabled(), isSoftResetEnabled(), kind_, and refvalue_.

Referenced by DQMStore::extract().

01048 {
01049   TH1 *orig = accessRootObject(__PRETTY_FUNCTION__, 1);
01050   if (orig->GetTitle() != from->GetTitle())
01051     orig->SetTitle(from->GetTitle());
01052 
01053   if (!isAccumulateEnabled())
01054     orig->Reset();
01055 
01056   if (isSoftResetEnabled())
01057   {
01058     if (kind_ == DQM_KIND_TH1F
01059         || kind_ == DQM_KIND_TH1S
01060         || kind_ == DQM_KIND_TH2F
01061         || kind_ == DQM_KIND_TH2S
01062         || kind_ == DQM_KIND_TH3F)
01063       // subtract "reference"
01064       orig->Add(from, refvalue_, 1, -1);
01065     else if (kind_ == DQM_KIND_TPROFILE)
01066       // subtract "reference"
01067       addProfiles(static_cast<TProfile *>(from),
01068                   static_cast<TProfile *>(refvalue_),
01069                   static_cast<TProfile *>(orig),
01070                   1, -1);
01071     else if (kind_ == DQM_KIND_TPROFILE2D)
01072       // subtract "reference"
01073       addProfiles(static_cast<TProfile2D *>(from),
01074                   static_cast<TProfile2D *>(refvalue_),
01075                   static_cast<TProfile2D *>(orig),
01076                   1, -1);
01077     else
01078       incompatible(__PRETTY_FUNCTION__);
01079   }
01080   else
01081     orig->Add(from);
01082 
01083   copyFunctions(from, orig);
01084 }

void MonitorElement::copyFunctions ( TH1 *  from,
TH1 *  to 
) [private]

Definition at line 1016 of file MonitorElement.cc.

References data_, Exception, fn, i, isAccumulateEnabled(), isSoftResetEnabled(), DQMNet::CoreObject::name, VarParsing::obj, and update().

Referenced by copyFrom().

01017 {
01018   // will copy functions only if local-copy and original-object are equal
01019   // (ie. no soft-resetting or accumulating is enabled)
01020   if (isSoftResetEnabled() || isAccumulateEnabled())
01021     return;
01022 
01023   update();
01024   TList *fromf = from->GetListOfFunctions();
01025   TList *tof   = to->GetListOfFunctions();
01026   for (int i = 0, nfuncs = fromf ? fromf->GetSize() : 0; i < nfuncs; ++i)
01027   {
01028     TObject *obj = fromf->At(i);
01029     // not interested in statistics
01030     if (obj->IsA()->GetName() == "TPaveStats")
01031       continue;
01032 
01033     if(TF1 *fn = dynamic_cast<TF1 *>(obj))
01034       tof->Add(new TF1(*fn));
01035     //else if (dynamic_cast<TPaveStats *>(obj))
01036     //  ; // FIXME? tof->Add(new TPaveStats(*stats));
01037     else
01038       throw cms::Exception("MonitorElement")
01039         << "Cannot extract function '" << obj->GetName()
01040         << "' of type '" << obj->IsA()->GetName()
01041         << "' from monitor element '" << data_.name
01042         << "' for a copy";
01043   }
01044 }

void MonitorElement::disableSoftReset ( void   )  [private]

reverts action of softReset

Definition at line 889 of file MonitorElement.cc.

References addProfiles(), curvalue_, DQM_KIND_TH1F, DQM_KIND_TH1S, DQM_KIND_TH2F, DQM_KIND_TH2S, DQM_KIND_TH3F, DQM_KIND_TPROFILE, DQM_KIND_TPROFILE2D, incompatible(), kind_, r, refvalue_, and MonitorElement::Value::tobj.

Referenced by DQMStore::disableSoftReset().

00890 {
00891   if (refvalue_)
00892   {
00893     if (kind_ == DQM_KIND_TH1F
00894         || kind_ == DQM_KIND_TH1S
00895         || kind_ == DQM_KIND_TH2F
00896         || kind_ == DQM_KIND_TH2S
00897         || kind_ == DQM_KIND_TH3F)
00898     {
00899       TH1 *orig = static_cast<TH1 *>(curvalue_.tobj);
00900       orig->Add(refvalue_);
00901     }
00902     else if (kind_ == DQM_KIND_TPROFILE)
00903     {
00904       TProfile *orig = static_cast<TProfile *>(curvalue_.tobj);
00905       TProfile *r = static_cast<TProfile *>(refvalue_);
00906       addProfiles(orig, r, orig, 1, 1);
00907     }
00908     else if (kind_ == DQM_KIND_TPROFILE2D)
00909     {
00910       TProfile2D *orig = static_cast<TProfile2D *>(curvalue_.tobj);
00911       TProfile2D *r = static_cast<TProfile2D *>(refvalue_);
00912       addProfiles(orig, r, orig, 1, 1);
00913     }
00914     else
00915       incompatible(__PRETTY_FUNCTION__);
00916 
00917     delete refvalue_;
00918     refvalue_ = 0;
00919   }
00920 }

void MonitorElement::Fill ( float  x,
float  y,
float  z,
float  w 
)

can be used with 3D (x, y, z, w) histograms

Definition at line 251 of file MonitorElement.cc.

References accessRootObject(), DQM_KIND_TH3F, DQM_KIND_TPROFILE2D, Fill(), incompatible(), kind_, and update().

00252 {
00253   update();
00254   if (kind_ == DQM_KIND_TH3F)
00255     static_cast<TH3F *>(accessRootObject(__PRETTY_FUNCTION__, 2))
00256       ->Fill(x, y, z, w);
00257   else if (kind_ == DQM_KIND_TPROFILE2D)
00258     static_cast<TProfile2D *>(accessRootObject(__PRETTY_FUNCTION__, 2))
00259       ->Fill(x, y, z, w);
00260   else
00261     incompatible(__PRETTY_FUNCTION__);
00262 }

void MonitorElement::Fill ( float  x,
float  y,
float  zw 
)

can be used with 3D (x, y, z) or 2D (x, y, w) histograms

Definition at line 227 of file MonitorElement.cc.

References accessRootObject(), DQM_KIND_TH2F, DQM_KIND_TH2S, DQM_KIND_TH3F, DQM_KIND_TPROFILE, DQM_KIND_TPROFILE2D, Fill(), incompatible(), kind_, and update().

00228 {
00229   update();
00230   if (kind_ == DQM_KIND_TH2F)
00231     static_cast<TH2F *>(accessRootObject(__PRETTY_FUNCTION__, 2))
00232       ->Fill(x, y, zw);
00233   else if (kind_ == DQM_KIND_TH2S)
00234     static_cast<TH2S *>(accessRootObject(__PRETTY_FUNCTION__, 2))
00235       ->Fill(x, y, zw);
00236   else if (kind_ == DQM_KIND_TH3F)
00237     static_cast<TH3F *>(accessRootObject(__PRETTY_FUNCTION__, 2))
00238       ->Fill(x, y, zw, 1);
00239   else if (kind_ == DQM_KIND_TPROFILE)
00240     static_cast<TProfile *>(accessRootObject(__PRETTY_FUNCTION__, 2))
00241       ->Fill(x, y, zw);
00242   else if (kind_ == DQM_KIND_TPROFILE2D)
00243     static_cast<TProfile2D *>(accessRootObject(__PRETTY_FUNCTION__, 2))
00244       ->Fill(x, y, zw, 1);
00245   else
00246     incompatible(__PRETTY_FUNCTION__);
00247 }

void MonitorElement::Fill ( float  x,
float  yw 
)

can be used with 2D (x,y) or 1D (x, w) histograms

Definition at line 203 of file MonitorElement.cc.

References accessRootObject(), DQM_KIND_TH1F, DQM_KIND_TH1S, DQM_KIND_TH2F, DQM_KIND_TH2S, DQM_KIND_TPROFILE, Fill(), incompatible(), kind_, and update().

00204 {
00205   update();
00206   if (kind_ == DQM_KIND_TH1F)
00207     accessRootObject(__PRETTY_FUNCTION__, 1)
00208       ->Fill(x, yw);
00209   else if (kind_ == DQM_KIND_TH1S)
00210     accessRootObject(__PRETTY_FUNCTION__, 1)
00211       ->Fill(x, yw);
00212   else if (kind_ == DQM_KIND_TH2F)
00213     static_cast<TH2F *>(accessRootObject(__PRETTY_FUNCTION__, 2))
00214       ->Fill(x, yw, 1);
00215   else if (kind_ == DQM_KIND_TH2S)
00216     static_cast<TH2S *>(accessRootObject(__PRETTY_FUNCTION__, 2))
00217       ->Fill(x, yw, 1);
00218   else if (kind_ == DQM_KIND_TPROFILE)
00219     static_cast<TProfile *>(accessRootObject(__PRETTY_FUNCTION__, 1))
00220       ->Fill(x, yw, 1);
00221   else
00222     incompatible(__PRETTY_FUNCTION__);
00223 }

void MonitorElement::Fill ( float  x  ) 

"Fill" ME methods: can be used with 1D histograms or scalars

Definition at line 176 of file MonitorElement.cc.

References accessRootObject(), curvalue_, data_, DQM_KIND_INT, DQM_KIND_REAL, DQM_KIND_TH1F, DQM_KIND_TH1S, incompatible(), int, kind_, MonitorElement::Value::num, DQMNet::CoreObject::object, MonitorElement::Value::real, tagString(), and update().

Referenced by XmasToDQMEventInfo::analyze(), MuonRecoAnalyzer::analyze(), ElectronAnalyzer::analyze(), DQMSourcePhiSym::analyze(), SiStripMonitorFilter::analyze(), L1TGMT::analyze(), BxTiming::analyze(), HLTMon::analyze(), EcalEndcapMonitorModule::analyze(), GlobalRecHitsHistogrammer::analyze(), MuonSeedsAnalyzer::analyze(), L1TGT::analyze(), EELedTask::analyze(), EEIntegrityTask::analyze(), EBTriggerTowerClient::analyze(), EcalPreshowerDigisValidation::analyze(), GlobalDigisHistogrammer::analyze(), GlobalHitsTester::analyze(), PhotonValidator::analyze(), SiPixelDigiValid::analyze(), L1TRCT::analyze(), EESelectiveReadoutTask::analyze(), EBRawDataTask::analyze(), EBLaserTask::analyze(), EgammaBasicClusters::analyze(), EcalEndcapRecHitsValidation::analyze(), CSCComparatorDigiValidation::analyze(), CaloTauTagVal::analyze(), EmDQM::analyze(), PrimaryVertexMonitor::analyze(), CSCOfflineMonitor::analyze(), TrackingMonitor::analyze(), L1THcalClient::analyze(), HLTMonElectronConsumer::analyze(), HLTMonElectron::analyze(), EBTestPulseTask::analyze(), EBStatusFlagsTask::analyze(), EBCosmicTask::analyze(), GlobalTest::analyze(), TestSuite::analyze(), SiStripDigiValid::analyze(), HLTMuonGenericRate::analyze(), DQMEventInfo::analyze(), SiStripMonitorRawData::analyze(), RPCFEDIntegrity::analyze(), L1TCompare::analyze(), EETimingClient::analyze(), EEPedestalClient::analyze(), EBBeamHodoTask::analyze(), L1Scalers::analyze(), SiPixelTrackResidualSource::analyze(), L1TRPCTPG::analyze(), EELaserTask::analyze(), EESummaryClient::analyze(), EBBeamCaloTask::analyze(), EcalRecHitsValidation::analyze(), MuonIdVal::analyze(), TrackAnalyzer::analyze(), CnBAnalyzer::analyze(), SiStripMonitorCluster::analyze(), PhysicsObjectsMonitor::analyze(), L1TLTC::analyze(), L1TdeRCT::analyze(), EERawDataTask::analyze(), EcalBarrelMonitorModule::analyze(), RPCDigiValid::analyze(), PerformanceAnalyzer::analyze(), HLTTauL1DQMOfflineSource::analyze(), CaloMETAnalyzer::analyze(), SiStripMonitorHLT::analyze(), RPCMon_SS_Dbx_Global::analyze(), HLTMuonL1DQMSource::analyze(), EECosmicTask::analyze(), EELaserClient::analyze(), EBTimingClient::analyze(), DTTriggerCheck::analyze(), EcalDigisValidation::analyze(), HLTTauElDQMOfflineSource::analyze(), SegmentTrackAnalyzer::analyze(), RPCEfficiency::analyze(), L1TECALTPG::analyze(), HLTMuonIsoDQMSource::analyze(), EETimingTask::analyze(), EEOccupancyTask::analyze(), EEBeamHodoTask::analyze(), EBPedestalOnlineTask::analyze(), EgammaSuperClusters::analyze(), CSCWireDigiValidation::analyze(), SiStripMonitorQuality::analyze(), SiStripMonitorDigi::analyze(), RPCMonitorDigi::analyze(), L1TCSCTFClient::analyze(), L1THCALTPGXAna::analyze(), EEBeamCaloTask::analyze(), EETestPulseClient::analyze(), CaloTowersValidation::analyze(), CSCSegmentValidation::analyze(), EcalEndcapDigisValidation::analyze(), PFTauTagVal::analyze(), SiPixelTrackingRecHitsValid::analyze(), RPCRecHitValid::analyze(), L1TDTTPG::analyze(), L1TdeGCT::analyze(), HcalMonitorModule::analyze(), EEPedestalOnlineTask::analyze(), EEPedestalOnlineClient::analyze(), EBPedestalTask::analyze(), EBOccupancyTask::analyze(), EBIntegrityTask::analyze(), EBHltTask::analyze(), EcalPreshowerNoiseDistrib::analyze(), EcalBarrelSimHitsValidation::analyze(), EcalBarrelRecHitsValidation::analyze(), HcalRecHitsValidation::analyze(), MuonTrackResidualAnalyzer::analyze(), TrackingTruthValid::analyze(), HLTMuonRate::analyze(), L1TRPCTF::analyze(), L1TDEMON::analyze(), HLTMuonDQMSource::analyze(), HcalSummaryClient::analyze(), EETestPulseTask::analyze(), EEHltTask::analyze(), EBSummaryClient::analyze(), TauTagVal::analyze(), SiStripRecHitsValid::analyze(), HLTTauCaloDQMOfflineSource::analyze(), PFJetAnalyzer::analyze(), dqm::daq::FEDMonitor::analyze(), EcalBarrelDigisValidation::analyze(), EcalPreshowerRecHitsValidation::analyze(), GlobalMuonMatchAnalyzer::analyze(), DQMHLTSourcePi0::analyze(), L1THCALTPG::analyze(), EEClusterTask::analyze(), EETriggerTowerClient::analyze(), EBTimingTask::analyze(), EcalSimHitsValidation::analyze(), EcalTBValidation::analyze(), PFJetTester::analyze(), HLTTauValidation::analyze(), ConverterTester::analyze(), HLTTauDQMOfflineSource::analyze(), MuonIdDQM::analyze(), HLTScalers::analyze(), L1TGCT::analyze(), L1TFED::analyze(), L1TdeECAL::analyze(), L1TCSCTPG::analyze(), L1TCSCTF::analyze(), EELedClient::analyze(), EBSelectiveReadoutTask::analyze(), EBClusterTask::analyze(), EBTestPulseClient::analyze(), EBLaserClient::analyze(), SiPixelErrorsDigisToCalibDigis::analyze(), CSCRecHit2DValidation::analyze(), CSCStripDigiValidation::analyze(), CaloJetTester::analyze(), TrackerHitAnalyzer::analyze(), DQMSourceExample::analyze(), L1TDTTF::analyze(), EEPedestalTask::analyze(), EcalEndcapSimHitsValidation::analyze(), MuIsoValidation::analyze(), TopValidation::analyze(), HLTTauTrkDQMOfflineSource::analyze(), MuonEnergyDepositAnalyzer::analyze(), JetAnalyzer::analyze(), DQMSourcePi0::analyze(), MonitorLTC::analyze(), HLTMuonRecoDQMSource::analyze(), EEStatusFlagsTask::analyze(), EBPedestalOnlineClient::analyze(), EBPedestalClient::analyze(), DTDigiTask::analyze(), EcalMixingModuleValidation::analyze(), EcalPreshowerSimHitsValidation::analyze(), GlobalHitsHistogrammer::analyze(), MuonDTDigis::analyze(), SiStripTrackingRecHitsValid::analyze(), HcalSummaryClient::analyze_subtask(), HcalSimHitStudy::analyzeHits(), HLTBJetDQMSource::analyzeLifetime(), HLTBJetDQMSource::analyzePerformance(), HLTBJetDQMSource::analyzeSoftmuon(), HLTMuonGenericRate::begin(), EBSummaryClient::beginJob(), DQMFEDIntegrityClient::beginJob(), HcalMonitorModule::beginJob(), L1TEventInfoClient::beginJob(), DTDAQInfo::beginJob(), EESummaryClient::beginJob(), SiStripDaqInfo::beginJob(), L1TEMUEventInfoClient::beginJob(), DataCertificationJetMET::beginJob(), HLTEventInfoClient::beginJob(), MuonTestSummary::beginLuminosityBlock(), DQMDaqInfo::beginLuminosityBlock(), SiStripDaqInfo::beginLuminosityBlock(), DTDAQInfo::beginLuminosityBlock(), CSCDaqInfo::beginLuminosityBlock(), HcalMonitorModule::beginRun(), DTOfflineSummaryClients::beginRun(), DQMEventInfo::beginRun(), RPCEventSummary::beginRun(), DTSummaryClients::beginRun(), XmasToDQMEventInfo::beginRun(), CalibrationTask::checkAndSave(), CalibrationScanTask::checkAndSave(), HcalMonitorModule::CheckSubdetectorStatus(), GlobalRecHitsAnalyzer::compute(), SiPixelInformationExtractor::computeGlobalQualityFlag(), EcalMixingModuleValidation::computeSDBunchDigi(), HLTTauDQMSource::doL2(), HLTTauDQMSource::doL25(), HLTTauDQMSource::doL3(), TrackAnalyzer::doTrackerSpecificFillHists(), DQMEventInfo::DQMEventInfo(), EcalBarrelMonitorModule::endJob(), HcalMonitorModule::endJob(), EcalEndcapMonitorModule::endJob(), RPCMonitorSync::endJob(), EcalEndcapSimHitsValidation::endJob(), EcalBarrelSimHitsValidation::endJob(), MuonTestSummary::endLuminosityBlock(), DTOfflineSummaryClients::endLuminosityBlock(), L1TCSCTFClient::endLuminosityBlock(), RPCEventSummary::endLuminosityBlock(), L1Scalers::endLuminosityBlock(), L1TEventInfoClient::endLuminosityBlock(), HLTEventInfoClient::endLuminosityBlock(), HLTScalers::endLuminosityBlock(), DTNoiseAnalysisTest::endLuminosityBlock(), L1TEMUEventInfoClient::endLuminosityBlock(), DTSummaryClients::endLuminosityBlock(), GlobalHitsTester::endRun(), ConverterTester::endRun(), HcalDataCertification::endRun(), HLXMonitor::EndRun(), RPCEfficiencySecond::endRun(), HcalMonitorClient::errorSummary(), HLTTauL1DQMOfflineSource::evalL1extraDecisions(), DQMStore::extract(), DTDataIntegrityTask::fedEntry(), DTDataIntegrityTask::fedFatal(), DTDataIntegrityTask::fedNonFatal(), HTrackVariables::Fill(), HResolution1DRecHit::Fill(), Fill(), SiPixelRecHitModule::fill(), RecoMuonValidator::MuonME::fill(), CSCMonitorObject::Fill(), EcalSelectiveReadoutValidation::fill(), MonElemManager< T, varType >::fill(), HResolution::Fill(), MonElemManager2D< T, varTypeX, varTypeY >::fill(), SiPixelRecHitsValid::fillBarrel(), MuonSimHitsValidAnalyzer::fillCSC(), HcalPedestalMonitor::fillDBValues(), HTrackVariables::FillDeltaR(), MuonSimHitsValidAnalyzer::fillDT(), SiStripActionExecutor::fillDummyGlobalStatus(), GlobalDigisAnalyzer::fillECal(), GlobalRecHitsAnalyzer::fillECal(), GlobalHitsAnalyzer::fillECal(), CSCSegmentValidation::fillEfficiencyPlots(), HcalSubdetDigiMonitor::fillElement(), HcalSubdetDigiMonitor::fillElements(), HLXMonitor::FillEventInfo(), SiStripFEDCheckPlugin::fillFatalError(), SiPixelRecHitsValid::fillForward(), GlobalHitsAnalyzer::fillG4MC(), SiStripActionExecutor::fillGlobalStatusFromLayer(), SiStripActionExecutor::fillGlobalStatusFromModule(), SiStripQualityDQM::fillGrandSummaryMEs(), GlobalRecHitsAnalyzer::fillHCal(), GlobalHitsAnalyzer::fillHCal(), GlobalDigisAnalyzer::fillHCal(), SiStripFEDMonitorPlugin::fillHistogram(), HLXMonitor::FillHistograms(), DQMFEDIntegrityClient::fillHistograms(), HLXMonitor::FillHistoHFCompare(), HLTMon::fillHistos(), EmDQM::fillHistos(), HLTTauElDQMOfflineSource::fillHistos(), HLTMonElectron::fillHistos(), TrackAnalyzer::fillHistosForState(), HLTTauL1DQMOfflineSource::fillL1Histograms(), HLTTauL1DQMOfflineSource::fillL1MCTauMatchedHists(), CaloJetTester::fillMatchHists(), PFJetTester::fillMatchHists(), SiStripMonitorCluster::fillME(), SiStripMonitorTrackEfficiency::fillME(), SiStripMonitorDigi::fillME(), SiStripMonitorTrack::fillME(), SiStripThresholdDQM::fillMEsForDet(), SiStripQualityDQM::fillMEsForDet(), SiStripPedestalsDQM::fillMEsForDet(), SiStripNoisesDQM::fillMEsForDet(), SiStripApvGainsDQM::fillMEsForDet(), SiStripLorentzAngleDQM::fillMEsForLayer(), SiStripQualityDQM::fillMEsForLayer(), SiStripApvGainsDQM::fillMEsForLayer(), SiStripThresholdDQM::fillMEsForLayer(), SiStripPedestalsDQM::fillMEsForLayer(), SiStripNoisesDQM::fillMEsForLayer(), GlobalRecHitsAnalyzer::fillMuon(), GlobalHitsAnalyzer::fillMuon(), GlobalDigisAnalyzer::fillMuon(), SiStripFEDCheckPlugin::fillNonFatalError(), CSCStripDigiValidation::fillPedestalPlots(), MuonTrackAnalyzer::fillPlots(), SiStripFEDCheckPlugin::fillPresent(), RCTMonitor::FillRCT(), MuonSimHitsValidAnalyzer::fillRPC(), CSCStripDigiValidation::fillSignalPlots(), SiStripMonitorTrackEfficiency::fillTrend(), SiStripMonitorTrack::fillTrend(), SiStripMonitorCluster::fillTrend(), SiStripMonitorDigi::fillTrend(), GlobalRecHitsAnalyzer::fillTrk(), GlobalDigisAnalyzer::fillTrk(), GlobalHitsAnalyzer::fillTrk(), FlavourHistograms< T >::fillVariable(), SiPixelInformationExtractor::findNoisyPixels(), SiStripCablingDQM::getActiveDetIds(), HcalLaserClient::getHistograms(), HcalLEDClient::getHistograms(), TauTagVal::getVectorOfGenJets(), CaloTauTagVal::getVectorOfGenJets(), PFTauTagVal::getVectorOfGenJets(), PFTauTagVal::getVectorOfVisibleTauJets(), TauTagVal::getVectorOfVisibleTauJets(), CaloTauTagVal::getVectorOfVisibleTauJets(), PhotonAnalyzer::makePizero(), CSCMonitorModule::monitorCSC(), CSCMonitorModule::monitorDDU(), CSCMonitorModule::monitorExaminer(), SiPixelRecHitModule::nfill(), HcalLEDMonitor::perChanHists(), HcalLaserMonitor::perChanHists(), CSCRecHit2DValidation::plotResolution(), CSCSegmentValidation::plotResolution(), GlobalRecHitsAnalyzer::plotResolution(), CSCStripDigiValidation::plotResolution(), CSCWireDigiValidation::plotResolution(), EETriggerTowerTask::processDigis(), EBTriggerTowerTask::processDigis(), HcalCaloTowerMonitor::processEvent(), HcalRecHitMonitor::processEvent(), HcalLaserMonitor::processEvent(), HcalDataFormatMonitor::processEvent(), HcalDigiMonitor::processEvent(), HcalDeadCellMonitor::processEvent(), HcalExpertMonitor::processEvent(), HcalTrigPrimMonitor::processEvent(), HcalHotCellMonitor::processEvent(), HcalEEUSMonitor::processEvent(), HcalLEDMonitor::processEvent(), HcalBeamMonitor::processEvent(), HcalPedestalMonitor::processEvent(), HcalMTCCMonitor::processEvent(), HcalExpertMonitor::processEvent_Digi(), HcalDeadCellMonitor::processEvent_digi(), HcalEEUSMonitor::processEvent_RawData(), HcalExpertMonitor::processEvent_RecHit(), HcalRecHitMonitor::processEvent_rechit(), HcalDeadCellMonitor::processEvent_rechitenergy(), HcalHotCellMonitor::processEvent_rechitenergy(), HcalHotCellMonitor::processEvent_rechitneighbors(), HcalDeadCellMonitor::processEvent_rechitneighbors(), DTDataIntegrityTask::processFED(), DTDataIntegrityTask::processROS25(), SiStripDaqInfo::readSubdetFedFractions(), DQMNet::reinstateObject(), DTLocalTriggerTask::runDCCAnalysis(), DTTimeEvolutionHisto::setTimeSlotValue(), HcalPedestalMonitor::setup(), EcalBarrelMonitorModule::setup(), HcalRecHitMonitor::setup(), HcalMTCCMonitor::setup(), HcalDigiMonitor::setup(), HcalLaserMonitor::setup(), HcalLEDMonitor::setup(), HcalDataFormatMonitor::setup(), CSCMonitorModule::setup(), HcalDeadCellMonitor::setup(), EcalEndcapMonitorModule::setup(), HcalCaloTowerMonitor::setup(), HcalTrigPrimMonitor::setup(), HcalHotCellMonitor::setup(), HcalSummaryClient::setup(), HLXMonitor::SetupEventInfo(), TrackEfficiencyMonitor::testSTATracks(), TrackEfficiencyMonitor::testTrackerTracks(), MuonTrackAnalyzer::tracksAnalysis(), HcalDataFormatMonitor::unpack(), HcalEEUSMonitor::unpack(), HcalDataIntegrityTask::unpack(), CSCMonitorModule::updateFracHistos(), HcalDataFormatMonitor::UpdateMEs(), PrimaryVertexMonitor::vertexPlots(), XmasToDQMEventInfo::XmasToDQMEventInfo(), and HcalRecHitsValidation::~HcalRecHitsValidation().

00177 {
00178   update();
00179   if (kind_ == DQM_KIND_INT)
00180   {
00181     curvalue_.num = int(x);
00182     static_cast<TObjString *>(data_.object)
00183       ->SetString(tagString().c_str());
00184   }
00185   else if (kind_ == DQM_KIND_REAL)
00186   {
00187     curvalue_.real = x;
00188     static_cast<TObjString *>(data_.object)
00189       ->SetString(tagString().c_str());
00190   }
00191   else if (kind_ == DQM_KIND_TH1F)
00192     accessRootObject(__PRETTY_FUNCTION__, 1)
00193       ->Fill(x, 1);
00194   else if (kind_ == DQM_KIND_TH1S)
00195     accessRootObject(__PRETTY_FUNCTION__, 1)
00196       ->Fill(x, 1);
00197   else
00198     incompatible(__PRETTY_FUNCTION__);
00199 }

uint32_t MonitorElement::flags ( void   )  const [inline]

Get the object flags.

Definition at line 89 of file MonitorElement.h.

References data_, and DQMNet::CoreObject::flags.

00090     { return data_.flags; }

TAxis * MonitorElement::getAxis ( const char *  func,
int  axis 
) const [private]

Definition at line 704 of file MonitorElement.cc.

References a, accessRootObject(), data_, Exception, h, and DQMNet::CoreObject::name.

Referenced by getAxisTitle(), setAxisRange(), setAxisTimeDisplay(), setAxisTimeFormat(), setAxisTimeOffset(), setAxisTitle(), and setBinLabel().

00705 {
00706   TH1 *h = accessRootObject(func, axis-1);
00707   TAxis *a = 0;
00708   if (axis == 1)
00709     a = h->GetXaxis();
00710   else if (axis == 2)
00711     a = h->GetYaxis();
00712   else if (axis == 3)
00713     a = h->GetZaxis();
00714 
00715   if (! a)
00716     throw cms::Exception("MonitorElement")
00717       << "No such axis " << axis << " in monitor element '"
00718       << data_.name << "' of type '" << typeid(*h).name() << "'";
00719 
00720   return a;
00721 }

std::string MonitorElement::getAxisTitle ( int  axis = 1  )  const

get x-, y- or z-axis title (axis=1, 2, 3 respectively)

Definition at line 552 of file MonitorElement.cc.

References getAxis().

Referenced by SiStripMonitorTrackEfficiency::fillTrend(), SiStripMonitorTrack::fillTrend(), SiStripMonitorCluster::fillTrend(), and SiStripMonitorDigi::fillTrend().

00553 { return getAxis(__PRETTY_FUNCTION__, axis)
00554     ->GetTitle(); }

float MonitorElement::getBinContent ( int  binx,
int  biny,
int  binz 
) const

get content of bin (3-D)

Definition at line 477 of file MonitorElement.cc.

References accessRootObject().

00478 { return accessRootObject(__PRETTY_FUNCTION__, 3)
00479     ->GetBinContent(binx, biny, binz); }

float MonitorElement::getBinContent ( int  binx,
int  biny 
) const

get content of bin (2-D)

Definition at line 471 of file MonitorElement.cc.

References accessRootObject().

00472 { return accessRootObject(__PRETTY_FUNCTION__, 2)
00473     ->GetBinContent(binx, biny); }

float MonitorElement::getBinContent ( int  binx  )  const

get content of bin (1-D)

Definition at line 465 of file MonitorElement.cc.

References accessRootObject().

Referenced by EBBeamCaloClient::analyze(), HLTMonElectronConsumer::analyze(), EEBeamCaloClient::analyze(), EESummaryClient::analyze(), EBBeamCaloTask::analyze(), L1THCALTPGXAna::analyze(), EEBeamCaloTask::analyze(), L1TdeGCT::analyze(), L1TDEMON::analyze(), HcalSummaryClient::analyze(), EBSummaryClient::analyze(), EcalMixingModuleValidation::bunchSumTest(), HLTTauPostProcessor::calculatePathEfficiencies(), SiPixelInformationExtractor::computeGlobalQualityFlag(), HLTTauPostProcessor::createIntegratedHisto(), PhotonAnalyzer::dividePlots(), MuonTestSummary::doMolteplicityTests(), MuonTestSummary::doMuonIDTests(), SiStripMonitorFilter::endJob(), SiStripMonitorHLT::endJob(), L1TDEMON::endJob(), ElectronAnalyzer::endJob(), MuonTestSummary::endLuminosityBlock(), DTOfflineSummaryClients::endLuminosityBlock(), L1ScalersClient::endLuminosityBlock(), HLTScalersClient::endLuminosityBlock(), L1TEventInfoClient::endLuminosityBlock(), DTOccupancyTest::endLuminosityBlock(), RPCDeadChannelTest::endLuminosityBlock(), DTSummaryClients::endLuminosityBlock(), DTDataIntegrityTest::endLuminosityBlock(), RPCEfficiencySecond::endRun(), EmDQMPostProcessor::endRun(), SiPixelInformationExtractor::fillGlobalQualityPlot(), HLXMonitor::FillHistograms(), HcalRecHitMonitor::fillNevents(), L1TRPCTF::fillNorm(), SiPixelActionExecutor::fillOccupancy(), SiStripMonitorTrackEfficiency::fillTrend(), SiStripMonitorTrack::fillTrend(), SiStripMonitorCluster::fillTrend(), SiStripMonitorDigi::fillTrend(), HcalBaseMonitor::FillUnphysicalHEHFBins(), CSCMonitorObject::GetBinContent(), UtilsClient::getBinQuality(), UtilsClient::getBinStatus(), SiPixelSCurveCalibrationAnalysis::makeThresholdSummary(), UtilsClient::maskBinContent(), CSCMonitorModule::monitorDDU(), DTTimeEvolutionHisto::normalizeTo(), UtilsClient::printBadChannels(), HcalLEDMonitor::reset(), L1TEMUEventInfoClient::setSummary(), DTTimeEvolutionHisto::setTimeSlotValue(), DTTimeEvolutionHisto::updateTimeSlot(), and HcalRecHitsValidation::~HcalRecHitsValidation().

00466 { return accessRootObject(__PRETTY_FUNCTION__, 1)
00467     ->GetBinContent(binx); }

float MonitorElement::getBinEntries ( int  bin  )  const

get # of bin entries (for profiles)

Definition at line 507 of file MonitorElement.cc.

References accessRootObject(), DQM_KIND_TPROFILE, DQM_KIND_TPROFILE2D, incompatible(), and kind_.

Referenced by SiStripMonitorTrackEfficiency::fillTrend(), SiStripMonitorTrack::fillTrend(), SiStripMonitorCluster::fillTrend(), and SiStripMonitorDigi::fillTrend().

00508 {
00509   if (kind_ == DQM_KIND_TPROFILE)
00510     return static_cast<TProfile *>(accessRootObject(__PRETTY_FUNCTION__, 1))
00511       ->GetBinEntries(bin);
00512   else if (kind_ == DQM_KIND_TPROFILE2D)
00513     return static_cast<TProfile2D *>(accessRootObject(__PRETTY_FUNCTION__, 1))
00514       ->GetBinEntries(bin);
00515   else
00516   {
00517     incompatible(__PRETTY_FUNCTION__);
00518     return 0;
00519   }
00520 }

float MonitorElement::getBinError ( int  binx,
int  biny,
int  binz 
) const

get uncertainty on content of bin (3-D) - See TH1::GetBinError for details

Definition at line 495 of file MonitorElement.cc.

References accessRootObject().

00496 { return accessRootObject(__PRETTY_FUNCTION__, 3)
00497     ->GetBinError(binx, biny, binz); }

float MonitorElement::getBinError ( int  binx,
int  biny 
) const

get uncertainty on content of bin (2-D) - See TH1::GetBinError for details

Definition at line 489 of file MonitorElement.cc.

References accessRootObject().

00490 { return accessRootObject(__PRETTY_FUNCTION__, 2)
00491     ->GetBinError(binx, biny); }

float MonitorElement::getBinError ( int  binx  )  const

get uncertainty on content of bin (1-D) - See TH1::GetBinError for details

Definition at line 483 of file MonitorElement.cc.

References accessRootObject().

Referenced by EcalMixingModuleValidation::bunchSumTest(), HLXMonitor::FillHistograms(), SiStripMonitorTrack::fillTrend(), SiStripMonitorTrackEfficiency::fillTrend(), SiStripMonitorCluster::fillTrend(), SiStripMonitorDigi::fillTrend(), and HcalRecHitsValidation::~HcalRecHitsValidation().

00484 { return accessRootObject(__PRETTY_FUNCTION__, 1)
00485     ->GetBinError(binx); }

float MonitorElement::getEntries ( void   )  const

get # of entries

Definition at line 501 of file MonitorElement.cc.

References accessRootObject().

Referenced by EESummaryClient::analyze(), EBSummaryClient::analyze(), SiPixelInformationExtractor::computeGlobalQualityFlag(), MuonTestSummary::doMolteplicityTests(), MuonTestSummary::doMuonIDTests(), TauTagVal::endJob(), RPCEventSummary::endLuminosityBlock(), L1TdeECALClient::endLuminosityBlock(), DTDataIntegrityTest::endLuminosityBlock(), SiStripMonitorTrackEfficiency::fillTrend(), SiStripMonitorTrack::fillTrend(), SiStripMonitorCluster::fillTrend(), SiStripMonitorDigi::fillTrend(), SiPixelInformationExtractor::findNoisyPixels(), DTLocalTriggerLutTest::runClientDiagnostic(), and L1TEMUEventInfoClient::setSummary().

00502 { return accessRootObject(__PRETTY_FUNCTION__, 1)
00503     ->GetEntries(); }

const double& MonitorElement::getFloatValue ( void   )  const [inline]

Definition at line 275 of file MonitorElement.h.

References curvalue_, DQM_KIND_REAL, kind_, and MonitorElement::Value::real.

Referenced by MEtoEDMConverter::endRun().

00276     {
00277       assert(kind_ == DQM_KIND_REAL);
00278       return curvalue_.real;
00279     }

const std::string& MonitorElement::getFullname ( void   )  const [inline]

get full name of ME including Pathname

Definition at line 101 of file MonitorElement.h.

References data_, and DQMNet::CoreObject::name.

Referenced by ConverterTester::beginJob(), MEtoEDMConverter::beginRun(), MEtoEDMConverter::endJob(), MEtoEDMConverter::endRun(), GlobalHitsTester::GlobalHitsTester(), ContentsYRange::runTest(), ContentsXRange::runTest(), MeanWithinExpected::runTest(), DeadChannel::runTest(), NoisyChannel::runTest(), and DQMStore::tag().

00102     { return data_.name; }

const int& MonitorElement::getIntValue ( void   )  const [inline]

Definition at line 269 of file MonitorElement.h.

References curvalue_, DQM_KIND_INT, kind_, and MonitorElement::Value::num.

Referenced by HcalSummaryClient::analyze(), CalibrationHistograms::CalibrationHistograms(), L1ScalersClient::endLuminosityBlock(), HLTScalersClient::endLuminosityBlock(), and MEtoEDMConverter::endRun().

00270     {
00271       assert(kind_ == DQM_KIND_INT);
00272       return curvalue_.num;
00273     }

float MonitorElement::getMean ( int  axis = 1  )  const

get mean value of histogram along x, y or z axis (axis=1, 2, 3 respectively)

Definition at line 422 of file MonitorElement.cc.

References accessRootObject().

Referenced by SiPixelActionExecutor::checkQTestResults(), DTResolutionAnalysisTest::endLuminosityBlock(), DTDataIntegrityTest::endLuminosityBlock(), RPCEfficiencySecond::endRun(), SiPixelInformationExtractor::fillGlobalQualityPlot(), HcalLaserClient::getHistograms(), and HcalLEDClient::getHistograms().

00423 { return accessRootObject(__PRETTY_FUNCTION__, axis-1)
00424     ->GetMean(axis); }

float MonitorElement::getMeanError ( int  axis = 1  )  const

get mean value uncertainty of histogram along x, y or z axis (axis=1, 2, 3 respectively)

Definition at line 429 of file MonitorElement.cc.

References accessRootObject().

Referenced by htmlErrors().

00430 { return accessRootObject(__PRETTY_FUNCTION__, axis-1)
00431     ->GetMeanError(axis); }

const std::string& MonitorElement::getName ( void   )  const [inline]

get name of ME

Definition at line 93 of file MonitorElement.h.

References name_.

Referenced by MonitorElementMgr::addME(), EBSummaryClient::beginJob(), L1TEventInfoClient::beginJob(), EESummaryClient::beginJob(), L1TEMUEventInfoClient::beginJob(), HLTEventInfoClient::beginJob(), RPCEventSummary::beginRun(), RPCDeadChannelTest::beginRun(), RPCMon_SS_Dbx_Global::beginRun(), SiPixelActionExecutor::checkQTestResults(), EBRawDataTask::cleanup(), EEHltTask::cleanup(), EESummaryClient::cleanup(), EBIntegrityTask::cleanup(), EBSelectiveReadoutTask::cleanup(), HcalSummaryClient::cleanup(), EcalEndcapMonitorModule::cleanup(), EEBeamHodoTask::cleanup(), EEBeamCaloTask::cleanup(), EBClusterTask::cleanup(), EEClusterTask::cleanup(), EEBeamCaloClient::cleanup(), EBHltTask::cleanup(), EERawDataTask::cleanup(), EBBeamCaloClient::cleanup(), EcalBarrelMonitorModule::cleanup(), EESelectiveReadoutTask::cleanup(), EBOccupancyTask::cleanup(), EBBeamHodoTask::cleanup(), EBBeamCaloTask::cleanup(), EEIntegrityTask::cleanup(), EBSummaryClient::cleanup(), SiStripSummaryCreator::fillGrandSummaryHistos(), SiStripSummaryCreator::fillSummaryHistos(), SiPixelInformationExtractor::getDetId(), UtilsClient::getHisto(), getHisto(), getHisto2(), SiPixelInformationExtractor::getHistosFromPath(), SiStripInformationExtractor::getHistosFromPath(), getHistoTH3F(), getHistoTProfile(), getHistoTProfile2D(), SiStripInformationExtractor::getTrackerMapHistos(), SiPixelInformationExtractor::getTrackerMapHistos(), CommissioningHistograms::histogram(), SiStripHistoPlotter::makeCondDBPlots(), SiPixelHistoPlotter::makePlot(), L1TDTTPGClient::makeRatioHisto(), SiStripInformationExtractor::plotHistosFromLayout(), UtilsClient::printBadChannels(), EETriggerTowerTask::processDigis(), EBTriggerTowerTask::processDigis(), SiStripInformationExtractor::readGlobalHistoList(), SiStripInformationExtractor::readStatusMessage(), SiPixelInformationExtractor::readStatusMessage(), SiPixelHistoricInfoEDAClient::retrievePointersToModuleMEs(), EBSummaryClient::setup(), EBBeamCaloClient::setup(), HcalSummaryClient::setup(), EESummaryClient::setup(), EEBeamCaloClient::setup(), tagString(), and CSCRecHit2DValidation::~CSCRecHit2DValidation().

00094     { return name_; }

int MonitorElement::getNbinsX ( void   )  const

get # of bins in X-axis

Definition at line 447 of file MonitorElement.cc.

References accessRootObject().

Referenced by HLTMonElectronConsumer::analyze(), SiStripMonitorQuality::analyze(), HLTTauPostProcessor::calculatePathEfficiencies(), PhotonAnalyzer::dividePlots(), MultiTrackValidatorBase::doProfileX(), PhotonValidator::doProfileX(), PhotonAnalyzer::doProfileX(), ElectronAnalyzer::endJob(), L1ScalersClient::endLuminosityBlock(), L1TEventInfoClient::endLuminosityBlock(), HLTScalersClient::endLuminosityBlock(), DTChamberEfficiencyClient::endLuminosityBlock(), EmDQMPostProcessor::endRun(), SiStripSummaryCreator::fillGrandSummaryHistos(), DQMFEDIntegrityClient::fillHistograms(), L1TRPCTF::fillNorm(), SiPixelActionExecutor::fillOccupancy(), SiStripSummaryCreator::fillSummaryHistos(), SiStripMonitorTrack::fillTrend(), SiStripMonitorTrackEfficiency::fillTrend(), SiStripMonitorCluster::fillTrend(), SiStripMonitorDigi::fillTrend(), SiPixelSCurveCalibrationAnalysis::makeThresholdSummary(), DTTimeEvolutionHisto::normalizeTo(), UtilsClient::printBadChannels(), HcalLEDMonitor::reset(), and HcalRecHitsValidation::~HcalRecHitsValidation().

00448 { return accessRootObject(__PRETTY_FUNCTION__, 1)
00449     ->GetNbinsX(); }

int MonitorElement::getNbinsY ( void   )  const

get # of bins in Y-axis

Definition at line 453 of file MonitorElement.cc.

References accessRootObject().

Referenced by L1TEventInfoClient::endLuminosityBlock(), DTChamberEfficiencyClient::endLuminosityBlock(), L1TRPCTF::fillNorm(), SiPixelActionExecutor::fillOccupancy(), SiPixelSCurveCalibrationAnalysis::makeThresholdSummary(), UtilsClient::printBadChannels(), and HcalRecHitsValidation::~HcalRecHitsValidation().

00454 { return accessRootObject(__PRETTY_FUNCTION__, 2)
00455     ->GetNbinsY(); }

int MonitorElement::getNbinsZ ( void   )  const

get # of bins in Z-axis

Definition at line 459 of file MonitorElement.cc.

References accessRootObject().

00460 { return accessRootObject(__PRETTY_FUNCTION__, 3)
00461     ->GetNbinsZ(); }

const std::string& MonitorElement::getPathname ( void   )  const [inline]

get pathname of parent folder

Definition at line 97 of file MonitorElement.h.

References path_.

Referenced by HLTMonElectronConsumer::beginJob(), FourVectorHLTClient::endRun(), and SiPixelInformationExtractor::findNoisyPixels().

00098     { return path_; }

std::vector< QReport * > MonitorElement::getQErrors ( void   )  const

get errors from last set of quality tests

Definition at line 351 of file MonitorElement.cc.

References data_, e, dqm::qstatus::ERROR, i, DQMNet::CoreObject::qreports, qreports_, and HLT_VtxMuL3::result.

Referenced by SiPixelActionExecutor::checkQTestResults(), HcalBaseClient::errorOutput(), and QTestStatusChecker::processAlarms().

00352 {
00353   std::vector<QReport *> result;
00354   result.reserve(qreports_.size());
00355   for (size_t i = 0, e = qreports_.size(); i != e; ++i)
00356     if (data_.qreports[i].code == dqm::qstatus::ERROR)
00357       result.push_back(const_cast<QReport *>(&qreports_[i]));
00358   return result;
00359 }

std::vector< QReport * > MonitorElement::getQOthers ( void   )  const

get "other" (i.e.

non-error, non-warning, non-"ok") QReports from last set of quality tests

Definition at line 362 of file MonitorElement.cc.

References data_, e, dqm::qstatus::ERROR, i, DQMNet::CoreObject::qreports, qreports_, HLT_VtxMuL3::result, dqm::qstatus::STATUS_OK, and dqm::qstatus::WARNING.

Referenced by HcalBaseClient::errorOutput(), and QTestStatusChecker::processAlarms().

00363 {
00364   std::vector<QReport *> result;
00365   result.reserve(qreports_.size());
00366   for (size_t i = 0, e = qreports_.size(); i != e; ++i)
00367     if (data_.qreports[i].code != dqm::qstatus::STATUS_OK
00368         && data_.qreports[i].code != dqm::qstatus::WARNING
00369         && data_.qreports[i].code != dqm::qstatus::ERROR)
00370       result.push_back(const_cast<QReport *>(&qreports_[i]));
00371   return result;
00372 }

void MonitorElement::getQReport ( bool  create,
const std::string &  qtname,
QReport *&  qr,
DQMNet::QValue *&  qv 
) [private]

Definition at line 1088 of file MonitorElement.cc.

References DQMNet::QValue::algorithm, DQMNet::QValue::code, data_, dqm::qstatus::DID_NOT_RUN, end, DQMNet::QValue::message, DQMNet::CoreObject::qreports, qreports_, and DQMNet::QValue::qtname.

01089 {
01090   assert(qreports_.size() == data_.qreports.size());
01091 
01092   qr = 0;
01093   qv = 0;
01094 
01095   size_t pos = 0, end = qreports_.size();
01096   while (pos < end && data_.qreports[pos].qtname != qtname)
01097     ++pos;
01098 
01099   if (pos == end && ! create)
01100     return;
01101   else if (pos == end)
01102   {
01103     data_.qreports.push_back(DQMNet::QValue());
01104     qreports_.push_back(QReport(0, 0));
01105 
01106     DQMNet::QValue &q = data_.qreports.back();
01107     q.code = dqm::qstatus::DID_NOT_RUN;
01108     q.qtname = qtname;
01109     q.message = "NO_MESSAGE_ASSIGNED";
01110     q.algorithm = "UNKNOWN_ALGORITHM";
01111   }
01112 
01113   qr = &qreports_[pos];
01114   qv = &data_.qreports[pos];
01115 }

const QReport * MonitorElement::getQReport ( const std::string &  qtname  )  const

get QReport corresponding to <qtname> (null pointer if QReport does not exist)

Definition at line 321 of file MonitorElement.cc.

Referenced by addQReport(), DQMClientExample::analyze(), createH2CompTest(), L1TGCTClient::endLuminosityBlock(), MuonRecoTest::endLuminosityBlock(), RPCEventSummary::endLuminosityBlock(), L1TEventInfoClient::endLuminosityBlock(), RPCDeadChannelTest::endLuminosityBlock(), DTResolutionTest::endLuminosityBlock(), L1TRPCTFClient::endLuminosityBlock(), MuonTrackResidualsTest::endLuminosityBlock(), and DTLocalTriggerLutTest::runClientDiagnostic().

00322 {
00323   QReport *qr;
00324   DQMNet::QValue *qv;
00325   const_cast<MonitorElement *>(this)->getQReport(false, qtname, qr, qv);
00326   return qr;
00327 }

std::vector< QReport * > MonitorElement::getQReports ( void   )  const

get map of QReports

Definition at line 330 of file MonitorElement.cc.

References e, i, qreports_, and HLT_VtxMuL3::result.

Referenced by L1TdeECALClient::endLuminosityBlock(), L1TRPCTFClient::endLuminosityBlock(), SiStripUtility::getMEStatus(), SiPixelUtility::getStatus(), SiStripInformationExtractor::readStatusMessage(), and SiPixelInformationExtractor::readStatusMessage().

00331 {
00332   std::vector<QReport *> result;
00333   result.reserve(qreports_.size());
00334   for (size_t i = 0, e = qreports_.size(); i != e; ++i)
00335     result.push_back(const_cast<QReport *>(&qreports_[i]));
00336   return result;
00337 }

std::vector< QReport * > MonitorElement::getQWarnings ( void   )  const

get warnings from last set of quality tests

Definition at line 340 of file MonitorElement.cc.

References data_, e, i, DQMNet::CoreObject::qreports, qreports_, HLT_VtxMuL3::result, and dqm::qstatus::WARNING.

Referenced by SiPixelActionExecutor::checkQTestResults(), HcalBaseClient::errorOutput(), and QTestStatusChecker::processAlarms().

00341 {
00342   std::vector<QReport *> result;
00343   result.reserve(qreports_.size());
00344   for (size_t i = 0, e = qreports_.size(); i != e; ++i)
00345     if (data_.qreports[i].code == dqm::qstatus::WARNING)
00346       result.push_back(const_cast<QReport *>(&qreports_[i]));
00347   return result;
00348 }

TObject * MonitorElement::getRefRootObject ( void   )  const

Definition at line 1239 of file MonitorElement.cc.

References data_, DQMNet::CoreObject::reference, and update().

Referenced by CSCMonitorObject::getRefRootObject(), SiPixelHistoPlotter::makePlot(), Comp2RefKolmogorov::runTest(), Comp2RefChi2::runTest(), Comp2RefEqualH::runTest(), and CSCMonitorModule::updateFracHistos().

01240 {
01241   const_cast<MonitorElement *>(this)->update();
01242   return data_.reference;
01243 }

TH1 * MonitorElement::getRefTH1 ( void   )  const

Definition at line 1246 of file MonitorElement.cc.

References checkRootObject(), data_, DQMNet::CoreObject::name, DQMNet::CoreObject::reference, and update().

Referenced by SiPixelHistoPlotter::makePlot().

01247 {
01248   const_cast<MonitorElement *>(this)->update();
01249   return checkRootObject(data_.name, data_.reference, __PRETTY_FUNCTION__, 0);
01250 }

TH1F * MonitorElement::getRefTH1F ( void   )  const

Definition at line 1253 of file MonitorElement.cc.

References checkRootObject(), data_, DQM_KIND_TH1F, kind_, DQMNet::CoreObject::name, DQMNet::CoreObject::reference, and update().

Referenced by Comp2RefKolmogorov::runTest(), Comp2RefEqualH::runTest(), and Comp2RefChi2::runTest().

01254 {
01255   assert(kind_ == DQM_KIND_TH1F);
01256   const_cast<MonitorElement *>(this)->update();
01257   return dynamic_cast<TH1F *>
01258     (checkRootObject(data_.name, data_.reference, __PRETTY_FUNCTION__, 1));
01259 }

TH1S * MonitorElement::getRefTH1S ( void   )  const

Definition at line 1262 of file MonitorElement.cc.

References checkRootObject(), data_, DQM_KIND_TH1S, kind_, DQMNet::CoreObject::name, DQMNet::CoreObject::reference, and update().

Referenced by Comp2RefKolmogorov::runTest(), Comp2RefEqualH::runTest(), and Comp2RefChi2::runTest().

01263 {
01264   assert(kind_ == DQM_KIND_TH1S);
01265   const_cast<MonitorElement *>(this)->update();
01266   return dynamic_cast<TH1S *>
01267     (checkRootObject(data_.name, data_.reference, __PRETTY_FUNCTION__, 1));
01268 }

TH2F * MonitorElement::getRefTH2F ( void   )  const

Definition at line 1271 of file MonitorElement.cc.

References checkRootObject(), data_, DQM_KIND_TH2F, kind_, DQMNet::CoreObject::name, DQMNet::CoreObject::reference, and update().

Referenced by Comp2RefEqualH::runTest().

01272 {
01273   assert(kind_ == DQM_KIND_TH2F);
01274   const_cast<MonitorElement *>(this)->update();
01275   return dynamic_cast<TH2F *>
01276     (checkRootObject(data_.name, data_.reference, __PRETTY_FUNCTION__, 2));
01277 }

TH2S * MonitorElement::getRefTH2S ( void   )  const

Definition at line 1280 of file MonitorElement.cc.

References checkRootObject(), data_, DQM_KIND_TH2S, kind_, DQMNet::CoreObject::name, DQMNet::CoreObject::reference, and update().

Referenced by Comp2RefEqualH::runTest().

01281 {
01282   assert(kind_ == DQM_KIND_TH2S);
01283   const_cast<MonitorElement *>(this)->update();
01284   return dynamic_cast<TH2S *>
01285     (checkRootObject(data_.name, data_.reference, __PRETTY_FUNCTION__, 2));
01286 }

TH3F * MonitorElement::getRefTH3F ( void   )  const

Definition at line 1289 of file MonitorElement.cc.

References checkRootObject(), data_, DQM_KIND_TH3F, kind_, DQMNet::CoreObject::name, DQMNet::CoreObject::reference, and update().

Referenced by Comp2RefEqualH::runTest().

01290 {
01291   assert(kind_ == DQM_KIND_TH3F);
01292   const_cast<MonitorElement *>(this)->update();
01293   return dynamic_cast<TH3F *>
01294     (checkRootObject(data_.name, data_.reference, __PRETTY_FUNCTION__, 3));
01295 }

TProfile * MonitorElement::getRefTProfile ( void   )  const

Definition at line 1298 of file MonitorElement.cc.

References checkRootObject(), data_, DQM_KIND_TPROFILE, kind_, DQMNet::CoreObject::name, DQMNet::CoreObject::reference, and update().

Referenced by Comp2RefKolmogorov::runTest(), and Comp2RefChi2::runTest().

01299 {
01300   assert(kind_ == DQM_KIND_TPROFILE);
01301   const_cast<MonitorElement *>(this)->update();
01302   return dynamic_cast<TProfile *>
01303     (checkRootObject(data_.name, data_.reference, __PRETTY_FUNCTION__, 1));
01304 }

TProfile2D * MonitorElement::getRefTProfile2D ( void   )  const

Definition at line 1307 of file MonitorElement.cc.

References checkRootObject(), data_, DQM_KIND_TPROFILE2D, kind_, DQMNet::CoreObject::name, DQMNet::CoreObject::reference, and update().

01308 {
01309   assert(kind_ == DQM_KIND_TPROFILE2D);
01310   const_cast<MonitorElement *>(this)->update();
01311   return dynamic_cast<TProfile2D *>
01312     (checkRootObject(data_.name, data_.reference, __PRETTY_FUNCTION__, 2));
01313 }

float MonitorElement::getRMS ( int  axis = 1  )  const

get RMS of histogram along x, y or z axis (axis=1, 2, 3 respectively)

Definition at line 435 of file MonitorElement.cc.

References accessRootObject().

Referenced by SiPixelActionExecutor::checkQTestResults(), DTResolutionAnalysisTest::endLuminosityBlock(), RPCEfficiencySecond::endRun(), and CSCRecHit2DValidation::~CSCRecHit2DValidation().

00436 { return accessRootObject(__PRETTY_FUNCTION__, axis-1)
00437     ->GetRMS(axis); }

float MonitorElement::getRMSError ( int  axis = 1  )  const

get RMS uncertainty of histogram along x, y or z axis(axis=1,2,3 respectively)

Definition at line 441 of file MonitorElement.cc.

References accessRootObject().

00442 { return accessRootObject(__PRETTY_FUNCTION__, axis-1)
00443     ->GetRMSError(axis); }

TObject * MonitorElement::getRootObject ( void   )  const

Definition at line 1168 of file MonitorElement.cc.

References data_, DQMNet::CoreObject::object, and update().

Referenced by MEtoEDMConverter::endJob(), ExtractTObject< T >::extract(), FUShmDQMOutputService::findMonitorElements(), DTLocalTriggerBaseTest::getHisto(), SiPixelInformationExtractor::getMEType(), SiPixelHistoPlotter::makePlot(), ContentsYRange::runTest(), ContentsXRange::runTest(), Comp2RefKolmogorov::runTest(), ContentsWithinExpected::runTest(), MeanWithinExpected::runTest(), DeadChannel::runTest(), NoisyChannel::runTest(), Comp2RefEqualH::runTest(), and Comp2RefChi2::runTest().

01169 {
01170   const_cast<MonitorElement *>(this)->update();
01171   return data_.object;
01172 }

const std::string& MonitorElement::getStringValue ( void   )  const [inline]

Definition at line 281 of file MonitorElement.h.

References curvalue_, DQM_KIND_STRING, kind_, and MonitorElement::Value::str.

Referenced by HLTScalersClient::endLuminosityBlock(), and MEtoEDMConverter::endRun().

00282     {
00283       assert(kind_ == DQM_KIND_STRING);
00284       return curvalue_.str;
00285     }

const DQMNet::TagList& MonitorElement::getTags ( void   )  const [inline]

Definition at line 287 of file MonitorElement.h.

References data_, and DQMNet::CoreObject::tags.

Referenced by MEtoEDMConverter::endRun().

00288     { return data_.tags; }

TH1 * MonitorElement::getTH1 ( void   )  const

Definition at line 1175 of file MonitorElement.cc.

References accessRootObject(), and update().

Referenced by SiPixelOfflineCalibAnalysisBase::addTF1ToDQMMonitoringElement(), HLTMuonGenericRate::analyze(), HLTMuonGenericRate::begin(), CSCMonitorModule::book(), SiStripMonitorTrack::bookSubDetMEs(), SiStripMonitorCluster::createModuleMEs(), SiStripMonitorDigi::createModuleMEs(), SiStripMonitorCluster::createSubDetMEs(), SiStripMonitorDigi::createSubDetMEs(), SiStripQualityDQM::fillGrandSummaryMEs(), SiStripQualityDQM::fillMEsForLayer(), SiStripCablingDQM::getActiveDetIds(), CSCMonitorObject::GetBinError(), CSCMonitorObject::GetEntries(), CSCMonitorObject::GetMaximumBin(), CSCMonitorObject::getTH1(), MuIsoValidation::GetTH1FromMonitorElement(), CSCMonitorObject::getTH1Lock(), SiStripHistoPlotter::makeCondDBPlots(), SiStripHistoPlotter::makePlot(), CSCMonitorObject::SetAxisRange(), CSCMonitorObject::SetBinError(), CSCMonitorObject::SetMaximum(), CSCMonitorObject::SetNormFactor(), DTLocalTriggerTask::setQLabels(), CSCHLTMonitorModule::setup(), CSCMonitorModule::updateFracHistos(), and SiStripFEDCheckPlugin::updateHistograms().

01176 {
01177   const_cast<MonitorElement *>(this)->update();
01178   return accessRootObject(__PRETTY_FUNCTION__, 0);
01179 }

TH1F * MonitorElement::getTH1F ( void   )  const

Definition at line 1182 of file MonitorElement.cc.

References accessRootObject(), DQM_KIND_TH1F, kind_, and update().

Referenced by HLTMonElectronConsumer::analyze(), HLTMuonGenericRate::analyze(), DQMClientExample::analyze(), L1TCSCTFClient::analyze(), RPCMonitorRaw::analyze(), DataCertificationJetMET::beginJob(), L1TGMTClient::beginJob(), HLTMonElectronConsumer::beginJob(), TrackEfficiencyClient::beginJob(), HLTTauPostProcessor::calculatePathEfficiencies(), HistoricOfflineClient::CalculatePercentOver(), SiPixelHistoricInfoEDAClient::calculatePercentOver(), DQMStore::collate1D(), EffPurFromHistos::compute(), HTrackVariables::computeEfficiency(), HLTTauPostProcessor::createEfficiencyHisto(), HLTTauPostProcessor::createIntegratedHisto(), FlavourHistograms< T >::divide(), L1TdeRCT::DivideME1D(), MuonTestSummary::doMuonIDTests(), HLTTauTrkDQMOfflineSource::endJob(), HLTTauCaloDQMOfflineSource::endJob(), RPCMonitorRaw::endJob(), HarvestingAnalyzer::endJob(), DTtTrigCalibrationTest::endLuminosityBlock(), MuonRecoTest::endLuminosityBlock(), DTResolutionAnalysisTest::endLuminosityBlock(), L1TCSCTFClient::endLuminosityBlock(), DTSegmentAnalysisTest::endLuminosityBlock(), DTEfficiencyTest::endLuminosityBlock(), TrackEfficiencyClient::endLuminosityBlock(), FourVectorHLTClient::endRun(), MEtoEDMConverter::endRun(), RPCEfficiencySecond::endRun(), EmDQMPostProcessor::endRun(), LaserDQM::fillAdcCounts(), BTagDifferentialPlot::fillHisto(), DQMFEDIntegrityClient::fillHistograms(), FlavourHistograms< T >::FlavourHistograms(), L1TEventInfoClient::get1DHisto(), L1TDTTPGClient::get1DHisto(), L1THcalClient::get1DHisto(), HLTEventInfoClient::get1DHisto(), FourVectorHLTClient::get1DHisto(), L1TEMUEventInfoClient::get1DHisto(), L1TdeECALClient::get1DHisto(), BTagDifferentialPlot::getDifferentialHistoB_b(), BTagDifferentialPlot::getDifferentialHistoB_c(), BTagDifferentialPlot::getDifferentialHistoB_d(), BTagDifferentialPlot::getDifferentialHistoB_dus(), BTagDifferentialPlot::getDifferentialHistoB_dusg(), BTagDifferentialPlot::getDifferentialHistoB_g(), BTagDifferentialPlot::getDifferentialHistoB_ni(), BTagDifferentialPlot::getDifferentialHistoB_s(), BTagDifferentialPlot::getDifferentialHistoB_u(), EffPurFromHistos::getEffFlavVsBEff_b(), EffPurFromHistos::getEffFlavVsBEff_c(), EffPurFromHistos::getEffFlavVsBEff_d(), EffPurFromHistos::getEffFlavVsBEff_dus(), EffPurFromHistos::getEffFlavVsBEff_dusg(), EffPurFromHistos::getEffFlavVsBEff_g(), EffPurFromHistos::getEffFlavVsBEff_ni(), EffPurFromHistos::getEffFlavVsBEff_s(), EffPurFromHistos::getEffFlavVsBEff_u(), getHisto(), FlavourHistograms< T >::getHistoVector(), SiStripHistoPlotter::getProjection(), FlavourHistograms< int >::histo_all(), FlavourHistograms< int >::histo_b(), FlavourHistograms< int >::histo_c(), FlavourHistograms< int >::histo_d(), FlavourHistograms< int >::histo_dus(), FlavourHistograms< int >::histo_dusg(), FlavourHistograms< int >::histo_g(), FlavourHistograms< int >::histo_ni(), FlavourHistograms< int >::histo_s(), FlavourHistograms< int >::histo_u(), HLTTauL1DQMOfflineSource::HLTTauL1DQMOfflineSource(), DTLocalTriggerEfficiencyTest::makeEfficiencyME(), EgHLTOfflineClient::makeEffMonElemFromPassAndAll(), EgHLTOfflineClient::makeEffMonElemFromPassAndFail(), BTagDifferentialPlot::plot(), FlavourHistograms< T >::plot(), EffPurFromHistos::plot(), PrimaryVertexMonitor::PrimaryVertexMonitor(), ContentsYRange::runTest(), ContentsXRange::runTest(), Comp2RefKolmogorov::runTest(), MeanWithinExpected::runTest(), DeadChannel::runTest(), NoisyChannel::runTest(), Comp2RefChi2::runTest(), Comp2RefEqualH::runTest(), and DTTimeEvolutionHisto::setTimeSlotValue().

01183 {
01184   assert(kind_ == DQM_KIND_TH1F);
01185   const_cast<MonitorElement *>(this)->update();
01186   return dynamic_cast<TH1F *>(accessRootObject(__PRETTY_FUNCTION__, 1));
01187 }

TH1S * MonitorElement::getTH1S ( void   )  const

Definition at line 1190 of file MonitorElement.cc.

References accessRootObject(), DQM_KIND_TH1S, kind_, and update().

Referenced by DQMStore::collate1S(), MEtoEDMConverter::endRun(), ContentsYRange::runTest(), ContentsXRange::runTest(), Comp2RefKolmogorov::runTest(), MeanWithinExpected::runTest(), DeadChannel::runTest(), NoisyChannel::runTest(), Comp2RefChi2::runTest(), and Comp2RefEqualH::runTest().

01191 {
01192   assert(kind_ == DQM_KIND_TH1S);
01193   const_cast<MonitorElement *>(this)->update();
01194   return dynamic_cast<TH1S *>(accessRootObject(__PRETTY_FUNCTION__, 1));
01195 }

TH2F * MonitorElement::getTH2F ( void   )  const

Definition at line 1198 of file MonitorElement.cc.

References accessRootObject(), DQM_KIND_TH2F, kind_, and update().

Referenced by HcalSummaryClient::analyze_subtask(), PhysicsObjectsMonitor::beginJob(), L1TGMTClient::beginJob(), DQMStore::collate2D(), GlobalMuonMatchAnalyzer::computeEfficiencyEta(), GlobalMuonMatchAnalyzer::computeEfficiencyPt(), L1TdeRCT::DivideME2D(), MultiTrackValidatorBase::doProfileX(), PhotonValidator::doProfileX(), PhotonAnalyzer::doProfileX(), DTChamberEfficiencyTest::endLuminosityBlock(), DTSegmentAnalysisTest::endLuminosityBlock(), DTOccupancyTest::endLuminosityBlock(), DTChamberEfficiencyClient::endLuminosityBlock(), DTDeadChannelTest::endLuminosityBlock(), DTNoiseAnalysisTest::endLuminosityBlock(), DTNoiseTest::endLuminosityBlock(), DTResolutionTest::endLuminosityBlock(), DTDataIntegrityTest::endLuminosityBlock(), FourVectorHLTClient::endRun(), MEtoEDMConverter::endRun(), SiPixelActionExecutor::fillOccupancy(), SiPixelInformationExtractor::findNoisyPixels(), FitSlicesYTool::FitSlicesYTool(), HLTEventInfoClient::get2DHisto(), L1TDTTPGClient::get2DHisto(), L1THcalClient::get2DHisto(), L1TdeECALClient::get2DHisto(), FourVectorHLTClient::get2DHisto(), L1TEMUEventInfoClient::get2DHisto(), L1TEventInfoClient::get2DHisto(), getHisto2(), SiStripHistoPlotter::getProjection(), MuIsoValidation::GetTH2FromMonitorElement(), PostProcessor::limitedFit(), DTLocalTriggerEfficiencyTest::makeEfficiencyME2D(), L1TDTTPGClient::makeRatioHisto(), HcalSummaryClient::resetSummaryPlot(), ContentsWithinExpected::runTest(), DeadChannel::runTest(), NoisyChannel::runTest(), Comp2RefEqualH::runTest(), HcalRecHitMonitor::setup(), HcalBeamMonitor::setup(), HcalDeadCellMonitor::setup(), HcalHotCellMonitor::setup(), and HcalSummaryClient::setup().

01199 {
01200   assert(kind_ == DQM_KIND_TH2F);
01201   const_cast<MonitorElement *>(this)->update();
01202   return dynamic_cast<TH2F *>(accessRootObject(__PRETTY_FUNCTION__, 2));
01203 }

TH2S * MonitorElement::getTH2S ( void   )  const

Definition at line 1206 of file MonitorElement.cc.

References accessRootObject(), DQM_KIND_TH2S, kind_, and update().

Referenced by DQMStore::collate2S(), MEtoEDMConverter::endRun(), ContentsWithinExpected::runTest(), DeadChannel::runTest(), NoisyChannel::runTest(), and Comp2RefEqualH::runTest().

01207 {
01208   assert(kind_ == DQM_KIND_TH2S);
01209   const_cast<MonitorElement *>(this)->update();
01210   return dynamic_cast<TH2S *>(accessRootObject(__PRETTY_FUNCTION__, 2));
01211 }

TH3F * MonitorElement::getTH3F ( void   )  const

Definition at line 1214 of file MonitorElement.cc.

References accessRootObject(), DQM_KIND_TH3F, kind_, and update().

Referenced by DQMStore::collate3D(), MEtoEDMConverter::endRun(), getHistoTH3F(), and Comp2RefEqualH::runTest().

01215 {
01216   assert(kind_ == DQM_KIND_TH3F);
01217   const_cast<MonitorElement *>(this)->update();
01218   return dynamic_cast<TH3F *>(accessRootObject(__PRETTY_FUNCTION__, 3));
01219 }

std::string MonitorElement::getTitle ( void   )  const

get MonitorElement title

Definition at line 558 of file MonitorElement.cc.

References accessRootObject().

Referenced by SiStripHistoPlotter::getProjection(), and SiPixelSCurveCalibrationAnalysis::makeThresholdSummary().

00559 { return accessRootObject(__PRETTY_FUNCTION__, 1)
00560     ->GetTitle(); }

TProfile * MonitorElement::getTProfile ( void   )  const

Definition at line 1222 of file MonitorElement.cc.

References accessRootObject(), DQM_KIND_TPROFILE, kind_, and update().

Referenced by DQMStore::collateProfile(), MEtoEDMConverter::endRun(), L1TEMUEventInfoClient::get1DProfile(), L1TDTTPGClient::get1DProfile(), L1TEventInfoClient::get1DProfile(), FourVectorHLTClient::get1DProfile(), HLTEventInfoClient::get1DProfile(), L1TdeECALClient::get1DProfile(), getHistoTProfile(), SiStripHistoPlotter::getProjection(), MuIsoValidation::GetTProfileFromMonitorElement(), Comp2RefKolmogorov::runTest(), ContentsWithinExpected::runTest(), and Comp2RefChi2::runTest().

01223 {
01224   assert(kind_ == DQM_KIND_TPROFILE);
01225   const_cast<MonitorElement *>(this)->update();
01226   return dynamic_cast<TProfile *>(accessRootObject(__PRETTY_FUNCTION__, 1));
01227 }

TProfile2D * MonitorElement::getTProfile2D ( void   )  const

Definition at line 1230 of file MonitorElement.cc.

References accessRootObject(), DQM_KIND_TPROFILE2D, kind_, and update().

Referenced by DQMStore::collateProfile2D(), MEtoEDMConverter::endRun(), L1TdeECALClient::get2DProfile(), L1TEMUEventInfoClient::get2DProfile(), L1TDTTPGClient::get2DProfile(), FourVectorHLTClient::get2DProfile(), L1TEventInfoClient::get2DProfile(), HLTEventInfoClient::get2DProfile(), getHistoTProfile2D(), and ContentsWithinExpected::runTest().

01231 {
01232   assert(kind_ == DQM_KIND_TPROFILE2D);
01233   const_cast<MonitorElement *>(this)->update();
01234   return dynamic_cast<TProfile2D *>(accessRootObject(__PRETTY_FUNCTION__, 2));
01235 }

float MonitorElement::getYmax ( void   )  const [private]

get max Y value (for profiles)

Definition at line 538 of file MonitorElement.cc.

References accessRootObject(), DQM_KIND_TPROFILE, incompatible(), and kind_.

00539 {
00540   if (kind_ == DQM_KIND_TPROFILE)
00541     return static_cast<TProfile *>(accessRootObject(__PRETTY_FUNCTION__, 1))
00542       ->GetYmax();
00543   else
00544   {
00545     incompatible(__PRETTY_FUNCTION__);
00546     return 0;
00547   }
00548 }

float MonitorElement::getYmin ( void   )  const [private]

get min Y value (for profiles)

Definition at line 524 of file MonitorElement.cc.

References accessRootObject(), DQM_KIND_TPROFILE, incompatible(), and kind_.

00525 {
00526   if (kind_ == DQM_KIND_TPROFILE)
00527     return static_cast<TProfile *>(accessRootObject(__PRETTY_FUNCTION__, 1))
00528       ->GetYmin();
00529   else
00530   {
00531     incompatible(__PRETTY_FUNCTION__);
00532     return 0;
00533   }
00534 }

bool MonitorElement::hasError ( void   )  const [inline]

true if at least of one of the quality tests returned an error

Definition at line 128 of file MonitorElement.h.

References nqerror_.

Referenced by dqm::daq::FEDMonitorClient::defaultWebPage(), HcalBaseClient::errorOutput(), SiStripUtility::getMEStatus(), SiPixelUtility::getStatus(), and QTestStatusChecker::processAlarms().

00129     { return nqerror_ > 0; }

bool MonitorElement::hasOtherReport ( void   )  const [inline]

true if at least of one of the tests returned some other (non-ok) status

Definition at line 136 of file MonitorElement.h.

References nqother_.

Referenced by dqm::daq::FEDMonitorClient::defaultWebPage(), HcalBaseClient::errorOutput(), SiStripUtility::getMEStatus(), SiPixelUtility::getStatus(), and QTestStatusChecker::processAlarms().

00137     { return nqother_ > 0; }

bool MonitorElement::hasWarning ( void   )  const [inline]

true if at least of one of the quality tests returned a warning

Definition at line 132 of file MonitorElement.h.

References nqwarning_.

Referenced by SiPixelActionExecutor::checkQTestResults(), dqm::daq::FEDMonitorClient::defaultWebPage(), HcalBaseClient::errorOutput(), SiStripUtility::getMEStatus(), SiPixelUtility::getStatus(), and QTestStatusChecker::processAlarms().

00133     { return nqwarning_ > 0; }

void MonitorElement::incompatible ( const char *  func  )  const [private]

Definition at line 407 of file MonitorElement.cc.

References data_, Exception, and DQMNet::CoreObject::name.

Referenced by copyFrom(), disableSoftReset(), Fill(), getBinEntries(), getYmax(), getYmin(), setBinEntries(), softReset(), and valueString().

00408 {
00409   throw cms::Exception("MonitorElement")
00410     << "Method '" << func << "' cannot be invoked on monitor element '"
00411     << data_.name << "'";
00412 }

MonitorElement * MonitorElement::initialise ( Kind  kind,
const std::string &  path,
const std::string &  value 
) [private]

Definition at line 133 of file MonitorElement.cc.

References curvalue_, data_, DQM_KIND_STRING, Exception, initialise(), DQMNet::CoreObject::object, MonitorElement::Value::str, and tagString().

00134 {
00135   initialise(kind, path);
00136   if (kind ==  DQM_KIND_STRING)
00137   {
00138     curvalue_.str = value;
00139     static_cast<TObjString *>(data_.object)
00140       ->SetString(tagString().c_str());
00141   }
00142   else
00143     throw cms::Exception("MonitorElement")
00144       << "cannot initialise monitor element '" << path
00145       << "' as a string with type " << kind;
00146 
00147   return this;
00148 }

MonitorElement * MonitorElement::initialise ( Kind  kind,
const std::string &  path,
TH1 *  rootobj 
) [private]

Definition at line 83 of file MonitorElement.cc.

References curvalue_, data_, DQM_KIND_TH1F, DQM_KIND_TH1S, DQM_KIND_TH2F, DQM_KIND_TH2S, DQM_KIND_TH3F, DQM_KIND_TPROFILE, DQM_KIND_TPROFILE2D, Exception, initialise(), DQMNet::CoreObject::object, and MonitorElement::Value::tobj.

00084 {
00085   initialise(kind, path);
00086   switch (kind)
00087   {
00088   case DQM_KIND_TH1F:
00089     assert(dynamic_cast<TH1F *>(rootobj));
00090     curvalue_.tobj = data_.object = rootobj;
00091     break;
00092 
00093   case DQM_KIND_TH1S:
00094     assert(dynamic_cast<TH1S *>(rootobj));
00095     curvalue_.tobj = data_.object = rootobj;
00096     break;
00097 
00098   case DQM_KIND_TH2F:
00099     assert(dynamic_cast<TH2F *>(rootobj));
00100     curvalue_.tobj = data_.object = rootobj;
00101     break;
00102 
00103   case DQM_KIND_TH2S:
00104     assert(dynamic_cast<TH2S *>(rootobj));
00105     curvalue_.tobj = data_.object = rootobj;
00106     break;
00107 
00108   case DQM_KIND_TH3F:
00109     assert(dynamic_cast<TH3F *>(rootobj));
00110     curvalue_.tobj = data_.object = rootobj;
00111     break;
00112 
00113   case DQM_KIND_TPROFILE:
00114     assert(dynamic_cast<TProfile *>(rootobj));
00115     curvalue_.tobj = data_.object = rootobj;
00116     break;
00117 
00118   case DQM_KIND_TPROFILE2D:
00119     assert(dynamic_cast<TProfile2D *>(rootobj));
00120     curvalue_.tobj = data_.object = rootobj;
00121     break;
00122 
00123   default:
00124     throw cms::Exception("MonitorElement")
00125       << "cannot initialise monitor element '" << path
00126       << "' as a root object with type " << kind;
00127   }
00128 
00129   return this;
00130 }

MonitorElement * MonitorElement::initialise ( Kind  kind,
const std::string &  path 
) [private]

Definition at line 37 of file MonitorElement.cc.

References data_, DQMNet::DQM_FLAG_SCALAR, DQM_KIND_INT, DQM_KIND_REAL, DQM_KIND_STRING, DQM_KIND_TH1F, DQM_KIND_TH1S, DQM_KIND_TH2F, DQM_KIND_TH2S, DQM_KIND_TH3F, DQM_KIND_TPROFILE, DQM_KIND_TPROFILE2D, Exception, DQMNet::CoreObject::flags, kind_, DQMNet::CoreObject::name, name_, DQMNet::CoreObject::object, path_, and tagString().

Referenced by DQMStore::book(), DQMStore::bookFloat(), DQMStore::bookInt(), DQMStore::bookString(), and initialise().

00038 {
00039   const char *slash = strrchr(path.c_str(), '/');
00040   data_.name = path;
00041   kind_ = kind;
00042   if (slash)
00043   {
00044     name_ = slash+1;
00045     path_ = std::string(path.c_str(), slash);
00046   }
00047   else
00048   {
00049     name_ = path;
00050     path_.clear();
00051   }
00052 
00053   switch (kind)
00054   {
00055   case DQM_KIND_INT:
00056   case DQM_KIND_REAL:
00057   case DQM_KIND_STRING:
00058     data_.object = new TObjString;
00059     static_cast<TObjString *>(data_.object)
00060       ->SetString(tagString().c_str());
00061     data_.flags |= DQMNet::DQM_FLAG_SCALAR;
00062     break;
00063 
00064   case DQM_KIND_TH1F:
00065   case DQM_KIND_TH1S:
00066   case DQM_KIND_TH2F:
00067   case DQM_KIND_TH2S:
00068   case DQM_KIND_TH3F:
00069   case DQM_KIND_TPROFILE:
00070   case DQM_KIND_TPROFILE2D:
00071     break;
00072 
00073   default:
00074     throw cms::Exception("MonitorElement")
00075       << "cannot initialise monitor element '" << path
00076       << "' to invalid type " << kind;
00077   }
00078 
00079   return this;
00080 }

bool MonitorElement::isAccumulateEnabled ( void   )  const [inline, private]

whether ME contents should be accumulated over multiple monitoring periods; default: false

Definition at line 214 of file MonitorElement.h.

References data_, DQM_FLAG_ACCUMULATE, and DQMNet::CoreObject::flags.

Referenced by copyFrom(), and copyFunctions().

00215     { return data_.flags & DQM_FLAG_ACCUMULATE; }

bool MonitorElement::isSoftResetEnabled ( void   )  const [inline, private]

whether soft-reset is enabled; default is false

Definition at line 210 of file MonitorElement.h.

References refvalue_.

Referenced by copyFrom(), and copyFunctions().

00211     { return refvalue_ != 0; }

Kind MonitorElement::kind ( void   )  const [inline]

Get the type of the monitor element.

Definition at line 85 of file MonitorElement.h.

References kind_.

Referenced by MEtoEDMConverter::beginRun(), HistoricOfflineClient::CalculatePercentOver(), SiStripMonitorCluster::createSubDetMEs(), SiStripMonitorDigi::createSubDetMEs(), MEtoEDMConverter::endJob(), FourVectorHLTClient::endRun(), MEtoEDMConverter::endRun(), SiStripHistoPlotter::getProjection(), SiPixelHistoPlotter::makePlot(), ContentsYRange::runTest(), ContentsXRange::runTest(), Comp2RefKolmogorov::runTest(), ContentsWithinExpected::runTest(), MeanWithinExpected::runTest(), DeadChannel::runTest(), NoisyChannel::runTest(), Comp2RefEqualH::runTest(), and Comp2RefChi2::runTest().

00086     { return kind_; }

std::string MonitorElement::qualityTagString ( const DQMNet::QValue qv  )  const

Definition at line 305 of file MonitorElement.cc.

References DQMNet::QValue::code, DQMNet::QValue::message, name_, DQMNet::QValue::qtname, and indexGen::title.

Referenced by DQMService::flush().

00306 {
00307   std::string title;
00308   title.reserve(name_.size() + qv.qtname.size() + 2);
00309   title += name_;
00310   title += '.';
00311   title += qv.qtname;
00312 
00313   std::ostringstream retval;
00314   retval << "<" << title << ">"
00315          << "qr=st." << qv.code << "." << qv.message
00316          << "</" << title << ">";
00317   return retval.str();
00318 }

void MonitorElement::Reset ( void   ) 

reset ME (ie. contents, errors, etc)

Definition at line 266 of file MonitorElement.cc.

References accessRootObject(), curvalue_, DQM_KIND_INT, DQM_KIND_REAL, DQM_KIND_STRING, kind_, MonitorElement::Value::num, MonitorElement::Value::real, MonitorElement::Value::str, and update().

Referenced by EBTriggerTowerClient::analyze(), EETimingClient::analyze(), EEPedestalClient::analyze(), EBBeamHodoTask::analyze(), EESummaryClient::analyze(), EBBeamCaloTask::analyze(), EELaserClient::analyze(), EBTimingClient::analyze(), EEBeamHodoTask::analyze(), EEIntegrityClient::analyze(), EEBeamCaloTask::analyze(), EETestPulseClient::analyze(), RPCMonitorRaw::analyze(), EEPedestalOnlineClient::analyze(), EBSummaryClient::analyze(), EETriggerTowerClient::analyze(), EELedClient::analyze(), EBTestPulseClient::analyze(), EBLaserClient::analyze(), EBPedestalOnlineClient::analyze(), EBPedestalClient::analyze(), EBIntegrityClient::analyze(), RPCMonitorDigi::beginRun(), MEtoEDMConverter::beginRun(), SiStripMonitorRawData::beginRun(), DTOfflineSummaryClients::endLuminosityBlock(), DTOccupancyTest::endLuminosityBlock(), DTNoiseAnalysisTest::endLuminosityBlock(), DTSummaryClients::endLuminosityBlock(), EELedTask::endRun(), SiStripBaseCondObjDQM::getModMEs(), SiStripMonitorQuality::getQualityME(), EBStatusFlagsTask::reset(), EcalBarrelMonitorModule::reset(), EEIntegrityTask::reset(), EBHltTask::reset(), EBSelectiveReadoutTask::reset(), EBRawDataTask::reset(), EEStatusFlagsTask::reset(), EcalEndcapMonitorModule::reset(), EBCosmicTask::reset(), EELaserTask::reset(), EBOccupancyTask::reset(), RPCFEDIntegrity::reset(), EECosmicTask::reset(), EEBeamCaloTask::reset(), EETimingTask::reset(), EERawDataTask::reset(), EETestPulseTask::reset(), EEBeamHodoTask::reset(), EBLaserTask::reset(), EESelectiveReadoutTask::reset(), EEOccupancyTask::reset(), EEClusterTask::reset(), EBTriggerTowerTask::reset(), EEPedestalTask::reset(), EBTimingTask::reset(), EBClusterTask::reset(), EBBeamCaloTask::reset(), EBBeamHodoTask::reset(), EETriggerTowerTask::reset(), EEPedestalOnlineTask::reset(), EBPedestalOnlineTask::reset(), EBTestPulseTask::reset(), EBIntegrityTask::reset(), EBPedestalTask::reset(), EEHltTask::reset(), SiStripActionExecutor::resetGlobalStatus(), SiStripMonitorPedestals::resetMEs(), SiStripMonitorDigi::ResetModuleMEs(), SiStripMonitorCluster::ResetModuleMEs(), EEPedestalClient::setup(), EBTriggerTowerClient::setup(), EBTestPulseClient::setup(), EBIntegrityClient::setup(), EELaserClient::setup(), EETriggerTowerClient::setup(), EBTimingClient::setup(), EEPedestalOnlineClient::setup(), EETimingClient::setup(), EBPedestalOnlineClient::setup(), EETestPulseClient::setup(), EBPedestalClient::setup(), EBLaserClient::setup(), EBBeamCaloClient::setup(), EELedClient::setup(), EEIntegrityClient::setup(), and EEBeamCaloClient::setup().

00267 {
00268   update();
00269   if (kind_ == DQM_KIND_INT)
00270     curvalue_.num = 0;
00271   else if (kind_ == DQM_KIND_REAL)
00272     curvalue_.real = 0;
00273   else if (kind_ == DQM_KIND_STRING)
00274     curvalue_.str.clear();
00275   else
00276     return accessRootObject(__PRETTY_FUNCTION__, 1)
00277       ->Reset();
00278 }

bool MonitorElement::resetMe ( void   )  const [inline, private]

true if ME should be reset at end of monitoring cycle

Definition at line 223 of file MonitorElement.h.

References data_, DQM_FLAG_RESET, and DQMNet::CoreObject::flags.

00224     { return data_.flags & DQM_FLAG_RESET; }

void MonitorElement::resetUpdate ( void   )  [inline, private]

reset "was updated" flag

Definition at line 219 of file MonitorElement.h.

References data_, and DQMNet::CoreObject::flags.

00220     { data_.flags &= ~DQMNet::DQM_FLAG_NEW; }

void MonitorElement::runQTests ( void   ) 

run all quality tests

Definition at line 376 of file MonitorElement.cc.

References DQMNet::QValue::code, data_, e, QCriterion::getName(), i, DQMNet::QValue::message, QReport::qcriterion_, DQMNet::CoreObject::qreports, qreports_, DQMNet::QValue::qtname, QReport::qvalue_, QCriterion::runTest(), update(), updateQReportStats(), QCriterion::wasModified(), and wasUpdated().

Referenced by SiPixelActionExecutor::checkQTestResults().

00377 {
00378   assert(qreports_.size() == data_.qreports.size());
00379 
00380   // Rerun quality tests where the ME or the quality algorithm was modified.
00381   bool dirty = wasUpdated();
00382   for (size_t i = 0, e = data_.qreports.size(); i < e; ++i)
00383   {
00384     DQMNet::QValue &qv = data_.qreports[i];
00385     QReport &qr = qreports_[i];
00386     QCriterion *qc = qr.qcriterion_;
00387     qr.qvalue_ = &qv;
00388 
00389     if (qc && (dirty || qc->wasModified()))
00390     {
00391       assert(qc->getName() == qv.qtname);
00392       std::string oldMessage = qv.message;
00393       int oldStatus = qv.code;
00394 
00395       qc->runTest(this, qr, qv);
00396 
00397       if (oldStatus != qv.code || oldMessage != qv.message)
00398         update();
00399     }
00400   }
00401 
00402   // Update QReport statistics.
00403   updateQReportStats();
00404 }

void MonitorElement::setAccumulate ( bool  flag  )  [inline, private]

if true, will accumulate ME contents (over many periods) until method is called with flag = false again

Definition at line 228 of file MonitorElement.h.

References data_, DQM_FLAG_ACCUMULATE, and DQMNet::CoreObject::flags.

Referenced by DQMStore::setAccumulate().

void MonitorElement::setAxisRange ( float  xmin,
float  xmax,
int  axis = 1 
)

set x-, y- or z-axis range (axis=1, 2, 3 respectively)

Definition at line 651 of file MonitorElement.cc.

References getAxis(), and update().

Referenced by HLTTauDQMSource::beginJob(), SiStripBaseCondObjDQM::bookSummaryMEs(), SiStripBaseCondObjDQM::bookSummaryProfileMEs(), and RPCEfficiencySecond::endRun().

00652 {
00653   update();
00654   getAxis(__PRETTY_FUNCTION__, axis)
00655     ->SetRangeUser(xmin, xmax);
00656 }

void MonitorElement::setAxisTimeDisplay ( int  value,
int  axis = 1 
)

set x-, y-, or z-axis to display time values

Definition at line 669 of file MonitorElement.cc.

References getAxis(), and update().

00670 {
00671   update();
00672   getAxis(__PRETTY_FUNCTION__, axis)
00673     ->SetTimeDisplay(value);
00674 }

void MonitorElement::setAxisTimeFormat ( const char *  format = "",
int  axis = 1 
)

set the format of the time values that are displayed on an axis

Definition at line 678 of file MonitorElement.cc.

References getAxis(), and update().

00679 {
00680   update();
00681   getAxis(__PRETTY_FUNCTION__, axis)
00682     ->SetTimeFormat(format);
00683 }

void MonitorElement::setAxisTimeOffset ( double  toffset,
const char *  option = "local",
int  axis = 1 
) [private]

set the time offset, if option = "gmt" then the offset is treated as a GMT time

Definition at line 687 of file MonitorElement.cc.

References getAxis(), and update().

00688 {
00689   update();
00690   getAxis(__PRETTY_FUNCTION__, axis)
00691     ->SetTimeOffset(toffset, option);
00692 }

void MonitorElement::setAxisTitle ( const std::string &  title,
int  axis = 1 
)

set x-, y- or z-axis title (axis=1, 2, 3 respectively)

Definition at line 660 of file MonitorElement.cc.

References getAxis(), and update().

Referenced by BxTiming::beginJob(), HLTMuonDQMSource::beginJob(), EBSummaryClient::beginJob(), TrackAnalyzer::beginJob(), HLTTauDQMSource::beginJob(), DQMFEDIntegrityClient::beginJob(), MuonSeedsAnalyzer::beginJob(), L1TEventInfoClient::beginJob(), HLTMuonL1DQMSource::beginJob(), HLTTauDQMOfflineSource::beginJob(), ElectronAnalyzer::beginJob(), DQMSourcePhiSym::beginJob(), SiPixelTrackResidualSource::beginJob(), SiStripFEDCheckPlugin::beginJob(), L1TCSCTF::beginJob(), HLTMon::beginJob(), EESummaryClient::beginJob(), TrackEfficiencyMonitor::beginJob(), MuonTestSummary::beginJob(), MuonEnergyDepositAnalyzer::beginJob(), PhotonAnalyzer::beginJob(), L1TGT::beginJob(), HLTMuonRecoDQMSource::beginJob(), L1TEMUEventInfoClient::beginJob(), L1TGMT::beginJob(), L1TDTTPG::beginJob(), L1TdeGCT::beginJob(), L1TCompare::beginJob(), SiStripLAProfileBooker::beginJob(), SegmentTrackAnalyzer::beginJob(), MuonRecoAnalyzer::beginJob(), HLTMuonIsoDQMSource::beginJob(), DTOccupancyTest::beginJob(), L1TDEMON::beginJob(), DTDataIntegrityTest::beginJob(), L1TDTTF::beginJob(), DQMSourcePi0::beginJob(), L1TGMTClient::beginJob(), DQMHLTSourcePi0::beginJob(), TrackingMonitor::beginJob(), TrackEfficiencyClient::beginJob(), HLTEventInfoClient::beginJob(), DTOfflineSummaryClients::beginRun(), SiStripMonitorRawData::beginRun(), DTSummaryClients::beginRun(), HLTBJetDQMSource::book(), CSCMonitorModule::book(), SiPixelRawDataErrorModule::book(), SiPixelClusterModule::book(), SiPixelTrackResidualModule::book(), SiPixelRecHitModule::book(), SiPixelDigiModule::book(), SiStripBaseCondObjDQM::bookCumulMEs(), SiPixelRawDataErrorModule::bookFED(), SiPixelInformationExtractor::bookGlobalQualityFlag(), SiStripActionExecutor::bookGlobalStatus(), HLTMuonRate::BookHistograms(), DTChamberEfficiencyClient::bookHistos(), DTNoiseAnalysisTest::bookHistos(), TrackAnalyzer::bookHistosForState(), SiPixelHLTSource::bookMEs(), SiPixelActionExecutor::bookOccupancyPlots(), SiStripBaseCondObjDQM::bookProfileMEs(), SiStripBaseCondObjDQM::bookSummaryCumulMEs(), SiStripBaseCondObjDQM::bookSummaryMEs(), SiStripBaseCondObjDQM::bookSummaryProfileMEs(), SiStripFEDMonitorPlugin::bookTopLevelHistograms(), MonitorTrackResiduals::createMEs(), SiStripMonitorCluster::createModuleMEs(), SiStripMonitorDigi::createModuleMEs(), CnBAnalyzer::createRootFedHistograms(), SiStripMonitorCluster::createSubDetMEs(), SiStripMonitorDigi::createSubDetMEs(), TrackAnalyzer::doTrackerSpecificInitialization(), DQMSourceExample::DQMSourceExample(), BTagValidator::endJob(), RPCEfficiencySecond::endRun(), SiStripQualityDQM::fillGrandSummaryMEs(), SiStripMonitorTrackEfficiency::fillTrend(), SiStripMonitorTrack::fillTrend(), SiStripMonitorCluster::fillTrend(), SiStripMonitorDigi::fillTrend(), SiStripCablingDQM::getActiveDetIds(), SiStripMonitorQuality::getQualityME(), GlobalDigisAnalyzer::GlobalDigisAnalyzer(), GlobalDigisHistogrammer::GlobalDigisHistogrammer(), GlobalHitsAnalyzer::GlobalHitsAnalyzer(), GlobalHitsHistogrammer::GlobalHitsHistogrammer(), GlobalRecHitsAnalyzer::GlobalRecHitsAnalyzer(), GlobalRecHitsHistogrammer::GlobalRecHitsHistogrammer(), MuIsoValidation::InitHistos(), CSCMonitorObject::setAxisTitle(), L1TDTTPGClient::setMapPhLabel(), L1TDTTPG::setMapPhLabel(), L1TDTTF::setMapPhLabel(), L1TDTTPGClient::setMapThLabel(), L1TDTTPG::setMapThLabel(), L1TDTTF::setMapThLabel(), FlavourHistograms< T >::settitle(), EEPedestalClient::setup(), EBTimingTask::setup(), EBTestPulseTask::setup(), EBIntegrityTask::setup(), EBClusterTask::setup(), HcalPedestalMonitor::setup(), EEPedestalOnlineTask::setup(), EBStatusFlagsTask::setup(), EcalBarrelMonitorModule::setup(), HcalRecHitMonitor::setup(), HcalDigiMonitor::setup(), EBTriggerTowerClient::setup(), EBPedestalTask::setup(), EBSelectiveReadoutTask::setup(), EBTestPulseClient::setup(), EBIntegrityClient::setup(), CSCHLTMonitorModule::setup(), EELaserTask::setup(), EELaserClient::setup(), EBOccupancyTask::setup(), HcalBeamMonitor::setup(), EEStatusFlagsTask::setup(), EEBeamCaloTask::setup(), EETriggerTowerClient::setup(), EBTimingClient::setup(), EEPedestalOnlineClient::setup(), HcalDataFormatMonitor::setup(), EEIntegrityTask::setup(), EEBeamHodoTask::setup(), EBCosmicTask::setup(), EESelectiveReadoutTask::setup(), EETimingClient::setup(), EBTriggerTowerTask::setup(), EBPedestalOnlineClient::setup(), HcalDeadCellMonitor::setup(), EECosmicTask::setup(), EcalEndcapMonitorModule::setup(), EETestPulseClient::setup(), EBLaserTask::setup(), EBBeamCaloTask::setup(), EBPedestalClient::setup(), EBSummaryClient::setup(), EBBeamHodoTask::setup(), EBLaserClient::setup(), EBBeamCaloClient::setup(), EETriggerTowerTask::setup(), EETimingTask::setup(), EEOccupancyTask::setup(), EELedClient::setup(), EBPedestalOnlineTask::setup(), HcalTrigPrimMonitor::setup(), HcalHotCellMonitor::setup(), HcalExpertMonitor::setup(), EETestPulseTask::setup(), EEPedestalTask::setup(), EELedTask::setup(), EEClusterTask::setup(), EESummaryClient::setup(), EEIntegrityClient::setup(), EEBeamCaloClient::setup(), HcalBaseMonitor::setupDepthHists1D(), HcalBaseMonitor::setupDepthHists2D(), and HLXMonitor::SetupHists().

00661 {
00662   update();
00663   getAxis(__PRETTY_FUNCTION__, axis)
00664     ->SetTitle(title.c_str());
00665 }

void MonitorElement::setBinContent ( int  binx,
int  biny,
int  binz,
float  content 
)

set content of bin (3-D)

Definition at line 583 of file MonitorElement.cc.

References accessRootObject(), and update().

00584 {
00585   update();
00586   accessRootObject(__PRETTY_FUNCTION__, 3)
00587     ->SetBinContent(binx, biny, binz, content); }

void MonitorElement::setBinContent ( int  binx,
int  biny,
float  content 
)

set content of bin (2-D)

Definition at line 575 of file MonitorElement.cc.

References accessRootObject(), and update().

00576 {
00577   update();
00578   accessRootObject(__PRETTY_FUNCTION__, 2)
00579     ->SetBinContent(binx, biny, content); }

void MonitorElement::setBinContent ( int  binx,
float  content 
)

set content of bin (1-D)

Definition at line 566 of file MonitorElement.cc.

References accessRootObject(), and update().

Referenced by EBBeamCaloClient::analyze(), BxTiming::analyze(), EBTriggerTowerClient::analyze(), EBStatusFlagsTask::analyze(), HLTMonElectronConsumer::analyze(), EEBeamCaloClient::analyze(), EEPedestalClient::analyze(), EETimingClient::analyze(), EBBeamCaloTask::analyze(), EESummaryClient::analyze(), DQMClientExample::analyze(), EBTimingClient::analyze(), EELaserClient::analyze(), EEIntegrityClient::analyze(), EETestPulseClient::analyze(), EEBeamCaloTask::analyze(), L1THCALTPGXAna::analyze(), EEPedestalOnlineClient::analyze(), L1TdeGCT::analyze(), EBSummaryClient::analyze(), HcalSummaryClient::analyze(), L1TDEMON::analyze(), EETriggerTowerClient::analyze(), L1TdeECALClient::analyze(), EBLaserClient::analyze(), EBTestPulseClient::analyze(), EELedClient::analyze(), L1TDTTF::analyze(), EBIntegrityClient::analyze(), EBPedestalClient::analyze(), EBPedestalOnlineClient::analyze(), EEStatusFlagsTask::analyze(), EBSummaryClient::beginJob(), EESummaryClient::beginJob(), RPCEventSummary::beginRun(), SiPixelSCurveCalibrationAnalysis::buildACurveHistogram(), EcalMixingModuleValidation::bunchSumTest(), L1THcalClient::calcEff(), HLTTauPostProcessor::calculatePathEfficiencies(), GlobalMuonMatchAnalyzer::computeEfficiencyEta(), GlobalMuonMatchAnalyzer::computeEfficiencyPt(), HLTTauPostProcessor::createIntegratedHisto(), PhotonAnalyzer::dividePlots(), MuonTestSummary::doMolteplicityTests(), MuonTestSummary::doMuonIDTests(), MultiTrackValidatorBase::doProfileX(), PhotonValidator::doProfileX(), PhotonAnalyzer::doProfileX(), HLTTauDQMSource::doSummary(), BTagValidator::endJob(), ElectronAnalyzer::endJob(), L1TGCTClient::endLuminosityBlock(), MuonTestSummary::endLuminosityBlock(), MuonRecoTest::endLuminosityBlock(), L1ScalersClient::endLuminosityBlock(), DTOccupancyTest::endLuminosityBlock(), L1TEventInfoClient::endLuminosityBlock(), HLTScalersClient::endLuminosityBlock(), HLTEventInfoClient::endLuminosityBlock(), RPCDeadChannelTest::endLuminosityBlock(), DTChamberEfficiencyClient::endLuminosityBlock(), L1TdeECALClient::endLuminosityBlock(), L1TEMUEventInfoClient::endLuminosityBlock(), DTDataIntegrityTest::endLuminosityBlock(), L1TRPCTFClient::endLuminosityBlock(), HLXMonitor::EndRun(), EmDQMPostProcessor::endRun(), RPCEfficiencySecond::endRun(), HcalDigiMonitor::fill_Nevents(), HcalTrigPrimMonitor::fill_Nevents(), SiPixelInformationExtractor::fillGlobalQualityPlot(), HLXMonitor::FillHistograms(), DQMFEDIntegrityClient::fillHistograms(), HcalRecHitMonitor::fillNevents(), HcalHotCellMonitor::fillNevents_pedestal(), HcalHotCellMonitor::fillNevents_problemCells(), HcalDeadCellMonitor::fillNevents_problemCells(), L1TRPCTF::fillNorm(), HcalPedestalMonitor::fillPedestalHistos(), MultiTrackValidatorBase::fillPlotFromVector(), PhotonValidator::fillPlotFromVectors(), MultiTrackValidatorBase::fillPlotFromVectors(), SiStripMonitorTrack::fillTrend(), SiStripMonitorTrackEfficiency::fillTrend(), SiStripMonitorCluster::fillTrend(), SiStripMonitorDigi::fillTrend(), HcalBaseMonitor::FillUnphysicalHEHFBins(), FitSlicesYTool::getFittedMean(), FitSlicesYTool::getFittedMeanWithError(), FitSlicesYTool::getFittedSigma(), FitSlicesYTool::getFittedSigmaWithError(), PostProcessor::limitedFit(), CSCMonitorModule::monitorDDU(), DTTimeEvolutionHisto::normalizeTo(), CSCMonitorObject::SetBinContent(), DTTimeEvolutionHisto::setTimeSlotValue(), EEPedestalClient::setup(), EBStatusFlagsTask::setup(), EBTestPulseClient::setup(), EBIntegrityClient::setup(), EELaserClient::setup(), EBTimingClient::setup(), EEStatusFlagsTask::setup(), EEPedestalOnlineClient::setup(), EBPedestalOnlineClient::setup(), EETimingClient::setup(), EBPedestalClient::setup(), EETestPulseClient::setup(), EBBeamCaloClient::setup(), EBLaserClient::setup(), EELedClient::setup(), EEBeamCaloClient::setup(), EEIntegrityClient::setup(), HcalSummaryClient::setup(), HLXMonitor::SetupEventInfo(), HcalDataFormatMonitor::unpack(), HcalEEUSMonitor::unpack(), and HcalRecHitsValidation::~HcalRecHitsValidation().

00567 {
00568   update();
00569   accessRootObject(__PRETTY_FUNCTION__, 1)
00570     ->SetBinContent(binx, content);
00571 }

void MonitorElement::setBinEntries ( int  bin,
float  nentries 
)

set # of bin entries (to be used for profiles)

Definition at line 618 of file MonitorElement.cc.

References accessRootObject(), DQM_KIND_TPROFILE, DQM_KIND_TPROFILE2D, incompatible(), kind_, and update().

Referenced by SiStripMonitorTrackEfficiency::fillTrend(), SiStripMonitorTrack::fillTrend(), SiStripMonitorCluster::fillTrend(), and SiStripMonitorDigi::fillTrend().

00619 {
00620   update();
00621   if (kind_ == DQM_KIND_TPROFILE)
00622     static_cast<TProfile *>(accessRootObject(__PRETTY_FUNCTION__, 1))
00623       ->SetBinEntries(bin, nentries);
00624   else if (kind_ == DQM_KIND_TPROFILE2D)
00625     static_cast<TProfile2D *>(accessRootObject(__PRETTY_FUNCTION__, 1))
00626       ->SetBinEntries(bin, nentries);
00627   else
00628     incompatible(__PRETTY_FUNCTION__);
00629 }

void MonitorElement::setBinError ( int  binx,
int  biny,
int  binz,
float  error 
)

set uncertainty on content of bin (3-D)

Definition at line 609 of file MonitorElement.cc.

References accessRootObject(), and update().

00610 {
00611   update();
00612   accessRootObject(__PRETTY_FUNCTION__, 3)
00613     ->SetBinError(binx, biny, binz, error);
00614 }

void MonitorElement::setBinError ( int  binx,
int  biny,
float  error 
)

set uncertainty on content of bin (2-D)

Definition at line 600 of file MonitorElement.cc.

References accessRootObject(), and update().

00601 {
00602   update();
00603   accessRootObject(__PRETTY_FUNCTION__, 2)
00604     ->SetBinError(binx, biny, error);
00605 }

void MonitorElement::setBinError ( int  binx,
float  error 
)

set uncertainty on content of bin (1-D)

Definition at line 591 of file MonitorElement.cc.

References accessRootObject(), and update().

Referenced by EETimingClient::analyze(), EELaserClient::analyze(), EBTimingClient::analyze(), EETestPulseClient::analyze(), EELedClient::analyze(), EBTestPulseClient::analyze(), EBLaserClient::analyze(), SiPixelSCurveCalibrationAnalysis::buildACurveHistogram(), EcalMixingModuleValidation::bunchSumTest(), HLTTauPostProcessor::calculatePathEfficiencies(), GlobalMuonMatchAnalyzer::computeEfficiencyEta(), GlobalMuonMatchAnalyzer::computeEfficiencyPt(), HLTTauPostProcessor::createIntegratedHisto(), PhotonAnalyzer::dividePlots(), MultiTrackValidatorBase::doProfileX(), PhotonValidator::doProfileX(), PhotonAnalyzer::doProfileX(), HLTTauDQMSource::doSummary(), BTagValidator::endJob(), DTChamberEfficiencyClient::endLuminosityBlock(), RPCEfficiencySecond::endRun(), EmDQMPostProcessor::endRun(), HLXMonitor::FillHistograms(), PhotonValidator::fillPlotFromVectors(), MultiTrackValidatorBase::fillPlotFromVectors(), SiStripMonitorTrackEfficiency::fillTrend(), SiStripMonitorTrack::fillTrend(), SiStripMonitorCluster::fillTrend(), SiStripMonitorDigi::fillTrend(), and PostProcessor::limitedFit().

00592 {
00593   update();
00594   accessRootObject(__PRETTY_FUNCTION__, 1)
00595     ->SetBinError(binx, error);
00596 }

void MonitorElement::setBinLabel ( int  bin,
const std::string &  label,
int  axis = 1 
)

set bin label for x, y or z axis (axis=1, 2, 3 respectively)

Definition at line 642 of file MonitorElement.cc.

References getAxis(), and update().

Referenced by RPCMon_SS_Dbx_Global::analyze(), HLTMuonGenericRate::begin(), HLTTauDQMSource::beginJob(), DQMFEDIntegrityClient::beginJob(), L1TEventInfoClient::beginJob(), HLTTauDQMOfflineSource::beginJob(), SiPixelTrackResidualSource::beginJob(), L1TFED::beginJob(), L1TCSCTF::beginJob(), HLTMon::beginJob(), MuonTestSummary::beginJob(), L1TGT::beginJob(), HLTTauElDQMOfflineSource::beginJob(), MonitorLTC::beginJob(), L1TEMUEventInfoClient::beginJob(), L1TGMT::beginJob(), L1TDTTPG::beginJob(), L1TdeGCT::beginJob(), SegmentTrackAnalyzer::beginJob(), MuonRecoAnalyzer::beginJob(), L1TDEMON::beginJob(), DTDataIntegrityTest::beginJob(), JetAnalyzer::beginJob(), EmDQM::beginJob(), CaloMETAnalyzer::beginJob(), HLTMonElectron::beginJob(), HLTEventInfoClient::beginJob(), RPCEventSummary::beginRun(), RPCDeadChannelTest::beginRun(), SiPixelInformationExtractor::bookGlobalQualityFlag(), SiStripActionExecutor::bookGlobalStatus(), DTChamberEfficiencyClient::bookHistos(), DTResolutionTest::bookHistos(), SiStripBaseCondObjDQM::bookSummaryMEs(), SiStripBaseCondObjDQM::bookSummaryProfileMEs(), HLTTauPostProcessor::calculatePathEfficiencies(), CnBAnalyzer::createRootFedHistograms(), DQMSourceExample::DQMSourceExample(), L1ScalersClient::endLuminosityBlock(), HLTScalersClient::endLuminosityBlock(), RPCDeadChannelTest::endLuminosityBlock(), RPCEfficiencySecond::endRun(), EmDQMPostProcessor::endRun(), HLTTauValidation::HLTTauValidation(), L1ScalersClient::L1ScalersClient(), HcalDataFormatMonitor::label_xChanns(), HcalDataFormatMonitor::label_xFEDs(), HcalDataFormatMonitor::label_ySpigots(), RPCEfficiency::RPCEfficiency(), L1TDTTPGClient::setMapPhLabel(), L1TDTTPG::setMapPhLabel(), L1TDTTF::setMapPhLabel(), L1TDTTPGClient::setMapThLabel(), L1TDTTPG::setMapThLabel(), L1TDTTF::setMapThLabel(), DTTimeEvolutionHisto::setTimeSlotValue(), EBIntegrityTask::setup(), HcalEEUSMonitor::setup(), EBStatusFlagsTask::setup(), EcalBarrelMonitorModule::setup(), HcalDigiMonitor::setup(), EBSelectiveReadoutTask::setup(), EEStatusFlagsTask::setup(), EBRawDataTask::setup(), HcalDataFormatMonitor::setup(), EEIntegrityTask::setup(), EESelectiveReadoutTask::setup(), EcalEndcapMonitorModule::setup(), EERawDataTask::setup(), EBSummaryClient::setup(), EESummaryClient::setup(), TrackingTruthValid::TrackingTruthValid(), and DTTimeEvolutionHisto::updateTimeSlot().

00643 {
00644   update();
00645   getAxis(__PRETTY_FUNCTION__, axis)
00646     ->SetBinLabel(bin, label.c_str());
00647 }

void MonitorElement::setEntries ( float  nentries  ) 

set # of entries

Definition at line 633 of file MonitorElement.cc.

References accessRootObject(), and update().

Referenced by EETimingClient::analyze(), EESummaryClient::analyze(), EELaserClient::analyze(), EBTimingClient::analyze(), EETestPulseClient::analyze(), EBSummaryClient::analyze(), EELedClient::analyze(), EBTestPulseClient::analyze(), EBLaserClient::analyze(), SiStripMonitorTrackEfficiency::fillTrend(), SiStripMonitorTrack::fillTrend(), SiStripMonitorCluster::fillTrend(), SiStripMonitorDigi::fillTrend(), CSCMonitorModule::monitorDDU(), CSCMonitorObject::SetEntries(), EBStatusFlagsTask::setup(), and EEStatusFlagsTask::setup().

00634 {
00635   update();
00636   accessRootObject(__PRETTY_FUNCTION__, 1)
00637     ->SetEntries(nentries);
00638 }

void MonitorElement::setResetMe ( bool  flag  )  [inline]

specify whether ME should be reset at end of monitoring cycle (default:false); (typically called by Sources that control the original ME)

Definition at line 114 of file MonitorElement.h.

References data_, DQM_FLAG_RESET, and DQMNet::CoreObject::flags.

Referenced by dqm::daq::FEDMonitor::analyze(), L1TDTTF::beginJob(), DQMSourceExample::DQMSourceExample(), LaserDQM::initMonitors(), EcalBarrelMonitorModule::setup(), EcalEndcapMonitorModule::setup(), and HLXMonitor::SetupHists().

00115     { data_.flags |= DQM_FLAG_RESET; }

void MonitorElement::setTitle ( const std::string &  title  ) 

set (ie. change) histogram/profile title

Definition at line 696 of file MonitorElement.cc.

References accessRootObject(), and update().

Referenced by L1ScalersClient::endLuminosityBlock(), HLTScalersClient::endLuminosityBlock(), and EmDQMPostProcessor::endRun().

00697 {
00698   update();
00699   accessRootObject(__PRETTY_FUNCTION__, 1)
00700     ->SetTitle(title.c_str());
00701 }

void MonitorElement::softReset ( void   )  [private]

reset contents (does not erase contents permanently) (makes copy of current contents; will be subtracted from future contents)

Definition at line 728 of file MonitorElement.cc.

References addProfiles(), curvalue_, DQM_KIND_TH1F, DQM_KIND_TH1S, DQM_KIND_TH2F, DQM_KIND_TH2S, DQM_KIND_TH3F, DQM_KIND_TPROFILE, DQM_KIND_TPROFILE2D, incompatible(), kind_, r, refvalue_, MonitorElement::Value::tobj, and update().

Referenced by DQMStore::softReset().

00729 {
00730   update();
00731 
00732   // Create the reference object the first time this is called.
00733   // On subsequent calls accumulate the current value to the
00734   // reference, and then reset the current value.  This way the
00735   // future contents will have the reference "subtracted".
00736   if (kind_ == DQM_KIND_TH1F)
00737   {
00738     TH1F *orig = static_cast<TH1F *>(curvalue_.tobj);
00739     TH1F *r = static_cast<TH1F *>(refvalue_);
00740     if (! r)
00741     {
00742       refvalue_ = r = new TH1F((std::string(orig->GetName()) + "_ref").c_str(),
00743                                orig->GetTitle(),
00744                                orig->GetNbinsX(),
00745                                orig->GetXaxis()->GetXmin(),
00746                                orig->GetXaxis()->GetXmax());
00747       r->SetDirectory(0);
00748       r->Reset();
00749     }
00750 
00751     r->Add(orig);
00752     orig->Reset();
00753   }
00754   else if (kind_ == DQM_KIND_TH1S)
00755   {
00756     TH1S *orig = static_cast<TH1S *>(curvalue_.tobj);
00757     TH1S *r = static_cast<TH1S *>(refvalue_);
00758     if (! r)
00759     {
00760       refvalue_ = r = new TH1S((std::string(orig->GetName()) + "_ref").c_str(),
00761                                orig->GetTitle(),
00762                                orig->GetNbinsX(),
00763                                orig->GetXaxis()->GetXmin(),
00764                                orig->GetXaxis()->GetXmax());
00765       r->SetDirectory(0);
00766       r->Reset();
00767     }
00768 
00769     r->Add(orig);
00770     orig->Reset();
00771   }
00772   else if (kind_ == DQM_KIND_TH2F)
00773   {
00774     TH2F *orig = static_cast<TH2F *>(curvalue_.tobj);
00775     TH2F *r = static_cast<TH2F *>(refvalue_);
00776     if (! r)
00777     {
00778       refvalue_ = r = new TH2F((std::string(orig->GetName()) + "_ref").c_str(),
00779                                orig->GetTitle(),
00780                                orig->GetNbinsX(),
00781                                orig->GetXaxis()->GetXmin(),
00782                                orig->GetXaxis()->GetXmax(),
00783                                orig->GetNbinsY(),
00784                                orig->GetYaxis()->GetXmin(),
00785                                orig->GetYaxis()->GetXmax());
00786       r->SetDirectory(0);
00787       r->Reset();
00788     }
00789 
00790     r->Add(orig);
00791     orig->Reset();
00792   }
00793   else if (kind_ == DQM_KIND_TH2S)
00794   {
00795     TH2S *orig = static_cast<TH2S *>(curvalue_.tobj);
00796     TH2S *r = static_cast<TH2S *>(refvalue_);
00797     if (! r)
00798     {
00799       refvalue_ = r = new TH2S((std::string(orig->GetName()) + "_ref").c_str(),
00800                                orig->GetTitle(),
00801                                orig->GetNbinsX(),
00802                                orig->GetXaxis()->GetXmin(),
00803                                orig->GetXaxis()->GetXmax(),
00804                                orig->GetNbinsY(),
00805                                orig->GetYaxis()->GetXmin(),
00806                                orig->GetYaxis()->GetXmax());
00807       r->SetDirectory(0);
00808       r->Reset();
00809     }
00810 
00811     r->Add(orig);
00812     orig->Reset();
00813   }
00814   else if (kind_ == DQM_KIND_TH3F)
00815   {
00816     TH3F *orig = static_cast<TH3F *>(curvalue_.tobj);
00817     TH3F *r = static_cast<TH3F *>(refvalue_);
00818     if (! r)
00819     {
00820       refvalue_ = r = new TH3F((std::string(orig->GetName()) + "_ref").c_str(),
00821                                orig->GetTitle(),
00822                                orig->GetNbinsX(),
00823                                orig->GetXaxis()->GetXmin(),
00824                                orig->GetXaxis()->GetXmax(),
00825                                orig->GetNbinsY(),
00826                                orig->GetYaxis()->GetXmin(),
00827                                orig->GetYaxis()->GetXmax(),
00828                                orig->GetNbinsZ(),
00829                                orig->GetZaxis()->GetXmin(),
00830                                orig->GetZaxis()->GetXmax());
00831       r->SetDirectory(0);
00832       r->Reset();
00833     }
00834 
00835     r->Add(orig);
00836     orig->Reset();
00837   }
00838   else if (kind_ == DQM_KIND_TPROFILE)
00839   {
00840     TProfile *orig = static_cast<TProfile *>(curvalue_.tobj);
00841     TProfile *r = static_cast<TProfile *>(refvalue_);
00842     if (! r)
00843     {
00844       refvalue_ = r = new TProfile((std::string(orig->GetName()) + "_ref").c_str(),
00845                                    orig->GetTitle(),
00846                                    orig->GetNbinsX(),
00847                                    orig->GetXaxis()->GetXmin(),
00848                                    orig->GetXaxis()->GetXmax(),
00849                                    orig->GetYaxis()->GetXmin(),
00850                                    orig->GetYaxis()->GetXmax(),
00851                                    orig->GetErrorOption());
00852       r->SetDirectory(0);
00853       r->Reset();
00854     }
00855 
00856     addProfiles(r, orig, r, 1, 1);
00857     orig->Reset();
00858   }
00859   else if (kind_ == DQM_KIND_TPROFILE2D)
00860   {
00861     TProfile2D *orig = static_cast<TProfile2D *>(curvalue_.tobj);
00862     TProfile2D *r = static_cast<TProfile2D *>(refvalue_);
00863     if (! r)
00864     {
00865       refvalue_ = r = new TProfile2D((std::string(orig->GetName()) + "_ref").c_str(),
00866                                      orig->GetTitle(),
00867                                      orig->GetNbinsX(),
00868                                      orig->GetXaxis()->GetXmin(),
00869                                      orig->GetXaxis()->GetXmax(),
00870                                      orig->GetNbinsY(),
00871                                      orig->GetYaxis()->GetXmin(),
00872                                      orig->GetYaxis()->GetXmax(),
00873                                      orig->GetZaxis()->GetXmin(),
00874                                      orig->GetZaxis()->GetXmax(),
00875                                      orig->GetErrorOption());
00876       r->SetDirectory(0);
00877       r->Reset();
00878     }
00879 
00880     addProfiles(r, orig, r, 1, 1);
00881     orig->Reset();
00882   }
00883   else
00884     incompatible(__PRETTY_FUNCTION__);
00885 }

std::string MonitorElement::tagString ( void   )  const

return tagged value of ME in string format (eg.

<name>f=3.14151926</name> for float numbers); relevant only for sending scalar or string MEs over TSocket

Definition at line 301 of file MonitorElement.cc.

References getName(), and valueString().

Referenced by DQMStore::extract(), Fill(), and initialise().

00302 { return "<" + getName() + ">" + valueString() + "</" + getName() + ">"; }

void MonitorElement::update ( void   )  [inline]

Mark the object updated.

Definition at line 109 of file MonitorElement.h.

References data_, DQMNet::DQM_FLAG_NEW, and DQMNet::CoreObject::flags.

Referenced by addQReport(), RPCMonitorRaw::analyze(), copyFunctions(), Fill(), getRefRootObject(), getRefTH1(), getRefTH1F(), getRefTH1S(), getRefTH2F(), getRefTH2S(), getRefTH3F(), getRefTProfile(), getRefTProfile2D(), getRootObject(), getTH1(), getTH1F(), getTH1S(), getTH2F(), getTH2S(), getTH3F(), getTProfile(), getTProfile2D(), Reset(), runQTests(), setAxisRange(), setAxisTimeDisplay(), setAxisTimeFormat(), setAxisTimeOffset(), setAxisTitle(), setBinContent(), setBinEntries(), setBinError(), setBinLabel(), setEntries(), setTitle(), and softReset().

void MonitorElement::updateQReportStats ( void   )  [private]

Refresh QReport stats, usually after MEs were read in from a file.

Definition at line 1143 of file MonitorElement.cc.

References data_, DQMNet::DQM_FLAG_REPORT_ERROR, DQMNet::DQM_FLAG_REPORT_OTHER, DQMNet::DQM_FLAG_REPORT_WARNING, e, dqm::qstatus::ERROR, DQMNet::CoreObject::flags, i, nqerror_, nqother_, nqwarning_, DQMNet::CoreObject::qreports, dqm::qstatus::STATUS_OK, and dqm::qstatus::WARNING.

Referenced by runQTests().

01144 {
01145   nqerror_ = nqwarning_ = nqother_ = 0;
01146   for (size_t i = 0, e = data_.qreports.size(); i < e; ++i)
01147     switch (data_.qreports[i].code)
01148     {
01149     case dqm::qstatus::STATUS_OK: break;
01150     case dqm::qstatus::WARNING:   ++nqwarning_; break;
01151     case dqm::qstatus::ERROR:     ++nqerror_; break;
01152     default:                      ++nqother_; break;
01153     }
01154 
01155   data_.flags &= ~(DQMNet::DQM_FLAG_REPORT_ERROR
01156                    | DQMNet::DQM_FLAG_REPORT_WARNING
01157                    | DQMNet::DQM_FLAG_REPORT_OTHER);
01158   if (nqerror_)
01159     data_.flags |= DQMNet::DQM_FLAG_REPORT_ERROR;
01160   if (nqwarning_)
01161     data_.flags |= DQMNet::DQM_FLAG_REPORT_WARNING;
01162   if (nqother_)
01163     data_.flags |= DQMNet::DQM_FLAG_REPORT_OTHER;
01164 }

std::string MonitorElement::valueString ( void   )  const

returns value of ME in string format (eg.

"f = 3.14151926" for float numbers); relevant only for scalar or string MEs

Definition at line 283 of file MonitorElement.cc.

References curvalue_, DQM_KIND_INT, DQM_KIND_REAL, DQM_KIND_STRING, incompatible(), kind_, MonitorElement::Value::num, MonitorElement::Value::real, and MonitorElement::Value::str.

Referenced by EcalBarrelMonitorClient::analyze(), EcalEndcapMonitorClient::analyze(), HcalDigiClient::report(), HcalRecHitClient::report(), HcalHotCellClient::report(), HcalBeamClient::report(), HcalDeadCellClient::report(), HcalPedestalClient::report(), and tagString().

00284 {
00285   std::ostringstream buf;
00286   if (kind_ == DQM_KIND_INT)
00287     buf << "i=" << curvalue_.num;
00288   else if (kind_ == DQM_KIND_REAL)
00289     buf << "f=" << std::setprecision(16) << curvalue_.real;
00290   else if (kind_ == DQM_KIND_STRING)
00291     buf << "s=" << curvalue_.str;
00292   else
00293     incompatible(__PRETTY_FUNCTION__);
00294   return buf.str();
00295 }

bool MonitorElement::wasUpdated ( void   )  const [inline]

true if ME was updated in last monitoring cycle

Definition at line 105 of file MonitorElement.h.

References data_, DQMNet::DQM_FLAG_NEW, and DQMNet::CoreObject::flags.

Referenced by FUShmDQMOutputService::findMonitorElements(), DQMService::flush(), and runQTests().

00106     { return data_.flags & DQMNet::DQM_FLAG_NEW; }


Friends And Related Function Documentation

friend class DQMService [friend]

Definition at line 292 of file MonitorElement.h.

friend class DQMStore [friend]

Definition at line 291 of file MonitorElement.h.


Member Data Documentation

Value MonitorElement::curvalue_ [private]

Definition at line 73 of file MonitorElement.h.

Referenced by accessRootObject(), disableSoftReset(), DQMStore::extract(), Fill(), getFloatValue(), getIntValue(), getStringValue(), initialise(), MonitorElement(), Reset(), softReset(), and valueString().

DQMNet::CoreObject MonitorElement::data_ [private]

Definition at line 65 of file MonitorElement.h.

Referenced by accessRootObject(), copyFunctions(), DQMStore::extract(), Fill(), flags(), DQMService::flush(), DQMStore::get(), getAxis(), DQMStore::getContents(), getFullname(), getQErrors(), getQOthers(), getQReport(), getQWarnings(), getRefRootObject(), getRefTH1(), getRefTH1F(), getRefTH1S(), getRefTH2F(), getRefTH2S(), getRefTH3F(), getRefTProfile(), getRefTProfile2D(), getRootObject(), getTags(), incompatible(), initialise(), DQMStore::initialise(), isAccumulateEnabled(), DQMStore::makeReferenceME(), MonitorElement(), resetMe(), resetUpdate(), runQTests(), setAccumulate(), setResetMe(), DQMStore::tag(), update(), updateQReportStats(), wasUpdated(), and ~MonitorElement().

const uint32_t MonitorElement::DQM_FLAG_ACCUMULATE = 0x02000000 [static]

Definition at line 61 of file MonitorElement.h.

Referenced by isAccumulateEnabled(), and setAccumulate().

const uint32_t MonitorElement::DQM_FLAG_RESET = 0x01000000 [static]

Definition at line 60 of file MonitorElement.h.

Referenced by resetMe(), and setResetMe().

Kind MonitorElement::kind_ [private]

Definition at line 64 of file MonitorElement.h.

Referenced by copyFrom(), disableSoftReset(), Fill(), getBinEntries(), getFloatValue(), getIntValue(), getRefTH1F(), getRefTH1S(), getRefTH2F(), getRefTH2S(), getRefTH3F(), getRefTProfile(), getRefTProfile2D(), getStringValue(), getTH1F(), getTH1S(), getTH2F(), getTH2S(), getTH3F(), getTProfile(), getTProfile2D(), getYmax(), getYmin(), initialise(), kind(), Reset(), setBinEntries(), softReset(), and valueString().

std::string MonitorElement::name_ [private]

Definition at line 66 of file MonitorElement.h.

Referenced by getName(), DQMStore::getReferenceME(), initialise(), and qualityTagString().

size_t MonitorElement::nqerror_ [private]

Definition at line 69 of file MonitorElement.h.

Referenced by hasError(), and updateQReportStats().

size_t MonitorElement::nqother_ [private]

Definition at line 71 of file MonitorElement.h.

Referenced by hasOtherReport(), and updateQReportStats().

size_t MonitorElement::nqwarning_ [private]

Definition at line 70 of file MonitorElement.h.

Referenced by hasWarning(), and updateQReportStats().

std::string MonitorElement::path_ [private]

Definition at line 67 of file MonitorElement.h.

Referenced by DQMStore::getContents(), getPathname(), DQMStore::getReferenceME(), initialise(), DQMStore::isCollateME(), DQMStore::isReferenceME(), and DQMStore::makeReferenceME().

std::vector<QReport> MonitorElement::qreports_ [private]

Definition at line 68 of file MonitorElement.h.

Referenced by getQErrors(), getQOthers(), getQReport(), getQReports(), getQWarnings(), and runQTests().

TH1* MonitorElement::refvalue_ [private]

Definition at line 74 of file MonitorElement.h.

Referenced by copyFrom(), disableSoftReset(), isSoftResetEnabled(), softReset(), and ~MonitorElement().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:28:21 2009 for CMSSW by  doxygen 1.5.4