IOptimizer.h 517 B

12345678910111213141516171819202122
  1. #ifndef IOPTIMIZER_H
  2. #define IOPTIMIZER_H
  3. #include "json.hpp"
  4. #include <IModule.h>
  5. #include "IManager.h"
  6. namespace mdd {
  7. class IOptimizer
  8. : public IManager
  9. {
  10. public:
  11. typedef std::shared_ptr<IOptimizer> Ptr;
  12. virtual bool connect(std::shared_ptr<IModule> module) = 0;
  13. virtual bool setEvaluation(std::string func) = 0;
  14. virtual double update() = 0;
  15. virtual void attachCallback(std::function<json(const json&)> callback) = 0;
  16. virtual json getPermutations() = 0;
  17. };
  18. }
  19. #endif // !IOPTIMIZER_H