# HG changeset patch # User Chris Cannam # Date 1391016728 0 # Node ID a2689db084f49daf0dcac1bea13d33c51f600266 # Parent b109b88bfa8509daa33859444544c06ccfd52447 Add a callback for no models as well (so we know something has completed and can e.g. delete the handler) diff -r b109b88bfa85 -r a2689db084f4 transform/ModelTransformerFactory.cpp --- a/transform/ModelTransformerFactory.cpp Wed Jan 29 15:58:15 2014 +0000 +++ b/transform/ModelTransformerFactory.cpp Wed Jan 29 17:32:08 2014 +0000 @@ -280,6 +280,8 @@ if (transformer->willHaveAdditionalOutputModels()) { vector mm = transformer->detachAdditionalOutputModels(); m_handlers[transformer]->moreModelsAvailable(mm); + } else { + m_handlers[transformer]->noMoreModelsAvailable(); } m_handlers.erase(transformer); } diff -r b109b88bfa85 -r a2689db084f4 transform/ModelTransformerFactory.h --- a/transform/ModelTransformerFactory.h Wed Jan 29 15:58:15 2014 +0000 +++ b/transform/ModelTransformerFactory.h Wed Jan 29 17:32:08 2014 +0000 @@ -73,7 +73,11 @@ class AdditionalModelHandler { public: + virtual ~AdditionalModelHandler() { } + + // Exactly one of these functions will be called virtual void moreModelsAvailable(std::vector models) = 0; + virtual void noMoreModelsAvailable() = 0; }; /**