8#include "Arp/Base/Core/PimplPtr.hxx"
9#include "Arp/Io/Commons/Configuration/TicBase.hpp"
10#include "Arp/Plc/Meta/Commons/Io/TypeDefinition.hpp"
13namespace Arp::Io::Commons::Configuration
26 using Ptr = std::shared_ptr<TicDataTypes>;
28 using TypeDefinitions = std::vector<TypeDefinition>;
43 static const char* GetTicElementName(
void);
48 TypeDefinitions CreateTypeDefinitions(
void)
const;
49 bool TryReadAttribute(
TicReader& reader,
const String& attributeName)
final;
50 bool TryCreateElement(
const String& elementName, ChildPtr& result)
final;
51 void OnReadEnd(
void)
override;
55 const Impl& GetImpl(
void)
const;
Adapter class to implement PImpl idiom.
Definition: PimplPtr.hxx:15
This class represents the Arp String. The implementation is based on std::string.
Definition: String.hpp:39
This class is the base class for all predefined Tic elements.
Definition: TicBase.hpp:42
This class is used to read a entity of the type 'IO:DataTypes' from a TIC file.
Definition: TicDataTypes.hpp:21
TicDataTypes & operator=(TicDataTypes &&arg) noexcept
The default move-assignment operator.
~TicDataTypes(void) override
The default destructor.
TicDataTypes(TicDataTypes &&arg) noexcept
The default move constructor.
This class is used to read the content of Tic files.
Definition: TicReader.hpp:24