PLCnext API Documentation 25.0.2.69
Namespaces | Classes | Enumerations | Functions
Arp::Plc::Meta::Commons Namespace Reference

Namespace for interface types of the Meta component More...

Namespaces

namespace  Io
 Namespace for interface types for IO variables
 

Classes

class  ArrayDimension
 This class represents the dimensions of an array More...
 
class  BitSize
 This class represents a size of a variable More...
 
class  CustomAttribute
 This class represents an attribute on a variable as a key-value-pair More...
 
class  DataTypeEnum
 
class  IIoMetaComponent
 Interface for all components providing IO related meta data More...
 

Enumerations

enum class  DataType : uint32 {
  None = 0 , Void = 1 , Bit = 2 , Boolean = 3 ,
  UInt8 = 4 , Int8 = 5 , Char8 = 6 , Char16 = 7 ,
  UInt16 = 8 , Int16 = 9 , UInt32 = 10 , Int32 = 11 ,
  UInt64 = 12 , Int64 = 13 , Float32 = 14 , Float64 = 15 ,
  Primitive = 32 , DateTime = 33 , IecTime = 34 , IecTime64 = 35 ,
  IecDate = 36 , IecDate64 = 37 , IecDateTime = 38 , IecDateTime64 = 39 ,
  IecTimeOfDay = 40 , IecTimeOfDay64 = 41 , StaticString = 42 , IecString = 43 ,
  ClrString = 44 , String = 45 , StaticWString = 46 , IecWString = 47 ,
  Elementary = 64 , ArrayElement = 65 , Struct = 66 , Class = 67 ,
  FunctionBlock = 68 , Subsystem = 69 , Program = 70 , Component = 71 ,
  Library = 72 , Node = 73 , Complex = 254 , Pointer = (1 << 9) ,
  Array = (1 << 10) , Enum = (1 << 11) , Reference = (1 << 12) , BaseTypeMask = 0x00FF
}
 This enum represents the data type of a variable. More...
 
enum class  StandardAttribute : uint64 {
  None = 0 , Hidden = 1 , Input = 2 , Output = 4 ,
  ReadOnly = 8 , Retain = 16 , Opc = 32 , Ehmi = 64 ,
  ProfiCloud = 128 , Archive = 256 , Invisible = 512 , Assignable = 1024 ,
  Redundant = 2048 , Io = 4096
}
 Standard attributes to types More...
 

Functions

bool operator== (const BitSize &lhs, const BitSize &rhs)
 Equality comparison of ByteSize More...
 
ARP_EXPORT bool operator< (const BitSize &lhs, const BitSize &rhs)
 Compares two BitSize objects on less-than. More...
 
BitSize operator+ (const BitSize &lhs, const BitSize &rhs)
 Adds the rhs to lhs . More...
 
std::ostream & operator<< (std::ostream &os, const BitSize &value)
 Format to ostream More...
 
std::istream & operator>> (std::istream &is, BitSize &value)
 Reads the bit size in format XXXX.Y from an input stream with X as byte size and y as bit size. More...
 
ARP_EXPORT std::ostream & operator<< (std::ostream &os, DataType value)
 
ARP_EXPORT std::istream & operator>> (std::istream &is, DataType &value)
 
constexpr DataType operator| (DataType lhs, DataType rhs)
 Bitwise OR operation More...
 
constexpr DataType operator& (DataType lhs, DataType rhs)
 Bitwise AND operation More...
 
constexpr DataType operator~ (DataType arg)
 Bitwise negate operation More...
 
constexpr DataTypeoperator&= (DataType &lhs, DataType rhs)
 Bitwise AND-assign operation More...
 
constexpr DataTypeoperator|= (DataType &lhs, DataType rhs)
 Bitwise OR-assign operation More...
 
bool operator== (const DataTypeEnum &lhs, DataType rhs)
 
bool operator== (DataType lhs, const DataTypeEnum &rhs)
 
