Class KeyframeApplier

Class Documentation

class KeyframeApplier

Helper class for applying a keyframe to a stream.

Public Functions

KeyframeApplier(StreamData *streamData)
~KeyframeApplier()
void EnumerateCalls(serialization::metadata::Keyframe const *keyframe, std::function<void(Callable*)> callback)

Enumerates all the api calls for the given keyframe.

Parameters
  • keyframe -- The keyframe to process.

  • callback -- A callback function executed for each api call from the keyframe

StreamDataBookmark ResetToKeyframeStartPoint(serialization::metadata::Keyframe const *keyframe)

Resets the stream playback to keyframe start point.

All the stream playback thread readers are reset to the positions representing the point when the keyframe was taken

Parameters

keyframe -- The keyframe to process.

Returns

A StreamDataBookmark that represents the point that the stream is at after the reset. If the keyframe is invalid, this will point to the beginning of the stream.

StreamDataBookmark Apply(serialization::metadata::Keyframe const *keyframe, Player *player, bool trackState)

Applies the given keyframe to the stream data.

Parameters
  • keyframe -- The keyframe to apply.

  • player -- The player that the keyframe's calls will be played back on as it is applied.

  • trackState -- true to enable state tracking, which is necessary for repeat later.

Returns

A StreamDataBookmark that represents the point that the stream is at after the keyframe apply. If the keyframe application was unsuccessful, this will point to the beginning of the stream.