carb::settings::ScopedSubscription
Defined in carb/settings/SettingsUtils.h
- 
class ScopedSubscription
- Helper class to add a setting node or tree change subscription that will be automatically unregistered when the object goes out of scope. - Public Functions - 
inline ScopedSubscription(const char *path, carb::dictionary::OnNodeChangeEventFn fn, void *userData)
- Constructor: creates a new scoped subscription for a settings node change. - Parameters
- path – [in] The path to the setting node or branch to watch. This may not be - nullptr.
- fn – [in] The callback handler function to call when the watched setting - pathis created, modified, or destroyed. This may not be- nullptr.
- userData – [in] Caller provided data that will be passed unmodified to the callback function. 
 
 
 - 
inline ScopedSubscription(const char *path, carb::dictionary::OnTreeChangeEventFn fn, void *userData)
- Constructor: creates a new scoped subscription for a settings tree change. - Parameters
- path – [in] The path to the setting tree to watch. This may not be - nullptr.
- fn – [in] The callback handler function to call when the watched setting - pathis created, modified, or destroyed. This may not be- nullptr.
- userData – [in] Caller provided data that will be passed unmodified to the callback function. 
 
 
 - 
inline ScopedSubscription(ScopedSubscription &&other)
- Move Constructor: moves another object into this one. - Parameters
- other – [inout] Another object to move its values from into this one. 
 
 - 
inline ~ScopedSubscription()
- Destructor: unsubscribes from this change watch. 
 - 
inline ScopedSubscription &operator=(ScopedSubscription &&other)
- Move-assigns another object into this one. - Parameters
- other – [inout] Another object to move its values from into this one. 
- Returns
- A reference to this object. 
 
 - 
inline explicit operator bool() const noexcept
- Operator to test whether the contained change subscription is valid. - Returns
- trueif the contained subscription object is valid. Returns- falseotherwise.
 
 
- 
inline ScopedSubscription(const char *path, carb::dictionary::OnNodeChangeEventFn fn, void *userData)