17 #ifndef OPENKALMAN_GET_DESCRIPTOR_EUCLIDEAN_SIZE_HPP 18 #define OPENKALMAN_GET_DESCRIPTOR_EUCLIDEAN_SIZE_HPP 21 #include "linear-algebra/coordinates/interfaces/coordinate_descriptor_traits.hpp" 32 template<descriptor Arg>
35 template<
typename Arg, std::enable_if_t<descriptor<Arg>,
int> = 0>
36 constexpr decltype(
auto)
38 get_descriptor_stat_dimension(Arg&& arg)
40 if constexpr (interface::coordinate_descriptor_traits<std::decay_t<Arg>>::is_specialized)
42 return interface::coordinate_descriptor_traits<std::decay_t<Arg>>::stat_dimension(std::forward<Arg>(arg));
46 static_assert(values::index<Arg>);
47 return std::forward<Arg>(arg);
55 #endif //OPENKALMAN_GET_DESCRIPTOR_EUCLIDEAN_SIZE_HPP Definition for values::index.
Definition: get_component_start_indices.hpp:29
Definition for coordinates::descriptor.
constexpr bool index
T is an index value.
Definition: index.hpp:56