15 #ifndef DD_DATA_MODEL_H_INCLUDED
16 #define DD_DATA_MODEL_H_INCLUDED
333 const std::string& additional_info);
336 const std::string& additional_info);
339 const std::string& additional_info);
342 const std::string& additional_info);
345 const std::string& additional_info);
348 const std::string& additional_info);
351 const std::string& additional_info);
354 const std::string& additional_info);
358 const std::string& additional_info)
override;
360 std::shared_ptr<Header> _header;
DataDefinition Datamodel This datamodel is observable for any change of:
utility::TypeAccessMap< UnitPrefix, DataDefinition > UnitPrefixes
container class for all UnitPrefixes
BaseUnits & getBaseUnits()
Get the Base Units object.
bool containsType(const std::string &type_name) const
Retrieve information if the datamodel contains a type with the given name.
TypeOfType getTypeOfType(const std::string &type_name) const
Retrieve information if the datamodel contains a type with the given name and return the type of it.
void setHeader(const Header &header)
Set the Header object.
Units & getUnits()
Get the Units object.
const EnumTypes & getEnumTypes() const
Get the Enum Types object.
utility::TypeAccessMap< DataType, DataDefinition > DataTypes
container class for all DataTypes
utility::TypeAccessMap< EnumType, DataDefinition > EnumTypes
container class for all EnumTypes
utility::TypeAccessMap< Stream, DataDefinition > Streams
container class for all Streams
EnumTypes & getEnumTypes()
Get the Enum Types object.
DataDefinition & operator=(DataDefinition &&)
move assignment operator
TypeOfUnit getTypeOfUnit(const std::string &unit_name) const
Retrieve information if the datamodel contains a unit with the given name and return the type of it.
utility::TypeAccessMap< StructType, DataDefinition > StructTypes
container class for all StructTypes
bool containsUnit(const std::string &unit_name) const
Retrieve information if the datamodel contains a unit with the given name.
const BaseUnits & getBaseUnits() const
Get the Base Units object.
utility::TypeAccessMap< StreamMetaType, DataDefinition > StreamMetaTypes
container class for all StreamMetaTypes
StructTypes & getStructTypes()
Get the Struct Types object.
const StructTypes & getStructTypes() const
Get the Struct Types object.
Streams & getStreams()
Get the Streams object.
std::shared_ptr< const Header > getHeader() const
Get the Header object.
utility::TypeAccessMap< BaseUnit, DataDefinition > BaseUnits
container class for all BaseUnits
const StreamMetaTypes & getStreamMetaTypes() const
Get the Stream Meta Types object.
utility::TypeAccessMap< Unit, DataDefinition > Units
container class for all Units
DataDefinition & operator=(const DataDefinition &other)
resets the current content an copies the other
DataDefinition(const dd::Version &ddl_version)
CTOR.
const DataTypes & getDataTypes() const
Get the Data Types object.
const Streams & getStreams() const
Get the Streams object.
DataDefinition(const DataDefinition &other)
CTOR.
StreamMetaTypes & getStreamMetaTypes()
Get the Stream Meta Types object.
void setVersion(const dd::Version &ddl_version)
Set the DDL Version (in the header!)
bool isEmpty() const
indicates the model as empty or not.
std::shared_ptr< Header > getHeader()
Get the Header object.
const Units & getUnits() const
Get the Units object.
Version getVersion() const
Get the DDL Version.
DataTypes & getDataTypes()
Get the Data Types object.
UnitPrefixes & getUnitPrefixes()
Get the Unit Prefixes object.
const UnitPrefixes & getUnitPrefixes() const
Get the Unit Prefixes object.
DataDefinition(DataDefinition &&)
move CTOR
observable DataDefinition object class to describe (POD) DataType.
observable DataDefinition object class to describe EnumType.
Info Map for the datamodel to hold a set of optional IInfo instances.
observable Stream DataDefinition object.
observable DataDefinition object class to describe StructType.
Unit Prefix - datamodel pefixes.
The ModelObserver utility template.
Model Subject utility to define a Model Subject that notifies one or more observers.
OO DataDefinition Redesign - Data model Observer - Subject pattern.
OO DataDefinition Stream Object.
OO DataDefinition Type objects (DataType, EnumType, StructType, StreamMetaType)
DataDefinition Unit definitions.
DataDefinition Utility class for observable items.
OO DataDefinition Common Design.
OO DataDefinition Redesign - Data model info extension.
ModelEventCode
Model event code for the data model observer.
TypeAccessMapEventCode
Internal event code to inform the parent DD Object about the change of an item within the list.
TypeOfType
Classification of a Type.
@ enum_type
the type is a enum type (EnumType)
@ data_type
the type is a data type (DataType)
@ struct_type
the type is a struct type (StructType)
@ stream_meta_type
the type is an stream meta type (StreamMetaType)
TypeOfUnit
Classification of unit.
@ unit
the unit is a unit (Unit)
@ base_unit
the unit is a base unit (BaseUnit)
definition of the ddl namespace