PLCnext API Documentation 23.0.2.9
IAcyclicCommunicationService.hpp
1
2//
3// Copyright PHOENIX CONTACT Electronics GmbH
4//
6#pragma once
8#include <vector>
9#include "Arp/Io/ProfinetStack/Controller/Services/AcyclicCommunicationServiceProxyFactory.hpp"
10#include "Arp/Io/ProfinetStack/Controller/Services/RecordParam.hpp"
11#include "Arp/Io/ProfinetStack/Controller/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 ProfinetStack { namespace Controller { namespace Services
17{
18
19using namespace Arp;
20using namespace Arp::System::Rsc::Services;
21
27{
28public: // typedefs
29 using Ptr = std::shared_ptr<IAcyclicCommunicationService>;
30
31public: // construction/destruction
34
35public: // static policy operation
36 static IRscServiceProxyFactory& GetProxyFactory(void);
37
38public: // abstract operations
51 virtual RecordResult RecordRead(const RecordParam& recordParam, std::vector<uint8>& data) = 0;
52
65 virtual RecordResult RecordWrite(const RecordParam& recordParam, const std::vector<uint8>& data) = 0;
66};
67
69// inline methods of class IAcyclicCommunicationService
70inline IRscServiceProxyFactory& IAcyclicCommunicationService::GetProxyFactory()
71{
72 return AcyclicCommunicationServiceProxyFactory::GetInstance();
73}
74
75}}}}} // end of namespace Arp::Io::ProfinetStack::Controller::Services
Use this service for acyclic PROFINET communication
Definition: IAcyclicCommunicationService.hpp:27
virtual RecordResult RecordWrite(const RecordParam &recordParam, const std::vector< uint8 > &data)=0
Write data on a device module (blocking mode)
IAcyclicCommunicationService(void)=default
Constructs an IAcyclicCommunicationService instance.
virtual RecordResult RecordRead(const RecordParam &recordParam, std::vector< uint8 > &data)=0
Read data from a device module (blocking mode)
Parameter to address a module. Use either the Node ID or the address consisting the station name,...
Definition: RecordParam.hpp:26
Result of the record service
Definition: RecordResult.hpp:24
Base interface for all Rsc service interface.
Definition: IRscService.hpp:19
Namespace for classes and interfaces for the Remote Service Call implementation
Root namespace for the PLCnext API