CMS 3D CMS Logo

Public Member Functions | Private Attributes

egHLT::EgDiEleCut Struct Reference

#include <EgHLTDQMCut.h>

Inheritance diagram for egHLT::EgDiEleCut:
egHLT::EgHLTDQMCut< OffEle >

List of all members.

Public Member Functions

EgHLTDQMCut< OffEle > * clone () const
 EgDiEleCut (int cutCode, int(OffEle::*cutCodeFunc)() const)
bool pass (const OffEle &obj, const OffEvt &evt) const

Private Attributes

int cutCode_
int(OffEle::* cutCodeFunc_ )() const

Detailed Description

Definition at line 365 of file EgHLTDQMCut.h.


Constructor & Destructor Documentation

egHLT::EgDiEleCut::EgDiEleCut ( int  cutCode,
int(OffEle::*)() const  cutCodeFunc 
) [inline]

Definition at line 371 of file EgHLTDQMCut.h.

Referenced by clone().

:cutCode_(cutCode),cutCodeFunc_(cutCodeFunc){}

Member Function Documentation

EgHLTDQMCut<OffEle>* egHLT::EgDiEleCut::clone ( void  ) const [inline, virtual]

Implements egHLT::EgHLTDQMCut< OffEle >.

Definition at line 373 of file EgHLTDQMCut.h.

References EgDiEleCut().

{return new EgDiEleCut(*this);}
bool EgDiEleCut::pass ( const OffEle obj,
const OffEvt evt 
) const [virtual]

Implements egHLT::EgHLTDQMCut< OffEle >.

Definition at line 89 of file EgHLTDQMCut.cc.

References cutCode_, cutCodeFunc_, and egHLT::OffEvt::eles().

{
  const std::vector<OffEle>& eles = evt.eles();
  for(size_t eleNr=0;eleNr<eles.size();eleNr++){
    if(&eles[eleNr]!=&obj){ //different electrons
     
      int diEleCutCode = (obj.*cutCodeFunc_)() | (eles[eleNr].*cutCodeFunc_)();
      if( (diEleCutCode & cutCode_)==0x0) return true;
    }
  }
  return false;
}

Member Data Documentation

Definition at line 367 of file EgHLTDQMCut.h.

Referenced by pass().

int(OffEle::* egHLT::EgDiEleCut::cutCodeFunc_)() const [private]

Definition at line 368 of file EgHLTDQMCut.h.

Referenced by pass().