CMS 3D CMS Logo

MonElemContainer< T > Class Template Reference

#include <DQMOffline/Trigger/interface/MonElemContainer.h>

Inheritance diagram for MonElemContainer< T >:

MonElemWithCutBase< T >

List of all members.

Public Member Functions

const std::vector
< MonElemWithCutBase< T > * > & 
cutMonElems () const
std::vector
< MonElemWithCutBase< T > * > & 
cutMonElems ()
void fill (const T &obj, const EgHLTOffData &evtData, float weight)
 MonElemContainer (std::string baseName="", std::string baseTitle="", EgHLTDQMCut< T > *cut=NULL)
const std::vector
< MonElemManagerBase< T > * > & 
monElems () const
std::vector
< MonElemManagerBase< T > * > & 
monElems ()
const std::string & name () const
const std::string & title () const
 ~MonElemContainer ()

Private Member Functions

 MonElemContainer (const MonElemContainer &rhs)
MonElemContaineroperator= (const MonElemContainer &rhs)

Private Attributes

std::string baseName_
std::string baseTitle_
EgHLTDQMCut< T > * cut_
std::vector
< MonElemWithCutBase< T > * > 
cutMonElems_
std::vector
< MonElemManagerBase< T > * > 
monElems_


Detailed Description

template<class T>
class MonElemContainer< T >

Definition at line 26 of file MonElemContainer.h.


Constructor & Destructor Documentation

template<class T>
MonElemContainer< T >::MonElemContainer ( const MonElemContainer< T > &  rhs  )  [inline, private]

Definition at line 41 of file MonElemContainer.h.

00041 {}

template<class T>
MonElemContainer< T >::MonElemContainer ( std::string  baseName = "",
std::string  baseTitle = "",
EgHLTDQMCut< T > *  cut = NULL 
) [inline]

Definition at line 45 of file MonElemContainer.h.

00046                                             :
00047     baseName_(baseName),
00048     baseTitle_(baseTitle),
00049     cut_(cut){}
  

template<class T>
MonElemContainer< T >::~MonElemContainer (  )  [inline]

Definition at line 67 of file MonElemContainer.h.

References MonElemContainer< T >::cut_, MonElemContainer< T >::cutMonElems_, i, MonElemContainer< T >::monElems_, and NULL.

00068 {
00069   for(size_t i=0;i<monElems_.size();i++) delete monElems_[i];
00070   for(size_t i=0;i<cutMonElems_.size();i++) delete cutMonElems_[i];
00071   if(cut_!=NULL) delete cut_;
00072 }


Member Function Documentation

template<class T>
const std::vector<MonElemWithCutBase<T>*>& MonElemContainer< T >::cutMonElems (  )  const [inline]

Definition at line 55 of file MonElemContainer.h.

References MonElemContainer< T >::cutMonElems_.

00055 {return cutMonElems_;}

template<class T>
std::vector<MonElemWithCutBase<T>*>& MonElemContainer< T >::cutMonElems (  )  [inline]

Definition at line 54 of file MonElemContainer.h.

References MonElemContainer< T >::cutMonElems_.

Referenced by EgammaHLTOffline::beginJob().

00054 {return cutMonElems_;}

template<class T>
void MonElemContainer< T >::fill ( const T &  obj,
const EgHLTOffData evtData,
float  weight 
) [inline, virtual]

Implements MonElemWithCutBase< T >.

Definition at line 75 of file MonElemContainer.h.

References MonElemContainer< T >::cut_, MonElemContainer< T >::cutMonElems_, i, MonElemContainer< T >::monElems_, and NULL.

00076 {
00077   if(cut_==NULL || cut_->pass(obj,evtData)){
00078     for(size_t i=0;i<monElems_.size();i++) monElems_[i]->fill(obj,weight);
00079     for(size_t i=0;i<cutMonElems_.size();i++) cutMonElems_[i]->fill(obj,evtData,weight);
00080   }
00081 }

template<class T>
const std::vector<MonElemManagerBase<T>*>& MonElemContainer< T >::monElems (  )  const [inline]

Definition at line 57 of file MonElemContainer.h.

References MonElemContainer< T >::monElems_.

00057 {return monElems_;}

template<class T>
std::vector<MonElemManagerBase<T>*>& MonElemContainer< T >::monElems (  )  [inline]

Definition at line 56 of file MonElemContainer.h.

References MonElemContainer< T >::monElems_.

00056 {return monElems_;}

template<class T>
const std::string& MonElemContainer< T >::name (  )  const [inline]

Definition at line 60 of file MonElemContainer.h.

References MonElemContainer< T >::baseName_.

Referenced by EgammaHLTOffline::beginJob().

00060 {return baseName_;}

template<class T>
MonElemContainer& MonElemContainer< T >::operator= ( const MonElemContainer< T > &  rhs  )  [inline, private]

Definition at line 42 of file MonElemContainer.h.

00042 {return *this;}

template<class T>
const std::string& MonElemContainer< T >::title (  )  const [inline]

Definition at line 61 of file MonElemContainer.h.

References MonElemContainer< T >::baseTitle_.

00061 {return baseTitle_;}


Member Data Documentation

template<class T>
std::string MonElemContainer< T >::baseName_ [private]

Definition at line 29 of file MonElemContainer.h.

Referenced by MonElemContainer< T >::name().

template<class T>
std::string MonElemContainer< T >::baseTitle_ [private]

Definition at line 30 of file MonElemContainer.h.

Referenced by MonElemContainer< T >::title().

template<class T>
EgHLTDQMCut<T>* MonElemContainer< T >::cut_ [private]

Definition at line 36 of file MonElemContainer.h.

Referenced by MonElemContainer< T >::fill(), and MonElemContainer< T >::~MonElemContainer().

template<class T>
std::vector<MonElemWithCutBase<T>*> MonElemContainer< T >::cutMonElems_ [private]

Definition at line 34 of file MonElemContainer.h.

Referenced by MonElemContainer< T >::cutMonElems(), MonElemContainer< T >::fill(), and MonElemContainer< T >::~MonElemContainer().

template<class T>
std::vector<MonElemManagerBase<T>*> MonElemContainer< T >::monElems_ [private]

Definition at line 35 of file MonElemContainer.h.

Referenced by MonElemContainer< T >::fill(), MonElemContainer< T >::monElems(), and MonElemContainer< T >::~MonElemContainer().


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