home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / QuickTime VR / Windows / Interfaces / QD3DAcceleration.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-05-03  |  2.7 KB  |  85 lines  |  [TEXT/MPS ]

  1. /******************************************************************************
  2.  **                                                                             **
  3.  **     Module:        QD3DAcceleration.h                                         **
  4.  **                                                                          **
  5.  **                                                                          **
  6.  **     Purpose:     Header file for low-level 3D driver API                     **
  7.  **                 Vendor IDs, and Apple's engine IDs                         **
  8.  **                                                                          **
  9.  **                                                                          **
  10.  **     Copyright (C) 1994-95 Apple Computer, Inc.  All rights reserved.     **
  11.  **                                                                          **
  12.  **                                                                          **
  13.  *****************************************************************************/
  14. #ifndef QD3DAcceleration_h
  15. #define QD3DAcceleration_h
  16.  
  17. #if PRAGMA_ONCE
  18.     #pragma once
  19. #endif
  20.  
  21. #if defined(THINK_C) || defined(__SC__)
  22.     #pragma options(!pack_enums, !align_arrays)
  23.     #pragma SC options align=power
  24. #elif defined(__MWERKS__)
  25.     #pragma enumsalwaysint on
  26.     #pragma align_array_members off
  27.     #pragma options align=native
  28. #elif defined(__PPCC__)
  29.     #pragma options align=power
  30. #endif
  31.  
  32. #ifdef __cplusplus
  33. extern "C" {
  34. #endif
  35.  
  36. /******************************************************************************
  37.  **                                                                             **
  38.  **                         Vendor ID definitions                             **
  39.  **                                                                             **
  40.  *****************************************************************************/
  41.  
  42. /*
  43.  * If kQAVendor_BestChoice is used, the system chooses the "best" drawing engine
  44.  * available for the target device. This should be used for the default.
  45.  */
  46.  
  47. #define kQAVendor_BestChoice        (-1)
  48.  
  49. /*
  50.  * The other definitions (kQAVendor_Apple, etc.) identify specific vendors
  51.  * of drawing engines. When a vendor ID is used in conjunction with a
  52.  * vendor-defined engine ID, a specific drawing engine can be selected.
  53.  */
  54.  
  55. #define kQAVendor_Apple            0
  56. #define kQAVendor_ATI            1
  57. #define kQAVendor_Radius        2
  58. #define kQAVendor_Mentor        3
  59. #define kQAVendor_Matrox        4
  60. #define kQAVendor_Yarc            5
  61. #define kQAVendor_DiamondMM        6
  62.  
  63. /******************************************************************************
  64.  **                                                                             **
  65.  **                         Apple's engine ID definitions                         **
  66.  **                                                                             **
  67.  *****************************************************************************/
  68.  
  69. #define kQAEngine_AppleSW        0        /* Default software rasterizer */
  70. #define kQAEngine_AppleHW        (-1)    /* QuickDraw 3D Accelerator Card */
  71. #define kQAEngine_AppleHW2        1        /* Another Apple accelerator */
  72. #define kQAEngine_AppleHW3        2        /* Another Apple accelerator */
  73.  
  74. #ifdef __cplusplus
  75. }
  76. #endif
  77.  
  78. #if defined(__MWERKS__)
  79.     #pragma enumsalwaysint reset
  80. #elif defined(__xlc) || defined(__xlC) || defined(__xlC__) || defined(__XLC121__)
  81.     #pragma options enum=reset
  82. #endif
  83.  
  84. #endif /* QD3DAcceleration_h */
  85.