15#ifndef DD_DATA_MODEL_STREAMS_H_INCLUDED
16#define DD_DATA_MODEL_STREAMS_H_INCLUDED
26#include <unordered_map>
180 std::string _type_name;
194 std::string stream_type_name,
195 std::string description = {},
196 const std::vector<Struct>& structs = {});
283 const std::string& additional_info);
287 const std::string& additional_info);
297 std::string _stream_type_name;
298 std::string _description;
Struct(Struct &&)=default
move CTOR
Struct & operator=(Struct &&)=default
move assignment operator.
Struct & operator=(const Struct &)=default
copy assignment operator.
OptionalSize getBytePos() const
Get the Byte Pos.
Struct()
default CTOR
Definition datamodel_streams.h:86
Struct(const Struct &)=default
copy CTOR
Struct(std::string name, std::string type_name, OptionalSize byte_pos={})
CTOR.
void setName(const std::string &name)
Set the Name.
bool operator==(const Struct &other) const
equality operator
const std::string & getName() const
Get the Name.
const std::string & getTypeName() const
Get the Type Name.
void setBytePos(OptionalSize byte_pos)
Set the Byte Pos.
bool operator!=(const Struct &other) const
non-equality operator
void setTypeName(const std::string &type_name)
Set the Type Name.
utility::TypeAccessList< Struct, Stream > Structs
Definiton of the container containts the streamstructs of a stream.
Definition datamodel_streams.h:262
Stream(Stream &&)
move CTOR
void setName(const std::string &name)
Set the Name.
Stream & operator=(Stream &&)
move assignment operator
void setStreamTypeName(const std::string &stream_type_name)
Set the Stream Type Name.
void setDescription(const std::string &description)
Set the Description.
virtual ~Stream()=default
DTOR.
const std::string & getDescription() const
Get the Description.
const Structs & getStructs() const
Get the Structs object.
Stream()=delete
no default CTOR.
Stream & operator=(const Stream &other)
copy assignment operator
const std::string & getName() const
Get the Name.
Stream(const Stream &other)
copy CTOR
Stream(std::string name, std::string stream_type_name, std::string description={}, const std::vector< Struct > &structs={})
CTOR.
bool operator==(const Stream &other) const
equality operator.
const std::string & getStreamTypeName() const
Get the Stream Type Name.
bool operator!=(const Stream &other) const
non equality operator.
Structs & getStructs()
Get the Structs object.
Utility class for observable named items where the order is important.
Definition access_list.h:87
Struct access_type
Definition access_list.h:90
std::unordered_map< std::string_view, value_type > container_named_type
Definition access_list.h:96
definition of the datamodel namespace
Definition datamodel_base.h:28
utility::ModelSubjectUtility< TYPE, ModelEventCode > ModelSubject
Subject template class that is observable.
Definition datamodel_base.h:187
ModelEventCode
Model event code for the data model observer.
Definition datamodel_base.h:34
ModelSubjectUtility< T, TypeAccessMapEventCode > TypeAccessMapSubject
helper template to observe map content.
Definition access_map.h:61
ModelSubjectUtility< T, TypeAccessListEventCode > TypeAccessListSubject
helper template to observe list content.
Definition access_list.h:69
TypeAccessListEventCode
Internal event code to inform the parent DD Object about the change of an item within the list.
Definition access_list.h:43
TypeAccessMapEventCode
Internal event code to inform the parent DD Object about the change of an item within the list.
Definition access_map.h:37
definition of the dd namespace
Definition datamodel_base.h:26
utility::Optional< size_t > OptionalSize
Optional Size Type.
Definition dd_common_types.h:38
definition of the ddl namespace
Definition codec.h:21