Thomas Psota | 7e562b6 | 2020-04-30 15:11:32 +0200 | [diff] [blame] | 1 | #ifndef BASYX_SUBMODEL_SIMPLE_DATASPECIFICATION_DATASPECIFICATION_H |
| 2 | #define BASYX_SUBMODEL_SIMPLE_DATASPECIFICATION_DATASPECIFICATION_H |
| 3 | |
| 4 | #include <BaSyx/submodel/api_v2/dataspecification/IDataSpecification.h> |
| 5 | |
| 6 | #include <BaSyx/submodel/simple/qualifier/Identifiable.h> |
| 7 | |
| 8 | namespace basyx { |
| 9 | namespace submodel { |
| 10 | namespace simple { |
| 11 | |
| 12 | class DataSpecification : public api::IDataSpecification |
| 13 | { |
| 14 | private: |
| 15 | Identifiable ident; |
| 16 | std::unique_ptr<api::IDataSpecificationContent> content; |
| 17 | public: |
| 18 | ~DataSpecification() = default; |
| 19 | DataSpecification(const std::string & idShort, const Identifier & identifier); |
| 20 | |
| 21 | void setContent(std::unique_ptr<api::IDataSpecificationContent> content); |
| 22 | |
| 23 | // Inherited via IDataSpecification |
| 24 | virtual api::IDataSpecificationContent & getContent() override; |
| 25 | |
| 26 | // Inherited via IIdentifiable |
| 27 | virtual const std::string & getIdShort() const override; |
| 28 | virtual const std::string * const getCategory() const override; |
Constantin Ziesche | 02817f1 | 2020-08-04 21:40:43 +0200 | [diff] [blame^] | 29 | void setCategory(const std::string & category) override; |
Thomas Psota | 7e562b6 | 2020-04-30 15:11:32 +0200 | [diff] [blame] | 30 | virtual simple::LangStringSet & getDescription() override; |
| 31 | virtual const simple::LangStringSet & getDescription() const override; |
| 32 | virtual const IReferable * const getParent() const override; |
| 33 | virtual const AdministrativeInformation & getAdministrativeInformation() const override; |
| 34 | virtual AdministrativeInformation & getAdministrativeInformation() override; |
| 35 | virtual Identifier getIdentification() const override; |
| 36 | virtual bool hasAdministrativeInformation() const override; |
| 37 | }; |
| 38 | |
| 39 | } |
| 40 | } |
| 41 | } |
| 42 | |
| 43 | #endif /* BASYX_SUBMODEL_SIMPLE_DATASPECIFICATION_DATASPECIFICATION_H */ |