The following routines are provided for client-control of
the I/O buffers used by the library. Applications need never
use these routines; they are provided only for
‘‘intelligent clients’’ that wish to
optimize memory usage and/or eliminate potential copy
operations that can occur when working with images that have
data stored without compression.
TIFFReadBufferSetup sets up the data buffer used
to read raw (encoded) data from a file. If the specified
pointer is NULL (zero), then a buffer of the
appropriate size is allocated. Otherwise the caller must
guarantee that the buffer is large enough to hold any
individual strip of raw data. TIFFReadBufferSetup
returns a non-zero value if the setup was successful and
zero otherwise.
TIFFWriteBufferSetup sets up the data buffer used
to write raw (encoded) data to a file. If the specified
size is −1 then the buffer size is selected to
hold a complete tile or strip, or at least 8 kilobytes,
whichever is greater. If the specified buffer is
NULL (zero), then a buffer of the appropriate
size is dynamically allocated. TIFFWriteBufferSetup
returns a non-zero value if the setup was successful and
zero otherwise.
|