ATLAS Offline Software
LinkedVarAccessorBase.h
Go to the documentation of this file.
1 // This file's extension implies that it's C, but it's really -*- C++ -*-.
2 /*
3  * Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration.
4  */
13 #ifndef ATHCONTAINERS_LINKEDVARACCESSORBASE_H
14 #define ATHCONTAINERS_LINKEDVARACCESSORBASE_H
15 
16 
19 #include <cstdint>
20 
21 
22 namespace SG { namespace detail {
23 
24 
29 {
30 public:
35  template <class ELT>
36  requires (IsConstAuxElement<ELT>)
37  bool isAvailable (const ELT& e) const;
38 
39 
44  bool isAvailable (const AuxVectorData& e) const;
45 
46 
50  SG::auxid_t auxid() const;
51 
52 
57 
58 
59 protected:
60  // Store these as uint32_t rather than auxid_t since we're going to want
61  // to be able to create temporary instances of this.
64 
67 };
68 
69 
70 } } // namespace SG::detail
71 
72 
74 
75 
76 #endif // not ATHCONTAINERS_LINKEDVARACCESSORBASE_H
AllowedVariables::e
e
Definition: AsgElectronSelectorTool.cxx:37
SG::detail::LinkedVarAccessorBase
Base class usable for accessors for variables with linked variables.
Definition: LinkedVarAccessorBase.h:29
SG::detail::LinkedVarAccessorBase::requires
requires(IsConstAuxElement< ELT >) bool isAvailable(const ELT &e) const
Test to see if this variable exists in the store.
SG::detail::LinkedVarAccessorBase::auxid
SG::auxid_t auxid() const
Return the aux id for this variable.
AuxElementConcepts.h
SG
Forward declaration.
Definition: CaloCellPacker_400_500.h:32
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
SG::detail::LinkedVarAccessorBase::m_auxid
uint32_t m_auxid
The cached auxid.
Definition: LinkedVarAccessorBase.h:66
detail
Definition: extract_histogram_tag.cxx:14
SG::detail::LinkedVarAccessorBase::m_linkedAuxid
uint32_t m_linkedAuxid
The cached auxid for the linked payload vector.
Definition: LinkedVarAccessorBase.h:63
SG::auxid_t
size_t auxid_t
Identifier for a particular aux data item.
Definition: AuxTypes.h:27
SG::detail::LinkedVarAccessorBase::isAvailable
bool isAvailable(const AuxVectorData &e) const
Test to see if this variable exists in the store.
LinkedVarAccessorBase.icc
AuxTypes.h
Basic definitions for auxiliary types.
SG::detail::LinkedVarAccessorBase::linkedAuxid
SG::auxid_t linkedAuxid() const
Return the aux id for the linked payload vector.
SG::AuxVectorData
Manage lookup of vectors of auxiliary data.
Definition: AuxVectorData.h:168