📄 router.h
字号:
/*******************************************************/ /* "C" Language Integrated Production System */ /* */ /* CLIPS Version 6.24 06/05/06 */ /* */ /* ROUTER HEADER FILE */ /*******************************************************//*************************************************************//* Purpose: Provides a centralized mechanism for handling *//* input and output requests. *//* *//* Principal Programmer(s): *//* Gary D. Riley *//* *//* Contributing Programmer(s): *//* *//* Revision History: *//* *//* 6.24: Renamed BOOLEAN macro type to intBool. *//* *//* Added support for passing context information */ /* to the router functions. *//* *//*************************************************************/#ifndef _H_router#define _H_router#ifndef _H_prntutil#include "prntutil.h"#endif#ifndef _STDIO_INCLUDED_#define _STDIO_INCLUDED_#include <stdio.h>#endif#define WWARNING "wwarning"#define WERROR "werror"#define WTRACE "wtrace"#define WDIALOG "wdialog"#define WPROMPT WPROMPT_STRING#define WDISPLAY "wdisplay"#define ROUTER_DATA 46struct router { char *name; int active; int priority; short int environmentAware; void *context; int (*query)(void *,char *); int (*printer)(void *,char *,char *); int (*exiter)(void *,int); int (*charget)(void *,char *); int (*charunget)(void *,int,char *); struct router *next; };struct routerData { size_t CommandBufferInputCount; char *LineCountRouter; char *FastCharGetRouter; char *FastCharGetString; long FastCharGetIndex; struct router *ListOfRouters; FILE *FastLoadFilePtr; FILE *FastSaveFilePtr; int Abort; };#define RouterData(theEnv) ((struct routerData *) GetEnvironmentData(theEnv,ROUTER_DATA))#ifdef LOCALE#undef LOCALE#endif#ifdef _ROUTER_SOURCE_#define LOCALE#else#define LOCALE extern#endif#if ENVIRONMENT_API_ONLY#define ExitRouter(theEnv,a) EnvExitRouter(theEnv,a)#define GetcRouter(theEnv,a) EnvGetcRouter(theEnv,a)#define PrintRouter(theEnv,a,b) EnvPrintRouter(theEnv,a,b)#define UngetcRouter(theEnv,a,b) EnvUngetcRouter(theEnv,a,b)#define ActivateRouter(theEnv,a) EnvActivateRouter(theEnv,a)#define DeactivateRouter(theEnv,a) EnvDeactivateRouter(theEnv,a)#define DeleteRouter(theEnv,a) EnvDeleteRouter(theEnv,a)#else#define ExitRouter(a) EnvExitRouter(GetCurrentEnvironment(),a)#define GetcRouter(a) EnvGetcRouter(GetCurrentEnvironment(),a)#define PrintRouter(a,b) EnvPrintRouter(GetCurrentEnvironment(),a,b)#define UngetcRouter(a,b) EnvUngetcRouter(GetCurrentEnvironment(),a,b)#define ActivateRouter(a) EnvActivateRouter(GetCurrentEnvironment(),a)#define DeactivateRouter(a) EnvDeactivateRouter(GetCurrentEnvironment(),a)#define DeleteRouter(a) EnvDeleteRouter(GetCurrentEnvironment(),a)#endif LOCALE void InitializeDefaultRouters(void *); LOCALE int EnvPrintRouter(void *,char *,char *); LOCALE int EnvGetcRouter(void *,char *); LOCALE int EnvUngetcRouter(void *,int,char *); LOCALE void EnvExitRouter(void *,int); LOCALE void AbortExit(void *); LOCALE intBool EnvAddRouterWithContext(void *, char *,int, int (*)(void *,char *), int (*)(void *,char *,char *), int (*)(void *,char *), int (*)(void *,int,char *), int (*)(void *,int), void *); LOCALE intBool EnvAddRouter(void *, char *,int, int (*)(void *,char *), int (*)(void *,char *,char *), int (*)(void *,char *), int (*)(void *,int,char *), int (*)(void *,int)); LOCALE intBool AddRouter(char *,int, int (*)(char *), int (*)(char *,char *), int (*)(char *), int (*)(int,char *), int (*)(int)); LOCALE int EnvDeleteRouter(void *,char *); LOCALE int QueryRouters(void *,char *); LOCALE int EnvDeactivateRouter(void *,char *); LOCALE int EnvActivateRouter(void *,char *); LOCALE void SetFastLoad(void *,FILE *); LOCALE void SetFastSave(void *,FILE *); LOCALE FILE *GetFastLoad(void *); LOCALE FILE *GetFastSave(void *); LOCALE void UnrecognizedRouterMessage(void *,char *); LOCALE void ExitCommand(void *); LOCALE int PrintNRouter(void *,char *,char *,unsigned long);#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -