25 sfloat_rgb32() =
default;
26 sfloat_rgb32(sfloat_rgb32
const &rhs)
noexcept =
default;
27 sfloat_rgb32(sfloat_rgb32 &&rhs)
noexcept =
default;
28 sfloat_rgb32 &operator=(sfloat_rgb32
const &rhs)
noexcept =
default;
29 sfloat_rgb32 &operator=(sfloat_rgb32 &&rhs)
noexcept =
default;
31 sfloat_rgb32(f32x4
const &rhs) noexcept : v{rhs.r(), rhs.g(), rhs.b()} {}
33 sfloat_rgb32 &operator=(f32x4
const &rhs)
noexcept
35 v = {rhs.r(), rhs.g(), rhs.b()};
39 operator f32x4()
const noexcept
41 return f32x4{std::get<0>(v), std::get<1>(v), std::get<2>(v), 0.0f};
44 sfloat_rgb32(point3
const &rhs) noexcept : sfloat_rgb32(
static_cast<f32x4
>(rhs)) {}
46 sfloat_rgb32 &operator=(point3
const &rhs)
noexcept
48 return *
this =
static_cast<f32x4
>(rhs);
51 operator point3()
const noexcept
53 return point3{f32x4{*
this}};
56 [[nodiscard]]
friend bool operator==(sfloat_rgb32
const &lhs, sfloat_rgb32
const &rhs)
noexcept =
default;