CMGDK r49-rc2
|
00001 # i f n d e f H G L _ D R A W _ A R R A Y _ B U F F E R _ I N T E R F A C E _ I N C L U D E 00002 00003 # d e f i n e H G L _ D R A W _ A R R A Y _ B U F F E R _ I N T E R F A C E _ I N C L U D E 00004 00005 00006 00007 # i n c l u d e < h g l / t y p e / D a t a T y p e . H > 00008 00009 # i n c l u d e < h g l / t y p e / R e c t S c o p e . H > 00010 00011 n a m e s p a c e h g l 00012 00013 { 00014 00015 / * * 00016 00017 * ppencbN 00018 00019 * / 00020 00021 e n u m P o i n t D a t a C o m p o m e n t / / / ppencbN 00022 00023 { 00024 00025 p d c C o l o r 3 f = 1 < < 0 , / / / < R G B rpenc 00026 00027 p d c C o l o r 4 f = 1 < < 1 , / / / < R G B A rpenc 00028 00029 00030 00031 p d c V e r t e x 2 f = 1 < < 2 , / / / < X Y vppenc( nmpW) 00032 00033 p d c V e r t e x 3 f = 1 < < 3 , / / / < X Y Z vppenc( nmpW) 00034 00035 00036 00037 p d c V e r t e x 2 i = 1 < < 6 , / / / < X Y vppenc( tepeW) 00038 00039 p d c V e r t e x 3 i = 1 < < 7 , / / / < X Y Z vppenc( tepeW) 00040 00041 00042 00043 p d c T e x C o o r d 1 f = 1 < < 8 , / / / < L 4VPWhpenc 00044 00045 p d c T e x C o o r d 2 f = 1 < < 9 , / / / < X Y 4VPWhpenc 00046 00047 p d c T e x C o o r d 3 f = 1 < < 1 0 , / / / < X Y Z 4VPWhpenc 00048 00049 p d c T e x C o o r d 4 f = 1 < < 1 1 , / / / < X Y Z W 4VPWhpenc 00050 00051 00052 00053 p d c T e x C o o r d 1 i = 1 < < 1 6 , / / / < L 4VPWhpenc 00054 00055 p d c T e x C o o r d 2 i = 1 < < 1 7 , / / / < X Y 4VPWhpenc 00056 00057 p d c T e x C o o r d 3 i = 1 < < 1 8 , / / / < X Y Z 4VPWhpenc 00058 00059 p d c T e x C o o r d 4 i = 1 < < 1 9 , / / / < X Y Z W 4VPWhpenc 00060 00061 00062 00063 p d c N o r m a l 3 f = 1 < < 2 0 , / / / < l~penc 00064 00065 00066 00067 p d c 2 C o l o r 3 f = 1 < < 2 2 , / / / < S e c o n d a r y C o l o r 00068 00069 00070 00071 p d c F o g C o o r d 1 f = 1 < < 2 3 , / / / < PWh 00072 00073 00074 00075 p d c I n d e x 1 i = 1 < < 2 5 , / / / < "}_i n t 00076 00077 } ; 00078 00079 00080 00081 t y p e d e f P o i n t D a t a C o m p o m e n t P D C ; / / / < ppencbN 00082 00083 00084 00085 c l a s s D r a w A r r a y B u f f e r I n t e r f a c e 00086 00087 { 00088 00089 f r i e n d c l a s s D r a w A r r a y ; 00090 00091 00092 00093 p u b l i c : 00094 00095 00096 00097 b o o l E n a b l e d ; 00098 00099 00100 00101 p u b l i c : 00102 00103 00104 00105 D r a w A r r a y B u f f e r I n t e r f a c e ( ) { E n a b l e d = t r u e ; } 00106 00107 v i r t u a l ~ D r a w A r r a y B u f f e r I n t e r f a c e ( ) { } ; 00108 00109 00110 00111 v i r t u a l u i n t G e t B u f f e r S i z e ( ) = 0 ; 00112 00113 00114 00115 p r i v a t e : 00116 00117 00118 00119 v i r t u a l v o i d S t a r t A c c e s s ( u i n t 8 * ) = 0 ; 00120 00121 v i r t u a l v o i d S t a r t A c c e s s ( u i n t 8 * , u i n t , u i n t ) = 0 ; 00122 00123 00124 00125 v i r t u a l v o i d E n d A c c e s s ( ) = 0 ; 00126 00127 00128 00129 v i r t u a l v o i d W r i t e ( v o i d * , i n t , i n t ) = 0 ; 00130 00131 00132 00133 p u b l i c : / / f l o a t 00134 00135 00136 00137 v i r t u a l v o i d W r i t e f v ( f l o a t * , i n t ) = 0 ; 00138 00139 00140 00141 v i r t u a l v o i d W r i t e 1 f ( f l o a t ) = 0 ; 00142 00143 v i r t u a l v o i d W r i t e 2 f ( f l o a t , f l o a t ) = 0 ; 00144 00145 v i r t u a l v o i d W r i t e 3 f ( f l o a t , f l o a t , f l o a t ) = 0 ; 00146 00147 v i r t u a l v o i d W r i t e 4 f ( f l o a t , f l o a t , f l o a t , f l o a t ) = 0 ; 00148 00149 00150 00151 v i r t u a l v o i d W r i t e 2 f v ( f l o a t * , i n t = 1 ) = 0 ; 00152 00153 v i r t u a l v o i d W r i t e 3 f v ( f l o a t * , i n t = 1 ) = 0 ; 00154 00155 v i r t u a l v o i d W r i t e 4 f v ( f l o a t * , i n t = 1 ) = 0 ; 00156 00157 00158 00159 v i r t u a l v o i d W r i t e R e c t 2 f ( f l o a t , f l o a t , f l o a t , f l o a t ) = 0 ; 00160 00161 v i r t u a l v o i d W r i t e C u b e 3 f ( f l o a t , f l o a t , f l o a t , f l o a t , f l o a t , f l o a t ) = 0 ; 00162 00163 00164 00165 t e m p l a t e < t y p e n a m e T > 00166 00167 v o i d W r i t e R e c t 2 f ( c o n s t R e c t S c o p e 2 < T > & r s ) 00168 00169 { W r i t e R e c t 2 f ( r s . L e f t , r s . T o p , r s . W i d t h , r s . H e i g h t ) ; } 00170 00171 00172 00173 p u b l i c : / / d o u b l e 00174 00175 00176 00177 v i r t u a l v o i d W r i t e d v ( d o u b l e * , i n t ) = 0 ; 00178 00179 00180 00181 v i r t u a l v o i d W r i t e 1 d ( d o u b l e ) = 0 ; 00182 00183 v i r t u a l v o i d W r i t e 2 d ( d o u b l e , d o u b l e ) = 0 ; 00184 00185 v i r t u a l v o i d W r i t e 3 d ( d o u b l e , d o u b l e , d o u b l e ) = 0 ; 00186 00187 v i r t u a l v o i d W r i t e 4 d ( d o u b l e , d o u b l e , d o u b l e , d o u b l e ) = 0 ; 00188 00189 00190 00191 v i r t u a l v o i d W r i t e 2 d v ( d o u b l e * , i n t = 1 ) = 0 ; 00192 00193 v i r t u a l v o i d W r i t e 3 d v ( d o u b l e * , i n t = 1 ) = 0 ; 00194 00195 v i r t u a l v o i d W r i t e 4 d v ( d o u b l e * , i n t = 1 ) = 0 ; 00196 00197 00198 00199 v i r t u a l v o i d W r i t e R e c t 2 d ( d o u b l e , d o u b l e , d o u b l e , d o u b l e ) = 0 ; 00200 00201 v i r t u a l v o i d W r i t e C u b e 3 d ( d o u b l e , d o u b l e , d o u b l e , d o u b l e , d o u b l e , d o u b l e ) = 0 ; 00202 00203 00204 00205 t e m p l a t e < t y p e n a m e T > 00206 00207 v o i d W r i t e R e c t 2 d ( c o n s t R e c t S c o p e 2 < T > & r s ) 00208 00209 { W r i t e R e c t 2 d ( r s . L e f t , r s . T o p , r s . W i d t h , r s . H e i g h t ) ; } 00210 00211 00212 00213 p u b l i c : / / i n t 00214 00215 00216 00217 v i r t u a l v o i d W r i t e i v ( i n t * , i n t ) = 0 ; 00218 00219 00220 00221 v i r t u a l v o i d W r i t e 1 i ( i n t ) = 0 ; 00222 00223 v i r t u a l v o i d W r i t e 2 i ( i n t , i n t ) = 0 ; 00224 00225 v i r t u a l v o i d W r i t e 3 i ( i n t , i n t , i n t ) = 0 ; 00226 00227 v i r t u a l v o i d W r i t e 4 i ( i n t , i n t , i n t , i n t ) = 0 ; 00228 00229 00230 00231 v i r t u a l v o i d W r i t e 2 i v ( i n t * , i n t = 1 ) = 0 ; 00232 00233 v i r t u a l v o i d W r i t e 3 i v ( i n t * , i n t = 1 ) = 0 ; 00234 00235 v i r t u a l v o i d W r i t e 4 i v ( i n t * , i n t = 1 ) = 0 ; 00236 00237 00238 00239 v i r t u a l v o i d W r i t e R e c t 2 i ( i n t , i n t , i n t , i n t ) = 0 ; 00240 00241 v i r t u a l v o i d W r i t e C u b e 3 i ( i n t , i n t , i n t , i n t , i n t , i n t ) = 0 ; 00242 00243 00244 00245 t e m p l a t e < t y p e n a m e T > 00246 00247 v o i d W r i t e R e c t 2 i ( c o n s t R e c t S c o p e 2 < T > & r s ) 00248 00249 { W r i t e R e c t 2 i ( r s . L e f t , r s . T o p , r s . W i d t h , r s . H e i g h t ) ; } 00250 00251 00252 00253 v i r t u a l v o i d B i n d ( u i n t 8 * ) = 0 ; 00254 00255 00256 00257 v i r t u a l D r a w A r r a y B u f f e r I n t e r f a c e * o p e r a t o r [ ] ( i n t ) = 0 ; 00258 00259 } ; 00260 00261 / * 00262 00263 c l a s s D r a w A r r a y M u l t i T e x C o o r d : p u b l i c D r a w A r r a y B u f f e r I n t e r f a c e 00264 00265 { 00266 00267 p u b l i c : 00268 00269 00270 00271 L i s t < D r a w A r r a y B u f f e r I n t e r f a c e * > A r r a y ; 00272 00273 00274 00275 p u b l i c : 00276 00277 00278 00279 ~ D r a w A r r a y M u l t i T e x C o o r d ( ) 00280 00281 { 00282 00283 A r r a y . D e l e t e C l e a r ( ) ; 00284 00285 } 00286 00287 00288 00289 p r o t e c t e d : 00290 00291 00292 00293 u i n t G e t B u f f e r S i z e ( ) { C A L L _ H I N T ; r e t u r n 0 ; } 00294 00295 00296 00297 v o i d S t a r t A c c e s s ( u i n t 8 * ) C A L L _ H I N T ; 00298 00299 v o i d S t a r t A c c e s s ( u i n t 8 * , u i n t , u i n t ) C A L L _ H I N T ; 00300 00301 00302 00303 v o i d E n d A c c e s s ( ) C A L L _ H I N T ; 00304 00305 00306 00307 v o i d W r i t e ( v o i d * , i n t , i n t ) C A L L _ H I N T ; 00308 00309 00310 00311 p u b l i c : / / f l o a t 00312 00313 00314 00315 v o i d W r i t e f v ( f l o a t * , i n t ) C A L L _ H I N T ; 00316 00317 00318 00319 v o i d W r i t e 1 f ( f l o a t ) C A L L _ H I N T ; 00320 00321 v o i d W r i t e 2 f ( f l o a t , f l o a t ) C A L L _ H I N T ; 00322 00323 v o i d W r i t e 3 f ( f l o a t , f l o a t , f l o a t ) C A L L _ H I N T ; 00324 00325 v o i d W r i t e 4 f ( f l o a t , f l o a t , f l o a t , f l o a t ) C A L L _ H I N T ; 00326 00327 00328 00329 v o i d W r i t e 2 f v ( f l o a t * , i n t = 1 ) C A L L _ H I N T ; 00330 00331 v o i d W r i t e 3 f v ( f l o a t * , i n t = 1 ) C A L L _ H I N T ; 00332 00333 v o i d W r i t e 4 f v ( f l o a t * , i n t = 1 ) C A L L _ H I N T ; 00334 00335 00336 00337 v o i d W r i t e R e c t 2 f ( f l o a t , f l o a t , f l o a t , f l o a t ) C A L L _ H I N T ; 00338 00339 v o i d W r i t e C u b e 3 f ( f l o a t , f l o a t , f l o a t , f l o a t , f l o a t , f l o a t ) C A L L _ H I N T ; 00340 00341 00342 00343 p u b l i c : / / d o u b l e 00344 00345 00346 00347 v o i d W r i t e d v ( d o u b l e * , i n t ) C A L L _ H I N T ; 00348 00349 00350 00351 v o i d W r i t e 1 d ( d o u b l e ) C A L L _ H I N T ; 00352 00353 v o i d W r i t e 2 d ( d o u b l e , d o u b l e ) C A L L _ H I N T ; 00354 00355 v o i d W r i t e 3 d ( d o u b l e , d o u b l e , d o u b l e ) C A L L _ H I N T ; 00356 00357 v o i d W r i t e 4 d ( d o u b l e , d o u b l e , d o u b l e , d o u b l e ) C A L L _ H I N T ; 00358 00359 00360 00361 v o i d W r i t e 2 d v ( d o u b l e * , i n t = 1 ) C A L L _ H I N T ; 00362 00363 v o i d W r i t e 3 d v ( d o u b l e * , i n t = 1 ) C A L L _ H I N T ; 00364 00365 v o i d W r i t e 4 d v ( d o u b l e * , i n t = 1 ) C A L L _ H I N T ; 00366 00367 00368 00369 v o i d W r i t e R e c t 2 d ( d o u b l e , d o u b l e , d o u b l e , d o u b l e ) C A L L _ H I N T ; 00370 00371 v o i d W r i t e C u b e 3 d ( d o u b l e , d o u b l e , d o u b l e , d o u b l e , d o u b l e , d o u b l e ) C A L L _ H I N T ; 00372 00373 00374 00375 p u b l i c : / / i n t 00376 00377 00378 00379 v o i d W r i t e i v ( i n t * , i n t ) C A L L _ H I N T ; 00380 00381 00382 00383 v o i d W r i t e 1 i ( i n t ) C A L L _ H I N T ; 00384 00385 v o i d W r i t e 2 i ( i n t , i n t ) C A L L _ H I N T ; 00386 00387 v o i d W r i t e 3 i ( i n t , i n t , i n t ) C A L L _ H I N T ; 00388 00389 v o i d W r i t e 4 i ( i n t , i n t , i n t , i n t ) C A L L _ H I N T ; 00390 00391 00392 00393 v o i d W r i t e 2 i v ( i n t * , i n t = 1 ) C A L L _ H I N T ; 00394 00395 v o i d W r i t e 3 i v ( i n t * , i n t = 1 ) C A L L _ H I N T ; 00396 00397 v o i d W r i t e 4 i v ( i n t * , i n t = 1 ) C A L L _ H I N T ; 00398 00399 00400 00401 v o i d W r i t e R e c t 2 i ( i n t , i n t , i n t , i n t ) C A L L _ H I N T ; 00402 00403 v o i d W r i t e C u b e 3 i ( i n t , i n t , i n t , i n t , i n t , i n t ) C A L L _ H I N T ; 00404 00405 00406 00407 v o i d B i n d ( u i n t 8 * d a t a ) 00408 00409 { 00410 00411 i n t n = A r r a y . C o u n t ; 00412 00413 00414 00415 w h i l e ( n - - ) 00416 00417 { 00418 00419 g l A c t i v e T e x t u r e ( G L _ T E X T U R E 0 _ A R B + n ) ; 00420 00421 00422 00423 A r r a y [ n ] - > B i n d ( d a t a ) ; 00424 00425 } 00426 00427 00428 00429 / / ُ*N gT[/fc0R0 N 00430 00431 00432 00433 C h a n g e A c t i v e T e x t u r e ( 0 ) ; 00434 00435 } 00436 00437 00438 00439 D r a w A r r a y B u f f e r I n t e r f a c e * o p e r a t o r [ ] ( i n t n ) 00440 00441 { 00442 00443 r e t u r n A r r a y [ n ] ; 00444 00445 } 00446 00447 } ; * / 00448 00449 } / / n a m e s p a c e h g l 00450 00451 # e n d i f / / H G L _ D R A W _ A R R A Y _ B U F F E R _ I N T E R F A C E _ I N C L U D E 00452 00453