summaryrefslogtreecommitdiff
path: root/settings.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'settings.cpp')
-rw-r--r--settings.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/settings.cpp b/settings.cpp
index 62425f5b..df95a56c 100644
--- a/settings.cpp
+++ b/settings.cpp
@@ -90,6 +90,21 @@ string Settings::GetSchema()
}
+bool Settings::DeserializeSettings(const string& contents, Ref<BinaryView> view, BNSettingsScope scope)
+{
+ return BNDeserializeSettings(m_registry.c_str(), contents.c_str(), view ? view->GetObject() : nullptr, scope);
+}
+
+
+string Settings::SerializeSettings(Ref<BinaryView> view, BNSettingsScope scope)
+{
+ char* settingsStr = BNSerializeSettings(m_registry.c_str(), view ? view->GetObject() : nullptr, scope);
+ string settings(settingsStr);
+ BNFreeString(settingsStr);
+ return settings;
+}
+
+
bool Settings::Reset(const string& id, Ref<BinaryView> view, BNSettingsScope scope)
{
return BNSettingsReset(m_registry.c_str(), id.c_str(), view ? view->GetObject() : nullptr, scope);