Пример #1
0
        public static double readVal(FileData d, int valueFormat)
        {
            int scale = (int)Math.Pow(2, valueFormat & 0x1F);

            d.Endian = System.IO.Endianness.Little;

            switch (valueFormat & 0xF0)
            {
            case 0x00:
                return(d.readFloat());

            case 0x20:
                return(d.readShort() / (double)scale);

            case 0x40:
                return(d.readUShort() / (double)scale);

            case 0x60:
                return(d.readSByte() / (double)scale);

            case 0x80:
                return(d.readByte() / (double)scale);

            default:
                return(0);
            }
        }
Пример #2
0
        private static float readType(FileData d, int format, float scale)
        {
            switch (format)
            {
            case 0:
                return(d.readFloat() * scale);

            case 1:
                return(d.readByte() * scale);

            case 2:
                return(d.readSByte() * scale);

            case 3:
                return(d.readShort() * scale);
            }
            return(0);
        }
Пример #3
0
            private float ReadType(FileData d)
            {
                switch (format)
                {
                case 0:
                    return(d.readFloat() * scale);

                case 1:
                    return(d.readByte() * scale);

                case 2:
                    return(d.readSByte() * scale);

                case 3:
                    return(d.readShort() * scale);
                }
                return(0);
            }