Bdb packages | Design docs | Source docs | Guidelines | Recent releases

Search | Site Map .

Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

/BaBar/BaBarODMGTypes.h

Go to the documentation of this file.
00001 /*
00002 //--------------------------------------------------------------------------
00003 // BaBarODMGTypes.h
00004 //
00005 // File and Version Information:
00006 //      $Id: BaBarODMGTypes.h,v 1.3 1998/03/13 03:19:29 quarrie Exp $
00007 //
00008 // Description:
00009 //      Typedefs of ODMG d_* platform-invariant types for use in code
00010 //      compiled without Objectivity.  (Objectivity will otherwise define
00011 //      these types itself.)
00012 //
00013 // Environment:
00014 //      Software developed for the BaBar Detector at the SLAC B-Factory.
00015 //
00016 // Author List:
00017 //      Dirk Duellman, RD45     Originator
00018 //      David Quarrie           Brought into BaBar, bug fixes
00019 //      Gregory Dubois-Felsmann Moved to BaBar/BaBarODMGTypes.h
00020 //
00021 // Copyright Information:
00022 //      Copyright (C) 1997      California Institute of Technology et al.
00023 //
00024 //--------------------------------------------------------------------------
00025 */
00026 
00027 #ifndef BABARODMGTYPES_H
00028 #define BABARODMGTYPES_H
00029 
00030 /*
00031 // Original RD45 header:
00032 //                         -*- Mode: C++ -*- 
00033 //  ODMGTypes.h -- define ODMG types based on C++ types
00034 //  created on Thu Apr  4 13:17:51 1996
00035 //  by         Dirk Duellmann 
00036 //
00037 // Brought into HepODBMS/odbms/HepODMGTypes.h by David Quarrie
00038 // (Id: HepODMGTypes.h,v 1.5 1997/12/22 15:56:57 quarrie Exp )
00039 //
00040 // Copied from HEAD of HepODBMS (V00-00-07 plus RCSv1.5 of this file)
00041 // by Gregory Dubois-Felsmann to package BaBar, to implement common
00042 // platform-invariant-size types for DataFlow.
00043 //
00044 // Comments changed to C style as a step toward making it useful in that
00045 // language, too, but *this has not been otherwise tested*.
00046 //
00047 // d_Char and d_Octet changed from "signed char" to "char" to conform
00048 // more precisely with Objectivity definitions.  This does mean that
00049 // their signedness can vary from platform to platform, but this is 
00050 // better than having the type of d_Char depend on whether Objectivity
00051 // is included in a build or not.
00052 */
00053 
00054 /* It is only legitimate to define these types if Objectivity has */
00055 /* not itself been set up by including "oo.h".  oo.h defines all  */
00056 /* the types below as macros (not typedefs).  The use of typedefs */
00057 /* here comes from RD45.                                          */
00058 
00059 #ifndef OO_H
00060 
00061 /* Switch over architectures */
00062 
00063 #if defined(__DECCXX) || defined(__alpha__)     
00064 
00065 /* DEC Unix (C++ or g++) */
00066 
00067 typedef signed short int      d_Short;
00068 typedef signed int            d_Long;
00069 typedef unsigned short int    d_UShort;
00070 typedef unsigned int          d_ULong;
00071 typedef float                 d_Float;
00072 typedef double                d_Double;
00073 typedef char                  d_Char; 
00074 typedef char                  d_Octet;
00075 typedef unsigned char         d_Boolean;
00076 typedef unsigned char         uint8;
00077 
00078 #else
00079 
00080 /* All other architectures */
00081 
00082 /* This is no longer needed with the aCC compiler on HPs. */
00083 /*   No other BaBar platforms had this property.          */
00084 /* #ifdef Hep_NO_SIGNED_KEYWORD */
00085 /*   / * hp compiler does not know about the signed keyword * / */
00086 /*   #define signed */
00087 /* #endif */
00088 
00089 
00090 typedef signed short          d_Short;
00091 typedef signed int            d_Long;
00092 typedef unsigned short        d_UShort;
00093 typedef unsigned int          d_ULong;
00094 typedef float                 d_Float;
00095 typedef double                d_Double;
00096 typedef char                  d_Char; 
00097 typedef char                  d_Octet;
00098 typedef unsigned char         d_Boolean;
00099 typedef unsigned char         uint8; 
00100 
00101 
00102 /* #ifdef Hep_NO_SIGNED_KEYWORD */
00103 /*   / * hp compiler does not know about the signed keyword * / */
00104 /*   #undef signed */
00105 /* #endif */
00106 
00107 
00108 /* End of architecture selection */
00109 #endif
00110 
00111 /* End of check on OO_H */
00112 #endif
00113 
00114 /* End of BABARODMGTYPES_H */
00115 #endif 

 


BaBar Public Site | SLAC | News | Links | Who's Who | Contact Us

Page Owner: Jacek Becla
Last Update: October 04, 2002