33{
35 set_tf_named(
static_cast<uint32_t
>(*data.
tfNamed));
39 }
40
43 } else {
45 set_primaries(std::rint(data.
container->red.x * 1'000'000.00),
46 std::rint(data.
container->red.y * 1'000'000.00),
47 std::rint(data.
container->green.x * 1'000'000.00),
48 std::rint(data.
container->green.y * 1'000'000.00),
49 std::rint(data.
container->blue.x * 1'000'000.00),
50 std::rint(data.
container->blue.y * 1'000'000.00),
51 std::rint(data.
container->white.x * 1'000'000.00),
52 std::rint(data.
container->white.y * 1'000'000.00));
53 }
54
57 set_mastering_display_primaries(std::rint(data.
target->red.x * 1'000'000.00),
58 std::rint(data.
target->red.y * 1'000'000.00),
59 std::rint(data.
target->green.x * 1'000'000.00),
60 std::rint(data.
target->green.y * 1'000'000.00),
61 std::rint(data.
target->blue.x * 1'000'000.00),
62 std::rint(data.
target->blue.y * 1'000'000.00),
63 std::rint(data.
target->white.x * 1'000'000.00),
64 std::rint(data.
target->white.y * 1'000'000.00));
65 }
66
72 }
73
77 }
78
81 }
82
85 }
86
88
89 qWarning() << "ICC file is not supported yet.";
90 }
91
92 auto result = std::make_unique<KisWaylandAPIImageDescriptionNoInfo>(
create());
93
95
96 return result;
97}
bool isFeatureSupported(feature f) const
QPainterPath create(const char32_t codepoint, double height)
Creates a tofu missing glyph indicator representing the provided Unicode codepoint.
void init(QOpenGLContext *ctx)
std::optional< KisSurfaceColorimetry::Luminance > luminances
std::optional< uint32_t > targetMaxFALL
std::optional< WaylandPrimaries > target
std::optional< KisSurfaceColorimetry::MasteringLuminance > masteringLuminance
std::optional< transfer_function > tfNamed
std::optional< uint32_t > targetMaxCLL
std::optional< WaylandPrimaries > container
std::optional< uint32_t > tfGamma
std::optional< primaries > namedContainer