/*******************************************************************************
* SMP00 Sample of an SGML Application Interfaced with the YASP Parser          *
*------------------------------------------------------------------------------*
* Written 1987 - 1993 by                                                       *
*         Pierre G. Richard                                                    *
*         IBM T.J. Watson Research Center                                      *
*         Yorktown Heights, New York                                           *
*         petrus@watson.ibm.com                                                *
*-----------------------------------------------------------------------------*
* FUNCTION NAME    = YASP / Application  - Header file                        *
* STATUS           = N/A                                                      *
* COMPONENT NAME   = server.h                                                 *
* DESCRIPTIVE NAME = Prototype functions in server.c                          *
* DATE_WR          = 08/15/1989                                               *
* AUTHOR           = Pierre G. Richard - PETRUS at YKTVMX                     *
*                                                                             *
* FUNCTIONAL DESCRIPTION =                                                    *
*                                                                             *
* CHANGE HISTORY =                                                            *
* Number Date     Inits    Change & reason (brief)                            *
******************************************************************************/

extern void *sr_init  (boolean, char const *, char const *, char const *, char const *);
extern int   sr_find  (PAC *, void *); /* Find an ID-handle for a file */
extern int   sr_xenop (PAC *, void *); /* Open an External Entity (text file) */
extern int   sr_xenrd (PAC *, void *); /* Read an External Entity (text file) */
extern int   sr_xencl (PAC *, void *); /* Close External Entity (text file) */
extern int   sr_xengp (PAC *, void *); /* Get External Entity Position */
extern int   sr_xensp (PAC *, void *); /* Set External Entity Position */
extern int   sr_utopr (PAC *);         /* Open an Utility file for Reading */
extern int   sr_utrd  (PAC *);         /* Read in an Utility file */
extern int   sr_utopw (PAC *);         /* Open an Utility file for writing */
extern int   sr_utwrt (PAC *);         /* Write in an Utility file */
extern int   sr_utcl  (PAC *);         /* Close an Utility file */
extern int   sr_allo  (PAC *);         /* Allocate a piece of memory */
extern int   sr_free  (PAC *);         /* Release a piece of memory */
extern int   sr_msg   (PAC *, void *); /* Deals with the Parser messages */
extern void  sr_term  (void *);        /* Terminate the I/O */

/******************************************************************************/
