@oaklean/profiler
Version:
A library to measure the energy consumption of your javascript/typescript code
62 lines • 3.85 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.BaseSensorInterface = void 0;
class BaseSensorInterface {
type() {
throw new Error('BaseSensorInterface.type must be implemented');
}
couldBeExecuted() {
return __awaiter(this, void 0, void 0, function* () {
if (this._couldBeExecuted === undefined) {
this._couldBeExecuted = yield this.canBeExecuted();
}
return this._couldBeExecuted;
});
}
canBeExecuted() {
return __awaiter(this, void 0, void 0, function* () {
throw new Error('BaseSensorInterface.canBeExecuted must be implemented');
});
}
isRunning() {
throw new Error('BaseSensorInterface.isRunning must be implemented');
}
get startTime() {
throw new Error('BaseSensorInterface.startTime must be implemented');
}
readSensorValues(pid) {
return __awaiter(this, void 0, void 0, function* () {
throw new Error('BaseSensorInterface.readSensorValues must be implemented');
});
}
startProfiling() {
return __awaiter(this, void 0, void 0, function* () {
throw new Error('BaseSensorInterface.startProfiling must be implemented');
});
}
stopProfiling() {
return __awaiter(this, void 0, void 0, function* () {
throw new Error('BaseSensorInterface.stopProfiling must be implemented');
});
}
static pidIsRunning(pid) {
try {
process.kill(pid, 0);
return true;
}
catch (e) {
return false;
}
}
}
exports.BaseSensorInterface = BaseSensorInterface;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFzZVNlbnNvckludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbnRlcmZhY2VzL0Jhc2VTZW5zb3JJbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBTUEsTUFBYSxtQkFBbUI7SUFHL0IsSUFBSTtRQUNILE1BQU0sSUFBSSxLQUFLLENBQUMsOENBQThDLENBQUMsQ0FBQTtJQUNoRSxDQUFDO0lBRUssZUFBZTs7WUFDcEIsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEtBQUssU0FBUyxFQUFFLENBQUM7Z0JBQ3pDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxNQUFNLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQTtZQUNuRCxDQUFDO1lBQ0QsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUE7UUFDN0IsQ0FBQztLQUFBO0lBRUssYUFBYTs7WUFDbEIsTUFBTSxJQUFJLEtBQUssQ0FBQyx1REFBdUQsQ0FBQyxDQUFBO1FBQ3pFLENBQUM7S0FBQTtJQUVELFNBQVM7UUFDUixNQUFNLElBQUksS0FBSyxDQUFDLG1EQUFtRCxDQUFDLENBQUE7SUFDckUsQ0FBQztJQUVELElBQUksU0FBUztRQUNaLE1BQU0sSUFBSSxLQUFLLENBQUMsbURBQW1ELENBQUMsQ0FBQTtJQUNyRSxDQUFDO0lBRUssZ0JBQWdCLENBQUMsR0FBVzs7WUFDakMsTUFBTSxJQUFJLEtBQUssQ0FBQywwREFBMEQsQ0FBQyxDQUFBO1FBQzVFLENBQUM7S0FBQTtJQUVLLGNBQWM7O1lBQ25CLE1BQU0sSUFBSSxLQUFLLENBQUMsd0RBQXdELENBQUMsQ0FBQTtRQUMxRSxDQUFDO0tBQUE7SUFFSyxhQUFhOztZQUNsQixNQUFNLElBQUksS0FBSyxDQUFDLHVEQUF1RCxDQUFDLENBQUE7UUFDekUsQ0FBQztLQUFBO0lBRUQsTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFXO1FBQzlCLElBQUksQ0FBQztZQUNKLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFBO1lBQ3BCLE9BQU8sSUFBSSxDQUFBO1FBQ1osQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDWixPQUFPLEtBQUssQ0FBQTtRQUNiLENBQUM7SUFDRixDQUFDO0NBQ0Q7QUE5Q0Qsa0RBOENDIn0=