You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2324 lines
55 KiB
2324 lines
55 KiB
//+-------------------------------------------------------------------------
|
|
//
|
|
// Microsoft Windows
|
|
//
|
|
// Copyright (C) Microsoft Corporation, 1998 - 1999
|
|
//
|
|
// File: directxstruct.idl
|
|
//
|
|
//--------------------------------------------------------------------------
|
|
|
|
// Direct.idl : IDL source for Direct.dll
|
|
// +++++++++++++++++++++++++++++++++++++
|
|
// This file will be processed by the MIDL tool to
|
|
// produce the type library (Direct.tlb) and marshalling code.
|
|
//
|
|
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
|
|
|
|
|
|
|
///////////////////////////////////////////////////////////
|
|
// General Types
|
|
|
|
#ifdef C_ONLY
|
|
|
|
#define DXDRIVERINFO DxDriverInfo
|
|
#define DXDRIVERINFOEX DxDriverInfoEx
|
|
#define RECT Rect
|
|
#define DXGUID DxGuid
|
|
#define DPAPPLICATIONDESC2 DpApplicationDesc2
|
|
#define DIRECTXREGISTERAPP DirectXRegisterApp
|
|
#define PALETTEENTRY PaletteEntry
|
|
|
|
#define D3DRECT D3dRect
|
|
#define D3DROTATION D3dRotation
|
|
#define D3DVECTOR D3dVector
|
|
#define D3DCOLORVALUE D3dColorValue
|
|
#define D3DHVERTEX D3dHVertex
|
|
#define D3DTLVERTEX D3dTLVertex
|
|
#define D3DLVERTEX D3dLVertex
|
|
#define D3DVERTEX D3dVertex
|
|
#define DXVERTEX DxVertex
|
|
#define D3DCLIPSTATUS D3dClipStatus
|
|
#define D3DVIEWPORT D3dViewport
|
|
#define D3DVIEWPORT2 D3dViewport2
|
|
#define D3DVIEWPORT7 D3dViewport7
|
|
#define D3DLIGHTINGCAPS D3dLightingCaps
|
|
#define D3DPRIMCAPS D3dPrimCaps
|
|
#define D3DDEVICEDESC D3dDeviceDesc
|
|
//#define D3DFINDDEVICERESULT D3dFindDeviceResult
|
|
//#define D3DFINDDEVICERESULT2 D3dFindDeviceResult2
|
|
#define D3DMATERIAL D3dMaterial
|
|
#define D3DMATERIAL7 D3dMaterial7
|
|
#define D3DLIGHT2 D3dLight2
|
|
#define D3DLIGHT7 D3dLight7
|
|
#define D3DMATRIX D3dMatrix
|
|
#define D3DRMRAY D3dRMRay
|
|
#define D3DSTATUS D3dStatus
|
|
#define D3DDEVINFO_TEXTUREMANAGER D3dDevInfo_TextureManager
|
|
#define D3DSTATS D3dStats
|
|
#define D3DTRANSFORMDATA D3dTransFormData
|
|
#define D3DLIGHTDATA D3dLightData
|
|
#define D3DRMQUATERNION D3dRMQuaternion
|
|
#define D3DRMVECTOR4D D3dRMVector4d
|
|
#define D3DRMBOX D3dRMBox
|
|
#define D3DRMPICKDESC D3dRMPickDesc
|
|
#define D3DRMPICKDESC2 D3dRMPickDesc2
|
|
#define D3DRMIMAGE D3dRMImage
|
|
#define D3DRMVERTEX D3dRMVertex
|
|
#define D3DVERTEXBUFFERDESC D3dVertexBufferDesc
|
|
#define D3DRMMATERIALOVERRIDE D3dMaterialOverride
|
|
|
|
|
|
#define DDCOLORKEY DDColorKey
|
|
#define DDSCAPS DDSCaps
|
|
#define DDPIXELFORMAT DDPixelFormat
|
|
#define DDSURFACEDESC2 DDSurfaceDesc2
|
|
#define DDCAPS DDCaps
|
|
#define DDCAPS2 DDCaps2
|
|
#define DDSCAPS2 DDSCaps2
|
|
#define DDBLTFX DDBltFx
|
|
#define DDVIDEOPORTINFO DDVideoPortInfo
|
|
#define DDCOLORCONTROL DDColorControl
|
|
#define DDGAMMARAMP DDGammaRamp
|
|
#define DDVIDEOPORTBANDWIDTH DDVideoPortBandWidth
|
|
#define DDVIDEOPORTCAPS DDVideoPortCaps
|
|
#define DDVIDEOPORTDESC DDVideoPortDesc
|
|
#define DDVIDEOPORTINFO DDVideoPortInfo
|
|
#define DDVIDEOPORTCONNECT DDVideoPortConnect
|
|
|
|
|
|
#define DSBCAPS DSBCaps
|
|
#define DSCAPS DSCaps
|
|
#define WAVEFORMATEX WaveFormatex
|
|
#define DSBUFFERDESC DSBufferDesc
|
|
#define DSCURSORS DSCursors
|
|
#define DSRESOURCEDESC DSResourceDesc
|
|
#define DS3DBUFFER DS3dBuffer
|
|
#define DS3DLISTENER DS3dListener
|
|
#define DSCBCAPS DSCBCaps
|
|
#define DSCCAPS DSCCaps
|
|
#define DSCBUFFERDESC DSCBufferDesc
|
|
#define DSBPOSITIONNOTIFY DSBPositionNotify
|
|
|
|
#define DPCHAT DPChat
|
|
#define DPCOMPOUNDADDRESSELEMENT DPCompoundAddressElement
|
|
#define DPCREDENTIALS DPCredentials
|
|
#define DPSECURITYDESC DPSecurityDesc
|
|
#define DPSESSIONDESC2 DPSessionDesc2
|
|
#define DPLAPPINFO DPLAppInfo
|
|
#define DPPLAYERIDS DPPlayerIds
|
|
#define DPCAPS DPCaps
|
|
#define DPPLAYERINFO DPPlayerInfo
|
|
#define DPSERVICEPROVIDERINFO DPServiceProviderInfo
|
|
#define DPCONNECTION DPConnection
|
|
#define DPSERVICEPROVIDER DPServiceProvider
|
|
|
|
#define DIDEVCAPS DIDevCaps
|
|
#define DIDEVICEOBJECTDATA DIDeviceObjectData
|
|
#define DIDEVICEINSTANCE DIDeviceInstance
|
|
#define DIDEVICEOBJECTINSTANCE DIDeviceObjectInstance
|
|
//#define DICONDITION DICondition
|
|
#define DIPROPERTY DIProperty
|
|
#define DIENVELOPE DIEvelope
|
|
#define DICUSTOMFORCE DICustomForce
|
|
#define DIPERIODIC DIPeriodic
|
|
#define DICONSTANCEFORCE DIConstantForce
|
|
#define DIRAMPFORCE DIRampForce
|
|
#define DIEFFECT DIEffect
|
|
#define DIEFFESCAPE DIEffEscape
|
|
#define DIEFFECTINFO DIEffectInfo
|
|
#define DIOBJECTDATAFORMAT DIObjectDataFormat
|
|
#define DIDATAFORMAT DIDataFormat
|
|
#define DIMOUSESTATE DIMouseState
|
|
#define DIKEYBOARDSTATE DIKeyboardState
|
|
#define DIJOYSTATE DIJoyState
|
|
#define DIJOYSTATE2 DIJoyState2
|
|
|
|
#define D3DDEVICEDESC7 D3dDeviceDesc7
|
|
//#define D3DFINDDEVICERESULT7 D3dFindDeviceResult7
|
|
|
|
|
|
#define d3dLightCapsFlags long
|
|
#define d3dLightingModelFlags long
|
|
#define d3dCapsMisc long
|
|
#define d3dCapsRaster long
|
|
#define d3dCapsCmp long
|
|
#define d3dCapsBlend long
|
|
#define d3dCapsTexture long
|
|
#define d3dCapsShade long
|
|
#define d3dCapsTextureFilter long
|
|
//#define d3dCapsTextureBlend long
|
|
#define d3dCapsTextureAddress long
|
|
#define d3dDeviceDescFlags long
|
|
#define d3dColorModel long
|
|
#define d3dDeviceDescCaps long
|
|
#define d3dTransformCaps long
|
|
#define d3dStencilCapsFlags long
|
|
#define d3dFVFCapsFlags long
|
|
#define d3dTexOpCapsFlags long
|
|
#define d3dLightFlags long
|
|
#define d3dSetStatusFlags long
|
|
#define d3dClipFlags long
|
|
#define d3dClipStatusFlags long
|
|
//#define d3dFindDeviceSearchFlags long
|
|
#define ddSurfaceCapsFlags long
|
|
#define ddSurfaceCaps2Flags long
|
|
#define ddPixelFormatFlags long
|
|
#define ddSurfaceDescFlags long
|
|
#define ddSurfaceCapsFlags long
|
|
#define ddCaps1Flags long
|
|
#define ddCaps2Flags long
|
|
#define ddCKeyCapsFlags long
|
|
#define ddFXCapsFlags long
|
|
#define ddFXAlphaCapsFlags long
|
|
#define ddPCapsFlags long
|
|
#define ddStereoCapsFlags long
|
|
#define ddBltFXFlags long
|
|
#define ddColorFlags long
|
|
#define d3dVBCapsFlags long
|
|
#define d3dFVFFlags long
|
|
#define dsbCapsFlags long
|
|
#define dsCapsFlags long
|
|
#define ds3dModeFlags long
|
|
#define dscbCapsFlags long
|
|
#define dscCapsFlags long
|
|
#define WaveFormatFlags long
|
|
#define dpSessionFlags long
|
|
#define dpCapsFlags long
|
|
#define dpPlayerTypeFlags long
|
|
#define diDevCapsFlags long
|
|
#define diDeviceType long
|
|
#define diDFTFlags long
|
|
#define diDeviceObjInstanceFlags long
|
|
#define d3drmPMeshStatusFlags long
|
|
#define d3drmMaterialOverrideFlags long
|
|
#define dBoolFlags long
|
|
#define diCommonDataFormats long
|
|
#define diDataFormatFlags long
|
|
#define ddOverFxFlags long
|
|
#define diConditionFlags long
|
|
|
|
|
|
#define CONST_DMUS_PC_CLASS long
|
|
#define CONST_DMUS_PC_FLAGS long
|
|
#define CONST_DMUS_PORT_TYPE long
|
|
#define CONST_DMUS_PORTPARAMS_FLAGS long
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
// New types
|
|
|
|
|
|
#ifdef C_ONLY
|
|
typedef struct DXDRIVERINFO
|
|
{
|
|
BSTR strGuid;
|
|
BSTR strDescription;
|
|
BSTR strName;
|
|
|
|
} DXDRIVERINFO;
|
|
|
|
typedef struct DXDRIVERINFOEX
|
|
{
|
|
BSTR strGuid;
|
|
BSTR strDescription;
|
|
BSTR strName;
|
|
long hMonitor;
|
|
} DXDRIVERINFOEX;
|
|
|
|
typedef struct RECT
|
|
{
|
|
long left;
|
|
long top;
|
|
long right;
|
|
long bottom;
|
|
} RECT;
|
|
|
|
#else
|
|
[helpcontext(400100)]
|
|
typedef struct RECT
|
|
{
|
|
long Left;
|
|
long Top;
|
|
long Right;
|
|
long Bottom;
|
|
} RECT;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
[hidden]
|
|
typedef struct DXGUID {
|
|
long data1;
|
|
short data2;
|
|
short data3;
|
|
Byte data4[8];
|
|
} DXGUID;
|
|
|
|
|
|
[helpcontext(400200)]
|
|
typedef struct DPAPPLICATIONDESC2
|
|
{
|
|
long lFlags;
|
|
BSTR strApplicationName;
|
|
BSTR strGuid;
|
|
BSTR strFilename;
|
|
BSTR strCommandLine;
|
|
BSTR strPath;
|
|
BSTR strCurrentDirectory;
|
|
BSTR strDescription;
|
|
BSTR strAppLauncherName;
|
|
} DPAPPLICATIONDESC2;
|
|
|
|
[helpcontext(400300)]
|
|
typedef struct DIRECTXREGISTERAPP
|
|
{
|
|
long lFlags;
|
|
BSTR strApplicationName;
|
|
BSTR strGuid;
|
|
BSTR strFilename;
|
|
BSTR strCommandLine;
|
|
BSTR strPath;
|
|
BSTR strCurrentDirectory;
|
|
} DIRECTXREGISTERAPP;
|
|
|
|
[helpcontext(400400)]
|
|
typedef struct PALETTEENTRY
|
|
{
|
|
Byte red;
|
|
Byte green;
|
|
Byte blue;
|
|
Byte flags;
|
|
} PALETTEENTRY;
|
|
|
|
//
|
|
// D3D Types
|
|
//
|
|
[helpcontext(400500)]
|
|
typedef struct D3DRECT {
|
|
long x1;
|
|
long y1;
|
|
long x2;
|
|
long y2;
|
|
} D3DRECT;
|
|
|
|
|
|
// not needed according to shanee
|
|
// typedef struct D3DROTATION {
|
|
// float x;
|
|
// float y;
|
|
// float z;
|
|
// float t;
|
|
// } D3DROTATION;
|
|
|
|
[helpcontext(400600)]
|
|
typedef struct D3DVECTOR {
|
|
float x;
|
|
float y;
|
|
float z;
|
|
} D3DVECTOR;
|
|
|
|
[helpcontext(400700)]
|
|
typedef struct D3DCOLORVALUE {
|
|
float r;
|
|
float g;
|
|
float b;
|
|
float a;
|
|
} D3DCOLORVALUE;
|
|
|
|
[helpcontext(400800)]
|
|
typedef struct D3DLINEPATTERN {
|
|
long repeatFactor;
|
|
long linePatern;
|
|
} D3DLINEPATTERN;
|
|
|
|
[helpcontext(400900)]
|
|
typedef struct D3DTLVERTEX {
|
|
float sx; /* Screen coordinates */
|
|
float sy;
|
|
float sz;
|
|
float rhw; /* Reciprocal of homogeneous w */
|
|
long color; /* Vertex color */
|
|
long specular; /* Specular component of vertex */
|
|
float tu; /* Texture coordinates */
|
|
float tv;
|
|
} D3DTLVERTEX;
|
|
|
|
|
|
[helpcontext(401000)]
|
|
typedef struct D3DLVERTEX {
|
|
float x; /* Homogeneous coordinates */
|
|
float y;
|
|
float z;
|
|
[hidden] long reserved;
|
|
long color; /* Vertex color */
|
|
long specular; /* Specular component of vertex */
|
|
float tu; /* Texture coordinates */
|
|
float tv;
|
|
} D3DLVERTEX;
|
|
|
|
|
|
[helpcontext(401100)]
|
|
typedef struct D3DVERTEX {
|
|
float x; /* Homogeneous coordinates */
|
|
float y;
|
|
float z;
|
|
float nx; /* Normal */
|
|
float ny;
|
|
float nz;
|
|
float tu; /* Texture coordinates */
|
|
float tv;
|
|
} D3DVERTEX;
|
|
|
|
|
|
|
|
|
|
[helpcontext(401200)]
|
|
typedef struct D3DCLIPSTATUS {
|
|
d3dClipStatusFlags lFlags;
|
|
d3dClipFlags lStatus;
|
|
float minx, maxx;
|
|
float miny, maxy;
|
|
float minz, maxz;
|
|
} D3DCLIPSTATUS ;
|
|
|
|
|
|
|
|
|
|
[helpcontext(401300)]
|
|
typedef struct D3DVIEWPORT7 {
|
|
long lX;
|
|
long lY;
|
|
long lWidth;
|
|
long lHeight;
|
|
float minZ;
|
|
float maxZ;
|
|
} D3DVIEWPORT7;
|
|
|
|
|
|
|
|
|
|
[helpcontext(401400)]
|
|
typedef struct D3DLIGHTINGCAPS {
|
|
[hidden] long lSize;
|
|
d3dLightCapsFlags lCaps;
|
|
d3dLightingModelFlags lLightingModel;
|
|
long lNumLights;
|
|
} D3DLIGHTINGCAPS;
|
|
|
|
|
|
[helpcontext(401500)]
|
|
typedef struct D3DPRIMCAPS {
|
|
[hidden] long lSize; // size of structure
|
|
d3dCapsMisc lMiscCaps; // miscellaneous caps
|
|
d3dCapsRaster lRasterCaps; // raster caps
|
|
d3dCapsCmp lZCmpCaps; // z-comparison caps
|
|
d3dCapsBlend lSrcBlendCaps; // source blending caps
|
|
d3dCapsBlend lDestBlendCaps; // destination blending caps
|
|
d3dCapsCmp lAlphaCmpCaps; // alpha-test comparison caps
|
|
d3dCapsShade lShadeCaps; // shading caps
|
|
d3dCapsTexture lTextureCaps; // texture caps
|
|
d3dCapsTextureFilter lTextureFilterCaps; // texture filtering caps
|
|
//d3dCapsTextureBlend lTextureBlendCaps; // texture blending caps
|
|
long lReserved1;
|
|
d3dCapsTextureAddress lTextureAddressCaps; // texture addressing caps
|
|
long lStippleWidth; // stipple width
|
|
long lStippleHeight; // stipple height
|
|
} D3DPRIMCAPS;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#ifndef JAVA_ONLY
|
|
|
|
|
|
|
|
[helpcontext(401600)]
|
|
typedef struct D3DDEVICEDESC7
|
|
{
|
|
d3dDeviceDescCaps lDevCaps;
|
|
D3DPRIMCAPS dpcLineCaps;
|
|
D3DPRIMCAPS dpcTriCaps;
|
|
|
|
long lDeviceRenderBitDepth;
|
|
long lDeviceZBufferBitDepth;
|
|
|
|
long lMinTextureWidth,lMinTextureHeight;
|
|
long lMaxTextureWidth,lMaxTextureHeight;
|
|
|
|
long lMaxTextureRepeat;
|
|
long lMaxTextureAspectRatio;
|
|
long lMaxAnisotropy;
|
|
|
|
float dvGuardBandLeft;
|
|
float dvGuardBandTop;
|
|
float dvGuardBandRight;
|
|
float dvGuardBandBottom;
|
|
|
|
float dvExtentsAdjust;
|
|
d3dStencilCapsFlags lStencilCaps;
|
|
|
|
d3dFVFCapsFlags lFVFCaps;
|
|
d3dTexOpCapsFlags lTextureOpCaps;
|
|
short nMaxTextureBlendStages;
|
|
short nMaxSimultaneousTextures;
|
|
|
|
long lMaxActiveLights;
|
|
float dvMaxVertexW;
|
|
|
|
|
|
[hidden] DXGUID deviceGuid;
|
|
|
|
short nMaxUserClipPlanes;
|
|
short nMaxVertexBlendMatrices;
|
|
d3dVTXPCapsFlags lVertexProcessingCaps;
|
|
|
|
[hidden] long lReserved1;
|
|
[hidden] long lReserved2;
|
|
[hidden] long lReserved3;
|
|
[hidden] long lReserved4;
|
|
|
|
|
|
|
|
} D3DDEVICEDESC7;
|
|
#else
|
|
|
|
typedef struct D3DDEVICEDESC7
|
|
{
|
|
long lDevCaps;
|
|
|
|
[hidden] long dpcLineCaps_lSize; // size of structure
|
|
long dpcLineCaps_lMiscCaps; // miscellaneous caps
|
|
long dpcLineCaps_lRasterCaps; // raster caps
|
|
long dpcLineCaps_lZCmpCaps; // z-comparison caps
|
|
long dpcLineCaps_lSrcBlendCaps; // source blending caps
|
|
long dpcLineCaps_lDestBlendCaps; // destination blending caps
|
|
long dpcLineCaps_lAlphaCmpCaps; // alpha-test comparison caps
|
|
long dpcLineCaps_lShadeCaps; // shading caps
|
|
long dpcLineCaps_lTextureCaps; // texture caps
|
|
long dpcLineCaps_lTextureFilterCaps; // texture filtering caps
|
|
long dpcLineCaps_lTextureBlendCaps; // texture blending caps
|
|
long dpcLineCaps_lTextureAddressCaps; // texture addressing caps
|
|
long dpcLineCaps_lStippleWidth; // stipple width
|
|
long dpcLineCaps_lStippleHeight; // stipple height
|
|
|
|
[hidden] long dpcTriCaps_lSize; // size of structure
|
|
long dpcTriCaps_lMiscCaps; // miscellaneous caps
|
|
long dpcTriCaps_lRasterCaps; // raster caps
|
|
long dpcTriCaps_lZCmpCaps; // z-comparison caps
|
|
long dpcTriCaps_lSrcBlendCaps; // source blending caps
|
|
long dpcTriCaps_lDestBlendCaps; // destination blending caps
|
|
long dpcTriCaps_lAlphaCmpCaps; // alpha-test comparison caps
|
|
long dpcTriCaps_lShadeCaps; // shading caps
|
|
long dpcTriCaps_lTextureCaps; // texture caps
|
|
long dpcTriCaps_lTextureFilterCaps; // texture filtering caps
|
|
long dpcTriCaps_lTextureBlendCaps; // texture blending caps
|
|
long dpcTriCaps_lTextureAddressCaps; // texture addressing caps
|
|
long dpcTriCaps_lStippleWidth; // stipple width
|
|
long dpcTriCaps_lStippleHeight; // stipple height
|
|
|
|
|
|
long lDeviceRenderBitDepth;
|
|
long lDeviceZBufferBitDepth;
|
|
|
|
long lMinTextureWidth,lMinTextureHeight;
|
|
long lMaxTextureWidth,lMaxTextureHeight;
|
|
|
|
long lMaxTextureRepeat;
|
|
long lMaxTextureAspectRatio;
|
|
long lMaxAnisotropy;
|
|
|
|
float dvGuardBandLeft;
|
|
float dvGuardBandTop;
|
|
float dvGuardBandRight;
|
|
float dvGuardBandBottom;
|
|
|
|
float dvExtentsAdjust;
|
|
d3dStencilCapsFlags lStencilCaps;
|
|
|
|
d3dFVFCapsFlags lFVFCaps;
|
|
d3dTexOpCapsFlags lTextureOpCaps;
|
|
short nMaxTextureBlendStages;
|
|
short nMaxSimultaneousTextures;
|
|
|
|
long lMaxActiveLights;
|
|
float dvMaxVertexW;
|
|
|
|
|
|
[hidden] DXGUID deviceGuid;
|
|
|
|
short nMaxUserClipPlanes;
|
|
short nMaxVertexBlendMatrices;
|
|
d3dVTXCapsFlags lVertexProcessingCaps;
|
|
|
|
[hidden] long lReserved1;
|
|
[hidden] long lReserved2;
|
|
[hidden] long lReserved3;
|
|
[hidden] long lReserved4;
|
|
|
|
|
|
} D3DDEVICEDESC7;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#ifndef JAVA_ONLY
|
|
[helpcontext(401700)]
|
|
typedef struct D3DMATERIAL7 {
|
|
D3DCOLORVALUE diffuse;
|
|
D3DCOLORVALUE ambient;
|
|
D3DCOLORVALUE specular;
|
|
D3DCOLORVALUE emissive;
|
|
float power;
|
|
} D3DMATERIAL7;
|
|
#else
|
|
typedef struct D3DMATERIAL7 {
|
|
float diffuse_r; //d3dColorValue
|
|
float diffuse_g;
|
|
float diffuse_b;
|
|
float diffuse_a;
|
|
float ambient_r; //D3DCOLORVALUE
|
|
float ambient_g;
|
|
float ambient_b;
|
|
float ambient_a;
|
|
float specular_r; //D3DCOLORVALUE
|
|
float specular_g;
|
|
float specular_b;
|
|
float specular_a;
|
|
float emissive_r; //D3DCOLORVALUE
|
|
float emissive_g;
|
|
float emissive_b;
|
|
float emissive_a;
|
|
float power;
|
|
} D3DMATERIAL7;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#ifndef JAVA_ONLY
|
|
|
|
[helpcontext(401800)]
|
|
typedef struct D3DLIGHT7 {
|
|
d3dLightType dltType;
|
|
D3DCOLORVALUE diffuse;
|
|
D3DCOLORVALUE specular;
|
|
D3DCOLORVALUE ambient;
|
|
D3DVECTOR position;
|
|
D3DVECTOR direction;
|
|
float range;
|
|
float falloff;
|
|
float attenuation0;
|
|
float attenuation1;
|
|
float attenuation2;
|
|
float theta;
|
|
float phi;
|
|
} D3DLIGHT7 ;
|
|
|
|
|
|
#else
|
|
|
|
|
|
typedef struct D3DLIGHT7 {
|
|
d3dLightType dltType;
|
|
|
|
float diffuse_r; //D3DCOLORVALUE
|
|
float diffuse_g; //D3DCOLORVALUE
|
|
float diffuse_b; //D3DCOLORVALUE
|
|
float diffuse_a; //D3DCOLORVALUE
|
|
|
|
|
|
float specular_r; //D3DCOLORVALUE
|
|
float specular_g; //D3DCOLORVALUE
|
|
float specular_b; //D3DCOLORVALUE
|
|
float specular_a; //D3DCOLORVALUE
|
|
|
|
|
|
float ambient_r; //D3DCOLORVALUE
|
|
float ambient_g; //D3DCOLORVALUE
|
|
float ambient_b; //D3DCOLORVALUE
|
|
float ambient_a; //D3DCOLORVALUE
|
|
|
|
|
|
float position_x; //D3DVECTOR
|
|
float position_y;
|
|
float position_z;
|
|
float direction_x; //D3DVECTOR
|
|
float direction_y;
|
|
float direction_z;
|
|
float range;
|
|
float falloff;
|
|
float attenuation0;
|
|
float attenuation1;
|
|
float attenuation2;
|
|
float theta;
|
|
float phi;
|
|
d3dLightFlags lFlags;
|
|
} D3DLIGHT7 ;
|
|
#endif
|
|
|
|
|
|
|
|
|
|
[helpcontext(401900)]
|
|
typedef struct D3DMATRIX {
|
|
float rc11;
|
|
float rc12;
|
|
float rc13;
|
|
float rc14;
|
|
float rc21;
|
|
float rc22;
|
|
float rc23;
|
|
float rc24;
|
|
float rc31;
|
|
float rc32;
|
|
float rc33;
|
|
float rc34;
|
|
float rc41;
|
|
float rc42;
|
|
float rc43;
|
|
float rc44;
|
|
} D3DMATRIX;
|
|
|
|
#ifndef JAVA_ONLY
|
|
|
|
[helpcontext(402000)]
|
|
typedef struct D3DRMRAY
|
|
{ D3DVECTOR dir;
|
|
D3DVECTOR pos;
|
|
} D3DRMRAY;
|
|
#else
|
|
typedef struct D3DRMRAY
|
|
{ float dir_x;
|
|
float dir_y;
|
|
float dir_z;
|
|
float pos_x;
|
|
float pos_y;
|
|
float pos_z;
|
|
} D3DRMRAY;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////
|
|
// Direct 3D Retain Mode types
|
|
|
|
#ifndef JAVA_ONLY
|
|
|
|
[helpcontext(402100)]
|
|
typedef struct D3DRMQUATERNION
|
|
{
|
|
float s;
|
|
D3DVECTOR v;
|
|
} D3DRMQUATERNION;
|
|
#else
|
|
typedef struct D3DRMQUATERNION
|
|
{
|
|
float s;
|
|
float v_x;
|
|
float v_y;
|
|
float v_z;
|
|
} D3DRMQUATERNION;
|
|
#endif
|
|
|
|
|
|
[helpcontext(402200)]
|
|
typedef struct D3DRMVECTOR4D
|
|
{
|
|
float x;
|
|
float y;
|
|
float z;
|
|
float w;
|
|
} D3DRMVECTOR4D;
|
|
|
|
#ifndef JAVA_ONLY
|
|
|
|
|
|
|
|
[helpcontext(402300)]
|
|
typedef struct D3DRMBOX
|
|
{
|
|
D3DVECTOR min;
|
|
D3DVECTOR max;
|
|
} D3DRMBOX;
|
|
#else
|
|
typedef struct D3DRMBOX
|
|
{
|
|
float min_x; // replaces min - cant concat structures
|
|
float min_y;
|
|
float min_z;
|
|
|
|
float max_x; // replaces max - cant concat structures
|
|
float max_y;
|
|
float max_z;
|
|
} D3DRMBOX;
|
|
#endif
|
|
|
|
#ifndef JAVA_ONLY
|
|
|
|
|
|
[helpcontext(402400)]
|
|
typedef struct D3DRMPICKDESC
|
|
{
|
|
long lFaceIdx;
|
|
long lGroupIdx;
|
|
D3DVECTOR vPosition;
|
|
} D3DRMPICKDESC;
|
|
#else
|
|
|
|
typedef struct D3DRMPICKDESC
|
|
{
|
|
long lFaceIdx;
|
|
long lGroupIdx;
|
|
|
|
float vPosition_x; // replaces vPosition - cant concat structures
|
|
float vPosition_y;
|
|
float vPosition_z;
|
|
|
|
} D3DRMPICKDESC;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef JAVA_ONLY
|
|
|
|
|
|
[helpcontext(402500)]
|
|
typedef struct D3DRMPICKDESC2
|
|
{
|
|
|
|
long lFaceIdx;
|
|
long lGroupIdx;
|
|
D3DVECTOR vPostion;
|
|
float tu;
|
|
float tv;
|
|
D3DVECTOR vNormal;
|
|
long color;
|
|
} D3DRMPICKDESC2;
|
|
#else
|
|
typedef struct D3DRMPICKDESC2
|
|
{
|
|
long lFaceIdx;
|
|
long lGroupIdx;
|
|
float vPostion_x;
|
|
float vPostion_y;
|
|
float vPostion_z;
|
|
float tu;
|
|
float tv;
|
|
float vNormal_x;
|
|
float vNormal_y;
|
|
float vNormal_z;
|
|
long color;
|
|
} D3DRMPICKDESC2;
|
|
|
|
#endif
|
|
|
|
|
|
#ifndef JAVA_ONLY
|
|
|
|
|
|
|
|
[helpcontext(402600)]
|
|
typedef struct D3DRMVERTEX
|
|
{
|
|
D3DVECTOR position;
|
|
D3DVECTOR normal;
|
|
float tu;
|
|
float tv;
|
|
long color;
|
|
} D3DRMVERTEX;
|
|
|
|
#else
|
|
|
|
|
|
typedef struct D3DRMVERTEX
|
|
{
|
|
float position_x; //x position
|
|
float position_y; //y
|
|
float position_z; //z
|
|
float normal_x; //x normal
|
|
float normal_y; //y
|
|
float normal_z; //z
|
|
float tu;
|
|
float tv;
|
|
long color;
|
|
} D3DRMVERTEX;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
///////////////////////////////////////////////////////////////
|
|
//
|
|
// Direct Draw Types
|
|
//
|
|
///////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
[helpcontext(402700)]
|
|
typedef struct DDCOLORKEY {
|
|
long low;
|
|
long high;
|
|
} DDCOLORKEY;
|
|
|
|
|
|
|
|
[helpcontext(402800)]
|
|
typedef struct DDSCAPS2 {
|
|
ddSurfaceCapsFlags lCaps;
|
|
ddSurfaceCaps2Flags lCaps2;
|
|
long lCaps3;
|
|
long lCaps4;
|
|
} DDSCAPS2;
|
|
|
|
|
|
|
|
|
|
|
|
[helpcontext(402900)]
|
|
typedef struct DDPIXELFORMAT
|
|
{
|
|
[hidden]long lSize; //private
|
|
|
|
ddPixelFormatFlags lFlags;
|
|
long lFourCC;
|
|
[hidden] long internalVal1;
|
|
|
|
// union { DWORD dwRGBBitCount;
|
|
// DWORD dwYUVBitCount;
|
|
// DWORD dwZBufferBitDepth;
|
|
// DWORD dwAlphaBitDepth;
|
|
// DWORD dwLuminanceBitCount; // new for DirectX 6.0
|
|
// DWORD dwBumpBitCount; // new for DirectX 6.0}
|
|
[hidden] long internalVal2;
|
|
// union DWORD dwRBitMask;
|
|
//DWORD dwYBitMask;
|
|
//DWORD dwStencilBitDepth; // new for DirectX 6.0
|
|
//DWORD dwLuminanceBitMask; // new for DirectX 6.0
|
|
//DWORD dwBumpDuBitMask; // new for DirectX 6.0
|
|
//} DUMMYUNIONNAMEN(2);
|
|
[hidden] long internalVal3;
|
|
//union { DWORD dwGBitMask;
|
|
// DWORD dwUBitMask;
|
|
// DWORD dwZBitMask; // new for DirectX 6.0
|
|
// DWORD dwBumpDvBitMask; // new for DirectX 6.0
|
|
//} DUMMYUNIONNAMEN(3);
|
|
[hidden] long internalVal4;
|
|
// union { DWORD dwBBitMask;
|
|
// DWORD dwVBitMask;
|
|
// DWORD dwStencilBitMask; // new for DirectX 6.0
|
|
// DWORD dwBumpLuminanceBitMask; // new for DirectX 6.0
|
|
// } DUMMYUNIONNAMEN(4);
|
|
[hidden] long internalVal5;
|
|
//union { DWORD dwRGBAlphaBitMask;
|
|
// DWORD dwYUVAlphaBitMask;
|
|
// DWORD dwLuminanceAlphaBitMask; // new for DirectX 6.0
|
|
// DWORD dwRGBZBitMask;
|
|
// DWORD dwYUVZBitMask;
|
|
//} DUMMYUNIONNAMEN(5);
|
|
|
|
|
|
//union for internalVal1
|
|
long lRGBBitCount;
|
|
long lYUVBitCount;
|
|
long lZBufferBitDepth;
|
|
long lAlphaBitDepth;
|
|
long lLuminanceBitCount;
|
|
long lBumpBitCount;
|
|
|
|
// union for internalVal2
|
|
long lRBitMask;
|
|
long lYBitMask;
|
|
long lStencilBitDepth;
|
|
long lLuminanceBitMask;
|
|
long lBumpDuBitMask;
|
|
|
|
// union for internalVal3
|
|
long lGBitMask;
|
|
long lUBitMask;
|
|
long lZBitMask;
|
|
long lBumpDvBitMask;
|
|
|
|
// union for internalVal4
|
|
long lBBitMask;
|
|
long lVBitMask;
|
|
long lStencilBitMask;
|
|
long lBumpLuminanceBitMask;
|
|
|
|
// union for internalVal5
|
|
long lRGBAlphaBitMask;
|
|
long lYUVAlphaBitMask;
|
|
long lLuminanceAlphaBitMask; // new for DirectX 6.0
|
|
long lRGBZBitMask;
|
|
long lYUVZBitMask;
|
|
|
|
|
|
} DDPIXELFORMAT;
|
|
|
|
|
|
#ifndef JAVA_ONLY
|
|
|
|
[helpcontext(403000)]
|
|
typedef struct DDSURFACEDESC2 {
|
|
[hidden] long lSize;
|
|
ddSurfaceDescFlags lFlags;
|
|
long lHeight;
|
|
long lWidth;
|
|
long lPitch; //union with lLinearSize
|
|
long lBackBufferCount;
|
|
long lZBufferBitDepth; //union with lMipMapCount and lRefreshRate
|
|
long lAlphaBitDepth;
|
|
[hidden]long lReserved;
|
|
[hidden]long lpSurface;
|
|
DDCOLORKEY ddckCKDestOverlay;
|
|
DDCOLORKEY ddckCKDestBlt;
|
|
DDCOLORKEY ddckCKSrcOverlay;
|
|
DDCOLORKEY ddckCKSrcBlt;
|
|
DDPIXELFORMAT ddpfPixelFormat;
|
|
DDSCAPS2 ddsCaps;
|
|
long lTextureStage;
|
|
long lLinearSize;
|
|
long lMipMapCount;
|
|
long lRefreshRate;
|
|
} DDSURFACEDESC2;
|
|
#else
|
|
|
|
typedef struct DDSURFACEDESC2 {
|
|
[hidden] long lSize;
|
|
ddSurfaceDescFlags lFlags;
|
|
long lHeight;
|
|
long lWidth;
|
|
long lPitch; //union with lLinearSize
|
|
long lBackBufferCount;
|
|
long lZBufferBitDepth; //union with lMipMapCount and lRefreshRate
|
|
long lAlphaBitDepth;
|
|
long lReserved;
|
|
[hidden] long lpSurface;
|
|
long ddckCKDestOverlay_low;
|
|
long ddckCKDestOverlay_high;
|
|
long ddckCKDestBlt_low;
|
|
long ddckCKDestBlt_high;
|
|
long ddckCKSrcOverlay_low;
|
|
long ddckCKSrcOverlay_high;
|
|
long ddckCKSrcBlt_low;
|
|
long ddckCKSrcBlt_high;
|
|
|
|
[hidden]long ddpfPixelFormat_lSize; //private
|
|
|
|
long ddpfPixelFormat_lFlags;
|
|
long ddpfPixelFormat_lFourCC;
|
|
|
|
long ddpfPixelFormat_internalVal1;
|
|
long ddpfPixelFormat_internalVal2;
|
|
long ddpfPixelFormat_internalVal3;
|
|
long ddpfPixelFormat_internalVal4;
|
|
long ddpfPixelFormat_internalVal5;
|
|
|
|
//union for internalVal1
|
|
long ddpfPixelFormat_lRGBBitCount;
|
|
long ddpfPixelFormat_lYUVBitCount;
|
|
long ddpfPixelFormat_lZBufferBitDepth;
|
|
long ddpfPixelFormat_lAlphaBitDepth;
|
|
long ddpfPixelFormat_lLuminanceBitCount;
|
|
long ddpfPixelFormat_lBumpBitCount;
|
|
|
|
// union for internalVal2
|
|
long ddpfPixelFormat_lRBitMask;
|
|
long ddpfPixelFormat_lYBitMask;
|
|
long ddpfPixelFormat_lStencilBitDepth;
|
|
long ddpfPixelFormat_lLuminanceBitMask;
|
|
long ddpfPixelFormat_lBumpDiBitMask;
|
|
|
|
// union for internalVal3
|
|
long ddpfPixelFormat_lGBitMask;
|
|
long ddpfPixelFormat_lUBitMask;
|
|
long ddpfPixelFormat_lZBitMask;
|
|
long ddpfPixelFormat_lBumpDvBitMask;
|
|
|
|
// union for internalVal4
|
|
long ddpfPixelFormat_lBBitMask;
|
|
long ddpfPixelFormat_lVBitMask;
|
|
long ddpfPixelFormat_lStencilBitMask;
|
|
long ddpfPixelFormat_lBumpLuminanceBitMask;
|
|
|
|
// union for internalVal5
|
|
long ddpfPixelFormat_lRGBAlphaBitMask;
|
|
long ddpfPixelFormat_lYUVAlphaBitMask;
|
|
long ddpfPixelFormat_lLuminanceAlphaBitMask; // new for DirectX 6.0
|
|
long ddpfPixelFormat_lRGBZBitMask;
|
|
long ddpfPixelFormat_lYUVZBitMask;
|
|
|
|
|
|
ddSurfaceCapsFlags ddsCaps_lCaps;
|
|
ddSurfaceCaps2Flags ddsCaps_lCaps2;
|
|
long ddsCaps_lCaps3;
|
|
long ddsCaps_lCaps4;
|
|
long lTextureStage;
|
|
|
|
//unions
|
|
long lLinearSize;
|
|
long lMipMapCount;
|
|
long lRefreshRate;
|
|
|
|
} DDSURFACEDESC2;
|
|
#endif
|
|
|
|
|
|
|
|
[helpcontext(403100)]
|
|
typedef struct DDCAPS
|
|
{
|
|
[hidden]long lSize; //private
|
|
ddCaps1Flags lCaps;
|
|
ddCaps2Flags lCaps2;
|
|
ddCKeyCapsFlags lCKeyCaps;
|
|
ddFXCapsFlags lFXCaps;
|
|
[hidden] long lFXAlphaCaps;
|
|
ddPCapsFlags lPalCaps;
|
|
ddStereoCapsFlags lSVCaps;
|
|
long lAlphaBltConstBitDepths;
|
|
long lAlphaBltPixelBitDepths;
|
|
long lAlphaBltSurfaceBitDepths;
|
|
long lAlphaOverlayConstBitDepths;
|
|
long lAlphaOverlayPixelBitDepths;
|
|
long lAlphaOverlaySurfaceBitDepths;
|
|
long lZBufferBitDepths;
|
|
long lVidMemTotal;
|
|
long lVidMemFree;
|
|
long lMaxVisibleOverlays;
|
|
long lCurrVisibleOverlays;
|
|
long lNumFourCCCodes;
|
|
long lAlignBoundarySrc;
|
|
long lAlignSizeSrc;
|
|
long lAlignBoundaryDest;
|
|
long lAlignSizeDest;
|
|
long lAlignStrideAlign;
|
|
#ifndef JAVA_ONLY
|
|
long lRops[8];
|
|
#else
|
|
long lRops_0;
|
|
long lRops_1;
|
|
long lRops_2;
|
|
long lRops_3;
|
|
long lRops_4;
|
|
long lRops_5;
|
|
long lRops_6;
|
|
long lRops_7;
|
|
#endif
|
|
|
|
long lReservedCaps;
|
|
long lMinOverlayStretch;
|
|
long lMaxOverlayStretch;
|
|
long lMinLiveVideoStretch;
|
|
long lMaxLiveVideoStretch;
|
|
long lMinHwCodecStretch;
|
|
long lMaxHwCodecStretch;
|
|
long lReserved1;
|
|
long lReserved2;
|
|
long lReserved3;
|
|
|
|
ddCaps1Flags lSVBCaps;
|
|
ddCKeyCapsFlags lSVBCKeyCaps;
|
|
ddFXCapsFlags lSVBFXCaps; // .
|
|
|
|
#ifndef JAVA_ONLY
|
|
long lSVBRops[8];
|
|
#else
|
|
long lSVBRops_0;
|
|
long lSVBRops_1;
|
|
long lSVBRops_2;
|
|
long lSVBRops_3;
|
|
long lSVBRops_4;
|
|
long lSVBRops_5;
|
|
long lSVBRops_6;
|
|
long lSVBRops_7;
|
|
#endif
|
|
ddCaps1Flags lVSBCaps;
|
|
ddCKeyCapsFlags lVSBCKeyCaps;
|
|
ddFXCapsFlags lVSBFXCaps; // .
|
|
|
|
#ifndef JAVA_ONLY
|
|
long lVSRops[8];
|
|
#else
|
|
long lVSBRops_0;
|
|
long lVSBRops_1;
|
|
long lVSBRops_2;
|
|
long lVSBRops_3;
|
|
long lVSBRops_4;
|
|
long lVSBRops_5;
|
|
long lVSBRops_6;
|
|
long lVSBRops_7;
|
|
#endif
|
|
|
|
ddCaps1Flags lSSBCaps;
|
|
ddCKeyCapsFlags lSSBCKeyCaps;
|
|
ddFXCapsFlags lSSBFXCaps; // .
|
|
|
|
#ifndef JAVA_ONLY
|
|
long lSSBRops[8];
|
|
#else
|
|
long lSSBRops_0;
|
|
long lSSBRops_1;
|
|
long lSSBRops_2;
|
|
long lSSBRops_3;
|
|
long lSSBRops_4;
|
|
long lSSBRops_5;
|
|
long lSSBRops_6;
|
|
long lSSBRops_7;
|
|
#endif
|
|
long lMaxVideoPorts; // maximum number of live video ports
|
|
long lCurrVideoPorts; // current number of live video ports
|
|
ddCaps2Flags lSVBCaps2; // additional system-to-video blit caps
|
|
|
|
ddCaps1Flags lNLVBCaps; // nonlocal-to-local video memory blit caps
|
|
ddCaps2Flags lNLVBCaps2; // .
|
|
ddCKeyCapsFlags lNLVBCKeyCaps; // .
|
|
ddFXCapsFlags lNLVBFXCaps; // .
|
|
#ifndef JAVA_ONLY
|
|
long lNLVBRops[8];
|
|
#else
|
|
long lNLVBRops_0;
|
|
long lNLVBRops_1;
|
|
long lNLVBRops_2;
|
|
long lNLVBRops_3;
|
|
long lNLVBRops_4;
|
|
long lNLVBRops_5;
|
|
long lNLVBRops_6;
|
|
long lNLVBRops_7;
|
|
#endif
|
|
DDSCAPS2 ddsCaps;
|
|
} DDCAPS;
|
|
|
|
|
|
|
|
|
|
[helpcontext(403200)]
|
|
typedef struct DDBLTFX {
|
|
[hidden] long lSize; //private
|
|
ddBltFXFlags lDDFX;
|
|
long lROP;
|
|
long lDDROP;
|
|
long lRotationAngle;
|
|
long lZBufferOpCode;
|
|
long lZBufferLow;
|
|
long lZBufferHigh;
|
|
long lZBufferBaseDest;
|
|
long lZDestConstBitDepth;
|
|
long lZDestConst; //union with lpDDSZBufferDesc
|
|
long lZSrcConstBitDepth;
|
|
long lZSrcConst; //union with lpDDSZBufferSrc
|
|
long lAlphaEdgeBlendBitDepth;
|
|
long lAlphaEdgeBlend;
|
|
long lReserved; //private
|
|
long lAlphaDestConstBitDepth;
|
|
long lAlphaDestConst; //union with lpDDSAlphaDest
|
|
long lAlphaSrcConstBitDepth;
|
|
long lAlphaSrcConst; //union with lpDDSAlphaSrc
|
|
long lFill; //union with FillDepth and FillPixel
|
|
long ddckDestColorKey_low;
|
|
long ddckDestColorKey_high;
|
|
long ddckSrcColorKey_low;
|
|
long ddckSrcColorKey_high;
|
|
|
|
} DDBLTFX;
|
|
|
|
|
|
|
|
|
|
[helpcontext(403300)]
|
|
typedef struct DDCOLORCONTROL {
|
|
[hidden] long lSize;
|
|
ddColorFlags lFlags;
|
|
long lBrightness;
|
|
long lContrast;
|
|
long lHue;
|
|
long lSaturation;
|
|
long lSharpness;
|
|
long lGamma;
|
|
long lColorEnable;
|
|
long lReserved1;
|
|
} DDCOLORCONTROL;
|
|
|
|
|
|
[helpcontext(403400)]
|
|
typedef struct DDGAMMARAMP {
|
|
short red[256];
|
|
short green[256];
|
|
short blue[256];
|
|
} DDGAMMARAMP;
|
|
|
|
|
|
|
|
|
|
[helpcontext(403500)]
|
|
typedef struct D3DVERTEXBUFFERDESC {
|
|
|
|
[hidden] long lSize;
|
|
d3dVBCapsFlags lCaps;
|
|
d3dFVFFlags lFVF;
|
|
long lNumVertices;
|
|
} D3DVERTEXBUFFERDESC;
|
|
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////
|
|
// Direct Sound types
|
|
//////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
[helpcontext(403600)]
|
|
typedef struct DSBCAPS
|
|
{
|
|
[hidden] long lSize;
|
|
dsbCapsFlags lFlags;
|
|
long lBufferBytes;
|
|
long lUnlockTransferRate;
|
|
long lPlayCpuOverhead;
|
|
} DSBCAPS;
|
|
|
|
|
|
[helpcontext(403700)]
|
|
typedef struct DSCAPS {
|
|
[hidden] long lSize;
|
|
dsCapsFlags lFlags;
|
|
long lMinSecondarySampleRate;
|
|
long lMaxSecondarySampleRate;
|
|
long lPrimaryBuffers;
|
|
long lMaxHwMixingAllBuffers;
|
|
long lMaxHwMixingStaticBuffers;
|
|
long lMaxHwMixingStreamingBuffers;
|
|
long lFreeHwMixingAllBuffers;
|
|
long lFreeHwMixingStaticBuffers;
|
|
long lFreeHwMixingStreamingBuffers;
|
|
|
|
long lMaxHw3DAllBuffers;
|
|
long lMaxHw3DStaticBuffers;
|
|
long lMaxHw3DStreamingBuffers;
|
|
long lFreeHw3DAllBuffers;
|
|
long lFreeHw3DStaticBuffers;
|
|
long lFreeHw3DStreamingBuffers;
|
|
long lTotalHwMemBytes;
|
|
long lFreeHwMemBytes;
|
|
long lMaxContigFreeHwMemBytes;
|
|
long lUnlockTransferRateHwBuffers;
|
|
long lPlayCpuOverheadSwBuffers;
|
|
|
|
long lReserved1;
|
|
long lReserved2;
|
|
} DSCAPS;
|
|
|
|
|
|
[helpcontext(403800)]
|
|
typedef struct WAVEFORMATEX
|
|
{
|
|
short nFormatTag; /* format type */
|
|
short nChannels; /* number of channels (i.e. mono, stereo...) */
|
|
long lSamplesPerSec; /* sample rate */
|
|
long lAvgBytesPerSec; /* for buffer estimation */
|
|
short nBlockAlign; /* block size of data */
|
|
short nBitsPerSample; /* number of bits per sample of mono data */
|
|
short nSize; /* nbytes of the extra information */
|
|
long lExtra; // was byte* seen as an array - extra information (after cbSize)
|
|
} WAVEFORMATEX;
|
|
|
|
|
|
[helpcontext(403900)]
|
|
typedef struct DSBUFFERDESC //docdoc: requires WaveFormatex
|
|
{
|
|
[hidden] long lSize;
|
|
dsbCapsFlags lFlags;
|
|
long lBufferBytes;
|
|
[hidden] long lReserved;
|
|
[hidden] long lpwfxFormat; // WaveFormatex *lpwfxFormat;
|
|
} DSBUFFERDESC;
|
|
|
|
|
|
[helpcontext(404000)]
|
|
typedef struct DSCURSORS
|
|
{
|
|
long lPlay; // Play cursor
|
|
long lWrite; // Write Cursor
|
|
} DSCURSORS;
|
|
|
|
|
|
//
|
|
// 3D Sound
|
|
//
|
|
#ifndef JAVA_ONLY
|
|
|
|
|
|
|
|
[helpcontext(404100)]
|
|
typedef struct DS3DBUFFER
|
|
{
|
|
[hidden] long lSize;
|
|
D3DVECTOR vPostion;
|
|
D3DVECTOR vVelocity;
|
|
long lInsideConeAngle;
|
|
long lOutsideConeAngle;
|
|
D3DVECTOR vConeOrientation;
|
|
long lConeOutsideVolume;
|
|
float minDistance;
|
|
float maxDistance;
|
|
ds3dModeFlags lMode;
|
|
}DS3DBUFFER;
|
|
|
|
#else
|
|
|
|
|
|
[helpcontext(404200)]
|
|
typedef struct DS3DBUFFER
|
|
{
|
|
[hidden] long lSize;
|
|
float vPostion_x;
|
|
float vPostion_y;
|
|
float vPostion_z;
|
|
|
|
float vVelocity_x;
|
|
float vVelocity_y;
|
|
float vVelocity_z;
|
|
|
|
|
|
long lInsideConeAngle;
|
|
long lOutsideConeAngle;
|
|
float vConeOrientation_x;
|
|
float vConeOrientation_y;
|
|
float vConeOrientation_z;
|
|
|
|
long lConeOutsideVolume;
|
|
float minDistance;
|
|
float maxDistance;
|
|
ds3dModeFlags lMode;
|
|
}DS3DBUFFER;
|
|
#endif
|
|
#ifndef JAVA_ONLY
|
|
|
|
|
|
|
|
[helpcontext(404300)]
|
|
typedef struct DS3DLISTENER
|
|
{
|
|
[hidden] long lSize; // will be private in java
|
|
D3DVECTOR vPosition;
|
|
D3DVECTOR vVelocity;
|
|
D3DVECTOR vOrientFront;
|
|
D3DVECTOR vOrientTop;
|
|
|
|
float distanceFactor;
|
|
float rolloffFactor;
|
|
float dopplerFactor;
|
|
|
|
} DS3DLISTENER;
|
|
#else
|
|
typedef struct DS3DLISTENER
|
|
{
|
|
[hidden] long lSize; // will be private in java
|
|
float vPostion_x;
|
|
float vPostion_y;
|
|
float vPostion_z;
|
|
|
|
float vVelocity_x;
|
|
float vVelocity_y;
|
|
float vVelocity_z;
|
|
|
|
float vOrientFront_x;
|
|
float vOrientFront_y;
|
|
float vOrientFront_z;
|
|
|
|
float vOrientTop_x;
|
|
float vOrientTop_y;
|
|
float vOrientTop_z;
|
|
|
|
float distanceFactor;
|
|
float rolloffFactor;
|
|
float dopplerFactor;
|
|
|
|
} DS3DLISTENER;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
[helpcontext(404400)]
|
|
typedef struct DSCBCAPS
|
|
{
|
|
[hidden] long lSize;
|
|
dscbCapsFlags lFlags;
|
|
long lBufferBytes;
|
|
long lReserved;
|
|
} DSCBCAPS;
|
|
|
|
|
|
[helpcontext(404500)]
|
|
typedef struct DSCCAPS
|
|
{
|
|
[hidden] long lSize;
|
|
dscCapsFlags lFlags;
|
|
WaveFormatFlags lFormats;
|
|
long lChannels;
|
|
} DSCCAPS;
|
|
|
|
#ifndef JAVA_ONLY
|
|
|
|
[helpcontext(404600)]
|
|
typedef struct DSCBUFFERDESC
|
|
{
|
|
[hidden]long lSize;
|
|
dscbCapsFlags lFlags;
|
|
long lBufferBytes;
|
|
[hidden] long lReserved;
|
|
[hidden] long pFormat;
|
|
WAVEFORMATEX fxFormat;
|
|
} DSCBUFFERDESC;
|
|
#else
|
|
typedef struct DSCBUFFERDESC
|
|
{
|
|
[hidden]long lSize;
|
|
dscbCapsFlags lFlags;
|
|
long lBufferBytes;
|
|
[hidden]long lReserved;
|
|
[hidden]long pFormat;
|
|
short fxFormat_nFormatTag; /* format type */
|
|
short fxFormat_nChannels; /* number of channels (i.e. mono, stereo...) */
|
|
long fxFormat_lSamplesPerSec; /* sample rate */
|
|
long fxFormat_lAvgBytesPerSec; /* for buffer estimation */
|
|
short fxFormat_nBlockAlign; /* block size of data */
|
|
short fxFormat_nBitsPerSample; /* number of bits per sample of mono data */
|
|
short fxFormat_nSize; /* nbytes of the extra information */
|
|
long fxFormat_lExtra; // was byte* seen as an array - extra information (after cbSize)
|
|
} DSCBUFFERDESC;
|
|
|
|
#endif
|
|
|
|
|
|
[helpcontext(404700)]
|
|
typedef struct DSBPOSITIONNOTIFY {
|
|
long lOffset;
|
|
long hEventNotify;
|
|
} DSBPOSITIONNOTIFY;
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////
|
|
// Direct Play Types
|
|
|
|
|
|
|
|
[helpcontext(404800)]
|
|
typedef struct DPCREDENTIALS{
|
|
long lFlags; //must be zero
|
|
BSTR strUsername;
|
|
BSTR strPassword;
|
|
BSTR strDomain;
|
|
} DPCREDENTIALS;
|
|
|
|
|
|
[helpcontext(404900)]
|
|
typedef struct DPSECURITYDESC {
|
|
long lFlags; //must be zero
|
|
BSTR strSSPIProvider;
|
|
BSTR strCAPIProvider;
|
|
long lCAPIProviderType;
|
|
long lEncryptionAlgorithm;
|
|
} DPSECURITYDESC;
|
|
|
|
#ifdef C_ONLY
|
|
//internal to our app
|
|
typedef struct DPLAPPINFO{
|
|
BSTR strGuidApplication;
|
|
BSTR strAppName;
|
|
} DPLAPPINFO;
|
|
|
|
typedef struct DPSESSIONDESC2{
|
|
dpSessionFlags lFlags;
|
|
BSTR strGuidInstance;
|
|
BSTR strGuidApplication;
|
|
long lMaxPlayers;
|
|
long lCurrentPlayers;
|
|
BSTR strSessionName;
|
|
BSTR strPassword;
|
|
long lUser1;
|
|
long lUser2;
|
|
long lUser3;
|
|
long lUser4;
|
|
} DPSESSIONDESC2;
|
|
#endif
|
|
|
|
|
|
// DHF begin - _dxj_DirectPlay2, DirectPlayLobby
|
|
|
|
[helpcontext(405000)]
|
|
typedef struct DPCAPS {
|
|
[hidden] long lSize;
|
|
dpCapsFlags lFlags;
|
|
long lMaxBufferSize;
|
|
long lMaxQueueSize;
|
|
long lMaxPlayers;
|
|
long lHundredBaud;
|
|
long lLatency;
|
|
long lMaxLocalPlayers;
|
|
long lHeaderLength;
|
|
long lTimeout;
|
|
} DPCAPS;
|
|
|
|
#ifdef C_ONLY
|
|
|
|
typedef struct DPCHAT {
|
|
[hidden] long lSize;
|
|
long lFlags; //mustbe zero
|
|
[hidden] long lpszMessage;
|
|
[hidden] long lpwzMessage;
|
|
BSTR message;
|
|
} DPCHAT;
|
|
|
|
typedef struct DPPLAYERINFO {
|
|
long lDPID;
|
|
dpPlayerTypeFlags lPlayerType;
|
|
BSTR strShortName;
|
|
BSTR strLongName;
|
|
long lFlags; //spead across DPENUMGROUPS and DPENUMPLAYERS
|
|
} DPPLAYERINFO;
|
|
|
|
|
|
typedef struct DPSERVICEPROVIDERINFO {
|
|
BSTR strGuid;
|
|
BSTR strName;
|
|
long lMajorVersion;
|
|
long lMinorVersion;
|
|
long lFlags; //??
|
|
} DPSERVICEPROVIDERINFO;
|
|
|
|
typedef struct DPCONNECTION {
|
|
BSTR strGuid;
|
|
BSTR strShortName;
|
|
BSTR strLongName;
|
|
long lFlags; //not used
|
|
} DPCONNECTION;
|
|
|
|
typedef struct DPSERVICEPROVIDER
|
|
{
|
|
BSTR strGuid;
|
|
BSTR strName;
|
|
long lMajorVersion;
|
|
long lMinorVersion;
|
|
} DPSERVICEPROVIDER;
|
|
|
|
|
|
[hidden] //replaced by object
|
|
typedef struct DIDEVICEINSTANCE {
|
|
[hidden] long lSize;
|
|
BSTR strGuidInstance;
|
|
BSTR strGuidProduct;
|
|
diDeviceType lDevType;
|
|
BSTR strInstanceName;
|
|
BSTR strProductName;
|
|
BSTR strGuidFFDriver;
|
|
short nUsagePage;
|
|
short nUsage;
|
|
} DIDEVICEINSTANCE;
|
|
|
|
|
|
[hidden] //replaced by object
|
|
typedef struct DIDEVICEOBJECTINSTANCE {
|
|
[hidden] long lSize;
|
|
BSTR strGuidType;
|
|
long lOfs;
|
|
diDFTFlags lType;
|
|
diDeviceObjInstanceFlags lFlags;
|
|
BSTR strName;
|
|
long lFFMaxForce;
|
|
long lFFForceResolution;
|
|
short nCollectionNumber;
|
|
short nDesignatorIndex;
|
|
short nUsagePage;
|
|
short nUsage;
|
|
long lDimension;
|
|
short nExponent;
|
|
short nReserved;
|
|
} DIDEVICEOBJECTINSTANCE;
|
|
|
|
|
|
#endif
|
|
|
|
//
|
|
// DInput
|
|
//
|
|
[helpcontext(405100)]
|
|
typedef struct DIDEVCAPS {
|
|
[hidden] long lSize;
|
|
diDevCapsFlags lFlags;
|
|
diDeviceType lDevType;
|
|
long lAxes;
|
|
long lButtons;
|
|
long lPOVs;
|
|
long lFFSamplePeriod;
|
|
long lFFMinTimeResolution;
|
|
long lFirmwareRevision;
|
|
long lHardwareRevision;
|
|
long lDriverVersion;
|
|
} DIDEVCAPS;
|
|
|
|
[helpcontext(405200)]
|
|
typedef struct DIDEVICEOBJECTDATA{
|
|
long lOfs;
|
|
long lData;
|
|
long lTimeStamp;
|
|
long lSequence;
|
|
} DIDEVICEOBJECTDATA;
|
|
|
|
|
|
[helpcontext(405300)]
|
|
typedef struct DIPROPRANGE {
|
|
long lSize;
|
|
[hidden]long lHeaderSize;
|
|
long lObj;
|
|
long lHow;
|
|
long lMin;
|
|
long lMax;
|
|
} DIPROPRANGE;
|
|
|
|
[helpcontext(405400)]
|
|
typedef struct DIPROPLONG {
|
|
long lSize;
|
|
[hidden]long lHeaderSize;
|
|
long lObj;
|
|
long lHow;
|
|
long lData;
|
|
} DIPROPLONG;
|
|
|
|
|
|
[helpcontext(405500)]
|
|
typedef struct DIOBJECTDATAFORMAT {
|
|
BSTR strGuid;
|
|
long lOfs;
|
|
diDFTFlags lType;
|
|
diDeviceObjInstanceFlags lFlags;
|
|
} DIOBJECTDATAFORMAT;
|
|
|
|
|
|
|
|
[helpcontext(405600)]
|
|
typedef struct DIDATAFORMAT {
|
|
[hidden] long lSize;
|
|
long lObjSize;
|
|
diDataFormatFlags lFlags;
|
|
long dataSize;
|
|
long numObjs;
|
|
[hidden] long pData;
|
|
|
|
} DIDATAFORMAT;
|
|
|
|
#ifndef JAVA_ONLY
|
|
|
|
[helpcontext(405700)]
|
|
typedef struct DIMOUSESTATE {
|
|
long x;
|
|
long y;
|
|
long z;
|
|
Byte buttons[4];
|
|
} DIMOUSESTATE;
|
|
|
|
#else
|
|
|
|
typedef struct DIMOUSESTATE {
|
|
long x;
|
|
long y;
|
|
long z;
|
|
Byte buttons_0;
|
|
Byte buttons_1;
|
|
Byte buttons_2;
|
|
Byte buttons_3;
|
|
} DIMOUSESTATE;
|
|
#endif
|
|
|
|
|
|
[helpcontext(405800)]
|
|
typedef struct DIKEYBOARDSTATE {
|
|
Byte key[256];
|
|
} DIKEYBOARDSTATE;
|
|
|
|
#ifndef JAVA_ONLY
|
|
|
|
|
|
[helpcontext(405900)]
|
|
typedef struct DIJOYSTATE {
|
|
long x;
|
|
long y;
|
|
long z;
|
|
long rx;
|
|
long ry;
|
|
long rz;
|
|
long slider[2];
|
|
long POV[4];
|
|
Byte buttons[32];
|
|
} DIJOYSTATE;
|
|
#else
|
|
typedef struct DIJOYSTATE {
|
|
long x;
|
|
long y;
|
|
long z;
|
|
long rx;
|
|
long ry;
|
|
long rz;
|
|
long slider_0;
|
|
long slider_1;
|
|
long POV_0;
|
|
long POV_1;
|
|
long POV_2;
|
|
long POV_3;
|
|
Byte buttons_0;
|
|
Byte buttons_1;
|
|
Byte buttons_2;
|
|
Byte buttons_3;
|
|
Byte buttons_4;
|
|
Byte buttons_5;
|
|
Byte buttons_6;
|
|
Byte buttons_7;
|
|
Byte buttons_8;
|
|
Byte buttons_9;
|
|
Byte buttons_10;
|
|
Byte buttons_11;
|
|
Byte buttons_12;
|
|
Byte buttons_13;
|
|
Byte buttons_14;
|
|
Byte buttons_15;
|
|
Byte buttons_16;
|
|
Byte buttons_17;
|
|
Byte buttons_18;
|
|
Byte buttons_19;
|
|
Byte buttons_20;
|
|
Byte buttons_21;
|
|
Byte buttons_22;
|
|
Byte buttons_23;
|
|
Byte buttons_24;
|
|
Byte buttons_25;
|
|
Byte buttons_26;
|
|
Byte buttons_27;
|
|
Byte buttons_28;
|
|
Byte buttons_29;
|
|
Byte buttons_30;
|
|
Byte buttons_31;
|
|
|
|
|
|
} DIJOYSTATE;
|
|
#endif
|
|
|
|
|
|
|
|
[helpcontext(406000)]
|
|
typedef struct DIJOYSTATE2 {
|
|
long x;
|
|
long y;
|
|
long z;
|
|
long rx;
|
|
long ry;
|
|
long rz;
|
|
long slider[2];
|
|
long POV[4];
|
|
Byte buttons[128];
|
|
long vx;
|
|
long vy;
|
|
long vz;
|
|
long vrx;
|
|
long vry;
|
|
long vrz;
|
|
long vslider[2];
|
|
long ax;
|
|
long ay;
|
|
long az;
|
|
long arx;
|
|
long ary;
|
|
long arz;
|
|
long aslider[2];
|
|
long fx;
|
|
long fy;
|
|
long fz;
|
|
long frx;
|
|
long fry;
|
|
long frz;
|
|
long fslider[2];
|
|
} DIJOYSTATE2;
|
|
|
|
|
|
[helpcontext(406100)]
|
|
typedef struct D3DRMPMESHLOADSTATUS {
|
|
[hidden] long lSize;
|
|
long lPMeshSize;
|
|
long lBaseMeshSize;
|
|
long lBytesLoaded;
|
|
long lVerticesLoaded;
|
|
long lFacesLoaded;
|
|
d3drmPMeshStatusFlags lFlags;
|
|
} D3DRMPMESHLOADSTATUS;
|
|
|
|
|
|
[helpcontext(406200)]
|
|
typedef struct D3DRMANIMATIONKEY
|
|
{
|
|
[hidden] long lSize;
|
|
long lKeyType;
|
|
float dvTime;
|
|
long lID;
|
|
float dvX;
|
|
float dvY;
|
|
float dvZ;
|
|
float dvS;
|
|
} D3DRMANIMATIONKEY;
|
|
|
|
|
|
|
|
|
|
[helpcontext(406300)]
|
|
typedef struct D3DRMMATERIALOVERRIDE
|
|
{
|
|
[hidden] long lSize;
|
|
d3drmMaterialOverrideFlags lFlags;
|
|
D3DCOLORVALUE dcDiffuse;
|
|
D3DCOLORVALUE dcAmbient;
|
|
D3DCOLORVALUE dcEmissive;
|
|
D3DCOLORVALUE dcSpecular;
|
|
float dvPower;
|
|
[hidden] LPUNKNOWN pTex;
|
|
} D3DRMMATERIALOVERRIDE;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// DMUSIC
|
|
|
|
|
|
typedef enum CONST_DMUS_NOTIFICATION_TYPE
|
|
{
|
|
DMUS_NOTIFY_ON_CHORD =1,
|
|
DMUS_NOTIFY_ON_COMMAND =2,
|
|
DMUS_NOTIFY_ON_MEASUREANDBEAT =3,
|
|
DMUS_NOTIFY_ON_PERFORMANCE=4,
|
|
DMUS_NOTIFY_ON_SEGMENT=5,
|
|
} CONST_DMUS_NOTIFICATION_TYPE;
|
|
|
|
[helpcontext(406400)]
|
|
typedef struct DMUS_TIMESIGNATURE {
|
|
long mtTime;
|
|
Byte beatsPerMeasure;
|
|
Byte beat;
|
|
short gridsPerBeat;
|
|
} DMUS_TIMESIGNATURE;
|
|
|
|
#define MUSIC_TIME long
|
|
|
|
[helpcontext(406500)]
|
|
typedef struct DMUS_NOTIFICATION_PMSG
|
|
{
|
|
[hidden] long lFlags;
|
|
long ctTime;
|
|
long mtTime;
|
|
long lNotificationType;
|
|
long lNotificationOption;
|
|
long lField1;
|
|
long lField2;
|
|
} DMUS_NOTIFICATION_PMSG;
|
|
|
|
|
|
[helpcontext(406600)]
|
|
typedef struct DMUS_CURVE_PMSG {
|
|
MUSIC_TIME mtDuration;
|
|
MUSIC_TIME mtOriginalStart;
|
|
MUSIC_TIME mtResetDuration;
|
|
short startValue;
|
|
short endValue;
|
|
short resetValue;
|
|
short measure;
|
|
short offset;
|
|
Byte beat;
|
|
Byte grid;
|
|
Byte type;
|
|
Byte curveShape;
|
|
Byte ccData;
|
|
Byte flags;
|
|
} DMUS_CURVE_PMSG;
|
|
|
|
[helpcontext(406700)]
|
|
typedef struct DMUS_NOTE_PMSG {
|
|
MUSIC_TIME mtDuration;
|
|
short musicValue;
|
|
short measure;
|
|
short offset;
|
|
Byte beat;
|
|
Byte grid;
|
|
Byte velocity;
|
|
Byte flags;
|
|
Byte timeRange;
|
|
Byte durRange;
|
|
Byte velRange;
|
|
Byte playModeFlags;
|
|
Byte subChordLevel;
|
|
Byte midiValue;
|
|
short transpose; //becomes byte
|
|
} DMUS_NOTE_PMSG;
|
|
|
|
[helpcontext(406800)]
|
|
typedef struct DMUS_PORTCAPS {
|
|
[hidden] long dwSize;
|
|
CONST_DMUS_PC_FLAGS lFlags;
|
|
[hidden] DXGUID guidPort;
|
|
CONST_DMUS_PC_CLASS lClass;
|
|
CONST_DMUS_PORT_TYPE lType;
|
|
long lMemorySize;
|
|
long lMaxChannelGroups;
|
|
long lMaxVoices;
|
|
long lMaxAudioChannels;
|
|
long lEffectFlags;
|
|
[hidden] short wszDescription[128];
|
|
} DMUS_PORTCAPS;
|
|
|
|
|
|
#ifdef DX61
|
|
|
|
[helpcontext(406900)]
|
|
typedef struct D3DHVERTEX {
|
|
long lFlags; /* Homogeneous clipping flags */
|
|
float hx;
|
|
float hy;
|
|
float hz;
|
|
} D3DHVERTEX;
|
|
|
|
|
|
|
|
#ifndef JAVA_ONLY
|
|
[helpcontext(407000)]
|
|
typedef struct D3DLIGHT2 {
|
|
[hidden] long lSize;
|
|
d3dLightType dltType;
|
|
D3DCOLORVALUE color;
|
|
D3DVECTOR position;
|
|
D3DVECTOR direction;
|
|
float range;
|
|
float falloff;
|
|
float attenuation0;
|
|
float attenuation1;
|
|
float attenuation2;
|
|
float theta;
|
|
float phi;
|
|
d3dLightFlags lFlags;
|
|
} D3DLIGHT2 ;
|
|
|
|
|
|
#else
|
|
|
|
|
|
typedef struct D3DLIGHT2 {
|
|
long lSize;
|
|
d3dLightType dltType;
|
|
float color_r; //D3DCOLORVALUE
|
|
float color_g; //D3DCOLORVALUE
|
|
float color_b; //D3DCOLORVALUE
|
|
float color_a; //D3DCOLORVALUE
|
|
float position_x; //D3DVECTOR
|
|
float position_y;
|
|
float position_z;
|
|
float direction_x; //D3DVECTOR
|
|
float direction_y;
|
|
float direction_z;
|
|
float range;
|
|
float falloff;
|
|
float attenuation0;
|
|
float attenuation1;
|
|
float attenuation2;
|
|
float theta;
|
|
float phi;
|
|
d3dLightFlags lFlags;
|
|
} D3DLIGHT2 ;
|
|
#endif
|
|
|
|
[helpcontext(407100)]
|
|
typedef struct D3DLIGHTDATA
|
|
{
|
|
long lSize;
|
|
[hidden] long pIn;
|
|
long lInSize;
|
|
[hidden] long pOut;
|
|
long lOutSize;
|
|
} D3DLIGHTDATA;
|
|
|
|
#ifndef JAVA_ONLY
|
|
[helpcontext(407200)]
|
|
typedef struct D3DMATERIAL {
|
|
[hidden] long lSize;
|
|
D3DCOLORVALUE diffuse;
|
|
D3DCOLORVALUE ambient;
|
|
D3DCOLORVALUE specular;
|
|
D3DCOLORVALUE emmisive;
|
|
float power;
|
|
long hTexture;
|
|
long lRampSize; //union with hTexture!!!
|
|
} D3DMATERIAL;
|
|
#else
|
|
typedef struct D3DMATERIAL {
|
|
long lSize;
|
|
float diffuse_r; //d3dColorValue
|
|
float diffuse_g;
|
|
float diffuse_b;
|
|
float diffuse_a;
|
|
float ambient_r; //D3DCOLORVALUE
|
|
float ambient_g;
|
|
float ambient_b;
|
|
float ambient_a;
|
|
float specular_r; //D3DCOLORVALUE
|
|
float specular_g;
|
|
float specular_b;
|
|
float specular_a;
|
|
float emissive_r; //D3DCOLORVALUE
|
|
float emissive_g;
|
|
float emissive_b;
|
|
float emissive_a;
|
|
float power;
|
|
long hTexture;
|
|
long lRampSize; //union with hTexture
|
|
} D3DMATERIAL;
|
|
|
|
#endif
|
|
|
|
[helpcontext(407300)]
|
|
typedef struct D3DSTATS
|
|
{
|
|
[hidden] long lSize;
|
|
long lTrianglesDrawn;
|
|
long lLinesDrawn;
|
|
long lPointsDrawn;
|
|
long lSpansDrawn;
|
|
long lVerticesProcessed;
|
|
} D3DSTATS;
|
|
|
|
#ifndef JAVA_ONLY
|
|
|
|
[helpcontext(407400)]
|
|
typedef struct D3DTRANSFORMDATA
|
|
{
|
|
[hidden]long lSize;
|
|
[hidden]long pIn;
|
|
[hidden]long lInSize;
|
|
[hidden]long pOut;
|
|
[hidden]long lOutSize;
|
|
[hidden]long pHOut;
|
|
d3dClipFlags lClip;
|
|
d3dClipFlags lClipIntersection;
|
|
d3dClipFlags lClipUnion;
|
|
D3DRECT rExtent;
|
|
} D3DTRANSFORMDATA;
|
|
#else
|
|
|
|
typedef struct D3DTRANSFORMDATA
|
|
{
|
|
long lSize;
|
|
[hidden]long pIn;
|
|
long lInSize;
|
|
[hidden] long pOut;
|
|
long lOutSize;
|
|
[hidden]long pHOut;
|
|
d3dClipFlags lClip;
|
|
d3dClipFlags lClipIntersection;
|
|
d3dClipFlags lClipUnion;
|
|
long rExtent_x1;
|
|
long rExtent_y1;
|
|
long rExtent_x2;
|
|
long rExtent_y2;
|
|
} D3DTRANSFORMDATA;
|
|
|
|
#endif
|
|
|
|
[helpcontext(407500)]
|
|
[hidden] typedef struct D3DVIEWPORT {
|
|
[hidden] long lSize;
|
|
long lX;
|
|
long lY;
|
|
long lWidth;
|
|
long lHeight;
|
|
float scaleX;
|
|
float scaleY;
|
|
float maxX;
|
|
float maxY;
|
|
float minZ;
|
|
float maxZ;
|
|
} D3DVIEWPORT ;
|
|
|
|
[helpcontext(407600)]
|
|
typedef struct D3DVIEWPORT2 {
|
|
[hidden] long lSize;
|
|
long lX;
|
|
long lY;
|
|
long lWidth;
|
|
long lHeight;
|
|
float clipX;
|
|
float clipY;
|
|
float clipWidth;
|
|
float clipHeight;
|
|
float minZ;
|
|
float maxZ;
|
|
} D3DVIEWPORT2;
|
|
|
|
|
|
#endif
|
|
|
|
|
|
[helpcontext(407700)]
|
|
typedef struct DIENVELOPE {
|
|
[hidden] long lSize;
|
|
long lAttackLevel;
|
|
long lAttackTime;
|
|
long lFadeLevel;
|
|
long lFadeTime;
|
|
} DIENVELOPE;
|
|
|
|
[helpcontext(407800)]
|
|
typedef struct DIRAMPFORCE {
|
|
long lRangeStart; //ramp force
|
|
long lRangeEnd; //ramp force
|
|
} DIRAMPFORCE;
|
|
|
|
[helpcontext(407900)]
|
|
typedef struct DIPERIODICFORCE {
|
|
long lMagnitude; //periodic
|
|
long lOffset; //periodic
|
|
long lPhase; //periodic
|
|
long lPeriod; //periodic
|
|
} DIPERIODICFORCE;
|
|
|
|
[helpcontext(408000)]
|
|
typedef struct DICONDITION {
|
|
long lOffset; //condition
|
|
long lPositiveCoefficient; //condition
|
|
long lNegativeCoefficient; //condition
|
|
long lPositiveSaturation; //condition
|
|
long lNegativeSaturation; //condition
|
|
long lDeadBand; //condition
|
|
//VARIANT_BOOL bDirectional; //condition
|
|
} DICONDITION;
|
|
|
|
[helpcontext(408100)]
|
|
typedef struct DICONSTANTFORCE {
|
|
long lMagnitude;
|
|
} DICONSTANTFORCE;
|
|
|
|
[hidden]
|
|
typedef struct DIAXISOFFSETS{
|
|
long x;
|
|
long y;
|
|
} DIAXISOFFSETS;
|
|
|
|
[helpcontext(408200)]
|
|
typedef struct DIEFFECT {
|
|
[hidden] long dwSize;
|
|
long lFlags; //dwTriggerButton and rgdwAxes
|
|
//use DIEFF_OBJECTIDS
|
|
// DIEFF_OBJECTOFFSETS
|
|
//rglDirection
|
|
//depends DIEFF_CARTESIAN
|
|
// DIEFF_POLAR
|
|
// DIEFF_SPHERICAL
|
|
long lDuration; //durration of the effect
|
|
long lSamplePeriod; //period
|
|
long lGain; //magnitude???
|
|
long lTriggerButton; //DIEFF_OBJECTIDS
|
|
long lTriggerRepeatInterval;
|
|
[hidden] long cAxes; //4
|
|
[hidden] long lprgdwAxes; //DIEFF_OBJECTIDS
|
|
//
|
|
[hidden] long lprglDirection;
|
|
[hidden] long lpEnvelope;
|
|
[hidden] long cbTypeSpecificParams;
|
|
[hidden] long lpvTypeSpecificParams;
|
|
|
|
long lStartDelay;
|
|
long x; // x
|
|
long y; // y
|
|
|
|
|
|
DIRAMPFORCE rampForce;
|
|
DIPERIODICFORCE periodicForce;
|
|
DICONSTANTFORCE constantForce;
|
|
DICONDITION conditionX;
|
|
DICONDITION conditionY;
|
|
diConditionFlags conditionFlags;
|
|
BOOL bUseEnvelope;
|
|
DIENVELOPE envelope;
|
|
[hidden] DIAXISOFFSETS axisOffsets;
|
|
} DIEFFECT;
|
|
|
|
|
|
[helpcontext(408300)]
|
|
typedef struct D3DDEVINFO_TEXTUREMANAGER {
|
|
//cant be VARIANT_BOOL because that would only be 16 bit
|
|
long bThrashing; /* indicates if thrashing */
|
|
long lNumEvicts; /* number of textures evicted */
|
|
long lNumVidCreates; /* number of textures created in video memory */
|
|
long lNumTexturesUsed; /* number of textures used */
|
|
long lNumUsedTexInVid; /* number of used textures present in video memory */
|
|
long lWorkingSet; /* number of textures in video memory */
|
|
long lWorkingSetBytes; /* number of bytes in video memory */
|
|
long lTotalManaged; /* total number of managed textures */
|
|
long lTotalBytes; /* total number of bytes of managed textures */
|
|
long lLastPri; /* priority of last texture evicted */
|
|
} D3DDEVINFO_TEXTUREMANAGER;
|
|
|
|
|
|
//need to add to master help
|
|
[helpcontext(408400)]
|
|
typedef struct DDOVERLAYFX{
|
|
[hidden] long lSize;
|
|
long lAlphaEdgeBlendBitDepth;
|
|
long lAlphaEdgeBlend;
|
|
[hidden] long lReserved;
|
|
long lAlphaDestConstBitDepth;
|
|
long lAlphaDestConst; //union LPDIRECTDRAWSURFACE lpDDSAlphaDest;
|
|
long lAlphaSrcConstBitDepth;
|
|
long lAlphaSrcConst; //union LPDIRECTDRAWSURFACE lpDDSAlphaSrc;
|
|
|
|
DDCOLORKEY dckDestColorkey;
|
|
DDCOLORKEY dckSrcColorkey;
|
|
|
|
ddOverFxFlags lDDFX;
|
|
long lFlags;
|
|
} DDOVERLAYFX;
|
|
|
|
|
|
[helpcontext(408500)]
|
|
typedef struct D3DDEVINFO_TEXTURING {
|
|
long lNumLoads; /* counts Load() API calls */
|
|
long lApproxBytesLoaded; /* Approximate number bytes loaded via Load() */
|
|
long lNumPreLoads; /* counts PreLoad() API calls */
|
|
long lNumSet; /* counts SetTexture() API calls */
|
|
long lNumCreates; /* counts texture creates */
|
|
long lNumDestroys; /* counts texture destroys */
|
|
long lNumSetPriorities; /* counts SetPriority() API calls */
|
|
long lNumSetLODs; /* counts SetLOD() API calls */
|
|
long lNumLocks; /* counts number of texture locks */
|
|
long lNumGetDCs; /* counts number of GetDCs to textures */
|
|
} D3DDEVINFO_TEXTURING;
|