PLCnext API Documentation 26.6.0.38
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/Profibus/Services/RecordParameters.hpp"
12#include "Arp/Io/Profibus/Services/RecordResult.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
31{
32public: // usings
33 using Ptr = std::shared_ptr<IAcyclicCommunicationService>;
34
35public: // construction/destruction
38
39public: // static policy operation
40 static IRscServiceProxyFactory& GetProxyFactory(void);
41
42public: // abstract operations
49 virtual RecordResult ReadRecord(const RecordParameters& parameters, std::vector<byte>& data) = 0;
50
57 virtual RecordResult WriteRecord(const RecordParameters& parameters, const std::vector<byte>& data) = 0;
58};
59
60} // end of namespace Arp::Io::Profibus::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
Use this service for acyclic communication with Profibus slaves
Definition: IAcyclicCommunicationService.hpp:31
virtual RecordResult ReadRecord(const RecordParameters &parameters, std::vector< byte > &data)=0
Reads object from Profibus module
virtual RecordResult WriteRecord(const RecordParameters &parameters, const std::vector< byte > &data)=0
Writes object to Profibus module
IAcyclicCommunicationService(void)=default
Constructs an IAcyclicCommunicationService instance.
Parameters to address a module.
Definition: RecordParameters.hpp:25
Result of the record service
Definition: RecordResult.hpp:24
Namespace for Profibus services