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

Use this service to manage PROFINET Application Relationships (AR) More...

#include <IArManagementService.hpp>

Inheritance diagram for Arp::Io::ProfinetStack::Controller::Services::IArManagementService:
Inheritance graph

Public Types

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

Public Member Functions

 IArManagementService (void)=default
 Constructs an IArManagementService instance.
 
virtual uint32 GetArState (const RscString< 512 > &stationName, uint32 &arState)=0
 Gets the current state of the AR for the specified device. More...
 
virtual uint32 StartAr (const RscString< 512 > &stationName, uint32 &arState)=0
 Starts the AR for the specified device and returns its current state after the start request. More...
 
virtual uint32 StopAr (const RscString< 512 > &stationName, uint32 &arState)=0
 Stops the AR for the specified device and returns its current state after the stop request. 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 to manage PROFINET Application Relationships (AR)

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

Each method returns the current state of the AR in the arState output parameter.

Possible values of arState:

ValueMeaning
0x00000000The current AR state cannot be determined (e.g. during intermediate connection steps).
0x00000001AR has been added but not started. This state is valid for ARs that have been stopped.
0x00000002AR has been added and started; connection establishment is in progress.
0x00000007Waiting for DCP Identify indication.
0x00000019AR is fully established and active; data exchange is running.

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

Member Function Documentation

◆ GetArState()

virtual uint32 Arp::Io::ProfinetStack::Controller::Services::IArManagementService::GetArState ( const RscString< 512 > &  stationName,
uint32 &  arState 
)
pure virtual

Gets the current state of the AR for the specified device.

Parameters
stationNameStation name of the device.
arStateCurrent state of the AR. See the service-level remarks for possible values.
Returns
Returns 0x0000 if the AR was found and the state was read successfully. Returns 0xF003 if no AR with the given station name exists.

◆ StartAr()

virtual uint32 Arp::Io::ProfinetStack::Controller::Services::IArManagementService::StartAr ( const RscString< 512 > &  stationName,
uint32 &  arState 
)
pure virtual

Starts the AR for the specified device and returns its current state after the start request.

Parameters
stationNameStation name of the device.
arStateState of the AR after the start request. See the service-level remarks for possible values.
Returns
Returns 0x0000 if the start request was accepted. The AR establishment runs asynchronously; use Arp.Io.ProfinetStack.Controller.Services.IArManagementService.GetArState to poll the current state until the desired state is reached. Returns 0xF003 if no AR with the given station name exists. Returns 0xF01A if the start request was rejected.

◆ StopAr()

virtual uint32 Arp::Io::ProfinetStack::Controller::Services::IArManagementService::StopAr ( const RscString< 512 > &  stationName,
uint32 &  arState 
)
pure virtual

Stops the AR for the specified device and returns its current state after the stop request.

Parameters
stationNameStation name of the device.
arStateState of the AR after the stop request. See the service-level remarks for possible values.
Returns
Returns 0x0000 if the stop request was accepted. The AR teardown runs asynchronously; use Arp.Io.ProfinetStack.Controller.Services.IArManagementService.GetArState to poll the current state until the desired state is reached. Returns 0xF003 if no AR with the given station name exists. Returns 0xF01B if the stop request was rejected.

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