PLCnext API Documentation  22.9.0.33
TicSerializationContext.hpp
1 //
3 // Copyright PHOENIX CONTACT Electronics GmbH
4 //
6 #pragma once
7 #include "Arp/System/Core/Arp.h"
8 #include "Arp/System/Commons/Diagnostics/Logging/Logging.h"
9 
10 namespace Arp { namespace System { namespace Commons { namespace Configuration
11 {
12 
14 
15 // forwards
16 class TicReader;
17 
19 {
20 public: // typedefs
21 
22 public: // construction/destruction
26  ~TicSerializationContext(void) = default;
27 
28 public: // setter/getter operations
29  LoggerBase& GetLogger(void);
30  void SetFilePath(const String& value);
31  const String& GetFilePath(void) const;
32 
33 public: // operations
34  void ReadDocumentContext(TicReader& reader);
35  void InvalidXmlElementOccurs(const char* xmlElementName);
36 
37 private: // deleted methods
39  TicSerializationContext& operator=(const TicSerializationContext& arg) = delete;
40 
41 private: // fields
42  LoggerBase& logger;
43  String filePath;
44 };
45 
47 // inline methods of class TicSerializationContext
48 inline LoggerBase& TicSerializationContext::GetLogger()
49 {
50  return this->logger;
51 }
52 
53 inline void TicSerializationContext::SetFilePath(const String& value)
54 {
55  this->filePath = value;
56 }
57 
58 inline const String& TicSerializationContext::GetFilePath()const
59 {
60  return this->filePath;
61 }
62 
63 }}}} // end of namespace Arp::System::Commons::Configuration
Definition: TicSerializationContext.hpp:19
TicSerializationContext(TicReader &reader)
Constructs an TicSerializationContext instance.
~TicSerializationContext(void)=default
Destructs this instance and frees all resources.
@ System
System components used by the System, Device, Plc or Io domains.
Namespace for logging classes
Definition: LoggingForwards.h:10
Root namespace for the PLCnext API