UNPKG

licelfile

Version:

A Bun package for reading licel files (from lidar transient recorder)

34 lines (33 loc) 1.23 kB
import {} from "./licelTypes"; /** * Парсит профиль Licel из строки. * @param line - Строка, содержащая данные профиля. * @returns Объект IProfile, содержащий данные профиля. */ export function parseLicelProfile(line) { const items = line.trim().split(/\s+/); const [wavelengthStr, polarization] = items[7].split("."); return { active: items[0] === "1", photon: items[1] === "1", laserType: parseInt(items[2], 10), nDataPoints: parseInt(items[3], 10), reserved: [ parseInt(items[4], 10), parseInt(items[8], 10), parseInt(items[9], 10), ], highVoltage: parseInt(items[5], 10), binWidth: parseFloat(items[6]), wavelength: parseFloat(wavelengthStr), polarization: polarization, binShift: parseInt(items[10], 10), decBinShift: parseInt(items[11], 10), adcBits: parseInt(items[12], 10), nShots: parseInt(items[13], 10), discrLevel: parseFloat(items[14]), deviceId: items[15].slice(0, 2), nCrate: parseInt(items[15].slice(2), 10), data: new Uint32Array([]), }; }