CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
TreeBranch Class Reference

#include <StringBasedNTupler.h>

Public Types

typedef std::unique_ptr< std::vector< float > > value
 

Public Member Functions

void assignDataHolderPtr (std::vector< float > *data)
 
value branch (const edm::Event &iEvent)
 
const std::string & branchAlias () const
 
const std::string branchName () const
 
const std::string & branchTitle () const
 
const std::string & className () const
 
std::vector< float > * dataHolderPtr ()
 
std::vector< float > ** dataHolderPtrAdress ()
 
const std::string & expr () const
 
const std::string & maxIndexName () const
 
const std::string & order () const
 
const std::string & selection () const
 
const edm::InputTagsrc () const
 
 TreeBranch ()
 
 TreeBranch (std::string C, edm::InputTag S, std::string E, std::string O, std::string SE, std::string Mi, std::string Ba)
 

Private Attributes

std::string branchAlias_
 
std::string branchTitle_
 
std::string class_
 
std::vector< float > * dataHolderPtr_
 
std::string expr_
 
std::string maxIndexName_
 
std::string order_
 
std::string selection_
 
edm::InputTag src_
 

Detailed Description

Definition at line 48 of file StringBasedNTupler.h.

Member Typedef Documentation

typedef std::unique_ptr<std::vector<float> > TreeBranch::value

Definition at line 71 of file StringBasedNTupler.h.

Constructor & Destructor Documentation

TreeBranch::TreeBranch ( )
inline

Definition at line 50 of file StringBasedNTupler.h.

Referenced by StringBasedNTupler::StringBasedNTupler().

50 : class_(""),expr_(""),order_(""),selection_(""),maxIndexName_(""),branchAlias_("") {}
std::string order_
std::string maxIndexName_
std::string branchAlias_
std::string expr_
std::string selection_
std::string class_
TreeBranch::TreeBranch ( std::string  C,
edm::InputTag  S,
std::string  E,
std::string  O,
std::string  SE,
std::string  Mi,
std::string  Ba 
)
inline

Definition at line 51 of file StringBasedNTupler.h.

References branchAlias_, branchTitle_, and edm::InputTag::encode().

51  :
53  branchTitle_= E+" calculated on "+C+" object from "+S.encode();
54  if (O!="") branchTitle_+=" ordered according to "+O;
55  if (SE!="") branchTitle_+=" selecting on "+SE;
56  edm::LogInfo("TreeBranch")<<"the branch with alias: "<<branchAlias_<<" corresponds to: "<<branchTitle_;
57  }
std::string order_
std::string branchTitle_
std::string maxIndexName_
std::string encode() const
Definition: InputTag.cc:166
std::string branchAlias_
std::string expr_
edm::InputTag src_
std::string selection_
std::string class_

Member Function Documentation

void TreeBranch::assignDataHolderPtr ( std::vector< float > *  data)
inline

Definition at line 76 of file StringBasedNTupler.h.

References data, and dataHolderPtr_.

Referenced by StringBasedNTupler::fill().

std::vector< float > * dataHolderPtr_
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:82
TreeBranch::value TreeBranch::branch ( const edm::Event iEvent)

Definition at line 39 of file StringBasedNTupler.cc.

References ANOTHER_CLASS, ANOTHER_VECTOR_CLASS, branchName(), and class_.

Referenced by StringBasedNTupler::fill().

39  {
67  else {
68  edm::LogError("TreeBranch")<<branchName()<<" failed to recognized class type: "<<class_;
69  return TreeBranch::value(new std::vector<float>());
70  }
71 }
Analysis-level MET class.
Definition: MET.h:43
Analysis-level Photon class.
Definition: Photon.h:47
Jets made from CaloTowers.
Definition: CaloJet.h:29
const std::string branchName() const
#define ANOTHER_CLASS(C)
Jets made from CaloTowers.
Definition: BasicJet.h:20
Analysis-level Generic Particle class (e.g. for hadron or muon not fully reconstructed) ...
Analysis-level HLTrigger path class.
Definition: TriggerPath.h:39
Definition: MET.h:42
Jets made from MC generator particles.
Definition: GenJet.h:24
std::unique_ptr< std::vector< float > > value
Analysis-level tau class.
Definition: Tau.h:55
Analysis-level electron class.
Definition: Electron.h:52
Analysis-level calorimeter jet class.
Definition: Jet.h:80
Particle reconstructed by the particle flow algorithm.
Definition: PFCandidate.h:40
#define ANOTHER_VECTOR_CLASS(C)
std::string class_
Analysis-level muon class.
Definition: Muon.h:50
const std::string& TreeBranch::branchAlias ( ) const
inline

Definition at line 69 of file StringBasedNTupler.h.

References branchAlias_.

Referenced by StringBasedNTupler::registerleaves(), and StringBasedNTupler::StringBasedNTupler().

69 { return branchAlias_;}
std::string branchAlias_
const std::string TreeBranch::branchName ( ) const
inline
const std::string& TreeBranch::branchTitle ( ) const
inline

Definition at line 70 of file StringBasedNTupler.h.

References branchTitle_.

Referenced by StringBasedNTupler::registerleaves().

70 { return branchTitle_;}
std::string branchTitle_
const std::string& TreeBranch::className ( ) const
inline
std::vector<float>* TreeBranch::dataHolderPtr ( )
inline

Definition at line 75 of file StringBasedNTupler.h.

References dataHolderPtr_.

Referenced by StringBasedNTupler::callBack().

75 { return dataHolderPtr_;}
std::vector< float > * dataHolderPtr_
std::vector<float>** TreeBranch::dataHolderPtrAdress ( )
inline

Definition at line 74 of file StringBasedNTupler.h.

References dataHolderPtr_.

74 { return &dataHolderPtr_;}
std::vector< float > * dataHolderPtr_
const std::string& TreeBranch::expr ( ) const
inline
const std::string& TreeBranch::maxIndexName ( ) const
inline

Definition at line 64 of file StringBasedNTupler.h.

References maxIndexName_.

64 { return maxIndexName_;}
std::string maxIndexName_
const std::string& TreeBranch::order ( ) const
inline
const std::string& TreeBranch::selection ( ) const
inline
const edm::InputTag& TreeBranch::src ( ) const
inline

Member Data Documentation

std::string TreeBranch::branchAlias_
private

Definition at line 84 of file StringBasedNTupler.h.

Referenced by branchAlias(), branchName(), and TreeBranch().

std::string TreeBranch::branchTitle_
private

Definition at line 85 of file StringBasedNTupler.h.

Referenced by branchTitle(), and TreeBranch().

std::string TreeBranch::class_
private

Definition at line 78 of file StringBasedNTupler.h.

Referenced by branch(), and className().

std::vector<float>* TreeBranch::dataHolderPtr_
private

Definition at line 87 of file StringBasedNTupler.h.

Referenced by assignDataHolderPtr(), dataHolderPtr(), and dataHolderPtrAdress().

std::string TreeBranch::expr_
private

Definition at line 80 of file StringBasedNTupler.h.

Referenced by expr().

std::string TreeBranch::maxIndexName_
private

Definition at line 83 of file StringBasedNTupler.h.

Referenced by maxIndexName().

std::string TreeBranch::order_
private

Definition at line 81 of file StringBasedNTupler.h.

Referenced by order().

std::string TreeBranch::selection_
private

Definition at line 82 of file StringBasedNTupler.h.

Referenced by selection().

edm::InputTag TreeBranch::src_
private

Definition at line 79 of file StringBasedNTupler.h.

Referenced by src().