|
| void | define (UserFlagDef def) |
| | Register a flag definition.
|
| |
| bool | undefine (const std::string &name) |
| | Remove a flag definition and all per-object values assigned to it.
|
| |
| bool | is_defined (const std::string &name) const |
| | Check whether a flag name has been defined (schema).
|
| |
| const UserFlagDef & | get_def (const std::string &name) const |
| | Retrieve a flag definition by name.
|
| |
| const std::vector< UserFlagDef > & | all_defs () const noexcept |
| | All flag definitions, in insertion order.
|
| |
| std::size_t | def_count () const noexcept |
| | Number of defined flag schemas.
|
| |
| void | set (const std::string &object_type, const std::string &object_name, const std::string &flag_name, UserFlagValue value) |
| | Assign a value to (object_type, object_name, flag_name).
|
| |
| bool | unset (const std::string &object_type, const std::string &object_name, const std::string &flag_name) |
| | Remove the value assigned to (object_type, object_name, flag_name).
|
| |
| bool | has_value (const std::string &object_type, const std::string &object_name, const std::string &flag_name) const |
| | Check whether a value has been assigned for a given triple.
|
| |
| const UserFlagValue & | get_value (const std::string &object_type, const std::string &object_name, const std::string &flag_name) const |
| | Retrieve the value for (object_type, object_name, flag_name).
|
| |
| std::optional< UserFlagValue > | try_get_value (const std::string &object_type, const std::string &object_name, const std::string &flag_name) const |
| | Retrieve the value, or nullopt if not assigned.
|
| |
| const std::unordered_map< std::string, UserFlagValue > & | all_values () const noexcept |
| | All per-object value assignments, keyed by composite string.
|
| |
| std::size_t | value_count () const noexcept |
| | Number of per-object value assignments.
|
| |
| void | clear () noexcept |
| | Clear both schema definitions and per-object value assignments.
|
| |
Stores the full user-flags data: schema definitions + per-object values.
Part of SimulationContext. Accessible at runtime via the C API and Python bindings.
Lookup key for per-object values is the composite string "OBJECTTYPE:OBJECTNAME:FLAGNAME" (all uppercase).