PLCnext API Documentation  22.0.0.43
IDiagnosisQueryService.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 "DiagnosisQueryServiceProxyFactory.hpp"
10 #include "ChannelQualifier.hpp"
11 #include "DiagnosisItem.hpp"
12 #include "DiagnosisSource.hpp"
13 #include "FilterLevel.hpp"
14 #include <vector>
15 
16 // DO NOT MODIFY THIS FILE, THIS FILE IS AUTOGENERATED BY IDiagnosisQueryService.cs
17 
18 namespace Arp { namespace Io { namespace ProfinetStack { namespace Controller { namespace Services
19 {
20 
21 using namespace Arp;
22 using namespace Arp::System::Rsc::Services;
23 
29 {
30 public: // typedefs
31  using Ptr = std::shared_ptr<IDiagnosisQueryService>;
32 
33 public: // construction/destruction
35  IDiagnosisQueryService(void) = default;
36 
37 public: // static policy operation
38  static IRscServiceProxyFactory& GetProxyFactory(void);
39 
40 public: // abstract operations
56  virtual std::vector<DiagnosisItem> Query(const DiagnosisSource& source, FilterLevel filterLevel = FilterLevel::None, ChannelQualifier filterSeverity = ChannelQualifier::Normal) = 0;
57 };
58 
60 // inline methods of class IDiagnosisQueryService
61 inline IRscServiceProxyFactory& IDiagnosisQueryService::GetProxyFactory()
62 {
63  return DiagnosisQueryServiceProxyFactory::GetInstance();
64 }
65 
66 }}}}} // end of namespace Arp::Io::ProfinetStack::Controller::Services
This services allows access to the diagnosis informationen of the subordinated devices. The diagnosis information of the related submodules are shadowed in a local data base.
Definition: IDiagnosisQueryService.hpp:28
Contains the information where a diagnosis is located on the device according to "Guideline for PROFI...
Definition: DiagnosisSource.hpp:24
Namespace for classes and interfaces for the Remote Service Call implementation
Definition: IRscReadEnumerator.hxx:9
All stored diagnoses sources will be returned.
Root namespace for the PLCnext API
Base interface for all Rsc service interface.
Definition: IRscService.hpp:18
Normal severity, used if diagnosis is not QualifiedChannelDiagnosis
FilterLevel
Used to determine which values of Arp.Io.ProfinetStack.Controller.Services.DiagnosisSource are used t...
Definition: FilterLevel.hpp:20
ChannelQualifier
Describes diagnosis severity.
Definition: ChannelQualifier.hpp:20