OpenTwin 0.1
OpenTwin
 
Loading...
Searching...
No Matches
EntityBlockStorage.h
Go to the documentation of this file.
1#pragma once
2#include "EntityBlock.h"
3
4struct __declspec(dllexport) ParameterProperties
5{
6 bool m_propertyConstParameter = false;
7 std::string m_propertyName = "";
8 std::string m_propertyUnit = "";
9};
10
11struct __declspec(dllexport) QuantityProperties
12{
13 std::string m_propertyType = "";
14 std::string m_propertyName = "";
15 std::string m_propertyUnit = "";
16};
17
18class __declspec(dllexport) EntityBlockStorage : public EntityBlock
19{
20public:
21 EntityBlockStorage(ot::UID ID, EntityBase* parent, EntityObserver* obs, ModelState* ms, ClassFactoryHandler* factory, const std::string& owner);
22 virtual ot::GraphicsItemCfg* CreateBlockCfg() override;
23 virtual std::string getClassName(void) override { return "EntityBlockStorage"; };
24 virtual entityType getEntityType(void) override { return TOPOLOGY; }
25 void createProperties();
26 virtual bool updateFromProperties() override;
27
28 int32_t getNumberOfQuantities();
29 int32_t getNumberOfParameters();
30 int32_t getNumberOfMetaData();
31
32 static const std::string getIconName() { return "Database_store.svg"; }
33
34 const std::list<ot::Connector> getConnectorsQuantity();
35 const std::list<ot::Connector> getConnectorsParameter();
36 const std::list<ot::Connector> getConnectorsMetadata();
37
38 const ParameterProperties getPropertiesParameter(const std::string& _parameterName) ;
39 const QuantityProperties getPropertiesQuantity(const std::string& _quantityName) ;
40
41 std::string getSeriesName();
42private:
43 std::list<ot::Connector*> m_quantityInputs;
44 const std::string m_quantityInputNameBase = "Quantity";
45 std::list<ot::Connector*> m_parameterInputs;
46 const std::string m_parameterInputNameBase = "Parameter";
47 std::list<ot::Connector*> m_metaDataInputs;
48 const std::string m_metaDataInputNameBase = "Meta data";
49
50 const std::string m_propertyNbOfQuantities = "Number of quantities";
51 const std::string m_propertyNbOfParameter = "Number of parameters";
52 const std::string m_propertyNbOfMetaData = "Number of meta data";
53 const std::string m_groupGeneral = "General";
54
55 const std::string m_propertyConstParameter = "Is constant";
56 const std::string m_propertyName = "Name";
57 const std::string m_propertyUnit = "Unit";
58 const std::string m_propertyType = "Type";
59
60 void createParameterProperties(const std::string& _groupName);
61
62 void createConnectors();
63 void clearConnectors();
64};
The GraphicsItemCfg is the base class for all graphics item configurations.
Definition GraphicsItemCfg.h:33
unsigned long UID
Unique identifier (32 bit unsigned integer)
Definition CoreTypes.h:27