20#ifndef XAOD_STANDALONE
26#include <unordered_map>
29using AthContainers_detail::mutex;
30using AthContainers_detail::lock_guard;
39typedef std::unordered_map<const std::type_info*, DVLInfoBase*>
65 if (s_dvl_tinfo_map == 0)
67 (*s_dvl_tinfo_map)[&
tinfo] =
this;
81 dvl_tinfo_map_t::iterator i = s_dvl_tinfo_map->find (&
tinfo);
82 if (i != s_dvl_tinfo_map->end())
a static registry of CLID->typeName entries.
Holder to implement conversion copies for DataVector/DataList.
uint32_t CLID
The Class ID type.
static CLID typeinfoToCLID(const std::type_info &ti)
Return the CLID corresponding to a type_info.
static const std::type_info * CLIDToTypeinfo(CLID clid)
Translate between CLID and type_info.
static DVLInfoBase * find(const std::type_info &tinfo)
Find the DVLInfo for the container tinfo.
const std::type_info & elt_tinfo() const
Return the type_info for the container's element.
CLID clid() const
Return the CLID for the container.
const std::type_info & m_elt_tinfo
The type_info of the container's element.
const std::type_info & tinfo() const
Return the type_info for the container.
const std::type_info & m_tinfo
The type_info of the container.
DVLInfoBase(const std::type_info &tinfo, const std::type_info &elt_tinfo)
Constructor.
struct DataModel_detail::dvlmapdel s_dvlmapdel
dvl_tinfo_map_t *s_dvl_tinfo_map ATLAS_THREAD_SAFE
std::unordered_map< const std::type_info *, DVLInfoBase * > dvl_tinfo_map_t
Maps from tinfo pointers and CLID to DVLInfo instances.