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

📄 classfun.h

📁 NASA 开发使用的一个专家系统
💻 H
字号:
   /*******************************************************/   /*      "C" Language Integrated Production System      */   /*                                                     */   /*               CLIPS Version 6.05  04/09/97          */   /*                                                     */   /*                                                     */   /*******************************************************//*************************************************************//* Purpose:                                                  *//*                                                           *//* Principal Programmer(s):                                  *//*      Brian L. Donnell                                     *//*                                                           *//* Contributing Programmer(s):                               *//*                                                           *//* Revision History:                                         *//*                                                           *//*************************************************************/#ifndef _H_classfun#define _H_classfun#ifndef _H_object#include "object.h"#endif#define TestTraversalID(traversalRecord,id) TestBitMap(traversalRecord,id)#define SetTraversalID(traversalRecord,id) SetBitMap(traversalRecord,id)#define ClearTraversalID(traversalRecord,id) ClearBitMap(traversalRecord,id)#define CLASS_TABLE_HASH_SIZE     167#define SLOT_NAME_TABLE_HASH_SIZE 167#define INITIAL_OBJECT_CLASS_NAME "INITIAL-OBJECT"#define ISA_ID  0#define NAME_ID 1#ifdef LOCALE#undef LOCALE#endif#ifdef _CLASSFUN_SOURCE_#define LOCALE#else#define LOCALE extern#endif#if ANSI_COMPILERLOCALE VOID IncrementDefclassBusyCount(VOID *);LOCALE VOID DecrementDefclassBusyCount(VOID *);LOCALE BOOLEAN InstancesPurge(void);#if ! RUN_TIMELOCALE VOID InitializeClasses(void);#endifLOCALE SLOT_DESC *FindClassSlot(DEFCLASS *,SYMBOL_HN *);LOCALE VOID ClassExistError(char *,char *);LOCALE VOID DeleteClassLinks(CLASS_LINK *);LOCALE VOID PrintClassName(char *,DEFCLASS *,BOOLEAN);#if DEBUGGING_FUNCTIONS || ((! BLOAD_ONLY) && (! RUN_TIME))LOCALE VOID PrintPackedClassLinks(char *,char *,PACKED_CLASS_LINKS *);#endif#if ! RUN_TIMELOCALE VOID PutClassInTable(DEFCLASS *);LOCALE VOID RemoveClassFromTable(DEFCLASS *);LOCALE VOID AddClassLink(PACKED_CLASS_LINKS *,DEFCLASS *,int);LOCALE VOID DeleteSubclassLink(DEFCLASS *,DEFCLASS *);LOCALE DEFCLASS *NewClass(SYMBOL_HN *);LOCALE VOID DeletePackedClassLinks(PACKED_CLASS_LINKS *,int);LOCALE VOID AssignClassID(DEFCLASS *);LOCALE SLOT_NAME *AddSlotName(SYMBOL_HN *,unsigned,int);LOCALE VOID DeleteSlotName(SLOT_NAME *);LOCALE VOID RemoveDefclass(VOID *);LOCALE VOID InstallClass(DEFCLASS *,int);#endif  #if (! BLOAD_ONLY) && (! RUN_TIME)LOCALE int IsClassBeingUsed(DEFCLASS *);LOCALE int RemoveAllUserClasses(void);LOCALE int DeleteClassUAG(DEFCLASS *);LOCALE VOID MarkBitMapSubclasses(char *,DEFCLASS *,int);#endifLOCALE int FindSlotNameID(SYMBOL_HN *);LOCALE SYMBOL_HN *FindIDSlotName(unsigned);LOCALE SLOT_NAME *FindIDSlotNameHash(unsigned);LOCALE int GetTraversalID(void);LOCALE VOID ReleaseTraversalID(void);LOCALE unsigned HashClass(SYMBOL_HN *);#elseLOCALE VOID IncrementDefclassBusyCount();LOCALE VOID DecrementDefclassBusyCount();LOCALE BOOLEAN InstancesPurge();#if ! RUN_TIMELOCALE VOID InitializeClasses();#endifLOCALE SLOT_DESC *FindClassSlot();LOCALE VOID ClassExistError();LOCALE VOID DeleteClassLinks();LOCALE VOID PrintClassName();#if DEBUGGING_FUNCTIONS || ((! BLOAD_ONLY) && (! RUN_TIME))LOCALE VOID PrintPackedClassLinks();#endif#if ! RUN_TIMELOCALE VOID PutClassInTable();LOCALE VOID RemoveClassFromTable();LOCALE VOID AddClassLink();LOCALE VOID DeleteSubclassLink();LOCALE DEFCLASS *NewClass();LOCALE VOID DeletePackedClassLinks();LOCALE VOID AssignClassID();LOCALE SLOT_NAME *AddSlotName();LOCALE VOID DeleteSlotName();LOCALE VOID RemoveDefclass();LOCALE VOID InstallClass();#endif#if (! BLOAD_ONLY) && (! RUN_TIME)LOCALE int IsClassBeingUsed();LOCALE int RemoveAllUserClasses();LOCALE int DeleteClassUAG();LOCALE VOID MarkBitMapSubclasses();#endifLOCALE int FindSlotNameID();LOCALE SYMBOL_HN *FindIDSlotName();LOCALE SLOT_NAME *FindIDSlotNameHash();LOCALE int GetTraversalID();LOCALE VOID ReleaseTraversalID();LOCALE unsigned HashClass();#endif#ifndef _CLASSFUN_SOURCE_extern DEFCLASS **ClassIDMap;extern DEFCLASS **ClassTable;extern SLOT_NAME **SlotNameTable;extern DEFCLASS *PrimitiveClassMap[];extern unsigned short MaxClassID;extern SYMBOL_HN *ISA_SYMBOL,*NAME_SYMBOL;#if DEFRULE_CONSTRUCTextern SYMBOL_HN *INITIAL_OBJECT_SYMBOL;#endif#if DEBUGGING_FUNCTIONSextern int WatchInstances,WatchSlots;#endif#endif#endif

⌨️ 快捷键说明

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