Added basyx::submodel::simple implementation of api_v2 interfaces
Change-Id: Ifc764b76268418189bd463f061a575f1a5195521
Signed-off-by: Thomas Psota <thomas.psota@iese.fraunhofer.de>
diff --git a/sdks/c++/basys.sdk.cc/include/BaSyx/submodel/simple/dataspecification/DataSpecification.h b/sdks/c++/basys.sdk.cc/include/BaSyx/submodel/simple/dataspecification/DataSpecification.h
new file mode 100644
index 0000000..05cd21b
--- /dev/null
+++ b/sdks/c++/basys.sdk.cc/include/BaSyx/submodel/simple/dataspecification/DataSpecification.h
@@ -0,0 +1,42 @@
+#ifndef BASYX_SUBMODEL_SIMPLE_DATASPECIFICATION_DATASPECIFICATION_H
+#define BASYX_SUBMODEL_SIMPLE_DATASPECIFICATION_DATASPECIFICATION_H
+
+#include <BaSyx/submodel/api_v2/dataspecification/IDataSpecification.h>
+
+#include <BaSyx/submodel/simple/qualifier/Identifiable.h>
+
+namespace basyx {
+namespace submodel {
+namespace simple {
+
+class DataSpecification : public api::IDataSpecification
+{
+private:
+ Identifiable ident;
+ std::unique_ptr<api::IDataSpecificationContent> content;
+public:
+ ~DataSpecification() = default;
+ DataSpecification(const std::string & idShort, const Identifier & identifier);
+
+ void setContent(std::unique_ptr<api::IDataSpecificationContent> content);
+
+ // Inherited via IDataSpecification
+ virtual api::IDataSpecificationContent & getContent() override;
+
+ // Inherited via IIdentifiable
+ virtual const std::string & getIdShort() const override;
+ virtual const std::string * const getCategory() const override;
+ virtual simple::LangStringSet & getDescription() override;
+ virtual const simple::LangStringSet & getDescription() const override;
+ virtual const IReferable * const getParent() const override;
+ virtual const AdministrativeInformation & getAdministrativeInformation() const override;
+ virtual AdministrativeInformation & getAdministrativeInformation() override;
+ virtual Identifier getIdentification() const override;
+ virtual bool hasAdministrativeInformation() const override;
+};
+
+}
+}
+}
+
+#endif /* BASYX_SUBMODEL_SIMPLE_DATASPECIFICATION_DATASPECIFICATION_H */