summaryrefslogtreecommitdiff
path: root/src/components/smart_objects/include/smart_objects/schema_item.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/smart_objects/include/smart_objects/schema_item.h')
-rw-r--r--src/components/smart_objects/include/smart_objects/schema_item.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/components/smart_objects/include/smart_objects/schema_item.h b/src/components/smart_objects/include/smart_objects/schema_item.h
index fa5f6d3adc..9c29e66f36 100644
--- a/src/components/smart_objects/include/smart_objects/schema_item.h
+++ b/src/components/smart_objects/include/smart_objects/schema_item.h
@@ -40,12 +40,14 @@
#include <memory>
#include <vector>
+#include "boost/optional/optional.hpp"
#include "utils/macro.h"
#include "utils/semantic_version.h"
namespace ns_smart_device_link {
namespace ns_smart_objects {
class SmartObject;
+class SMember;
/**
* @brief Base schema item.
@@ -123,6 +125,17 @@ class ISchemaItem {
virtual void BuildObjectBySchema(const SmartObject& pattern_object,
SmartObject& result_object);
+ virtual boost::optional<SMember&> GetMemberSchemaItem(
+ const std::string& member_key) {
+ UNUSED(member_key);
+ return boost::optional<SMember&>();
+ }
+
+ virtual void AddMemberSchemaItem(const std::string& member_key,
+ SMember& member) {
+ UNUSED(member_key);
+ UNUSED(member);
+ }
/**
* @brief Get value param, depends of children
*