Mac OS 9
RAVE.h File Reference

Interface for RAVE (Renderer Acceleration Virtual Engine) More...

Go to the source code of this file.

Data Structures

struct  TQADeviceMemory
 
struct  TQADeviceOffscreen
 
struct  TQARect
 
union  TQAPlatformDevice
 
union  TQAPlatformClip
 
struct  TQADevice
 
struct  TQAClip
 
struct  TQAIndexedTriangle
 
struct  TQAImage
 
struct  TQAZBuffer
 
struct  TQAVGouraud
 
struct  TQAVTexture
 
struct  TQAVMultiTexture
 
union  TQANoticeMethod
 
struct  TQADrawContext
 

Macros

#define RAVE_OBSOLETE   0
 
#define kQAMacOS   1 /* Target is MacOS */
 
#define kQAGeneric   2 /* Target is generic platform */
 
#define kQAWin32   3 /* Target is Win32 */
 
#define kQAPlatform   kQAMacOS
 
#define RAVE_EXPORT
 
#define RAVE_CALL
 
#define RAVE_CALLBACK
 
#define kQAMaxWidth   128.0
 
#define kQACSGTag_None   0xffffffffUL
 
#define QACalculatePriorityBits(_priority)   (((unsigned long)(_priority)) << 28)
 
#define QASetFloat(drawContext, tag, newValue)    (drawContext)->setFloat(drawContext, tag, newValue)
 
#define QASetInt(drawContext, tag, newValue)    (drawContext)->setInt(drawContext, tag, newValue)
 
#define QASetPtr(drawContext, tag, newValue)    (drawContext)->setPtr(drawContext, tag, newValue)
 
#define QAGetFloat(drawContext, tag)   (drawContext)->getFloat(drawContext, tag)
 
#define QAGetInt(drawContext, tag)   (drawContext)->getInt(drawContext, tag)
 
#define QAGetPtr(drawContext, tag)   (drawContext)->getPtr(drawContext, tag)
 
#define QADrawPoint(drawContext, v)   (drawContext)->drawPoint(drawContext, v)
 
#define QADrawLine(drawContext, v0, v1)    (drawContext)->drawLine(drawContext, v0, v1)
 
#define QADrawTriGouraud(drawContext, v0, v1, v2, flags)    (drawContext)->drawTriGouraud(drawContext, v0, v1, v2, flags)
 
#define QADrawTriTexture(drawContext, v0, v1, v2, flags)    (drawContext)->drawTriTexture(drawContext, v0, v1, v2, flags)
 
#define QASubmitVerticesGouraud(drawContext, nVertices, vertices)    (drawContext)->submitVerticesGouraud(drawContext, nVertices, vertices)
 
#define QASubmitVerticesTexture(drawContext, nVertices, vertices)    (drawContext)->submitVerticesTexture(drawContext, nVertices, vertices)
 
#define QASubmitMultiTextureParams(drawContext, nParams, params)    (drawContext)->submitMultiTextureParams(drawContext, nParams, params)
 
#define QADrawTriMeshGouraud(drawContext, nTriangle, triangles)    (drawContext)->drawTriMeshGouraud(drawContext, nTriangle, triangles)
 
#define QADrawTriMeshTexture(drawContext, nTriangle, triangles)    (drawContext)->drawTriMeshTexture(drawContext, nTriangle, triangles)
 
#define QADrawVGouraud(drawContext, nVertices, vertexMode, vertices, flags)
 
#define QADrawVTexture(drawContext, nVertices, vertexMode, vertices, flags)
 
#define QADrawBitmap(drawContext, v, bitmap)    (drawContext)->drawBitmap(drawContext, v, bitmap)
 
#define QARenderStart(drawContext, dirtyRect, initialContext)    (drawContext)->renderStart(drawContext, dirtyRect, initialContext)
 
#define QARenderEnd(drawContext, modifiedRect)    (drawContext)->renderEnd(drawContext, modifiedRect)
 
#define QARenderAbort(drawContext)   (drawContext)->renderAbort(drawContext)
 
#define QAFlush(drawContext)   (drawContext)->flush(drawContext)
 
#define QASync(drawContext)   (drawContext)->sync(drawContext)
 
#define QASetNoticeMethod(drawContext, method, completionCallBack, refCon)
 
#define QAGetNoticeMethod(drawContext, method, completionCallBack, refCon)
 
#define QAAccessDrawBuffer(drawContext, pixelBuffer)    (drawContext)->accessDrawBuffer(drawContext, pixelBuffer)
 
#define QAAccessDrawBufferEnd(drawContext, dirtyRect)    (drawContext)->accessDrawBufferEnd(drawContext, dirtyRect)
 
#define QAAccessZBuffer(drawContext, zBuffer)    (drawContext)->accessZBuffer(drawContext, zBuffer)
 
#define QAAccessZBufferEnd(drawContext, dirtyRect)    (drawContext)->accessZBufferEnd(drawContext, dirtyRect)
 
#define QAClearDrawBuffer(drawContext, rect, initialContext)    (drawContext)->clearDrawBuffer(drawContext, rect, initialContext)
 
#define QAClearZBuffer(drawContext, rect, initialContext)    (drawContext)->clearZBuffer(drawContext, rect, initialContext)
 
