1 #ifndef Ndmspc_NTreeBranch_H
2 #define Ndmspc_NTreeBranch_H
27 NTreeBranch(TTree * tree =
nullptr,
const std::string & name =
"",
void * address =
nullptr,
28 const std::string & objClassName =
"TObject");
39 virtual void Print(Option_t * option =
"")
const;
95 TBranch *
Branch(TTree * tree,
void * address);
102 void SetAddress(
void * address,
bool deleteExisting =
false);
122 Long64_t
GetEntry(TTree * tree, Long64_t entry);
130 void SaveEntry(
NTreeBranch * hnstIn,
bool useProjection =
false,
const std::string projOpt =
"OE");
NDMSPC tree branch object for managing ROOT TBranch and associated data.
std::string GetObjectClassName() const
Get object class name.
TBranch * GetBranch()
Get branch pointer.
Long64_t GetEntry(TTree *tree, Long64_t entry)
Get entry from TTree.
NTreeBranch(TTree *tree=nullptr, const std::string &name="", void *address=nullptr, const std::string &objClassName="TObject")
Constructor.
TObject * fObject
! Object pointer
void SetObject(TObject *obj)
Set object pointer.
int fBranchStatus
Branch status.
virtual void Print(Option_t *option="") const
Print branch information.
virtual ~NTreeBranch()
Destructor.
std::string fObjectClassName
Object class name.
TBranch * Branch(TTree *tree, void *address)
Create branch in TTree with given address.
void SaveEntry(NTreeBranch *hnstIn, bool useProjection=false, const std::string projOpt="OE")
Save entry to another NTreeBranch.
void SetAddress(void *address, bool deleteExisting=false)
Set address for branch data.
void SetName(const std::string &name)
Set branch name.
TObject * GetObject() const
Get object pointer.
TBranch * fBranch
! Branch pointer
int GetBranchStatus() const
Get branch status.
void SetBranchAddress(TTree *tree)
Set branch address in TTree.
void SetBranchStatus(int status)
Set branch status.
void SetBranch(TBranch *branch)
Set branch pointer.
std::string fName
Branch name.
void SetObjectClassName(const std::string &objClassName)
Set object class name.