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

This service enables sending implicit read record requests. More...

#include <IAcyclicCommunicationService.hpp>

Inheritance diagram for Arp::Io::ProfinetStack::System::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 SendImplicitReadRequest (const RecordParameter &parameter)=0
 Sends a request to read records implicitly, that means without an AR to the device. More...
 
virtual RecordResult RetrieveImplicitReadResponse (uint32 requestID, std::vector< byte > &data)=0
 Tries to retrieve implicit read response. 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 enables sending implicit read record requests.

The PROFINET controller or the PROFINET device have to be activated for this service to function properly.

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

Member Function Documentation

◆ RetrieveImplicitReadResponse()

virtual RecordResult Arp::Io::ProfinetStack::System::Services::IAcyclicCommunicationService::RetrieveImplicitReadResponse ( uint32  requestID,
std::vector< byte > &  data 
)
pure virtual

Tries to retrieve implicit read response.

Parameters
requestIDID that was returned on sending the request.
dataBuffer for the retrieved data.
Returns
RecordResult contains error informationen.

Only if ServiceDone in Arp.Io.ProfinetStack.System.Services.RecordResult is true, the error information and the data buffer are valid

◆ SendImplicitReadRequest()

virtual RecordResult Arp::Io::ProfinetStack::System::Services::IAcyclicCommunicationService::SendImplicitReadRequest ( const RecordParameter parameter)
pure virtual

Sends a request to read records implicitly, that means without an AR to the device.

Parameters
parameterParameter to address the device and the record object to read.
Returns
RecordResult contains the request ID that is needed to retrieve the response and error informationen.

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