#ifndef FACTORYMAP_H #define FACTORYMAP_H /////////////////////////////////////////////////////////////////////////// // FactoryMap.h - abstract class representing object factories with map // // // // Jim Fawcett, CSE776 - Design Patterns, Summer 2009 // /////////////////////////////////////////////////////////////////////////// #include "Product.h" #include #include class Creator { public: typedef Product*(*FactoryMethod)(); void Register(const std::string& id, FactoryMethod method); FactoryMethod GetFactory(const std::string& id); private: static std::map registry; }; #endif