ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
RAuxManager.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
2 #ifndef XAODROOTACCESS_TOOLS_RAUXMANAGER_H
3 #define XAODROOTACCESS_TOOLS_RAUXMANAGER_H
4 
5 // Local include(s):
6 #include "TVirtualManager.h"
7 
8 // System include(s):
9 #include <functional>
10 #include <memory>
11 
12 // Forward declaration(s):
13 namespace SG {
14 class IConstAuxStore;
15 }
16 
17 namespace xAOD {
18 
19 // Forward declaration(s):
20 class RAuxStore;
21 
27 class RAuxManager : public TVirtualManager {
28 
29  public:
31  RAuxManager(RAuxStore* store, ::Long64_t& entry,
32  ::Bool_t sharedOwner = kTRUE);
33 
35  virtual ::Int_t getEntry(::Int_t getall = 0) override;
36 
38  virtual const void* object() const override;
40  virtual void* object() override;
42  virtual void setObject(void* obj) override;
43 
45  virtual ::Bool_t create() override;
47  virtual ::Bool_t isSet() const override;
49  virtual void reset() override;
50 
54  const SG::IConstAuxStore* getConstStore() const;
55 
56  private:
58  std::shared_ptr<RAuxStore> m_store;
62  std::reference_wrapper<::Long64_t> m_entry;
63 
64 }; // class RAuxManager
65 
66 } // namespace xAOD
67 
68 #endif // XAODROOTACCESS_TOOLS_TAUXMANAGER_H
SGTest::store
TestStore store
Definition: TestStore.cxx:23
xAOD::RAuxManager::m_entry
std::reference_wrapper<::Long64_t > m_entry
Entry number.
Definition: RAuxManager.h:62
SG
Forward declaration.
Definition: CaloCellPacker_400_500.h:32
xAOD::RAuxManager::getStore
RAuxStore * getStore()
Get a type-specific pointer to the managed object.
Definition: RAuxManager.cxx:80
xAOD::RAuxManager::m_storePtr
RAuxStore * m_storePtr
Pointer to the auxiliary store object.
Definition: RAuxManager.h:60
xAOD::RAuxStore
"ROOT @c RNTuple implementation" of IAuxStore
Definition: RAuxStore.h:31
xAOD::RAuxManager::getEntry
virtual ::Int_t getEntry(::Int_t getall=0) override
Function for updating the object in memory if needed.
Definition: RAuxManager.cxx:20
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
xAOD::TVirtualManager
Interface class for the "manager classes".
Definition: TVirtualManager.h:24
xAOD::RAuxManager::reset
virtual void reset() override
Reset the object at the end of processing of an event.
Definition: RAuxManager.cxx:69
xAOD::RAuxManager::m_store
std::shared_ptr< RAuxStore > m_store
The auxiliary store object.
Definition: RAuxManager.h:58
xAOD::RAuxManager::RAuxManager
RAuxManager(RAuxStore *store, ::Long64_t &entry, ::Bool_t sharedOwner=kTRUE)
Constructor getting hold of an auxiliary store object.
Definition: RAuxManager.cxx:11
xAOD::RAuxManager::getConstStore
const SG::IConstAuxStore * getConstStore() const
Get a convenience pointer to the managed object.
Definition: RAuxManager.cxx:85
xAOD::RAuxManager::isSet
virtual ::Bool_t isSet() const override
Check if the object was set for the current event.
Definition: RAuxManager.cxx:60
xAOD::RAuxManager::object
virtual const void * object() const override
Function getting a const pointer to the object being handled.
Definition: RAuxManager.cxx:29
GetAllXsec.entry
list entry
Definition: GetAllXsec.py:132
TVirtualManager.h
xAOD::RAuxManager
Manager for RAuxStore objects.
Definition: RAuxManager.h:27
xAOD::RAuxManager::setObject
virtual void setObject(void *obj) override
Function replacing the object being handled.
Definition: RAuxManager.cxx:39
xAOD::RAuxManager::create
virtual ::Bool_t create() override
Create the object for the current event.
Definition: RAuxManager.cxx:51
SG::IConstAuxStore
Interface for const operations on an auxiliary store.
Definition: IConstAuxStore.h:64
python.PyAthena.obj
obj
Definition: PyAthena.py:132