RMVL  2.1.1
Robotic Manipulation and Vision Library
载入中...
搜索中...
未找到
rm::ServerView类 参考final

OPC UA 服务器视图 更多...

#include <rmvl/opcua/server.hpp>

rm::ServerView 的协作图:

Public 成员函数

 ServerView ()=default
 
 ServerView (UA_Server *server)
 创建不占有生命周期的 OPC UA 服务器视图,在 OPC UA 方法节点中使用特别有效
 
ServerViewoperator= (UA_Server *const server)
 
UA_Server * get () const
 获取 OPC UA 服务器指针
 
FindNodeInServer node (std::string_view browse_name, uint16_t ns=1U) const
 获取路径搜索必要信息
 
NodeId find (std::string_view browse_path, const NodeId &src_nd=nodeObjectsFolder) const noexcept
 通过 BrowseName 的路径搜索命名空间 ns1 的节点
 
Variable read (const NodeId &nd) const
 从指定的变量节点读数据
 
bool write (const NodeId &nd, const Variable &val) const
 给指定的变量节点写数据
 
bool triggerEvent (const NodeId &nd, const Event &event) const
 创建并触发事件
 

详细描述

OPC UA 服务器视图

示例
samples/opcua/opcua_server.cpp.

构造及析构函数说明

◆ ServerView() [1/2]

rm::ServerView::ServerView ( )
default
Python:
rm.ServerView() -> <ServerView object>

◆ ServerView() [2/2]

rm::ServerView::ServerView ( UA_Server * server)
inline
Python:
rm.ServerView() -> <ServerView object>

创建不占有生命周期的 OPC UA 服务器视图,在 OPC UA 方法节点中使用特别有效

参数
[in]serverOPC UA 服务器指针

成员函数说明

◆ find()

NodeId rm::ServerView::find ( std::string_view browse_path,
const NodeId & src_nd = nodeObjectsFolder ) const
noexcept
Python:
rm.ServerView.find(browse_path[, src_nd]) -> nd

通过 BrowseName 的路径搜索命名空间 ns1 的节点

参数
[in]browse_pathBrowseName 路径,使用 / 分隔
[in]src_nd源节点 ID,默认为 rm::nodeObjectsFolder
返回
节点 ID
auto node = srv.find("person/name", src_nd);
// 等效于 auto node = src_nd | srv.node("person") | srv.node("name");
FindNodeInServer node(std::string_view browse_name, uint16_t ns=1U) const
获取路径搜索必要信息
定义 server.hpp:63

◆ get()

UA_Server * rm::ServerView::get ( ) const
inline

获取 OPC UA 服务器指针

◆ node()

FindNodeInServer rm::ServerView::node ( std::string_view browse_name,
uint16_t ns = 1U ) const
inline

获取路径搜索必要信息

需要配合管道运算符 | 完成路径搜索

auto dst_mode = src_node | srv.node("person") | srv.node("name");
参数
[in]browse_name浏览名
[in]ns命名空间索引,默认为 1
返回
目标节点信息
返回值
fnis[_client, browse_name] 元组

◆ operator=()

ServerView & rm::ServerView::operator= ( UA_Server *const server)
inline

◆ read()

Variable rm::ServerView::read ( const NodeId & nd) const
Python:
rm.ServerView.read(nd) -> val

从指定的变量节点读数据

参数
[in]nd既存的变量节点的 NodeId
返回
读出的用 rm::Variable 表示的数据,未成功读取则返回空

◆ triggerEvent()

bool rm::ServerView::triggerEvent ( const NodeId & nd,
const Event & event ) const
Python:
rm.ServerView.triggerEvent(nd, event) -> <success ?>

创建并触发事件

参数
[in]nd触发事件的节点 NodeId
[in]eventrm::Event 表示的事件
返回
是否创建并触发成功?

◆ write()

bool rm::ServerView::write ( const NodeId & nd,
const Variable & val ) const
Python:
rm.ServerView.write(nd, val) -> <success ?>

给指定的变量节点写数据

参数
[in]nd既存的变量节点的 NodeId
[in]val待写入的数据
返回
是否写入成功

该类的文档由以下文件生成: