Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
al_fopen_slice(3)	    Library Functions Manual	       al_fopen_slice(3)

NAME
     al_fopen_slice - Allegro 5 API

SYNOPSIS
	    #include <allegro5/allegro.h>

	    ALLEGRO_FILE *al_fopen_slice(ALLEGRO_FILE *fp, size_t initial_size, const char *mode)

DESCRIPTION
     Opens  a slice (subset) of an already open random access file as if it were
     a stand alone file.  While the slice is open, the parent file  handle  must
     not be used in any way.

     The  slice is opened at the current location of the parent file, up through
     initial_size bytes.  The initial_size may be any non-negative integer  that
     will not exceed the bounds of the parent file.

     Seeking  with  ALLEGRO_SEEK_SET will be relative to this starting location.
     ALLEGRO_SEEK_END will be relative to the starting location plus the size of
     the slice.

     The mode can be any combination of:

     * r: read access

     * w: write access

     * e: expandable

     * s: seek to the end of the slice upon al_close(3) (this is the default be-
       havior)

     * n: disable the seeking behavior of "s".

     For example, a mode of "rw" indicates the file can  be  read  and	written.
     (Note  that this is slightly different from the stdio modes.)  Keep in mind
     that the parent file must support random access and be open in normal write
     mode (not append) for the slice to work in a well defined way.

     If the slice is marked as expandable, then reads and writes can happen  af-
     ter the initial end point, and the slice will grow accordingly.  Otherwise,
     all activity is restricted to the initial size of the slice.

     A slice must be closed with al_fclose(3).	The parent file will then be po-
     sitioned immediately after the end of the slice.  This behavior can be dis-
     abled by setting the "n" mode.

SINCE
     5.0.6, 5.1.0

SEE ALSO
     al_fopen(3)

Allegro reference manual				       al_fopen_slice(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=al_fopen_slice&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help