PLCnext API Documentation 25.0.2.69
Public Types | Public Member Functions | Static Public Member Functions | List of all members
Arp::Io::Axioline::Services::IAcyclicCommunicationService Class Referenceabstract

This service provides acyclic communication with devices in the local Axioline bus. Objects on the devices can be read or written. For object details see the module documentation. More...

#include <IAcyclicCommunicationService.hpp>

Inheritance diagram for Arp::Io::Axioline::Services::IAcyclicCommunicationService:
Inheritance graph

Public Types

using Ptr = std::shared_ptr< IAcyclicCommunicationService >
 
- Public Types inherited from Arp::Base::Rsc::Commons::IRscService
using Ptr = std::shared_ptr< IRscService >
 The shared_ptr type of IRscService.
 

Public Member Functions

 IAcyclicCommunicationService (void)=default
 Constructs an IAcyclicCommunicationService instance.
 
virtual PdiResult PdiRead (const PdiParam &pdiParam, std::vector< byte > &data)=0
 This operation reads a PDI object from an Axioline module (blocking mode). More...
 
virtual PdiResult PdiWrite (const PdiParam &pdiParam, const std::vector< byte > &data)=0
 This operation writes a PDI object on an Axioline module (blocking mode). More...
 
- Public Member Functions inherited from Arp::Base::Rsc::Commons::IRscService
 IRscService (void)=default
 The default constructor.
 
 IRscService (const IRscService &arg)=delete
 The deleted copy constructor. More...
 
 IRscService (IRscService &&arg) noexcept=default
 The default move constructor. More...
 
IRscServiceoperator= (const IRscService &arg)=delete
 The deleted assignment operator. More...
 
IRscServiceoperator= (IRscService &&arg) noexcept=default
 The default move-assignment operator. More...
 
virtual ~IRscService (void)=default
 Destructs this instance and frees all resources.
 

Static Public Member Functions

static IRscServiceProxyFactoryGetProxyFactory (void)
 
- Static Public Member Functions inherited from Arp::Base::Rsc::Commons::IRscService
static IRscServiceProxyFactoryGetProxyFactory (void)
 Returns a reference to service proxy factory to create a proxy instance of this service. More...
 

Detailed Description

This service provides acyclic communication with devices in the local Axioline bus. Objects on the devices can be read or written. For object details see the module documentation.

The execution of PDI services can take some time (seriel communication). For more information to the Axioline bus see "UM EN AXL F SYS INST" and "UM DE AXL F SYS DIAG".

This service is defined in library Arp.Io.Axioline.

Realtime Usage: This API call does not have to be deterministic in runtime behaviour, so an asynchronous execution should be considered.

Member Function Documentation

◆ PdiRead()

virtual PdiResult Arp::Io::Axioline::Services::IAcyclicCommunicationService::PdiRead ( const PdiParam pdiParam,
std::vector< byte > &  data 
)
pure virtual

This operation reads a PDI object from an Axioline module (blocking mode).

Parameters
pdiParamStructure with all parameters to address an object on a module to read from. Arp.Io.Axioline.Services.PdiParam
dataData that are read from the module.
Returns
Structure with error information. Arp.Io.Axioline.Services.PdiResult

◆ PdiWrite()

virtual PdiResult Arp::Io::Axioline::Services::IAcyclicCommunicationService::PdiWrite ( const PdiParam pdiParam,
const std::vector< byte > &  data 
)
pure virtual

This operation writes a PDI object on an Axioline module (blocking mode).

Parameters
pdiParamStructure with all parameters to address an object on a module to write on. Arp.Io.Axioline.Services.PdiParam
dataData that shall be written on the module.
Returns
Structure with error information. Arp.Io.Axioline.Services.PdiResult

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