8#include "Arp/Base/Core/PimplPtr.hxx"
9#include "Arp/Io/Commons/Configuration/TicBase.hpp"
10#include "Arp/Plc/Meta/Commons/Io/ChildTypeDefinition.hpp"
11#include "Arp/Plc/Meta/Commons/DataType.hpp"
12#include "Arp/Plc/Meta/Commons/BitSize.hpp"
14namespace Arp::Io::Commons::Configuration
32 using Ptr = std::shared_ptr<TicFieldDefinition>;
50 static const char* GetTicElementName(
void);
53 const String& GetFieldName()
const;
55 const String& GetTypeName()
const;
56 uint32 GetArrayElementCount()
const;
62 bool TryReadAttribute(
TicReader& reader,
const String& attributeName)
final;
63 bool TryCreateElement(
const String& elementName, ChildPtr& result)
final;
64 void OnReadEnd(
void)
override;
68 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:FieldDefinition' from an TIC file.
Definition: TicFieldDefinition.hpp:27
TicFieldDefinition(TicFieldDefinition &&arg) noexcept
The default move constructor.
~TicFieldDefinition(void) override
The default destructor.
TicFieldDefinition(void)
The default constructor.
TicFieldDefinition & operator=(TicFieldDefinition &&arg) noexcept
The default move-assignment operator.
This class is used to read the content of Tic files.
Definition: TicReader.hpp:24
std::uint32_t uint32
The Arp unsigned integer type of 4 byte size.
Definition: PrimitiveTypes.hpp:33