stop appending repeat keys to the input buffer
[retroray] / libs / glide / glideutl.h
1 /*
2 ** Copyright (c) 1995, 3Dfx Interactive, Inc.
3 ** All Rights Reserved.
4 **
5 ** This is UNPUBLISHED PROPRIETARY SOURCE CODE of 3Dfx Interactive, Inc.;
6 ** the contents of this file may not be disclosed to third parties, copied or
7 ** duplicated in any form, in whole or in part, without the prior written
8 ** permission of 3Dfx Interactive, Inc.
9 **
10 ** RESTRICTED RIGHTS LEGEND:
11 ** Use, duplication or disclosure by the Government is subject to restrictions
12 ** as set forth in subdivision (c)(1)(ii) of the Rights in Technical Data
13 ** and Computer Software clause at DFARS 252.227-7013, and/or in similar or
14 ** successor clauses in the FAR, DOD or NASA FAR Supplement. Unpublished -
15 ** rights reserved under the Copyright Laws of the United States.
16 **
17 ** $Header: /devel/sst1/glide/src/glideutl.h 6     8/14/97 5:32p Pgj $
18 ** $Log: /devel/sst1/glide/src/glideutl.h $
19  * 
20  * 6     8/14/97 5:32p Pgj
21  * remove dead code per GMT
22  * 
23  * 5     6/12/97 5:19p Pgj
24  * Fix bug 578
25  * 
26  * 4     3/05/97 9:36p Jdt
27  * Removed guFbWriteRegion added guEncodeRLE16
28  * 
29  * 3     1/16/97 3:45p Dow
30  * Embedded fn protos in ifndef FX_GLIDE_NO_FUNC_PROTO 
31 */
32
33 /* Glide Utility routines */
34
35 #ifndef __GLIDEUTL_H__
36 #define __GLIDEUTL_H__
37
38 #ifdef __cplusplus
39 extern "C" {
40 #endif
41
42 #ifndef FX_GLIDE_NO_FUNC_PROTO
43 /*
44 ** rendering functions
45 */
46 FX_ENTRY void FX_CALL
47 guAADrawTriangleWithClip( const GrVertex *a, const GrVertex
48                          *b, const GrVertex *c);
49
50 FX_ENTRY void FX_CALL
51 guDrawTriangleWithClip(
52                        const GrVertex *a,
53                        const GrVertex *b,
54                        const GrVertex *c
55                        );
56
57 FX_ENTRY void FX_CALL
58 guDrawPolygonVertexListWithClip( int nverts, const GrVertex vlist[] );
59
60 /*
61 ** hi-level rendering utility functions
62 */
63 FX_ENTRY void FX_CALL
64 guAlphaSource( GrAlphaSource_t mode );
65
66 FX_ENTRY void FX_CALL
67 guColorCombineFunction( GrColorCombineFnc_t fnc );
68
69 FX_ENTRY int FX_CALL
70 guEncodeRLE16( void *dst, 
71                void *src, 
72                FxU32 width, 
73                FxU32 height );
74
75 FX_ENTRY FxU16 * FX_CALL
76 guTexCreateColorMipMap( void );
77
78 /*
79 ** fog stuff
80 */
81 FX_ENTRY float FX_CALL
82 guFogTableIndexToW( int i );
83
84 FX_ENTRY void FX_CALL
85 guFogGenerateExp( GrFog_t fogtable[GR_FOG_TABLE_SIZE], float density );
86
87 FX_ENTRY void FX_CALL
88 guFogGenerateExp2( GrFog_t fogtable[GR_FOG_TABLE_SIZE], float density );
89
90 FX_ENTRY void FX_CALL
91 guFogGenerateLinear(
92                     GrFog_t fogtable[GR_FOG_TABLE_SIZE],
93                     float nearZ, float farZ );
94
95 /*
96 ** endian stuff
97 */
98 FX_ENTRY FxU32 FX_CALL
99 guEndianSwapWords( FxU32 value );
100
101 FX_ENTRY FxU16 FX_CALL
102 guEndianSwapBytes( FxU16 value );
103
104 /*
105 ** hi-level texture manipulation tools.
106 */
107 FX_ENTRY FxBool FX_CALL
108 gu3dfGetInfo( const char *filename, Gu3dfInfo *info );
109
110 FX_ENTRY FxBool FX_CALL
111 gu3dfLoad( const char *filename, Gu3dfInfo *data );
112
113 #endif /* FX_GLIDE_NO_FUNC_PROTO */
114
115 #ifdef __cplusplus
116 }
117 #endif
118
119 #endif /* __GLIDEUTL_H__ */