PLCnext API Documentation 25.0.2.69
IAxioMasterService.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/AxioDeviceConfiguration.hpp"
12#include "Arp/Io/Axioline/Services/AxioResult.hpp"
13
14// DO NOT MODIFY THIS FILE, THIS FILE IS AUTOGENERATED BY IAxioMasterService.cs
15
17{
18
19using namespace Arp::Base::Rsc::Commons;
20
32class ARP_EXPORT IAxioMasterService : public IRscService
33{
34public: // usings
35 using Ptr = std::shared_ptr<IAxioMasterService>;
36
37public: // construction/destruction
39 IAxioMasterService(void) = default;
40
41public: // static policy operation
42 static IRscServiceProxyFactory& GetProxyFactory(void);
43
44public: // abstract operations
63 virtual uint16 AxioControl(const std::vector<uint16>& inData, std::vector<uint16>& outData) = 0;
64
75 virtual AxioResult CreateConfiguration(uint16 frameReference) = 0;
76
89 virtual AxioResult ReadConfiguration(uint16 frameReference, std::vector<AxioDeviceConfiguration>& configuration) = 0;
90
103 virtual AxioResult WriteConfiguration(uint16 frameReference, const std::vector<AxioDeviceConfiguration>& configuration) = 0;
104
115 virtual AxioResult ActivateConfiguration(uint16 frameReference) = 0;
116
127 virtual AxioResult DeactivateConfiguration(uint16 frameReference) = 0;
128
137 virtual AxioResult ResetMaster() = 0;
138};
139
140} // 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
Contains error information of an executed AXIO master service.
Definition: AxioResult.hpp:24
This service provides the access to the AXIO master.
Definition: IAxioMasterService.hpp:33
IAxioMasterService(void)=default
Constructs an IAxioMasterService instance.
virtual AxioResult DeactivateConfiguration(uint16 frameReference)=0
This operation deactivates the bus configuration. The communication in the AXIO bus is stopped.
virtual AxioResult CreateConfiguration(uint16 frameReference)=0
This operation creates a new bus configuration depending on the connected devices and activates this ...
virtual AxioResult ReadConfiguration(uint16 frameReference, std::vector< AxioDeviceConfiguration > &configuration)=0
This operation reads the current bus configuration of the master.
virtual AxioResult ActivateConfiguration(uint16 frameReference)=0
This operation activates a stored bus configuration if the connected bus is identical to the configur...
virtual uint16 AxioControl(const std::vector< uint16 > &inData, std::vector< uint16 > &outData)=0
This operation gives raw access to AXIO service. A buffer with a service message is sent to the AXIO ...
virtual AxioResult ResetMaster()=0
This operation resets the AXIO master. The master stops all operations, switches to READY and deletes...
virtual AxioResult WriteConfiguration(uint16 frameReference, const std::vector< AxioDeviceConfiguration > &configuration)=0
This operation writes an expected bus configuration to the AXIO master.
std::uint16_t uint16
The Arp unsigned integer type of 2 byte size.
Definition: PrimitiveTypes.hpp:29
Namespace for Axioline services