home *** CD-ROM | disk | FTP | other *** search
/ Solo Programadores 22 / SOLO_22.iso / packages / win32ada / data.z / win32-glaux.adb < prev    next >
Encoding:
Text File  |  1995-11-17  |  3.9 KB  |  135 lines

  1. -- $Source: /home/harp/1/proto/monoBANK/winnt/win32-glaux.adb,v $ 
  2. -- $Revision: 1.5 $ $Date: 95/02/07 15:12:36 $ $Author: mg $ 
  3. -------------------------------------------------------------------------------
  4. --
  5. -- THIS FILE AND ANY ASSOCIATED DOCUMENTATION IS FURNISHED "AS IS" WITHOUT 
  6. -- WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED 
  7. -- TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR 
  8. -- PURPOSE.  The user assumes the entire risk as to the accuracy and the 
  9. -- use of this file.
  10. --
  11. -- Copyright (c) Intermetrics, Inc. 1995
  12. -- Royalty-free, unlimited, worldwide, non-exclusive use, modification, 
  13. -- reproduction and further distribution of this file is permitted.
  14. --
  15. -------------------------------------------------------------------------------
  16.  
  17.  
  18. with Ada.Unchecked_Conversion;
  19. with Interfaces.C;
  20. use Interfaces.C;
  21. with Win32.Gl;
  22.  
  23. package body Win32.Glaux is
  24.  
  25.     function AUX_WIND_IS_RGB(x: Win32.INT) return Win32.BOOL is   -- glaux.h:91
  26.     begin
  27.     if ((Win32.UINT(x)  and AUX_INDEX) = 0) then
  28.         return Win32.TRUE;
  29.     end if;
  30.     return Win32.FALSE;
  31.     end AUX_WIND_IS_RGB;
  32.  
  33.     function AUX_WIND_IS_INDEX(x: Win32.INT) return Win32.BOOL is -- glaux.h:92
  34.     begin
  35.     if ((Win32.UINT(x) and  AUX_INDEX) /= 0) then 
  36.         return Win32.TRUE;
  37.     end if;
  38.     return Win32.FALSE;
  39.     end AUX_WIND_IS_INDEX;
  40.  
  41.     function AUX_WIND_IS_SINGLE(x: Win32.INT) return Win32.BOOL is
  42.                             -- glaux.h:93 
  43.     begin
  44.     if ((Win32.UINT(x) and AUX_DOUBLE) = 0) then
  45.         return Win32.TRUE;
  46.     end if;
  47.     return Win32.FALSE;
  48.     end AUX_WIND_IS_SINGLE;
  49.  
  50.     function AUX_WIND_IS_DOUBLE(x: Win32.INT) return Win32.BOOL is
  51.                             -- glaux.h:94
  52.     begin
  53.     if ((Win32.UINT(x) and AUX_DOUBLE) /= 0) then
  54.         return Win32.TRUE;
  55.     end if;
  56.     return Win32.FALSE;
  57.     end AUX_WIND_IS_DOUBLE;
  58.  
  59.     function AUX_WIND_IS_INDIRECT(x: Win32.INT) return Win32.BOOL is 
  60.                             -- glaux.h:95
  61.     begin
  62.     if ((Win32.UINT(x) and AUX_INDIRECT) /= 0) then
  63.         return Win32.TRUE;
  64.     end if;
  65.     return Win32.FALSE;
  66.     end AUX_WIND_IS_INDIRECT;
  67.  
  68.     function AUX_WIND_IS_DIRECT(x: Win32.INT) return Win32.BOOL is
  69.                             -- glaux.h:96 
  70.     begin
  71.     if ((Win32.UINT(x) and AUX_INDIRECT) = 0) then
  72.         return Win32.TRUE;
  73.     end if;
  74.     return Win32.FALSE;
  75.     end AUX_WIND_IS_DIRECT;
  76.  
  77.     function AUX_WIND_HAS_ACCUM(x: Win32.INT) return Win32.BOOL is
  78.                             -- glaux.h:97 
  79.     begin
  80.     if ((Win32.UINT(x) and AUX_ACCUM) /= 0) then
  81.         return Win32.TRUE;
  82.     end if;
  83.     return Win32.FALSE;
  84.     end AUX_WIND_HAS_ACCUM;
  85.  
  86.     function AUX_WIND_HAS_ALPHA(x: Win32.INT) return Win32.BOOL is
  87.                             -- glaux.h:98
  88.     begin
  89.     if ((Win32.UINT(x) and AUX_ALPHA) /= 0) then
  90.         return Win32.TRUE;
  91.     end if;
  92.     return Win32.FALSE;
  93.     end AUX_WIND_HAS_ALPHA;
  94.  
  95.     function AUX_WIND_HAS_DEPTH(x: Win32.INT) return Win32.BOOL is
  96.                             -- glaux.h:99 
  97.     begin
  98.     if ((Win32.UINT(x) and (AUX_DEPTH or AUX_DEPTH16)) /= 0) then
  99.         return Win32.TRUE;
  100.     end if;
  101.     return Win32.FALSE;
  102.     end AUX_WIND_HAS_DEPTH;
  103.  
  104.     function AUX_WIND_HAS_STENCIL(x: Win32.INT) return Win32.BOOL is 
  105.                             -- glaux.h:100
  106.     begin
  107.     if ((Win32.UINT(x) and AUX_STENCIL) /= 0) then
  108.         return Win32.TRUE;
  109.     end if;
  110.     return Win32.FALSE;
  111.     end AUX_WIND_HAS_STENCIL;
  112.  
  113.     function AUX_WIND_USES_FIXED_332_PAL(x: Win32.WORD) return Win32.BOOL is  
  114.                             -- glaux.h:101  
  115.     begin
  116.     if ((Win32.UINT(x) and AUX_FIXED_332_PAL) /= 0) then
  117.         return Win32.TRUE;
  118.     end if;
  119.     return Win32.FALSE;
  120.     end AUX_WIND_USES_FIXED_332_PAL;
  121.  
  122.     procedure AUX_SETCOLOR(x: Win32.INT;
  123.                y: Win32.INT) is             -- glaux.h:240
  124.     function To_ac_GLdouble is new Ada.Unchecked_Conversion(Win32.Float,
  125.         Win32.GL.ac_GLdouble);
  126.     begin
  127.     if (AUX_WIND_IS_RGB(x) = Win32.TRUE) then
  128.         Win32.Gl.glColor3fv(To_ac_GLdouble(auxRGBMap(integer(y),0)));
  129.     else
  130.         Win32.Gl.glIndexf(Win32.Gl.Glfloat(y));
  131.     end if;
  132.     end AUX_SETCOLOR;
  133.  
  134. end Win32.Glaux;
  135.