UNPKG

@openhps/core

Version:

Open Hybrid Positioning System - Core component

34 lines 1.49 kB
import { __decorate, __metadata } from "tslib"; import { SerializableArrayMember, SerializableMember, SerializableObject, NumberType } from '../decorators'; import { v4 as uuidv4 } from 'uuid'; import { AbsolutePosition } from './AbsolutePosition'; import { TimeService } from '../../service/TimeService'; let Trajectory = class Trajectory { get trajectoryStart() { if (!this.positions || this.positions.length === 0) return -1; return this.positions[0].timestamp; } get trajectoryEnd() { if (!this.positions || this.positions.length === 0) return -1; return this.positions[this.positions.length - 1].timestamp; } constructor(objectUID) { this.uid = uuidv4(); this.positions = []; this.objectUID = objectUID; this.createdTimestamp = TimeService.now(); } }; __decorate([SerializableMember({ primaryKey: true }), __metadata("design:type", String)], Trajectory.prototype, "uid", void 0); __decorate([SerializableMember({ index: true }), __metadata("design:type", String)], Trajectory.prototype, "objectUID", void 0); __decorate([SerializableArrayMember(AbsolutePosition), __metadata("design:type", Array)], Trajectory.prototype, "positions", void 0); __decorate([SerializableMember({ index: true, numberType: NumberType.LONG }), __metadata("design:type", Number)], Trajectory.prototype, "createdTimestamp", void 0); Trajectory = __decorate([SerializableObject(), __metadata("design:paramtypes", [String])], Trajectory); export { Trajectory };