262b4532d59e8f73684b30e7677f073ad0f31b8e96097a25143e448f962e1c63439dd61387941210da959eb433a84a2815062b3617ad2a2ed02bccba80c23c 635 B

123456789101112131415161718192021
  1. import { Scheduler } from '../Scheduler';
  2. import { SubscriptionLog } from './SubscriptionLog';
  3. export class SubscriptionLoggable {
  4. public subscriptions: SubscriptionLog[] = [];
  5. scheduler: Scheduler;
  6. logSubscribedFrame(): number {
  7. this.subscriptions.push(new SubscriptionLog(this.scheduler.now()));
  8. return this.subscriptions.length - 1;
  9. }
  10. logUnsubscribedFrame(index: number) {
  11. const subscriptionLogs = this.subscriptions;
  12. const oldSubscriptionLog = subscriptionLogs[index];
  13. subscriptionLogs[index] = new SubscriptionLog(
  14. oldSubscriptionLog.subscribedFrame,
  15. this.scheduler.now()
  16. );
  17. }
  18. }