PLCnext API Documentation 23.6.0.37
IAcyclicCommunicationService.hpp
1
2//
3// Copyright PHOENIX CONTACT Electronics GmbH
4//
6#pragma once
8#include <vector>
9#include "Arp/Io/Profibus/Services/AcyclicCommunicationServiceProxyFactory.hpp"
10#include "Arp/Io/Profibus/Services/RecordParameters.hpp"
11#include "Arp/Io/Profibus/Services/RecordResult.hpp"
12#include "Arp/System/Rsc/Services/IRscService.hpp"
13
14// DO NOT MODIFY THIS FILE, THIS FILE IS AUTOGENERATED BY IAcyclicCommunicationService.cs
15
16namespace Arp { namespace Io { namespace Profibus { namespace Services
17{
18
19using namespace Arp;
20using namespace Arp::System::Rsc::Services;
21
30{
31public: // typedefs
32 using Ptr = std::shared_ptr<IAcyclicCommunicationService>;
33
34public: // construction/destruction
37
38public: // static policy operation
39 static IRscServiceProxyFactory& GetProxyFactory(void);
40
41public: // abstract operations
48 virtual RecordResult ReadRecord(const RecordParameters& parameters, std::vector<byte>& data) = 0;
49
56 virtual RecordResult WriteRecord(const RecordParameters& parameters, const std::vector<byte>& data) = 0;
57};
58
60// inline methods of class IAcyclicCommunicationService
61inline IRscServiceProxyFactory& IAcyclicCommunicationService::GetProxyFactory()
62{
63 return AcyclicCommunicationServiceProxyFactory::GetInstance();
64}
65
66}}}} // end of namespace Arp::Io::Profibus::Services
Use this service for acyclic communication with Profibus slaves
Definition: IAcyclicCommunicationService.hpp:30
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
Base interface for all Rsc service interface.
Definition: IRscService.hpp:20
Namespace for classes and interfaces for the Remote Service Call implementation
Root namespace for the PLCnext API