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

Use this service for acyclic PROFINET communication More...

#include <IAcyclicCommunicationService.hpp>

Inheritance diagram for Arp::Io::ProfinetStack::Controller::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 RecordResult RecordRead (const RecordParam &recordParam, std::vector< byte > &data)=0
 Read data from a device module (blocking mode) More...
 
virtual RecordResult RecordWrite (const RecordParam &recordParam, const std::vector< byte > &data)=0
 Write data on a device 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

Use this service for acyclic PROFINET communication

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

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

Member Function Documentation

◆ RecordRead()

virtual RecordResult Arp::Io::ProfinetStack::Controller::Services::IAcyclicCommunicationService::RecordRead ( const RecordParam recordParam,
std::vector< byte > &  data 
)
pure virtual

Read data from a device module (blocking mode)

Parameters
recordParamStructure with parameters to address an object on a module to read from
dataData that are read from the module
Returns
Structure with error information. If ErrorCode, ErrorDecode, ErrorCode1 and ErrorCode2 are all equal to 0, the result is considered as 'No error'. Arp.Io.ProfinetStack.Controller.Services.RecordResult

◆ RecordWrite()

virtual RecordResult Arp::Io::ProfinetStack::Controller::Services::IAcyclicCommunicationService::RecordWrite ( const RecordParam recordParam,
const std::vector< byte > &  data 
)
pure virtual

Write data on a device module (blocking mode)

Parameters
recordParamStructure with parameters to address an object on a module to write on Arp.Io.ProfinetStack.Controller.Services.RecordParam
dataData that shall be written on the module
Returns
Structure with error information. If ErrorCode, ErrorDecode, ErrorCode1 and ErrorCode2 are all equal to 0, the result is considered as 'No error'. Arp.Io.ProfinetStack.Controller.Services.RecordResult

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