ATLAS Offline Software
Loading...
Searching...
No Matches
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):
13namespace SG {
14class IConstAuxStore;
15}
16
17namespace xAOD {
18
19// Forward declaration(s):
20class RAuxStore;
21
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
Interface for const operations on an auxiliary store.
const SG::IConstAuxStore * getConstStore() const
Get a convenience pointer to the managed object.
virtual::Bool_t isSet() const override
Check if the object was set for the current event.
virtual::Bool_t create() override
Create the object for the current event.
virtual::Int_t getEntry(::Int_t getall=0) override
Function for updating the object in memory if needed.
virtual void setObject(void *obj) override
Function replacing the object being handled.
RAuxManager(RAuxStore *store, ::Long64_t &entry, ::Bool_t sharedOwner=kTRUE)
Constructor getting hold of an auxiliary store object.
RAuxStore * getStore()
Get a type-specific pointer to the managed object.
std::reference_wrapper<::Long64_t > m_entry
Entry number.
Definition RAuxManager.h:62
virtual const void * object() const override
Function getting a const pointer to the object being handled.
std::shared_ptr< RAuxStore > m_store
The auxiliary store object.
Definition RAuxManager.h:58
virtual void reset() override
Reset the object at the end of processing of an event.
RAuxStore * m_storePtr
Pointer to the auxiliary store object.
Definition RAuxManager.h:60
"ROOT @c RNTuple implementation" of IAuxStore
Definition RAuxStore.h:38
Interface class for the "manager classes".
Forward declaration.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.