diff options
-rwxr-xr-x | bin/analyze-kconfig.py | 8 | ||||
-rw-r--r-- | lib/utils.py | 18 |
2 files changed, 5 insertions, 21 deletions
diff --git a/bin/analyze-kconfig.py b/bin/analyze-kconfig.py index e5bc243..d205a79 100755 --- a/bin/analyze-kconfig.py +++ b/bin/analyze-kconfig.py @@ -262,10 +262,6 @@ def main(): for param in to_remove: observation["param"].pop(param) - if args.param_shift: - param_shift = dfatool.cli.parse_param_shift(args.param_shift) - dfatool.utils.shift_param_in_observations(observations, param_shift) - if args.boolean_parameters: if type(observations) is list: logging.warning("--boolean-parameters is deprecated") @@ -281,6 +277,10 @@ def main(): if args.ignore_param: dfatool.utils.ignore_param(by_name, parameter_names, args.ignore_param) + if args.param_shift: + param_shift = dfatool.cli.parse_param_shift(args.param_shift) + shift_param_in_aggregate(by_name, parameters, param_shift) + # Release memory del observations diff --git a/lib/utils.py b/lib/utils.py index 9e5d383..5b40f51 100644 --- a/lib/utils.py +++ b/lib/utils.py @@ -447,22 +447,6 @@ def by_param_to_by_name(by_param: dict) -> dict: return by_name -def shift_param_in_observations(observations, parameter_shift): - for param_name, param_shift_function in parameter_shift: - if param_name == "*": - for observation in observations: - for param_name in observation["param"].keys(): - observation["param"][param_name] = param_shift_function( - observation["param"][param_name] - ) - else: - for observation in observations: - if observation["param"][param_name] is not None: - observation["param"][param_name] = param_shift_function( - observation["param"][param_name] - ) - - def shift_param_in_aggregate(aggregate, parameters, parameter_shift): """ Remove entries which do not have certain parameter values from `aggregate`. @@ -472,7 +456,7 @@ def shift_param_in_aggregate(aggregate, parameters, parameter_shift): and aggregate[state or transition name]['attributes'] = [list of keys with measurement data, e.g. 'power' or 'duration'] :param parameters: list of parameters, used to map parameter index to parameter name. parameters=['foo', ...] means 'foo' is the first parameter - :param parameter_filter: [[name, value], [name, value], ...] list of parameter values to keep, all others are removed. Values refer to normalizad parameter data. + :param parameter_shift: [[name, function], [name, function], ...] list of parameter values to alter. """ for param_name, param_shift_function in parameter_shift: if param_name == "*": |