#define QATextureNewFromDrawContext(drawContext, flags, newTexture)    (drawContext)->textureFromContext(drawContext, flags, newTexture)
 
#define QABitmapNewFromDrawContext(drawContext, flags, newBitmap)    (drawContext)->bitmapFromContext(drawContext, flags, newBitmap)
 
#define QABusy(drawContext)   (drawContext)->busy(drawContext)
 
#define QASwapBuffers(drawContext, dirtyRect)    (drawContext)->swapBuffers(drawContext, dirtyRect)
 

Typedefs

typedef enum TQAImagePixelType TQAImagePixelType
 
typedef enum TQAColorTableType TQAColorTableType
 
typedef enum TQADeviceType TQADeviceType
 
typedef struct TQADeviceMemory TQADeviceMemory
 
typedef struct TQADeviceOffscreen TQADeviceOffscreen
 
typedef enum TQAClipType TQAClipType
 
typedef struct TQARect TQARect
 
typedef union TQAPlatformDevice TQAPlatformDevice
 
typedef union TQAPlatformClip TQAPlatformClip
 
typedef struct TQADevice TQADevice
 
typedef struct TQAClip TQAClip
 
typedef struct TQAEngine TQAEngine
 
typedef struct TQATexture TQATexture
 
typedef struct TQABitmap TQABitmap
 
typedef struct TQADrawPrivate TQADrawPrivate
 
typedef struct TQAColorTable TQAColorTable
 
typedef struct TQAIndexedTriangle TQAIndexedTriangle
 
typedef struct TQAImage TQAImage
 
typedef TQADeviceMemory TQAPixelBuffer
 
typedef struct TQAZBuffer TQAZBuffer
 
typedef enum TQAError TQAError
 
typedef unsigned char TQABoolean
 
typedef struct TQAVGouraud TQAVGouraud
 
typedef struct TQAVTexture TQAVTexture
 
typedef struct TQAVMultiTexture TQAVMultiTexture
 
typedef enum TQATagInt TQATagInt
 
typedef enum TQATagPtr TQATagPtr
 
typedef enum TQATagFloat TQATagFloat
 
typedef enum TQAVertexMode TQAVertexMode
 
typedef enum TQAGestaltSelector TQAGestaltSelector
 
typedef enum TQAMethodSelector TQAMethodSelector
 
typedef enum TQAVersion TQAVersion
 
typedef struct TQADrawContext TQADrawContext
 
typedef void * refCon
 
typedef const TQADevicebuffer
 
typedef const TQADevice const TQARectdirtyRect
 
typedef union TQANoticeMethod TQANoticeMethod
 
typedef TQATagFloat tag
 
typedef TQATagFloat float newValue
 
typedef const TQAVGouraudv
 
typedef const TQAVGouraudv0
 
typedef const TQAVGouraud const TQAVGouraudv1
 
typedef const TQAVGouraud const TQAVGouraud const TQAVGouraudv2
 
typedef const TQAVGouraud const TQAVGouraud const TQAVGouraud unsigned long flags
 
typedef unsigned long nVertices
 
typedef unsigned long const TQAVGouraudvertices
 
typedef unsigned long nTriangles
 
typedef unsigned long const TQAIndexedTriangletriangles
 
typedef unsigned long TQAVertexMode vertexMode
 
typedef const TQAVGouraud TQABitmap * bitmap
 
typedef const TQARect const TQADrawContextinitialContext
 
typedef const TQARectmodifiedRect
 
typedef TQAMethodSelector method
 
typedef TQAMethodSelector TQANoticeMethod completionCallBack
 
typedef unsigned long nParams
 
typedef unsigned long const TQAVMultiTextureparams
 
typedef const TQARectrect
 
typedef unsigned long TQATexture ** newTexture
 
typedef unsigned long TQABitmap ** newBitmap
 

Enumerations

enum  TQAImagePixelType {
  kQAPixel_Alpha1 = 0 , kQAPixel_RGB16 = 1 , kQAPixel_ARGB16 = 2 , kQAPixel_RGB32 = 3 ,
  kQAPixel_ARGB32 = 4 , kQAPixel_CL4 = 5 , kQAPixel_CL8 = 6 , kQAPixel_RGB16_565 ,
  kQAPixel_RGB24 = 8 , kQAPixel_RGB8_332 = 9 , kQAPixel_ARGB16_4444 = 10 , kQAPixel_ACL16_88 ,
  kQAPixel_I8 = 12 , kQAPixel_AI16_88 , kQAPixel_YUVS = 14 , kQAPixel_YUVU = 15 ,
  kQAPixel_YVYU422 = 16 , kQAPixel_UYVY422 = 17
}
 
enum  TQAColorTableType { kQAColorTable_CL8_RGB32 , kQAColorTable_CL4_RGB32 }
 
enum  TQADeviceType { kQADeviceMemory = 0 , kQADeviceGDevice = 1 , kQADeviceWin32DC = 2 , kQADeviceDDSurface = 3 }
 
enum  TQAClipType { kQAClipRgn = 0 , kQAClipWin32Rgn = 1 }
 
enum  TQAError {
  kQANoErr = 0 , kQAError = 1 , kQAOutOfMemory = 2 , kQANotSupported = 3 ,
  kQAOutOfDate = 4 , kQAParamErr = 5 , kQAGestaltUnknown = 6 , kQADisplayModeUnsupported ,
  kQAOutOfVideoMemory
}
 
