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
tnp::ProbeFlag Class Reference

#include <BaseTreeFiller.h>

Public Member Functions

int32_t * address () const
 Addess for ROOT Branch. More...
 
void fill (const reco::CandidateBaseRef &probe) const
 To be called for each item. More...
 
void init (const edm::Event &iEvent) const
 To be called at the beginning of the event (will fetch Candidate View if needed) More...
 
const std::string & name () const
 name More...
 
 ProbeFlag (const std::string &name, const std::string &cut)
 Create a ProbeFlag to be evaluated on the fly from a string cut. More...
 
 ProbeFlag (const std::string &name, const edm::InputTag &src)
 Create a ProbeFlag to be read from a ValueMap. More...
 
 ~ProbeFlag ()
 Destructor (does nothing) More...
 

Private Attributes

StringCutObjectSelector
< reco::Candidate, true > 
cut_
 implementation of the cut using a string selector More...
 
bool external_
 true if it's an external Candidate View, false if it's a StringParser cut More...
 
std::string name_
 the name of the variable, which becomes the ROOT branch name More...
 
std::vector
< reco::CandidateBaseRef
passingProbes_
 the handle to keep the refs to the passing probes More...
 
edm::InputTag src_
 the external collection More...
 
int32_t value_
 the place where we store the value, and that ROOT uses to fill the tree More...
 

Detailed Description

Definition at line 81 of file BaseTreeFiller.h.

Constructor & Destructor Documentation

tnp::ProbeFlag::ProbeFlag ( const std::string &  name,
const std::string &  cut 
)
inline

Create a ProbeFlag to be evaluated on the fly from a string cut.

Definition at line 84 of file BaseTreeFiller.h.

84  :
85  name_(name), external_(false), cut_(cut) {}
std::string name_
the name of the variable, which becomes the ROOT branch name
StringCutObjectSelector< reco::Candidate, true > cut_
implementation of the cut using a string selector
bool external_
true if it&#39;s an external Candidate View, false if it&#39;s a StringParser cut
const std::string & name() const
name
tnp::ProbeFlag::ProbeFlag ( const std::string &  name,
const edm::InputTag src 
)
inline

Create a ProbeFlag to be read from a ValueMap.

Definition at line 88 of file BaseTreeFiller.h.

88  :
89  name_(name), external_(true), cut_(""), src_(src) {}
std::string name_
the name of the variable, which becomes the ROOT branch name
StringCutObjectSelector< reco::Candidate, true > cut_
implementation of the cut using a string selector
edm::InputTag src_
the external collection
bool external_
true if it&#39;s an external Candidate View, false if it&#39;s a StringParser cut
const std::string & name() const
name
tnp::ProbeFlag::~ProbeFlag ( )

Destructor (does nothing)

Definition at line 21 of file BaseTreeFiller.cc.

21 {}

Member Function Documentation

int32_t* tnp::ProbeFlag::address ( ) const
inline

Addess for ROOT Branch.

Definition at line 95 of file BaseTreeFiller.h.

References value_.

95 { return &value_; }
int32_t value_
the place where we store the value, and that ROOT uses to fill the tree
void tnp::ProbeFlag::fill ( const reco::CandidateBaseRef probe) const

To be called for each item.

Definition at line 33 of file BaseTreeFiller.cc.

References spr::find().

33  {
34  if (external_) {
35  value_ = (std::find(passingProbes_.begin(), passingProbes_.end(), probe) != passingProbes_.end());
36  } else {
37  value_ = bool(cut_(*probe));
38  }
39 }
StringCutObjectSelector< reco::Candidate, true > cut_
implementation of the cut using a string selector
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:7
int32_t value_
the place where we store the value, and that ROOT uses to fill the tree
bool external_
true if it&#39;s an external Candidate View, false if it&#39;s a StringParser cut
std::vector< reco::CandidateBaseRef > passingProbes_
the handle to keep the refs to the passing probes
void tnp::ProbeFlag::init ( const edm::Event iEvent) const

To be called at the beginning of the event (will fetch Candidate View if needed)

Definition at line 23 of file BaseTreeFiller.cc.

References edm::Event::getByLabel(), i, and n.

23  {
24  if (external_) {
26  iEvent.getByLabel(src_, view);
27  passingProbes_.clear();
28  for (size_t i = 0, n = view->size(); i < n; ++i) passingProbes_.push_back(view->refAt(i));
29  }
30 
31 }
int i
Definition: DBlmapReader.cc:9
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
Definition: Event.h:356
edm::InputTag src_
the external collection
bool external_
true if it&#39;s an external Candidate View, false if it&#39;s a StringParser cut
std::vector< reco::CandidateBaseRef > passingProbes_
the handle to keep the refs to the passing probes
const std::string& tnp::ProbeFlag::name ( void  ) const
inline

name

Definition at line 98 of file BaseTreeFiller.h.

References name_.

Referenced by BeautifulSoup.Tag::_invert().

98 { return name_; }
std::string name_
the name of the variable, which becomes the ROOT branch name

Member Data Documentation

StringCutObjectSelector<reco::Candidate,true> tnp::ProbeFlag::cut_
private

implementation of the cut using a string selector

Definition at line 116 of file BaseTreeFiller.h.

bool tnp::ProbeFlag::external_
private

true if it's an external Candidate View, false if it's a StringParser cut

Definition at line 113 of file BaseTreeFiller.h.

std::string tnp::ProbeFlag::name_
private

the name of the variable, which becomes the ROOT branch name

Definition at line 108 of file BaseTreeFiller.h.

Referenced by name().

std::vector<reco::CandidateBaseRef> tnp::ProbeFlag::passingProbes_
mutableprivate

the handle to keep the refs to the passing probes

Definition at line 122 of file BaseTreeFiller.h.

edm::InputTag tnp::ProbeFlag::src_
private

the external collection

Definition at line 120 of file BaseTreeFiller.h.

int32_t tnp::ProbeFlag::value_
mutableprivate

the place where we store the value, and that ROOT uses to fill the tree

Definition at line 110 of file BaseTreeFiller.h.

Referenced by address().