Commit 40d7bb76 for libheif

commit 40d7bb76b41e4983c931a144deb992b6e64913d9
Author: Dirk Farin <dirk.farin@gmail.com>
Date:   Tue Mar 17 22:52:05 2026 +0100

    tiff: implement reading YCbCr (JPEG) images

diff --git a/heifio/decoder_tiff.cc b/heifio/decoder_tiff.cc
index ef193e10..e3195971 100644
--- a/heifio/decoder_tiff.cc
+++ b/heifio/decoder_tiff.cc
@@ -26,8 +26,6 @@
 */

 #include <cstring>
-#include <iomanip>
-#include <iostream>
 #include <memory>
 #include <utility>
 #include <vector>
@@ -48,7 +46,17 @@ extern "C" {
 #include "decoder_tiff.h"
 #include "libheif/heif_uncompressed.h"

-static struct heif_error heif_error_ok = {heif_error_Ok, heif_suberror_Unspecified, "Success"};
+static heif_error heif_error_ok = {heif_error_Ok, heif_suberror_Unspecified, "Success"};
+
+// Forward declarations for YCbCr helpers (defined after validateTiffFormat)
+static YCbCrInfo getYCbCrInfo(TIFF* tif);
+static heif_chroma ycbcrChroma(const YCbCrInfo& ycbcr);
+static void deinterleaveYCbCr(const uint8_t* src, uint32_t block_w, uint32_t block_h,
+                              uint32_t actual_w, uint32_t actual_h,
+                              uint16_t horiz_sub, uint16_t vert_sub,
+                              uint8_t* y_plane, size_t y_stride,
+                              uint8_t* cb_plane, size_t cb_stride,
+                              uint8_t* cr_plane, size_t cr_stride);

 // Forward declarations for YCbCr helpers (defined after validateTiffFormat)
 static YCbCrInfo getYCbCrInfo(TIFF* tif);
@@ -1826,7 +1834,7 @@ void TiledTiffReader::readExif(InputImage* input_image)
   }
 }

-
+/*
 void TiledTiffReader::printGeoInfo(const char* filename) const
 {
 #if HAVE_GEOTIFF
@@ -1897,4 +1905,4 @@ void TiledTiffReader::printGeoInfo(const char* filename) const
     std::cout << "\n";
   }
 }
-
+*/
\ No newline at end of file
diff --git a/heifio/decoder_tiff.h b/heifio/decoder_tiff.h
index 1e34a168..487ced5e 100644
--- a/heifio/decoder_tiff.h
+++ b/heifio/decoder_tiff.h
@@ -73,7 +73,7 @@ public:

   heif_error readTile(uint32_t tx, uint32_t ty, int output_bit_depth, heif_image** out_image);
   void readExif(InputImage* input_image);
-  void printGeoInfo(const char* filename) const;
+  //void printGeoInfo(const char* filename) const;

 private:
   TiledTiffReader() = default;