enum  TQATagInt {
  kQATag_ZFunction = 0 , kQATag_Antialias = 8 , kQATag_Blend = 9 , kQATag_PerspectiveZ = 10 ,
  kQATag_TextureFilter = 11 , kQATag_TextureOp = 12 , kQATag_CSGTag = 14 , kQATag_CSGEquation = 15 ,
  kQATag_BufferComposite = 16 , kQATag_FogMode = 17 , kQATag_ChannelMask = 27 , kQATag_ZBufferMask = 28 ,
  kQATag_ZSortedHint = 29 , kQATag_ChromakeyEnable = 30 , kQATag_AlphaTestFunc = 31 , kQATag_DontSwap = 32 ,
  kQATag_MultiTextureEnable = 33 , kQATag_MultiTextureCurrent = 34 , kQATag_MultiTextureOp = 35 , kQATag_MultiTextureFilter = 36 ,
  kQATag_MultiTextureWrapU = 37 , kQATag_MultiTextureWrapV = 38 , kQATag_MultiTextureMagFilter = 39 , kQATag_MultiTextureMinFilter = 40 ,
  kQATag_BitmapFilter , kQATag_DrawContextFilter , kQATagGL_DrawBuffer = 100 , kQATagGL_TextureWrapU = 101 ,
  kQATagGL_TextureWrapV = 102 , kQATagGL_TextureMagFilter = 103 , kQATagGL_TextureMinFilter = 104 , kQATagGL_ScissorXMin = 105 ,
  kQATagGL_ScissorYMin = 106 , kQATagGL_ScissorXMax = 107 , kQATagGL_ScissorYMax = 108 , kQATagGL_BlendSrc = 109 ,
  kQATagGL_BlendDst = 110 , kQATagGL_LinePattern = 111 , kQATagGL_AreaPattern0 = 117 , kQATagGL_AreaPattern31 = 148 ,
  kQATagGL_LinePatternFactor = 149 , kQATag_EngineSpecific_Minimum = 1000
}
 
enum  TQATagPtr { kQATag_Texture = 13 , kQATag_MultiTexture = 26 }
 
enum  TQATagFloat {
  kQATag_ColorBG_a = 1 , kQATag_ColorBG_r = 2 , kQATag_ColorBG_g = 3 , kQATag_ColorBG_b = 4 ,
  kQATag_Width = 5 , kQATag_ZMinOffset = 6 , kQATag_ZMinScale = 7 , kQATag_FogColor_a = 18 ,
  kQATag_FogColor_r = 19 , kQATag_FogColor_g = 20 , kQATag_FogColor_b = 21 , kQATag_FogStart = 22 ,
  kQATag_FogEnd = 23 , kQATag_FogDensity = 24 , kQATag_FogMaxDepth = 25 , kQATag_MipmapBias = 41 ,
  kQATag_MultiTextureMipmapBias = 42 , kQATag_Chromakey_r = 43 , kQATag_Chromakey_g = 44 , kQATag_Chromakey_b = 45 ,
  kQATag_AlphaTestRef = 46 , kQATag_MultiTextureBorder_a = 47 , kQATag_MultiTextureBorder_r = 48 , kQATag_MultiTextureBorder_g = 49 ,
  kQATag_MultiTextureBorder_b = 50 , kQATag_MultiTextureFactor = 51 , kQATag_BitmapScale_x , kQATag_BitmapScale_y ,
  kQATag_MultiTextureEnvColor_a = 56 , kQATag_MultiTextureEnvColor_r = 57 , kQATag_MultiTextureEnvColor_g = 58 , kQATag_MultiTextureEnvColor_b = 59 ,
  kQATagGL_DepthBG = 112 , kQATagGL_TextureBorder_a = 113 , kQATagGL_TextureBorder_r = 114 , kQATagGL_TextureBorder_g = 115 ,
  kQATagGL_TextureBorder_b = 116 , kQATagGL_TextureEnvColor_a = 150 , kQATagGL_TextureEnvColor_r = 151 , kQATagGL_TextureEnvColor_g = 152 ,
  kQATagGL_TextureEnvColor_b = 153
}
 
enum  {
  kQAZFunction_None , kQAZFunction_LT = 1 , kQAZFunction_EQ = 2 , kQAZFunction_LE = 3 ,
  kQAZFunction_GT = 4 , kQAZFunction_NE = 5 , kQAZFunction_GE = 6 , kQAZFunction_True = 7 ,
  kQAZFunction_False = 8
}
 
enum  { kQAAntiAlias_Off = 0 , kQAAntiAlias_Fast = 1 , kQAAntiAlias_Mid = 2 , kQAAntiAlias_Best = 3 }
 
enum  { kQABlend_PreMultiply = 0 , kQABlend_Interpolate = 1 , kQABlend_OpenGL = 2 }
 
enum  { kQABufferComposite_None , kQABufferComposite_PreMultiply = 1 , kQABufferComposite_Interpolate = 2 }
 
enum  { kQAPerspectiveZ_Off = 0 , kQAPerspectiveZ_On = 1 }
 
enum  { kQATextureFilter_Fast = 0 , kQATextureFilter_Mid = 1 , kQATextureFilter_Best = 2 }
 
