void main() { StartCoords.x = 1; StartCoords.y = 5; FinishCoords.x = 9; FinishCoords.y = 9; PopulateMap(); //Initial map population printMap(); while (true) { switch (state) { case 1: { LeePopulate(); } case 2: { LeeBacktrace(); } case 3: { LeeShowPath(); break; } } printMap(); break; } }
namespace nfe { map< D3DFORMAT, String>* BufferTypeStringable::D3DFormatToStringMap = PopulateMap(); BufferTypeStringable::BufferTypeStringable(const _D3DFORMAT& format) : m_Format( format ) { } BufferTypeStringable::~BufferTypeStringable(void) { } String BufferTypeStringable::ToString() const { return (*D3DFormatToStringMap)[ m_Format ]; } map< D3DFORMAT, String >* BufferTypeStringable::PopulateMap() { map< D3DFORMAT, String >* bufferMap = new map< D3DFORMAT, String >(); (*bufferMap)[ D3DFMT_R8G8B8 ] = StringifyEnum( D3DFMT_R8G8B8 ); (*bufferMap)[ D3DFMT_A8R8G8B8 ] = StringifyEnum( D3DFMT_A8R8G8B8 ); (*bufferMap)[ D3DFMT_X8R8G8B8 ] = StringifyEnum( D3DFMT_X8R8G8B8 ); (*bufferMap)[ D3DFMT_R5G6B5 ] = StringifyEnum( D3DFMT_R5G6B5 ); (*bufferMap)[ D3DFMT_X1R5G5B5 ] = StringifyEnum( D3DFMT_X1R5G5B5 ); (*bufferMap)[ D3DFMT_A1R5G5B5 ] = StringifyEnum( D3DFMT_A1R5G5B5 ); (*bufferMap)[ D3DFMT_A4R4G4B4 ] = StringifyEnum( D3DFMT_A4R4G4B4 ); (*bufferMap)[ D3DFMT_R3G3B2 ] = StringifyEnum( D3DFMT_R3G3B2 ); (*bufferMap)[ D3DFMT_A8 ] = StringifyEnum( D3DFMT_A8 ); (*bufferMap)[ D3DFMT_A8R3G3B2 ] = StringifyEnum( D3DFMT_A8R3G3B2 ); (*bufferMap)[ D3DFMT_X4R4G4B4 ] = StringifyEnum( D3DFMT_X4R4G4B4 ); (*bufferMap)[ D3DFMT_A2B10G10R10 ] = StringifyEnum( D3DFMT_A2B10G10R10 ); (*bufferMap)[ D3DFMT_A8B8G8R8 ] = StringifyEnum( D3DFMT_A8B8G8R8 ); (*bufferMap)[ D3DFMT_X8B8G8R8 ] = StringifyEnum( D3DFMT_X8B8G8R8 ); (*bufferMap)[ D3DFMT_G16R16 ] = StringifyEnum( D3DFMT_G16R16 ); (*bufferMap)[ D3DFMT_A2R10G10B10 ] = StringifyEnum( D3DFMT_A2R10G10B10 ); (*bufferMap)[ D3DFMT_A16B16G16R16 ] = StringifyEnum( D3DFMT_A16B16G16R16 ); (*bufferMap)[ D3DFMT_A8P8 ] = StringifyEnum( D3DFMT_A8P8 ); (*bufferMap)[ D3DFMT_P8 ] = StringifyEnum( D3DFMT_P8 ); (*bufferMap)[ D3DFMT_L8 ] = StringifyEnum( D3DFMT_L8 ); (*bufferMap)[ D3DFMT_A8L8 ] = StringifyEnum( D3DFMT_A8L8 ); (*bufferMap)[ D3DFMT_A4L4 ] = StringifyEnum( D3DFMT_A4L4 ); (*bufferMap)[ D3DFMT_V8U8 ] = StringifyEnum( D3DFMT_V8U8 ); (*bufferMap)[ D3DFMT_L6V5U5 ] = StringifyEnum( D3DFMT_L6V5U5 ); (*bufferMap)[ D3DFMT_X8L8V8U8 ] = StringifyEnum( D3DFMT_X8L8V8U8 ); (*bufferMap)[ D3DFMT_Q8W8V8U8 ] = StringifyEnum( D3DFMT_Q8W8V8U8 ); (*bufferMap)[ D3DFMT_V16U16 ] = StringifyEnum( D3DFMT_V16U16 ); (*bufferMap)[ D3DFMT_A2W10V10U10 ] = StringifyEnum( D3DFMT_A2W10V10U10 ); (*bufferMap)[ D3DFMT_UYVY ] = StringifyEnum( D3DFMT_UYVY ); (*bufferMap)[ D3DFMT_R8G8_B8G8 ] = StringifyEnum( D3DFMT_R8G8_B8G8 ); (*bufferMap)[ D3DFMT_YUY2 ] = StringifyEnum( D3DFMT_YUY2 ); (*bufferMap)[ D3DFMT_G8R8_G8B8 ] = StringifyEnum( D3DFMT_G8R8_G8B8 ); (*bufferMap)[ D3DFMT_DXT1 ] = StringifyEnum( D3DFMT_DXT1 ); (*bufferMap)[ D3DFMT_DXT2 ] = StringifyEnum( D3DFMT_DXT2 ); (*bufferMap)[ D3DFMT_DXT3 ] = StringifyEnum( D3DFMT_DXT3 ); (*bufferMap)[ D3DFMT_DXT4 ] = StringifyEnum( D3DFMT_DXT4 ); (*bufferMap)[ D3DFMT_DXT5 ] = StringifyEnum( D3DFMT_DXT5 ); (*bufferMap)[ D3DFMT_D16_LOCKABLE ] = StringifyEnum( D3DFMT_D16_LOCKABLE ); (*bufferMap)[ D3DFMT_D32 ] = StringifyEnum( D3DFMT_D32 ); (*bufferMap)[ D3DFMT_D15S1 ] = StringifyEnum( D3DFMT_D15S1 ); (*bufferMap)[ D3DFMT_D24S8 ] = StringifyEnum( D3DFMT_D24S8 ); (*bufferMap)[ D3DFMT_D24X8 ] = StringifyEnum( D3DFMT_D24X8 ); (*bufferMap)[ D3DFMT_D24X4S4 ] = StringifyEnum( D3DFMT_D24X4S4 ); (*bufferMap)[ D3DFMT_D16 ] = StringifyEnum( D3DFMT_D16 ); (*bufferMap)[ D3DFMT_D32F_LOCKABLE ] = StringifyEnum( D3DFMT_D32F_LOCKABLE ); (*bufferMap)[ D3DFMT_D24FS8 ] = StringifyEnum( D3DFMT_D24FS8 ); /* D3D9Ex only -- */ #if !defined(D3D_DISABLE_9EX) /* Z-Stencil formats valid for CPU access */ (*bufferMap)[ D3DFMT_D32_LOCKABLE ] = StringifyEnum( D3DFMT_D32_LOCKABLE ); (*bufferMap)[ D3DFMT_S8_LOCKABLE ] = StringifyEnum( D3DFMT_S8_LOCKABLE ); #endif // !D3D_DISABLE_9EX /* -- D3D9Ex only */ (*bufferMap)[ D3DFMT_L16 ] = StringifyEnum( D3DFMT_L16 ); (*bufferMap)[ D3DFMT_VERTEXDATA ] = StringifyEnum( D3DFMT_VERTEXDATA ); (*bufferMap)[ D3DFMT_INDEX16 ] = StringifyEnum( D3DFMT_INDEX16 ); (*bufferMap)[ D3DFMT_INDEX32 ] = StringifyEnum( D3DFMT_INDEX32 ); (*bufferMap)[ D3DFMT_Q16W16V16U16 ] = StringifyEnum( D3DFMT_Q16W16V16U16 ); (*bufferMap)[ D3DFMT_MULTI2_ARGB8 ] = StringifyEnum( D3DFMT_MULTI2_ARGB8 ); // Floating point surface formats // s10e5 formats (16-bits per channel) (*bufferMap)[ D3DFMT_R16F ] = StringifyEnum( D3DFMT_R16F ); (*bufferMap)[ D3DFMT_G16R16F ] = StringifyEnum( D3DFMT_G16R16F ); (*bufferMap)[ D3DFMT_A16B16G16R16F ] = StringifyEnum( D3DFMT_A16B16G16R16F ); // IEEE s23e8 formats (32-bits per channel) (*bufferMap)[ D3DFMT_R32F ] = StringifyEnum( D3DFMT_R32F ); (*bufferMap)[ D3DFMT_G32R32F ] = StringifyEnum( D3DFMT_G32R32F ); (*bufferMap)[ D3DFMT_A32B32G32R32F ] = StringifyEnum( D3DFMT_A32B32G32R32F ); (*bufferMap)[ D3DFMT_CxV8U8 ] = StringifyEnum( D3DFMT_CxV8U8 ); /* D3D9Ex only -- */ #if !defined(D3D_DISABLE_9EX) // Monochrome 1 bit per pixel format (*bufferMap)[ D3DFMT_A1 ] = StringifyEnum( D3DFMT_A1 ); // 2.8 biased fixed point (*bufferMap)[ D3DFMT_A2B10G10R10_XR_BIAS ] = StringifyEnum( D3DFMT_A2B10G10R10_XR_BIAS ); // Binary format indicating that the data has no inherent type (*bufferMap)[ D3DFMT_BINARYBUFFER ] = StringifyEnum( D3DFMT_BINARYBUFFER ); #endif // !D3D_DISABLE_9EX /* -- D3D9Ex only */ (*bufferMap)[ D3DFMT_FORCE_DWORD ] = StringifyEnum( D3DFMT_FORCE_DWORD ); return bufferMap; } }