CMS 3D CMS Logo

Public Member Functions | Private Attributes

pat::eventhypothesis::OrFilter Class Reference

#include <EventHypothesisTools.h>

Inheritance diagram for pat::eventhypothesis::OrFilter:
pat::eventhypothesis::ParticleFilter

List of all members.

Public Member Functions

OrFilteroperator&= (ParticleFilter *filter)
virtual bool operator() (const CandRefType &cand, const std::string &role) const
 OrFilter (ParticleFilter *f1, ParticleFilter *f2)
 OrFilter ()
virtual ~OrFilter ()

Private Attributes

boost::ptr_vector< ParticleFilterfilters_

Detailed Description

Does the OR of some filters. OWNS the pointers to the filters

Definition at line 23 of file EventHypothesisTools.h.


Constructor & Destructor Documentation

pat::eventhypothesis::OrFilter::OrFilter ( ) [inline]

Definition at line 25 of file EventHypothesisTools.h.

: filters_(2) {}
OrFilter::OrFilter ( ParticleFilter f1,
ParticleFilter f2 
)

Definition at line 18 of file EventHypothesisTools.cc.

References filters_.

                                                         :
    filters_(2) 
{
    filters_.push_back(f1); filters_.push_back(f2);
}
virtual pat::eventhypothesis::OrFilter::~OrFilter ( ) [inline, virtual]

Definition at line 27 of file EventHypothesisTools.h.

{}

Member Function Documentation

OrFilter& pat::eventhypothesis::OrFilter::operator&= ( ParticleFilter filter) [inline]

Definition at line 28 of file EventHypothesisTools.h.

References filters_.

{ filters_.push_back(filter); return *this; }
bool OrFilter::operator() ( const CandRefType cand,
const std::string &  role 
) const [virtual]

Implements pat::eventhypothesis::ParticleFilter.

Definition at line 24 of file EventHypothesisTools.cc.

References filters_.

                                                                              {
    for (boost::ptr_vector<ParticleFilter>::const_iterator it = filters_.begin(); it != filters_.end(); ++it) {
        if ( (*it)(cand, role) ) return true;
    }
    return false;
}

Member Data Documentation

Definition at line 31 of file EventHypothesisTools.h.

Referenced by operator&=(), operator()(), and OrFilter().