![]() |
ATLAS Offline Software
|
Manager for EDM objects to be written to RNTuple. More...
#include <ROutObjManager.h>
Public Member Functions | |
| ROutObjManager (std::string_view key, std::unique_ptr< THolder > holder) | |
| Constructor, getting hold of the created objects. | |
| ~ROutObjManager () | |
| Destructor. | |
| const std::string & | key () |
| virtual::Int_t | getEntry (::Int_t getall=0) override |
| Function for updating the object in memory if needed. | |
| virtual const void * | object () const override |
| Function getting a const pointer to the object being handled. | |
| virtual void * | object () override |
| Function getting a pointer to the object being handled. | |
| virtual void | setObject (void *obj) override |
| Function replacing the object being handled. | |
| virtual::Bool_t | create () override |
| Create the object for the current event. | |
| virtual::Bool_t | isSet () const override |
| Check if the object was set for the current event. | |
| virtual void | reset () override |
| Reset the object at the end of processing of an event. | |
| const THolder * | holder () const |
| Accessor to the Holder object. | |
| THolder * | holder () |
| Accessor to the Holder object. | |
Private Attributes | |
| std::string | m_key |
| The name of the (SG) key. | |
| ::Bool_t | m_isSet |
| Was the object set for the current event? | |
| std::unique_ptr< THolder > | m_holder |
| Object holding onto an EDM object in memory. | |
Manager for EDM objects to be written to RNTuple.
This class is used when an EDM object is meant to be created by ROOT's schema evolution system, behind the scenes.
Definition at line 27 of file ROutObjManager.h.
| xAOD::Experimental::ROutObjManager::ROutObjManager | ( | std::string_view | key, |
| std::unique_ptr< THolder > | holder ) |
Constructor, getting hold of the created objects.
Definition at line 18 of file ROutObjManager.cxx.
|
default |
Destructor.
|
overridevirtual |
Create the object for the current event.
Dummy implementation as full objects can't be missing.
Implements xAOD::TVirtualManager.
Definition at line 74 of file ROutObjManager.cxx.
|
overridevirtual |
Function for updating the object in memory if needed.
RDS: not exactly sure of the description here. We always get the entry for the field view.
This function is used to load the contents of a branch only when it needs to be done. It keeps track of which entry was already loaded for a branch/object, and only asks the branch to load an entry when it really has to be done.
Implements xAOD::TVirtualManager.
Definition at line 40 of file ROutObjManager.cxx.
|
inherited |
Accessor to the Holder object.
Definition at line 48 of file IObjectManager.cxx.
|
inherited |
Accessor to the Holder object.
Definition at line 43 of file IObjectManager.cxx.
|
overridevirtual |
Check if the object was set for the current event.
kTRUE if the object for this event was set, kFALSE otherwise Implements xAOD::TVirtualManager.
Definition at line 82 of file ROutObjManager.cxx.
| const std::string & xAOD::Experimental::ROutObjManager::key | ( | ) |
|
overridevirtual |
Function getting a const pointer to the object being handled.
This function gives an easy access to the object managed by this object.
Implements xAOD::TVirtualManager.
Definition at line 51 of file ROutObjManager.cxx.
|
overridevirtual |
Function getting a pointer to the object being handled.
Implements xAOD::TVirtualManager.
Definition at line 56 of file ROutObjManager.cxx.
|
overridevirtual |
Reset the object at the end of processing of an event.
This function needs to be called after an event was filled into the output TTree.
It tells the manager object that it needs to wait for another object to be set up for the upcoming event.
Implements xAOD::TVirtualManager.
Definition at line 91 of file ROutObjManager.cxx.
|
overridevirtual |
Function replacing the object being handled.
This is just a convenient way of calling THolder::Set from TEvent.
| obj | The object to replace the previously managed one |
Implements xAOD::TVirtualManager.
Definition at line 65 of file ROutObjManager.cxx.
|
privateinherited |
Object holding onto an EDM object in memory.
Definition at line 44 of file IObjectManager.h.
|
private |
Was the object set for the current event?
Definition at line 60 of file ROutObjManager.h.
|
private |
The name of the (SG) key.
Definition at line 58 of file ROutObjManager.h.