9#ifndef TPGLIBS_AVXFACTORY_HPP_
10#define TPGLIBS_AVXFACTORY_HPP_
16#define REGISTER_AVXPROCESSOR_CREATOR(processor_name, processor_class) \
17 static struct processor_class##Registrar { \
18 processor_class##Registrar() { \
19 tpglibs::AVXFactory::register_creator(processor_name, []() -> std::shared_ptr<tpglibs::AVXProcessor> {return std::make_shared<processor_class>();}); \
21 } processor_class##_registrar;
AVX typed abstract factory.
General singleton, abstract factory.