31#if !defined(_ODADYNAMICLINKERI_H_INCLUDED_)
32#define _ODADYNAMICLINKERI_H_INCLUDED_
99 const OdString& moduleFileName,
bool silent =
true) = 0;
107 const OdString& moduleFileName) = 0;
124 bool silent =
true) = 0;
144 OdRxModule* pModuleObj,
bool bSilent =
true) = 0;
183template <
class TClass>
189 if(!sAppName.isEmpty()) {
195 throw OdError( sClassName +
OD_T(
" class was not found" ) );
OdSmartPtr< OdRxDynamicLinker > OdRxDynamicLinkerPtr
OdSmartPtr< TClass > odrxSafeCreateObject(const OdString &sClassName, const OdString &sAppName=OdString::kEmpty)
OdSmartPtr< OdRxModule > OdRxModulePtr
OdRxModulePtr odrxSafeLoadApp(const OdString &applicationName)
OdSmartPtr< OdRxSystemServices > OdRxSystemServicesPtr
OdRxModulePtr odrxLoadApp(const OdString &applicationName)
FIRSTDLL_EXPORT OdRxDynamicLinker * odrxDynamicLinker()
FIRSTDLL_EXPORT OdRxDictionaryPtr odrxClassDictionary()
virtual OdRxObjectPtr create() const
virtual OdRxObjectPtr getAt(const OdString &key) const =0
virtual bool unloadUnreferenced()=0
virtual int getModuleCount() const =0
virtual OdRxModulePtr loadApp(const OdString &applicationName, bool silent=true)=0
virtual OdRxModule * loadModuleObj(OdRxModule *pModuleObj, bool bSilent=true)=0
virtual OdRxSystemServicesPtr sysServices() const =0
virtual OdRxModulePtr loadModule(const OdString &moduleFileName, bool silent=true)=0
virtual bool unloadModule(const OdString &moduleFileName)=0
virtual void addReactor(OdRxDLinkerReactor *pReactor)=0
ODRX_DECLARE_MEMBERS(OdRxDynamicLinker)
virtual void removeReactor(OdRxDLinkerReactor *pReactor)=0
virtual OdRxModulePtr getModule(const OdString &key) const =0
virtual OdRxDictionaryPtr sysRegistry() const =0
virtual OdRxModulePtr getModule(int index, OdString &key) const =0
FIRSTDLL_EXPORT_STATIC static const OdString kEmpty