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

📄 ruledef.h

📁 NASA 开发使用的一个专家系统
💻 H
字号:
   /*******************************************************/   /*      "C" Language Integrated Production System      */   /*                                                     */   /*             CLIPS Version 6.05  04/09/97            */   /*                                                     */   /*                 DEFRULE HEADER FILE                 */   /*******************************************************//*************************************************************//* Purpose: Defines basic defrule primitive functions such   *//*   as allocating and deallocating, traversing, and finding *//*   defrule data structures.                                *//*                                                           *//* Principal Programmer(s):                                  *//*      Gary D. Riley                                        *//*                                                           *//* Contributing Programmer(s):                               *//*      Brian L. Donnell                                     *//*                                                           *//* Revision History:                                         *//*                                                           *//*************************************************************/#ifndef _H_ruledef#define _H_ruledef#define GetDisjunctIndex(r) ((struct constructHeader *) r)->bsaveIDstruct defrule;struct defruleModule;#ifndef _H_symbol#include "symbol.h"#endif#ifndef _H_expressn#include "expressn.h"#endif#ifndef _H_evaluatn#include "evaluatn.h"#endif#ifndef _H_constrct#include "constrct.h"#endif#ifndef _H_moduldef#include "moduldef.h"#endif#ifndef _H_constrnt#include "constrnt.h"#endif#ifndef _H_cstrccom#include "cstrccom.h"#endif#ifndef _H_agenda#include "agenda.h"#endif#ifndef _H_network#include "network.h"#endif    struct defrule  {   struct constructHeader header;   int salience;   int localVarCnt;   unsigned int complexity      : 11;   unsigned int afterBreakpoint :  1;   unsigned int watchActivation :  1;   unsigned int watchFiring     :  1;   unsigned int autoFocus       :  1;   unsigned int executing       :  1;#if DYNAMIC_SALIENCE   struct expr *dynamicSalience;#endif   struct expr *actions;#if LOGICAL_DEPENDENCIES   struct joinNode *logicalJoin;#endif   struct joinNode *lastJoin;   struct defrule *disjunct;  };  struct defruleModule  {   struct defmoduleItemHeader header;   struct activation *agenda;  };#define GetDefruleName(x) GetConstructNameString(x)#define GetDefrulePPForm(x) GetConstructPPForm(x)#define DefruleModule(x) GetConstructModuleName((struct constructHeader *) x)#define GetPreviousJoin(theJoin) \   (((theJoin)->joinFromTheRight) ? \    ((struct joinNode *) (theJoin)->rightSideEntryStructure) : \    ((theJoin)->lastLevel))#define GetPatternForJoin(theJoin) \   (((theJoin)->joinFromTheRight) ? \    NULL : \    ((theJoin)->rightSideEntryStructure))#ifdef LOCALE#undef LOCALE#endif#ifdef _RULEDEF_SOURCE_#define LOCALE#else#define LOCALE extern#endif#if ANSI_COMPILER   LOCALE VOID                           InitializeDefrules(void);   LOCALE VOID                          *FindDefrule(char *);   LOCALE VOID                          *GetNextDefrule(VOID *);   LOCALE struct defruleModule          *GetDefruleModuleItem(struct defmodule *);   LOCALE BOOLEAN                        IsDefruleDeletable(VOID *);#else   LOCALE VOID                           InitializeDefrules();   LOCALE VOID                          *FindDefrule();   LOCALE VOID                          *GetNextDefrule();   LOCALE struct defruleModule          *GetDefruleModuleItem();   LOCALE BOOLEAN                        IsDefruleDeletable();#endif#ifndef _RULEDEF_SOURCE_   extern struct construct              *DefruleConstruct;   extern int                            DefruleModuleIndex;   extern long                           CurrentEntityTimeTag;#endif#endif

⌨️ 快捷键说明

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