PLCnext API Documentation 25.0.2.69
Public Types | Public Member Functions | Static Public Member Functions | List of all members
Arp::Io::Commons::Configuration::TicFrames Class Reference

This class is used to read and store a single Tic frames element called IO:Frames. More...

#include <TicFrames.hpp>

Inheritance diagram for Arp::Io::Commons::Configuration::TicFrames:
Inheritance graph

Public Types

using Ptr = std::shared_ptr< TicFrames >
 
- Public Types inherited from Arp::Io::Commons::Configuration::TicBase
using Ptr = std::shared_ptr< TicBase >
 
using ChildPtr = ITicSerializable::Ptr
 
using ChildElements = std::vector< ChildPtr >
 
- Public Types inherited from Arp::Io::Commons::Configuration::ITicSerializable
using Ptr = std::shared_ptr< ITicSerializable >
 

Public Member Functions

 TicFrames (const TicFrames &arg)=delete
 
 TicFrames (TicFrames &&arg) noexcept
 Default move constructor.
 
TicFramesoperator= (const TicFrames &arg)=delete
 
TicFramesoperator= (TicFrames &&arg) noexcept
 Default move-assignment operator.
 
 ~TicFrames (void) override
 Default destructor.
 
 TicFrames (void)
 Default constructor.
 
size_t GetFrameCount (void) const
 Returns the frame count. More...
 
bool TryReadAttribute (TicReader &reader, const String &attributeName) final
 This operation is called every time an attribute is read, to read the attributes content. More...
 
bool TryCreateElement (const String &elementName, ChildPtr &result) final
 Factory method to create a child element. More...
 
void OnReadEnd (void) override
 Validation method. The default implementation checks the frame count with the count of read frame elements. More...
 
Impl & GetImpl (void)
 For internal use only.
 
const Impl & GetImpl (void) const
 
- Public Member Functions inherited from Arp::Io::Commons::Configuration::TicBase
 TicBase (const TicBase &arg)=delete
 
 TicBase (TicBase &&arg) noexcept
 Default move constructor.
 
TicBaseoperator= (const TicBase &arg)=delete
 
TicBaseoperator= (TicBase &&arg) noexcept
 Default move-assignment operator.
 
 ~TicBase (void) override
 Default destructor.
 
 TicBase (void)
 Default constructor.
 
const ChildElements & GetChildElements (void) const
 Returns all childs of this element. More...
 
void ReadTic (TicReader &reader) final
 This operation shall be implemented by all classes which should read its context from Tic files. More...
 
void WriteTic (TicWriter &writer) final
 This method is currently not implemented and should not be used. More...
 
virtual bool TryReadAttribute (TicReader &reader, const String &attributeName)
 This operation is called every time an attribute is read. More...
 
virtual bool TryCreateElement (const String &elementName, ChildPtr &result)
 Factory method to create child elements. More...
 
virtual bool TryReadCustomAttribute (TicReader &reader, const String &attributeName)
 This operation is called every time an attribute is read. More...
 
virtual bool TryCreateCustomElement (const String &elementName, ChildPtr &result)
 Factory method to create child elements. More...
 
virtual void OnReadEnd (void)
 Validates the content of the current element. More...
 
Impl & GetImpl (void)
 For internal use only.
 
const Impl & GetImpl (void) const
 
- Public Member Functions inherited from Arp::Io::Commons::Configuration::ITicSerializable
 ITicSerializable (void)=default
 Constructs an ITicSerializable instance.
 
 ITicSerializable (const ITicSerializable &arg)=default
 Copy constructor.
 
 ITicSerializable (ITicSerializable &&arg) noexcept=default
 Move constructor.
 
ITicSerializableoperator= (const ITicSerializable &arg)=default
 Copy-assignment operator.
 
ITicSerializableoperator= (ITicSerializable &&arg) noexcept=default
 Move-assignment operator.
 
virtual ~ITicSerializable (void)=default
 Destructs this instance and frees all resources.
 
virtual void ReadTic (TicReader &reader)=0
 This operation shall be implemented to read the content from Tic documents. More...
 
virtual void WriteTic (TicWriter &writer)=0
 This operation shall be implemented to write the content to Tic documents. More...
 

Static Public Member Functions

static const char * GetTicElementName (void)
 Returns the Tic name of this element called IO:Frames. More...
 

Detailed Description

This class is used to read and store a single Tic frames element called IO:Frames.

By default this class reads the Tic attribute FrameCount. To add custom attributes, the operation TryReadCustomAttribute needs to be overloaded by a derived class.

The factory method TryCreateCustomElement can be used to create custom sub-elements. The default implementation in this class creates an instance of the type TicFrame for the Tic element IO:Frame.

Member Function Documentation

◆ GetFrameCount()

size_t Arp::Io::Commons::Configuration::TicFrames::GetFrameCount ( void  ) const

Returns the frame count.

Returns
The frame count.

◆ GetTicElementName()

const char * Arp::Io::Commons::Configuration::TicFrames::GetTicElementName ( void  )
static

Returns the Tic name of this element called IO:Frames.

Returns
IO:Frames

◆ OnReadEnd()

void Arp::Io::Commons::Configuration::TicFrames::OnReadEnd ( void  )
overridevirtual

Validation method. The default implementation checks the frame count with the count of read frame elements.

Reimplemented from Arp::Io::Commons::Configuration::TicBase.

◆ TryCreateElement()

bool Arp::Io::Commons::Configuration::TicFrames::TryCreateElement ( const String elementName,
ChildPtr &  result 
)
finalvirtual

Factory method to create a child element.

Parameters
elementNameThe name of the child element to create.
resultThe new created child element.
Returns
true if element was created, otherwise false if element was skipped.

If a Tic frame element IO:Frame is read, an element of type TicFrame is created by default.

Reimplemented from Arp::Io::Commons::Configuration::TicBase.

◆ TryReadAttribute()

bool Arp::Io::Commons::Configuration::TicFrames::TryReadAttribute ( TicReader reader,
const String attributeName 
)
finalvirtual

This operation is called every time an attribute is read, to read the attributes content.

This operation reads the value of the attribute from the given TicReader. If the containing element should not be processed, the operation returns false to skip the attribute.

Parameters
readerThe TicReader to read the attribute value from.
attributeNameThe name of the attribute to read.
Returns
true if the attribute value has been read, otherwise false if the attribute was skipped.

This operation reads the attribute FrameCount by default.

Reimplemented from Arp::Io::Commons::Configuration::TicBase.


The documentation for this class was generated from the following files: