/** * Technique Parameter */ export interface Param { name: string; mprReadType: string; textReadType: string; regexUnits?: RegExp; //to extract units from name } type TechniquesToParams = Record; /** * The values are ordered in the way they appear both * in the binary and the text file, * they have been renamed to be more descriptive. */ export const preParamsLookUp: TechniquesToParams = { caParams: [ { name: 'Ei', mprReadType: 'Float32', textReadType: 'float', regexUnits: /Ei \((?.*)\)/, }, { name: 'Ei_vs', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'ti', mprReadType: 'Float32', textReadType: 'string', regexUnits: / \((?.*)\)/, }, { name: 'Imax', mprReadType: 'Float32', textReadType: 'float' }, { name: 'Imax_unit', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'Imin', mprReadType: 'Float32', textReadType: 'float' }, { name: 'Imin_unit', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'dQM', mprReadType: 'Float32', textReadType: 'float' }, { name: 'dQM_unit', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'record', mprReadType: 'Uint8', textReadType: 'int|string' }, { name: 'dI', mprReadType: 'Float32', textReadType: 'float' }, { name: 'dI_unit', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'dQ', mprReadType: 'Float32', textReadType: 'float' }, { name: 'dQ_unit', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'dt', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'dta', mprReadType: 'Float32', regexUnits: / \((?.*)\)/, textReadType: 'float', }, { name: 'E_range_min', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'E_range_max', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'I_range', mprReadType: 'Uint8', textReadType: 'float|string' }, { name: 'I_range_min', mprReadType: 'Uint8', textReadType: 'float|string' }, { name: 'I_range_max', mprReadType: 'Uint8', textReadType: 'float|string' }, { name: 'I_range_init', mprReadType: 'Uint8', textReadType: 'float|string', }, { name: 'bandwidth', mprReadType: 'Uint8', textReadType: 'int' }, { name: 'goto_Ns', mprReadType: 'Uint32', textReadType: 'int' }, { name: 'nc_cycles', mprReadType: 'Uint32', textReadType: 'int' }, ], cpParams: [ { name: 'Is', mprReadType: 'Float32', textReadType: 'float' }, { name: 'Is_unit', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'Is_vs', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'ts', mprReadType: 'Float32', textReadType: 'string', regexUnits: / \((?.*)\)/, }, { name: 'EM', mprReadType: 'Float32', textReadType: 'float|string', regexUnits: / \((?.*)\)/, }, { name: 'dQM', mprReadType: 'Float32', textReadType: 'float' }, { name: 'dQM_unit', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'record', mprReadType: 'Uint8', textReadType: 'int|string' }, { name: 'dEs', mprReadType: 'Float32', textReadType: 'float' }, { name: 'dts', mprReadType: 'Float32', textReadType: 'float' }, { name: 'E_range_min', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'E_range_max', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'I_range', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'bandwidth', mprReadType: 'Uint8', textReadType: 'int' }, { name: 'goto_Ns', mprReadType: 'Uint32', textReadType: 'int' }, { name: 'nc_cycles', mprReadType: 'Uint32', textReadType: 'int' }, ], cvParams: [ { name: 'Ei', mprReadType: 'Float32', textReadType: 'float', regexUnits: /Ei \((?.*)\)/, }, { name: 'Ei_vs', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'dE/dt', mprReadType: 'Float32', textReadType: 'float' }, { name: 'dE/dt_unit', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'E1', mprReadType: 'Float32', textReadType: 'float' }, { name: 'E1_vs', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'step_percent', mprReadType: 'Uint8', textReadType: 'int' }, { name: 'N', mprReadType: 'Uint32', textReadType: 'int' }, { name: 'E_range_min', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'E_range_max', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'I_range', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'I_range_min', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'I_range_max', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'I_range_init', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'bandwidth', mprReadType: 'Uint8', textReadType: 'int' }, { name: 'E2', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'E2_vs', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'nc_cycles', mprReadType: 'Uint32', textReadType: 'int' }, { name: 'reverse_scan', mprReadType: 'Uint8', textReadType: 'int' }, { name: 'Ef', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'Ef_vs', mprReadType: 'Uint8', textReadType: 'string' }, ], gcplParams: [ { name: 'set_I/C', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'Is', mprReadType: 'Float32', textReadType: 'float' }, { name: 'Is_unit', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'Is_vs', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'N', mprReadType: 'Float32', textReadType: 'float' }, { name: 'I_sign', mprReadType: 'Uint8', textReadType: 'string' }, { name: 't1', mprReadType: 'Float32', textReadType: 'string', regexUnits: / \((?.*)\)/, }, { name: 'I_range', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'bandwidth', mprReadType: 'Uint8', textReadType: 'int' }, { name: 'dE1', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'dt1', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'EM', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'tM', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'Im', mprReadType: 'Float32', textReadType: 'float' }, { name: 'Im_unit', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'dI/dt', mprReadType: 'Float32', textReadType: 'float' }, { name: 'dI/dt_unit', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'E_range_min', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'E_range_max', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'dq', mprReadType: 'Float32', textReadType: 'float' }, { name: 'dq_unit', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'dtq', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'dQM', mprReadType: 'Float32', textReadType: 'float' }, { name: 'dQM_unit', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'dxM', mprReadType: 'Float32', textReadType: 'float' }, { name: 'tR', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'dER/dt', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'dER', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'dtR', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'EL', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'goto_Ns', mprReadType: 'Uint32', textReadType: 'int' }, { name: 'nc_cycles', mprReadType: 'Uint32', textReadType: 'int' }, ], lsvParams: [ { name: 'tR', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'dER/dt', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'dER', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'dtR', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'dE/dt', mprReadType: 'Float32', textReadType: 'float' }, { name: 'dE/dt_unit', mprReadType: 'Uint8', textReadType: 'string', regexUnits: / \((?.*)\)/, }, { name: 'Ei', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'Ei_vs', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'EL', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'EL_vs', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'record', mprReadType: 'Uint8', textReadType: 'int|string' }, { name: 'dI', mprReadType: 'Float32', textReadType: 'float' }, { name: 'dI_unit', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'tI', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'step_percent', mprReadType: 'Uint8', textReadType: 'int' }, { name: 'N', mprReadType: 'Uint32', textReadType: 'int' }, { name: 'E_range_min', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'E_range_max', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'I_range', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'I_range_min', mprReadType: 'Uint8', textReadType: 'float|string' }, { name: 'I_range_max', mprReadType: 'Uint8', textReadType: 'float|string' }, { name: 'I_range_init', mprReadType: 'Uint8', textReadType: 'float|string', }, { name: 'bandwidth', mprReadType: 'Uint8', textReadType: 'int' }, ], waitParams: [ { name: 'select', mprReadType: 'Uint8', textReadType: 'int' }, { name: 'td', mprReadType: 'Uint32', textReadType: 'string', regexUnits: /(?.*)/, }, { name: 'from', mprReadType: 'Uint8', textReadType: 'int' }, { name: 'tech_num', mprReadType: 'Uint8', textReadType: 'int' }, { name: 'ole_date', mprReadType: 'Float32', textReadType: 'string', regexUnits: /(?.*)/, }, { name: 'ole_time', mprReadType: 'Float32', textReadType: 'string', regexUnits: /(?.*)/, }, { name: 'record', mprReadType: 'Uint8', textReadType: 'int|string' }, { name: 'dE', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'dI', mprReadType: 'Float32', textReadType: 'float' }, { name: 'dI_unit', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'dt', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, ], zirParams: [ { name: 'E', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'E_vs', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'f', mprReadType: 'Float32', textReadType: 'float' }, { name: 'f_unit', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'Va', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'pw', mprReadType: 'Float32', textReadType: 'float' }, { name: 'Na', mprReadType: 'Uint32', textReadType: 'int' }, { name: 'E_range_min', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'E_range_max', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'I_range', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'bandwidth', mprReadType: 'Uint8', textReadType: 'int' }, { name: 'comp_level', mprReadType: 'Uint8', textReadType: 'int' }, { name: 'use_results', mprReadType: 'Uint8', textReadType: 'int' }, { name: 'comp_mode', mprReadType: 'Uint8', textReadType: 'string' }, ], mirParams: [ { name: 'Ru', mprReadType: 'Float32', textReadType: 'float' }, { name: 'Ru_unit', mprReadType: 'Uint8', textReadType: 'string' }, { name: 'comp_level', mprReadType: 'Uint8', textReadType: 'int' }, { name: 'comp_mode', mprReadType: 'Uint8', textReadType: 'string' }, ], ocvParams: [ { name: 'tR', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'dER/dt', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'dER', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'dtR', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'E_range_min', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, { name: 'E_range_max', mprReadType: 'Float32', textReadType: 'float', regexUnits: / \((?.*)\)/, }, ], };