/***********************************************************************\

    Filename: sc.h

\***********************************************************************/

/* This file includes everything needed by the ordinary user of SC.  It is 
   otherwise not used by SC.  */ 

/* Everything uses proxlib. */

#ifndef _PROXLIB
#include <proxlib.h>
#endif

/* The language code definitions. */

#ifndef _LANGUAGE
#include <language.h>
#endif

/* Definitions of various constants. */

#ifndef SC_SCDEF
#include "scdef.h"
#endif

/* Word list definitions. */

#ifndef _CORELEX
#include "corelex.h"
#endif
#ifndef SC_LEX
#include "lex.h"
#endif
#ifndef SC_CLAM
#include "clam.h"
#endif

/* Query information. */

#ifndef SC_QUERY
#include "query.h"
#endif

/* Functions that may be called by the user. */

extern int doflags();           /* Convert a word into SC internal form. */
extern VOID undoflags();        /* Convert a word from SC internal form. */

extern CLAM *clamopen();        /* Add a CLAM to the Searchpath */
extern VOID clamclose();        /* Remove a CLAM from the Searchpath */
extern int clamadd();           /* Add a word to a CLAM. */
extern int clamword();          /* Look for a word in a CLAM. */
extern int clamnext();          /* Read CLAM sequentially */
extern int clamcorr();          /* Get correct spelling from a CLAM. */

extern int clxopen();           /* Add a Corelex to the Searchpath */
extern VOID clxclose();         /* Remove a Corelex from the Searchpath */

extern int lexopen();           /* Add a Linguibase to the Searchpath */
extern VOID lexclose();         /* Remove a Linguibase from the Searchpath */
extern int lexword();          /* Look for a word in a lexicon */

extern int isword();            /* Look up a word */
extern UCHAR **correct();       /* Correct a word */
extern UCHAR **corrtypo();      /* Typo correct */
extern UCHAR **corrphon();      /* Phonetic correct */
