| 22 | namespace sd |
| 23 | { |
| 24 | HLSLCompiler::ExpressionType HLSLCompiler::m_convertType(const M4::HLSLBaseType& type, const char* userDefined) |
| 25 | { |
| 26 | switch (type) |
| 27 | { |
| 28 | case M4::HLSLBaseType_Void: return ExpressionType("void", ag::Type::Void); |
| 29 | case M4::HLSLBaseType_Float: return ExpressionType("float", ag::Type::Float); |
| 30 | case M4::HLSLBaseType_Half: return ExpressionType("half", ag::Type::Float); |
| 31 | case M4::HLSLBaseType_Bool: return ExpressionType("bool", ag::Type::UChar); |
| 32 | case M4::HLSLBaseType_Int: return ExpressionType("int", ag::Type::Int); |
| 33 | case M4::HLSLBaseType_Uint: return ExpressionType("uint", ag::Type::UInt); |
| 34 | case M4::HLSLBaseType_Float2: return ExpressionType("float2", ag::Type::Float, 1, 2); |
| 35 | case M4::HLSLBaseType_Float3: return ExpressionType("float3", ag::Type::Float, 1, 3); |
| 36 | case M4::HLSLBaseType_Float4: return ExpressionType("float4", ag::Type::Float, 1, 4); |
| 37 | case M4::HLSLBaseType_Float2x2: return ExpressionType("float2x2", ag::Type::Float, 2, 2); |
| 38 | case M4::HLSLBaseType_Float3x3: return ExpressionType("float3x3", ag::Type::Float, 3, 3); |
| 39 | case M4::HLSLBaseType_Float4x4: return ExpressionType("float4x4", ag::Type::Float, 4, 4); |
| 40 | case M4::HLSLBaseType_Float4x3: return ExpressionType("float4x3", ag::Type::Float, 3, 4); |
| 41 | case M4::HLSLBaseType_Float4x2: return ExpressionType("float4x2", ag::Type::Float, 2, 4); |
| 42 | case M4::HLSLBaseType_Half2: return ExpressionType("float2", ag::Type::Float, 1, 2); |
| 43 | case M4::HLSLBaseType_Half3: return ExpressionType("float3", ag::Type::Float, 1, 3); |
| 44 | case M4::HLSLBaseType_Half4: return ExpressionType("float4", ag::Type::Float, 1, 4); |
| 45 | case M4::HLSLBaseType_Half2x2: return ExpressionType("float2x2", ag::Type::Float, 2, 2); |
| 46 | case M4::HLSLBaseType_Half3x3: return ExpressionType("float3x3", ag::Type::Float, 3, 3); |
| 47 | case M4::HLSLBaseType_Half4x4: return ExpressionType("float4x4", ag::Type::Float, 4, 4); |
| 48 | case M4::HLSLBaseType_Half4x3: return ExpressionType("float4x3", ag::Type::Float, 3, 4); |
| 49 | case M4::HLSLBaseType_Half4x2: return ExpressionType("float4x2", ag::Type::Float, 2, 4); |
| 50 | case M4::HLSLBaseType_Bool2: return ExpressionType("bool2", ag::Type::UChar, 1, 2); |
| 51 | case M4::HLSLBaseType_Bool3: return ExpressionType("bool3", ag::Type::UChar, 1, 3); |
| 52 | case M4::HLSLBaseType_Bool4: return ExpressionType("bool4", ag::Type::UChar, 1, 4); |
| 53 | case M4::HLSLBaseType_Int2: return ExpressionType("int2", ag::Type::Int, 1, 2); |
| 54 | case M4::HLSLBaseType_Int3: return ExpressionType("int3", ag::Type::Int, 1, 3); |
| 55 | case M4::HLSLBaseType_Int4: return ExpressionType("int4", ag::Type::Int, 1, 4); |
| 56 | case M4::HLSLBaseType_Uint2: return ExpressionType("uint2", ag::Type::UInt, 1, 2); |
| 57 | case M4::HLSLBaseType_Uint3: return ExpressionType("uint3", ag::Type::UInt, 1, 3); |
| 58 | case M4::HLSLBaseType_Uint4: return ExpressionType("uint4", ag::Type::UInt, 1, 4); |
| 59 | case M4::HLSLBaseType_Texture1D: return ExpressionType("Texture1D", ag::Type::Object); |
| 60 | case M4::HLSLBaseType_Texture2D: return ExpressionType("Texture2D", ag::Type::Object); |
| 61 | case M4::HLSLBaseType_Texture3D: return ExpressionType("Texture3D", ag::Type::Object); |
| 62 | case M4::HLSLBaseType_TextureCube: return ExpressionType("TextureCube", ag::Type::Object); |
| 63 | case M4::HLSLBaseType_TextureCubeArray: return ExpressionType("TextureCubeArray", ag::Type::Object); |
| 64 | case M4::HLSLBaseType_Texture2DMS: return ExpressionType("Texture2DMS", ag::Type::Object); |
| 65 | case M4::HLSLBaseType_Texture1DArray: return ExpressionType("Texture1DArray", ag::Type::Object); |
| 66 | case M4::HLSLBaseType_Texture2DArray: return ExpressionType("Texture2DArray", ag::Type::Object); |
| 67 | case M4::HLSLBaseType_Texture2DMSArray: return ExpressionType("Texture2DMSArray", ag::Type::Object); |
| 68 | case M4::HLSLBaseType_RWTexture1D: return ExpressionType("RWTexture1D", ag::Type::Object); |
| 69 | case M4::HLSLBaseType_RWTexture2D: return ExpressionType("RWTexture2D", ag::Type::Object); |
| 70 | case M4::HLSLBaseType_RWTexture3D: return ExpressionType("RWTexture3D", ag::Type::Object); |
| 71 | case M4::HLSLBaseType_SamplerState: return ExpressionType("SamplerState", ag::Type::Object); |
| 72 | case M4::HLSLBaseType_UserDefined: return ExpressionType(userDefined, ag::Type::Object); |
| 73 | default: return ExpressionType("void", ag::Type::Void); |
| 74 | } |
| 75 | } |
| 76 | HLSLCompiler::ExpressionType HLSLCompiler::m_convertType(const M4::HLSLType& type) |
| 77 | { |
| 78 | return m_convertType(type.baseType, type.typeName); |
nothing calls this directly
no test coverage detected