ATLAS Offline Software
|
#include <xAODTEvent.h>
Public Types | |
enum | EAuxMode { kBranchAccess = 0, kClassAccess = 1, kAthenaAccess = 2, kUndefinedAccess = 3 } |
Auxiliary store "mode". More... | |
using | sgkey_t = SG::sgkey_t |
Public Member Functions | |
TEvent (EAuxMode mode=kUndefinedAccess) | |
Default constructor. More... | |
TEvent (::TFile *file, EAuxMode mode=kUndefinedAccess) | |
Constructor connecting the object to an input TFile. More... | |
TEvent (::TTree *tree, EAuxMode mode=kUndefinedAccess) | |
Constructor connecting the objects to an input TTree/TChain With this constructor possibility to read augmented files by providing the main tree and having set friend trees before providing the tree to TEvent. More... | |
TEvent (const TEvent &parent)=delete | |
Do not allow copy-constructing this object: More... | |
const void * | getInputObject (SG::sgkey_t key, const std::type_info &ti, bool silent=false) override |
Function for retrieving an input object in a non-template way. More... | |
const void * | getInputObject (const std::string &key, const std::type_info &ti, ::Bool_t silent=kFALSE, ::Bool_t metadata=kFALSE) |
Function for retrieving an input object in a non-template way. More... | |
EAuxMode | auxMode () const |
Get what auxiliary access mode the object was constructed with. More... | |
std::string | dump () |
Function creating a user-readable dump of the current input. More... | |
void | printIOStats () const |
Function printing the I/O statistics of the current process. More... | |
void | setPrintEventProxyWarnings (bool) |
Function to silence warnings associated with broken element links. More... | |
template<typename T > | |
bool | retrieve (const T *&obj, sgkey_t key=DEFAULT_KEY, bool silent=false) |
Function retrieving an object from the event (constant version) More... | |
template<typename T > | |
bool | retrieve (const T *&obj, const std::string &key, bool silent=false) |
Function retrieving an object from the event (constant version) More... | |
template<typename T > | |
void | keys (std::vector< std::string > &vkeys, bool metadata=false) const |
provide list of all keys associated with provided type. More... | |
Setup functions | |
StatusCode | readFrom (::TFile *file, Bool_t useTreeCache=kTRUE, const char *treeName=EVENT_TREE_NAME) |
Connect the object to a new input file. More... | |
StatusCode | readFrom (::TTree *tree, Bool_t useTreeCache=kTRUE) |
Connect the object to a new input tree/chain. More... | |
StatusCode | writeTo (::TFile *file, Int_t autoFlush=200, const char *treeName=EVENT_TREE_NAME) |
Connect the object to an output file. More... | |
StatusCode | finishWritingTo (::TFile *file) |
Finish writing to an output file. More... | |
void | setActive () const |
Set this event object as the currently active one. More... | |
void | setAuxItemList (const std::string &containerKey, const std::string &itemList) |
Configure which dynamic variables to write out for a given store. More... | |
StatusCode | addListener (TVirtualIncidentListener *listener) |
Register an incident listener object. More... | |
StatusCode | removeListener (TVirtualIncidentListener *listener) |
Remove an incident listener object. More... | |
void | clearListeners () |
Remove all listeners from the object. More... | |
StatusCode | addNameRemap (const std::string &onfile, const std::string &newName) |
Add a name re-mapping rule. More... | |
void | clearNameRemap () |
Clear the current name re-mapping. More... | |
void | printNameRemap () const |
Print the current name re-mapping rules. More... | |
Event data accessor/modifier functions | |
template<typename T > | |
::Bool_t | contains (const std::string &key) |
Function checking if an object is available from the store. More... | |
template<typename T > | |
::Bool_t | transientContains (const std::string &key) const |
Function checking if an object is already in memory. More... | |
template<typename T > | |
StatusCode | retrieve (const T *&obj, const std::string &key) |
Retrieve either an input or an output object from the event. More... | |
template<typename T > | |
StatusCode | retrieve (T *&obj, const std::string &key) |
Retrieve an output object from the event. More... | |
template<typename T > | |
StatusCode | record (T *obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Add an output object to the event. More... | |
template<typename T > | |
StatusCode | record (std::unique_ptr< T > obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Add an output object to the event, explicitly taking ownership of it. More... | |
SG::IAuxStore * | recordAux (const std::string &key, SG::IAuxStoreHolder::AuxStoreType type=SG::IAuxStoreHolder::AST_ContainerStore, Int_t basketSize=32000, Int_t splitLevel=0) |
Add an auxiliary store object to the output. More... | |
StatusCode | copy (const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Copy an object directly from the input to the output. More... | |
StatusCode | copy (::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Copy all (ROOT readable) objects directly from the input to the output. More... | |
Metadata accessor/modifier functions | |
template<typename T > | |
::Bool_t | containsMeta (const std::string &key) |
Function checking if a meta-object is available from the store. More... | |
template<typename T > | |
::Bool_t | transientContainsMeta (const std::string &key) const |
Function checking if a meta-object is already in memory. More... | |
template<typename T > | |
StatusCode | retrieveMetaInput (const T *&obj, const std::string &key) |
Retrieve an input metadata object. More... | |
template<typename T > | |
StatusCode | retrieveMetaOutput (const T *&obj, const std::string &key) |
Retrieve an output metadata object. More... | |
template<typename T > | |
StatusCode | retrieveMetaOutput (T *&obj, const std::string &key) |
Retrieve an output metadata object. More... | |
template<typename T > | |
StatusCode | recordMeta (T *obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=1) |
Add an object to the output file's metadata. More... | |
template<typename T > | |
StatusCode | recordMeta (std::unique_ptr< T > obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=1) |
Add an object to the output file's metadata, explicitly taking ownership of it. More... | |
Persistent data accessor/modifier functions | |
::Long64_t | getEntries () const |
Get how many entries are available from the current input file(s) More... | |
::Int_t | getEntry (::Long64_t entry, ::Int_t getall=0) |
Function loading a given entry of the input TTree. More... | |
::Long64_t | getFiles () const |
Get how many files are available on the currently defined input. More... | |
::Int_t | getFile (::Long64_t file, ::Int_t getall=0) |
Load the first event for a given file from the input TChain. More... | |
::Int_t | fill () |
Function filling one event into the output tree. More... | |
const EventFormat * | inputEventFormat () const |
Get information about the input objects. More... | |
const EventFormat * | outputEventFormat () const |
Get information about the output objects. More... | |
Setup functions | |
StatusCode | readFrom (::TFile *file, Bool_t useTreeCache=kTRUE, const char *treeName=EVENT_TREE_NAME) |
Connect the object to a new input file. More... | |
StatusCode | readFrom (::TTree *tree, Bool_t useTreeCache=kTRUE) |
Connect the object to a new input tree/chain. More... | |
StatusCode | writeTo (::TFile *file, Int_t autoFlush=200, const char *treeName=EVENT_TREE_NAME) |
Connect the object to an output file. More... | |
StatusCode | finishWritingTo (::TFile *file) |
Finish writing to an output file. More... | |
void | setActive () const |
Set this event object as the currently active one. More... | |
void | setAuxItemList (const std::string &containerKey, const std::string &itemList) |
Configure which dynamic variables to write out for a given store. More... | |
StatusCode | addListener (TVirtualIncidentListener *listener) |
Register an incident listener object. More... | |
StatusCode | removeListener (TVirtualIncidentListener *listener) |
Remove an incident listener object. More... | |
void | clearListeners () |
Remove all listeners from the object. More... | |
StatusCode | addNameRemap (const std::string &onfile, const std::string &newName) |
Add a name re-mapping rule. More... | |
void | clearNameRemap () |
Clear the current name re-mapping. More... | |
void | printNameRemap () const |
Print the current name re-mapping rules. More... | |
Event data accessor/modifier functions | |
template<typename T > | |
::Bool_t | contains (const std::string &key) |
Function checking if an object is available from the store. More... | |
template<typename T > | |
::Bool_t | transientContains (const std::string &key) const |
Function checking if an object is already in memory. More... | |
template<typename T > | |
StatusCode | retrieve (const T *&obj, const std::string &key) |
Retrieve either an input or an output object from the event. More... | |
template<typename T > | |
StatusCode | retrieve (T *&obj, const std::string &key) |
Retrieve an output object from the event. More... | |
template<typename T > | |
StatusCode | record (T *obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Add an output object to the event. More... | |
template<typename T > | |
StatusCode | record (std::unique_ptr< T > obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Add an output object to the event, explicitly taking ownership of it. More... | |
SG::IAuxStore * | recordAux (const std::string &key, SG::IAuxStoreHolder::AuxStoreType type=SG::IAuxStoreHolder::AST_ContainerStore, Int_t basketSize=32000, Int_t splitLevel=0) |
Add an auxiliary store object to the output. More... | |
StatusCode | copy (const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Copy an object directly from the input to the output. More... | |
StatusCode | copy (::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Copy all (ROOT readable) objects directly from the input to the output. More... | |
Metadata accessor/modifier functions | |
template<typename T > | |
::Bool_t | containsMeta (const std::string &key) |
Function checking if a meta-object is available from the store. More... | |
template<typename T > | |
::Bool_t | transientContainsMeta (const std::string &key) const |
Function checking if a meta-object is already in memory. More... | |
template<typename T > | |
StatusCode | retrieveMetaInput (const T *&obj, const std::string &key) |
Retrieve an input metadata object. More... | |
template<typename T > | |
StatusCode | retrieveMetaOutput (const T *&obj, const std::string &key) |
Retrieve an output metadata object. More... | |
template<typename T > | |
StatusCode | retrieveMetaOutput (T *&obj, const std::string &key) |
Retrieve an output metadata object. More... | |
template<typename T > | |
StatusCode | recordMeta (T *obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=1) |
Add an object to the output file's metadata. More... | |
template<typename T > | |
StatusCode | recordMeta (std::unique_ptr< T > obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=1) |
Add an object to the output file's metadata, explicitly taking ownership of it. More... | |
Persistent data accessor/modifier functions | |
::Long64_t | getEntries () const |
Get how many entries are available from the current input file(s) More... | |
::Int_t | getEntry (::Long64_t entry, ::Int_t getall=0) |
Function loading a given entry of the input TTree. More... | |
::Long64_t | getFiles () const |
Get how many files are available on the currently defined input. More... | |
::Int_t | getFile (::Long64_t file, ::Int_t getall=0) |
Load the first event for a given file from the input TChain. More... | |
::Int_t | fill () |
Function filling one event into the output tree. More... | |
const EventFormat * | inputEventFormat () const |
Get information about the input objects. More... | |
const EventFormat * | outputEventFormat () const |
Get information about the output objects. More... | |
Setup functions | |
StatusCode | readFrom (::TFile *file, Bool_t useTreeCache=kTRUE, const char *treeName=EVENT_TREE_NAME) |
Connect the object to a new input file. More... | |
StatusCode | readFrom (::TTree *tree, Bool_t useTreeCache=kTRUE) |
Connect the object to a new input tree/chain. More... | |
StatusCode | writeTo (::TFile *file, Int_t autoFlush=200, const char *treeName=EVENT_TREE_NAME) |
Connect the object to an output file. More... | |
StatusCode | finishWritingTo (::TFile *file) |
Finish writing to an output file. More... | |
void | setActive () const |
Set this event object as the currently active one. More... | |
void | setAuxItemList (const std::string &containerKey, const std::string &itemList) |
Configure which dynamic variables to write out for a given store. More... | |
StatusCode | addListener (TVirtualIncidentListener *listener) |
Register an incident listener object. More... | |
StatusCode | removeListener (TVirtualIncidentListener *listener) |
Remove an incident listener object. More... | |
void | clearListeners () |
Remove all listeners from the object. More... | |
StatusCode | addNameRemap (const std::string &onfile, const std::string &newName) |
Add a name re-mapping rule. More... | |
void | clearNameRemap () |
Clear the current name re-mapping. More... | |
void | printNameRemap () const |
Print the current name re-mapping rules. More... | |
Event data accessor/modifier functions | |
template<typename T > | |
::Bool_t | contains (const std::string &key) |
Function checking if an object is available from the store. More... | |
template<typename T > | |
::Bool_t | transientContains (const std::string &key) const |
Function checking if an object is already in memory. More... | |
template<typename T > | |
StatusCode | retrieve (const T *&obj, const std::string &key) |
Retrieve either an input or an output object from the event. More... | |
template<typename T > | |
StatusCode | retrieve (T *&obj, const std::string &key) |
Retrieve an output object from the event. More... | |
template<typename T > | |
StatusCode | record (T *obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Add an output object to the event. More... | |
template<typename T > | |
StatusCode | record (std::unique_ptr< T > obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Add an output object to the event, explicitly taking ownership of it. More... | |
SG::IAuxStore * | recordAux (const std::string &key, SG::IAuxStoreHolder::AuxStoreType type=SG::IAuxStoreHolder::AST_ContainerStore, Int_t basketSize=32000, Int_t splitLevel=0) |
Add an auxiliary store object to the output. More... | |
StatusCode | copy (const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Copy an object directly from the input to the output. More... | |
StatusCode | copy (::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Copy all (ROOT readable) objects directly from the input to the output. More... | |
Metadata accessor/modifier functions | |
template<typename T > | |
::Bool_t | containsMeta (const std::string &key) |
Function checking if a meta-object is available from the store. More... | |
template<typename T > | |
::Bool_t | transientContainsMeta (const std::string &key) const |
Function checking if a meta-object is already in memory. More... | |
template<typename T > | |
StatusCode | retrieveMetaInput (const T *&obj, const std::string &key) |
Retrieve an input metadata object. More... | |
template<typename T > | |
StatusCode | retrieveMetaOutput (const T *&obj, const std::string &key) |
Retrieve an output metadata object. More... | |
template<typename T > | |
StatusCode | retrieveMetaOutput (T *&obj, const std::string &key) |
Retrieve an output metadata object. More... | |
template<typename T > | |
StatusCode | recordMeta (T *obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=1) |
Add an object to the output file's metadata. More... | |
template<typename T > | |
StatusCode | recordMeta (std::unique_ptr< T > obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=1) |
Add an object to the output file's metadata, explicitly taking ownership of it. More... | |
Persistent data accessor/modifier functions | |
::Long64_t | getEntries () const |
Get how many entries are available from the current input file(s) More... | |
::Int_t | getEntry (::Long64_t entry, ::Int_t getall=0) |
Function loading a given entry of the input TTree. More... | |
::Long64_t | getFiles () const |
Get how many files are available on the currently defined input. More... | |
::Int_t | getFile (::Long64_t file, ::Int_t getall=0) |
Load the first event for a given file from the input TChain. More... | |
::Int_t | fill () |
Function filling one event into the output tree. More... | |
const EventFormat * | inputEventFormat () const |
Get information about the input objects. More... | |
const EventFormat * | outputEventFormat () const |
Get information about the output objects. More... | |
Setup functions | |
StatusCode | readFrom (::TFile *file, Bool_t useTreeCache=kTRUE, const char *treeName=EVENT_TREE_NAME) |
Connect the object to a new input file. More... | |
StatusCode | readFrom (::TTree *tree, Bool_t useTreeCache=kTRUE) |
Connect the object to a new input tree/chain. More... | |
StatusCode | writeTo (::TFile *file, Int_t autoFlush=200, const char *treeName=EVENT_TREE_NAME) |
Connect the object to an output file. More... | |
StatusCode | finishWritingTo (::TFile *file) |
Finish writing to an output file. More... | |
void | setActive () const |
Set this event object as the currently active one. More... | |
void | setAuxItemList (const std::string &containerKey, const std::string &itemList) |
Configure which dynamic variables to write out for a given store. More... | |
StatusCode | addListener (TVirtualIncidentListener *listener) |
Register an incident listener object. More... | |
StatusCode | removeListener (TVirtualIncidentListener *listener) |
Remove an incident listener object. More... | |
void | clearListeners () |
Remove all listeners from the object. More... | |
StatusCode | addNameRemap (const std::string &onfile, const std::string &newName) |
Add a name re-mapping rule. More... | |
void | clearNameRemap () |
Clear the current name re-mapping. More... | |
void | printNameRemap () const |
Print the current name re-mapping rules. More... | |
Event data accessor/modifier functions | |
template<typename T > | |
::Bool_t | contains (const std::string &key) |
Function checking if an object is available from the store. More... | |
template<typename T > | |
::Bool_t | transientContains (const std::string &key) const |
Function checking if an object is already in memory. More... | |
template<typename T > | |
StatusCode | retrieve (const T *&obj, const std::string &key) |
Retrieve either an input or an output object from the event. More... | |
template<typename T > | |
StatusCode | retrieve (T *&obj, const std::string &key) |
Retrieve an output object from the event. More... | |
template<typename T > | |
StatusCode | record (T *obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Add an output object to the event. More... | |
template<typename T > | |
StatusCode | record (std::unique_ptr< T > obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Add an output object to the event, explicitly taking ownership of it. More... | |
SG::IAuxStore * | recordAux (const std::string &key, SG::IAuxStoreHolder::AuxStoreType type=SG::IAuxStoreHolder::AST_ContainerStore, Int_t basketSize=32000, Int_t splitLevel=0) |
Add an auxiliary store object to the output. More... | |
StatusCode | copy (const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Copy an object directly from the input to the output. More... | |
StatusCode | copy (::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Copy all (ROOT readable) objects directly from the input to the output. More... | |
Metadata accessor/modifier functions | |
template<typename T > | |
::Bool_t | containsMeta (const std::string &key) |
Function checking if a meta-object is available from the store. More... | |
template<typename T > | |
::Bool_t | transientContainsMeta (const std::string &key) const |
Function checking if a meta-object is already in memory. More... | |
template<typename T > | |
StatusCode | retrieveMetaInput (const T *&obj, const std::string &key) |
Retrieve an input metadata object. More... | |
template<typename T > | |
StatusCode | retrieveMetaOutput (const T *&obj, const std::string &key) |
Retrieve an output metadata object. More... | |
template<typename T > | |
StatusCode | retrieveMetaOutput (T *&obj, const std::string &key) |
Retrieve an output metadata object. More... | |
template<typename T > | |
StatusCode | recordMeta (T *obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=1) |
Add an object to the output file's metadata. More... | |
template<typename T > | |
StatusCode | recordMeta (std::unique_ptr< T > obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=1) |
Add an object to the output file's metadata, explicitly taking ownership of it. More... | |
Persistent data accessor/modifier functions | |
::Long64_t | getEntries () const |
Get how many entries are available from the current input file(s) More... | |
::Int_t | getEntry (::Long64_t entry, ::Int_t getall=0) |
Function loading a given entry of the input TTree. More... | |
::Long64_t | getFiles () const |
Get how many files are available on the currently defined input. More... | |
::Int_t | getFile (::Long64_t file, ::Int_t getall=0) |
Load the first event for a given file from the input TChain. More... | |
::Int_t | fill () |
Function filling one event into the output tree. More... | |
const EventFormat * | inputEventFormat () const |
Get information about the input objects. More... | |
const EventFormat * | outputEventFormat () const |
Get information about the output objects. More... | |
Setup functions | |
StatusCode | readFrom (::TFile *file, Bool_t useTreeCache=kTRUE, const char *treeName=EVENT_TREE_NAME) |
Connect the object to a new input file. More... | |
StatusCode | readFrom (::TTree *tree, Bool_t useTreeCache=kTRUE) |
Connect the object to a new input tree/chain. More... | |
StatusCode | writeTo (::TFile *file, Int_t autoFlush=200, const char *treeName=EVENT_TREE_NAME) |
Connect the object to an output file. More... | |
StatusCode | finishWritingTo (::TFile *file) |
Finish writing to an output file. More... | |
void | setActive () const |
Set this event object as the currently active one. More... | |
void | setAuxItemList (const std::string &containerKey, const std::string &itemList) |
Configure which dynamic variables to write out for a given store. More... | |
StatusCode | addListener (TVirtualIncidentListener *listener) |
Register an incident listener object. More... | |
StatusCode | removeListener (TVirtualIncidentListener *listener) |
Remove an incident listener object. More... | |
void | clearListeners () |
Remove all listeners from the object. More... | |
StatusCode | addNameRemap (const std::string &onfile, const std::string &newName) |
Add a name re-mapping rule. More... | |
void | clearNameRemap () |
Clear the current name re-mapping. More... | |
void | printNameRemap () const |
Print the current name re-mapping rules. More... | |
Event data accessor/modifier functions | |
template<typename T > | |
::Bool_t | contains (const std::string &key) |
Function checking if an object is available from the store. More... | |
template<typename T > | |
::Bool_t | transientContains (const std::string &key) const |
Function checking if an object is already in memory. More... | |
template<typename T > | |
StatusCode | retrieve (const T *&obj, const std::string &key) |
Retrieve either an input or an output object from the event. More... | |
template<typename T > | |
StatusCode | retrieve (T *&obj, const std::string &key) |
Retrieve an output object from the event. More... | |
template<typename T > | |
StatusCode | record (T *obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Add an output object to the event. More... | |
template<typename T > | |
StatusCode | record (std::unique_ptr< T > obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Add an output object to the event, explicitly taking ownership of it. More... | |
SG::IAuxStore * | recordAux (const std::string &key, SG::IAuxStoreHolder::AuxStoreType type=SG::IAuxStoreHolder::AST_ContainerStore, Int_t basketSize=32000, Int_t splitLevel=0) |
Add an auxiliary store object to the output. More... | |
StatusCode | copy (const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Copy an object directly from the input to the output. More... | |
StatusCode | copy (::Int_t basketSize=32000, ::Int_t splitLevel=0) |
Copy all (ROOT readable) objects directly from the input to the output. More... | |
Metadata accessor/modifier functions | |
template<typename T > | |
::Bool_t | containsMeta (const std::string &key) |
Function checking if a meta-object is available from the store. More... | |
template<typename T > | |
::Bool_t | transientContainsMeta (const std::string &key) const |
Function checking if a meta-object is already in memory. More... | |
template<typename T > | |
StatusCode | retrieveMetaInput (const T *&obj, const std::string &key) |
Retrieve an input metadata object. More... | |
template<typename T > | |
StatusCode | retrieveMetaOutput (const T *&obj, const std::string &key) |
Retrieve an output metadata object. More... | |
template<typename T > | |
StatusCode | retrieveMetaOutput (T *&obj, const std::string &key) |
Retrieve an output metadata object. More... | |
template<typename T > | |
StatusCode | recordMeta (T *obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=1) |
Add an object to the output file's metadata. More... | |
template<typename T > | |
StatusCode | recordMeta (std::unique_ptr< T > obj, const std::string &key, ::Int_t basketSize=32000, ::Int_t splitLevel=1) |
Add an object to the output file's metadata, explicitly taking ownership of it. More... | |
Persistent data accessor/modifier functions | |
::Long64_t | getEntries () const |
Get how many entries are available from the current input file(s) More... | |
::Int_t | getEntry (::Long64_t entry, ::Int_t getall=0) |
Function loading a given entry of the input TTree. More... | |
::Long64_t | getFiles () const |
Get how many files are available on the currently defined input. More... | |
::Int_t | getFile (::Long64_t file, ::Int_t getall=0) |
Load the first event for a given file from the input TChain. More... | |
::Int_t | fill () |
Function filling one event into the output tree. More... | |
const EventFormat * | inputEventFormat () const |
Get information about the input objects. More... | |
const EventFormat * | outputEventFormat () const |
Get information about the output objects. More... | |
Static Public Attributes | |
static constexpr sgkey_t | DEFAULT_KEY = ~static_cast<sgkey_t>(0) |
Key for retrieving the "default" object of a given type. More... | |
static constexpr sgkey_t | KEY_MASK = DEFAULT_KEY >> 2 |
Mask for the keys, used mostly internally. More... | |
Protected Types | |
typedef std::unordered_map< std::string, TVirtualManager * > | Object_t |
Definition of the internal data structure type. More... | |
typedef std::vector< TVirtualIncidentListener * > | Listener_t |
Definition of the structure type holding on to listeners. More... | |
Protected Member Functions | |
::Bool_t | contains (const std::string &key, const std::type_info &ti, ::Bool_t metadata=kFALSE) |
Internal function checking if an object is in the input. More... | |
::Bool_t | transientContains (const std::string &key, const std::type_info &ti, ::Bool_t metadata=kFALSE) const |
Internal function checking if an object is already in memory. More... | |
StatusCode | record (TAuxStore *store, const std::string &key, ::Int_t basketSize, ::Int_t splitLevel, ::Bool_t ownsStore=kFALSE) |
Internal function for adding an auxiliary store object to the output. More... | |
void * | getOutputObject (const std::string &key, const std::type_info &ti, ::Bool_t metadata=kFALSE) const |
Function for retrieving an output object in a non-template way. More... | |
const void * | getInputObject (const std::string &key, const std::type_info &ti, ::Bool_t silent=kFALSE, ::Bool_t metadata=kFALSE) |
Function for retrieving an input object in a non-template way. More... | |
StatusCode | initStats () |
Function to initialise the statistics for all Tree content. More... | |
StatusCode | connectBranch (const std::string &key, ::Bool_t silent=kFALSE) |
Function setting up access to a particular branch. More... | |
StatusCode | connectMetaBranch (const std::string &key, ::Bool_t silent=kFALSE) |
Function setting up access to a branch in the metadata tree. More... | |
StatusCode | connectAux (const std::string &prefix, ::Bool_t standalone) |
Function setting up access to a set of auxiliary branches. More... | |
StatusCode | connectMetaAux (const std::string &prefix, ::Bool_t standalone) |
Function setting up access to a set of auxiliary branches for a metadata object. More... | |
StatusCode | setUpDynamicStore (TObjectManager &mgr, ::TTree *tree) |
Function adding dynamic variable reading capabilities to an auxiliary store object. More... | |
StatusCode | setAuxStore (TObjectManager &mgr, ::Bool_t metadata=kFALSE) |
Function connecting a DV object to its auxiliary store. More... | |
StatusCode | putAux (::TTree &outTree, TVirtualManager &mgr, ::Int_t basketSize=32000, ::Int_t splitLevel=0, ::Bool_t metadata=kFALSE) |
Function saving the dynamically created auxiliary properties. More... | |
Functions implementing the IProxyDict interface | |
SG::DataProxy * | proxy (const void *const pTransient) const override |
get proxy for a given data object address in memory More... | |
SG::DataProxy * | proxy (const CLID &id, const std::string &key) const override |
get proxy with given id and key. Returns 0 to flag failure More... | |
SG::DataProxy * | proxy_exact (SG::sgkey_t sgkey) const override |
Get proxy given a hashed key+clid. More... | |
StatusCode | addToStore (CLID id, SG::DataProxy *proxy) override |
Add a new proxy to the store. More... | |
std::vector< const SG::DataProxy * > | proxies () const override |
return the list of all current proxies in store More... | |
SG::sgkey_t | stringToKey (const std::string &str, CLID clid) override |
Find the string corresponding to a given key. More... | |
const std::string * | keyToString (SG::sgkey_t key) const override |
Find the string corresponding to a given key. More... | |
const std::string * | keyToString (SG::sgkey_t key, CLID &clid) const override |
Find the string and CLID corresponding to a given key. More... | |
void | registerKey (SG::sgkey_t key, const std::string &str, CLID clid) override |
Remember an additional mapping from key to string/CLID. More... | |
SG::DataProxy * | recordObject (SG::DataObjectSharedPtr< DataObject > obj, const std::string &key, bool allowMods, bool returnExisting) override |
Record an object in the store. More... | |
const std::string & | name () const override |
Get the name of the instance. More... | |
Helper functions for the IProxyDict interface | |
const xAOD::EventFormatElement * | getEventFormatElement (SG::sgkey_t sgkey) const |
Get the metadata object for a given "SG key". More... | |
const BranchInfo * | getBranchInfo (SG::sgkey_t sgkey) const |
Get the object describing one object/branch. More... | |
Functions implementing the IProxyDict interface | |
SG::DataProxy * | proxy (const void *const pTransient) const override |
get proxy for a given data object address in memory More... | |
SG::DataProxy * | proxy (const CLID &id, const std::string &key) const override |
get proxy with given id and key. Returns 0 to flag failure More... | |
SG::DataProxy * | proxy_exact (SG::sgkey_t sgkey) const override |
Get proxy given a hashed key+clid. More... | |
StatusCode | addToStore (CLID id, SG::DataProxy *proxy) override |
Add a new proxy to the store. More... | |
std::vector< const SG::DataProxy * > | proxies () const override |
return the list of all current proxies in store More... | |
SG::sgkey_t | stringToKey (const std::string &str, CLID clid) override |
Find the string corresponding to a given key. More... | |
const std::string * | keyToString (SG::sgkey_t key) const override |
Find the string corresponding to a given key. More... | |
const std::string * | keyToString (SG::sgkey_t key, CLID &clid) const override |
Find the string and CLID corresponding to a given key. More... | |
void | registerKey (SG::sgkey_t key, const std::string &str, CLID clid) override |
Remember an additional mapping from key to string/CLID. More... | |
SG::DataProxy * | recordObject (SG::DataObjectSharedPtr< DataObject > obj, const std::string &key, bool allowMods, bool returnExisting) override |
Record an object in the store. More... | |
const std::string & | name () const override |
Get the name of the instance. More... | |
Helper functions for the IProxyDict interface | |
const xAOD::EventFormatElement * | getEventFormatElement (SG::sgkey_t sgkey) const |
Get the metadata object for a given "SG key". More... | |
const BranchInfo * | getBranchInfo (SG::sgkey_t sgkey) const |
Get the object describing one object/branch. More... | |
Functions implementing the IProxyDict interface | |
SG::DataProxy * | proxy (const void *const pTransient) const override |
get proxy for a given data object address in memory More... | |
SG::DataProxy * | proxy (const CLID &id, const std::string &key) const override |
get proxy with given id and key. Returns 0 to flag failure More... | |
SG::DataProxy * | proxy_exact (SG::sgkey_t sgkey) const override |
Get proxy given a hashed key+clid. More... | |
StatusCode | addToStore (CLID id, SG::DataProxy *proxy) override |
Add a new proxy to the store. More... | |
std::vector< const SG::DataProxy * > | proxies () const override |
return the list of all current proxies in store More... | |
SG::sgkey_t | stringToKey (const std::string &str, CLID clid) override |
Find the string corresponding to a given key. More... | |
const std::string * | keyToString (SG::sgkey_t key) const override |
Find the string corresponding to a given key. More... | |
const std::string * | keyToString (SG::sgkey_t key, CLID &clid) const override |
Find the string and CLID corresponding to a given key. More... | |
void | registerKey (SG::sgkey_t key, const std::string &str, CLID clid) override |
Remember an additional mapping from key to string/CLID. More... | |
SG::DataProxy * | recordObject (SG::DataObjectSharedPtr< DataObject > obj, const std::string &key, bool allowMods, bool returnExisting) override |
Record an object in the store. More... | |
const std::string & | name () const override |
Get the name of the instance. More... | |
Helper functions for the IProxyDict interface | |
const xAOD::EventFormatElement * | getEventFormatElement (SG::sgkey_t sgkey) const |
Get the metadata object for a given "SG key". More... | |
const BranchInfo * | getBranchInfo (SG::sgkey_t sgkey) const |
Get the object describing one object/branch. More... | |
Functions implementing the IProxyDict interface | |
SG::DataProxy * | proxy (const void *const pTransient) const override |
get proxy for a given data object address in memory More... | |
SG::DataProxy * | proxy (const CLID &id, const std::string &key) const override |
get proxy with given id and key. Returns 0 to flag failure More... | |
SG::DataProxy * | proxy_exact (SG::sgkey_t sgkey) const override |
Get proxy given a hashed key+clid. More... | |
StatusCode | addToStore (CLID id, SG::DataProxy *proxy) override |
Add a new proxy to the store. More... | |
std::vector< const SG::DataProxy * > | proxies () const override |
return the list of all current proxies in store More... | |
SG::sgkey_t | stringToKey (const std::string &str, CLID clid) override |
Find the string corresponding to a given key. More... | |
const std::string * | keyToString (SG::sgkey_t key) const override |
Find the string corresponding to a given key. More... | |
const std::string * | keyToString (SG::sgkey_t key, CLID &clid) const override |
Find the string and CLID corresponding to a given key. More... | |
void | registerKey (SG::sgkey_t key, const std::string &str, CLID clid) override |
Remember an additional mapping from key to string/CLID. More... | |
SG::DataProxy * | recordObject (SG::DataObjectSharedPtr< DataObject > obj, const std::string &key, bool allowMods, bool returnExisting) override |
Record an object in the store. More... | |
const std::string & | name () const override |
Get the name of the instance. More... | |
Helper functions for the IProxyDict interface | |
const xAOD::EventFormatElement * | getEventFormatElement (SG::sgkey_t sgkey) const |
Get the metadata object for a given "SG key". More... | |
const BranchInfo * | getBranchInfo (SG::sgkey_t sgkey) const |
Get the object describing one object/branch. More... | |
Functions implementing the IProxyDict interface | |
SG::DataProxy * | proxy (const void *const pTransient) const override |
get proxy for a given data object address in memory More... | |
SG::DataProxy * | proxy (const CLID &id, const std::string &key) const override |
get proxy with given id and key. Returns 0 to flag failure More... | |
SG::DataProxy * | proxy_exact (SG::sgkey_t sgkey) const override |
Get proxy given a hashed key+clid. More... | |
StatusCode | addToStore (CLID id, SG::DataProxy *proxy) override |
Add a new proxy to the store. More... | |
std::vector< const SG::DataProxy * > | proxies () const override |
return the list of all current proxies in store More... | |
SG::sgkey_t | stringToKey (const std::string &str, CLID clid) override |
Find the string corresponding to a given key. More... | |
const std::string * | keyToString (SG::sgkey_t key) const override |
Find the string corresponding to a given key. More... | |
const std::string * | keyToString (SG::sgkey_t key, CLID &clid) const override |
Find the string and CLID corresponding to a given key. More... | |
void | registerKey (SG::sgkey_t key, const std::string &str, CLID clid) override |
Remember an additional mapping from key to string/CLID. More... | |
SG::DataProxy * | recordObject (SG::DataObjectSharedPtr< DataObject > obj, const std::string &key, bool allowMods, bool returnExisting) override |
Record an object in the store. More... | |
const std::string & | name () const override |
Get the name of the instance. More... | |
Helper functions for the IProxyDict interface | |
const xAOD::EventFormatElement * | getEventFormatElement (SG::sgkey_t sgkey) const |
Get the metadata object for a given "SG key". More... | |
const BranchInfo * | getBranchInfo (SG::sgkey_t sgkey) const |
Get the object describing one object/branch. More... | |
Static Protected Member Functions | |
::Bool_t | hasAuxStore (const TObjectManager &mgr) |
Function checking if a given object may have an auxiliary store. More... | |
::Bool_t | isAuxStore (const TObjectManager &mgr) |
Function checking if a given object may be an auxiliary store. More... | |
::Bool_t | isStandalone (const TObjectManager &mgr) |
Function checking if an object is standalone (not a container) More... | |
Protected Attributes | |
EAuxMode | m_auxMode |
The auxiliary access mode. More... | |
::TTree * | m_inTree |
The main tree that we are reading from. More... | |
::Bool_t | m_inTreeMissing |
Internal status flag showing that an input file is open, but it doesn't contain an event tree. More... | |
::TChain * | m_inChain |
The (optional) chain provided as input. More... | |
TChainStateTracker * | m_inChainTracker |
Optional object for tracking the state changes of an input TChain. More... | |
::Int_t | m_inTreeNumber |
The number of the currently open tree in the input chain. More... | |
::TTree * | m_inMetaTree |
Pointer to the metadata tree in the input file. More... | |
::Long64_t | m_entry |
The entry to look at from the input tree. More... | |
::TTree * | m_outTree |
The tree that we are writing to. More... | |
Object_t | m_inputObjects |
Collection of all the managed input objects. More... | |
std::set< std::string > | m_inputMissingObjects |
Objects that have been asked for, but were found to be missing in the current input. More... | |
Object_t | m_outputObjects |
Collection of all the managed output object. More... | |
Object_t | m_inputMetaObjects |
Collection of all the managed input meta-objects. More... | |
Object_t | m_outputMetaObjects |
Collection of all the managed output meta-objects. More... | |
EventFormat | m_inputEventFormat |
Format of the current input file. More... | |
EventFormat * | m_outputEventFormat |
Format of the current output file. More... | |
std::unordered_map< std::string, std::set< std::string > > | m_auxItemList |
Rules for selecting which auxiliary branches to write. More... | |
Listener_t | m_listeners |
Listeners who should be notified when certain incidents happen. More... | |
std::unordered_map< std::string, std::string > | m_nameRemapping |
Container name re-mapping rules. More... | |
Bool_t | m_printEventProxyWarnings = true |
Option to silence common warnings that seem to be harmless. More... | |
Static Protected Attributes | |
static const ::Int_t | CACHE_SIZE = -1 |
Size of a possible TTreeCache (30 MB) More... | |
static const char *const | EVENT_TREE_NAME = "CollectionTree" |
Name of the event tree. More... | |
static const char *const | METADATA_TREE_NAME = "MetaData" |
Name of the metadata tree. More... | |
Functions implementing the xAOD::TVirtualEvent interface | |
StatusCode | record (void *obj, const std::string &typeName, const std::string &key, ::Int_t basketSize, ::Int_t splitLevel, ::Bool_t overwrite=kFALSE, ::Bool_t metadata=kFALSE, ::Bool_t isOwner=kTRUE) |
Internal function for recording an object into the output. More... | |
SG::sgkey_t | getHash (const std::string &key) const override |
Function returning the hash describing an object name. More... | |
SG::sgkey_t | getKey (const void *obj) const override |
Function returning the hash describing a known object. More... | |
const std::string & | getName (const void *obj) const override |
Function returning the key describing a known object. More... | |
const std::string & | getName (SG::sgkey_t hash) const override |
Function returning the key describing a known object. More... | |
void * | getOutputObject (SG::sgkey_t key, const std::type_info &ti) override |
Function for retrieving an output object in a non-template way. More... | |
const void * | getInputObject (SG::sgkey_t key, const std::type_info &ti, bool silent=false) override |
Function for retrieving an input object in a non-template way. More... | |
void | getNames (const std::string &targetClassName, std::vector< std::string > &vkeys, bool metadata=false) const override |
Function determining the list keys associated with a type name. More... | |
Variable(s) used in the IProxyDict implementation | |
typedef AthContainers_detail::upgrade_mutex | upgrade_mutex_t |
Mutex and lock for multithread synchronization. More... | |
typedef AthContainers_detail::upgrading_lock< upgrade_mutex_t > | upgrading_lock_t |
upgrade_mutex_t | m_branchesMutex |
SG::SGKeyMap< BranchInfo > m_branches | ATLAS_THREAD_SAFE |
Map from hashed sgkey to BranchInfo. More... | |
Definition at line 22 of file xAODTEvent.h.
|
protectedinherited |
Definition of the structure type holding on to listeners.
Definition at line 409 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
Definition of the internal data structure type.
Definition at line 407 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
inherited |
Definition at line 35 of file TVirtualEvent.h.
|
protectedinherited |
Mutex and lock for multithread synchronization.
Definition at line 482 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
Definition at line 483 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
inherited |
Auxiliary store "mode".
Enumerator | |
---|---|
kBranchAccess | Access auxiliary data branch-by-branch. |
kClassAccess | Access auxiliary data using the aux containers. |
kAthenaAccess | Access containers/objects like Athena does. |
kUndefinedAccess | Undefined, to be selected by the object. |
Definition at line 98 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
inherited |
Register an incident listener object.
This function works pretty much like IIncidentSvc::addListener does in Athena.
It tells the TEvent object that when certain "interesting incidents" happen, a given object should be notified about it.
listener | Pointer to the object that should be notified |
Definition at line 910 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Add a name re-mapping rule.
The names of containers can change during the lifetime of the experiment.
One such change happened after the DC14 exercise, when many containers got a new name. (Like "ElectronCollection" became simply "Electrons".)
This function allows us to create aliases with which certain containers should be accessible. So that the analyser would be able to access older files, while using the latest container name(s).
onfile | The name of the container as it was saved into the input file |
newName | The alias with which the object/container should be accessible |
Save the new name association:
Definition at line 990 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
overrideprotectedinherited |
Add a new proxy to the store.
Smart pointers to objects that don't exist in the input event, can end up calling this function.
In this case warn the user that something fishy is happening, and take posession of the received proxy.
clid | The CLID of the type. Not taken into account. |
proxy | The proxy to take posession of. Not used for anything useful. |
Definition at line 385 of file TEventProxyDict.cxx.
|
inherited |
Get what auxiliary access mode the object was constructed with.
Definition at line 278 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Remove all listeners from the object.
This function can be used to remove all the listeners from the internal list.
Should not be necessary under regular circumstances.
Definition at line 970 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Clear the current name re-mapping.
This function simply clears out any existing name remapping declarations.
In case the remapping rules need to be changed in the code in some complicated way.
Definition at line 1024 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
protectedinherited |
Function setting up access to a set of auxiliary branches.
This function is used internally to connect an auxiliary object to the input.
Based on the configuration of the object it will either use TAuxStore, or the EDM object that was used to write the auxiliary information in Athena.
prefix | The prefix (main branch name) of the auxiliary data |
standalone | Type of the auxiliary store that should be created |
kTRUE
if the connection was successful, or kFALSE
if it was not Definition at line 2856 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
protectedinherited |
Function setting up access to a particular branch.
This is one of the more important functions of the class.
It connects the event object to a given branch of the input TTree.
The type that is read in to memory is not actually determined by the type written to the tree itself, but from the xAOD::EventFormat object. Which is there to make it possible to possibly use ROOT read rules in the future to read a different type than what's on disk.
Everything else is fairly basic ROOT stuff, the code just has to make sure that the memory management is set up correctly for the created object.
key | The name of the branch to connect to |
silent | Set to kTRUE to make the code fail silently in case the branch can't be connected to |
kTRUE
if the connection was successful, or kFALSE
if it was not Definition at line 2558 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
protectedinherited |
Function setting up access to a set of auxiliary branches for a metadata object.
This function is used internally to connect an auxiliary metadata object to the input.
Based on the configuration of the object it will either use TAuxStore, or the EDM object that was used to write the auxiliary information in Athena.
prefix | The prefix (main branch name) of the auxiliary data |
standalone | Type of the auxiliary store that should be created |
Definition at line 2975 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
protectedinherited |
Function setting up access to a branch in the metadata tree.
This is the function doing the heavy lifting with creating metadata objects in memory out of the payload of the input file.
key | The key (branch name) of the metadata object to retrieve |
silent | Set to kTRUE to make the code fail silently in case the branch can't be connected to |
Definition at line 2742 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Function checking if an object is available from the store.
|
protectedinherited |
Internal function checking if an object is in the input.
Created a non-template version of the call internally to be able to use it from xAOD::MakeTransientTree.
key | The key to check |
ti | The type of the object to check |
metadata | Flag deciding whether we are looking for a metadata object or not |
kTRUE
if such an object is held by the event object at the moment, kFALSE
otherwise Definition at line 3671 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Function checking if a meta-object is available from the store.
|
inherited |
Copy all (ROOT readable) objects directly from the input to the output.
This function is here to make it easy to write code that skims an input file into an output file without applying any modification to the events.
basketSize | Optional size for the basket associated with the output branch |
splitLevel | Optional split level of the output branch |
StatusCode::SUCCESS
if the copy was successful, or StatusCode::FAILURE
if not Definition at line 1246 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Copy an object directly from the input to the output.
This function can be used to easily copy a given object/container to the output, without modifying the contents of it.
It only needs to be called on the interface object/container, the copying of the auxiliary data is done automatically, and is steered by the SetAuxItemList function.
key | The key (branch name) of the object/container to copy |
basketSize | Optional size for the basket associated with the output branch |
splitLevel | Optional split level of the output branch |
Definition at line 1143 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Function creating a user-readable dump of the current input.
This function behaves exactly like StoreGateSvc::dump().
It doesn't actually print anything to the screen, it just returns a user readable dump of the contents of the current input file/chain.
It is a pretty dumb implementation for the moment. Should be made nicer later on.
Definition at line 292 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Function filling one event into the output tree.
This function needs to be called by the user at the end of processing each event that is meant to be written out.
Definition at line 1508 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Finish writing to an output file.
This function needs to be called when the user is done writing events to a file, before (s)he would close the file itself.
file | The file that the event data is written to |
kTRUE
if successful, kFALSE
otherwise Definition at line 734 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
protectedinherited |
|
inherited |
Get how many entries are available from the current input file(s)
Definition at line 1293 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Function loading a given entry of the input TTree.
This function is used to move to looking at a new entry from the input tree.
It doesn't do any I/O operation at this point, it just remembers which entry the objects should be loaded from later on.
Unless one calls the function with getall==1
. In that case all input is force-read. This is necessary when writing out an event that was processed in a load-on-request manner.
entry | The entry from the input tree to load |
getall | Parameter deciding if partial reading should be used or not. |
Definition at line 1324 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
protectedinherited |
|
inherited |
Load the first event for a given file from the input TChain.
This function can be used to iterate over the input files specified for the object.
It should be most useful for collecting metadata about a set of input files, if there's no regular event loop done to process them.
file | The file number to load |
getall | If set to 1, all connected branches are loaded |
Definition at line 1472 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Get how many files are available on the currently defined input.
This function can be used to get the number of input files that the object currently knows about.
This is meant to be used to collect the metadata from each of the input files, or to access the metadata using a transient tree. (xAOD::TMetaTree)
Definition at line 1452 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
overridevirtualinherited |
Function returning the hash describing an object name.
This helper function is mostly needed by the smart pointers of the xAOD EDM.
Right now it very simply just calculates the hash just based on the key given to the function. But later on it might be good to do some tests here, checking if the event format knows about the specified key or not. This is why it's not made to be a static function
key | String key to turn into a hash |
Implements xAOD::TVirtualEvent.
Definition at line 1649 of file Control/xAODRootAccess/Root/TEvent.cxx.
const void * xAOD::TEvent::getInputObject |
Function for retrieving an input object in a non-template way.
This is the function doing the heavy lifting to retrieve objects from the input file.
key | The key (branch name) of the object to retrieve |
ti | The type as which the object is to be retrieved |
silent | Set to kTRUE to make the code fail silently in case the object can't be retrieved |
metadata | Flag deciding whether we're looking for a metadata or event data object |
Definition at line 360 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
protectedinherited |
Function for retrieving an input object in a non-template way.
This is the function doing the heavy lifting to retrieve objects from the input file.
key | The key (branch name) of the object to retrieve |
ti | The type as which the object is to be retrieved |
silent | Set to kTRUE to make the code fail silently in case the object can't be retrieved |
metadata | Flag deciding whether we're looking for a metadata or event data object |
Definition at line 2180 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
override |
Function for retrieving an input object in a non-template way.
This function is used by the TVirtualEvent interface to access an input object with a given hashed key.
The function looks up the string key belonging to the hash, and then calls the other GetInputObject(...) function in the class with that parameter.
key | The hashed key of the input object |
ti | The type description of the object requested |
silent | Switch for being silent about failures or not |
Definition at line 297 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
overrideprotectedvirtualinherited |
Function for retrieving an input object in a non-template way.
This function is used by the TVirtualEvent interface to access an input object with a given hashed key.
The function looks up the string key belonging to the hash, and then calls the other GetInputObject(...) function in the class with that parameter.
key | The hashed key of the input object |
ti | The type description of the object requested |
silent | Switch for being silent about failures or not |
Implements xAOD::TVirtualEvent.
Definition at line 1938 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
overridevirtualinherited |
Function returning the hash describing a known object.
This function is used by the smart pointer code to find the identifier of an object that's already in the event in some way.
obj | Pointer to the object that we want to look up |
Implements xAOD::TVirtualEvent.
Definition at line 1671 of file Control/xAODRootAccess/Root/TEvent.cxx.
Function returning the key describing a known object.
This function is used by the smart pointer code to find the identifier of an object that's already in the event in some way.
obj | Pointer to the object that we want to look up |
Implements xAOD::TVirtualEvent.
Definition at line 1684 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
overridevirtualinherited |
Function returning the key describing a known object.
This function is used primarily when getting the string key of a smart pointer that we read in from a file, or access it in memory.
hash | The hashed key for the container/object |
Implements xAOD::TVirtualEvent.
Definition at line 1880 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
overrideprotectedvirtualinherited |
Function determining the list keys associated with a type name.
Implements xAOD::TVirtualEvent.
Definition at line 1725 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
protectedinherited |
Function for retrieving an output object in a non-template way.
This function does the heavy lifting of retrieving object from the list of output objects.
While it returns a typeless pointer, that pointer can be cast directly to the type described by the second parameter in the caller code.
key | The key (branch name) of the object to retrieve |
ti | The type as which the object is to be retrieved |
metadata | Flag deciding whether we're looking for a metadata or event data object |
Definition at line 2110 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
overrideprotectedvirtualinherited |
Function for retrieving an output object in a non-template way.
This function is used by the TVirtualEvent interface to access an output object with a given hashed key.
The function looks up the string key belonging to the hash, and then calls the other GetOutputObject(...) function in the class with that parameter.
key | The hashed key of the output object |
ti | The type description of the object requested |
Implements xAOD::TVirtualEvent.
Definition at line 1914 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
staticprotectedinherited |
Function checking if a given object may have an auxiliary store.
Since the code needs to check in a few places whether a given object has an auxiliary store, and as this check may change slightly over time, it seemed to be a good idea to outsource this check into this function.
mgr | The manager of the object that should be checked |
kTRUE
if the object can have an auxiliary store, kFALSE
otherwise Definition at line 3593 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
protectedinherited |
Function to initialise the statistics for all Tree content.
This function is used internally to initialise the reading of an input file.
It prepares the "monitoring information" in memory that gets filled while the code is running, with information about xAOD I/O.
StatusCode::SUCCESS
if the function is successful, or StatusCode::kFaulure
if not Definition at line 1961 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Get information about the input objects.
This function makes it possible for the user to investigate the contents of the input file that the object is currently connected to.
Notice that this doesn't necessarily mean that all the objects for which metadata is stored, would necessarily be part of the input TTree that this object is connected to.
Definition at line 1603 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
staticprotectedinherited |
Function checking if a given object may be an auxiliary store.
This function is used to decide if a given object is an auxiliary store type or not.
mgr | The manager of the object that should be checked |
kTRUE
if the object is an auxiliary store, kFALSE
if it is not Definition at line 3614 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
staticprotectedinherited |
Function checking if an object is standalone (not a container)
This function is used to figure out while setting up the reading of the TTree in kBranchAccess mode, what to tell the underlying TAuxStore object, what kind of store it needs to be.
It's done in pretty much the same way in which hasAuxStore(...) decides if the object in question can have an auxiliary store.
mgr | The manager of the object that should be checked |
kTRUE
if the object is a standalone one, kFALSE
if it is a container Definition at line 3637 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
provide list of all keys associated with provided type.
usage: event->keys( vec_to_fill, metadata )
vkeys | will be filled with the list of keys (may be empty) |
metadata | (default false) look in metadata content if true |
|
overrideprotectedinherited |
Find the string corresponding to a given key.
Definition at line 430 of file TEventProxyDict.cxx.
|
overrideprotectedinherited |
Find the string and CLID corresponding to a given key.
Definition at line 435 of file TEventProxyDict.cxx.
|
overrideprotectedinherited |
Get the name of the instance.
Definition at line 452 of file TEventProxyDict.cxx.
|
inherited |
Get information about the output objects.
This function makes it possible for the user to investigate the content that is being written to the output file.
Notice that this doesn't necessarily mean that all the objects for which metadata is stored, would necessarily be part of the output TTree that this object is connected to.
Definition at line 1626 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Function printing the I/O statistics of the current process.
This is a convenience function for printing basic I/O information about the current job.
It can be called at the end of a job to get an overview of what the job did exactly I/O-wise.
Definition at line 347 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Print the current name re-mapping rules.
This function can be used for debugging, to check what container/object name remapping rules are in place for the current TEvent object.
Definition at line 1033 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
overrideprotectedinherited |
|
overrideprotectedinherited |
get proxy with given id and key. Returns 0 to flag failure
Definition at line 234 of file TEventProxyDict.cxx.
|
overrideprotectedinherited |
get proxy for a given data object address in memory
Definition at line 206 of file TEventProxyDict.cxx.
|
overrideprotectedinherited |
|
protectedinherited |
Function saving the dynamically created auxiliary properties.
This function is used internally to set up the writing of the auxiliary store variables that were dynamically created on an object.
(And not statically defined to be part of that object.)
outTree | The TTree to put the auxiliary branches into |
mgr | The object manager of the output object |
basketSize | Size of the buffer associated with the branches |
splitLevel | The split level to use for the created branches |
metadata | Flag specifying whether the info written is metadata or not |
kTRUE
if the setup was successful, or kFALSE
if it was not Definition at line 3350 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Connect the object to a new input file.
This function takes care of connecting the event object to a new input file.
It reads in the metadata of the input file needed for reading the file.
file | Pointer to the file being read |
useTreeCache | Flag for turning on/off the usage of TTreeCache |
treeName | Name of the input tree |
kTRUE
if successful, kFALSE
otherwise Definition at line 364 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Connect the object to a new input tree/chain.
This version of the function sets up the object to read information from a tree/chain.
Using it with a TTree pointer makes not much sense, but using it with a TChain pointer could be a very valid usage mode.
tree | The pointer to a TTree or a TChain |
useTreeCache | Flag for switching TTreeCache usage on/off |
kTRUE
if successful, kFALSE
when not Definition at line 607 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Add an output object to the event, explicitly taking ownership of it.
|
inherited |
Add an output object to the event.
|
protectedinherited |
Internal function for adding an auxiliary store object to the output.
This function is used internally when copying an object with its auxiliary store from the input file, and branch access mode is activated for the event object.
The assumption is that the store object already knows what prefix it should be using. The key parameter only specifies under what ID the object should be handled in the output object list.
store | The store object to connect to the output |
key | The "key" with which to record the object |
basketSize | The basket size of the output branches |
splitLevel | The split level of the output branches |
kTRUE
if the operation was successful, or kFALSE
if it was not Definition at line 2468 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Internal function for recording an object into the output.
This is the function doing the heavy lifting when recording a new object into the output tree/file.
It makes sure that the object is saved together with all of its dynamic auxiliary data if it has any.
obj | A typeless pointer to the object that we want to record |
typeName | The type name of the output object |
key | The key (branch name) of the object to record |
basketSize | The basket size of the output branch |
splitLevel | The split level of the output branch |
overwrite | Flag selecting if it is allowed to overwrite an already existing object (used internally) |
metadata | Flag selecting if we are writing an event or a metadata object |
isOwner | Flag selecting if we should take ownership of the object or not |
kTRUE
if the operation was successful, or kFALSE
if it was not Definition at line 2305 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Add an auxiliary store object to the output.
This function can be used to create/retrieve a ROOT-specific auxiliary object container that can be used to write information in the output file.
Any auxiliary information written this way will however only be readable in ROOT, using the kBranchAccess
option.
key | The name/prefix of the auxiliary store object/branches |
type | The type of the auxiliary store (object/container) |
basketSize | Size of the baskets created by the store object |
splitLevel | The split level of the branches created by the store |
Definition at line 1066 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Add an object to the output file's metadata, explicitly taking ownership of it.
|
inherited |
Add an object to the output file's metadata.
|
overrideprotectedinherited |
Record an object in the store.
Definition at line 445 of file TEventProxyDict.cxx.
|
overrideprotectedinherited |
Remember an additional mapping from key to string/CLID.
Definition at line 440 of file TEventProxyDict.cxx.
|
inherited |
Remove an incident listener object.
This function allows us to remove a listener when for instance a metadata tool is deleted during a job.
listener | Pointer to the listener that should be removed |
Definition at line 946 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Retrieve either an input or an output object from the event.
|
inherited |
Function retrieving an object from the event (constant version)
|
inherited |
Function retrieving an object from the event (constant version)
|
inherited |
Retrieve an output object from the event.
|
inherited |
Retrieve an input metadata object.
|
inherited |
Retrieve an output metadata object.
|
inherited |
Retrieve an output metadata object.
|
inherited |
Set this event object as the currently active one.
Setting TEvent objects happens automatically when reading a file, but when writing a file from scratch, the code doesn't necessarily know which TEvent object a given smart pointer should "belong to".
This function helps the user with setting this up.
Definition at line 860 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Configure which dynamic variables to write out for a given store.
This function receives the rules for selecting which dynamic auxiliary branches should be written for a given container, in the exact same format in which we need to set it in the Athena output ItemList.
containerKey | The name of the auxiliary container in question |
itemList | The variable list according to the ... formatting rules |
Definition at line 882 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
protectedinherited |
Function connecting a DV object to its auxiliary store.
Every time a DataVector is read in from the input for a new TTree entry, one needs to re-connect it with its auxiliary store.
This function takes care of this.
mgr | The manager object of the DV container |
metadata | Flag specifying whether we're dealing with a metadata or event data object |
kTRUE
if the setup was successful, or kFALSE
if it was not Definition at line 3172 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Function to silence warnings associated with broken element links.
These appear harmless so long as you don't actually try to access the links (which will cause other errors).
Definition at line 3697 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
protectedinherited |
Function adding dynamic variable reading capabilities to an auxiliary store object.
This function is used by connectBranch(...) and connectMetaBranch(...) to set up auxiliary store type objects correctly for accessing dynamic variables from the input file.
mgr | The object manager of the auxiliary store object |
tree | The tree to read dynamic variables from |
StatusCode
types Definition at line 3088 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
overrideprotectedinherited |
Find the string corresponding to a given key.
Definition at line 425 of file TEventProxyDict.cxx.
xAOD::TEvent::TEvent |
Constructor connecting the object to an input TFile.
Definition at line 108 of file Control/xAODRootAccess/Root/TEvent.cxx.
xAOD::TEvent::TEvent |
Constructor connecting the objects to an input TTree/TChain With this constructor possibility to read augmented files by providing the main tree and having set friend trees before providing the tree to TEvent.
Definition at line 111 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
delete |
Do not allow copy-constructing this object:
xAOD::TEvent::TEvent |
|
inherited |
Function checking if an object is already in memory.
|
protectedinherited |
Internal function checking if an object is already in memory.
Internal function checking if an object of a given type, with a given key is held in memory by the event object.
It's this function doing the heavy lifting for the public template function.
key | The key/branch name of the object |
ti | The type description of the object |
metadata | Flag deciding whether we are looking for a metadata object or not |
kTRUE
if such a modifiable object is held by the event object at the moment, kFALSE
otherwise Definition at line 3690 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
inherited |
Function checking if a meta-object is already in memory.
|
inherited |
Connect the object to an output file.
This function should be called on a file opened be the user, before any event processing would occur.
It sets up the output event tree.
file | The file that the event data should be written to |
autoFlush | The auto-flush setting to use on the output TTree |
treeName | Name of the output event tree |
kTRUE
if successful, kFALSE
otherwise Definition at line 692 of file Control/xAODRootAccess/Root/TEvent.cxx.
|
mutableprotectedinherited |
Map from hashed sgkey to BranchInfo.
Definition at line 487 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
staticprotectedinherited |
Size of a possible TTreeCache (30 MB)
Definition at line 412 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
staticconstexprinherited |
Key for retrieving the "default" object of a given type.
Definition at line 41 of file TVirtualEvent.h.
Name of the event tree.
Definition at line 414 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
staticconstexprinherited |
Mask for the keys, used mostly internally.
Definition at line 43 of file TVirtualEvent.h.
|
protectedinherited |
Rules for selecting which auxiliary branches to write.
Definition at line 459 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
The auxiliary access mode.
Definition at line 419 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
mutableprotectedinherited |
Definition at line 484 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
The entry to look at from the input tree.
Definition at line 435 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
The (optional) chain provided as input.
Definition at line 427 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
Optional object for tracking the state changes of an input TChain.
Definition at line 429 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
Pointer to the metadata tree in the input file.
Definition at line 433 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
Format of the current input file.
Definition at line 454 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
Collection of all the managed input meta-objects.
Definition at line 449 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
Objects that have been asked for, but were found to be missing in the current input.
Definition at line 444 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
Collection of all the managed input objects.
Definition at line 441 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
The main tree that we are reading from.
Definition at line 422 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
Internal status flag showing that an input file is open, but it doesn't contain an event tree.
Definition at line 425 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
The number of the currently open tree in the input chain.
Definition at line 431 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
Listeners who should be notified when certain incidents happen.
Definition at line 462 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
Container name re-mapping rules.
Definition at line 465 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
Format of the current output file.
Definition at line 456 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
Collection of all the managed output meta-objects.
Definition at line 451 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
Collection of all the managed output object.
Definition at line 446 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
The tree that we are writing to.
Definition at line 438 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
|
protectedinherited |
Option to silence common warnings that seem to be harmless.
Definition at line 468 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.
Name of the metadata tree.
Definition at line 416 of file Control/xAODRootAccess/xAODRootAccess/TEvent.h.