/*
 * fontconfig/doc/fcfile.fncs
 *
 * Copyright © 2003 Keith Packard
 *
 * Permission to use, copy, modify, distribute, and sell this software and its
 * documentation for any purpose is hereby granted without fee, provided that
 * the above copyright notice appear in all copies and that both that
 * copyright notice and this permission notice appear in supporting
 * documentation, and that the name of the author(s) not be used in
 * advertising or publicity pertaining to distribution of the software without
 * specific, written prior permission.  The authors make no
 * representations about the suitability of this software for any purpose.  It
 * is provided "as is" without express or implied warranty.
 *
 * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
 * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
 * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
 * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
 * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 * PERFORMANCE OF THIS SOFTWARE.
 */

@RET@           FcBool
@FUNC@          FcFileScan
@TYPE1@         FcFontSet *                     @ARG1@          set
@TYPE2@         FcStrSet *                      @ARG2@          dirs
@TYPE3@         FcFileCache *                   @ARG3@          cache
@TYPE4@         FcBlanks *                      @ARG4@          blanks
@TYPE5@         const FcChar8 *                 @ARG5@          file
@TYPE6@         FcBool%                         @ARG6@          force
@PURPOSE@       scan a font file
@DESC@
Scans a single file and adds all fonts found to <parameter>set</parameter>.
If <parameter>force</parameter> is FcTrue, then the file is scanned even if
associated information is found in <parameter>cache</parameter>.  If
<parameter>file</parameter> is a directory, it is added to
<parameter>dirs</parameter>. Whether fonts are found depends on fontconfig
policy as well as the current configuration. Internally, fontconfig will
ignore BDF and PCF fonts which are not in Unicode (or the effectively
equivalent ISO Latin-1) encoding as those are not usable by Unicode-based
applications. The configuration can ignore fonts based on filename or
contents of the font file itself. Returns FcFalse if any of the fonts cannot be
added (due to allocation failure). Otherwise returns FcTrue.
@@

@RET@           FcBool
@FUNC@          FcFileIsDir
@TYPE1@         const FcChar8 *                 @ARG1@          file
@PURPOSE@       check whether a file is a directory
@DESC@
Returns FcTrue if <parameter>file</parameter> is a directory, otherwise
returns FcFalse.
@@

@RET@           FcBool
@FUNC@          FcDirScan
@TYPE1@         FcFontSet *                     @ARG1@          set
@TYPE2@         FcStrSet *                      @ARG2@          dirs
@TYPE3@         FcFileCache *                   @ARG3@          cache
@TYPE4@         FcBlanks *                      @ARG4@          blanks
@TYPE5@         const FcChar8 *                 @ARG5@          dir
@TYPE6@         FcBool%                         @ARG6@          force
@PURPOSE@       scan a font directory without caching it
@DESC@
If <parameter>cache</parameter> is not zero or if <parameter>force</parameter>
is FcFalse, this function currently returns FcFalse.  Otherwise, it scans an
entire directory and adds all fonts found to <parameter>set</parameter>.
Any subdirectories found are added to <parameter>dirs</parameter>.  Calling
this function does not create any cache files.  Use FcDirCacheRead() if
caching is desired.
@@

@RET@           FcBool
@FUNC@          FcDirSave
@TYPE1@         FcFontSet *                     @ARG1@          set
@TYPE2@         FcStrSet *                      @ARG2@          dirs
@TYPE3@         const FcChar8 *                 @ARG3@          dir
@PURPOSE@       DEPRECATED: formerly used to save a directory cache
@DESC@
This function now does nothing aside from returning FcFalse. It used to creates the
per-directory cache file for <parameter>dir</parameter> and populates it
with the fonts in <parameter>set</parameter> and subdirectories in
<parameter>dirs</parameter>. All of this functionality is now automatically
managed by FcDirCacheLoad and FcDirCacheRead.
@@

