Axiom.Graphics.GpuProgramParameters.GpuConstantDefinition.GetElementSize C# (CSharp) Method

GetElementSize() private method

private GetElementSize ( GpuConstantType ctype, bool padToMultiplesOf4 ) : int
ctype GpuConstantType
padToMultiplesOf4 bool
return int
            public static int GetElementSize(GpuConstantType ctype, bool padToMultiplesOf4)
            {
                if (padToMultiplesOf4)
                {
                    switch (ctype)
                    {
                        case GpuConstantType.Float1:
                        case GpuConstantType.Float2:
                        case GpuConstantType.Float3:
                        case GpuConstantType.Float4:
                        case GpuConstantType.Int1:
                        case GpuConstantType.Int2:
                        case GpuConstantType.Int3:
                        case GpuConstantType.Int4:
                        case GpuConstantType.Sampler1D:
                        case GpuConstantType.Sampler2D:
                        case GpuConstantType.Sampler3D:
                        case GpuConstantType.Sampler1DShadow:
                        case GpuConstantType.Sampler2DShadow:
                        case GpuConstantType.SamplerCube:
                            return 4;
                        case GpuConstantType.Matrix_2X2:
                        case GpuConstantType.Matrix_2X3:
                        case GpuConstantType.Matrix_2X4:
                            return 8; // 2 float4s
                        case GpuConstantType.Matrix_3X2:
                        case GpuConstantType.Matrix_3X3:
                        case GpuConstantType.Matrix_3X4:
                            return 12; //3 float4s
                        case GpuConstantType.Matrix_4X2:
                        case GpuConstantType.Matrix_4X3:
                        case GpuConstantType.Matrix_4X4:
                            return 16; //4 float4s
                        default:
                            return 4;
                    }
                }
                // else
                {
                    switch (ctype)
                    {
                        case GpuConstantType.Float1:
                        case GpuConstantType.Int1:
                        case GpuConstantType.Sampler1D:
                        case GpuConstantType.Sampler2D:
                        case GpuConstantType.Sampler3D:
                        case GpuConstantType.Sampler1DShadow:
                        case GpuConstantType.Sampler2DShadow:
                        case GpuConstantType.SamplerCube:
                            return 1;
                        case GpuConstantType.Float2:
                        case GpuConstantType.Int2:
                            return 2;
                        case GpuConstantType.Float3:
                        case GpuConstantType.Int3:
                            return 3;
                        case GpuConstantType.Float4:
                        case GpuConstantType.Int4:
                            return 4;
                        case GpuConstantType.Matrix_2X2:
                            return 4;
                        case GpuConstantType.Matrix_2X3:
                        case GpuConstantType.Matrix_3X2:
                            return 6;
                        case GpuConstantType.Matrix_2X4:
                        case GpuConstantType.Matrix_4X2:
                            return 8;
                        case GpuConstantType.Matrix_3X3:
                            return 9;
                        case GpuConstantType.Matrix_3X4:
                        case GpuConstantType.Matrix_4X3:
                            return 12;
                        case GpuConstantType.Matrix_4X4:
                            return 16;
                        default:
                            return 4;
                    }
                }
            }