فهرست منبع

Moved all Script stuff to separate libraries #5

Marko Pintera 12 سال پیش
والد
کامیت
02faadb1c2
2فایلهای تغییر یافته به همراه46 افزوده شده و 0 حذف شده
  1. 29 0
      BansheeEngine/Include/BsScriptManager.h
  2. 17 0
      BansheeEngine/Source/BsScriptManager.cpp

+ 29 - 0
BansheeEngine/Include/BsScriptManager.h

@@ -0,0 +1,29 @@
+#pragma once
+
+#include "BsPrerequisites.h"
+#include "CmModule.h"
+
+namespace BansheeEngine 
+{
+	class BS_EXPORT ScriptSystem
+	{
+	public:
+		virtual ~ScriptSystem() { }
+
+		virtual void initialize() = 0;
+	};
+
+	class BS_EXPORT ScriptManager : public CM::Module<ScriptManager>
+	{
+	public:
+		ScriptManager() { }
+		~ScriptManager() { }
+
+		void initialize(const std::shared_ptr<ScriptSystem>& scriptSystem);
+
+	private:
+		std::shared_ptr<ScriptSystem> mScriptSystem;
+
+		void onShutDown();
+	};
+}

+ 17 - 0
BansheeEngine/Source/BsScriptManager.cpp

@@ -0,0 +1,17 @@
+#include "BsScriptManager.h"
+
+using namespace CamelotFramework;
+
+namespace BansheeEngine
+{
+	void ScriptManager::initialize(const std::shared_ptr<ScriptSystem>& scriptSystem)
+	{
+		mScriptSystem = scriptSystem;
+		mScriptSystem->initialize();
+	}
+
+	void ScriptManager::onShutDown()
+	{
+		mScriptSystem = nullptr;
+	}
+}