8#include "Arp/Plc/Commons/DataTypeEnum.hpp"
9#include "Arp/Plc/Commons/Meta/TypeSystem/DataInfoDeduction.hxx"
10#include "Arp/Plc/Commons/Meta/TypeSystem/TypeDefinition.hpp"
13namespace Arp {
namespace Plc {
namespace Commons {
namespace Meta
20 template<
typename TProgram,
size_t MaxNumPorts>
22 std::array<byte*, MaxNumPorts>& ports,
size_t portsOffset);
26 const String& programInstanceName,
size_t programSize,
size_t programAlign,
size_t portsOffset,
27 size_t maximumNumberOfPorts,
byte** ports);
39 void CheckNumberOfPorts()
const;
40 void CheckName(
const String& name)
const;
47 String programInstanceName;
49 size_t maximumNumberOfPorts;
55template<
typename TProgram,
size_t MaxNumPorts>
57 std::array<byte*, MaxNumPorts>& ports,
size_t portsOffset)
60 alignof(TProgram), portsOffset, MaxNumPorts, ports.data());
73 DataInfo dataInfo = deduction(portName, value);
This (meta programming) class provides the type-name according the CLS (common language specification...
Definition: CommonTypeName.hxx:33
This class represents the Arp String. The implementation is based on std::string.
Definition: String.hpp:39
Root namespace for the PLCnext API