Commit c92bd851 for libheif
commit c92bd8514886c8b7fad311848a0c0e0bcb6ef998
Author: therahedwig <griffinvalley@gmail.com>
Date: Thu Oct 8 11:36:03 2026 +0200
Add nominal diffuse white to the CXX api
diff --git a/libheif/api/libheif/heif_cxx.h b/libheif/api/libheif/heif_cxx.h
index 7e83f936..2fda483d 100644
--- a/libheif/api/libheif/heif_cxx.h
+++ b/libheif/api/libheif/heif_cxx.h
@@ -247,6 +247,13 @@ namespace heif {
heif_mastering_display_colour_volume get_mastering_display_colour_volume() const noexcept;
void set_mastering_display_colour_volume(const heif_mastering_display_colour_volume&) noexcept;
+
+ bool has_nominal_diffuse_white_luminance() const noexcept;
+
+ // Returns a zero-initialized struct if the image has no such information.
+ uint32_t get_nominal_diffuse_white_luminance() const noexcept;
+
+ void set_nominal_diffuse_white_luminance(const uint32_t&) noexcept;
// ------------------------- depth images -------------------------
@@ -787,6 +794,21 @@ namespace heif {
{
heif_image_handle_set_mastering_display_colour_volume(m_image_handle.get(), &mdcv);
}
+
+ inline bool ImageHandle::has_nominal_diffuse_white_luminance() const noexcept
+ {
+ return heif_image_handle_has_nominal_diffuse_white_luminance(m_image_handle.get()) != 0;
+ }
+
+ inline uint32_t ImageHandle::get_nominal_diffuse_white_luminance() const noexcept
+ {
+ return heif_image_handle_get_nominal_diffuse_white_luminance(m_image_handle.get());
+ }
+
+ inline void ImageHandle::set_nominal_diffuse_white_luminance(const uint32_t& diffWhite) noexcept
+ {
+ heif_image_handle_set_nominal_diffuse_white_luminance(m_image_handle.get(), diffWhite);
+ }
// ------------------------- depth images -------------------------