PLCnext API Documentation  21.9.0.40
ITraceControllerService.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 "TraceControllerServiceProxyFactory.hpp"
10 #include "Arp/System/Rsc/Services/RscString.hxx"
11 #include <vector>
12 
13 // DO NOT MODIFY THIS FILE, THIS FILE IS AUTOGENERATED BY ITraceControllerService.cs
14 
15 namespace Arp { namespace Services { namespace TraceController { namespace Services
16 {
17 
18 using namespace Arp;
19 using namespace Arp::System::Rsc::Services;
20 
25 {
26 public: // typedefs
27  using Ptr = std::shared_ptr<ITraceControllerService>;
28 
29 public: // construction/destruction
31  ITraceControllerService(void) = default;
32 
33 public: // static policy operation
34  static IRscServiceProxyFactory& GetProxyFactory(void);
35 
36 public: // abstract operations
41  virtual boolean IsSessionDaemonAlive() = 0;
42 
50  virtual boolean LoadSessionConfiguration(const RscString<512>& session, const RscString<512>& path) = 0;
51 
57  virtual std::vector<RscString<512>> ListSessions() = 0;
58 
65  virtual boolean StartSession(const RscString<512>& session) = 0;
66 
73  virtual boolean StopSession(const RscString<512>& session) = 0;
74 
81  virtual boolean DestroySession(const RscString<512>& session) = 0;
82 
91  virtual void LoadTracepointLib() = 0;
92 
101  virtual void UnloadTracepointLib() = 0;
102 
110  virtual boolean TriggerSavingTraceOutputs(boolean stopTriggerSession) = 0;
111 
118  virtual boolean IsSessionInSnapshotMode(const RscString<512>& session) = 0;
119 
126  virtual boolean IsSessionEnabled(const RscString<512>& session) = 0;
127 
134  virtual boolean IsSessionLoaded(const RscString<512>& session) = 0;
135 };
136 
138 // inline methods of class ITraceControllerService
139 inline IRscServiceProxyFactory& ITraceControllerService::GetProxyFactory()
140 {
141  return TraceControllerServiceProxyFactory::GetInstance();
142 }
143 
144 }}}} // end of namespace Arp::Services::TraceController::Services
The TraceController provides an Interface to manage and control the LTTng Tracing on the Control ...
Definition: ITraceControllerService.hpp:24
Namespace for classes and interfaces for the Remote Service Call implementation
Definition: IRscReadEnumerator.hxx:9
Root namespace for the PLCnext API
Base interface for all Rsc service interface.
Definition: IRscService.hpp:18