libalmath  2.8.7.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Namespaces | Typedefs | Enumerations | Functions
qianim.h File Reference
#include <almath/api.h>
#include <almath/scenegraph/qianim/unit.h>
#include <iterator>
#include <type_traits>
#include <boost/property_tree/ptree.hpp>
#include <boost/range/adaptor/map.hpp>
#include <boost/range/adaptor/filtered.hpp>
#include <functional>

Go to the source code of this file.

Namespaces

 AL
 
 AL::qianim
 
 AL::qianim::V2
 
 AL::qianim::V2::Tangent
 
 AL::qianim::V2::Key
 
 AL::qianim::V2::ActuatorCurve
 
 AL::qianim::V2::Label
 
 AL::qianim::V2::Labels
 
 AL::qianim::V2::Animation
 

Typedefs

using AL::qianim::ptree = boost::property_tree::ptree
 
template<class T >
using AL::qianim::optional = boost::optional< T >
 

Enumerations

enum  AL::qianim::Side : bool { AL::qianim::Side::left, AL::qianim::Side::right }
 

Functions

template<typename InputIt , typename BinaryOperation >
BinaryOperation AL::qianim::V2::adjacent_for_each (InputIt first, InputIt last, BinaryOperation binary_op)
 
template<typename T >
std::enable_if
< std::is_floating_point< T >
::value, T >::type 
AL::qianim::V2::Tangent::get_abscissa (const ptree &pt)
 
template<typename T >
std::enable_if
< std::is_floating_point< T >
::value >::type 
AL::qianim::V2::Tangent::put_abscissa (ptree &pt, T abscissa)
 
template<typename T >
std::enable_if
< std::is_floating_point< T >
::value, T >::type 
AL::qianim::V2::Tangent::get_ordinate (const ptree &pt)
 
template<typename T >
std::enable_if
< std::is_floating_point< T >
::value >::type 
AL::qianim::V2::Tangent::put_ordinate (ptree &pt, T ordinate)
 
ALMATH_API Side AL::qianim::V2::Tangent::get_side (const ptree &pt)
 
ALMATH_API void AL::qianim::V2::Tangent::put_side (ptree &pt, Side side)
 
ALMATH_API bool AL::qianim::V2::Key::is_key (const ptree::value_type &val)
 
ALMATH_API int AL::qianim::V2::Key::get_frame (const ptree &pt)
 
ALMATH_API void AL::qianim::V2::Key::put_frame (ptree &pt, int frame)
 
ALMATH_API ptree::size_type AL::qianim::V2::Key::erase_tangent (ptree &pt, Side side)
 
ALMATH_API optional< const
ptree & > 
AL::qianim::V2::Key::get_tangent_optional (const ptree &pt, Side side)
 
ALMATH_API optional< ptree & > AL::qianim::V2::Key::get_tangent_optional (ptree &pt, Side side)
 
const ptree & AL::qianim::V2::Key::get_tangent (const ptree &pt, Side side)
 
ptree & AL::qianim::V2::Key::get_tangent (ptree &pt, Side side)
 
ALMATH_API ptree & AL::qianim::V2::Key::require_tangent (ptree &pt, Side side)
 
template<typename T >
std::enable_if
< std::is_floating_point< T >
::value, ptree & >::type 
AL::qianim::V2::Key::put_tangent (ptree &pt, Side side, T abscissa, T ordinate)
 
template<typename T >
std::enable_if
< std::is_floating_point< T >
::value, T >::type 
AL::qianim::V2::Key::get_value (const ptree &pt)
 
template<typename T >
std::enable_if
< std::is_floating_point< T >
::value >::type 
AL::qianim::V2::Key::put_value (ptree &pt, T value)
 
template<typename T >
std::enable_if
< std::is_floating_point< T >
::value >::type 
AL::qianim::V2::Key::check_cubic_bezier (int p0_frame, T, T p1_dframe, T, T p2_dframe, T, int p3_frame, T)
 
template<typename Scalar , typename Functor >
std::enable_if
< std::is_floating_point
< Scalar >::value >::type 
AL::qianim::V2::Key::apply_cubic_bezier (const ptree &p0_key, const ptree &p3_key, Functor op)
 
ALMATH_API bool AL::qianim::V2::ActuatorCurve::is_actuatorcurve (const ptree::value_type &val)
 
