00001 /*******************************************************/ 00002 /* "C" Language Integrated Production System */ 00003 /* */ 00004 /* CLIPS Version 6.20 01/31/02 */ 00005 /* */ 00006 /* DEFGLOBAL BINARY HEADER FILE */ 00007 /*******************************************************/ 00008 00009 /*************************************************************/ 00010 /* Purpose: */ 00011 /* */ 00012 /* Principal Programmer(s): */ 00013 /* Gary D. Riley */ 00014 /* */ 00015 /* Contributing Programmer(s): */ 00016 /* Brian L. Dantes */ 00017 /* */ 00018 /* Revision History: */ 00019 /* */ 00020 /*************************************************************/ 00021 00022 #ifndef _H_globlbin 00023 00024 #define _H_globlbin 00025 00026 #include "modulbin.h" 00027 #include "cstrcbin.h" 00028 #include "globldef.h" 00029 00030 struct bsaveDefglobal 00031 { 00032 struct bsaveConstructHeader header; 00033 long initial; 00034 }; 00035 00036 struct bsaveDefglobalModule 00037 { 00038 struct bsaveDefmoduleItemHeader header; 00039 }; 00040 00041 #define GLOBLBIN_DATA 60 00042 00043 struct defglobalBinaryData 00044 { 00045 struct defglobal *DefglobalArray; 00046 long NumberOfDefglobals; 00047 struct defglobalModule *ModuleArray; 00048 long NumberOfDefglobalModules; 00049 }; 00050 00051 #define DefglobalBinaryData(theEnv) ((struct defglobalBinaryData *) GetEnvironmentData(theEnv,GLOBLBIN_DATA)) 00052 00053 #define DefglobalPointer(i) ((struct defglobal *) (&DefglobalBinaryData(theEnv)->DefglobalArray[i])) 00054 00055 #ifdef LOCALE 00056 #undef LOCALE 00057 #endif 00058 00059 #ifdef _GLOBLBIN_SOURCE_ 00060 #define LOCALE 00061 #else 00062 #define LOCALE extern 00063 #endif 00064 00065 LOCALE void DefglobalBinarySetup(void *); 00066 LOCALE void *BloadDefglobalModuleReference(void *,int); 00067 00068 #ifndef _GLOBLBIN_SOURCE_ 00069 extern struct defglobal *DefglobalArray; 00070 #endif 00071 #endif 00072 00073 00074
1.5.6