Просмотр исходного кода

Use Allocator to allocate instances of Renderer

Daniele Bartolini 12 лет назад
Родитель
Сommit
f9c7b6c839
3 измененных файлов с 8 добавлено и 8 удалено
  1. 2 2
      src/Device.cpp
  2. 2 2
      src/renderers/Renderer.h
  3. 4 4
      src/renderers/gl/GLRenderer.cpp

+ 2 - 2
src/Device.cpp

@@ -169,7 +169,7 @@ void Device::shutdown()
 	{
 		m_renderer->shutdown();
 
-		Renderer::destroy(m_renderer);
+		Renderer::destroy(m_allocator, m_renderer);
 	}
 
 	Log::i("Releasing Window...");
@@ -415,7 +415,7 @@ void Device::create_window()
 //-----------------------------------------------------------------------------
 void Device::create_renderer()
 {
-	m_renderer = Renderer::create();
+	m_renderer = Renderer::create(m_allocator);
 	m_renderer->init();
 
 	Log::d("Renderer created.");

+ 2 - 2
src/renderers/Renderer.h

@@ -101,8 +101,8 @@ class Renderer
 {
 public:
 
-	static Renderer*		create();
-	static void				destroy(Renderer* renderer);
+	static Renderer*		create(Allocator& a);
+	static void				destroy(Allocator& a, Renderer* renderer);
 
 	virtual 				~Renderer() {};
 

+ 4 - 4
src/renderers/gl/GLRenderer.cpp

@@ -1026,15 +1026,15 @@ GLint GLRenderer::find_gpu_program_uniform(GLuint program, const char* name) con
 }
 
 //-----------------------------------------------------------------------------
-Renderer* Renderer::create()
+Renderer* Renderer::create(Allocator& a)
 {
-	return CE_NEW(default_allocator(), GLRenderer);
+	return CE_NEW(a, GLRenderer);
 }
 
 //-----------------------------------------------------------------------------
-void Renderer::destroy(Renderer* renderer)
+void Renderer::destroy(Allocator& a, Renderer* renderer)
 {
-	CE_DELETE(default_allocator(), renderer);
+	CE_DELETE(a, renderer);
 }
 
 } // namespace crown