Functor that operates on <T> More...
#include "CommonTools/Utils/interface/Selector.h"
Public Types | |
typedef std::binary_function < T, pat::strbitset, bool > | base_type |
typedef std::pair< index_type, size_t > | cut_flow_item |
typedef std::vector < cut_flow_item > | cut_flow_map |
typedef T | data_type |
typedef std::map< index_type, double > | double_map |
typedef pat::strbitset::index_type | index_type |
typedef std::map< index_type, int > | int_map |
Public Member Functions | |
void | clear (std::string const &s) |
Turn off a given selection cut. More... | |
void | clear (index_type const &i) |
bool | considerCut (std::string const &s) const |
consider the cut at index "s" More... | |
bool | considerCut (index_type const &i) const |
int | cut (index_type const &i, int val) const |
Access the int cut values at index "s". More... | |
double | cut (index_type const &i, double val) const |
Access the double cut values at index "s". More... | |
int | cut (std::string s, int val) const |
Access the int cut values at index "s". More... | |
double | cut (std::string s, double val) const |
Access the double cut values at index "s". More... | |
pat::strbitset | getBitTemplate () const |
Get an empty bitset with the proper names. More... | |
double | getPasses (std::string const &s) const |
Return the number of passing cases. More... | |
double | getPasses (index_type const &i) const |
bool | ignoreCut (std::string const &s) const |
ignore the cut at index "s" More... | |
bool | ignoreCut (index_type const &i) const |
virtual bool | operator() (T const &t, pat::strbitset &ret)=0 |
This provides the interface for base classes to select objects. More... | |
virtual bool | operator() (T const &t) |
This provides an alternative signature without the second ret. More... | |
virtual bool | operator() (T const &t, edm::EventBase const &e, pat::strbitset &ret) |
This provides an alternative signature that includes extra information. More... | |
virtual bool | operator() (T const &t, edm::EventBase const &e) |
This provides an alternative signature that includes extra information. More... | |
bool | operator[] (std::string const &s) const |
bool | operator[] (index_type const &i) const |
void | passCut (pat::strbitset &ret, std::string const &s) |
Passing cuts. More... | |
void | passCut (pat::strbitset &ret, index_type const &i) |
void | print (std::ostream &out) const |
Print the cut flow. More... | |
void | printActiveCuts (std::ostream &out) const |
Print the cuts being considered. More... | |
virtual void | push_back (std::string const &s) |
This is the registration of an individual cut string. More... | |
virtual void | push_back (std::string const &s, int cut) |
This is the registration of an individual cut string, with an int cut value. More... | |
virtual void | push_back (std::string const &s, double cut) |
This is the registration of an individual cut string, with a double cut value. More... | |
Selector () | |
Constructor clears the bits. More... | |
void | set (std::string const &s, bool val=true) |
Set a given selection cut, on or off. More... | |
void | set (index_type const &i, bool val=true) |
void | set (std::string const &s, int cut, bool val=true) |
Set a given selection cut, on or off, and reset int cut value. More... | |
void | set (index_type const &i, int cut, bool val=true) |
void | set (std::string const &s, double cut, bool val=true) |
Set a given selection cut, on or off, and reset int cut value. More... | |
void | set (index_type const &i, double cut, bool val=true) |
void | setIgnored (pat::strbitset &ret) |
set ignored bits More... | |
void | setIgnoredCuts (std::vector< std::string > const &bitsToIgnore) |
set the bits to ignore from a vector More... | |
virtual | ~Selector () |
Protected Attributes | |
pat::strbitset | bits_ |
the bitset indexed by strings More... | |
cut_flow_map | cutFlow_ |
map of cut flows in "human" order More... | |
double_map | doubleCuts_ |
the double-value cut map More... | |
int_map | intCuts_ |
the int-value cut map More... | |
pat::strbitset | retInternal_ |
internal ret if users don't care about return bits More... | |
Functor that operates on <T>
Implements a string-indexed bit_vector.
class template that implements an interface to Selector utilities. This allows the user to access individual cuts based on a string index. The user can then turn individual cuts on and off at will.
Definition at line 25 of file Selector.h.
typedef std::binary_function<T,pat::strbitset,bool> Selector< T >::base_type |
Definition at line 29 of file Selector.h.
typedef std::pair<index_type, size_t> Selector< T >::cut_flow_item |
Definition at line 31 of file Selector.h.
typedef std::vector<cut_flow_item> Selector< T >::cut_flow_map |
Definition at line 32 of file Selector.h.
typedef std::map<index_type, double> Selector< T >::double_map |
Definition at line 34 of file Selector.h.
typedef pat::strbitset::index_type Selector< T >::index_type |
Definition at line 30 of file Selector.h.
typedef std::map<index_type, int> Selector< T >::int_map |
Definition at line 33 of file Selector.h.
Constructor clears the bits.
Definition at line 37 of file Selector.h.
Definition at line 44 of file Selector.h.
Turn off a given selection cut.
Definition at line 132 of file Selector.h.
Referenced by Selector< pat::Electron >::clear().
|
inline |
Definition at line 136 of file Selector.h.
consider the cut at index "s"
Definition at line 152 of file Selector.h.
Referenced by Selector< pat::Electron >::print(), and Selector< pat::Electron >::printActiveCuts().
|
inline |
Definition at line 155 of file Selector.h.
|
inline |
Access the int cut values at index "s".
Definition at line 195 of file Selector.h.
Referenced by Selector< pat::Electron >::cut(), Selector< pat::Electron >::push_back(), and Selector< pat::Electron >::set().
|
inline |
Access the int cut values at index "s".
Definition at line 204 of file Selector.h.
Access the double cut values at index "s".
Definition at line 208 of file Selector.h.
|
inline |
Get an empty bitset with the proper names.
Definition at line 213 of file Selector.h.
Referenced by SimpleJetFilter::filter(), WPlusJetsEventSelector::operator()(), and Selector< pat::Electron >::Selector().
Return the number of passing cases.
Definition at line 270 of file Selector.h.
Referenced by Selector< pat::Electron >::getPasses().
|
inline |
Definition at line 273 of file Selector.h.
ignore the cut at index "s"
Definition at line 160 of file Selector.h.
Referenced by Selector< pat::Electron >::getBitTemplate(), and Selector< pat::Electron >::setIgnored().
|
inline |
Definition at line 163 of file Selector.h.
|
pure virtual |
This provides the interface for base classes to select objects.
Implemented in SimpleCutBasedElectronIDSelectionFunctor, JetIDSelectionFunctor, MuonVPlusJetsIDSelectionFunctor, PFElectronSelector, PFJetIDSelectionFunctor, PFMuonSelector, ElectronVPlusJetsIDSelectionFunctor, PVObjectSelector, and PVSelector.
Referenced by Selector< pat::Electron >::operator()().
This provides an alternative signature without the second ret.
Definition at line 80 of file Selector.h.
|
inlinevirtual |
This provides an alternative signature that includes extra information.
Reimplemented in MuonVPlusJetsIDSelectionFunctor, and PFElectronSelector.
Definition at line 90 of file Selector.h.
|
inlinevirtual |
This provides an alternative signature that includes extra information.
Definition at line 96 of file Selector.h.
Access the selector cut at index "s". "true" means to consider the cut. "false" means to ignore the cut.
Definition at line 143 of file Selector.h.
|
inline |
Definition at line 147 of file Selector.h.
|
inline |
Passing cuts.
Definition at line 177 of file Selector.h.
Referenced by Selector< pat::Electron >::passCut().
|
inline |
Definition at line 181 of file Selector.h.
Print the cut flow.
Definition at line 234 of file Selector.h.
Referenced by WPlusJetsEventSelector::printSelectors().
Print the cuts being considered.
Definition at line 255 of file Selector.h.
This is the registration of an individual cut string.
Definition at line 47 of file Selector.h.
|
inlinevirtual |
This is the registration of an individual cut string, with an int cut value.
Definition at line 57 of file Selector.h.
|
inlinevirtual |
This is the registration of an individual cut string, with a double cut value.
Definition at line 67 of file Selector.h.
Set a given selection cut, on or off.
Definition at line 106 of file Selector.h.
Referenced by betterConfigParser.BetterConfigParser::getGeneral(), Selector< pat::Electron >::set(), and Selector< pat::Electron >::setIgnoredCuts().
|
inline |
Definition at line 109 of file Selector.h.
Referenced by betterConfigParser.BetterConfigParser::getGeneral().
|
inline |
Set a given selection cut, on or off, and reset int cut value.
Definition at line 114 of file Selector.h.
Referenced by betterConfigParser.BetterConfigParser::getGeneral().
|
inline |
Definition at line 117 of file Selector.h.
Referenced by betterConfigParser.BetterConfigParser::getGeneral().
|
inline |
Set a given selection cut, on or off, and reset int cut value.
Definition at line 123 of file Selector.h.
Referenced by betterConfigParser.BetterConfigParser::getGeneral().
|
inline |
Definition at line 126 of file Selector.h.
Referenced by betterConfigParser.BetterConfigParser::getGeneral().
|
inline |
set ignored bits
Definition at line 225 of file Selector.h.
Referenced by Selector< pat::Electron >::operator()().
|
inline |
set the bits to ignore from a vector
Definition at line 168 of file Selector.h.
|
protected |
the bitset indexed by strings
Definition at line 287 of file Selector.h.
Referenced by Selector< pat::Electron >::clear(), Selector< pat::Electron >::considerCut(), Selector< pat::Electron >::cut(), Selector< pat::Electron >::getBitTemplate(), Selector< pat::Electron >::getPasses(), Selector< pat::Electron >::ignoreCut(), Selector< pat::Electron >::operator[](), Selector< pat::Electron >::passCut(), Selector< pat::Electron >::push_back(), Selector< pat::Electron >::Selector(), and Selector< pat::Electron >::set().
|
protected |
map of cut flows in "human" order
Definition at line 291 of file Selector.h.
Referenced by Selector< pat::Electron >::getBitTemplate(), Selector< pat::Electron >::getPasses(), Selector< pat::Electron >::passCut(), Selector< pat::Electron >::print(), Selector< pat::Electron >::printActiveCuts(), Selector< pat::Electron >::push_back(), Selector< pat::Electron >::Selector(), and Selector< pat::Electron >::setIgnored().
|
protected |
the double-value cut map
Definition at line 290 of file Selector.h.
Referenced by Selector< pat::Electron >::cut(), Selector< pat::Electron >::push_back(), Selector< pat::Electron >::Selector(), and Selector< pat::Electron >::set().
the int-value cut map
Definition at line 289 of file Selector.h.
Referenced by Selector< pat::Electron >::cut(), Selector< pat::Electron >::push_back(), Selector< pat::Electron >::Selector(), and Selector< pat::Electron >::set().
|
protected |
internal ret if users don't care about return bits
Definition at line 288 of file Selector.h.
Referenced by Selector< pat::Electron >::operator()(), and Selector< pat::Electron >::Selector().