Example of Root macro to copy a subset of a Tree to a new Tree, selecting entries.
Only selected entries are copied to the new Tree. The input file has been generated by the program in $ROOTSYS/test/Event
with Event 1000 1 99 1
void copytree3()
{
TString dir =
"$ROOTSYS/test/Event.root";
oldfile.GetObject("T", oldtree);
Event *event = nullptr;
TFile newfile(
"small.root",
"recreate");
if (event->GetNtrack() > 605)
newtree->Fill();
event->Clear();
}
newtree->Print();
newfile.Write();
}
#define R__LOAD_LIBRARY(LIBRARY)
R__EXTERN TSystem * gSystem
A ROOT file is a suite of consecutive data records (TKey instances) with a well defined format.
virtual Bool_t ExpandPathName(TString &path)
Expand a pathname getting rid of special shell characters like ~.
virtual Bool_t AccessPathName(const char *path, EAccessMode mode=kFileExists)
Returns FALSE if one can access a file using the specified access mode.
A TTree represents a columnar dataset.
virtual Int_t SetBranchAddress(const char *bname, void *add, TBranch **ptr=0)
Change branch address, dealing with clone trees properly.
virtual Long64_t GetEntries() const
virtual TTree * CloneTree(Long64_t nentries=-1, Option_t *option="")
Create a clone of this tree and copy nentries.
virtual Int_t GetEntry(Long64_t entry=0, Int_t getall=0)
Read all branches of entry and return total number of bytes read.
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...
- Author
- Rene Brun
Definition in file copytree3.C.