00001 /********************************************************************** 00002 * Copyright 2002 Jeff Rush <jrush@taupro.com> 00003 * Original Copyright 1979-2002 Udanax.com 00004 * 00005 * This file is part of the Udanax xanalogical storage system. 00006 * 00007 * Udanax is free software; you can redistribute it and/or modify it 00008 * under the terms of the GNU General Public License as published by 00009 * the Free Software Foundation; either version 2 of the License, or 00010 * (at your option) any later version. 00011 * 00012 * Udanax is distributed in the hope that it will be useful, but 00013 * WITHOUT ANY WARRANTY; without even the implied warranty of 00014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00015 * GNU General Public License for more details. 00016 * 00017 * You should have received a copy of the GNU General Public License 00018 * along with Udanax; if not, write to the Free Software Foundation, 00019 * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00020 **********************************************************************/ 00021 00030 /* Modification History: 00031 * $Log: crum.h,v $ 00032 * Revision 1.14 2002/05/28 03:51:13 jrush 00033 * Updated sources to comply with a GPL licensing. 00034 * 00035 * Revision 1.13 2002/05/28 02:44:44 jrush 00036 * Move macro functions into more appropriate protos.h 00037 * 00038 * Revision 1.12 2002/04/13 14:08:02 jrush 00039 * Changed ref to structcuc to typecuc. 00040 * 00041 * Revision 1.11 2002/04/13 13:44:35 jrush 00042 * Convert typedefs of structs to just structs, for C++ style. 00043 * 00044 * Revision 1.10 2002/04/12 11:46:25 jrush 00045 * Major rearrangement of include contents, to reflect a hopefully more 00046 * logical layout as we refactor Udanax into classes. 00047 * 00048 * Revision 1.9 2002/02/14 05:40:42 jrush 00049 * Cleaned up source: 00050 * 00051 * 1. ran thru the indent tool to achieve a standard look, 00052 * 2. added structured comments at top for use with DOxygen reporting 00053 * as well as CVS keywords, 00054 * 3. added #ifndef/#defines to prevent duplicate inclusions, 00055 * 4. insured all struct/union defs have names, 00056 * 5. centralized prototypes in protos.h, removing incomplete ones, 00057 * 6. cleaned up use of bool/BOOLEAN type to suit C++ type, 00058 * 7. fixed initializer nesting in tumbler constants. 00059 * 00060 */ 00061 00062 #ifndef __UDANAX_CRUM_H__ 00063 #define __UDANAX_CRUM_H__ 00064 00065 #include "constants.h" 00066 #include "tumbler.h" 00067 00068 struct typecuc; // Forward Reference 00069 00070 struct typegrantext { 00071 char textstring[GRANTEXTLENGTH]; 00072 unsigned textlength; 00073 }; 00074 00075 struct typegranorgl { 00076 typecuc *orglptr; 00077 typediskloafptr diskorglptr; 00078 bool orglincore; 00079 }; 00080 00081 union typegranstuff { 00082 typegrantext textstuff; 00083 typegranorgl orglstuff; 00084 }; 00085 00086 struct typegranbottomcruminfo { 00087 typegranstuff granstuff; 00088 int infotype; 00089 }; 00090 00091 struct type2dbottomcruminfo { 00092 Tumbler homedoc; 00093 }; 00094 00095 union typebottomcruminfo { 00096 typegranbottomcruminfo granbottomcruminfo; 00097 type2dbottomcruminfo x2dbottomcruminfo; 00098 }; 00099 00100 #endif /* !__UDANAX_CRUM_H__*/
1.3.4