16#ifndef ATHLINKS_SETINDEXINGPOLICY_H
17#define ATHLINKS_SETINDEXINGPOLICY_H
26#include "GaudiKernel/MsgStream.h"
50requires CxxUtils::detail::SimpleAssociativeContainer<SET>
123template <
typename KEY>
Exceptions that can be thrown from AthLinks.
char data[hepevt_bytes_allocation_ATLAS]
Store an ElementLink index for non-vector containers.
Store an ElementLink index for non-vector containers.
Indexing policy for a set-like container.
SET::const_reference ElementConstReference
static ElementType lookup(const stored_index_type &index, const SET &data)
Retrieve from a container the element corresponding to an index.
static index_type storedToExternal(stored_index_type index)
Convert from stored to external index types.
static void reverseLookup(const SET &data, ElementConstReference element, index_type &same)
Find the index of the (first) instance of ELEMENT in DATA.
SET::value_type ElementType
The type we get when we dereference a link, and derived types.
static bool isValid(const stored_index_type &index)
Test to see if an index is valid.
SET::const_pointer ElementConstPointer
SET::key_type index_type
The type of an index, as provided to or returned from a link.
static void reset(stored_index_type &index)
Make an index invalid.
SG::IndexHolder< index_type > stored_index_type
The type of an index, as stored internally within a link.
A couple standard-library related concepts.
singleton-like access to IMessageSvc via open function and helper
SG::SetIndexingPolicy< std::set< KEY > > type