summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/d3d/D3DHAL.H
blob: 2496d164e5cbc0e21f083ea84b81d9647dddafcc (plain)
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
/*===========================================================================*/
/*                                                                           */
/* Mesa-3.0 DirectX 6 Driver                                                 */
/*                                                                           */
/* By Leigh McRae                                                            */
/*                                                                           */
/* http://www.altsoftware.com/                                               */
/*                                                                           */
/* Copyright (c) 1999-1998  alt.software inc.  All Rights Reserved           */
/*===========================================================================*/
#ifndef _D3D_HAL_INC
#define _D3D_HAL_INC
   
/*===========================================================================*/
/* Includes.                                                                 */
/*===========================================================================*/
#include <windows.h>
#include <ddraw.h>
#include <d3d.h>
#include <stdlib.h>
#include <time.h>
#include "D3DShared.h"
#include "D3DTextureMgr.h"
#include "Debug.h"
/*===========================================================================*/
/* Defines.                                                                  */
/*===========================================================================*/
#define	DX_RESTORE(ps)			if ( (ps) && (ps)->IsLost() ) (ps)->Restore();
/*===========================================================================*/
/* Type defines.                                                             */
/*===========================================================================*/
typedef struct _d3d_hal_struct
{
  MESAD3DSHARED		shared;

  GUID				guid;
  LPDIRECTDRAW  		lpDD;
  LPDIRECTDRAW4        	lpDD4;
  LPDIRECT3D3          	lpD3D3;
  LPDIRECT3DDEVICE3    	lpD3DDevice;
  D3DDEVICEDESC 	 	D3DHWDevDesc;
  LPDIRECTDRAWSURFACE4 	lpDDSPrimary,
                         lpDDSRender,
                         lpDDSZbuffer;
  LPDIRECT3DVIEWPORT3  	lpViewport;
  LPDIRECTDRAWCLIPPER	lpClipper;
  DDPIXELFORMAT        	ddpf,
                         ddpfZBuffer;
  PTM_OBJECT           	pTMList;

} MESAD3DHAL, *PMESAD3DHAL;
/*===========================================================================*/
/* External function prototypes.                                             */
/*===========================================================================*/
extern BOOL InitTMgrHAL( PMESAD3DHAL pHAL );
extern void TermTMgrHAL( PMESAD3DHAL pHAL );
extern void AlphaBlendTableHAL( PMESAD3DHAL pHAL );

extern void Solve8BitChannelPixelFormat( DDPIXELFORMAT *pddpf, PPIXELINFO pPixel );
extern char *ErrorStringD3D( HRESULT hr );
extern void  FatalShutDown( PMESAD3DHAL pHAL );
/*===========================================================================*/
/* Global variables.                                                         */
/*===========================================================================*/
extern char	*errorMsg;

#endif