Beispiel #1
0
            public Int32?GetInt32(int fieldDefinitionNumber)
            {
                var field = GetFieldByFieldDefinitionNumber(fieldDefinitionNumber);

                return(field == null
                 ? (Int32?)null
                 : FITUtil.ChangeEndianness(BitConverter.ToInt32(data, field.Position), definitionMessage.Architecture));
            }
Beispiel #2
0
            public DefinitionMessage(BinaryReader dataReader)
            {
                dataReader.ReadByte(); // reserved
                Architecture        = dataReader.ReadByte();
                GlobalMessageNumber = FITUtil.ChangeEndianness(dataReader.ReadUInt16(), Architecture);
                var numberOfFields = dataReader.ReadByte();

                Fields = new Field[numberOfFields];
                for (var i = 0; i < numberOfFields; i++)
                {
                    Fields[i] = new Field()
                    {
                        FieldDefinitionNumber = dataReader.ReadByte(),
                        Size     = dataReader.ReadByte(),
                        BaseType = dataReader.ReadByte(),
                        Position = DataLength
                    };
                    DataLength += Fields[i].Size;
                }
            }