UNPKG

@z0mt3c/f1-telemetry-client

Version:

[![Node.js CI](https://github.com/z0mt3c/f1-telemetry-client/actions/workflows/node.js.yml/badge.svg)](https://github.com/z0mt3c/f1-telemetry-client/actions/workflows/node.js.yml) [![NPM Release](https://img.shields.io/npm/v/@z0mt3c/f1-telemetry-client.sv

28 lines (27 loc) 1.19 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.PacketCarTelemetryDataParser = void 0; const F1Parser_1 = require("../F1Parser"); const CarTelemetryDataParser_1 = require("./CarTelemetryDataParser"); const PacketHeaderParser_1 = require("./PacketHeaderParser"); class PacketCarTelemetryDataParser extends F1Parser_1.F1Parser { constructor(buffer, packetFormat, bigintEnabled) { super(); this.endianess('little') .nest('m_header', { type: new PacketHeaderParser_1.PacketHeaderParser(packetFormat, bigintEnabled), }) .array('m_carTelemetryData', { length: packetFormat >= 2020 ? 22 : 20, type: new CarTelemetryDataParser_1.CarTelemetryDataParser(packetFormat), }); if (packetFormat >= 2018 && packetFormat <= 2020) { this.uint32le('m_buttonStatus'); } if (packetFormat >= 2020) { this.uint8('m_mfdPanelIndex').uint8('m_mfdPanelIndexSecondaryPlayer').int8('m_suggestedGear'); } this.data = this.fromBuffer(buffer); } } exports.PacketCarTelemetryDataParser = PacketCarTelemetryDataParser;