DataProcessor generalisation
A DataProcessor takes a stream of data items from a ClipBoard, processes them and sends them to another ClipBoard (possibly a map).
Currently the chain of types is as follows:
graph LR
RxCore -- RawDataContainer --> FEDataProcessor
FEDataProcessor -- EventDataBase --> Histogrammer
Histogrammer -- HistogramBase --> Analysis
Analysis -- HistogramBase --> DATA
DATA[(Results)]
This is "hard-coded" in the types stored in the BookKeeper and the methods used to connect a pair of ClipBoard's to a DataProcessor.
From a distributed point of view the question is how rigidly these connect to each other. For instance, if a processor advertises (in some way) that it can produce histograms, does that make it a Histogrammer, or an Analyser?
As a first pass, a rigid connection should be OK.