]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - tools/quake2/qdata_heretic2/qdata.h
Merge remote-tracking branch 'ttimo/master'
[xonotic/netradiant.git] / tools / quake2 / qdata_heretic2 / qdata.h
index 57f6f896e8e06c3e92b318d91f24a18849c937c3..2ead9751e2c191e3ba0c87e36e3048b77a6de013 100644 (file)
-/*\r
-Copyright (C) 1999-2007 id Software, Inc. and contributors.\r
-For a list of contributors, see the accompanying CONTRIBUTORS file.\r
-\r
-This file is part of GtkRadiant.\r
-\r
-GtkRadiant is free software; you can redistribute it and/or modify\r
-it under the terms of the GNU General Public License as published by\r
-the Free Software Foundation; either version 2 of the License, or\r
-(at your option) any later version.\r
-\r
-GtkRadiant is distributed in the hope that it will be useful,\r
-but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
-GNU General Public License for more details.\r
-\r
-You should have received a copy of the GNU General Public License\r
-along with GtkRadiant; if not, write to the Free Software\r
-Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA\r
-*/\r
-\r
-// qdata.h\r
-\r
-\r
-#include <stdlib.h>\r
-#include <stdio.h>\r
-#include <math.h>\r
-#include <string.h>\r
-#include <sys/stat.h>\r
-\r
-#include "cmdlib.h"\r
-#include "inout.h"\r
-#include "scriplib.h"\r
-#include "mathlib.h"\r
-#include "trilib.h"\r
-#include "lbmlib.h"\r
-#include "her2_threads.h"\r
-#include "l3dslib.h"\r
-#include "bspfile.h"\r
-\r
-#ifndef _WIN32\r
-#define stricmp strcasecmp\r
-#define strcmpi strcasecmp\r
-#endif\r
-\r
-\r
-#define MODEL_AUTO     0\r
-#define        MODEL_MD2       1\r
-#define MODEL_FM       2\r
-\r
-// Model cover functions (to allow the forcing of a model type)\r
-void MODELCMD_Modelname (int modeltype);\r
-void MODELCMD_Cd (int modeltype);\r
-void MODELCMD_Origin (int modeltype);\r
-void MODELCMD_Jointed (int modeltype);\r
-void MODELCMD_Cluster (int modeltype);\r
-void MODELCMD_Base (int modeltype);\r
-void MODELCMD_BaseST (int modeltype);\r
-void MODELCMD_ScaleUp (int modeltype);\r
-void MODELCMD_Frame (int modeltype);\r
-void MODELCMD_Skin (int modeltype);\r
-void MODELCMD_Skinsize (int modeltype);\r
-void MODELCMD_Skeleton (int modeltype);\r
-void MODELCMD_SkeletalFrame (int modeltype);\r
-void MODELCMD_BeginGroup(int modeltype);\r
-void MODELCMD_EndGroup(int modeltype);\r
-void MODELCMD_Referenced(int modeltype);\r
-void MODELCMD_NodeOrder(int modeltype);\r
-\r
-void Cmd_Modelname (void);\r
-void Cmd_Base (void);\r
-void Cmd_Cd (void);\r
-void Cmd_Origin (void);\r
-void Cmd_ScaleUp (void);\r
-void Cmd_Frame (void);\r
-void Cmd_Skin (void);\r
-void Cmd_Skinsize (void);\r
-void FinishModel (void);\r
-void Cmd_Cluster (void);\r
-\r
-// Flexible Models\r
-//void Cmd_FMModelname (void);\r
-void Cmd_FMBase (qboolean GetST);\r
-void Cmd_FMCd (void);\r
-//void Cmd_FMOrigin (void);\r
-void Cmd_FMCluster();\r
-void Cmd_FMSkeleton();\r
-//void Cmd_FMScaleUp (void);\r
-void Cmd_FMFrame (void);\r
-void Cmd_FMSkeletalFrame();\r
-void Cmd_FMSkin (void);\r
-//void Cmd_FMSkinsize (void);\r
-void Cmd_FMBeginGroup(void);\r
-void Cmd_FMEndGroup(void);\r
-void Cmd_FMReferenced();\r
-void Cmd_FMNodeOrder(void);\r
-void FMFinishModel (void);\r
-void GenSkin(char *ModelFile, char *OutputName, int Width, int Height);\r
-void NewGen (char *ModelFile, char *OutputName, int width, int height);\r
-\r
-\r
-void Cmd_Inverse16Table( void );\r
-\r
-void Cmd_SpriteName (void);\r
-void Cmd_Load (void);\r
-void Cmd_SpriteFrame (void);\r
-void Cmd_Sprdir (void);\r
-void FinishSprite (void);\r
-\r
-void Cmd_Grab (void);\r
-void Cmd_Raw (void);\r
-void Cmd_Mip (void);\r
-void Cmd_Environment (void);\r
-void Cmd_Colormap (void);\r
-\r
-void Cmd_File (void);\r
-void Cmd_Dir (void);\r
-void Cmd_StartWad (void);\r
-void Cmd_EndWad (void);\r
-void Cmd_Mippal (void);\r
-void Cmd_Mipdir (void);\r
-void Cmd_Alphalight (void);\r
-\r
-void Cmd_Picdir (void);\r
-void Cmd_Pic (void);\r
-\r
-void Cmd_Bookdir (void);\r
-void Cmd_Book (void);\r
-\r
-void Cmd_TextureMix (void);\r
-\r
-void Cmd_Video (void);\r
-\r
-//void RemapZero (byte *pixels, byte *palette, int width, int height);\r
-\r
-void ReleaseFile (char *filename);\r
-\r
-extern byte            *byteimage, *lbmpalette;\r
-extern int                     byteimagewidth, byteimageheight;\r
-extern qboolean        TrueColorImage;\r
-extern unsigned        *longimage;\r
-extern int                     longimagewidth, longimageheight;\r
-\r
-extern qboolean        g_release;                      // don't grab, copy output data to new tree\r
-extern char            g_releasedir[1024];     // c:\quake2\baseq2, etc\r
-extern qboolean        g_archive;                      // don't grab, copy source data to new tree\r
-extern qboolean        do3ds;\r
-extern char            g_only[256];            // if set, only grab this cd\r
-extern qboolean        g_skipmodel;            // set true when a cd is not g_only\r
-extern qboolean        g_no_opimizations;\r
-extern int                     g_forcemodel;\r
-extern qboolean        g_verbose;\r
-extern qboolean        g_allow_newskin;\r
-extern qboolean        g_ignoreTriUV;  //from qdata.c\r
-extern qboolean        g_dokeypress;\r
-\r
-extern char            *trifileext;\r
-\r
-extern char            g_materialFile[256];\r
-\r
-extern unsigned        total_x;\r
-extern unsigned        total_y;\r
-extern unsigned        total_textures;\r
-\r
-miptex_t *CreateMip(byte *data, unsigned width, unsigned height, byte *palette, int *FinalSize, qboolean mip);\r
-miptex32_t *CreateMip32(unsigned *data, unsigned width, unsigned height, int *FinalSize, qboolean mip);\r
+/*
+   Copyright (C) 1999-2006 Id Software, Inc. and contributors.
+   For a list of contributors, see the accompanying CONTRIBUTORS file.
+
+   This file is part of GtkRadiant.
+
+   GtkRadiant is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+
+   GtkRadiant is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with GtkRadiant; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+ */
+
+// qdata.h
+
+
+#include <stdlib.h>
+#include <stdio.h>
+#include <math.h>
+#include <string.h>
+#include <sys/stat.h>
+
+#include "cmdlib.h"
+#include "inout.h"
+#include "scriplib.h"
+#include "mathlib.h"
+#include "trilib.h"
+#include "lbmlib.h"
+#include "her2_threads.h"
+#include "l3dslib.h"
+#include "bspfile.h"
+
+#ifndef _WIN32
+#define stricmp strcasecmp
+#define strcmpi strcasecmp
+#endif
+
+
+#define MODEL_AUTO  0
+#define MODEL_MD2   1
+#define MODEL_FM    2
+
+// Model cover functions (to allow the forcing of a model type)
+void MODELCMD_Modelname( int modeltype );
+void MODELCMD_Cd( int modeltype );
+void MODELCMD_Origin( int modeltype );
+void MODELCMD_Jointed( int modeltype );
+void MODELCMD_Cluster( int modeltype );
+void MODELCMD_Base( int modeltype );
+void MODELCMD_BaseST( int modeltype );
+void MODELCMD_ScaleUp( int modeltype );
+void MODELCMD_Frame( int modeltype );
+void MODELCMD_Skin( int modeltype );
+void MODELCMD_Skinsize( int modeltype );
+void MODELCMD_Skeleton( int modeltype );
+void MODELCMD_SkeletalFrame( int modeltype );
+void MODELCMD_BeginGroup( int modeltype );
+void MODELCMD_EndGroup( int modeltype );
+void MODELCMD_Referenced( int modeltype );
+void MODELCMD_NodeOrder( int modeltype );
+
+void Cmd_Modelname( void );
+void Cmd_Base( void );
+void Cmd_Cd( void );
+void Cmd_Origin( void );
+void Cmd_ScaleUp( void );
+void Cmd_Frame( void );
+void Cmd_Skin( void );
+void Cmd_Skinsize( void );
+void FinishModel( void );
+void Cmd_Cluster( void );
+
+// Flexible Models
+//void Cmd_FMModelname (void);
+void Cmd_FMBase( qboolean GetST );
+void Cmd_FMCd( void );
+//void Cmd_FMOrigin (void);
+void Cmd_FMCluster();
+void Cmd_FMSkeleton();
+//void Cmd_FMScaleUp (void);
+void Cmd_FMFrame( void );
+void Cmd_FMSkeletalFrame();
+void Cmd_FMSkin( void );
+//void Cmd_FMSkinsize (void);
+void Cmd_FMBeginGroup( void );
+void Cmd_FMEndGroup( void );
+void Cmd_FMReferenced();
+void Cmd_FMNodeOrder( void );
+void FMFinishModel( void );
+void GenSkin( char *ModelFile, char *OutputName, int Width, int Height );
+void NewGen( char *ModelFile, char *OutputName, int width, int height );
+
+
+void Cmd_Inverse16Table( void );
+
+void Cmd_SpriteName( void );
+void Cmd_Load( void );
+void Cmd_SpriteFrame( void );
+void Cmd_Sprdir( void );
+void FinishSprite( void );
+
+void Cmd_Grab( void );
+void Cmd_Raw( void );
+void Cmd_Mip( void );
+void Cmd_Environment( void );
+void Cmd_Colormap( void );
+
+void Cmd_File( void );
+void Cmd_Dir( void );
+void Cmd_StartWad( void );
+void Cmd_EndWad( void );
+void Cmd_Mippal( void );
+void Cmd_Mipdir( void );
+void Cmd_Alphalight( void );
+
+void Cmd_Picdir( void );
+void Cmd_Pic( void );
+
+void Cmd_Bookdir( void );
+void Cmd_Book( void );
+
+void Cmd_TextureMix( void );
+
+void Cmd_Video( void );
+
+//void RemapZero (byte *pixels, byte *palette, int width, int height);
+
+void ReleaseFile( char *filename );
+
+extern byte        *byteimage, *lbmpalette;
+extern int byteimagewidth, byteimageheight;
+extern qboolean TrueColorImage;
+extern unsigned    *longimage;
+extern int longimagewidth, longimageheight;
+
+extern qboolean g_release;              // don't grab, copy output data to new tree
+extern char g_releasedir[1024];         // c:\quake2\baseq2, etc
+extern qboolean g_archive;              // don't grab, copy source data to new tree
+extern qboolean do3ds;
+extern char g_only[256];                // if set, only grab this cd
+extern qboolean g_skipmodel;            // set true when a cd is not g_only
+extern qboolean g_no_opimizations;
+extern int g_forcemodel;
+extern qboolean g_verbose;
+extern qboolean g_allow_newskin;
+extern qboolean g_ignoreTriUV;      //from qdata.c
+extern qboolean g_dokeypress;
+
+extern char        *trifileext;
+
+extern char g_materialFile[256];
+
+extern unsigned total_x;
+extern unsigned total_y;
+extern unsigned total_textures;
+
+miptex_t *CreateMip( byte *data, unsigned width, unsigned height, byte *palette, int *FinalSize, qboolean mip );
+miptex32_t *CreateMip32( unsigned *data, unsigned width, unsigned height, int *FinalSize, qboolean mip );