#ifndef PLUGIN_H #define PLUGIN_H #include typedef PLUGININFO * (__cdecl * SetPluginInfo) (); typedef int (__cdecl * Load) (); class plugin { public: struct exported_funcs_s { SetPluginInfo info; Load load; }; const HMODULE getHmodule(); const exported_funcs_s getFuncs(); int setHandle(const HMODULE &hMod); int setName(const char *name); const char *getName(); plugin(const HMODULE hModule, const exported_funcs_s fnct, const char *name); ~plugin(); private: HMODULE hModule; char *szPluginName; exported_funcs_s funcs; }; #endif