⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 setup.h

📁 NASA 开发使用的一个专家系统
💻 H
📖 第 1 页 / 共 2 页
字号:
   /*******************************************************/   /*      "C" Language Integrated Production System      */   /*                                                     */   /*             CLIPS Version 6.05  04/09/97            */   /*                                                     */   /*                  SETUP HEADER FILE                  */   /*******************************************************//*************************************************************//* Purpose:                                                  *//*                                                           *//* Principal Programmer(s):                                  *//*      Gary D. Riley                                        *//*      Brian L. Donnell                                     *//*                                                           *//* Contributing Programmer(s):                               *//*                                                           *//* Revision History:                                         *//*                                                           *//*************************************************************//****************************************************************//* This file is the general header file for CLIPS. It contains  *//* the global definitions used by CLIPS, and the compiler flags *//* you have to edit to create a version of CLIPS for a specific *//* system.                                                      *//*                                                              *//* If CLIPS is being used as an embedded tool, then this file   *//* should be included in at least the main program. Any other   *//* files which contain functions referring to things defined in *//* this file must also include this file.                       *//****************************************************************/#ifndef _H_setup#define _H_setup/****************************************************************//* -------------------- COMPILER FLAGS ------------------------ *//****************************************************************//****************************************************************//* Flag denoting what kind of machine CLIPS is to run on. Only  *//* one of these flags should be turned on (set to 1) at a time. *//****************************************************************/#define GENERIC 0   /* Generic CLIPS (any machine)            */#define VAX_VMS 0   /* VAX VMS                                */#define UNIX_V  0   /* UNIX System V or 4.2bsd or HP Unix     */#define UNIX_7  0   /* UNIX System III Version 7 or Sun Unix  */#define MAC_SC6 0   /* Macintosh, with Symantec C 6.0         */#define MAC_SC7 0   /* Macintosh, with Symantec C 7.0         */#define MAC_SC8 0   /* Macintosh, with Symantec C 8.0         */#define MAC_MPW 0   /* Macintosh, with MPW 3.2 C              */#define MAC_MCW 0   /* Macintosh, with Code Warrior 2.0 IDE   */#define IBM_ZTC 0   /* IBM PC, with Zortech C++ 3.1           */#define IBM_MSC 0   /* IBM PC, with Microsoft C 6.0           */#define IBM_TBC 1   /* IBM PC, with Borland C++ 5.0           */#define IBM_ICB 0   /* IBM PC, with Intel C Code Builder 1.0  */#define IBM_SC  0   /* IBM PC, with Symantec C++ 6.1          */#define IBM_GCC 0   /* IBM PC, with DJGPP 2.01                */#if IBM_ZTC || IBM_MSC || IBM_TBC || IBM_ICB || IBM_SC#define IBM 1#else#define IBM 0#endif#if MAC_SC6 || MAC_SC7 || MAC_SC8#define MAC_SC 1#else#define MAC_SC 0#endif#if MAC_SC || MAC_MPW || MAC_MCW#define MAC 1#else#define MAC 0#endif/***************************************************************//* WIN_32: Set this flag to 1 if creating a Win32 application. *//***************************************************************/#define WIN_32 1#if ! IBM#undef WIN_32#define WIN_32 0#endif/************************************************************//* ANSI_COMPILER: Set this flag to 1 if the compiler being  *//*   used follows the draft proposed ANSI C standards       *//*   (including the ANSI C libraries). Set this flag to 0,  *//*   if the compiler being used follows the K & R standard. *//************************************************************/#define ANSI_COMPILER 1#if ANSI_COMPILER#define VOID     void#define VOID_ARG void#define CLIPS_STD_SIZE size_t#else#define VOID     char#define VOID_ARG#define CLIPS_STD_SIZE int#endif#define BOOLEAN int#define globle/*********************************************//* HUGE POINTER KEY WORDS FOR PC COMPATIBLES *//*********************************************/#if (IBM_MSC || IBM_TBC || IBM_SC) && (! WIN_32)#if IBM_SC#ifdef __SMALL__          /* For flat 32 bit memory model, */#define HUGE_ADDR         /* huge pointers not needed.     */#else#define HUGE_ADDR __huge  /* Huge pointer key word for */#endif                    /* Symantec C.               */#else#define HUGE_ADDR huge    /* Huge pointer key word for */#endif                    /* Microsoft and Turbo C.    */#else#define HUGE_ADDR         /* Huge pointers only needed for PCs. */#endif#if IBM_ICB#define far#define near#endif/****************************************************//* RUN_TIME:  Produces a run-time module for CLIPS. *//****************************************************/#ifndef RUN_TIME#define RUN_TIME 0#endif/**************************************************//* DEFRULE_CONSTRUCT:  Determines whether defrule *//*   construct is included.                       *//**************************************************/#define DEFRULE_CONSTRUCT 1#define CONFLICT_RESOLUTION_STRATEGIES 1#define DYNAMIC_SALIENCE 1#define INCREMENTAL_RESET 1#define LOGICAL_DEPENDENCIES  1#if ! DEFRULE_CONSTRUCT#undef CONFLICT_RESOLUTION_STRATEGIES#undef DYNAMIC_SALIENCE#undef INCREMENTAL_RESET#undef LOGICAL_DEPENDENCIES#define CONFLICT_RESOLUTION_STRATEGIES  0#define DYNAMIC_SALIENCE                0#define INCREMENTAL_RESET               0#define LOGICAL_DEPENDENCIES            0#endif/************************************************//* DEFMODULE_CONSTRUCT:  Determines whether the *//*   defmodule construct is included.           *//************************************************/#define DEFMODULE_CONSTRUCT 1 /****************************************************//* DEFTEMPLATE_CONSTRUCT:  Determines whether facts *//*   and the deftemplate construct are included.    *//****************************************************/#define DEFTEMPLATE_CONSTRUCT 1#if ! DEFRULE_CONSTRUCT#undef DEFTEMPLATE_CONSTRUCT#define DEFTEMPLATE_CONSTRUCT 0#endif/****************************************************//* DEFFACTS_CONSTRUCT:  Determines whether deffacts *//*   construct is included.                         *//****************************************************/#define DEFFACTS_CONSTRUCT 1#if ! DEFTEMPLATE_CONSTRUCT#undef DEFFACTS_CONSTRUCT#define DEFFACTS_CONSTRUCT 0#endif/************************************************//* DEFGLOBAL_CONSTRUCT:  Determines whether the *//*   defglobal construct is included.           *//************************************************/#define DEFGLOBAL_CONSTRUCT 1/**********************************************//* DEFFUNCTION_CONSTRUCT:  Determines whether *//*   deffunction construct is included.       *//**********************************************/#define DEFFUNCTION_CONSTRUCT 1/*********************************************//* DEFGENERIC_CONSTRUCT:  Determines whether *//*   generic functions  are included.        *//*********************************************/#define DEFGENERIC_CONSTRUCT 1/******************************************************************//* IMPERATIVE_METHODS: Determines if call-next-method and         *//*   override-next-method can be used to execute shadowed methods *//******************************************************************/#define IMPERATIVE_METHODS 1#if ! DEFGENERIC_CONSTRUCT#undef IMPERATIVE_METHODS#define IMPERATIVE_METHODS 0#endif/*****************************************************************//* OBJECT_SYSTEM:  Determines whether object system is included. *//*   The MULTIFIELD_FUNCTIONS flag should also be on if you want *//*   to be able to manipulate multi-field slots.                 *//*****************************************************************/#define OBJECT_SYSTEM 1/*****************************************************************//* DEFINSTANCES_CONSTRUCT: Determines whether the definstances   *//*   construct is enabled.                                       *//*****************************************************************/#define DEFINSTANCES_CONSTRUCT      1                   /* sed */#if ! OBJECT_SYSTEM#undef DEFINSTANCES_CONSTRUCT#define DEFINSTANCES_CONSTRUCT      0#endif/******************************************************************//* IMPERATIVE_MESSAGE_HANDLERS: Determines if "around" message-   *//*   handlers are allowed. Also determines if call-next-handler   *//*   and override-next-handler can be used to execute shadowed    *//*   handlers                                                     */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -