summaryrefslogtreecommitdiff
path: root/doc/functions/TIFFbuffer.rst
diff options
context:
space:
mode:
Diffstat (limited to 'doc/functions/TIFFbuffer.rst')
-rw-r--r--doc/functions/TIFFbuffer.rst57
1 files changed, 57 insertions, 0 deletions
diff --git a/doc/functions/TIFFbuffer.rst b/doc/functions/TIFFbuffer.rst
new file mode 100644
index 00000000..1772bc0e
--- /dev/null
+++ b/doc/functions/TIFFbuffer.rst
@@ -0,0 +1,57 @@
+TIFFbuffer
+==========
+
+Synopsis
+--------
+
+.. highlight:: c
+
+::
+
+ #include <tiffio.h>
+
+
+.. c:function:: int TIFFReadBufferSetup(TIFF* tif, tdata_t buffer, tsize_t size)
+.. c:function:: int TIFFWriteBufferSetup(TIFF* tif, tdata_t buffer, tsize_t size)
+
+Description
+-----------
+
+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.
+
+:c:func:`TIFFReadBufferSetup` sets up the data buffer used to read raw (encoded)
+data from a file. If the specified pointer is :c:macro:`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.
+:c:func:`TIFFReadBufferSetup` returns a non-zero value if the setup was successful
+and zero otherwise.
+
+:c:func:`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 :c:macro:`NULL` (zero), then a buffer of the appropriate
+size is dynamically allocated.
+:c:func:`TIFFWriteBufferSetup` returns a non-zero value if the setup was successful
+and zero otherwise.
+
+Diagnostics
+-----------
+
+``%s: No space for data buffer at scanline %ld``:
+
+ :c:func:`TIFFReadBufferSetup` was unable to dynamically allocate space for a
+ data buffer.
+
+``%s: No space for output buffer``:
+
+ :c:func:`TIFFWriteBufferSetup` was unable to dynamically allocate space for a
+ data buffer.
+
+See also
+--------
+
+:doc:`/man/libtiff` (3tiff)