1#ifndef INDET__PERF__NTUPLEBRANCH__H
2#define INDET__PERF__NTUPLEBRANCH__H
80 return (targetTree ? targetTree->Branch(
getName().c_str(), &
m_content) :
nullptr);
105 inline const typename std::vector<branchType>::const_iterator
begin(){
return get().begin(); }
106 inline const typename std::vector<branchType>::const_iterator
end(){
return get().end(); }
109 inline void set(
const std::vector<branchType> & in){ *
m_content = in; }
116 return (targetTree ? targetTree->Branch(
getName().c_str(),
m_content.get()) :
nullptr);
TBranch * getBranch() const
const std::string & getName() const
virtual TBranch * addPayloadAsBranch(TTree *targetTree)=0
virtual void setDummy()=0
attachmentOutcome attach(TTree *targetTree)
const std::string m_branchName
virtual ~InDetPerfNtupleBranchBase()
InDetPerfNtupleBranchBase(const std::string &branchName, InDetPerfNtuple &mgr)
void set(const std::vector< branchType > &in)
branchType operator()(size_t i)
InDetPerfNtupleBranch(const std::string &branchName, InDetPerfNtuple &mgr)
const std::vector< branchType >::const_iterator begin()
const std::vector< branchType > & get()
std::shared_ptr< std::vector< branchType > > m_content
virtual TBranch * addPayloadAsBranch(TTree *targetTree)
const std::vector< branchType >::const_iterator end()
std::vector< branchType > & operator()()
This defines a helper class used for writing output ntuples in IDPVM.
branchType & operator()()
void set(const branchType &in)
InDetPerfNtupleBranch(const std::string &branchName, branchType defaultValue, InDetPerfNtuple &mgr)
void operator=(const branchType &in)
const branchType m_default
virtual TBranch * addPayloadAsBranch(TTree *targetTree)
This class is a base class for the actual ntuples used when writing IDPVM ntuples.