ALMATH_API std::string AL::qianim::V2::ActuatorCurve::get_actuator (const ptree &pt)
 
ALMATH_API void AL::qianim::V2::ActuatorCurve::put_actuator (ptree &pt, const std::string &name)
 
ALMATH_API int AL::qianim::V2::ActuatorCurve::get_fps (const ptree &pt)
 
ALMATH_API void AL::qianim::V2::ActuatorCurve::put_fps (ptree &pt, int fps)
 
ALMATH_API bool AL::qianim::V2::ActuatorCurve::get_mute (const ptree &pt)
 
ALMATH_API void AL::qianim::V2::ActuatorCurve::put_mute (ptree &pt, bool mute)
 
ALMATH_API Unit AL::qianim::V2::ActuatorCurve::get_unit (const ptree &pt)
 
ALMATH_API void AL::qianim::V2::ActuatorCurve::put_unit (ptree &pt, Unit unit)
 
ALMATH_API optional< const
ptree & > 
AL::qianim::V2::ActuatorCurve::get_key_optional (const ptree &pt, int frame)
 
ALMATH_API optional< ptree & > AL::qianim::V2::ActuatorCurve::get_key_optional (ptree &pt, int frame)
 
const ptree & AL::qianim::V2::ActuatorCurve::get_key (const ptree &pt, int frame)
 
ptree & AL::qianim::V2::ActuatorCurve::get_key (ptree &pt, int frame)
 
ALMATH_API ptree & AL::qianim::V2::ActuatorCurve::require_key (ptree &pt, int frame)
 
auto AL::qianim::V2::ActuatorCurve::get_keys (const ptree &pt) -> boost::select_second_const_range< decltype(boost::adaptors::filter(pt, Key::is_key))>
 
auto AL::qianim::V2::ActuatorCurve::get_keys (ptree &pt) -> boost::select_second_mutable_range< decltype(boost::adaptors::filter(pt, Key::is_key))>
 
template<typename Scalar >
std::enable_if
< std::is_floating_point
< Scalar >::value >::type 
AL::qianim::V2::ActuatorCurve::check_cubic_bezier (const ptree &pt)
 
ALMATH_API bool AL::qianim::V2::Label::is_label (const ptree::value_type &val)
 
ALMATH_API std::string AL::qianim::V2::Label::get_value (const ptree &pt)
 
ALMATH_API bool AL::qianim::V2::Labels::is_labels (const ptree::value_type &val)
 
ALMATH_API ptree & AL::qianim::V2::Labels::add_label (ptree &pt, int frame, const std::string value)
 
auto AL::qianim::V2::Labels::get_labels (const ptree &pt) -> boost::select_second_const_range< decltype(boost::adaptors::filter(pt, Label::is_label))>
 
auto AL::qianim::V2::Labels::get_labels (ptree &pt) -> boost::select_second_mutable_range< decltype(boost::adaptors::filter(pt, Label::is_label))>
 
auto AL::qianim::V2::Animation::get_actuatorcurves (const ptree &pt) -> boost::select_second_const_range< decltype(boost::adaptors::filter(pt, ActuatorCurve::is_actuatorcurve))>
 
auto AL::qianim::V2::Animation::get_actuatorcurves (ptree &pt) -> boost::select_second_mutable_range< decltype(boost::adaptors::filter(pt, ActuatorCurve::is_actuatorcurve))>
 
ALMATH_API void AL::qianim::V2::Animation::check_version (const ptree &pt)
 
ALMATH_API void AL::qianim::V2::Animation::check_all (const ptree &pt)
 
ALMATH_API ptree & AL::qianim::V2::Animation::require_actuatorcurve (ptree &pt, const std::string &actuator)
 
auto AL::qianim::V2::Animation::get_labels (const ptree &pt) -> boost::select_second_const_range< decltype(boost::adaptors::filter(pt, Labels::is_labels))>
 
ALMATH_API ptree & AL::qianim::V2::Animation::add_labels (ptree &pt)
 
ALMATH_API ptree & AL::qianim::V2::get_animation (ptree &root)
 
ALMATH_API const ptree & AL::qianim::V2::get_animation (const ptree &root)
 
ALMATH_API ptree & AL::qianim::V2::require_animation (ptree &root)