Add support for Receiver with multiple Processing Pipelines
A receiver would have a variant of pipelines that can be selected at runtime.
std::variant<noop, smx, avg> pipeline; // Receiver can switch to any of these pipelines
A single acquisition can then be configured to switch processing after a given nb of frames. A processing sequence would be define as:
struct proc_step {
int nb_frames;
proc_enum proc;
/* ... */ proc_params ;
};
// processing sequence
std::vector<proc_sequence> proc_params{
{ 100, proc_enum::noop, { ... }}, // warmup
{ 1000, proc_enum::avg, { ... }}, // pedestal measurement
{ -1, proc_enum::smx , { ... }}, // experiment
};