PLCnext API Documentation 23.9.0.25
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
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::System::Rsc::Services::IRscService
typedef std::shared_ptr< IRscServicePtr
 

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::System::Rsc::Services::IRscService
 IRscService (void)=default
 Constructs an IRscService instance.
 
virtual ~IRscService (void)=default
 Destructs this instance and frees all resouces.
 

Static Public Member Functions

static IRscServiceProxyFactory & GetProxyFactory (void)
 
- Static Public Member Functions inherited from Arp::System::Rsc::Services::IRscService
static IRscServiceProxyFactory & GetProxyFactory (void)
 Returns a reference to service proxy factory to create a proxy instance of the 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: