mirror of
https://gitee.com/xiaohuolufeihua/bizhang_-obav.git
synced 2026-05-22 01:12:31 +00:00
parameters: add param_reset_no_notification()
- add reset() to Param<>
This commit is contained in:
@@ -132,6 +132,12 @@ public:
|
|||||||
|
|
||||||
void set(float val) { _val = val; }
|
void set(float val) { _val = val; }
|
||||||
|
|
||||||
|
void reset()
|
||||||
|
{
|
||||||
|
param_reset_no_notification(handle());
|
||||||
|
update();
|
||||||
|
}
|
||||||
|
|
||||||
bool update() { return param_get(handle(), &_val) == 0; }
|
bool update() { return param_get(handle(), &_val) == 0; }
|
||||||
|
|
||||||
param_t handle() const { return param_handle(p); }
|
param_t handle() const { return param_handle(p); }
|
||||||
@@ -166,6 +172,12 @@ public:
|
|||||||
|
|
||||||
void set(float val) { _val = val; }
|
void set(float val) { _val = val; }
|
||||||
|
|
||||||
|
void reset()
|
||||||
|
{
|
||||||
|
param_reset_no_notification(handle());
|
||||||
|
update();
|
||||||
|
}
|
||||||
|
|
||||||
bool update() { return param_get(handle(), &_val) == 0; }
|
bool update() { return param_get(handle(), &_val) == 0; }
|
||||||
|
|
||||||
param_t handle() const { return param_handle(p); }
|
param_t handle() const { return param_handle(p); }
|
||||||
@@ -198,6 +210,12 @@ public:
|
|||||||
|
|
||||||
void set(int32_t val) { _val = val; }
|
void set(int32_t val) { _val = val; }
|
||||||
|
|
||||||
|
void reset()
|
||||||
|
{
|
||||||
|
param_reset_no_notification(handle());
|
||||||
|
update();
|
||||||
|
}
|
||||||
|
|
||||||
bool update() { return param_get(handle(), &_val) == 0; }
|
bool update() { return param_get(handle(), &_val) == 0; }
|
||||||
|
|
||||||
param_t handle() const { return param_handle(p); }
|
param_t handle() const { return param_handle(p); }
|
||||||
@@ -232,6 +250,12 @@ public:
|
|||||||
|
|
||||||
void set(int32_t val) { _val = val; }
|
void set(int32_t val) { _val = val; }
|
||||||
|
|
||||||
|
void reset()
|
||||||
|
{
|
||||||
|
param_reset_no_notification(handle());
|
||||||
|
update();
|
||||||
|
}
|
||||||
|
|
||||||
bool update() { return param_get(handle(), &_val) == 0; }
|
bool update() { return param_get(handle(), &_val) == 0; }
|
||||||
|
|
||||||
param_t handle() const { return param_handle(p); }
|
param_t handle() const { return param_handle(p); }
|
||||||
@@ -272,6 +296,12 @@ public:
|
|||||||
|
|
||||||
void set(bool val) { _val = val; }
|
void set(bool val) { _val = val; }
|
||||||
|
|
||||||
|
void reset()
|
||||||
|
{
|
||||||
|
param_reset_no_notification(handle());
|
||||||
|
update();
|
||||||
|
}
|
||||||
|
|
||||||
bool update()
|
bool update()
|
||||||
{
|
{
|
||||||
int32_t value_int;
|
int32_t value_int;
|
||||||
|
|||||||
@@ -260,6 +260,17 @@ __EXPORT void param_notify_changes(void);
|
|||||||
*/
|
*/
|
||||||
__EXPORT int param_reset(param_t param);
|
__EXPORT int param_reset(param_t param);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reset a parameter to its default value, but do not notify the system about the change.
|
||||||
|
*
|
||||||
|
* This function frees any storage used by struct parameters, and returns the parameter
|
||||||
|
* to its default value.
|
||||||
|
*
|
||||||
|
* @param param A handle returned by param_find or passed by param_foreach.
|
||||||
|
* @return Zero on success, nonzero on failure
|
||||||
|
*/
|
||||||
|
__EXPORT int param_reset_no_notification(param_t param);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Reset all parameters to their default values.
|
* Reset all parameters to their default values.
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -797,8 +797,7 @@ void param_set_used_internal(param_t param)
|
|||||||
(1 << param_index % bits_per_allocation_unit);
|
(1 << param_index % bits_per_allocation_unit);
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
static int param_reset_internal(param_t param, bool notify = true)
|
||||||
param_reset(param_t param)
|
|
||||||
{
|
{
|
||||||
param_wbuf_s *s = nullptr;
|
param_wbuf_s *s = nullptr;
|
||||||
bool param_found = false;
|
bool param_found = false;
|
||||||
@@ -823,12 +822,16 @@ param_reset(param_t param)
|
|||||||
|
|
||||||
param_unlock_writer();
|
param_unlock_writer();
|
||||||
|
|
||||||
if (s != nullptr) {
|
if (s != nullptr && notify) {
|
||||||
_param_notify_changes();
|
_param_notify_changes();
|
||||||
}
|
}
|
||||||
|
|
||||||
return (!param_found);
|
return (!param_found);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int param_reset(param_t param) { return param_reset_internal(param, true); }
|
||||||
|
int param_reset_no_notification(param_t param) { return param_reset_internal(param, false); }
|
||||||
|
|
||||||
static void
|
static void
|
||||||
param_reset_all_internal(bool auto_save)
|
param_reset_all_internal(bool auto_save)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user