45#ifndef UFO_VISION_COLOR_CONVERT_HPP
46#define UFO_VISION_COLOR_CONVERT_HPP
49#include <ufo/vision/color/concepts.hpp>
50#include <ufo/vision/color/detail/convert.hpp>
72template <Color To, Color From>
73[[nodiscard]]
constexpr To
convert(From
const& color)
75 return detail::convertColor<To>(color);
88template <
typename T, Color From>
89 requires(std::floating_point<T> || std::integral<T>)
90[[nodiscard]]
constexpr auto convert(From
const& color)
92 return convert<typename color_traits<From>::template rebind_value<T>>(color);
105template <ColorFlags F, Color From>
106[[nodiscard]]
constexpr auto convert(From
const& color)
108 return convert<typename color_traits<From>::template rebind_flags<F>>(color);
122template <
typename T, ColorFlags F, Color From>
123 requires(std::floating_point<T> || std::integral<T>)
124[[nodiscard]]
constexpr auto convert(From
const& color)
126 return convert<typename color_traits<From>::template rebind<T, F>>(color);
139template <Color From, Color To>
140constexpr void convert(From
const& in, To& out)
142 out = convert<To>(in);
All vision-related classes and functions.
constexpr To convert(Vec< Dim, U > const &v) noexcept
Converts a vector to a different Vec type, truncating or zero-padding dimensions.