Main Page   Class Hierarchy   Alphabetical List   Data Structures   File List   Data Fields   Globals   Related Pages  

internal.h

Go to the documentation of this file.
00001 // OMICRON ENGINE HEADER FILE
00002 //
00003 // --------------------------------------------------------------------------
00004 // Copyright (C) 2001-2002 by Bjoern Paetzel <kolrabi@gmx.de>
00005 //
00006 // This file is part of the Omicron Engine.
00007 //
00008 // The Omicron Engine is free software; you can redistribute it and/or modify
00009 // it under the terms of the  GNU General Public License  as published by the
00010 // Free Software Foundation;  either version  2  of the License,  or (at your
00011 // option) any later version.
00012 //
00013 // The Omicron Engine  is distributed in the hope that it will be useful, but
00014 // WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
00015 // or  FITNESS FOR A PARTICULAR PURPOSE.  See the  GNU General Public License
00016 // for more details.
00017 //
00018 // You should have  received a copy of the  GNU General Public License  along
00019 // with The Omicron Engine;  if not,  write to the  Free Software Foundation,
00020 // Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA 
00021 //
00022 // --------------------------------------------------------------------------
00023 // Last modified:       $Date: 2002/12/07 19:02:17 $
00024 // By           :       $Author: kolrabi $
00025 // $Id: internal.h,v 1.1.1.1 2002/12/07 19:02:17 kolrabi Exp $ 
00026 
00027 /*
00028 
00029   $Log: internal.h,v $
00030   Revision 1.1.1.1  2002/12/07 19:02:17  kolrabi
00031   initial release
00032 
00033 
00034 */
00035 
00040 // Internally included
00041 #define             OMICRON_INTERNAL 
00042 /*
00043 // If in debug mode, activate profiler, memory management
00044 #if defined(_DEBUG) || defined (DEBUG)
00045 // #define             USE_PROFILER
00046 
00047 // FIXME: MEMORY MANAGEMENT IS BUGGY!!!!
00048 //#define             USE_MEMMANAGER
00049 #endif
00050  
00051 #define NOSOUND
00052 */
00053 // include default engines
00054 #include            "omicron.h"
00055 
00056 /****************************************************************************
00057  ****************************************************************************
00058  * DEFINES ******************************************************************
00059  ****************************************************************************
00060  ****************************************************************************/
00061 
00062 // #define             MAX_PROFILES        1024 
00063 #define             KMF_VERSION         0x00000002
00064 
00065 /* HELPER MACROS ************************************************************/ 
00066 
00067 // b, g, r, a bytes to long : 0xaabbccdd
00068 #define _BYTES2LONG(r,g,b,a) \
00069     ((ulong)((((a)&0xff)<<24)|(((b)&0xff)<<16)|(((g)&0xff)<<8)|((r)&0xff))) 
00070  
00071 // r, g, b, a bytes to color
00072 #define _COLOR2LONG(r,g,b,a) \
00073     _BYTES2LONG((long)((r)*255.f), (long)((g)*255.f), (long)((b)*255.f), \
00074     (ulong)((a)*255.f)) 
00075  
00076  /*
00077 #if defined(USE_PROFILER)
00078 #   define          STARTPROFILE(a)         _profile_start(a);
00079 #   define          ENDPROFILE(a)           _profile_end(a);
00080 #else
00081 #   define          STARTPROFILE(a)
00082 #   define          ENDPROFILE(a)
00083 #endif
00084 */
00085 
00086 /**************************************************************************** 
00087  **************************************************************************** 
00088  * TYPES ******************************************************************** 
00089  **************************************************************************** 
00090  ****************************************************************************/ 
00091 
00092 #if !defined(INTERNAL_TYPES_DEFINED)
00093 #define INTERNAL_TYPES_DEFINED 
00094 /*
00095 typedef struct _profile_s 
00097 { 
00098     char        *name; 
00099     long        calls; 
00100     long        totaltime; 
00101     long        mintime; 
00102     long        maxtime; 
00103     long        starttime; 
00104     long        maxrecursion;
00105     long        currentrecursion;
00106 } _profile_t; 
00107  */
00108 #endif 
00109 
00110 #if defined(WIN32) && !defined(PFD_GENERIC_ACCELERATED)
00111 // some compilers dont know this
00112 #define PFD_GENERIC_ACCELERATED     0x00001000
00113 #endif
00114  
00115 /**************************************************************************** 
00116  **************************************************************************** 
00117  * FUNCTIONS **************************************************************** 
00118  **************************************************************************** 
00119  ****************************************************************************/ 
00120  
00121 /* MISC *********************************************************************/ 
00122 
00123 ulong           _time_get(); 
00124 void            init_vars();
00125 void            _showmem(bool showleaks);
00126   
00127 /* WINDOW *******************************************************************/ 
00128  
00129 #if defined(WIN32) 
00130 HWND            _win_init
00131 ( 
00132     ulong     wWidth, 
00133     ulong     wHeight, 
00134     HINSTANCE hInstance, 
00135     bool      bFullscreen 
00136 );
00137 
00138 #else 
00139  
00140 ulong           _win_init
00141 ( 
00142     ulong   wWidth, 
00143     ulong   wHeight, 
00144     bool    bFullscreen 
00145 ); 
00146  
00147 #endif 
00148  
00149 void            _win_deinit
00150 (
00151 )
00152 ; 
00153 
00154 ulong           _win_mainloop
00155 (
00156 )
00157 ; 
00158 
00159 /* SOUND SYSTEM *************************************************************/ 
00160 /*
00161 // out of order 
00162 int             _sound_init
00163 (
00164 )
00165 ; 
00166 
00167 void            _sound_deinit
00168 (
00169 )
00170 ; 
00171 
00172 void            _sound_update 
00173 (
00174 )
00175 ; 
00176 */
00177  
00178 /* INPUT SYSTEM *************************************************************/ 
00179  
00180 ulong           _input_init
00181 (
00182 )
00183 ;
00184  
00185 void            _input_deinit
00186 (
00187 )
00188 ; 
00189 
00190 void            _input_update
00191 (
00192 )
00193 ; 
00194 
00195 ushort          _get_key_ascii
00196 (
00197     uchar     key
00198 )
00199 ; 
00200 
00201 /* GFX **********************************************************************/ 
00202  
00203 ulong           _gfx_init
00204 ( 
00205     ushort    nWidth, 
00206     ushort    nHeight, 
00207     ulong     bFullscreen
00208 )
00209 ;
00210  
00211 ulong           _gfx_deinit         
00212 (
00213 )
00214 ; 
00215 
00216 ulong           _gfx_resize
00217 (
00218     ushort    nWidth, 
00219     ushort    nHeight, 
00220     ulong     bFullscreen
00221 )
00222 ; 
00223 
00224 /* LOG **********************************************************************/ 
00225  
00226 void            _log_init           (); 
00227 void            _log_deinit         (); 
00228  
00229 /* PROFILING ****************************************************************/ 
00230  /*
00231 void            _profile_start(char*); 
00232 void            _profile_end(char*); 
00233 void            _profile_init(); 
00234 void            _profile_show();
00235 */
00236 #if defined(WIN32) 
00237 // extern PFNGLACTIVETEXTUREARBPROC        glActiveTextureARB;
00238 // extern PFNGLCLIENTACTIVETEXTUREARBPROC  glClientActiveTextureARB;
00239 #endif

Generated on Wed Dec 18 15:48:46 2002 for omicron engine by doxygen1.2.18