ARP_EXPORT std::ostream & operator<< (std::ostream &os, StandardAttribute value)
 
ARP_EXPORT std::istream & operator>> (std::istream &is, StandardAttribute &value)
 
constexpr StandardAttribute operator| (StandardAttribute lhs, StandardAttribute rhs)
 
constexpr StandardAttribute operator& (StandardAttribute lhs, StandardAttribute rhs)
 
constexpr StandardAttributeoperator|= (StandardAttribute &lhs, StandardAttribute rhs)
 
constexpr StandardAttributeoperator&= (StandardAttribute &lhs, StandardAttribute rhs)
 
constexpr StandardAttribute operator~ (StandardAttribute arg)
 

Detailed Description

Namespace for interface types of the Meta component

Enumeration Type Documentation

◆ DataType

enum class Arp::Plc::Meta::Commons::DataType : uint32
strong

This enum represents the data type of a variable.

Enumerator
None 

summary>Unspecified.

Void 

summary>Void - Arp C++ empty type

summary>Bit - Arp C++ data type (1 Byte)

Bit 

summary>Boolean - Arp C++ data type (1 Byte)

Boolean 

summary>UInt8 - Arp C++ data type (1 Byte)

UInt8 

summary>Int8 - Arp C++ data type (1 Byte)

Int8 

summary>Char8 - Arp C++ data type (1 Byte)

Char8 

summary>Char16 - Arp C++ data type (2 Byte)

Char16 

summary>UInt16 - Arp C++ data type (2 Byte)

UInt16 

summary>Int16 - Arp C++ data type (2 Byte)

Int16 

summary>UInt32 - Arp C++ data type (4 Byte)

UInt32 

summary>Int32 - Arp C++ data type (4 Byte)

Int32 

summary>UInt64 - Arp C++ data type (8 Byte)

UInt64 

summary>Int64 - Arp C++ data type (8 Byte)

Int64 

summary>Float32 - Arp C++ data type (4 Byte)

Float32 

summary>Float64 - Arp C++ data type (8 Byte)

Float64 

summary>Limit of primitive types.

DateTime 

summary>C++ DateTime type

summary>IEC type: TIME [int32]

IecTime 

summary>IEC type: LTIME [int64]

IecTime64 

summary>IEC type: DATE [N/A]

remarks>Not supported by PCWE.

IecDate 

summary>IEC type: LDATE [int64]

IecDate64 

summary>IEC type: DATE_AND_TIME, DT [N/A]

remarks>Not supported by PCWE.

IecDateTime 

summary>IEC type: LDATE_AND_TIME, LDT [int64]

IecDateTime64 

summary>IEC type: TIME_OF_DAY, TOD [N/A]

remarks>Not supported by PCWE.

IecTimeOfDay 

summary>IEC type: LTIME_OF_DAY, LTOD [int64]

IecTimeOfDay64 

summary>Static String type

StaticString 

summary>Iec String type, only for internal use

IecString 

summary>.NET/C# String type, only for internal use (not supported yet)

ClrString 

summary>C++ String type, only for internal use (not supported yet)

String 

summary>Static Wide String type (UTF-16)

StaticWString 

summary>Iec Wide String type (UTF-16), only for internal use

IecWString 

summary>Limit of elementary types.

ArrayElement 

summary>ArrayOfArray

summary>Struct

Struct 

summary>Class

Class 

summary>Function Block

FunctionBlock 

summary>Subsystem

Subsystem 

summary>Program

Program 

summary>Component

Component 

summary>Library

Library 

summary>Node

Node 

summary>Limit of complex types.

Pointer 

summary>Determines a pointer type.

remarks>Pointer are declared as Elementary kind.

summary>Determines an array type.

remarks>Arrays are declared as Elementary kind.

Array 

summary>Determines an Enumeration type.

remarks>Enums are declared as Elementary kind.

Enum 

summary>Determines a C# reference type.

remarks>References are declared as Elementary kind.

BaseTypeMask 

