Back to index

lightning-sunbird  0.9+nobinonly
GUSIInternal.h
Go to the documentation of this file.
00001 // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  
00002 // % Project  :      GUSI                        -      Grand Unified Socket Interface                    
00003 // % File            :      GUSIBasics.nw        -      Common routines for GUSI                     
00004 // % Author   :      Matthias Neeracher                                           
00005 // % Language :      C++                                                        
00006 // %                                                                       
00007 // % $Log: GUSIInternal.h,v $
00008 // % Revision 1.1  2001/03/11 22:35:21  sgehani%netscape.com
00009 // % First Checked In.
00010 // %                                               
00011 // % Revision 1.20  2001/01/17 08:32:30  neeri                             
00012 // % Atomic locks turned out not to be necessary after all                 
00013 // %                                                                       
00014 // % Revision 1.19  2001/01/17 08:31:10  neeri                             
00015 // % Added PPC error codes, tweaked nullEvent handling, added atomic locks 
00016 // %                                                                       
00017 // % Revision 1.18  2000/10/16 04:34:22  neeri                             
00018 // % Releasing 2.1.2                                                       
00019 // %                                                                       
00020 // % Revision 1.17  2000/06/12 04:20:58  neeri                             
00021 // % Introduce GUSI_*printf                                                
00022 // %                                                                       
00023 // % Revision 1.16  2000/05/23 06:51:55  neeri                             
00024 // % Reorganize errors to improve formatting                               
00025 // %                                                                       
00026 // % Revision 1.15  2000/03/15 07:22:05  neeri                             
00027 // % Enforce alignment choices                                             
00028 // %                                                                       
00029 // % Revision 1.14  1999/08/26 05:44:58  neeri                             
00030 // % Fixes for literate edition of source code                             
00031 // %                                                                       
00032 // % Revision 1.13  1999/08/02 07:02:42  neeri                             
00033 // % Support for asynchronous errors and other socket options              
00034 // %                                                                       
00035 // % Revision 1.12  1999/06/28 05:56:01  neeri                             
00036 // % Get rid of STL includes in header                                     
00037 // %                                                                       
00038 // % Revision 1.11  1999/06/08 04:31:29  neeri                             
00039 // % Getting ready for 2.0b2                                               
00040 // %                                                                       
00041 // % Revision 1.10  1999/05/30 03:09:28  neeri                             
00042 // % Added support for MPW compilers                                       
00043 // %                                                                       
00044 // % Revision 1.9  1999/04/10 04:45:05  neeri                              
00045 // % Handle MacTCP errors correctly                                        
00046 // %                                                                       
00047 // % Revision 1.8  1999/03/17 09:05:04  neeri                              
00048 // % Added GUSITimer, expanded docs                                        
00049 // %                                                                       
00050 // % Revision 1.7  1998/10/25 11:57:33  neeri                              
00051 // % Ready to release 2.0a3                                                
00052 // %                                                                       
00053 // % Revision 1.6  1998/10/11 16:45:09  neeri                              
00054 // % Ready to release 2.0a2                                                
00055 // %                                                                       
00056 // % Revision 1.5  1998/01/25 20:53:50  neeri                              
00057 // % Engine implemented, except for signals & scheduling                   
00058 // %                                                                       
00059 // % Revision 1.4  1996/12/22 19:57:54  neeri                              
00060 // % TCP streams work                                                      
00061 // %                                                                       
00062 // % Revision 1.3  1996/11/24  12:52:04  neeri                             
00063 // % Added GUSIPipeSockets                                                 
00064 // %                                                                       
00065 // % Revision 1.2  1996/11/18  00:53:46  neeri                             
00066 // % TestTimers (basic threading/timer test) works                         
00067 // %                                                                       
00068 // % Revision 1.1.1.1  1996/11/03  02:43:32  neeri                         
00069 // % Imported into CVS                                                     
00070 // %                                                                       
00071 // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  
00072 //                                                                         
00073 // \chapter{Common routines for GUSI}                                      
00074 //                                                                         
00075 // This section defines various services used by all parts of GUSI:        
00076 //                                                                         
00077 // \begin{itemize}                                                         
00078 // \item Various hooks to customize GUSI.                                  
00079 // \item The propagation of {\bf errors} to the [[errno]] and [[h_errno]]  
00080 // global variables.                                                       
00081 // \item Waiting for completion of asynchronous calls.                     
00082 // \item Event handling.                                                   
00083 // \item Compiler features.                                                
00084 // \end{itemize}                                                           
00085 //                                                                         
00086 // To protect our name space further, we maintain a strict C interface unless 
00087 // [[GUSI_SOURCE]] is defined, and may avoid defining some stuff unless    
00088 // [[GUSI_INTERNAL]] is defined. The following header is therefore included 
00089 // first by all GUSI source files.                                         
00090 //                                                                         
00091 // <GUSIInternal.h>=                                                       
00092 #ifndef _GUSIInternal_
00093 #define _GUSIInternal_
00094 
00095 #include <ConditionalMacros.h>
00096 
00097 #define GUSI_SOURCE
00098 #define GUSI_INTERNAL
00099 
00100 #if !TARGET_RT_MAC_CFM
00101 #pragma segment GUSI
00102 #endif
00103 
00104 #endif /* _GUSIInternal_ */