33 #ifndef IOSS_Ioss_PropertyManager_h 34 #define IOSS_Ioss_PropertyManager_h 40 #include <unordered_map> 44 using PropMapType = std::unordered_map<std::string, Property>;
61 void erase(
const std::string &property_name);
64 bool exists(
const std::string &property_name)
const;
66 Property get(
const std::string &property_name)
const;
75 #if defined(IOSS_THREADSAFE) 76 mutable std::mutex m_;
std::vector< std::string > NameList
Definition: Ioss_CodeTypes.h:44
A named value that has a known type.
Definition: Ioss_Property.h:47
int describe(NameList *names) const
Get the names of all properties in the property manager.
Definition: Ioss_PropertyManager.C:121
~PropertyManager()
Definition: Ioss_PropertyManager.C:48
The main namespace for the Ioss library.
Definition: Iocgns_DatabaseIO.h:50
bool exists(const std::string &property_name) const
Checks if a property exists in the database.
Definition: Ioss_PropertyManager.C:77
PropertyManager()=default
void erase(const std::string &property_name)
Remove a property from the property manager.
Definition: Ioss_PropertyManager.C:107
void add(const Property &new_prop)
Add a property to the property manager.
Definition: Ioss_PropertyManager.C:62
size_t count() const
Definition: Ioss_PropertyManager.C:137
PropMapType::value_type ValuePair
Definition: Ioss_PropertyManager.h:45
PropertyManager & operator=(const PropertyManager &from)=delete
PropMapType properties
Definition: Ioss_PropertyManager.h:74
A collection of Ioss::Property objects.
Definition: Ioss_PropertyManager.h:49
std::unordered_map< std::string, Property > PropMapType
Definition: Ioss_PropertyManager.h:44