enum  { kQAFilter_Fast = 0 , kQAFilter_Mid = 1 , kQAFilter_Best = 2 }
 
enum  {
  kQATextureOp_None = 0 , kQATextureOp_Modulate = (1 << 0) , kQATextureOp_Highlight = (1 << 1) , kQATextureOp_Decal = (1 << 2) ,
  kQATextureOp_Shrink , kQATextureOp_Blend = (1 << 4)
}
 
enum  { kQAMultiTexture_Add = 0 , kQAMultiTexture_Modulate = 1 , kQAMultiTexture_BlendAlpha , kQAMultiTexture_Fixed }
 
enum  {
  kQACSGTag_0 = 0 , kQACSGTag_1 = 1 , kQACSGTag_2 = 2 , kQACSGTag_3 = 3 ,
  kQACSGTag_4 = 4
}
 
enum  { kQAGL_Repeat = 0 , kQAGL_Clamp = 1 }
 
enum  { kQAGL_SourceBlend_XXX = 0 }
 
enum  { kQAGL_DestBlend_XXX = 0 }
 
enum  {
  kQAGL_DrawBuffer_None = 0 , kQAGL_DrawBuffer_FrontLeft = (1 << 0) , kQAGL_DrawBuffer_FrontRight = (1 << 1) , kQAGL_DrawBuffer_BackLeft = (1 << 2) ,
  kQAGL_DrawBuffer_BackRight = (1 << 3) , kQAGL_DrawBuffer_Front , kQAGL_DrawBuffer_Back
}
 
enum  {
  kQAFogMode_None = 0 , kQAFogMode_Alpha = 1 , kQAFogMode_Linear = 2 , kQAFogMode_Exponential = 3 ,
  kQAFogMode_ExponentialSquared = 4
}
 
enum  { kQAChannelMask_r = (1 << 0) , kQAChannelMask_g = (1 << 1) , kQAChannelMask_b = (1 << 2) , kQAChannelMask_a = (1 << 3) }
 
enum  { kQAZBufferMask_Disable = 0 , kQAZBufferMask_Enable = 1 }
 
enum  {
  kQAAlphaTest_None = 0 , kQAAlphaTest_LT = 1 , kQAAlphaTest_EQ = 2 , kQAAlphaTest_LE = 3 ,
  kQAAlphaTest_GT = 4 , kQAAlphaTest_NE = 5 , kQAAlphaTest_GE = 6 , kQAAlphaTest_True = 7
}
 
enum  { kQANoCopyNeeded = (1 << 0) }
 
enum  TQAVertexMode {
  kQAVertexMode_Point = 0 , kQAVertexMode_Line = 1 , kQAVertexMode_Polyline = 2 , kQAVertexMode_Tri = 3 ,
  kQAVertexMode_Strip = 4 , kQAVertexMode_Fan = 5 , kQAVertexMode_NumModes = 6
}
 
enum  TQAGestaltSelector {
  kQAGestalt_OptionalFeatures = 0 , kQAGestalt_FastFeatures = 1 , kQAGestalt_VendorID = 2 , kQAGestalt_EngineID = 3 ,
  kQAGestalt_Revision = 4 , kQAGestalt_ASCIINameLength = 5 , kQAGestalt_ASCIIName = 6 , kQAGestalt_TextureMemory = 7 ,
  kQAGestalt_FastTextureMemory , kQAGestalt_DrawContextPixelTypesAllowed , kQAGestalt_DrawContextPixelTypesPreferred , kQAGestalt_TexturePixelTypesAllowed ,
  kQAGestalt_TexturePixelTypesPreferred , kQAGestalt_BitmapPixelTypesAllowed , kQAGestalt_BitmapPixelTypesPreferred , kQAGestalt_OptionalFeatures2 = 15 ,
  kQAGestalt_MultiTextureMax , kQAGestalt_NumSelectors = 17 , kQAGestalt_EngineSpecific_Minimum
}
 
enum  TQAMethodSelector {
  kQAMethod_RenderCompletion , kQAMethod_DisplayModeChanged = 1 , kQAMethod_ReloadTextures , kQAMethod_ImageBufferInitialize ,
  kQAMethod_ImageBuffer2DComposite , kQAMethod_NumSelectors = 5
}
 
enum  { kQATriFlags_None = 0 , kQATriFlags_Backfacing = (1 << 0) }
 
enum  {
  kQATexture_None = 0 , kQATexture_Lock = (1 << 0) , kQATexture_Mipmap = (1 << 1) , kQATexture_NoCompression = (1 << 2) ,
  kQATexture_HighCompression , kQATexture_NonRelocatable , kQATexture_NoCopy = (1 << 5) , kQATexture_FlipOrigin ,
  kQATexture_PriorityBits
}
 
enum  {
  kQABitmap_None = 0 , kQABitmap_Lock = (1 << 1) , kQABitmap_NoCompression = (1 << 2) , kQABitmap_HighCompression ,
  kQABitmap_NonRelocatable , kQABitmap_NoCopy = (1 << 5) , kQABitmap_FlipOrigin = (1 << 6) , kQABitmap_PriorityBits
}
 
