Adapt all the controllers to inherit from BaseController rather than Thread (except for feature extraction and matching)#2406
Adapt all the controllers to inherit from BaseController rather than Thread (except for feature extraction and matching)#2406ahojnnes merged 17 commits intocolmap:maincolmap/colmap:mainfrom B1ueber2y:features/controllersB1ueber2y/colmap:features/controllersCopy head branch name to clipboard
Conversation
|
OK unfortunately keeping the |
|
|
Sure sounds good. But then how about the mvs if we put |
This PR includes the updates as follows:
ThreadfromThreadPoolandJobQueueatutil/threading.hand moveThreadclass andControllerThreadclass completely into the ui folder.Now feature extraction and feature matching still inherits from the Thread class since in Python we will use different logics. However, because of this the
AutomaticReconstructionControllerneeds to inherit from Thread as well to support the Stopping function for the feature extractor and matcher. While this can potentially be resolved by addingSignalInvalidSetup,SignalValidSetup, andCheckValidSetupinto the controller with a boolean valued callback, this might be a little overcomplication in the class design since this is not relevant to pybind for now. It depends on whether we want to totally disentangle the Thread outside the ui @ahojnnes @sarlinpeIf needed I can make the update on the feature extraction and matcher later as well in a separate PR.