00001 /*******************************************************/ 00002 /* "C" Language Integrated Production System */ 00003 /* */ 00004 /* CLIPS Version 6.20 01/31/02 */ 00005 /* */ 00006 /* SYMBOL BINARY SAVE HEADER FILE */ 00007 /*******************************************************/ 00008 00009 /*************************************************************/ 00010 /* Purpose: Implements the binary save/load feature for */ 00011 /* atomic data values. */ 00012 /* */ 00013 /* Principal Programmer(s): */ 00014 /* Gary D. Riley */ 00015 /* Brian L. Dantes */ 00016 /* */ 00017 /* Contributing Programmer(s): */ 00018 /* */ 00019 /* Revision History: */ 00020 /* */ 00021 /*************************************************************/ 00022 00023 #ifndef _H_symblbin 00024 #define _H_symblbin 00025 00026 #ifndef _STDIO_INCLUDED_ 00027 #define _STDIO_INCLUDED_ 00028 #include <stdio.h> 00029 #endif 00030 00031 #ifndef _H_symbol 00032 #include "symbol.h" 00033 #endif 00034 00035 #ifdef LOCALE 00036 #undef LOCALE 00037 #endif 00038 00039 #ifdef _SYMBLBIN_SOURCE_ 00040 #define LOCALE 00041 #else 00042 #define LOCALE extern 00043 #endif 00044 00045 #define BitMapPointer(i) ((BITMAP_HN *) (SymbolData(theEnv)->BitMapArray[i])) 00046 #define SymbolPointer(i) ((SYMBOL_HN *) (SymbolData(theEnv)->SymbolArray[i])) 00047 #define FloatPointer(i) ((FLOAT_HN *) (SymbolData(theEnv)->FloatArray[i])) 00048 #define IntegerPointer(i) ((INTEGER_HN *) (SymbolData(theEnv)->IntegerArray[i])) 00049 00050 LOCALE void MarkNeededAtomicValues(void); 00051 LOCALE void WriteNeededAtomicValues(void *,FILE *); 00052 LOCALE void ReadNeededAtomicValues(void *); 00053 LOCALE void InitAtomicValueNeededFlags(void *); 00054 LOCALE void FreeAtomicValueStorage(void *); 00055 LOCALE void WriteNeededSymbols(void *,FILE *); 00056 LOCALE void WriteNeededFloats(void *,FILE *); 00057 LOCALE void WriteNeededIntegers(void *,FILE *); 00058 LOCALE void ReadNeededSymbols(void *); 00059 LOCALE void ReadNeededFloats(void *); 00060 LOCALE void ReadNeededIntegers(void *); 00061 00062 #endif 00063 00064 00065
1.5.6