1 /* 2 * Copyright (C) 1997-2005, R3vis Corporation. 3 * 4 * This library is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Library General Public 6 * License as published by the Free Software Foundation; either 7 * version 2 of the License, or (at your option) any later version. 8 * 9 * This library is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * Library General Public License for more details. 13 * 14 * You should have received a copy of the GNU Library General Public 15 * License along with this library; if not, write to the Free Software 16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 17 * USA, or visit http://www.gnu.org/copyleft/lgpl.html. 18 * 19 * Original Contributor: 20 * Wes Bethel, R3vis Corporation, Marin County, California 21 * Additional Contributor(s): 22 * 23 * The OpenRM project is located at http://openrm.sourceforge.net/. 24 */ 25 /* 26 * $Id: rmw.h,v 1.8 2005/02/19 16:47:24 wes Exp $ 27 * Version: $Name: OpenRM-1-6-0-2-RC2 $ 28 * $Revision: 1.8 $ 29 * $Log: rmw.h,v $ 30 * Revision 1.8 2005/02/19 16:47:24 wes 31 * Distro sync and consolidation. 32 * 33 * Revision 1.7 2005/01/23 17:17:02 wes 34 * Copyright update to 2005. 35 * 36 * Revision 1.6 2004/01/17 04:06:42 wes 37 * Updated Copyright line for 2004. 38 * 39 * Revision 1.5 2003/10/03 19:16:17 wes 40 * Unified naming changes - use rmPipeSet/GetContext rather than use 41 * a platform-specific name. 42 * 43 * Revision 1.4 2003/03/16 21:56:24 wes 44 * Documentation updates. 45 * 46 * Revision 1.3 2003/02/02 02:07:14 wes 47 * Updated copyright to 2003. 48 * 49 * Revision 1.2 2003/02/01 17:56:13 wes 50 * Win32 code work to reflect new RMpipe initialization sequence. 51 * 52 * Revision 1.1.1.1 2003/01/28 02:15:23 wes 53 * Manual rebuild of rm150 repository. 54 * 55 * Revision 1.9 2002/12/31 00:56:21 wes 56 * Cleaned up arch-specific portions of RMpipe to support Chromium. 57 * 58 * Revision 1.8 2002/04/30 19:42:33 wes 59 * Updated copyright dates. 60 * 61 * Revision 1.7 2001/10/15 00:19:01 wes 62 * Removed button definitions (moved to an rmaux include file). Added 63 * the offscreen field to the Win32 RMpipe. 64 * 65 * Revision 1.6 2001/03/31 17:13:59 wes 66 * v1.4.0-alpha-2 checkin 67 * 68 * Revision 1.5 2000/12/03 23:20:22 wes 69 * Thread-safety mods. 70 * 71 * Revision 1.4 2000/05/14 23:36:12 wes 72 * Added attrib to RMpipe to allow control over how the OpenGL 73 * matrix stack is initialized during rendering. 74 * 75 * Revision 1.3 2000/04/20 17:41:46 wes 76 * Minor CVS tag changes. 77 * 78 * Revision 1.2 2000/04/20 16:30:24 wes 79 * Added copyright info. 80 * 81 * Revision 1.1.1.1 2000/02/28 21:29:40 wes 82 * OpenRM 1.2 Checkin 83 * 84 * Revision 1.1.1.1 2000/02/28 17:18:48 wes 85 * Initial entry - pre-RM120 release, source base for OpenRM 1.2. 86 * 87 */ 88 89 #ifndef _rmw_h 90 #define _rmw_h 91 92 93 #ifdef __cplusplus 94 extern "C" { 95 #endif 96 97 98 /* rmw.c: Win32 windows, OGL, text [5] */ 99 RM_EXPORT_API RMenum rmPipeSetWindow (RMpipe *p, HWND hWnd, int width, int height); 100 RM_EXPORT_API HWND rmPipeGetWindow (RMpipe *p); 101 RM_EXPORT_API void rmwText OGLPRIMPARMLIST() ; 102 RM_EXPORT_API RMenum rmPipeSwapBuffersWin32 (const RMpipe *p); 103 RM_EXPORT_API RMenum rmwPipeCreateContext(RMpipe *p); 104 105 RM_EXPORT_API HGLRC rmPipeGetContext(const RMpipe *p); 106 RM_EXPORT_API RMenum rmPipeSetContext(RMpipe *p, HGLRC theContext); 107 108 /* can this routine be deleted? */ 109 RM_EXPORT_API HGLRC rmwSetupOpenGL (HWND hWnd); 110 #ifdef __cplusplus 111 } 112 #endif 113 114 #endif /* _rmw_h */ 115 /* EOF */ 116