PLCnext API Documentation  20.6.0.30321
IDataTraverserService.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 "DataTraverserServiceProxyFactory.hpp"
10 #include "Arp/System/Core/delegate.hxx"
11 #include "Arp/System/Rsc/Services/IRscReadEnumerator.hxx"
12 #include "Arp/System/Rsc/Services/IRscWriteEnumerator.hxx"
13 #include "Arp/System/Rsc/Services/RscString.hxx"
14 #include <vector>
15 
16 // DO NOT MODIFY THIS FILE, THIS FILE IS AUTOGENERATED BY IDataTraverserService.cs
17 
18 namespace Arp { namespace Plc { namespace Meta { namespace Services
19 {
20 
21 using namespace Arp;
22 using namespace Arp::System::Rsc::Services;
23 
27 {
28 public: // typedefs
29  typedef std::shared_ptr<IDataTraverserService> Ptr;
30  typedef delegate<void(IRscReadEnumerator<RscString<512>>&)> FindInstancesByTypenameResultDelegate;
31 
32 public: // construction/destruction
36  virtual ~IDataTraverserService(void);
37 
38 public: // static policy operation
39  static IRscServiceProxyFactory& GetProxyFactory(void);
40 
41 public: // abstract operations
45  virtual void FindInstancesByTypename(const std::vector<RscString<512>>& typeNames, FindInstancesByTypenameResultDelegate resultDelegate) = 0;
46 
47 private: // deleted methods (for non-copyable classes)
48  IDataTraverserService(const IDataTraverserService& arg) = delete;
49  IDataTraverserService& operator=(const IDataTraverserService& arg) = delete;
50 };
51 
53 // inline methods of class IDataTraverserService
55 {
56 }
57 
59 {
60 }
61 
62 inline IRscServiceProxyFactory& IDataTraverserService::GetProxyFactory()
63 {
64  return DataTraverserServiceProxyFactory::GetInstance();
65 }
66 
67 }}}} // end of namespace Arp::Plc::Meta::Services
Arp.Plc.Meta.Services.IDataTraverserService interface
Definition: IDataTraverserService.hpp:26
virtual ~IDataTraverserService(void)
Destructs this instance and frees all resouces.
Definition: IDataTraverserService.hpp:58
Namespace for classes and interfaces for the Remote Service Call implementation
IDataTraverserService(void)
Constructs an IDataTraverserService instance.
Definition: IDataTraverserService.hpp:54
Root namespace for the PLCnext API
Base interface for all Rsc service interface.
Definition: IRscService.hpp:18