12 #include <unordered_set> 13 #include <unordered_map> 15 #include <boost/numeric/conversion/cast.hpp> 41 const std::string& parentCategoryName,
42 uint16_t counterClass,
43 uint16_t interpolation,
45 const std::string& name,
46 const std::string& description,
53 uint16_t
GetCategoryCount()
const override {
return boost::numeric_cast<uint16_t>(m_Categories.size()); }
54 uint16_t
GetDeviceCount()
const override {
return boost::numeric_cast<uint16_t>(m_Devices.size()); }
55 uint16_t
GetCounterSetCount()
const override {
return boost::numeric_cast<uint16_t>(m_CounterSets.size()); }
56 uint16_t
GetCounterCount()
const override {
return boost::numeric_cast<uint16_t>(m_Counters.size()); }
90 CategoriesIt FindCategory(
const std::string& categoryName)
const;
91 DevicesIt FindDevice(uint16_t deviceUid)
const;
92 DevicesIt FindDevice(
const std::string& deviceName)
const;
94 CounterSetsIt FindCounterSet(
const std::string& counterSetName)
const;
95 CountersIt FindCounter(uint16_t counterUid)
const;
96 CountersIt FindCounter(
const std::string& counterName)
const;
std::unordered_set< CategoryPtr > Categories
Counters::const_iterator CountersIt
std::unordered_map< uint16_t, DevicePtr > Devices
const CounterSet * GetCounterSet(uint16_t uid) const override
const Device * GetDevice(uint16_t uid) const override
const Category * RegisterCategory(const std::string &categoryName, const Optional< uint16_t > &deviceUid=EmptyOptional(), const Optional< uint16_t > &counterSetUid=EmptyOptional()) override
std::unordered_map< uint16_t, CounterSetPtr > CounterSets
bool IsCategoryRegistered(const std::string &categoryName) const
const Device * RegisterDevice(const std::string &deviceName, uint16_t cores=0, const Optional< std::string > &parentCategoryName=EmptyOptional()) override
CounterDirectory()=default
bool IsCounterSetRegistered(uint16_t counterSetUid) const
const Counter * GetCounter(uint16_t uid) const override
const Counter * RegisterCounter(const BackendId &backendId, const uint16_t uid, const std::string &parentCategoryName, uint16_t counterClass, uint16_t interpolation, double multiplier, const std::string &name, const std::string &description, const Optional< std::string > &units=EmptyOptional(), const Optional< uint16_t > &numberOfCores=EmptyOptional(), const Optional< uint16_t > &deviceUid=EmptyOptional(), const Optional< uint16_t > &counterSetUid=EmptyOptional()) override
const Devices & GetDevices() const override
bool IsDeviceRegistered(uint16_t deviceUid) const
CounterSets::const_iterator CounterSetsIt
uint16_t GetCounterCount() const override
uint16_t GetCategoryCount() const override
const CounterSets & GetCounterSets() const override
std::unique_ptr< Category > CategoryPtr
~CounterDirectory()=default
Devices::const_iterator DevicesIt
uint16_t GetCounterSetCount() const override
Categories::const_iterator CategoriesIt
const Categories & GetCategories() const override
std::unordered_map< uint16_t, CounterPtr > Counters
uint16_t GetDeviceCount() const override
const Category * GetCategory(const std::string &name) const override
const CounterSet * RegisterCounterSet(const std::string &counterSetName, uint16_t count=0, const Optional< std::string > &parentCategoryName=EmptyOptional()) override
bool IsCounterRegistered(uint16_t counterUid) const
const Counters & GetCounters() const override