home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2009 February / PCWFEB09.iso / Software / Linux / SLAX 6.0.8 / slax-6.0.8.iso / slax / base / 006-devel.lzm / usr / include / cups / file.h < prev    next >
Encoding:
C/C++ Source or Header  |  2008-10-21  |  3.2 KB  |  105 lines

  1. /*
  2.  * "$Id: file.h 7721 2008-07-11 22:48:49Z mike $"
  3.  *
  4.  *   Public file definitions for the Common UNIX Printing System (CUPS).
  5.  *
  6.  *   Since stdio files max out at 256 files on many systems, we have to
  7.  *   write similar functions without this limit.  At the same time, using
  8.  *   our own file functions allows us to provide transparent support of
  9.  *   gzip'd print files, PPD files, etc.
  10.  *
  11.  *   Copyright 2007 by Apple Inc.
  12.  *   Copyright 1997-2007 by Easy Software Products, all rights reserved.
  13.  *
  14.  *   These coded instructions, statements, and computer programs are the
  15.  *   property of Apple Inc. and are protected by Federal copyright
  16.  *   law.  Distribution and use rights are outlined in the file "LICENSE.txt"
  17.  *   which should have been included with this file.  If this file is
  18.  *   file is missing or damaged, see the license at "http://www.cups.org/".
  19.  */
  20.  
  21. #ifndef _CUPS_FILE_H_
  22. #  define _CUPS_FILE_H_
  23.  
  24.  
  25. /*
  26.  * Include necessary headers...
  27.  */
  28.  
  29. #  include <sys/types.h>
  30. #  if defined(WIN32) && !defined(__CUPS_SSIZE_T_DEFINED)
  31. #    define __CUPS_SSIZE_T_DEFINED
  32. /* Windows does not support the ssize_t type, so map it to off_t... */
  33. typedef off_t ssize_t;            /* @private@ */
  34. #  endif /* WIN32 && !__CUPS_SSIZE_T_DEFINED */
  35.  
  36.  
  37. /*
  38.  * C++ magic...
  39.  */
  40.  
  41. #  ifdef __cplusplus
  42. extern "C" {
  43. #  endif /* __cplusplus */
  44.  
  45.  
  46. /*
  47.  * CUPS file definitions...
  48.  */
  49.  
  50. #  define CUPS_FILE_NONE    0    /* No compression */
  51. #  define CUPS_FILE_GZIP    1    /* GZIP compression */
  52.  
  53.  
  54. /*
  55.  * Types and structures...
  56.  */
  57.  
  58. typedef struct _cups_file_s cups_file_t;/**** CUPS file type ****/
  59.  
  60.  
  61. /*
  62.  * Prototypes...
  63.  */
  64.  
  65. extern int        cupsFileClose(cups_file_t *fp);
  66. extern int        cupsFileCompression(cups_file_t *fp);
  67. extern int        cupsFileEOF(cups_file_t *fp);
  68. extern const char    *cupsFileFind(const char *filename, const char *path,
  69.                           int executable, char *buffer,
  70.                       int bufsize);
  71. extern int        cupsFileFlush(cups_file_t *fp);
  72. extern int        cupsFileGetChar(cups_file_t *fp);
  73. extern char        *cupsFileGetConf(cups_file_t *fp, char *buf, size_t buflen,
  74.                              char **value, int *linenum);
  75. extern size_t        cupsFileGetLine(cups_file_t *fp, char *buf,
  76.                             size_t buflen);
  77. extern char        *cupsFileGets(cups_file_t *fp, char *buf, size_t buflen);
  78. extern int        cupsFileLock(cups_file_t *fp, int block);
  79. extern int        cupsFileNumber(cups_file_t *fp);
  80. extern cups_file_t    *cupsFileOpen(const char *filename, const char *mode);
  81. extern cups_file_t    *cupsFileOpenFd(int fd, const char *mode);
  82. extern int        cupsFilePeekChar(cups_file_t *fp);
  83. extern int        cupsFilePrintf(cups_file_t *fp, const char *format, ...);
  84. extern int        cupsFilePutChar(cups_file_t *fp, int c);
  85. extern int        cupsFilePuts(cups_file_t *fp, const char *s);
  86. extern ssize_t        cupsFileRead(cups_file_t *fp, char *buf, size_t bytes);
  87. extern off_t        cupsFileRewind(cups_file_t *fp);
  88. extern off_t        cupsFileSeek(cups_file_t *fp, off_t pos);
  89. extern cups_file_t    *cupsFileStderr(void);
  90. extern cups_file_t    *cupsFileStdin(void);
  91. extern cups_file_t    *cupsFileStdout(void);
  92. extern off_t        cupsFileTell(cups_file_t *fp);
  93. extern int        cupsFileUnlock(cups_file_t *fp);
  94. extern ssize_t        cupsFileWrite(cups_file_t *fp, const char *buf, size_t bytes);
  95.  
  96.  
  97. #  ifdef __cplusplus
  98. }
  99. #  endif /* __cplusplus */
  100. #endif /* !_CUPS_FILE_H_ */
  101.  
  102. /*
  103.  * End of "$Id: file.h 7721 2008-07-11 22:48:49Z mike $".
  104.  */
  105.