Go to the documentation of this file. 1 #ifndef DETECTOR_DESCRIPTION_CORE_DDNAME_H
2 #define DETECTOR_DESCRIPTION_CORE_DDNAME_H
7 #include <tbb/concurrent_vector.h>
8 #include <tbb/concurrent_unordered_map.h>
18 using Registry = tbb::concurrent_unordered_map<std::pair<std::string, std::string>,
id_type>;
19 using IdToName = tbb::concurrent_vector<Registry::const_iterator>;
50 static Registry::const_iterator
registerName(
const std::pair<std::string, std::string>&
s);
DDName is used to identify DDD entities uniquely.
std::ostream & operator<<(std::ostream &os, const DDName &n)
bool operator<(const DDName &rhs) const
bool operator==(const DDName &rhs) const
const std::string & name() const
Returns the name.
tbb::concurrent_unordered_map< std::pair< std::string, std::string >, id_type > Registry
static Registry::const_iterator registerName(const std::pair< std::string, std::string > &s)
const std::string & ns() const
Returns the namespace.
const std::string fullname() const
tbb::concurrent_vector< Registry::const_iterator > IdToName