Epok Engine

EPOK RUNTIME

epok::MotionInterpolation::prepare

Function template · 2 overloads

Function template

Performs `prepare` as part of the motion interpolation module.

Belongs to
epok
Header
motion_interpolation.hpp
Overloads
2

Declaration 1 of 2

template
Declaration
template<class Objects> const std::array<Affine<Number>,Capacity>& prepare(const Objects& objects,const std::array<Affine<Number>,Capacity>& world,size_t count,unsigned fraction)

Performs `prepare` as part of the motion interpolation module.

ParameterTypeMeaning
objectsconst Objects &Value supplied for objects. Keep referenced or pointed-to data valid for the complete call.
worldconst std::array<Affine<Number>, Capacity> &Value supplied for world. Keep referenced or pointed-to data valid for the complete call.
countsize_tValue supplied for count. Keep referenced or pointed-to data valid for the complete call.
fractionunsigned intValue supplied for fraction. Keep referenced or pointed-to data valid for the complete call.

Returns: const std::array<Affine<Number>, Capacity> &. Check the value before continuing when it represents success, availability or a resource handle.

Example

C++ example
#include "motion_interpolation.hpp"

// Replace these template arguments with types or values accepted by the declaration:
// Objects

// Assume these named values have been initialized with valid data:
// const Objects & objects
// const std::array<Affine<Number>, Capacity> & world
// size_t count
// unsigned int fraction

epok::MotionInterpolation& object = /* obtain a valid instance */;

auto result = object.prepare<Objects>(objects, world, count, fraction);

Why use it

Template dispatch is resolved at compile time and normally adds no runtime indirection.

Trade-offs and warnings

Every instantiated type must satisfy the header's compile-time requirements; extra instantiations can increase code size. Pointer/reference arguments are borrowed unless the source contract says otherwise; keep them valid for the complete operation and never assume null is accepted.

Declared in runtime/motion_interpolation.hpp:102

Declaration 2 of 2

template
Declaration
template<class Objects> const std::array<Affine<Number>,Capacity>& prepare(const Objects&,const std::array<Affine<Number>,Capacity>& world,size_t,unsigned)

Performs `prepare` as part of the motion interpolation module.

ParameterTypeMeaning
arg1const Objects &Value supplied for arg1. Keep referenced or pointed-to data valid for the complete call.
worldconst std::array<Affine<Number>, Capacity> &Value supplied for world. Keep referenced or pointed-to data valid for the complete call.
arg3size_tValue supplied for arg3. Keep referenced or pointed-to data valid for the complete call.
arg4unsigned intValue supplied for arg4. Keep referenced or pointed-to data valid for the complete call.

Returns: const std::array<Affine<Number>, Capacity> &. Check the value before continuing when it represents success, availability or a resource handle.

Example

C++ example
#include "motion_interpolation.hpp"

// Replace these template arguments with types or values accepted by the declaration:
// Objects

// Assume these named values have been initialized with valid data:
// const Objects & arg1
// const std::array<Affine<Number>, Capacity> & world
// size_t arg3
// unsigned int arg4

epok::MotionInterpolation& object = /* obtain a valid instance */;

auto result = object.prepare<Objects>(arg1, world, arg3, arg4);

Why use it

Template dispatch is resolved at compile time and normally adds no runtime indirection.

Trade-offs and warnings

Every instantiated type must satisfy the header's compile-time requirements; extra instantiations can increase code size. Pointer/reference arguments are borrowed unless the source contract says otherwise; keep them valid for the complete operation and never assume null is accepted.

Declared in runtime/motion_interpolation.hpp:16

Related members