ADTF  3.18.2
streammetatypeplain.h File Reference

Copyright © Audi Electronics Venture GmbH. More...

Go to the source code of this file.

Classes

struct  stream_meta_type_plain
 Use this Stream Meta Type if your sample data will be any of this type: bool, uint8_t, int8_t, uint16_t, int16_t, uint32_t, int32_t, uint64_t, int64_t, float or double. More...
 
class  stream_type_plain< T >
 Generator template to create an instance of a ant::IStreamType class for ant::stream_meta_type_plain ("adtf/plaintype"). More...
 
struct  stream_meta_type_plain
 Use this Stream Meta Type if your sample data will be any of this type: bool, uint8_t, int8_t, uint16_t, int16_t, uint32_t, int32_t, uint64_t, int64_t, float, double or plain array T[], std::array, std::vector of them. More...
 
class  stream_type_plain< T >
 Generator template to create an instance of a ant::IStreamType class for penguin::stream_meta_type_plain ("adtf/plaintype"). More...
 
class  stream_type_plain< T< ValueType, szArraySize > >
 Specialization for stream_type_plain<std::array<VAL_T, N>> More...
 
class  stream_type_plain< ValueType[szArraySize]>
 Specialization for stream_type_plain<ValueType[N]>> (i.e. More...
 

Namespaces

 adtf
 Namespace for entire ADTF SDK.
 
 adtf::streaming
 Namespace for the ADTF Streaming SDK.
 
 adtf::streaming::ant
 Namespace for all functionality of the ADTF Streaming SDK provided since v3.0.
 
 adtf::streaming::lucky
 Namespace for all functionality of the ADTF Streaming SDK provided since v3.11.
 
 adtf::streaming::penguin
 Namespace for all functionality of the ADTF Streaming SDK provided since v3.15.
 

Macros

#define ADTF_DEFINE_STREAM_TYPE_PLAIN_FOR(_thetype_, _propval_)
 Macro to create a class for the plain StreamType instance. More...
 

Functions

 ADTF_DEFINE_STREAM_TYPE_PLAIN_FOR (tBool, "BOOL")
 defines a stream_type_plain for the c-type bool
 
 ADTF_DEFINE_STREAM_TYPE_PLAIN_FOR (tInt8, "INT8")
 defines a stream_type_plain for the c-type int8_t
 
 ADTF_DEFINE_STREAM_TYPE_PLAIN_FOR (tUInt8, "UINT8")
 defines a stream_type_plain for the ctype uint8_t
 
 ADTF_DEFINE_STREAM_TYPE_PLAIN_FOR (tInt16, "INT16")
 defines a stream_type_plain for the c-type int16_t
 
 ADTF_DEFINE_STREAM_TYPE_PLAIN_FOR (tUInt16, "UINT16")
 defines a stream_type_plain for the c-type uint16_t
 
 ADTF_DEFINE_STREAM_TYPE_PLAIN_FOR (tInt32, "INT32")
 defines a stream_type_plain for the c-type int32_t
 
 ADTF_DEFINE_STREAM_TYPE_PLAIN_FOR (tUInt32, "UINT32")
 defines a stream_type_plain for the c-type uint32_t
 
 ADTF_DEFINE_STREAM_TYPE_PLAIN_FOR (tInt64, "INT64")
 defines a stream_type_plain for the c-type int64_t
 
 ADTF_DEFINE_STREAM_TYPE_PLAIN_FOR (tUInt64, "UINT64")
 defines a stream_type_plain for the c-type uint64_t
 
 ADTF_DEFINE_STREAM_TYPE_PLAIN_FOR (tFloat32, "FLOAT32")
 defines a stream_type_plain for the c-type float
 
 ADTF_DEFINE_STREAM_TYPE_PLAIN_FOR (tFloat64, "FLOAT64")
 defines a stream_type_plain for the c-type double
 
template<typename T >
ucom::ant::object_ptr< ant::IStreamType > create_adtf_plain_stream_type ()
 Convenience functionality to create a stream type plain - see Stream Meta Type "adtf/plaintype". More...
 
template<typename T >
ucom::ant::object_ptr< ant::IStreamType > create_adtf_plain_stream_type ()
 Convenience functionality to create a stream type plain - see Stream Meta Type "adtf/plaintype". More...
 

Detailed Description

Copyright © Audi Electronics Venture GmbH.

All rights reserved

Definition in file streammetatypeplain.h.

Macro Definition Documentation

◆ ADTF_DEFINE_STREAM_TYPE_PLAIN_FOR

#define ADTF_DEFINE_STREAM_TYPE_PLAIN_FOR (   _thetype_,
  _propval_ 
)
Value:
template <> \
class stream_type_plain<_thetype_> : public cStreamType \
{ \
public: \
static constexpr const char *const PlainTypeValue = _propval_; \
static constexpr const char* const PlainTypeName = #_thetype_; \
stream_type_plain() : cStreamType(stream_meta_type_plain()) \
{ \
adtf::ucom::object_ptr<adtf::base::ant::IProperties> pProperties; \
THROW_IF_FAILED(GetConfig(pProperties)); \
pProperties->SetProperty(adtf::base::property<adtf_util::cString>(stream_meta_type_plain::PlainTypeProperty, PlainTypeValue)); \
pProperties->SetProperty(adtf::base::property<adtf_util::cString>("md_definitions",\
adtf_util::cString::Format(R"(<struct name=")" _propval_ R"(" alignment="1" version="1">)" \
R"(<element name="value" arraysize="1" type=")" #_thetype_ R"(">)" \
R"(<deserialized alignment="1"/>)" \
R"(<serialized bytepos="0" byteorder="%s"/>)" \
"</element>" \
"</struct>", \
pProperties->SetProperty(adtf::base::property<adtf_util::cString>("md_struct", _propval_));\
} \
}
#define PLATFORM_BIG_ENDIAN_8
defines the big endianess value, that will be retrieved by
Definition: constants.h:121
#define PLATFORM_BYTEORDER
defines a link to __get_platform_byteorder.
Definition: constants.h:124

Macro to create a class for the plain StreamType instance.

Parameters
_thetype_The type you define teh property for.
_propval_The property value set to the stream_meta_type_plain::PlainTypeProperty.

Definition at line 130 of file streammetatypeplain.h.