CMS 3D CMS Logo

RecoTrackRefSelector.h
Go to the documentation of this file.
1 #ifndef RecoSelectors_RecoTrackRefSelector_h
2 #define RecoSelectors_RecoTrackRefSelector_h
3 /* \class RecoTrackRefSelector
4  *
5  * \author Ian Tomalin, RAL
6  *
7  */
9 
11  public:
15 
18 
20 
21  const_ref_iterator begin() const { return ref_selected_.begin(); }
22  const_ref_iterator end() const { return ref_selected_.end(); }
23 
24  void select( const edm::Handle<collection>& c, const edm::Event & event, const edm::EventSetup&es) {
25  init(event, es);
27  for (unsigned int i = 0; i < c->size(); i++) {
28  edm::Ref<collection> trk(c, i);
29  if ( operator()(*trk) ) {
30  ref_selected_.push_back( trk );
31  }
32  }
33  }
34 
35  size_t size() const { return ref_selected_.size(); }
36 
37  private:
38  ref_container ref_selected_;
39 };
40 
41 #endif
void init(const edm::Event &event, const edm::EventSetup &es)
const_ref_iterator begin() const
std::vector< Track > TrackCollection
collection of Tracks
Definition: TrackFwd.h:14
const_iterator end() const
Termination of iteration.
Definition: RefVector.h:253
const_iterator begin() const
Initialize an iterator over the RefVector.
Definition: RefVector.h:248
reco::TrackCollection collection
void select(const edm::Handle< collection > &c, const edm::Event &event, const edm::EventSetup &es)
ref_container::const_iterator const_ref_iterator
const_ref_iterator end() const
RecoTrackRefSelector()
Constructors.
void clear()
Clear the vector.
Definition: RefVector.h:147
reco::TrackRefVector ref_container
RecoTrackRefSelector(const edm::ParameterSet &cfg, edm::ConsumesCollector &&iC)
void push_back(value_type const &ref)
Add a Ref<C, T> to the RefVector.
Definition: RefVector.h:69
size_type size() const
Size of the RefVector.
Definition: RefVector.h:107
Definition: event.py:1