TIFFReadScanline(3TMISC. REFERENCE MANUAL PAGTIFFReadScanline(3T)

NAME
     TIFFReadScanline - read and decode a scanline of  data  from
     an open TIFF file

SYNOPSIS
     #include <tiffio.h>
     int TIFFReadScanline(TIFF* tif,  tdata_t  buf,  uint32  row,
     tsample_t sample)

DESCRIPTION
     Read the data for the specified row into the (user supplied)
     data buffer buf.  The data are returned decompressed and, in
     the native byte- and bit-ordering, but are otherwise  packed
     (see  further  below).   The  buffer must be large enough to
     hold an entire scanline of data.  Applications  should  call
     the routine TIFFScanlineSize to find out the size (in bytes)
     of a scanline buffer.  The row parameter is always  used  by
     TIFFReadScanline;  the sample parameter is used only if data
     are organized in separate planes (PlanarConfiguration=2).

NOTES
     The library attempts to hide bit- and byte-ordering  differ-
     ences between the image and the native machine by converting
     data to the native machine order.  Bit reversal is  done  if
     the  FillOrder  tag  is  opposite  to the native machine bit
     order.  16-  and  32-bit  samples  are  automatically  byte-
     swapped  if  the file was written with a byte order opposite
     to the native machine byte order,

     In C++ the sample parameter defaults to 0.

RETURN VALUES
     TIFFReadScanline returns -1 if it detects an  error;  other-
     wise 1 is returned.

DIAGNOSTICS
     All error messages are directed to  the  TIFFError(3T)  rou-
     tine.

     Compression algorithm does not support random access.   Data
     was  requested  in  a  non-sequential order from a file that
     uses a  compression  algorithm  and  that  has  RowsPerStrip
     greater than one.  That is, data in the image is stored in a
     compressed form, and with multiple rows packed into a strip.
     In  this case, the library does not support random access to
     the data.  The data should either be accessed  sequentially,
     or  the  file should be converted so that each strip is made
     up of one row of data.

BUGS
     Reading  subsampled  YCbCR  data  does  not  work  correctly
     because, for PlanarConfiguration=2 the size of a scanline is

Sun Release 4.1  Last change: December 16, 1991                 1

TIFFReadScanline(3TMISC. REFERENCE MANUAL PAGTIFFReadScanline(3T)

     not calculated on a per-sample basis, and  for  PlanarConfi-
     guration=1 the library does not unpack the block-interleaved
     samples.

SEE ALSO
     intro(3T),      TIFFOpen(3T),      TIFFReadEncodedStrip(3T),
     TIFFReadRawStrip(3T)

Sun Release 4.1  Last change: December 16, 1991                 2