17#ifndef ATHCONTAINERS_PACKEDLINKIMPL_H
18#define ATHCONTAINERS_PACKEDLINKIMPL_H
21#ifndef XAOD_STANDALONE
48 static constexpr unsigned NBITS = 32;
114template <
class STORABLE>
115#ifndef XAOD_STANDALONE
117requires (std::integral<typename SG::ElementLinkTraits<STORABLE>::IndexingPolicy::index_type>)
Determine dependent types for ElementLink classes.
constexpr T ones(unsigned int n)
Return a bit mask with the lower n bits set.
PackedLinkBase()
Default constructor.
bool operator==(const PackedLinkBase &other) const
Comparison.
static constexpr uint32_t INDEX_MAX
unsigned int collection() const
Unpack the collection index from the link.
unsigned int index() const
Unpack the element index from the link.
static constexpr unsigned INDEX_NBITS
PackedLinkBase(unsigned int collection, unsigned int index)
Constructor.
void setIndex(unsigned int index)
Set the element index;.
uint32_t m_packed
The packed form of the link.
static constexpr uint32_t COLLECTION_MAX
static constexpr unsigned COLLECTION_NBITS
static constexpr unsigned NBITS
void setCollection(unsigned int collection)
Set the collection index;.
A packed version of ElementLink.
PackedLinkBase()
Default constructor.