OptimizerGenerator.h 401 B

123456789101112131415161718192021
  1. #pragma once
  2. #include <map>
  3. #include <string>
  4. #include "IOptimizerGenerator.h"
  5. namespace mdd
  6. {
  7. template <class OPTIMIZER_CLASS>
  8. class OptimizerGenerator
  9. : public IOptimizerGenerator
  10. {
  11. std::shared_ptr<IOptimizer> generate() override
  12. {
  13. return std::make_shared<OPTIMIZER_CLASS>();
  14. }
  15. };
  16. }
  17. //#define ADD_GENERATOR(CLASS) namespace{mdd::GeneratorRegistration<CLASS> reg_sdewfdsf(#CLASS);}