set()

in modules/core/src/utils/image-buffer.js [64:96]


  set(allFrames, currentTime) {
    const {buffer} = this;

    const {currentFrame, bufferedFrames} = this._getCurrentFrames(allFrames, currentTime);

    // Remove images outside of the buffer range
    for (const frame of buffer.keys()) {
      if (
        bufferedFrames.length === 0 ||
        frame.time < bufferedFrames[0].time ||
        frame.time > bufferedFrames[bufferedFrames.length - 1].time
      ) {
        this.imageDeleter(buffer.get(frame));
        buffer.delete(frame);
      }
    }

    // Load images for frames in the buffer
    bufferedFrames.forEach(frame => {
      if (!buffer.has(frame)) {
        const data = {};

        data.promise = this.imageLoader(frame.images[0]).then(image => {
          data.image = image;
          return image;
        });

        buffer.set(frame, data);
      }
    });

    return currentFrame;
  }