read method

void read(
  1. EndianBinaryReader reader
)

Implementation

void read(EndianBinaryReader reader) {
  try {
    size = reader.readByte();
    protocolVersion = reader.readByte();
    profileVersion = reader.readUInt16();
    dataSize = reader.readUInt32();
    _dataType = utf8.decode(reader.readBytes(4));
    if (size == Fit.headerWithCrcSize) {
      crc = reader.readUInt16();
    } else {
      crc = 0;
    }
  } catch (e) {
    throw FitException(
      'Header:read() Failed at byte ${reader.position} - $e',
    );
  }
}