70 typedef std::vector<key_frame_t> key_frames_t;
79 using tween_value_t = detail::tween_value_t<FirstValueType, RemainingValueTypes...>;
85 explicit tween(
const key_frames_t & key_frames_input);
88 explicit tween(key_frames_t && key_frames_input);
217 template <typename Callback> auto
on(detail::
event::step_t, Callback&& cb) ->
void ;
233 template <typename Callback> auto
on(detail::
event::seek_t, Callback&& cb) ->
void ;
249 template <typename Callback> auto
on(detail::
event::jump_t, Callback&& cb) ->
void ;
268 template <typename Callback> auto
on(detail::
event::complete_t, Callback&& cb) ->
void ;
287 template <typename Callback> auto
on(detail::
event::keyframeEnter_t, Callback&& cb) ->
void ;
306 template <typename Callback> auto
on(detail::
event::keyframeLeave_t, Callback&& cb) ->
void ;
326 template <typename Callback> auto
on(detail::
event::update_t, Callback&& cb) ->
void ;
329 using callback_t = std::function<
event::response(
tween&)>;
330 using keyframe_enter_callback_t = std::function<
event::response(
tween&, struct
event::keyframeEnter)>;
331 using keyframe_leave_callback_t = std::function<
event::response(
tween&, struct
event::keyframeLeave)>;
333 key_frames_t key_frames;
334 uint32_t current_frame = 0;
336 std::
size_t current_keyframe_index = 0;
337 std::vector<callback_t> step_listeners;
338 std::vector<callback_t> seek_listeners;
339 std::vector<callback_t> jump_listeners;
340 std::vector<callback_t> complete_listeners;
341 std::vector<callback_t> update_listeners;
342 std::vector<keyframe_enter_callback_t> keyframe_enter_listeners;
343 std::vector<keyframe_leave_callback_t> keyframe_leave_listeners;
345 auto invoke_listeners(std::vector<callback_t>& listeners) ->
void;
346 auto invoke_keyframe_listeners(std::
size_t old_keyframe_index, std::
size_t new_keyframe_index) ->
void;
348 [[nodiscard]] auto find_key_frame_index(uint32_t frame) const -> std::
size_t;
tween(key_frames_t &&key_frames_input)
This is an overloaded member function, provided for convenience. It differs from the above function o...