enum  {
  kQAContext_None = 0 , kQAContext_NoZBuffer = (1 << 0) , kQAContext_DeepZ = (1 << 1) , kQAContext_DoubleBuffer = (1 << 2) ,
  kQAContext_Cache = (1 << 3) , kQAContext_NoDither = (1 << 4) , kQAContext_Scale , kQAContext_NonRelocatable ,
  kQAContext_EngineSpecific1 = (1 << 28) , kQAContext_EngineSpecific2 = (1 << 29) , kQAContext_EngineSpecific3 = (1 << 30) , kQAContext_EngineSpecific4 = (1 << 31)
}
 
enum  {
  kQAOptional_None = 0 , kQAOptional_DeepZ = (1 << 0) , kQAOptional_Texture = (1 << 1) , kQAOptional_TextureHQ ,
  kQAOptional_TextureColor , kQAOptional_Blend = (1 << 4) , kQAOptional_BlendAlpha , kQAOptional_Antialias = (1 << 6) ,
  kQAOptional_ZSorted , kQAOptional_PerspectiveZ , kQAOptional_OpenGL , kQAOptional_NoClear ,
  kQAOptional_CSG = (1 << 11) , kQAOptional_BoundToDevice , kQAOptional_CL4 = (1 << 13) , kQAOptional_CL8 = (1 << 14) ,
  kQAOptional_BufferComposite , kQAOptional_NoDither = (1 << 16) , kQAOptional_FogAlpha = (1 << 17) , kQAOptional_FogDepth = (1 << 18) ,
  kQAOptional_MultiTextures , kQAOptional_MipmapBias = (1 << 20) , kQAOptional_ChannelMask = (1 << 21) , kQAOptional_ZBufferMask = (1 << 22) ,
  kQAOptional_AlphaTest = (1 << 23) , kQAOptional_AccessTexture , kQAOptional_AccessBitmap , kQAOptional_AccessDrawBuffer ,
  kQAOptional_AccessZBuffer , kQAOptional_ClearDrawBuffer , kQAOptional_ClearZBuffer , kQAOptional_OffscreenDrawContexts
}
 
enum  {
  kQAOptional2_None = 0 , kQAOptional2_TextureDrawContexts , kQAOptional2_BitmapDrawContexts , kQAOptional2_Busy = (1 << 3) ,
  kQAOptional2_SwapBuffers = (1 << 4) , kQAOptional2_Chromakey , kQAOptional2_NonRelocatable , kQAOptional2_NoCopy = (1 << 7) ,
  kQAOptional2_PriorityBits , kQAOptional2_FlipOrigin = (1 << 9) , kQAOptional2_BitmapScale , kQAOptional2_DrawContextScale ,
  kQAOptional2_DrawContextNonRelocatable
}
 
enum  {
  kQAFast_None = 0 , kQAFast_Line = (1 << 0) , kQAFast_Gouraud = (1 << 1) , kQAFast_Texture = (1 << 2) ,
  kQAFast_TextureHQ , kQAFast_Blend = (1 << 4) , kQAFast_Antialiasing = (1 << 5) , kQAFast_ZSorted = (1 << 6) ,
  kQAFast_CL4 = (1 << 7) , kQAFast_CL8 = (1 << 8) , kQAFast_FogAlpha = (1 << 9) , kQAFast_FogDepth = (1 << 10) ,
  kQAFast_MultiTextures , kQAFast_BitmapScale , kQAFast_DrawContextScale
}
 
enum  TQAVersion {
  kQAVersion_Prerelease = 0 , kQAVersion_1_0 = 1 , kQAVersion_1_0_5 = 2 , kQAVersion_1_5 ,
  kQAVersion_1_6 = 4
}
 

Functions

