00001 /*******************************************************/ 00002 /* "C" Language Integrated Production System */ 00003 /* */ 00004 /* CLIPS Version 6.20 01/31/02 */ 00005 /* */ 00006 /* */ 00007 /*******************************************************/ 00008 00009 /*************************************************************/ 00010 /* Purpose: */ 00011 /* */ 00012 /* Principal Programmer(s): */ 00013 /* Brian L. Dantes */ 00014 /* */ 00015 /* Contributing Programmer(s): */ 00016 /* */ 00017 /* Revision History: */ 00018 /* */ 00019 /*************************************************************/ 00020 00021 #ifndef _H_objbin 00022 #define _H_objbin 00023 00024 #ifndef _H_object 00025 #include "object.h" 00026 #endif 00027 00028 #define OBJECTBIN_DATA 33 00029 00030 struct objectBinaryData 00031 { 00032 DEFCLASS *DefclassArray; 00033 long ModuleCount; 00034 long ClassCount; 00035 long LinkCount; 00036 long SlotCount; 00037 long SlotNameCount; 00038 long TemplateSlotCount; 00039 long SlotNameMapCount; 00040 long HandlerCount; 00041 DEFCLASS_MODULE *ModuleArray; 00042 DEFCLASS **LinkArray; 00043 SLOT_DESC *SlotArray; 00044 SLOT_DESC **TmpslotArray; 00045 SLOT_NAME *SlotNameArray; 00046 unsigned *MapslotArray; 00047 HANDLER *HandlerArray; 00048 unsigned *MaphandlerArray; 00049 }; 00050 00051 #define ObjectBinaryData(theEnv) ((struct objectBinaryData *) GetEnvironmentData(theEnv,OBJECTBIN_DATA)) 00052 00053 #define DefclassPointer(i) (((i) == -1L) ? NULL : (DEFCLASS *) &ObjectBinaryData(theEnv)->DefclassArray[i]) 00054 #define DefclassIndex(cls) (((cls) == NULL) ? -1 : ((struct constructHeader *) cls)->bsaveID) 00055 00056 00057 #ifdef LOCALE 00058 #undef LOCALE 00059 #endif 00060 00061 #ifdef _OBJBIN_SOURCE_ 00062 #define LOCALE 00063 #else 00064 #define LOCALE extern 00065 #endif 00066 00067 LOCALE void SetupObjectsBload(void *); 00068 LOCALE void *BloadDefclassModuleReference(void *,int); 00069 00070 #endif 00071 00072 00073
1.5.6