rxjs-obd
Version:
RxJS Implementation for OBD (On Board Diagnostics) of vehicles via ELM 327 connections.
46 lines • 1.33 kB
JavaScript
import { OBDOuterSubscriber } from '../model/OBDOuterSubscriber';
export function calculatedEngineLoad() {
return function (source) {
return source.lift(new CalculatedEngineLoadOperator());
};
}
class CalculatedEngineLoadOperator {
call(subscriber, source) {
return source.subscribe(new CalculatedEngineLoadSubscriber(subscriber));
}
}
class CalculatedEngineLoadSubscriber extends OBDOuterSubscriber {
constructor(destination) {
super(destination);
}
/**
* Return the frequency of execution of this command.
* @return that this command must be executed every pulse.
*/
pulse() {
return 1;
}
/**
* Return the string representation of the OBD Read command.
* @returns the string representation of the OBD Read command
*/
command() {
return '01 04 1\r';
}
/**
* Return the name of the OBD Field on OBD Data object.
* @returns the name of the OBD Field on OBD Data object.
*/
field() {
return 'calculatedEngineLoad';
}
/**
* Parse the OBD response.
* @param bytes the response read from OBD.
* @returns the parsed response.
*/
parse(bytes) {
return parseInt(bytes[2], 16) * 100 / 255;
}
}
//# sourceMappingURL=calculatedEngineLoad.js.map