16 #ifndef OPENKALMAN_GET_WRAPPABLE_HPP 17 #define OPENKALMAN_GET_WRAPPABLE_HPP 24 template<
typename T, std::size_t...I>
25 constexpr
bool get_wrappable_impl(
const T& t, std::index_sequence<I...>)
39 template<
interface::count_indices_defined_for T>
41 template<
typename T, std::enable_if_t<
interface::count_indices_defined_for<T>,
int> = 0>
48 return detail::get_wrappable_impl(t, std::make_index_sequence<count - 1> {});
61 #endif //OPENKALMAN_GET_WRAPPABLE_HPP constexpr auto count_indices(const T &t)
Get the number of indices available to address the components of an indexible object.
Definition: count_indices.hpp:33
constexpr bool value
T is numerical value or is reducible to a numerical value.
Definition: value.hpp:31
The root namespace for OpenKalman.
Definition: basics.hpp:34
constexpr auto get_is_euclidean(const Arg &arg)
Determine, whether coordinates::pattern Arg is euclidean.
Definition: get_is_euclidean.hpp:70
constexpr bool fixed
T is a values::value that is determinable at compile time.
Definition: fixed.hpp:60
constexpr bool get_wrappable(const T &t)
Determine whether T is wrappable (i.e., all its dimensions other than potentially 0 are euclidean)...
Definition: get_wrappable.hpp:43
constexpr auto get_vector_space_descriptor(const T &t, const N &n)
Get the coordinates::pattern object for index N of indexible object T.
Definition: get_vector_space_descriptor.hpp:56