include/crum.h

Go to the documentation of this file.
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__*/

Generated on Sun Aug 21 04:18:13 2005 for Udanax-Green by doxygen1.3.4