nx_metadata_sdk  1.0
Metadata SDK
i_active_setting_changed_action.h
1 // Copyright 2018-present Network Optix, Inc. Licensed under MPL 2.0: www.mozilla.org/MPL/2.0/
2 
3 #pragma once
4 
5 #include <nx/sdk/i_string_map.h>
6 #include <nx/sdk/interface.h>
7 #include <nx/sdk/ptr.h>
8 
9 namespace nx {
10 namespace sdk {
11 
15 class IActiveSettingChangedAction: public Interface<IActiveSettingChangedAction>
16 {
17 public:
18  static auto interfaceId() { return makeId("nx::sdk::IActiveSettingChangedAction"); }
19 
23  virtual const char* activeSettingId() const = 0;
24 
28  virtual const char* settingsModel() const = 0;
29 
31  protected: virtual const IStringMap* getSettingsValues() const = 0;
35  public: Ptr<const IStringMap> settingsValues() const { return toPtr(getSettingsValues()); }
36 
38  protected: virtual const IStringMap* getParams() const = 0;
43  public: Ptr<const IStringMap> params() const { return toPtr(getParams()); }
44 };
45 using IActiveSettingChangedAction0 = IActiveSettingChangedAction;
46 
47 } // namespace sdk
48 } // namespace nx
Definition: i_string_map.h:10
Definition: i_active_setting_changed_action.h:15
Ptr< const IStringMap > params() const
Definition: i_active_setting_changed_action.h:43
Definition: interface.h:49
virtual const IStringMap * getParams() const =0
Definition: ptr.h:18
virtual const char * settingsModel() const =0
virtual const IStringMap * getSettingsValues() const =0
Ptr< const IStringMap > settingsValues() const
Definition: i_active_setting_changed_action.h:35
virtual const char * activeSettingId() const =0
Definition: apple_utils.h:6
static constexpr const InterfaceId * makeId(const char(&charArray)[len])
Definition: i_ref_countable.h:77