uatools 1.0.0
 
Loading...
Searching...
No Matches
eso::uatools::Client Class Referencefinal

OPC UA client implementing ifw::fnd::defs::ICommAdapter. More...

#include <client.hpp>

Inheritance diagram for eso::uatools::Client:

Classes

struct  DataTypeInfo
 Result of a DataType lookup on a node. More...
 
struct  Impl
 Per-Client state. More...
 

Public Member Functions

 Client ()
 
 ~Client () override
 
 Client (const Client &)=delete
 
Clientoperator= (const Client &)=delete
 
 Client (Client &&)=delete
 
Clientoperator= (Client &&)=delete
 
ifw::fnd::defs::Capabilities GetCapabilities () const override
 
ifw::fnd::defs::Result Configure (const ifw::fnd::defs::ConnectionOptions &options) override
 
ifw::fnd::defs::Result Connect () override
 
ifw::fnd::defs::Result Disconnect () override
 
ifw::fnd::defs::ConnectionStatus GetConnectionStatus () const override
 
bool IsConnected () const override
 
ifw::fnd::defs::RegistrationToken SetConnectionStateHandler (ifw::fnd::defs::ConnectionStateHandler handler) override
 
ifw::fnd::defs::DiscoverResult Discover (const ifw::fnd::defs::DiscoverRequest &request) override
 
ifw::fnd::defs::BrowseResult Browse (const ifw::fnd::defs::BrowseRequest &request) override
 
ifw::fnd::defs::ReadResult Read (const ifw::fnd::defs::ReadRequest &request) override
 
ifw::fnd::defs::WriteResult Write (const ifw::fnd::defs::WriteRequest &request) override
 
ifw::fnd::defs::CallResult Call (const ifw::fnd::defs::CallRequest &request) override
 
ifw::fnd::defs::SubscribeResult Subscribe (const std::vector< ifw::fnd::defs::Address > &nodes, ifw::fnd::defs::SubscriptionHandler handler, const ifw::fnd::defs::SubscribeOpts &opts={}) override
 
ifw::fnd::defs::UnsubscribeResult Unsubscribe (const std::vector< ifw::fnd::defs::Address > &nodes) override
 
ifw::fnd::defs::Result UnsubscribeAll () override
 
DataTypeInfo ReadDataType (const ifw::fnd::defs::Address &node)
 Read the DataType attribute of a node.
 

Detailed Description

OPC UA client implementing ifw::fnd::defs::ICommAdapter.

All public methods are inherited from ICommAdapter; see that interface for the full contract (threading rules, lifecycle invariants, capability discovery).

Construction is cheap: no network I/O, no SDK calls. The underlying connection is established on Connect() and torn down on Disconnect() or destructor.

Constructor & Destructor Documentation

◆ Client() [1/3]

eso::uatools::Client::Client ( )

◆ ~Client()

eso::uatools::Client::~Client ( )
override

◆ Client() [2/3]

eso::uatools::Client::Client ( const Client & )
delete

◆ Client() [3/3]

eso::uatools::Client::Client ( Client && )
delete

Member Function Documentation

◆ Browse()

fnd::BrowseResult eso::uatools::Client::Browse ( const ifw::fnd::defs::BrowseRequest & request)
override

◆ Call()

fnd::CallResult eso::uatools::Client::Call ( const ifw::fnd::defs::CallRequest & request)
override

◆ Configure()

fnd::Result eso::uatools::Client::Configure ( const ifw::fnd::defs::ConnectionOptions & options)
override

◆ Connect()

fnd::Result eso::uatools::Client::Connect ( )
override

◆ Disconnect()

fnd::Result eso::uatools::Client::Disconnect ( )
override

◆ Discover()

fnd::DiscoverResult eso::uatools::Client::Discover ( const ifw::fnd::defs::DiscoverRequest & request)
override

◆ GetCapabilities()

fnd::Capabilities eso::uatools::Client::GetCapabilities ( ) const
override

◆ GetConnectionStatus()

fnd::ConnectionStatus eso::uatools::Client::GetConnectionStatus ( ) const
override

◆ IsConnected()

bool eso::uatools::Client::IsConnected ( ) const
override

◆ operator=() [1/2]

Client & eso::uatools::Client::operator= ( Client && )
delete

◆ operator=() [2/2]

Client & eso::uatools::Client::operator= ( const Client & )
delete

◆ Read()

fnd::ReadResult eso::uatools::Client::Read ( const ifw::fnd::defs::ReadRequest & request)
override

◆ ReadDataType()

Client::DataTypeInfo eso::uatools::Client::ReadDataType ( const ifw::fnd::defs::Address & node)

Read the DataType attribute of a node.

Useful for type-aware clients that want to convert a string representation of a value into the right Variant alternative before writing. Implemented as a single UA_Client_readDataTypeAttribute call.

◆ SetConnectionStateHandler()

fnd::RegistrationToken eso::uatools::Client::SetConnectionStateHandler ( ifw::fnd::defs::ConnectionStateHandler handler)
override

◆ Subscribe()

fnd::SubscribeResult eso::uatools::Client::Subscribe ( const std::vector< ifw::fnd::defs::Address > & nodes,
ifw::fnd::defs::SubscriptionHandler handler,
const ifw::fnd::defs::SubscribeOpts & opts = {} )
override

◆ Unsubscribe()

fnd::UnsubscribeResult eso::uatools::Client::Unsubscribe ( const std::vector< ifw::fnd::defs::Address > & nodes)
override

◆ UnsubscribeAll()

fnd::Result eso::uatools::Client::UnsubscribeAll ( )
override

◆ Write()

fnd::WriteResult eso::uatools::Client::Write ( const ifw::fnd::defs::WriteRequest & request)
override

The documentation for this class was generated from the following files: