CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
egHLT::EgMultiCut< T > Struct Template Reference

#include <EgHLTDQMCut.h>

Inheritance diagram for egHLT::EgMultiCut< T >:
egHLT::EgHLTDQMCut< T >

Public Member Functions

EgHLTDQMCut< T > * clone () const
 
 EgMultiCut ()
 
 EgMultiCut (const EgMultiCut< T > &rhs)
 
EgMultiCut< T > & operator<< (const EgHLTDQMCut< T > *inputCut)
 
bool pass (const T &obj, const OffEvt &evt) const
 
 ~EgMultiCut ()
 
- Public Member Functions inherited from egHLT::EgHLTDQMCut< T >
 EgHLTDQMCut ()
 
virtual ~EgHLTDQMCut ()
 

Private Attributes

std::vector< const EgHLTDQMCut
< T > * > 
cuts_
 

Additional Inherited Members

- Protected Member Functions inherited from egHLT::EgHLTDQMCut< T >
 EgHLTDQMCut (const EgHLTDQMCut &rhs)
 

Detailed Description

template<class T>
struct egHLT::EgMultiCut< T >

Definition at line 114 of file EgHLTDQMCut.h.

Constructor & Destructor Documentation

template<class T>
egHLT::EgMultiCut< T >::EgMultiCut ( )
inline

Definition at line 119 of file EgHLTDQMCut.h.

Referenced by egHLT::EgMultiCut< T >::clone().

119 {}
template<class T >
egHLT::EgMultiCut< T >::EgMultiCut ( const EgMultiCut< T > &  rhs)

Definition at line 133 of file EgHLTDQMCut.h.

References egHLT::EgMultiCut< T >::cuts_.

134  {
135  for(size_t cutNr=0;cutNr<rhs.cuts_.size();cutNr++){
136  cuts_.push_back(rhs.cuts_[cutNr]->clone());
137  }
138  }
std::vector< const EgHLTDQMCut< T > * > cuts_
Definition: EgHLTDQMCut.h:116
template<class T>
egHLT::EgMultiCut< T >::~EgMultiCut ( )
inline

Definition at line 121 of file EgHLTDQMCut.h.

References egHLT::EgMultiCut< T >::cuts_, and i.

121 {for(size_t i=0;i<cuts_.size();i++) delete cuts_[i];}
std::vector< const EgHLTDQMCut< T > * > cuts_
Definition: EgHLTDQMCut.h:116
int i
Definition: DBlmapReader.cc:9

Member Function Documentation

template<class T>
EgHLTDQMCut<T>* egHLT::EgMultiCut< T >::clone ( void  ) const
inlinevirtual

Implements egHLT::EgHLTDQMCut< T >.

Definition at line 130 of file EgHLTDQMCut.h.

References egHLT::EgMultiCut< T >::EgMultiCut().

130 {return new EgMultiCut(*this);}
template<class T >
EgMultiCut< T > & egHLT::EgMultiCut< T >::operator<< ( const EgHLTDQMCut< T > *  inputCut)

Definition at line 141 of file EgHLTDQMCut.h.

References NULL.

142  {
143  if(typeid(*inputCut)==typeid(EgMultiCut)){
144  edm::LogError("EgMultiCut") <<" Error can not currently load an EgMultiCut inside a EgMultiCut, the practical upshot is that the selection you think is being loaded isnt ";
145  }else if(inputCut==NULL){
146  edm::LogError("EgMultiCut") << "Error, cut being loaded is null, ignoring";
147  }else cuts_.push_back(inputCut);
148  return *this;
149  }
std::vector< const EgHLTDQMCut< T > * > cuts_
Definition: EgHLTDQMCut.h:116
#define NULL
Definition: scimark2.h:8
template<class T >
bool egHLT::EgMultiCut< T >::pass ( const T obj,
const OffEvt evt 
) const
virtual

Implements egHLT::EgHLTDQMCut< T >.

Definition at line 151 of file EgHLTDQMCut.h.

References i.

152  {
153  for(size_t i=0;i<cuts_.size();i++){
154  if(!cuts_[i]->pass(obj,evt)) return false;
155  }
156  return true;
157 
158  }
std::vector< const EgHLTDQMCut< T > * > cuts_
Definition: EgHLTDQMCut.h:116
int i
Definition: DBlmapReader.cc:9
bool pass(const T &obj, const OffEvt &evt) const
Definition: EgHLTDQMCut.h:151

Member Data Documentation

template<class T>
std::vector<const EgHLTDQMCut<T>*> egHLT::EgMultiCut< T >::cuts_
private