implemented reset with excludes

This commit is contained in:
Andreas Antener
2015-01-30 11:21:05 +01:00
committed by Lorenz Meier
parent 4b1ddba817
commit 7c63be7450
2 changed files with 37 additions and 0 deletions

View File

@@ -488,6 +488,31 @@ param_reset_all(void)
param_notify_changes();
}
void
param_reset_excludes(const char* excludes[], int num_excludes)
{
param_lock();
param_t param;
for (param = 0; handle_in_range(param); param++) {
const char* name = param_name(param);
for (int index = 0, len = strlen(excludes[index]); index < num_excludes; index ++) {
if((excludes[index][len - 1] == '*'
&& strncmp(name, excludes[index], strlen(excludes[index]))) == 0
|| strcmp(name, excludes[index]) == 0) {
param_reset(param);
}
}
}
param_unlock();
param_notify_changes();
}
static const char *param_default_file = "/eeprom/parameters";
static char *param_user_file = NULL;