Class NodeMap
Defined in File node_map.hpp
Class Documentation
-
class NodeMap
Manages the OPC-UA NodeId to SOVD entity mapping, loaded from YAML.
Public Functions
-
NodeMap() = default
-
bool load(const std::string &yaml_path)
Load node map from YAML file
- Returns:
true if loaded successfully
-
inline const std::vector<NodeMapEntry> &entries() const
Get all entries.
-
std::vector<const NodeMapEntry*> entries_for_entity(const std::string &entity_id) const
Get entries for a specific SOVD entity.
-
std::vector<const NodeMapEntry*> writable_entries_for_entity(const std::string &entity_id) const
Get writable entries for a specific SOVD entity.
-
const NodeMapEntry *find_by_data_name(const std::string &entity_id, const std::string &data_name) const
Find entry by data_name within an entity.
-
const NodeMapEntry *find_by_node_id(const std::string &node_id_str) const
Find entry by OPC-UA node ID string.
-
std::vector<const NodeMapEntry*> alarm_entries() const
Get all entries that have alarm configuration.
-
inline const std::vector<PlcEntityDef> &entity_defs() const
Get derived SOVD entity definitions.
-
inline const std::string &area_id() const
Get area ID configured for PLC systems.
-
inline const std::string &area_name() const
-
inline const std::string &component_id() const
Get component ID for the PLC runtime.
-
inline const std::string &component_name() const
-
inline bool auto_browse() const
Whether auto-browse mode is enabled.
Public Static Functions
-
static opcua::NodeId parse_node_id(const std::string &str)
Parse an OPC-UA node ID string into an
opcua::NodeId.Supports the full OPC 10000-6 section 5.3.1.10 format:
When the[ns=<ns-index>;]i=<uint32> numeric [ns=<ns-index>;]s=<string> string (Siemens, Beckhoff, ...) [ns=<ns-index>;]g=<guid> GUID (Microsoft-style UUID) [ns=<ns-index>;]b=<base64> opaque ByteString
ns=prefix is omitted the namespace defaults to 0. Returns a default-constructedopcua::NodeIdon parse failure; the plugin treats such an entry as unresolvable at runtime.Declared public so it can be unit-tested directly.
-
NodeMap() = default