#include <RootOutputTree.h>
Public Member Functions | |
template<typename T > | |
void | addAuxiliary (std::string const &branchName, T const *&pAux, int bufSize, bool allowCloning=true) |
template<typename T > | |
void | addAuxiliary (std::string const &branchName, T *&pAux, int bufSize, bool allowCloning=true) |
void | addBranch (std::string const &branchName, std::string const &className, void const *&pProd, int splitLevel, int basketSize, bool produced) |
bool | checkEntriesInReadBranches (Long64_t expectedNumberOfEntries) const |
bool | checkIfFastClonable (TTree *inputTree) const |
bool | checkSplitLevelsAndBasketSizes (TTree *inputTree) const |
void | close () |
void | fastCloneTTree (TTree *in, std::string const &option) |
void | fillTree () |
bool | isValid () const |
void | maybeFastCloneTree (bool canFastClone, bool canFastCloneAux, TTree *tree, std::string const &option) |
RootOutputTree & | operator= (RootOutputTree const &)=delete |
void | optimizeBaskets (ULong64_t size) |
RootOutputTree (std::shared_ptr< TFile > filePtr, BranchType const &branchType, int splitLevel, int treeMaxVirtualSize, std::string const &processName=std::string()) | |
RootOutputTree (RootOutputTree const &)=delete | |
void | setAutoFlush (Long64_t size) |
void | setEntries () |
void | setSubBranchBasketSizes (TTree *inputTree) const |
TTree const * | tree () const |
TTree * | tree () |
bool | uncloned (std::string const &branchName) const |
void | writeTree () |
~RootOutputTree () | |
Static Public Member Functions | |
static TTree * | assignTTree (TFile *file, TTree *tree) |
static TTree * | makeTTree (TFile *filePtr, std::string const &name, int splitLevel) |
static void | writeTTree (TTree *tree) |
Static Private Member Functions | |
static void | fillTTree (std::vector< TBranch * > const &branches) |
Private Attributes | |
std::vector< TBranch * > | auxBranches_ |
std::set< std::string > | clonedReadBranchNames_ |
bool | currentlyFastCloning_ |
bool | fastCloneAuxBranches_ |
edm::propagate_const < std::shared_ptr< TFile > > | filePtr_ |
std::vector< TBranch * > | producedBranches_ |
std::vector< TBranch * > | readBranches_ |
edm::propagate_const< TTree * > | tree_ |
std::vector< TBranch * > | unclonedAuxBranches_ |
std::vector< TBranch * > | unclonedReadBranches_ |
Definition at line 24 of file RootOutputTree.h.
edm::RootOutputTree::RootOutputTree | ( | std::shared_ptr< TFile > | filePtr, |
BranchType const & | branchType, | ||
int | splitLevel, | ||
int | treeMaxVirtualSize, | ||
std::string const & | processName = std::string() |
||
) |
Definition at line 96 of file RootOutputTree.cc.
References tree_.
|
inline |
Definition at line 32 of file RootOutputTree.h.
|
delete |
|
inline |
Definition at line 38 of file RootOutputTree.h.
References auxBranches_, tree_, and unclonedAuxBranches_.
Referenced by edm::RootOutputFile::RootOutputFile().
|
inline |
Definition at line 47 of file RootOutputTree.h.
References auxBranches_, tree_, and unclonedAuxBranches_.
void edm::RootOutputTree::addBranch | ( | std::string const & | branchName, |
std::string const & | className, | ||
void const *& | pProd, | ||
int | splitLevel, | ||
int | basketSize, | ||
bool | produced | ||
) |
Definition at line 373 of file RootOutputTree.cc.
References cms::cuda::assert(), edm::BranchDescription::invalidBasketSize, edm::BranchDescription::invalidSplitLevel, producedBranches_, readBranches_, dtDQMMerge_cfg::splitLevel, and tree_.
Referenced by edm::RootOutputFile::RootOutputFile().
|
static |
Definition at line 116 of file RootOutputTree.cc.
References SiStripPI::max, and tree().
Referenced by makeTTree().
bool edm::RootOutputTree::checkEntriesInReadBranches | ( | Long64_t | expectedNumberOfEntries | ) | const |
Definition at line 247 of file RootOutputTree.cc.
References readBranches_.
Referenced by edm::RootOutputFile::writeIndexIntoFile().
bool edm::RootOutputTree::checkIfFastClonable | ( | TTree * | inputTree | ) | const |
Definition at line 183 of file RootOutputTree.cc.
References readBranches_.
Referenced by edm::RootOutputFile::beginInputFile().
bool edm::RootOutputTree::checkSplitLevelsAndBasketSizes | ( | TTree * | inputTree | ) | const |
Definition at line 135 of file RootOutputTree.cc.
References cms::cuda::assert(), and readBranches_.
Referenced by edm::RootOutputFile::beginInputFile().
void edm::RootOutputTree::close | ( | void | ) |
Definition at line 398 of file RootOutputTree.cc.
References auxBranches_, filePtr_, producedBranches_, readBranches_, tree_, unclonedAuxBranches_, and unclonedReadBranches_.
Referenced by esMonitoring.AsyncLineReaderMixin::handle_close(), and esMonitoring.FDJsonServer::handle_close().
void edm::RootOutputTree::fastCloneTTree | ( | TTree * | in, |
std::string const & | option | ||
) |
Definition at line 256 of file RootOutputTree.cc.
References cms::cuda::assert(), auxBranches_, Exception, fastCloneAuxBranches_, edm::errors::FatalRootError, dqmdumpme::last, edm::DuplicateTreeSentry::tree(), tree_, and unclonedAuxBranches_.
Referenced by maybeFastCloneTree().
void edm::RootOutputTree::fillTree | ( | ) |
Definition at line 359 of file RootOutputTree.cc.
References auxBranches_, currentlyFastCloning_, fastCloneAuxBranches_, fillTTree(), producedBranches_, tree_, unclonedAuxBranches_, and unclonedReadBranches_.
Referenced by core.AutoFillTreeProducer.AutoFillTreeProducer::process().
|
staticprivate |
Definition at line 331 of file RootOutputTree.cc.
References HcalObjRepresent::Fill(), and edm::for_all().
Referenced by fillTree().
bool edm::RootOutputTree::isValid | ( | ) | const |
Referenced by ntupleDataFormat._Object::_checkIsValid(), and core.AutoHandle.AutoHandle::ReallyLoad().
|
static |
Definition at line 124 of file RootOutputTree.cc.
References assignTTree(), Exception, edm::errors::FatalRootError, dtDQMMerge_cfg::splitLevel, and tree().
Referenced by edm::RootOutputFile::RootOutputFile().
void edm::RootOutputTree::maybeFastCloneTree | ( | bool | canFastClone, |
bool | canFastCloneAux, | ||
TTree * | tree, | ||
std::string const & | option | ||
) |
Definition at line 337 of file RootOutputTree.cc.
References clonedReadBranchNames_, currentlyFastCloning_, fastCloneAuxBranches_, fastCloneTTree(), readBranches_, AlCaHLTBitMon_QueryRunRegistry::string, tree_, and unclonedReadBranches_.
Referenced by edm::RootOutputFile::beginInputFile().
|
delete |
|
inline |
Definition at line 101 of file RootOutputTree.h.
References tree_.
Referenced by edm::RootOutputFile::writeLuminosityBlock(), and edm::RootOutputFile::writeRun().
|
inline |
Definition at line 103 of file RootOutputTree.h.
References tree_.
Referenced by edm::RootOutputFile::RootOutputFile().
|
inline |
Definition at line 90 of file RootOutputTree.h.
References tree_.
Referenced by edm::RootOutputFile::respondToCloseInputFile(), and edm::RootOutputFile::writeEventAuxiliary().
void edm::RootOutputTree::setSubBranchBasketSizes | ( | TTree * | inputTree | ) | const |
Definition at line 231 of file RootOutputTree.cc.
References readBranches_.
Referenced by edm::RootOutputFile::beginInputFile().
|
inline |
Definition at line 86 of file RootOutputTree.h.
References edm::propagate_const< T >::get(), and tree_.
Referenced by assignTTree(), ZJetsTreeAnalyzer.ZJetsTreeAnalyzer::beginLoop(), MetTreeProducer.MetTreeProducer::declareVariables(), core.AutoFillTreeProducer.AutoFillTreeProducer::declareVariables(), core.AutoFillTreeProducer.AutoFillTreeProducer::fillTree(), makeTTree(), ZJetsTreeAnalyzer.ZJetsTreeAnalyzer::process(), MetTreeProducer.MetTreeProducer::process(), edm::RootOutputFile::RootOutputFile(), python.cmstools.EventTree::SetAlias(), edm::RootOutputFile::writeEventAuxiliary(), and writeTree().
|
inline |
Definition at line 88 of file RootOutputTree.h.
References edm::propagate_const< T >::get(), and tree_.
Referenced by ZJetsTreeAnalyzer.ZJetsTreeAnalyzer::beginLoop(), MetTreeProducer.MetTreeProducer::declareVariables(), core.AutoFillTreeProducer.AutoFillTreeProducer::declareVariables(), core.AutoFillTreeProducer.AutoFillTreeProducer::fillTree(), ZJetsTreeAnalyzer.ZJetsTreeAnalyzer::process(), MetTreeProducer.MetTreeProducer::process(), and python.cmstools.EventTree::SetAlias().
|
inline |
Definition at line 95 of file RootOutputTree.h.
References clonedReadBranchNames_.
void edm::RootOutputTree::writeTree | ( | ) |
|
static |
Definition at line 321 of file RootOutputTree.cc.
References edm::setRefCoreStreamer().
Referenced by edm::RootOutputFile::finishEndFile(), and writeTree().
|
private |
Definition at line 115 of file RootOutputTree.h.
Referenced by addAuxiliary(), close(), fastCloneTTree(), and fillTree().
|
private |
Definition at line 119 of file RootOutputTree.h.
Referenced by maybeFastCloneTree(), and uncloned().
|
private |
Definition at line 120 of file RootOutputTree.h.
Referenced by fillTree(), and maybeFastCloneTree().
|
private |
Definition at line 121 of file RootOutputTree.h.
Referenced by fastCloneTTree(), fillTree(), and maybeFastCloneTree().
|
private |
Definition at line 110 of file RootOutputTree.h.
Referenced by close().
|
private |
Definition at line 113 of file RootOutputTree.h.
Referenced by addBranch(), close(), and fillTree().
|
private |
Definition at line 114 of file RootOutputTree.h.
Referenced by addBranch(), checkEntriesInReadBranches(), checkIfFastClonable(), checkSplitLevelsAndBasketSizes(), close(), maybeFastCloneTree(), and setSubBranchBasketSizes().
|
private |
Definition at line 111 of file RootOutputTree.h.
Referenced by addAuxiliary(), addBranch(), close(), fastCloneTTree(), fillTree(), maybeFastCloneTree(), optimizeBaskets(), RootOutputTree(), setAutoFlush(), setEntries(), and tree().
|
private |
Definition at line 116 of file RootOutputTree.h.
Referenced by addAuxiliary(), close(), fastCloneTTree(), and fillTree().
|
private |
Definition at line 117 of file RootOutputTree.h.
Referenced by close(), fillTree(), and maybeFastCloneTree().