base_vec
Fully qualified name: omni::math::linalg::base_vec
- 
template<typename T, size_t N>
 class base_vec
 
- Subclassed by omni::math::linalg::vec2< int > - 
- Public Types - 
- 
using value_type = T
 
 - 
- 
using size_type = size_t
 
 - 
- 
using difference_type = ptrdiff_t
 
 - 
- 
using reference = value_type&
 
 - 
- 
using const_reference = const value_type&
 
 - 
- 
using pointer = value_type*
 
 - 
- 
using const_pointer = const value_type*
 
 - 
- 
using iterator = pointer
 
 - 
- 
using const_iterator = const_pointer
 
 - 
- 
using ScalarType = T
 
 
 - 
- Public Functions - 
- 
base_vec() = default
 
 - 
- 
constexpr base_vec(const base_vec<T, N>&) = default
 
 - 
- 
inline explicit constexpr base_vec(T value)
 
 - 
- 
template<typename OTHER_T>
 inline explicit constexpr base_vec(
- 
- const base_vec<OTHER_T, N> &other,
 )
 
 - 
- 
template<typename OTHER_T0, typename OTHER_T1, typename ...Args>
 inline constexpr base_vec(
- 
- OTHER_T0 a,
- OTHER_T1 b,
- Args... args,
 ) noexcept
 
 - 
- 
template<typename OTHER_T>
 inline base_vec(
- 
- const std::initializer_list<OTHER_T> &other,
 ) noexcept
 
 - 
- 
inline constexpr T &operator[](size_t i) noexcept
 
 - 
- 
inline constexpr const T &operator[](size_t i) const noexcept
 
 - 
- 
inline constexpr T *data() noexcept
 
 - 
- 
inline constexpr const T *data() const noexcept
 
 - 
- 
inline const T *GetArray() const
 
 - 
- 
inline constexpr T Dot(const base_vec<T, N> &other) const
 
 - 
- 
inline constexpr T GetLengthSq() const
 
 - 
- 
inline auto GetLength() const
 
 - 
- 
inline auto Normalize()
 
 - 
- 
inline constexpr T operator*(const base_vec<T, N> &other) const
 
 - 
- 
inline constexpr base_vec<T, N> &operator+=(
- 
- const base_vec<T, N> &that,
 ) noexcept
 
 - 
- 
inline constexpr base_vec<T, N> &operator-=(
- 
- const base_vec<T, N> &that,
 ) noexcept
 
 - 
- 
inline constexpr base_vec<T, N> &operator*=(const T that) noexcept
 
 - 
- 
inline constexpr base_vec<T, N> &operator/=(const T that) noexcept
 
 
 - 
- Public Static Functions - 
- 
static inline base_vec<T, N> Axis(size_t axis)
 
 
 - 
- Public Static Attributes - 
- 
static constexpr size_t tuple_size = N
 
 - 
- 
static const size_t dimension = N
 
 
 - 
- Protected Attributes - 
- 
T v[N]