blob: b63072a0a0cff9c8a2ae88b6ef969347a4454c95 [file] [log] [blame]
jwendelil4ee5bf282020-05-25 16:20:07 +02001#ifndef BASYX_MAP_V2_SDK_DATASPECIFICATION
2#define BASYX_MAP_V2_SDK_DATASPECIFICATION
3
4#include <BaSyx/submodel/api_v2/dataspecification/IDataSpecification.h>
jwendelil4ee5bf282020-05-25 16:20:07 +02005#include <BaSyx/submodel/map_v2/dataspecification/DataSpecificationContent.h>
Constantin Ziesche02817f12020-08-04 21:40:43 +02006#include <BaSyx/submodel/map_v2/qualifier/Identifiable.h>
jwendelil4ee5bf282020-05-25 16:20:07 +02007#include <BaSyx/submodel/simple/dataspecification/DataSpecification.h>
8
9#include <BaSyx/vab/ElementMap.h>
10
11namespace basyx {
12namespace submodel {
13namespace map {
14
15class DataSpecification :
16 public api::IDataSpecification,
17 public virtual Identifiable,
18 public virtual vab::ElementMap
19{
20private:
Thomas Psotab3dfbea2020-06-24 12:45:38 +020021 std::unique_ptr<DataSpecificationContent> content;
jwendelil4ee5bf282020-05-25 16:20:07 +020022public:
Constantin Ziesche02817f12020-08-04 21:40:43 +020023 DataSpecification(const std::string & idShort, const simple::Identifier & identifier, std::unique_ptr<DataSpecificationContent> content);
24 DataSpecification(const std::string & idShort, const simple::Identifier & identifier);
jwendelil4ee5bf282020-05-25 16:20:07 +020025
26 api::IDataSpecificationContent & getContent() override;
27
Constantin Ziesche02817f12020-08-04 21:40:43 +020028 void setContent(std::unique_ptr<DataSpecificationContent> content);
jwendelil4ee5bf282020-05-25 16:20:07 +020029};
30
31}
32}
33}
34#endif //BASYX_MAP_V2_SDK_DATASPECIFICATION_H