28#ifndef OZZ_OZZ_ANIMATION_RUNTIME_SAMPLING_JOB_H_
29#define OZZ_OZZ_ANIMATION_RUNTIME_SAMPLING_JOB_H_
31#include "ozz/animation/runtime/export.h"
32#include "ozz/base/platform.h"
33#include "ozz/base/span.h"
63 bool Validate()
const;
98struct InterpSoaFloat3;
99struct InterpSoaQuaternion;
104class OZZ_ANIMATION_DLL SamplingJob::Context {
114 explicit Context(
int _max_tracks);
117 Context(Context
const&) =
delete;
118 Context& operator=(Context
const&) =
delete;
125 void Resize(
int _max_tracks);
138 int max_tracks()
const {
return max_soa_tracks_ * 4; }
139 int max_soa_tracks()
const {
return max_soa_tracks_; }
142 friend struct SamplingJob;
148 void Step(
const Animation& _animation,
float _ratio);
152 const Animation* animation_;
161 internal::InterpSoaFloat3* soa_translations_;
162 internal::InterpSoaQuaternion* soa_rotations_;
163 internal::InterpSoaFloat3* soa_scales_;
167 int* translation_keys_;
172 int translation_cursor_;
173 int rotation_cursor_;
177 uint8_t* outdated_translations_;
Definition animation.h:62
uint8 uint8_t
Definition fwd.hpp:103
Definition sampling_job.h:56