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
OverlapExclusionSelector< C, T, O > Class Template Reference

#include <OverlapExclusionSelector.h>

Public Member Functions

void newEvent (const edm::Event &, const edm::EventSetup &) const
 
bool operator() (const T &) const
 
 OverlapExclusionSelector (const edm::ParameterSet &cfg, edm::ConsumesCollector &&iC)
 
 OverlapExclusionSelector (const edm::ParameterSet &cfg, edm::ConsumesCollector &iC)
 

Private Attributes

C::const_iterator begin_
 
C::const_iterator end_
 
overlap_
 
edm::EDGetTokenT< C > srcToken_
 

Detailed Description

template<typename C, typename T, typename O>
class OverlapExclusionSelector< C, T, O >

Definition at line 12 of file OverlapExclusionSelector.h.

Constructor & Destructor Documentation

template<typename C , typename T , typename O >
OverlapExclusionSelector< C, T, O >::OverlapExclusionSelector ( const edm::ParameterSet cfg,
edm::ConsumesCollector &&  iC 
)
inline

Definition at line 14 of file OverlapExclusionSelector.h.

14  :
15  OverlapExclusionSelector(cfg, iC) {};
OverlapExclusionSelector(const edm::ParameterSet &cfg, edm::ConsumesCollector &&iC)
template<typename C , typename T , typename O >
OverlapExclusionSelector< C, T, O >::OverlapExclusionSelector ( const edm::ParameterSet cfg,
edm::ConsumesCollector iC 
)

Definition at line 26 of file OverlapExclusionSelector.h.

26  :
27  srcToken_(iC.consumes<C>(cfg.template getParameter<edm::InputTag>("overlap"))),
28  overlap_(cfg) {
29 }
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
edm::EDGetTokenT< C > srcToken_

Member Function Documentation

template<typename C , typename T , typename O >
void OverlapExclusionSelector< C, T, O >::newEvent ( const edm::Event evt,
const edm::EventSetup  
) const

Definition at line 32 of file OverlapExclusionSelector.h.

References end_, edm::Event::getByToken(), and h.

32  {
34  evt.getByToken(srcToken_, h);
35  begin_ = h->begin();
36  end_ = h->end();
37 }
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:464
edm::EDGetTokenT< C > srcToken_
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
Definition: Activities.doc:4
template<typename C , typename T , typename O >
bool OverlapExclusionSelector< C, T, O >::operator() ( const T t) const

Definition at line 40 of file OverlapExclusionSelector.h.

References end_, and i.

40  {
41  bool noOverlap = true;
42  for(typename C::const_iterator i = begin_; i != end_; ++i) {
43  if(overlap_(*i, t)) {
44  noOverlap = false;
45  break;
46  }
47  }
48  return noOverlap;
49 }
int i
Definition: DBlmapReader.cc:9

Member Data Documentation

template<typename C , typename T , typename O >
C::const_iterator OverlapExclusionSelector< C, T, O >::begin_
mutableprivate

Definition at line 21 of file OverlapExclusionSelector.h.

template<typename C , typename T , typename O >
C::const_iterator OverlapExclusionSelector< C, T, O >::end_
mutableprivate

Definition at line 21 of file OverlapExclusionSelector.h.

template<typename C , typename T , typename O >
O OverlapExclusionSelector< C, T, O >::overlap_
private

Definition at line 22 of file OverlapExclusionSelector.h.

template<typename C , typename T , typename O >
edm::EDGetTokenT<C> OverlapExclusionSelector< C, T, O >::srcToken_
private

Definition at line 20 of file OverlapExclusionSelector.h.