 |
ATLAS Offline Software
|
Go to the documentation of this file.
7 #ifndef XAODROOTACCESS_TOOLS_ROBJECTMANAGER_H
8 #define XAODROOTACCESS_TOOLS_ROBJECTMANAGER_H
14 #include <ROOT/RNTupleView.hxx>
35 std::unique_ptr<THolder>
holder);
40 ROOT::RNTupleView<void>&
field();
42 const ROOT::RNTupleView<void>&
field()
const;
45 virtual ::Int_t
getEntry(::Int_t getall = 0)
override;
48 virtual const void*
object()
const override;
50 virtual void*
object()
override;
55 virtual ::Bool_t
create()
override;
57 virtual ::Bool_t
isSet()
const override;
59 virtual void reset()
override;
77 #endif // XAODROOTACCESS_TOOLS_ROBJECTMANAGER_H
virtual void reset() override
Reset the object at the end of processing of an event.
Manager for EDM objects created by ROOT.
virtual void setObject(void *obj) override
Function replacing the object being handled.
const THolder * holder() const
Accessor to the Holder object.
virtual ::Bool_t isSet() const override
Check if the object was set for the current event.
ROOT::RNTupleView< void > m_field
The typeless object taking care of reading the field.
std::unique_ptr< THolder > m_holder
Holder object for the EDM object.
virtual ::Bool_t create() override
Create the object for the current event.
ROOT::RNTupleView< void > & field()
Accessor to the field (non-const)
~RObjectManager()
Destructor.
::Long64_t m_entry
The last entry that was loaded for this field.
virtual ::Int_t getEntry(::Int_t getall=0) override
Function for updating the object in memory if needed.
RObjectManager(ROOT::RNTupleView< void > field, const ::Long64_t &entry, std::unique_ptr< THolder > holder)
Constructor.
::Bool_t m_isSet
Was the object set for the current event?
std::reference_wrapper< const ::Long64_t > m_entryToLoad
Entry number to load next.
Manager for EDM objects created by ROOT.
virtual const void * object() const override
Function getting a const pointer to the object being handled.