template<class K>
Magnum::Animation::TrackViewStorage class

Type-erased track view storage.

Cast to TrackView of correct type to get access to all members.

Derived classes

template<class K, class V, class R = ResultOf<V>>
class TrackView
Animation track view.

Public types

using KeyType = K
Key type.

Public functions

auto interpolation() const -> Interpolation
Interpolation behavior.
auto before() const -> Extrapolation
Extrapolation behavior before first keyframe.
auto after() const -> Extrapolation
Extrapolation behavior after last keyframe.
auto duration() const -> Math::Range1D<typename std::remove_const<K>::type>
Duration of the track.
auto size() const -> std::size_t
Keyframe count.
auto keys() const -> Containers::StridedArrayView1D<K>
Key data.
auto values() const -> Containers::StridedArrayView1D<typename std::conditional<std::is_const<K>::value, const void, void>::type> new in 2020.06
Type-erased value data.

Public variables

void(*)() interpolator new in Git master
Type-erased interpolation function.

Function documentation

template<class K>
Interpolation Magnum::Animation::TrackViewStorage<K>::interpolation() const

Interpolation behavior.

Acts as a behavior hint to users that might want to supply their own interpolator function to TrackView::at() or TrackView::atStrict().

template<class K>
Extrapolation Magnum::Animation::TrackViewStorage<K>::before() const

Extrapolation behavior before first keyframe.

template<class K>
Extrapolation Magnum::Animation::TrackViewStorage<K>::after() const

Extrapolation behavior after last keyframe.

template<class K>
Math::Range1D<typename std::remove_const<K>::type> Magnum::Animation::TrackViewStorage<K>::duration() const

Duration of the track.

Calculated from first and last keyframe. If there are no keyframes, a default-constructed value is returned. Use Math::join() to calculate combined duration for a set of tracks.

template<class K>
Containers::StridedArrayView1D<K> Magnum::Animation::TrackViewStorage<K>::keys() const

Key data.

template<class K>
Containers::StridedArrayView1D<typename std::conditional<std::is_const<K>::value, const void, void>::type> Magnum::Animation::TrackViewStorage<K>::values() const new in 2020.06

Type-erased value data.

Use TrackView and TrackView::values() to get a typed view, alternatively you can cast to a concrete type using Corrade::Containers::arrayCast().

Variable documentation

template<class K>
void(*)() Magnum::Animation::TrackViewStorage<K>::interpolator new in Git master

Type-erased interpolation function.

Has to be cast to a type corresponding to the value type before use. Use TrackView and TrackView::interpolator() to get the interpolator function in a concrete type.