ATLAS Offline Software
Loading...
Searching...
No Matches
AuxTypes.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
14
15#ifndef ATHCONTAINERSINTERFACES_AUXTYPES_H
16#define ATHCONTAINERSINTERFACES_AUXTYPES_H
17
18
19#include <cstddef>
21#include "CxxUtils/bitmask.h"
22
23
24namespace SG {
25
27typedef size_t auxid_t;
28
30static const auxid_t null_auxid = static_cast<auxid_t> (-1);
31
35
40static const auxid_t auxid_set_size_hint = 2048;
41
42
47{
48public:
51 : CxxUtils::ConcurrentBitset (nbits)
52 {
53 }
54};
55
56
60 None = 0x00,
61
70 Atomic = 0x01,
71
77 Linked = 0x02,
78
79 // These flags control the behavior of findAuxID() but are not
80 // stored with the variable.
82
85};
86
87
88} // namespace SG
89
90
91
92#endif // not ATHCONTAINERSINTERFACES_AUXTYPES_H
Variable-sized bitset allowing (mostly) concurrent access.
Helpers for treating a class enum as a bitmask.
Variable-sized bitset allowing (mostly) concurrent access.
ConcurrentBitset(bit_t nbits=0)
Constructor.
Used as type_info when we read an aux data item but it doesn't exist in the registry.
Definition AuxTypes.h:34
ConcurrentBitset(bit_t nbits=0)
Constructor.
auxid_set_t(size_t nbits=auxid_set_size_hint)
Definition AuxTypes.h:50
Forward declaration.
AuxVarFlags
Additional flags to qualify an auxiliary variable.
Definition AuxTypes.h:58
@ SkipNameCheck
Definition AuxTypes.h:81
@ Atomic
Mark that this variable should only be accessed atomically.
Definition AuxTypes.h:70
@ Linked
Mark that this variable is linked to another one.
Definition AuxTypes.h:77
@ ATH_BITMASK
Enable bitwise functions on this enum; see bitmask.h.
Definition AuxTypes.h:84
@ None
No special flags set.
Definition AuxTypes.h:60
static const auxid_t null_auxid
To signal no aux data item.
Definition AuxTypes.h:30
static const auxid_t auxid_set_size_hint
A hint for how large we should make the auxid bitsets.
Definition AuxTypes.h:40
size_t auxid_t
Identifier for a particular aux data item.
Definition AuxTypes.h:27