Kaynağa Gözat

Module System Update

Added functions for getting the module definition path and clearing a module database.
Peter Robinson 3 yıl önce
ebeveyn
işleme
d433a6697c

+ 10 - 0
engine/source/module/moduleDefinition_ScriptBinding.h

@@ -112,4 +112,14 @@ ConsoleMethodWithDocs(ModuleDefinition, removeDependency, ConsoleBool, 3, 3, (mo
     return object->removeDependency( pModuleId );
 }
 
+//-----------------------------------------------------------------------------
+
+/*! Returns the path to the module directory.
+    @return (bool success) Whether the module dependency was removed or not.
+*/
+ConsoleMethodWithDocs(ModuleDefinition, getModulePath, ConsoleString, 2, 2, ())
+{
+    return object->getModulePath();
+}
+
 ConsoleMethodGroupEndWithDocs(ModuleDefinition)

+ 2 - 1
engine/source/module/moduleManager.h

@@ -182,8 +182,9 @@ public:
     void addListener( SimObject* pListener );
     void removeListener( SimObject* pListener );
 
-private:
     void clearDatabase( void );
+
+private:
     bool removeModuleDefinition( ModuleDefinition* pModuleDefinition );
     bool registerModule( const char* pModulePath, const char* pModuleFile );
 

+ 11 - 0
engine/source/module/moduleManager_ScriptBinding.h

@@ -421,4 +421,15 @@ ConsoleMethodWithDocs(ModuleManager, removeListener, ConsoleVoid, 3, 3, (listene
     object->removeListener( pListener );
 }
 
+//-----------------------------------------------------------------------------
+
+/*! Removes everything from the module database
+    @return No return value
+*/
+ConsoleMethodWithDocs(ModuleManager, clearDatabase, ConsoleVoid, 2, 2, ())
+{
+    // Check if module merge is available or not.
+    return object->clearDatabase();
+}
+
 ConsoleMethodGroupEndWithDocs(ModuleManager)