PLCnext API Documentation  21.0.0.35466
IPlcManagerService.hpp
1 //
3 // Copyright PHOENIX CONTACT Electronics GmbH
4 //
6 #pragma once
7 #include "Arp/System/Core/Arp.h"
8 #include "Arp/System/Rsc/Services/IRscService.hpp"
9 #include "PlcManagerServiceProxyFactory.hpp"
10 #include "PlcStartKind.hpp"
11 #include "PlcState.hpp"
12 
13 // DO NOT MODIFY THIS FILE, THIS FILE IS AUTOGENERATED BY IPlcManagerService.cs
14 
15 namespace Arp { namespace Plc { namespace Domain { namespace Services
16 {
17 
18 using namespace Arp;
19 using namespace Arp::System::Rsc::Services;
20 
25 {
26 public: // typedefs
27  typedef std::shared_ptr<IPlcManagerService> Ptr;
28 
29 public: // construction/destruction
31  IPlcManagerService(void);
33  virtual ~IPlcManagerService(void);
34 
35 public: // static policy operation
36  static IRscServiceProxyFactory& GetProxyFactory(void);
37 
38 public: // abstract operations
44  virtual void Load(boolean async = false) = 0;
45 
64  virtual void Start(PlcStartKind startKind, boolean async = false) = 0;
65 
71  virtual void Stop(boolean async = false) = 0;
72 
78  virtual void Reset(boolean async = false) = 0;
79 
87  virtual PlcState GetPlcState() = 0;
88 
89 private: // deleted methods (for non-copyable classes)
90  IPlcManagerService(const IPlcManagerService& arg) = delete;
91  IPlcManagerService& operator=(const IPlcManagerService& arg) = delete;
92 };
93 
95 // inline methods of class IPlcManagerService
97 {
98 }
99 
101 {
102 }
103 
104 inline IRscServiceProxyFactory& IPlcManagerService::GetProxyFactory()
105 {
106  return PlcManagerServiceProxyFactory::GetInstance();
107 }
108 
109 }}}} // end of namespace Arp::Plc::Domain::Services
Namespace for classes and interfaces for the Remote Service Call implementation
Definition: IRscReadEnumerator.hxx:9
virtual ~IPlcManagerService(void)
Destructs this instance and frees all resouces.
Definition: IPlcManagerService.hpp:100
Root namespace for the PLCnext API
Base interface for all Rsc service interface.
Definition: IRscService.hpp:18
IPlcManagerService(void)
Constructs an IPlcManagerService instance.
Definition: IPlcManagerService.hpp:96
Use this service to control the PLC of the controller.
Definition: IPlcManagerService.hpp:24