#ifndef ALSK_ALSK_IMPL_BONEIMPLBASE_H #define ALSK_ALSK_IMPL_BONEIMPLBASE_H #include #include "execute.h" #include "tags.h" #include "../utility.h" namespace alsk { template struct BoneImplBase; template< template class Bone, typename R, typename... Args, typename... Tasks, typename Tag_, typename Executor_, typename State_ > struct BoneImplBase, Tag_, Executor_, State_> { using Signature = R(Args...); using Skeleton = Bone; using Tag = Tag_; using Executor = Executor_; using ExecutorInfo = typename std::decay_t::Info; using State = State_; using StateRef = std::reference_wrapper; using Return = RealType; ExecutorInfo executorInfo; constexpr BoneImplBase() noexcept {} std::size_t id = 0; }; } #endif