typedef CALLBACK_API_C (void, TQAStandardNoticeMethod)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (void, TQABufferNoticeMethod)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (void, TQASetFloat)(TQADrawContext *drawContext
 
typedef CALLBACK_API_C (void, TQASetInt)(TQADrawContext *drawContext
 
typedef CALLBACK_API_C (void, TQASetPtr)(TQADrawContext *drawContext
 
typedef CALLBACK_API_C (float, TQAGetFloat)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (unsigned long, TQAGetInt)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (void *, TQAGetPtr)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (void, TQADrawPoint)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (void, TQADrawLine)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (void, TQADrawTriGouraud)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (void, TQADrawTriTexture)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (void, TQASubmitVerticesGouraud)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (void, TQASubmitVerticesTexture)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (void, TQADrawTriMeshGouraud)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (void, TQADrawTriMeshTexture)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (void, TQADrawVGouraud)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (void, TQADrawVTexture)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (void, TQADrawBitmap)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (void, TQARenderStart)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (TQAError, TQARenderEnd)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (TQAError, TQARenderAbort)(const TQADrawContext *drawContext)
 
typedef CALLBACK_API_C (TQAError, TQAFlush)(const TQADrawContext *drawContext)
 
typedef CALLBACK_API_C (TQAError, TQASync)(const TQADrawContext *drawContext)
 
typedef CALLBACK_API_C (TQAError, TQASetNoticeMethod)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (TQAError, TQAGetNoticeMethod)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (void, TQASubmitMultiTextureParams)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (TQAError, TQAAccessDrawBuffer)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (TQAError, TQAAccessDrawBufferEnd)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (TQAError, TQAAccessZBuffer)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (TQAError, TQAAccessZBufferEnd)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (TQAError, TQAClearDrawBuffer)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (TQAError, TQAClearZBuffer)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (TQAError, TQATextureNewFromDrawContext)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (TQAError, TQABitmapNewFromDrawContext)(const TQADrawContext *drawContext
 
typedef CALLBACK_API_C (TQABoolean, TQABusy)(const TQADrawContext *drawContext)
 
typedef CALLBACK_API_C (TQAError, TQASwapBuffers)(const TQADrawContext *drawContext
 
TQAError QADrawContextNew (const TQADevice *device, const TQARect *rect, const TQAClip *clip, const TQAEngine *engine, unsigned long flags, TQADrawContext **newDrawContext)
 
void QADrawContextDelete (TQADrawContext *drawContext)
 
TQAError QAColorTableNew (const TQAEngine *engine, TQAColorTableType tableType, void *pixelData, long transparentIndexFlag, TQAColorTable **newTable)
 
void QAColorTableDelete (const TQAEngine *engine, TQAColorTable *colorTable)
 
TQAError QATextureNew (const TQAEngine *engine, unsigned long flags, TQAImagePixelType pixelType, const TQAImage images[], TQATexture **newTexture)
 
TQAError QATextureDetach (const TQAEngine *engine, TQATexture *texture)
 
void QATextureDelete (const TQAEngine *engine, TQATexture *texture)
 
TQAError QATextureBindColorTable (const TQAEngine *engine, TQATexture *texture, TQAColorTable *colorTable)
 
TQAError QABitmapNew (const TQAEngine *engine, unsigned long flags, TQAImagePixelType pixelType, const TQAImage *image, TQABitmap **newBitmap)
 
TQAError QABitmapDetach (const TQAEngine *engine, TQABitmap *bitmap)
 
void QABitmapDelete (const TQAEngine *engine, TQABitmap *bitmap)
 
TQAError QABitmapBindColorTable (const TQAEngine *engine, TQABitmap *bitmap, TQAColorTable *colorTable)
 
TQAEngine * QADeviceGetFirstEngine (const TQADevice *device)
 
TQAEngine * QADeviceGetNextEngine (const TQADevice *device, const TQAEngine *currentEngine)
 
TQAError QAEngineCheckDevice (const TQAEngine *engine, const TQADevice *device)
 
TQAError QAEngineGestalt (const TQAEngine *engine, TQAGestaltSelector selector, void *response)
 
TQAError QAEngineEnable (long vendorID, long engineID)
 
TQAError QAEngineDisable (long vendorID, long engineID)
 
TQAError QAAccessTexture (const TQAEngine *engine, TQATexture *texture, long mipmapLevel, long flags, TQAPixelBuffer *buffer)
 
TQAError QAAccessTextureEnd (const TQAEngine *engine, TQATexture *texture, const TQARect *dirtyRect)
 
TQAError QAAccessBitmap (const TQAEngine *engine, TQABitmap *bitmap, long flags, TQAPixelBuffer *buffer)
 
TQAError QAAccessBitmapEnd (const TQAEngine *engine, TQABitmap *bitmap, const TQARect *dirtyRect)
 

Detailed Description

Interface for RAVE (Renderer Acceleration Virtual Engine)

Introduced In: Quickdraw 3D 1.6
Avaliable From: Universal Interfaces 3.4.1
Copyright: � 1995-2001 by Apple Computer, Inc., all rights reserved.

For bug reports, consult the following page on the World Wide Web:

http://developer.apple.com/bugreporter/

Macro Definition Documentation

◆ QADrawVGouraud

#define QADrawVGouraud (   drawContext,
  nVertices,
  vertexMode,
  vertices,
  flags 
)
Value:
(drawContext) \
->drawVGouraud(drawContext, nVertices, vertexMode, vertices, flags)

◆ QADrawVTexture

#define QADrawVTexture (   drawContext,
  nVertices,
  vertexMode,
  vertices,
  flags 
)
Value:
(drawContext) \
->drawVTexture(drawContext, nVertices, vertexMode, vertices, flags)

◆ QAGetNoticeMethod

#define QAGetNoticeMethod (   drawContext,
  method,
  completionCallBack,
  refCon 
)
Value:
(drawContext) \
->getNoticeMethod(drawContext, method, completionCallBack, refCon)
TQAMethodSelector
Definition: RAVE.h:1009

◆ QASetNoticeMethod

#define QASetNoticeMethod (   drawContext,
  method,
  completionCallBack,
  refCon 
)
Value:
(drawContext) \
->setNoticeMethod(drawContext, method, completionCallBack, refCon)

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

kQATriFlags_xxx are ORed together to generate the 'flags' parameter to QADrawTriGouraud() and QADrawTriTexture().

◆ anonymous enum

anonymous enum

kQATexture_xxx are ORed together to generate the 'flags' parameter to QATextureNew().

◆ anonymous enum

anonymous enum

kQABitmap_xxx are ORed together to generate the 'flags' parameter to QABitmapNew().

◆ anonymous enum

anonymous enum

kQAContext_xxx are ORed together to generate the 'flags' parameter for QADrawContextNew().

◆ anonymous enum

anonymous enum

kQAOptional_xxx are ORed together to generate the kQAGestalt_OptionalFeatures response from QAEngineGestalt().

◆ anonymous enum

anonymous enum

kQAOptional2_xxx are ORed together to generate the kQAGestalt_OptionalFeatures2 response from QAEngineGestalt().

◆ anonymous enum

anonymous enum

kQAFast_xxx are ORed together to generate the kQAGestalt_FastFeatures response from QAEngineGestalt().

◆ TQAGestaltSelector

TQAGestaltSelector is a parameter to QAEngineGestalt(). It selects which gestalt parameter will be copied into 'response'.

◆ TQAMethodSelector

TQAMethodSelector is a parameter to QASetNoticeMethod to select the notice method

◆ TQATagInt

enum TQATagInt

kQATag_xxx is used to select a state variable when calling QASetFloat(), QASetInt(), QAGetFloat() and QAGetInt(). The kQATag values are split into three separate enumerated types: TQATagInt, TQATagPtr and TQATagFloat. TQATagInt is used for the QASet/GetInt() functions, TQATagPtr is used for the QASet/GetPtr() functions, and TQATagFloat is used for the QASet/GetFloat() functions. (This is so that a compiler that typechecks enums can flag a float/int tag mismatch during compile.)

-=- All tag values must be unique even across all three types. -=-

These variables are required by all drawing engines: kQATag_ZFunction (Int) One of kQAZFunction_xxx kQATag_ColorBG_a (Float) Background color alpha kQATag_ColorBG_r (Float) Background color red kQATag_ColorBG_g (Float) Background color green kQATag_ColorBG_b (Float) Background color blue kQATag_Width (Float) Line and point width (pixels) kQATag_ZMinOffset (Float) Min offset to Z to guarantee visibility (Read only!) kQATag_ZMinScale (Float) Min scale to Z to guarantee visibility (Read only!)

These variables are used for optional features: kQATag_Antialias (Int) One of kQAAntiAlias_xxx kQATag_Blend (Int) One of kQABlend_xxx kQATag_PerspectiveZ (Int) One of kQAPerspectiveZ_xxx kQATag_TextureFilter (Int) One of kQATextureFilter_xxx kQATag_TextureOp (Int) Mask of kQATextureOp_xxx kQATag_Texture (Ptr) Pointer to current TQATexture kQATag_CSGTag (Int) One of kQACSGTag_xxx kQATag_CSGEquation (Int) 32 bit CSG truth table kQATag_FogMode (Int) One of kQAFogMode_xxxx kQATag_FogColor_a (Float) Fog color alpha kQATag_FogColor_r (Float) Fog color red kQATag_FogColor_g (Float) Fog color green kQATag_FogColor_b (Float) Fog color blue kQATag_FogStart (Float) Fog start kQATag_FogEnd (Float) Fog end kQATag_FogDensity (Float) Fog density kQATag_FogMaxDepth (Float) Maximun value for 1.0 / invW kQATag_MipmapBias (Float) The mipmap page bias factor kQATag_ChannelMask (Int) one of kQAChannelMask_xxx kQATag_ZBufferMask (Int) one of kQAZBufferMask_xxx kQATag_ZSortedHint (Int) 1 = depth sort transparent triangles, 0 = do not sort. kQATag_Chromakey_r (Float) chroma key red kQATag_Chromakey_g (Float) chroma key green kQATag_Chromakey_b (Float) chroma key blue kQATag_ChromakeyEnable (Int) 1 = enable chroma keying, 0 = disable chroma keying kQATag_AlphaTestFunc (Int) one of kQAAlphaTest_xxx kQATag_AlphaTestRef (Float) from 0 to 1 kQATag_DontSwap (Int) 1 = dont swap buffers during QARenderEnd, 0 = do swap buffers during QARenderEnd.

   kQATag_MultiTextureOp       (Int) One of kQAMultiTexture_xxx
   kQATag_MultiTextureFilter   (Int) One of kQATextureFilter_xxx
   kQATag_MultiTextureCurrent  (Int) which multitexture layer to use for

all other multitexture funcs kQATag_MultiTextureEnable (Int) how many multitexture layers to use (0 = no multitexturing). kQATag_MultiTextureWrapU (Int) kQATag_MultiTextureWrapV (Int) kQATag_MultiTextureMagFilter (Int) kQATag_MultiTextureMinFilter (Int) kQATag_MultiTextureBorder_a (Float) kQATag_MultiTextureBorder_r (Float) kQATag_MultiTextureBorder_g (Float) kQATag_MultiTextureBorder_b (Float) kQATag_MultiTextureMipmapBias (Float) kQATag_MultiTextureFactor (Float) used with kQAMultiTexture_Fixed to determine blending factor

These variables are used for OpenGL� support: kQATagGL_DrawBuffer (Int) Mask of kQAGL_DrawBuffer_xxx kQATagGL_TextureWrapU (Int) kQAGL_Clamp or kQAGL_Repeat kQATagGL_TextureWrapV (Int) kQAGL_Clamp or kQAGL_Repeat kQATagGL_TextureMagFilter (Int) kQAGL_Nearest or kQAGL_Linear kQATagGL_TextureMinFilter (Int) kQAGL_Nearest, etc. kQATagGL_ScissorXMin (Int) Minimum X value for scissor rectangle kQATagGL_ScissorYMin (Int) Minimum Y value for scissor rectangle kQATagGL_ScissorXMax (Int) Maximum X value for scissor rectangle kQATagGL_ScissorYMax (Int) Maximum Y value for scissor rectangle kQATagGL_BlendSrc (Int) Source blending operation kQATagGL_BlendDst (Int) Destination blending operation kQATagGL_LinePattern (Int) Line rasterization pattern kQATagGL_AreaPattern0 (Int) First of 32 area pattern registers kQATagGL_AreaPattern31 (Int) Last of 32 area pattern registers

kQATagGL_DepthBG (Float) Background Z kQATagGL_TextureBorder_a (Float) Texture border color alpha kQATagGL_TextureBorder_r (Float) Texture border color red kQATagGL_TextureBorder_g (Float) Texture border color green kQATagGL_TextureBorder_b (Float) Texture border color blue

Tags >= kQATag_EngineSpecific_Minimum may be assigned by the vendor for use as engine-specific variables. NOTE: These should be used only in exceptional circumstances, as functions performed by these variables won't be generally accessible. All other tag values are reserved.

 kQATag_EngineSpecific_Minimum   Minimum tag value for drawing-engine

specific variables

◆ TQAVertexMode

TQAVertexMode is a parameter to QADrawVGouraud() and QADrawVTexture() that specifies how to interpret and draw the vertex array.

Function Documentation

◆ QAAccessBitmap()

TQAError QAAccessBitmap ( const TQAEngine *  engine,
TQABitmap *  bitmap,
long  flags,
TQAPixelBuffer buffer 
)

QAAccessBitmap()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QAAccessBitmapEnd()

TQAError QAAccessBitmapEnd ( const TQAEngine *  engine,
TQABitmap *  bitmap,
const TQARect dirtyRect 
)

QAAccessBitmapEnd()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QAAccessTexture()

TQAError QAAccessTexture ( const TQAEngine *  engine,
TQATexture *  texture,
long  mipmapLevel,
long  flags,
TQAPixelBuffer buffer 
)

QAAccessTexture()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QAAccessTextureEnd()

TQAError QAAccessTextureEnd ( const TQAEngine *  engine,
TQATexture *  texture,
const TQARect dirtyRect 
)

QAAccessTextureEnd()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QABitmapBindColorTable()

TQAError QABitmapBindColorTable ( const TQAEngine *  engine,
TQABitmap *  bitmap,
TQAColorTable *  colorTable 
)

QABitmapBindColorTable()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QABitmapDelete()

void QABitmapDelete ( const TQAEngine *  engine,
TQABitmap *  bitmap 
)

QABitmapDelete()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QABitmapDetach()

TQAError QABitmapDetach ( const TQAEngine *  engine,
TQABitmap *  bitmap 
)

QABitmapDetach()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QABitmapNew()

TQAError QABitmapNew ( const TQAEngine *  engine,
unsigned long  flags,
TQAImagePixelType  pixelType,
const TQAImage image,
TQABitmap **  newBitmap 
)

QABitmapNew()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QAColorTableDelete()

void QAColorTableDelete ( const TQAEngine *  engine,
TQAColorTable *  colorTable 
)

QAColorTableDelete()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QAColorTableNew()

TQAError QAColorTableNew ( const TQAEngine *  engine,
TQAColorTableType  tableType,
void *  pixelData,
long  transparentIndexFlag,
TQAColorTable **  newTable 
)

QAColorTableNew()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QADeviceGetFirstEngine()

TQAEngine* QADeviceGetFirstEngine ( const TQADevice device)

QADeviceGetFirstEngine()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QADeviceGetNextEngine()

TQAEngine* QADeviceGetNextEngine ( const TQADevice device,
const TQAEngine *  currentEngine 
)

QADeviceGetNextEngine()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QADrawContextDelete()

void QADrawContextDelete ( TQADrawContext drawContext)

QADrawContextDelete()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QADrawContextNew()

TQAError QADrawContextNew ( const TQADevice device,
const TQARect rect,
const TQAClip clip,
const TQAEngine *  engine,
unsigned long  flags,
TQADrawContext **  newDrawContext 
)

QADrawContextNew()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QAEngineCheckDevice()

TQAError QAEngineCheckDevice ( const TQAEngine *  engine,
const TQADevice device 
)

QAEngineCheckDevice()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QAEngineDisable()

TQAError QAEngineDisable ( long  vendorID,
long  engineID 
)

QAEngineDisable()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QAEngineEnable()

TQAError QAEngineEnable ( long  vendorID,
long  engineID 
)

QAEngineEnable()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QAEngineGestalt()

TQAError QAEngineGestalt ( const TQAEngine *  engine,
TQAGestaltSelector  selector,
void *  response 
)

QAEngineGestalt()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QATextureBindColorTable()

TQAError QATextureBindColorTable ( const TQAEngine *  engine,
TQATexture *  texture,
TQAColorTable *  colorTable 
)

QATextureBindColorTable()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QATextureDelete()

void QATextureDelete ( const TQAEngine *  engine,
TQATexture *  texture 
)

QATextureDelete()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QATextureDetach()

TQAError QATextureDetach ( const TQAEngine *  engine,
TQATexture *  texture 
)

QATextureDetach()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ QATextureNew()

TQAError QATextureNew ( const TQAEngine *  engine,
unsigned long  flags,
TQAImagePixelType  pixelType,
const TQAImage  images[],
TQATexture **  newTexture 
)

QATextureNew()

Availability:

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available