PLCnext API Documentation 25.0.2.69
IAcyclicCommunicationService.hpp
1
2//
3// Copyright Phoenix Contact GmbH & Co. KG
4//
6#pragma once
8#include "Arp/Base/Rsc/Commons/Rsc.hpp"
9#include "Arp/Base/Rsc/Commons/IRscService.hpp"
10#include <vector>
11#include "Arp/Io/Axioline/Services/PdiParam.hpp"
12#include "Arp/Io/Axioline/Services/PdiResult.hpp"
13
14// DO NOT MODIFY THIS FILE, THIS FILE IS AUTOGENERATED BY IAcyclicCommunicationService.cs
15
17{
18
19using namespace Arp::Base::Rsc::Commons;
20
34{
35public: // usings
36 using Ptr = std::shared_ptr<IAcyclicCommunicationService>;
37
38public: // construction/destruction
41
42public: // static policy operation
43 static IRscServiceProxyFactory& GetProxyFactory(void);
44
45public: // abstract operations
58 virtual PdiResult PdiRead(const PdiParam& pdiParam, std::vector<byte>& data) = 0;
59
72 virtual PdiResult PdiWrite(const PdiParam& pdiParam, const std::vector<byte>& data) = 0;
73};
74
75} // end of namespace Arp::Io::Axioline::Services
This is the base interface of all Rsc services.
Definition: IRscService.hpp:22
std::shared_ptr< IRscService > Ptr
The shared_ptr type of IRscService.
Definition: IRscService.hpp:25
Interface for service proxy factories to create service proxies used by RSC clients.
Definition: IRscServiceProxyFactory.hpp:22
virtual PdiResult PdiRead(const PdiParam &pdiParam, std::vector< byte > &data)=0
This operation reads a PDI object from an Axioline module (blocking mode).
virtual PdiResult PdiWrite(const PdiParam &pdiParam, const std::vector< byte > &data)=0
This operation writes a PDI object on an Axioline module (blocking mode).
IAcyclicCommunicationService(void)=default
Constructs an IAcyclicCommunicationService instance.
Contains all parameters to address an object on an Axioline module with an acyclic communication serv...
Definition: PdiParam.hpp:25
Contains error information of an executed acyclic Axioline service.
Definition: PdiResult.hpp:24
Use this service for acyclic PROFINET communication
Definition: IAcyclicCommunicationService.hpp:29
Namespace for Axioline services