File: ilu_8h-source.html

package info (click to toggle)
devil 1.7.8-10
  • links: PTS
  • area: main
  • in suites: bookworm, bullseye, buster, stretch
  • size: 9,796 kB
  • sloc: ansic: 45,835; sh: 15,558; cpp: 4,009; python: 1,300; pascal: 792; makefile: 307; cs: 192; fortran: 5
file content (212 lines) | stat: -rw-r--r-- 19,514 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>DevIL: /home/dwoods/DevIL/include/IL/ilu.h Source File</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.6 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
<h1>/home/dwoods/DevIL/include/IL/ilu.h</h1><a href="ilu_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">//-----------------------------------------------------------------------------</span>
<a name="l00002"></a>00002 <span class="comment">//</span>
<a name="l00003"></a>00003 <span class="comment">// ImageLib Utility Sources</span>
<a name="l00004"></a>00004 <span class="comment">// Copyright (C) 2000-2009 by Denton Woods</span>
<a name="l00005"></a>00005 <span class="comment">// Last modified: 03/07/2009</span>
<a name="l00006"></a>00006 <span class="comment">//</span>
<a name="l00007"></a>00007 <span class="comment">// Filename: IL/ilu.h</span>
<a name="l00008"></a>00008 <span class="comment">//</span>
<a name="l00009"></a>00009 <span class="comment">// Description: The main include file for ILU</span>
<a name="l00010"></a>00010 <span class="comment">//</span>
<a name="l00011"></a>00011 <span class="comment">//-----------------------------------------------------------------------------</span>
<a name="l00012"></a>00012 
<a name="l00013"></a>00013 <span class="comment">// Doxygen comment</span>
<a name="l00018"></a>00018 <span class="comment"></span><span class="preprocessor">#ifndef __ilu_h_</span>
<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#ifndef __ILU_H__</span>
<a name="l00020"></a>00020 <span class="preprocessor"></span>
<a name="l00021"></a>00021 <span class="preprocessor">#define __ilu_h_</span>
<a name="l00022"></a>00022 <span class="preprocessor"></span><span class="preprocessor">#define __ILU_H__</span>
<a name="l00023"></a>00023 <span class="preprocessor"></span>
<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;<a class="code" href="il_8h.html">IL/il.h</a>&gt;</span>
<a name="l00025"></a>00025 
<a name="l00026"></a>00026 <span class="preprocessor">#ifdef __cplusplus</span>
<a name="l00027"></a>00027 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
<a name="l00028"></a>00028 <span class="preprocessor">#endif</span>
<a name="l00029"></a>00029 <span class="preprocessor"></span>
<a name="l00030"></a>00030 
<a name="l00031"></a>00031 <span class="preprocessor">#ifdef _WIN32</span>
<a name="l00032"></a>00032 <span class="preprocessor"></span><span class="preprocessor">        #if (defined(IL_USE_PRAGMA_LIBS)) &amp;&amp; (!defined(_IL_BUILD_LIBRARY))</span>
<a name="l00033"></a>00033 <span class="preprocessor"></span><span class="preprocessor">                #if defined(_MSC_VER) || defined(__BORLANDC__)</span>
<a name="l00034"></a>00034 <span class="preprocessor"></span><span class="preprocessor">                        #pragma comment(lib, "ILU.lib")</span>
<a name="l00035"></a>00035 <span class="preprocessor"></span><span class="preprocessor">                #endif</span>
<a name="l00036"></a>00036 <span class="preprocessor"></span><span class="preprocessor">        #endif</span>
<a name="l00037"></a>00037 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
<a name="l00038"></a>00038 <span class="preprocessor"></span>
<a name="l00039"></a>00039 
<a name="l00040"></a>00040 <span class="preprocessor">#define ILU_VERSION_1_7_8 1</span>
<a name="l00041"></a>00041 <span class="preprocessor"></span><span class="preprocessor">#define ILU_VERSION       178</span>
<a name="l00042"></a>00042 <span class="preprocessor"></span>
<a name="l00043"></a>00043 
<a name="l00044"></a>00044 <span class="preprocessor">#define ILU_FILTER         0x2600</span>
<a name="l00045"></a>00045 <span class="preprocessor"></span><span class="preprocessor">#define ILU_NEAREST        0x2601</span>
<a name="l00046"></a>00046 <span class="preprocessor"></span><span class="preprocessor">#define ILU_LINEAR         0x2602</span>
<a name="l00047"></a>00047 <span class="preprocessor"></span><span class="preprocessor">#define ILU_BILINEAR       0x2603</span>
<a name="l00048"></a>00048 <span class="preprocessor"></span><span class="preprocessor">#define ILU_SCALE_BOX      0x2604</span>
<a name="l00049"></a>00049 <span class="preprocessor"></span><span class="preprocessor">#define ILU_SCALE_TRIANGLE 0x2605</span>
<a name="l00050"></a>00050 <span class="preprocessor"></span><span class="preprocessor">#define ILU_SCALE_BELL     0x2606</span>
<a name="l00051"></a>00051 <span class="preprocessor"></span><span class="preprocessor">#define ILU_SCALE_BSPLINE  0x2607</span>
<a name="l00052"></a>00052 <span class="preprocessor"></span><span class="preprocessor">#define ILU_SCALE_LANCZOS3 0x2608</span>
<a name="l00053"></a>00053 <span class="preprocessor"></span><span class="preprocessor">#define ILU_SCALE_MITCHELL 0x2609</span>
<a name="l00054"></a>00054 <span class="preprocessor"></span>
<a name="l00055"></a>00055 
<a name="l00056"></a>00056 <span class="comment">// Error types</span>
<a name="l00057"></a>00057 <span class="preprocessor">#define ILU_INVALID_ENUM      0x0501</span>
<a name="l00058"></a>00058 <span class="preprocessor"></span><span class="preprocessor">#define ILU_OUT_OF_MEMORY     0x0502</span>
<a name="l00059"></a>00059 <span class="preprocessor"></span><span class="preprocessor">#define ILU_INTERNAL_ERROR    0x0504</span>
<a name="l00060"></a>00060 <span class="preprocessor"></span><span class="preprocessor">#define ILU_INVALID_VALUE     0x0505</span>
<a name="l00061"></a>00061 <span class="preprocessor"></span><span class="preprocessor">#define ILU_ILLEGAL_OPERATION 0x0506</span>
<a name="l00062"></a>00062 <span class="preprocessor"></span><span class="preprocessor">#define ILU_INVALID_PARAM     0x0509</span>
<a name="l00063"></a>00063 <span class="preprocessor"></span>
<a name="l00064"></a>00064 
<a name="l00065"></a>00065 <span class="comment">// Values</span>
<a name="l00066"></a>00066 <span class="preprocessor">#define ILU_PLACEMENT          0x0700</span>
<a name="l00067"></a>00067 <span class="preprocessor"></span><span class="preprocessor">#define ILU_LOWER_LEFT         0x0701</span>
<a name="l00068"></a>00068 <span class="preprocessor"></span><span class="preprocessor">#define ILU_LOWER_RIGHT        0x0702</span>
<a name="l00069"></a>00069 <span class="preprocessor"></span><span class="preprocessor">#define ILU_UPPER_LEFT         0x0703</span>
<a name="l00070"></a>00070 <span class="preprocessor"></span><span class="preprocessor">#define ILU_UPPER_RIGHT        0x0704</span>
<a name="l00071"></a>00071 <span class="preprocessor"></span><span class="preprocessor">#define ILU_CENTER             0x0705</span>
<a name="l00072"></a>00072 <span class="preprocessor"></span><span class="preprocessor">#define ILU_CONVOLUTION_MATRIX 0x0710</span>
<a name="l00073"></a>00073 <span class="preprocessor"></span>  
<a name="l00074"></a>00074 <span class="preprocessor">#define ILU_VERSION_NUM IL_VERSION_NUM</span>
<a name="l00075"></a>00075 <span class="preprocessor"></span><span class="preprocessor">#define ILU_VENDOR      IL_VENDOR</span>
<a name="l00076"></a>00076 <span class="preprocessor"></span>
<a name="l00077"></a>00077 
<a name="l00078"></a>00078 <span class="comment">// Languages</span>
<a name="l00079"></a>00079 <span class="preprocessor">#define ILU_ENGLISH            0x0800</span>
<a name="l00080"></a>00080 <span class="preprocessor"></span><span class="preprocessor">#define ILU_ARABIC             0x0801</span>
<a name="l00081"></a>00081 <span class="preprocessor"></span><span class="preprocessor">#define ILU_DUTCH              0x0802</span>
<a name="l00082"></a>00082 <span class="preprocessor"></span><span class="preprocessor">#define ILU_JAPANESE           0x0803</span>
<a name="l00083"></a>00083 <span class="preprocessor"></span><span class="preprocessor">#define ILU_SPANISH            0x0804</span>
<a name="l00084"></a>00084 <span class="preprocessor"></span><span class="preprocessor">#define ILU_GERMAN             0x0805</span>
<a name="l00085"></a>00085 <span class="preprocessor"></span><span class="preprocessor">#define ILU_FRENCH             0x0806</span>
<a name="l00086"></a>00086 <span class="preprocessor"></span>
<a name="l00087"></a>00087 
<a name="l00088"></a>00088 <span class="comment">// Filters</span>
<a name="l00089"></a>00089 <span class="comment">/*</span>
<a name="l00090"></a>00090 <span class="comment">#define ILU_FILTER_BLUR         0x0803</span>
<a name="l00091"></a>00091 <span class="comment">#define ILU_FILTER_GAUSSIAN_3x3 0x0804</span>
<a name="l00092"></a>00092 <span class="comment">#define ILU_FILTER_GAUSSIAN_5X5 0x0805</span>
<a name="l00093"></a>00093 <span class="comment">#define ILU_FILTER_EMBOSS1      0x0807</span>
<a name="l00094"></a>00094 <span class="comment">#define ILU_FILTER_EMBOSS2      0x0808</span>
<a name="l00095"></a>00095 <span class="comment">#define ILU_FILTER_LAPLACIAN1   0x080A</span>
<a name="l00096"></a>00096 <span class="comment">#define ILU_FILTER_LAPLACIAN2   0x080B</span>
<a name="l00097"></a>00097 <span class="comment">#define ILU_FILTER_LAPLACIAN3   0x080C</span>
<a name="l00098"></a>00098 <span class="comment">#define ILU_FILTER_LAPLACIAN4   0x080D</span>
<a name="l00099"></a>00099 <span class="comment">#define ILU_FILTER_SHARPEN1     0x080E</span>
<a name="l00100"></a>00100 <span class="comment">#define ILU_FILTER_SHARPEN2     0x080F</span>
<a name="l00101"></a>00101 <span class="comment">#define ILU_FILTER_SHARPEN3     0x0810</span>
<a name="l00102"></a>00102 <span class="comment">*/</span>
<a name="l00103"></a>00103 
<a name="l00104"></a>00104 
<a name="l00105"></a>00105 <span class="keyword">typedef</span> <span class="keyword">struct </span>ILinfo
<a name="l00106"></a>00106 {
<a name="l00107"></a>00107         ILuint  Id;         <span class="comment">// the image's id</span>
<a name="l00108"></a>00108         ILubyte *Data;      <span class="comment">// the image's data</span>
<a name="l00109"></a>00109         ILuint  Width;      <span class="comment">// the image's width</span>
<a name="l00110"></a>00110         ILuint  Height;     <span class="comment">// the image's height</span>
<a name="l00111"></a>00111         ILuint  Depth;      <span class="comment">// the image's depth</span>
<a name="l00112"></a>00112         ILubyte Bpp;        <span class="comment">// bytes per pixel (not bits) of the image</span>
<a name="l00113"></a>00113         ILuint  SizeOfData; <span class="comment">// the total size of the data (in bytes)</span>
<a name="l00114"></a>00114         ILenum  Format;     <span class="comment">// image format (in IL enum style)</span>
<a name="l00115"></a>00115         ILenum  Type;       <span class="comment">// image type (in IL enum style)</span>
<a name="l00116"></a>00116         ILenum  Origin;     <span class="comment">// origin of the image</span>
<a name="l00117"></a>00117         ILubyte *Palette;   <span class="comment">// the image's palette</span>
<a name="l00118"></a>00118         ILenum  PalType;    <span class="comment">// palette type</span>
<a name="l00119"></a>00119         ILuint  PalSize;    <span class="comment">// palette size</span>
<a name="l00120"></a>00120         ILenum  CubeFlags;  <span class="comment">// flags for what cube map sides are present</span>
<a name="l00121"></a>00121         ILuint  NumNext;    <span class="comment">// number of images following</span>
<a name="l00122"></a>00122         ILuint  NumMips;    <span class="comment">// number of mipmaps</span>
<a name="l00123"></a>00123         ILuint  NumLayers;  <span class="comment">// number of layers</span>
<a name="l00124"></a>00124 } ILinfo;
<a name="l00125"></a>00125 
<a name="l00126"></a>00126 
<a name="l00127"></a>00127 <span class="keyword">typedef</span> <span class="keyword">struct </span>ILpointf {
<a name="l00128"></a>00128         ILfloat x;
<a name="l00129"></a>00129         ILfloat y;
<a name="l00130"></a>00130 } ILpointf;
<a name="l00131"></a>00131 
<a name="l00132"></a>00132 <span class="keyword">typedef</span> <span class="keyword">struct </span>ILpointi {
<a name="l00133"></a>00133         ILint x;
<a name="l00134"></a>00134         ILint y;
<a name="l00135"></a>00135 } ILpointi;
<a name="l00136"></a>00136 
<a name="l00137"></a>00137 ILAPI ILboolean      ILAPIENTRY iluAlienify(<span class="keywordtype">void</span>);
<a name="l00138"></a>00138 ILAPI ILboolean      ILAPIENTRY iluBlurAvg(ILuint Iter);
<a name="l00139"></a>00139 ILAPI ILboolean      ILAPIENTRY iluBlurGaussian(ILuint Iter);
<a name="l00140"></a>00140 ILAPI ILboolean      ILAPIENTRY iluBuildMipmaps(<span class="keywordtype">void</span>);
<a name="l00141"></a>00141 ILAPI ILuint         ILAPIENTRY iluColoursUsed(<span class="keywordtype">void</span>);
<a name="l00142"></a>00142 ILAPI ILboolean      ILAPIENTRY iluCompareImage(ILuint Comp);
<a name="l00143"></a>00143 ILAPI ILboolean      ILAPIENTRY iluContrast(ILfloat Contrast);
<a name="l00144"></a>00144 ILAPI ILboolean      ILAPIENTRY iluCrop(ILuint XOff, ILuint YOff, ILuint ZOff, ILuint Width, ILuint Height, ILuint Depth);
<a name="l00145"></a>00145 ILAPI <span class="keywordtype">void</span>           ILAPIENTRY iluDeleteImage(ILuint Id); <span class="comment">// Deprecated</span>
<a name="l00146"></a>00146 ILAPI ILboolean      ILAPIENTRY iluEdgeDetectE(<span class="keywordtype">void</span>);
<a name="l00147"></a>00147 ILAPI ILboolean      ILAPIENTRY iluEdgeDetectP(<span class="keywordtype">void</span>);
<a name="l00148"></a>00148 ILAPI ILboolean      ILAPIENTRY iluEdgeDetectS(<span class="keywordtype">void</span>);
<a name="l00149"></a>00149 ILAPI ILboolean      ILAPIENTRY iluEmboss(<span class="keywordtype">void</span>);
<a name="l00150"></a>00150 ILAPI ILboolean      ILAPIENTRY iluEnlargeCanvas(ILuint Width, ILuint Height, ILuint Depth);
<a name="l00151"></a>00151 ILAPI ILboolean      ILAPIENTRY iluEnlargeImage(ILfloat XDim, ILfloat YDim, ILfloat ZDim);
<a name="l00152"></a>00152 ILAPI ILboolean      ILAPIENTRY iluEqualize(<span class="keywordtype">void</span>);
<a name="l00153"></a>00153 ILAPI ILconst_string             ILAPIENTRY iluErrorString(ILenum Error);
<a name="l00154"></a>00154 ILAPI ILboolean      ILAPIENTRY iluConvolution(ILint *matrix, ILint scale, ILint bias);
<a name="l00155"></a>00155 ILAPI ILboolean      ILAPIENTRY iluFlipImage(<span class="keywordtype">void</span>);
<a name="l00156"></a>00156 ILAPI ILboolean      ILAPIENTRY iluGammaCorrect(ILfloat Gamma);
<a name="l00157"></a>00157 ILAPI ILuint         ILAPIENTRY iluGenImage(<span class="keywordtype">void</span>); <span class="comment">// Deprecated</span>
<a name="l00158"></a>00158 ILAPI <span class="keywordtype">void</span>           ILAPIENTRY iluGetImageInfo(ILinfo *Info);
<a name="l00159"></a>00159 ILAPI ILint          ILAPIENTRY iluGetInteger(ILenum Mode);
<a name="l00160"></a>00160 ILAPI <span class="keywordtype">void</span>           ILAPIENTRY iluGetIntegerv(ILenum Mode, ILint *Param);
<a name="l00161"></a>00161 ILAPI ILstring           ILAPIENTRY iluGetString(ILenum StringName);
<a name="l00162"></a>00162 ILAPI <span class="keywordtype">void</span>           ILAPIENTRY iluImageParameter(ILenum PName, ILenum Param);
<a name="l00163"></a>00163 ILAPI <span class="keywordtype">void</span>           ILAPIENTRY iluInit(<span class="keywordtype">void</span>);
<a name="l00164"></a>00164 ILAPI ILboolean      ILAPIENTRY iluInvertAlpha(<span class="keywordtype">void</span>);
<a name="l00165"></a>00165 ILAPI ILuint         ILAPIENTRY iluLoadImage(ILconst_string FileName);
<a name="l00166"></a>00166 ILAPI ILboolean      ILAPIENTRY iluMirror(<span class="keywordtype">void</span>);
<a name="l00167"></a>00167 ILAPI ILboolean      ILAPIENTRY iluNegative(<span class="keywordtype">void</span>);
<a name="l00168"></a>00168 ILAPI ILboolean      ILAPIENTRY iluNoisify(ILclampf Tolerance);
<a name="l00169"></a>00169 ILAPI ILboolean      ILAPIENTRY iluPixelize(ILuint PixSize);
<a name="l00170"></a>00170 ILAPI <span class="keywordtype">void</span>           ILAPIENTRY iluRegionfv(ILpointf *Points, ILuint n);
<a name="l00171"></a>00171 ILAPI <span class="keywordtype">void</span>           ILAPIENTRY iluRegioniv(ILpointi *Points, ILuint n);
<a name="l00172"></a>00172 ILAPI ILboolean      ILAPIENTRY iluReplaceColour(ILubyte Red, ILubyte Green, ILubyte Blue, ILfloat Tolerance);
<a name="l00173"></a>00173 ILAPI ILboolean      ILAPIENTRY iluRotate(ILfloat Angle);
<a name="l00174"></a>00174 ILAPI ILboolean      ILAPIENTRY iluRotate3D(ILfloat x, ILfloat y, ILfloat z, ILfloat Angle);
<a name="l00175"></a>00175 ILAPI ILboolean      ILAPIENTRY iluSaturate1f(ILfloat Saturation);
<a name="l00176"></a>00176 ILAPI ILboolean      ILAPIENTRY iluSaturate4f(ILfloat r, ILfloat g, ILfloat b, ILfloat Saturation);
<a name="l00177"></a>00177 ILAPI ILboolean      ILAPIENTRY iluScale(ILuint Width, ILuint Height, ILuint Depth);
<a name="l00178"></a>00178 ILAPI ILboolean      ILAPIENTRY iluScaleAlpha(ILfloat scale);
<a name="l00179"></a>00179 ILAPI ILboolean      ILAPIENTRY iluScaleColours(ILfloat r, ILfloat g, ILfloat b);
<a name="l00180"></a>00180 ILAPI ILboolean      ILAPIENTRY iluSetLanguage(ILenum Language);
<a name="l00181"></a>00181 ILAPI ILboolean      ILAPIENTRY iluSharpen(ILfloat Factor, ILuint Iter);
<a name="l00182"></a>00182 ILAPI ILboolean      ILAPIENTRY iluSwapColours(<span class="keywordtype">void</span>);
<a name="l00183"></a>00183 ILAPI ILboolean      ILAPIENTRY iluWave(ILfloat Angle);
<a name="l00184"></a>00184 
<a name="l00185"></a>00185 <span class="preprocessor">#define iluColorsUsed   iluColoursUsed</span>
<a name="l00186"></a>00186 <span class="preprocessor"></span><span class="preprocessor">#define iluSwapColors   iluSwapColours</span>
<a name="l00187"></a>00187 <span class="preprocessor"></span><span class="preprocessor">#define iluReplaceColor iluReplaceColour</span>
<a name="l00188"></a>00188 <span class="preprocessor"></span><span class="preprocessor">#define iluScaleColor   iluScaleColour</span>
<a name="l00189"></a>00189 <span class="preprocessor"></span>
<a name="l00190"></a>00190 <span class="preprocessor">#ifdef __cplusplus</span>
<a name="l00191"></a>00191 <span class="preprocessor"></span>}
<a name="l00192"></a>00192 <span class="preprocessor">#endif</span>
<a name="l00193"></a>00193 <span class="preprocessor"></span>
<a name="l00194"></a>00194 <span class="preprocessor">#endif // __ILU_H__</span>
<a name="l00195"></a>00195 <span class="preprocessor"></span><span class="preprocessor">#endif // __ilu_h_</span>
</pre></div></div>
<hr size="1"><address style="text-align: right;"><small>Generated on Sun Mar 8 20:01:41 2009 for DevIL by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
</body>
</html>