#ifndef FACTORY_H #define FACTORY_H #ifdef FACTORY_EXPORTS # define _FAC_DLL_EXPORTS _declspec( dllexport ) # else # define _FAC_DLL_EXPORTS _declspec( dllimport ) # endif #include namespace fun { class _FAC_DLL_EXPORTS Serializable_c { public: virtual ~Serializable_c() {} virtual std::string GetText() const = 0; }; class _FAC_DLL_EXPORTS ObjectArchive_c { public: std::string GetClassText(const std::string& classname); typedef Serializable_c* CreateFunction_t(ObjectArchive_c* archive); CreateFunction_t* FindCreateFunction(const std::string& classname); }; } #endif // FACTORY