summary>For removing all flags

◆ StandardAttribute

enum class Arp::Plc::Meta::Commons::StandardAttribute : uint64
strong

Standard attributes to types

These standard attributes are used to mark ports as inputs, outputs, retain, etc.

Enumerator
None 

The attribute value is not set.

Hidden 

The node is hidden, that is, it has just a technical purpose but no logical meaning and does not occur in any variable path.

Input 

The node is an input port.

Output 

The node is an output port.

ReadOnly 

The node is read only.

Retain 

The node shall be retained.

Opc 

The node is visible for OPC.

Ehmi 

The node is visible for eHmi.

ProfiCloud 

The node is visible for ProfiCloud.

Archive 

The node is set to archive.

Invisible 

Applicative attribute for PLCnext, to modify variables in the data list or similar.

Assignable 

Applicative attribute for PLCnext, to reinitialize pointer variables.

Redundant 

The node is visible for Redundancy.

Io 

The node is provided by an Io component

Function Documentation

◆ operator&()

constexpr DataType Arp::Plc::Meta::Commons::operator& ( DataType  lhs,
DataType  rhs 
)
constexpr

Bitwise AND operation

Parameters
lhsLeft operand
rhsRight operand
Returns
Bitwise AND of the underlying data type

◆ operator&=()

constexpr DataType & Arp::Plc::Meta::Commons::operator&= ( DataType lhs,
DataType  rhs 
)
constexpr

Bitwise AND-assign operation

Parameters
lhsLeft operand, is modified to the return value
rhsRight operand
Returns
Bitwise AND of the underlying data type

◆ operator+()

ARP_EXPORT BitSize Arp::Plc::Meta::Commons::operator+ ( const BitSize lhs,
const BitSize rhs 
)

Adds the rhs to lhs .

Parameters
lhsThe left argument to add to the right argument.
rhsThe right argument to add to the left argument.
Returns
The result of the addition.

◆ operator<()

ARP_EXPORT bool Arp::Plc::Meta::Commons::operator< ( const BitSize lhs,
const BitSize rhs 
)

Compares two BitSize objects on less-than.

Returns
true if total byte size of lhs is less than total bit size of rhs , otherwise false.

◆ operator<<()

ARP_EXPORT std::ostream & Arp::Plc::Meta::Commons::operator<< ( std::ostream &  os,
const BitSize value 
)

Format to ostream

Parameters
osOutput stream
valueBitsize object
Returns
Output stream

Format: bytes.bits, e.g. 0.1, 7.0

◆ operator==()

ARP_EXPORT bool Arp::Plc::Meta::Commons::operator== ( const BitSize lhs,
const BitSize rhs 
)

Equality comparison of ByteSize

Parameters
lhsLeft operand
rhsRight operand
Returns
true if the objects are equal

◆ operator>>()

ARP_EXPORT std::istream & Arp::Plc::Meta::Commons::operator>> ( std::istream &  is,
BitSize value 
)

Reads the bit size in format XXXX.Y from an input stream with X as byte size and y as bit size.

Parameters
isThe input stream to read from.
valueThe read bit size.
Returns
The as argument passed input Stream.

◆ operator|()

constexpr DataType Arp::Plc::Meta::Commons::operator| ( DataType  lhs,
DataType  rhs 
)
constexpr

Bitwise OR operation

Parameters
lhsLeft operand
rhsRight operand
Returns
Bitwise OR of the underlying data type

◆ operator|=()

constexpr DataType & Arp::Plc::Meta::Commons::operator|= ( DataType lhs,
DataType  rhs 
)
constexpr

Bitwise OR-assign operation

Parameters
lhsLeft operand, is modified to the return value
rhsRight operand
Returns
Bitwise OR of the underlying data type

◆ operator~()

constexpr DataType Arp::Plc::Meta::Commons::operator~ ( DataType  arg)
constexpr

Bitwise negate operation

Parameters
argargument
Returns
Bitwise negated representation of the argument