CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
egHLT::MonElemContainer< T > Class Template Reference

#include <EgHLTMonElemContainer.h>

Inheritance diagram for egHLT::MonElemContainer< T >:
egHLT::MonElemWithCutBase< T >

Public Member Functions

std::vector< MonElemWithCutBase< T > * > & cutMonElems ()
 
const std::vector< MonElemWithCutBase< T > * > & cutMonElems () const
 
void fill (const T &obj, const OffEvt &evt, float weight)
 
 MonElemContainer (std::string baseName="", std::string baseTitle="", EgHLTDQMCut< T > *cut=NULL)
 
std::vector< MonElemManagerBase< T > * > & monElems ()
 
const std::vector< MonElemManagerBase< T > * > & monElems () const
 
const std::string & name () const
 
const std::string & title () const
 
 ~MonElemContainer ()
 
- Public Member Functions inherited from egHLT::MonElemWithCutBase< T >
 MonElemWithCutBase ()
 
virtual ~MonElemWithCutBase ()
 

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 egHLT::MonElemContainer< T >

Definition at line 26 of file EgHLTMonElemContainer.h.

Constructor & Destructor Documentation

template<class T>
egHLT::MonElemContainer< T >::MonElemContainer ( const MonElemContainer< T > &  rhs)
inlineprivate

Definition at line 41 of file EgHLTMonElemContainer.h.

41 {}
template<class T>
egHLT::MonElemContainer< T >::MonElemContainer ( std::string  baseName = "",
std::string  baseTitle = "",
EgHLTDQMCut< T > *  cut = NULL 
)
inline
template<class T >
egHLT::MonElemContainer< T >::~MonElemContainer ( )

Definition at line 67 of file EgHLTMonElemContainer.h.

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

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

68  {
69  for(size_t i=0;i<monElems_.size();i++) delete monElems_[i];
70  for(size_t i=0;i<cutMonElems_.size();i++) delete cutMonElems_[i];
71  if(cut_!=NULL) delete cut_;
72  }
int i
Definition: DBlmapReader.cc:9
#define NULL
Definition: scimark2.h:8
std::vector< MonElemManagerBase< T > * > monElems_
std::vector< MonElemWithCutBase< T > * > cutMonElems_

Member Function Documentation

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

Definition at line 55 of file EgHLTMonElemContainer.h.

References egHLT::MonElemContainer< T >::cutMonElems_.

55 {return cutMonElems_;}
std::vector< MonElemWithCutBase< T > * > cutMonElems_
template<class T >
void egHLT::MonElemContainer< T >::fill ( const T obj,
const OffEvt evt,
float  weight 
)
virtual

Implements egHLT::MonElemWithCutBase< T >.

Definition at line 75 of file EgHLTMonElemContainer.h.

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

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

76  {
77  if(cut_==NULL || cut_->pass(obj,evt)){
78  for(size_t i=0;i<monElems_.size();i++) monElems_[i]->fill(obj,weight);
79  for(size_t i=0;i<cutMonElems_.size();i++) cutMonElems_[i]->fill(obj,evt,weight);
80  }
81  }
int i
Definition: DBlmapReader.cc:9
void fill(const T &obj, const OffEvt &evt, float weight)
#define NULL
Definition: scimark2.h:8
Definition: weight.py:1
std::vector< MonElemManagerBase< T > * > monElems_
std::vector< MonElemWithCutBase< T > * > cutMonElems_
template<class T>
std::vector<MonElemManagerBase<T>*>& egHLT::MonElemContainer< T >::monElems ( )
inline

Definition at line 56 of file EgHLTMonElemContainer.h.

References egHLT::MonElemContainer< T >::monElems_.

Referenced by egHLT::MonElemFuncs::addTightLooseTrigHist().

56 {return monElems_;}
std::vector< MonElemManagerBase< T > * > monElems_
template<class T>
const std::vector<MonElemManagerBase<T>*>& egHLT::MonElemContainer< T >::monElems ( ) const
inline

Definition at line 57 of file EgHLTMonElemContainer.h.

References egHLT::MonElemContainer< T >::monElems_.

57 {return monElems_;}
std::vector< MonElemManagerBase< T > * > monElems_
template<class T>
const std::string& egHLT::MonElemContainer< T >::name ( void  ) const
inline
template<class T>
MonElemContainer& egHLT::MonElemContainer< T >::operator= ( const MonElemContainer< T > &  rhs)
inlineprivate

Definition at line 42 of file EgHLTMonElemContainer.h.

42 {return *this;}
template<class T>
const std::string& egHLT::MonElemContainer< T >::title ( ) const
inline

Member Data Documentation

template<class T>
std::string egHLT::MonElemContainer< T >::baseName_
private

Definition at line 29 of file EgHLTMonElemContainer.h.

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

template<class T>
std::string egHLT::MonElemContainer< T >::baseTitle_
private

Definition at line 30 of file EgHLTMonElemContainer.h.

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

template<class T>
EgHLTDQMCut<T>* egHLT::MonElemContainer< T >::cut_
private
template<class T>
std::vector<MonElemWithCutBase<T>*> egHLT::MonElemContainer< T >::cutMonElems_
private
template<class T>
std::vector<MonElemManagerBase<T>*> egHLT::MonElemContainer< T >::monElems_
private