#include <ShallowTree.h>
Classes | |
class | BranchConnector |
class | TypedBranchConnector |
Public Types | |
enum | LEAFTYPE { BOOL =1, BOOL_V, SHORT, SHORT_V, U_SHORT, U_SHORT_V, INT, INT_V, U_INT, U_INT_V, FLOAT, FLOAT_V, DOUBLE, DOUBLE_V, LONG, LONG_V, U_LONG, U_LONG_V, CHAR, CHAR_V, U_CHAR, U_CHAR_V } |
Public Types inherited from edm::EDAnalyzer | |
typedef EDAnalyzer | ModuleType |
Public Types inherited from edm::EDConsumerBase | |
typedef ProductLabels | Labels |
Public Member Functions | |
ShallowTree (const edm::ParameterSet &iConfig) | |
Public Member Functions inherited from edm::EDAnalyzer | |
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
EDAnalyzer () | |
ModuleDescription const & | moduleDescription () const |
std::string | workerType () const |
~EDAnalyzer () override | |
Public Member Functions inherited from edm::EDConsumerBase | |
std::vector< ConsumesInfo > | consumesInfo () const |
void | convertCurrentProcessAlias (std::string const &processName) |
Convert "@currentProcess" in InputTag process names to the actual current process name. More... | |
EDConsumerBase () | |
EDConsumerBase (EDConsumerBase const &)=delete | |
EDConsumerBase (EDConsumerBase &&)=default | |
ProductResolverIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
void | itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
void | itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
std::vector< ProductResolverIndexAndSkipBit > const & | itemsToGetFrom (BranchType iType) const |
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
void | modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const |
EDConsumerBase const & | operator= (EDConsumerBase const &)=delete |
EDConsumerBase & | operator= (EDConsumerBase &&)=default |
bool | registeredToConsume (ProductResolverIndex, bool, BranchType) const |
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
void | updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet) |
virtual | ~EDConsumerBase () noexcept(false) |
Private Member Functions | |
void | analyze (const edm::Event &, const edm::EventSetup &) override |
void | beginJob () override |
template<class T > | |
void | eat (edm::BranchDescription const *desc) |
void | endJob () override |
Private Attributes | |
std::vector< BranchConnector * > | connectors_ |
edm::Service< TFileService > | fs_ |
TTree * | tree_ |
Additional Inherited Members | |
Static Public Member Functions inherited from edm::EDAnalyzer | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &) |
Protected Member Functions inherited from edm::EDConsumerBase | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
ConsumesCollector | consumesCollector () |
Use a ConsumesCollector to gather consumes information from helper functions. More... | |
template<typename ProductType , BranchType B = InEvent> | |
void | consumesMany () |
void | consumesMany (const TypeToGet &id) |
template<BranchType B> | |
void | consumesMany (const TypeToGet &id) |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
Makes a tree out of C++ standard types and vectors of C++ standard types
This class, which is an EDAnalyzer, takes the same "keep" and "drop" outputCommands parameter as the PoolOutputSource, making a tree of the selected variables, which it obtains from the EDM tree.
See the file python/test_cfg.py for an example configuration.
See the file doc/README for more detailed documentation, including advantages, disadvantages, and use philosophy.
Definition at line 33 of file ShallowTree.h.
Enumerator | |
---|---|
BOOL | |
BOOL_V | |
SHORT | |
SHORT_V | |
U_SHORT | |
U_SHORT_V | |
INT | |
INT_V | |
U_INT | |
U_INT_V | |
FLOAT | |
FLOAT_V | |
DOUBLE | |
DOUBLE_V | |
LONG | |
LONG_V | |
U_LONG | |
U_LONG_V | |
CHAR | |
CHAR_V | |
U_CHAR | |
U_CHAR_V |
Definition at line 69 of file ShallowTree.h.
|
explicit |
Definition at line 10 of file ShallowTree.cc.
References edm::ConstProductRegistry::allBranchDescriptions(), analyze(), BOOL, BOOL_V, CHAR, CHAR_V, edm::errors::Configuration, connectors_, DOUBLE, DOUBLE_V, Exception, FLOAT, FLOAT_V, fs_, edm::ProductSelector::initialize(), INT, INT_V, LONG, LONG_V, TFileService::make(), edm::second(), edm::ProductSelector::selected(), corrVsCorr::selection, SHORT, SHORT_V, AlCaHLTBitMon_QueryRunRegistry::string, tree_, U_CHAR, U_CHAR_V, U_INT, U_INT_V, U_LONG, U_LONG_V, U_SHORT, and U_SHORT_V.
|
overrideprivate |
Definition at line 98 of file ShallowTree.cc.
References ShallowTree::TypedBranchConnector< T >::connect(), connectors_, and tree_.
Referenced by ShallowTree().
|
overrideprivatevirtual |
Reimplemented from edm::EDAnalyzer.
Definition at line 128 of file ShallowTree.cc.
Referenced by ShallowTree::TypedBranchConnector< T >::TypedBranchConnector().
|
inlineprivate |
Definition at line 40 of file ShallowTree.h.
References edm::BranchDescription::moduleLabel(), and edm::BranchDescription::productInstanceName().
|
inlineoverrideprivatevirtual |
Reimplemented from edm::EDAnalyzer.
Definition at line 37 of file ShallowTree.h.
Referenced by o2olib.O2ORunMgr::executeJob().
|
private |
Definition at line 64 of file ShallowTree.h.
Referenced by analyze(), and ShallowTree().
|
private |
Definition at line 62 of file ShallowTree.h.
Referenced by ShallowTree().
|
private |
Definition at line 63 of file ShallowTree.h.
Referenced by analyze(), and ShallowTree().