From 1e980101f7867a6993eb8b0742781141a02b0a6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Al=C3=A1n=20Mu=C3=B1oz?= <alan.munoz@ed.ac.uk> Date: Wed, 28 Sep 2022 20:46:09 +0100 Subject: [PATCH] refactor(post): isolate merger and picker --- src/postprocessor/core/abc.py | 6 +++++- src/postprocessor/core/processor.py | 4 ++-- src/postprocessor/core/reshapers/merger.py | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/postprocessor/core/abc.py b/src/postprocessor/core/abc.py index b4db424c..a299e19f 100644 --- a/src/postprocessor/core/abc.py +++ b/src/postprocessor/core/abc.py @@ -30,11 +30,15 @@ def get_process(process, suffix=""): Dynamically import a process class from the available process locations. Assumes process filename and class name are the same + Processes return the same shape as their input. + MultiSignal either take or return multiple datasets (or both). + Reshapers return a different shape for processes: Merger and Picker belong here. + suffix : str Name of suffix, generally "" (empty) or "Parameters". """ base_location = "postprocessor.core" - possible_locations = ("processes", "multisignal") + possible_locations = ("processes", "multisignal", "reshapers") found = None for possible_location in possible_locations: diff --git a/src/postprocessor/core/processor.py b/src/postprocessor/core/processor.py index 915139db..a9836c1c 100644 --- a/src/postprocessor/core/processor.py +++ b/src/postprocessor/core/processor.py @@ -14,8 +14,8 @@ from postprocessor.core.abc import get_parameters, get_process from postprocessor.core.processes.lineageprocess import ( LineageProcessParameters, ) -from postprocessor.core.processes.merger import merger, mergerParameters -from postprocessor.core.processes.picker import picker, pickerParameters +from postprocessor.core.reshapers.merger import merger, mergerParameters +from postprocessor.core.reshapers.picker import picker, pickerParameters class PostProcessorParameters(ParametersABC): diff --git a/src/postprocessor/core/reshapers/merger.py b/src/postprocessor/core/reshapers/merger.py index 2f31724e..16d2b598 100644 --- a/src/postprocessor/core/reshapers/merger.py +++ b/src/postprocessor/core/reshapers/merger.py @@ -24,7 +24,7 @@ class mergerParameters(ParametersABC): class merger(PostProcessABC): """ - TODO check why it needs to be run a few times to complete the merging + Combines rows of tracklet that are likely to be the same. """ def __init__(self, parameters): -- GitLab