24 #ifndef CALCULATIONMANAGER_H
25 #define CALCULATIONMANAGER_H
29 #include "../system/simplethreadhandler.h"
30 #include "../piano/piano.h"
78 #endif // CALCULATIONMANAGER_H
static CalculationManager & getSingleton()
virtual ~CalculationManager()
The AlgorithmFactoryBase class create the desired Algorithm.
std::map< std::string, AlgorithmFactoryBase * > mAlgorithms
void start(const std::string &algorithmName, const Piano &piano)
Start the calculation thread. By calling this function, the current piano is passed by reference and ...
CalculationManager()
Constructor, resets member variables.
bool hasAlgorithm(const std::string &id) const
void stop()
Stop the calculation thread.
void registerFactory(const std::string &name, AlgorithmFactoryBase *factory)
The Algorithm class is a basic abstract class for any algorithm.
std::shared_ptr< const AlgorithmInformation > loadAlgorithmInformation(const std::string &algorithmName) const
AlgorithmFactoryDescription & getAlgorithmDescription(const std::string &algorithmName) const
std::unique_ptr< Algorithm > mCurrentAlgorithm
std::string getDefaultAlgorithmId() const
const std::map< std::string, AlgorithmFactoryBase * > & getAlgorithms() const