diff --git a/code/Analytics/Analyst.cpp b/code/Analytics/Analyst.cpp index c26ac27..0dd05c2 100644 --- a/code/Analytics/Analyst.cpp +++ b/code/Analytics/Analyst.cpp @@ -50,6 +50,15 @@ namespace Analytics { this->ruleConsequentItemConstraints.addItemConstraint(item, type); } + /** + * Override of QObject::moveToThread(), to automatically also move the + * FPStream object to the other thread. + */ + void Analyst::moveToThread(QThread * thread) { + QObject::moveToThread(thread); + this->fpstream->moveToThread(thread); + } + //------------------------------------------------------------------------ // Public slots. diff --git a/code/Analytics/Analyst.h b/code/Analytics/Analyst.h index d41ed1e..8f2a7c9 100644 --- a/code/Analytics/Analyst.h +++ b/code/Analytics/Analyst.h @@ -25,6 +25,9 @@ namespace Analytics { void addFrequentItemsetItemConstraint(ItemName item, ItemConstraintType type); void addRuleConsequentItemConstraint(ItemName item, ItemConstraintType type); + // Override moveToThread to also move the FPStream instance. + void moveToThread(QThread * thread); + signals: void minedRules(uint from, uint to, QList associationRules); void comparedMinedRules(uint fromOlder, uint toOlder,