TIFFWriteDirectory(3TIFF)             TIFFWriteDirectory(3TIFF)





NAME
       TIFFWriteDirectory,   TIFFRewriteDirectory,   TIFFCheck-
       pointDirectory - write the current directory in an  open
       TIFF file

SYNOPSIS
       #include <tiffio.h>

       int TIFFWriteDirectory(TIFF *tif)
       int TIFFRewriteDirectory(TIFF *tif)
       int TIFFCheckpointDirectory(TIFF *tif)

DESCRIPTION
       TIFFWriteDirectory  will  write the contents of the cur-
       rent directory to the file and setup  to  create  a  new
       subfile in the same file. Applications only need to call
       TIFFWriteDirectory when writing multiple subfiles  to  a
       single  TIFF  file.  TIFFWriteDirectory is automatically
       called by TIFFClose and TIFFFlush to  write  a  modified
       directory if the file is open for writing.

       The  TIFFRewriteDirectory function operates similarly to
       TIFFWriteDirectory, but can be called  with  directories
       previously  read  or written that already have an estab-
       lished location in the file.  It will rewrite the direc-
       tory,  but  instead of place it at it's old location (as
       TIFFWriteDirectory would) it will place them at the  end
       of  the file, correcting the pointer from the preceeding
       directory or file header to point to it's new  location.
       This  is  particularly important in cases where the size
       of the directory and pointed to data has  grown,  so  it
       won't fit in the space available at the old location.

       The  TIFFCheckpointDirectory writes the current state of
       the tiff directory into the file to make  what  is  cur-
       rently in the file readable.  Unlike TIFFWriteDirectory,
       TIFFCheckpointDirectory does not free up  the  directory
       data  structures  in  memory, so they can be updated (as
       strips/tiles are written) and  written  again.   Reading
       such  a  partial  file you will at worst get a tiff read
       error for  the  first  strip/tile  encountered  that  is
       incomplete, but you will at least get all the valid data
       in the file before that.  When  the  file  is  complete,
       just  use  TIFFWriteDirectory  as usual to finish it off
       cleanly.

RETURN VALUES
       1 is returned when the contents are successfully written
       to  the  file.  Otherwise, 0 is returned if an error was
       encountered when writing the directory contents.

DIAGNOSTICS
       All error messages are directed to the  TIFFError(3TIFF)
       routine.

       Error  post-encoding  before  directory  write.   Before
       writing the contents of the current directory, any pend-
       ing  data  are  flushed.  This message indicates that an
       error occurred while doing this.

       Error flushing  data  before  directory  write.   Before
       writing the contents of the current directory, any pend-
       ing data are flushed. This  message  indicates  that  an
       error occurred while doing this.

       Cannot  write  directory,  out  of space.  There was not
       enough space to allocate a temporary area for the direc-
       tory that was to be written.

       Error  writing  directory count.  A write error occurred
       when writing the count of fields in the directory.

       Error  writing  directory  contents.   A   write   error
       occurred when writing the directory fields.

       Error  writing  directory  link.  A write error occurred
       when writing the link to the next directory.

       Error writing  data  for  field  "%s".   A  write  error
       occurred  when  writing  indirect data for the specified
       field.

       Error writing TIFF header.  A write error occurred  when
       re-writing header at the front of the file.

       Error  fetching  directory count.  A read error occurred
       when fetching the directory count field for  a  previous
       directory.  This can occur when setting up a link to the
       directory that is being written.

       Error fetching directory link.  A  read  error  occurred
       when  fetching  the  directory link field for a previous
       directory.  This can occur when setting up a link to the
       directory that is being written.

SEE ALSO
       TIFFOpen(3TIFF),     TIFFError(3TIFF),    TIFFReadDirec-
       tory(3TIFF), TIFFSetDirectory(3TIFF), libtiff(3TIFF)

       Libtiff  library   home   page:   http://www.remotesens-
       ing.org/libtiff/



libtiff                September 26, 2TIFFWriteDirectory(3TIFF)
