Modify the RegSelTool interface
The RegSelTools currently do not take an EventContext and this is felt to be inefficient.
In the past the RegSelTools would inherit the interface for the RS lookup tables and implement wrappers as members of the Tool to hand off the calls to the lookup tables. But the Lookup tables themselves do not need - and should not be given - an event context, so it was decided to instead remove the lookup table inspection functionality from the RegSelTools themselves and instead, just ask the RegSelTools for the lookup tables.
The request for the lookup tables can then take the EventContext and the table lookup can then be done as follows ...
regseltool->lookup(ctx)->HashIDList( roi, idlist );
The changes in this merge request add all the additional RegSelTool and lookup table functionality to allow this, but ALSO retain the current RegSelTool functionality for testing and to allow the required client modifications to be staged.
This is required, since calls to the RegSelTools from all clients across the entiore trigger (and a few offline uses) that use the RegSelTools will need to be changed, so doing things in this manner will allow the clients themselves to be migrated over a much longer timescale such that the code changes should not interfere with any parallel development of the client algorithms, and allow more detailed validation of the changes.
Once all clients have been migrated, the IRegSelLUT interface will be removed from the RegSelTool implementation.
This is the first stage in addressing ATR-30360