replace CP::ISelectionTool with IAsgSelectionTool
We somehow ended up with two copies of the same interface class. The problem with having two interfaces for the same task was that tools implementing the different interfaces could not be used interchangeably. That specifically broke the configuration of some of the common CP algorithm sequences, which use the same algorithm class for all selection tools.
I was somewhat torn between which of the two classes to keep, and
while I originally wanted to keep CP::ISelectionTool
, it turned out
that IAsgSelectionTool
was much easier to keep. That is because the
AcceptInfo
and AcceptData
classes are in the same package as the
interface class, and anybody who wants to use or implement that
interface will need those two classes as well.
One could potentially move all three classes together to AsgAnalysisInterfaces if that is considered advantageous, but that would be a bigger undertaking and they would all have to be moved together.