#pragma once #include "jobject.hpp" #ifdef JARCHOBJECT_EXPORTS #define JOBJECT_API __declspec(dllexport) #else #define JOBJECT_API __declspec(dllimport) #endif class JOBJECT_API JObjectSvr { public: JObjectSvr(); ~JObjectSvr(); public: static JObjectSvr* get(); public: template static Ty* CreateInstance(LPCWSTR pStrObject) { return (Ty*)get()->CreateInstance(nullptr,(LPWSTR)pStrObject); } JObject* CreateInstance(LPWSTR pStrUri, LPWSTR pStrObject); void RegisterObjectsByXmlFile(LPWSTR pStrFile); void RegisterObjectsByObjectMgr(LPWSTR pStrUri, JObjectSvr* pObjectMgr); private: void* m_pImpl; };