Perhaps it would be interesting to define a TRestRawSignalEventProcess where input/output TRestRawSignalEvent types are encapsulated (similar to TRestAxionEventProcess), and thus the implementation of a TRestRawSignalEventProcess gets simplified.
On top of that we could add common metadata members for all rawlib processes that inherit from TRestRawSignalEventProcess such as fSignalRange.
Just an idea to be considered.