]> de.git.xonotic.org Git - xonotic/netradiant.git/blob - include/ipatch.h
compiles on OSX (10.4.10 Intel)
[xonotic/netradiant.git] / include / ipatch.h
1 /*\r
2 Copyright (C) 1999-2007 id Software, Inc. and contributors.\r
3 For a list of contributors, see the accompanying CONTRIBUTORS file.\r
4 \r
5 This file is part of GtkRadiant.\r
6 \r
7 GtkRadiant is free software; you can redistribute it and/or modify\r
8 it under the terms of the GNU General Public License as published by\r
9 the Free Software Foundation; either version 2 of the License, or\r
10 (at your option) any later version.\r
11 \r
12 GtkRadiant is distributed in the hope that it will be useful,\r
13 but WITHOUT ANY WARRANTY; without even the implied warranty of\r
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
15 GNU General Public License for more details.\r
16 \r
17 You should have received a copy of the GNU General Public License\r
18 along with GtkRadiant; if not, write to the Free Software\r
19 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA\r
20 */\r
21 \r
22 #ifndef _IPATCH_H_\r
23 #define _IPATCH_H_\r
24 \r
25 //\r
26 // API for patch stuff\r
27 //\r
28 \r
29 #define PATCH_MAJOR "patch"\r
30 // {4715565b-ab3a-49fa-841f-ee965b6d88a5}\r
31 static const GUID QERPatchTable_GUID = \r
32 { 0x4715565b, 0xab3a, 0x49fa, { 0x84, 0x1f, 0xee, 0x96, 0x5b, 0x6d, 0x88, 0xa5 } };\r
33 \r
34 typedef patchMesh_t* (* PFN_PATCHALLOC)   ();\r
35 typedef patchMesh_t* (* PFN_MAKENEWPATCH) ();\r
36 typedef brush_t* (* PFN_ADDBRUSHFORPATCH) (patchMesh_t *pm, bool bLinkToWorld );\r
37 \r
38 struct _QERPatchTable\r
39 {\r
40   int m_nSize;\r
41   PFN_PATCHALLOC m_pfnPatch_Alloc;\r
42   PFN_MAKENEWPATCH m_pfnMakeNewPatch;\r
43   PFN_ADDBRUSHFORPATCH m_pfnAddBrushForPatch;\r
44 };\r
45 \r
46 #ifdef USE_PATCHTABLE_DEFINE\r
47 #define __PATCHTABLENAME g_PatchTable\r
48 #define Patch_Alloc __PATCHTABLENAME.m_pfnPatch_Alloc\r
49 #define MakeNewPatch __PATCHTABLENAME.m_pfnMakeNewPatch\r
50 #define AddBrushForPatch __PATCHTABLENAME.m_pfnAddBrushForPatch\r
51 #endif\r
52 \r
53 #endif\r