www.pudn.com > zfxcengine-0.1.0.zip > ceRenderSystem_D3D9.cpp


#include "Core/ceDebug.h" 
#include "Render/RenderD3D9/ceRenderDevice_D3D9.h" 
#include "Render/RenderD3D9/ceRenderSystem_D3D9.h" 
#include "Core/ceMemManager.h" 
 
namespace ZFXCE { 
	namespace Render { 
		////////////////////////////////////////////////////////////////// 
		ceRenderDevice* ceRenderSystemD3D9::CreateDevice() 
		{ 
			PUSH_FUNCTION; 
 
			ceRenderDevice* Device = new ceRenderDeviceD3D9(); 
			m_vDevices.push_back(Device); 
 
			return Device; 
		} 
		////////////////////////////////////////////////////////////////// 
		void ceRenderSystemD3D9::RemoveDevice(ceRenderDevice* Device) 
		{ 
			PUSH_FUNCTION; 
			for (UINT d=0; d < m_vDevices.size(); d++) 
			{ 
				if(m_vDevices[d] == Device) 
				{ 
					delete m_vDevices[d]; 
					Device = NULL; 
					return; 
				} 
			} 
		} 
		////////////////////////////////////////////////////////////////// 
		void ceRenderSystemD3D9::RemoveAllDevices(void) 
		{ 
			for (UINT i=0; i < m_vDevices.size(); i++) 
			{ 
				delete m_vDevices[i]; 
			} 
			m_vDevices.clear(); 
		} 
	}	// namespace Render 
}	// namespace ZFXCE