8#include "Arp/Base/Core/PimplPtr.hxx"
9#include "Arp/Io/Commons/Configuration/TicBase.hpp"
10#include "Arp/Plc/Meta/Commons/BitSize.hpp"
11#include "Arp/Plc/Meta/Commons/Io/TypeDefinition.hpp"
13namespace Arp::Io::Commons::Configuration
17class TicFieldDefinition;
30 using Ptr = std::shared_ptr<TicStructDefinition>;
47 static const char* GetTicElementName(
void);
50 const String& GetTypeName()
const;
56 bool TryReadAttribute(
TicReader& reader,
const String& attributeName)
final;
57 bool TryCreateElement(
const String& elementName, ChildPtr& result)
final;
58 void OnReadEnd(
void)
override;
62 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 the content of Tic files.
Definition: TicReader.hpp:24
This class is used to read a entity of the type 'IO:StructDefinition' from a TIC file.
Definition: TicStructDefinition.hpp:25
TicStructDefinition & operator=(TicStructDefinition &&arg) noexcept
The default move-assignment operator.
TicStructDefinition(TicStructDefinition &&arg) noexcept
The default move constructor.
~TicStructDefinition(void) override
The default destructor.