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

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

#include <TicPorts.hpp>

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

Public Types

using Ptr = std::shared_ptr< TicPorts >
 
- 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

 TicPorts (const TicPorts &arg)=delete
 
 TicPorts (TicPorts &&arg) noexcept
 Default move constructor.
 
TicPortsoperator= (const TicPorts &arg)=delete
 
TicPortsoperator= (TicPorts &&arg) noexcept
 Default move-assignment operator.
 
 ~TicPorts (void) override
 Default destructor.
 
 TicPorts (void)
 Default constructor.
 
size_t GetPortCount (void) const
 Returns the port 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 () override
 Validation method. Checks the port count with the count of read port 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:Ports. More...
 

Detailed Description

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

By default this class reads the Tic attribute PortCount. To add custom attributes, the method TryReadCustomAttribute needs to be specialized by a derived class.

The factory method TryCreateCustomElement creates instances for the read sub-elements. The default implementation of this class creates an instance of the type TicPort for any Tic element IO:Port.

Member Function Documentation

◆ GetPortCount()

size_t Arp::Io::Commons::Configuration::TicPorts::GetPortCount ( void  ) const

Returns the port count.

Returns
The port count.

◆ GetTicElementName()

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

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

Returns
IO:Ports

◆ OnReadEnd()

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

Validation method. Checks the port count with the count of read port elements.

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

◆ TryCreateElement()

bool Arp::Io::Commons::Configuration::TicPorts::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 port element IO:Port is read, an element of type TicPort is created by default.

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

◆ TryReadAttribute()

bool Arp::Io::Commons::Configuration::TicPorts::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 method reads the attributes PortCount by default.

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


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