windows-nt/Source/XPSP1/NT/multimedia/directx/dxvb/dx7vb/directvb.idl
2020-09-26 16:20:57 +08:00

4087 lines
178 KiB
Plaintext

//+-------------------------------------------------------------------------
//
// Microsoft Windows
//
// Copyright (C) Microsoft Corporation, 1998 - 1999
//
// File: direct.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.
//
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#define VB_ONLY 1
//
// from windef.h
#define MAX_PATH 256
//
// from mmsystem.h
//
#define MAXPNAMELEN 32 /* max product name length (including NULL) */
#define MAX_JOYSTICKOEMVXDNAME 260 /* max oem vxd name length (including NULL) */
//
// Direct 3D Retain mode
//
interface Direct3DRM2;
interface Direct3DRMArray;
interface Direct3DRMFrameArray;
interface Direct3DRMLightArray;
interface Direct3DRMPickArray;
interface Direct3DRMPick2Array;
interface Direct3DRMFaceArray;
interface Direct3DRMViewportArray;
interface Direct3DRMDeviceArray;
interface Direct3DRMVisualArray;
interface Direct3DRMLight;
interface Direct3DRMVisual;
interface Direct3DRMViewport2;
interface Direct3DRMMeshBuilder2;
interface Direct3DRMFace;
interface Direct3DRMMaterial;
interface Direct3DRMMaterial2;
interface Direct3DRMMesh;
interface Direct3DRMDevice2;
interface Direct3DRMFrame2;
interface Direct3DRMAnimationSet;
interface Direct3DRMWinDevice;
interface Direct3DRMAnimation;
interface Direct3DRMObject;
interface Direct3DRMWrap;
//interface Direct3DRMUserVisual;
interface Direct3DRMShadow;
interface Direct3DRMCallback; //reserved for DestroyObjectCallback
interface Direct3DRMDeviceUpdateCallback3;
//interface Direct3DRMUserVisualCallback;
interface Direct3DRMLoadTextureCallback3;
interface Direct3DRMLoadCallback;
interface Direct3DRMFrameMoveCallback2;
interface Direct3DRMEnumerateObjectsCallback;
//
//new RM interfaces
//
interface Direct3DRMFrame3;
interface Direct3DRMMeshBuilder3;
interface Direct3DRMTexture3;
interface Direct3DRMDevice3;
interface Direct3DRMAnimationArray;
interface Direct3DRMAnimation2;
interface Direct3DRMProgressiveMesh;
interface Direct3DRMClippedVisual;
interface Direct3DRMObjectArray;
interface Direct3DRMInterpolator;
interface Direct3DRMMeshInterpolator;
interface Direct3DRMFrameInterpolator;
interface Direct3DRMMaterialInterpolator;
interface Direct3DRMTextureInterpolator;
interface Direct3DRMLightInterpolator;
interface Direct3DRMViewportInterpolator;
//
// Direct Draw
//
interface DirectDraw4;
interface DirectDrawSurface4;
interface DirectDraw7;
interface DirectDrawSurface7;
interface DirectDrawEnumSurfaces;
interface DirectDrawClipper;
interface DirectDrawPalette;
interface DirectDrawColorControl;
interface DirectDrawGammaControl;
interface DirectDrawEnum;
interface DirectDrawEnumModes;
interface DirectDrawIdentifier;
//interface DirectDrawEnumVideoPorts;
//interface DirectDrawVideoPort;
//interface DDVideoPortContainer;
//
// Direct 3D Imediate mode
//
//interface Direct3DViewport3;
//interface Direct3DMaterial3;
//interface Direct3DLight;
//interface D3DValidateCallback;
interface Direct3D7;
interface Direct3DDevice7;
interface Direct3DVertexBuffer7;
interface Direct3DEnumDevices;
interface Direct3DEnumPixelFormats;
//
// Direct Input
//
// interface IdInputDevice;
interface DirectInput;
interface DirectInputDevice;
interface DirectInputDevice2;
interface DirectInputEffect;
interface DirectInputEnumEffects;
interface DirectInputEnumDevices;
interface DirectInputEnumDeviceObjects;
interface DIEnumCreatedEffectObjects;
//
// DirectSound
//
interface DirectSound;
interface DirectSoundBuffer;
interface DirectSound3DBuffer;
interface DirectSound3DListener;
interface DirectSoundCapture;
interface DirectSoundCaptureBuffer;
interface DirectSoundNotify;
interface DirectSoundEnum;
//
// DirectPlay & DirectPlayLobby
//
interface DirectPlay4;
interface DirectPlayLobbyConnection;
interface DirectPlayAddress;
interface DirectPlayLobby3;
interface DirectPlayEnumConnections;
interface DirectPlayEnumPlayers2;
interface DirectPlayEnumAddress;
interface DirectPlayEnumSessions2;
interface DirectPlayEnumAddressTypes;
interface DirectPlayEnumLocalApplications;
interface DirectPlayEnumServiceProviders;
interface DirectPlaySessionData;
//
// Direct Music
interface DirectMusicLoader;
interface DirectMusicSegment;
interface DirectMusicPerformance;
interface DirectMusicComposer;
interface DirectMusicBand;
interface DirectMusicStyle;
interface DirectMusicChordMap;
interface DirectMusicSegmentState;
interface DirectMusicCollection;
#include "ocidl.idl"
//
// Base types
//
import "wtypes.idl";
[
uuid(E1211242-8E94-11d1-8808-00C04FC2C602),
version(1.0),
helpstring("DirectX 7 for Visual Basic Type Library"),
helpfile ("directx.chm")
]
library DxVBLib
{
#ifndef C_ONLY
#define USERARG IDispatch
#define RMCLONEOBJECT Direct3DRMObject
#include "directvbconst.idl"
typedef long Handle;
typedef long HWnd;
typedef float D3Dval;
typedef long D3Dcolor ;
typedef long D3DMaterialHandle;
typedef long D3DMatrixHandle;
typedef long D3DTextureHandle;
typedef long D3DRMGroupIndex;
typedef long Dpid;
typedef unsigned char Byte;
typedef long HRSrc;
#define DirectPlayEnumPlayers2 DirectPlayEnumPlayers
#define DirectPlayEnumSessions2 DirectPlayEnumSessions
#define DirectDrawEnumModes2 DirectDrawEnumModes
#define DirectDrawEnumSurfaces2 DirectDrawEnumSurfaces
#else
#define USERARG IUnknown
#define RMCLONEOBJECT IUnknown
typedef unsigned char Byte;
typedef long Handle;
typedef long HWnd;
typedef float D3Dvalue;
typedef long D3Dcolor ;
typedef long HRSrc;
typedef long Dpid;
typedef long D3DMatrixHandle;
typedef long D3DTextureHandle;
typedef long D3DColorModel;
typedef long D3DLightType;
typedef long D3DMaterialHandle;
typedef long D3DRMSaveFlags;
typedef long D3DPrimitiveType;
typedef long D3DFVFFlags;
typedef long D3DVertexType;
typedef long D3DLightStateType;
typedef long D3DRenderStateType;
typedef long D3DRenderStateSingle;
typedef long D3DTransformStateType;
typedef long D3DRMCombineType;
typedef long D3DRMColorModel;
typedef long D3DRMLightType;
typedef long D3DRMFogMode;
typedef long D3DRMProjectionType;
typedef long D3DRMGroupIndex;
typedef long D3DRMMappingFlags;
//ENUMERATORS
typedef long D3DRMRenderQuality;
typedef long D3DRMTextureQuality;
typedef long D3DRMAnimationOptions;
typedef long D3DRMWrapType;
typedef long D3DRMColorSource;
typedef long D3DRMMaterialMode;
typedef long D3DRMSortMode;
typedef long D3DRMFrameConstraint;
typedef long D3DRMZbufferMode;
typedef long D3DRMXofFormat;
typedef long D3DRMLoadFlags;
//typedef long D3DRMUserVisualReason;
//FLAGS
#define DBOOLFlags long
#define dplConnectionFlags long
#define dpGroupFlags long
#define DPPlayerFlags long
#define DPEnumConnectionFlags long
#define DPEnumGroupFlags long
#define DPEnumPlayerFlags long
#define DPEnumSessionFlags long
#define DPCapsFlags long
#define DPGetFlags long
#define DPGetCapsFlags long
#define DPOpenFlags long
#define DPMessageQueueFlags long
#define DPReceiveFlags long
#define DPSendFlags long
#define DPSetFlags long
#define DPLMsg long
#define DPLWait long
#define DPSessionFlags long
#define D3DDPFlags long
#define D3DNextFlags long
#define D3DClearFlags long
#define D3DTransformFlags long
#define D3DTextureStageStateType long
#define D3DTextureStageSingle long
#define D3DProcessVerticesFlags long
#define D3DStateBlockType long
#define DDLockFlags long
#define D3DVopFlags long
#define DDPCapsFlags long
#define DPConnectFlags long
#define DDPCapsFlags long
#define DDEDMFlags long
#define DDSCLFlags long
#define DDBltFlags long
#define DDBltFastFlags long
#define DDFlipFlags long
#define DDOverZFlags long
#define DDOverFlags long
#define DDEnumOverFlags long
#define DDEnumOverlayZFlags long
#define DDGFSFlags long
#define DDGfsFlags long
#define DDCKeyFlags long
#define DDSGRFlags long
#define DDEnumSurfacesFlags long
#define DDBitDepthFlags long
#define DDSDMFlags long
#define DDWaitVBFlags long
#define DDDeviceIDFlags long
#define D3DDevInfoId long
#define D3DVertexComponent long
#define D3DTAFlags long
#define D3DVTXPCapsFlags long
#define D3DRMViewportClearFlags long
#define D3DRMLoadFlags long
#define D3DRMCreateDeviceFlags long
#define D3DRMHandedness long
#define D3DRMCallbackOrderFlags long
#define D3DRMFogMethod long
#define D3DRMFogMode long
#define D3DRMTravesalFlags long
#define D3DRMZBufferMode long
#define D3DRMRayPickFlags long
#define D3DRMAddFacesFlags long
#define D3DRMAddMeshbuilderFlags long
#define D3DRMAddTrianglesVt long
#define D3DRMAddMeshBuilderFlags long
#define D3DRMGenerateNormalsFlags long
#define D3DRMParentingFlags long
#define D3DRMFptfFlags long
#define D3DRMRenderModeFlags long
#define D3DRMWireFrameFlags long
#define D3DRMTextureChangedFlags long
#define D3DRMTextureCacheFlags long
#define D3DRMTraversalFlags long
#define D3DRMInterpolationFlags long
#define D3DRMShadowFlags long
#define DSSCLFlags long
#define DSSpeakerFlags long
#define DSBStatusFlags long
#define DSBPlayFlags long
#define DSBLockFlags long
#define DS3DApplyFlags long
#define DS3DModeFlags long
#define DSCBStatusFlags long
#define DSCBStartFlags long
#define DSCBLockFlags long
#define DIEnumDevicesFlags long
#define DIDeviceType long
#define DIDFTFlags long
#define DIDGDDFlags long
#define DIPHFlags long
#define DISCLFlags long
#define diDataFormatFlags long
#define diCommonDataFormats long
#define DIDeviceObjInstanceFlags long
#define disddFlags long
#define DIEFTFLAGS long
#define DIEFTFLAGS long
#define DIGFFSFLAGS long
#define DISFFCFLAGS long
#define DIEPFLAGS long
#define DIEFFFLAGS long
#endif
//- clone is a keyword in Java so we need to rename it to cloneObject
// consider renaming the C entry point
#ifdef C_ONLY
#include "directxstruct.idl"
#define cloneObject clone
#else
#include "directvbstruct.idl"
#endif
#ifdef JAVA_ONLY
#define AVERT float
#define AD3DRECT long
#define AD3DLIGHTDATA long
#define APAL Byte
#define ATYPE Byte
#define ABYTE Byte
#define ALONG long
#else
#define AVERT void
#define ATYPE void
#define ABYTE void
#define ALONG void
#define AD3DRECT D3DRECT
#define AD3DLIGHTDATA D3DLIGHTDATA
#define APAL PALETTEENTRY
#endif
///////////////////////////////////////////////////////////////////////////
//
// DirectPlay and DirectPlayLobby Interfaces
//
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FF05-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectPlayAddress Interface"),
pointer_default(unique),
local,
helpcontext(300200)
]
interface DirectPlayAddress : IUnknown
{
import "oaidl.idl";
[hidden] [helpcontext(300201)] HRESULT SetAddress([in] long pAddress,[in] long length);
[hidden] [helpcontext(300202)] HRESULT GetAddress([out] long *pAddress,[out] long * length);
};
[
object,
uuid(9F76FF06-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectPlayLobbyConnection Interface"),
pointer_default(unique),
local,
helpcontext(300400)
]
interface DirectPlayLobbyConnection : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT GetConnectionStruct([out] long *connect);
[hidden] HRESULT SetConnectionStruct([in] long connect);
[helpcontext(300401)] HRESULT SetFlags([in] DPLConnectionFlags flags);
[helpcontext(300402)] HRESULT GetFlags([out,retval] DPLConnectionFlags *ret);
[helpcontext(300403)] HRESULT SetSessionDesc([in] DirectPlaySessionData *sessionDesc);
[helpcontext(300404)] HRESULT GetSessionDesc([out,retval] DirectPlaySessionData **sessionDesc);
[helpcontext(300405)] HRESULT SetGuidSP([in] BSTR guid);
[helpcontext(300406)] HRESULT GetGuidSP([out,retval] BSTR *guid);
[helpcontext(300407)] HRESULT SetAddress([in] DirectPlayAddress *address);
[helpcontext(300408)] HRESULT GetAddress([out,retval] DirectPlayAddress **address);
[helpcontext(300409)] HRESULT SetPlayerShortName([in] BSTR name);
[helpcontext(300410)] HRESULT GetPlayerShortName([out,retval] BSTR *name);
[helpcontext(300411)] HRESULT SetPlayerLongName([in] BSTR name);
[helpcontext(300412)] HRESULT GetPlayerLongName([out,retval] BSTR *name);
};
[
object,
uuid(9F76FF0A-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectPlayEnumConnections Interface"),
pointer_default(unique),
local,
helpcontext(300600)
]
interface DirectPlayEnumConnections : IUnknown
{
import "oaidl.idl";
[helpcontext(300601)] HRESULT GetAddress([in] long index, [out,retval] DirectPlayAddress **retV);
[helpcontext(300602)] HRESULT GetFlags([in] long index, [out,retval] long *retV);
[helpcontext(300603)] HRESULT GetGuid([in] long index, [out,retval] BSTR *retV);
[helpcontext(300604)] HRESULT GetName([in] long index, [out,retval] BSTR *retV);
[helpcontext(300605)] HRESULT GetCount([out,retval]long *count);
};
[
object,
uuid(9F76FF0B-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectPlayEnumPlayers2 Interface"),
pointer_default(unique),
local,
helpcontext(300800)
]
interface DirectPlayEnumPlayers2 : IUnknown
{
import "oaidl.idl";
[helpcontext(300801)] HRESULT GetCount([out,retval]long *count);
[helpcontext(300802)] HRESULT GetFlags([in] long index, [out,retval]long *count);
[helpcontext(300803)] HRESULT GetType([in] long index, [out,retval]long *count);
[helpcontext(300804)] HRESULT GetDPID([in] long index, [out,retval]long *count);
[helpcontext(300805)] HRESULT GetShortName([in] long index, [out,retval] BSTR *retV);
[helpcontext(300806)] HRESULT GetLongName([in] long index, [out,retval] BSTR *retV);
};
[
object,
uuid(9F76FF0C-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectPlayEnumSessions2 Interface"),
pointer_default(unique),
local,
helpcontext(301000)
]
interface DirectPlayEnumSessions2 : IUnknown
{
import "oaidl.idl";
[helpcontext(301001)] HRESULT GetItem( [in]long index, [out,retval] DirectPlaySessionData **retval);
[helpcontext(301002)] HRESULT GetCount([out,retval]long *count);
};
[
object,
uuid(9F76FF0D-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectPlayEnumServiceProviders Interface"),
pointer_default(unique),
hidden,
local,
helpcontext(301200)
]
interface DirectPlayEnumServiceProviders : IUnknown
{
import "oaidl.idl";
[helpcontext(301201)] HRESULT GetCount([out,retval]long *count);
[helpcontext(301202)] HRESULT GetName([in] long index,[out,retval] BSTR *ret);
[helpcontext(301203)] HRESULT GetGuid([in] long index,[out,retval] BSTR *ret);
[helpcontext(301204)] HRESULT GetVersion([in] long index,[in] long *majorVersion,[in,out] long *minorVersion);
};
[
object,
uuid(9F76FF0E-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectPlayEnumLocalApplications Interface"),
pointer_default(unique),
local,
helpcontext(301400)
]
interface DirectPlayEnumLocalApplications : IUnknown
{
import "oaidl.idl";
[helpcontext(301401)] HRESULT GetCount([out,retval]long *count);
[helpcontext(301402)] HRESULT GetName([in] long index,[out,retval] BSTR *ret);
[helpcontext(301403)] HRESULT GetGuid([in] long index,[out,retval] BSTR *ret);
};
[
object,
uuid(9F76FF11-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectPlayMessage Interface"),
pointer_default(unique),
local,
helpcontext(301600)
]
interface DirectPlayMessage : IUnknown
{
import "oaidl.idl";
[helpcontext(301601)] HRESULT WriteGuid([in] BSTR val);
[helpcontext(301602)] HRESULT ReadGuid([out,retval] BSTR *val);
[helpcontext(301603)] HRESULT WriteString([in] BSTR val);
[helpcontext(301604)] HRESULT ReadString([out,retval] BSTR *val);
[helpcontext(301605)] HRESULT WriteLong([in] long val);
[helpcontext(301606)] HRESULT ReadLong([out,retval] long *val);
[helpcontext(301607)] HRESULT WriteShort([in] short val);
[helpcontext(301608)] HRESULT ReadShort([out,retval] short *val);
[helpcontext(301609)] HRESULT WriteSingle([in] float val);
[helpcontext(301610)] HRESULT ReadSingle([out,retval] float *val);
[helpcontext(301611)] HRESULT WriteDouble([in] double val);
[helpcontext(301612)] HRESULT ReadDouble([out,retval] double *val);
[helpcontext(301613)] HRESULT WriteByte([in] Byte val);
[helpcontext(301614)] HRESULT ReadByte([out,retval] Byte *val);
[helpcontext(301615)] HRESULT MoveToTop();
[helpcontext(301616)] HRESULT Clear();
[helpcontext(301617)] HRESULT GetMessageSize([out,retval] long *ret);
[helpcontext(301618)] HRESULT GetMessageData([in,out] void *userDefinedType);
[helpcontext(301619)] HRESULT SetMessageData([in] void *userDefinedType,[in] long size);
[hidden] HRESULT GetPointer([out,retval] long *ret);
//new methods need to be put in master help id list
[helpcontext(301620)] HRESULT ReadSysMsgConnection([out,retval] DirectPlayLobbyConnection **ret);
[helpcontext(301621), hidden] HRESULT ReadSysMsgSessionDesc([out,retval] DirectPlaySessionData **ret);
[helpcontext(301622), hidden] HRESULT ReadSysMsgData([out,retval] BSTR *ret);
[helpcontext(301623)] HRESULT ReadSysChatString([out,retval] BSTR *ret);
[helpcontext(301624)] HRESULT MoveToSecureMessage ();
};
[
object,
uuid(9F76FF12-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectPlaySessionData Interface"),
pointer_default(unique),
local,
helpcontext(301800)
]
interface DirectPlaySessionData : IUnknown
{
import "oaidl.idl";
[helpcontext(301801)] HRESULT SetGuidInstance([in] BSTR guid);
[helpcontext(301802)] HRESULT GetGuidInstance([out,retval] BSTR *guid);
[helpcontext(301803)] HRESULT SetGuidApplication([in] BSTR guid);
[helpcontext(301804)] HRESULT GetGuidApplication([out,retval] BSTR *guid);
[helpcontext(301805)] HRESULT SetMaxPlayers([in] long val);
[helpcontext(301806)] HRESULT GetMaxPlayers([out,retval] long *val);
[hidden,helpcontext(301807)] HRESULT SetCurrentPlayers([in] long val);
[helpcontext(301808)] HRESULT GetCurrentPlayers([out,retval] long *val);
[helpcontext(301809)] HRESULT SetSessionName([in] BSTR val);
[helpcontext(301810)] HRESULT GetSessionName([out,retval] BSTR *val);
[helpcontext(301811)] HRESULT SetSessionPassword([in] BSTR val);
[helpcontext(301812)] HRESULT GetSessionPassword([out,retval] BSTR *val);
[helpcontext(301813)] HRESULT SetUser1([in] long val);
[helpcontext(301814)] HRESULT GetUser1([out,retval] long *val);
[helpcontext(301815)] HRESULT SetUser2([in] long val);
[helpcontext(301816)] HRESULT GetUser2([out,retval] long *val);
[helpcontext(301817)] HRESULT SetUser3([in] long val);
[helpcontext(301818)] HRESULT GetUser3([out,retval] long *val);
[helpcontext(301819)] HRESULT SetUser4([in] long val);
[helpcontext(301820)] HRESULT GetUser4([out,retval] long *val);
[helpcontext(301821)] HRESULT SetFlags([in] DPSessionFlags val);
[helpcontext(301822)] HRESULT GetFlags([out,retval] long *val);
[hidden,helpcontext(301823)] HRESULT GetData([out] void *val);
};
[
object,
uuid(9F76FF0F-8E92-11d1-8808-00C04FC2C602),
helpstring("IDirectPlay4 Interface"),
pointer_default(unique),
local,
helpcontext(302000)
]
interface DirectPlay4 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
//
// *** DirectPlay4 methods ***
//
[helpcontext(302001)] HRESULT AddGroupToGroup([in] long ParentGroupId, [in] long GroupId);
[helpcontext(302002)] HRESULT AddPlayerToGroup([in] long groupId, [in] long playerId);
[helpcontext(302003)] HRESULT CancelMessage([in] long msgid); //FLAGS ALWAYS 0
[helpcontext(302004)] HRESULT CancelPriority([in] long minPrority ,[in] long maxPriority); //FLAGS ALWAYS 0
[helpcontext(302005)] HRESULT Close();
[helpcontext(302006)] HRESULT CreateGroup([in] BSTR friendlyName, [in] BSTR formalName, [in] DPGroupFlags flags,
[out,retval] long *v1);
[helpcontext(302007)] HRESULT CreateGroupInGroup([in] long parentid,[in] BSTR friendlyName, [in] BSTR formalName,
[in] DPGroupFlags flags, [out,retval] long *v1);
[helpcontext(302008)] HRESULT CreatePlayer([in] BSTR friendlyName, [in] BSTR formalName,
[in] long receiveEvent, [in] DPPlayerFlags flags,
[out,retval] long *v1);
[helpcontext(302009)] HRESULT DeleteGroupFromGroup([in] long groupParentId, [in] long groupId);
[helpcontext(302010)] HRESULT DeletePlayerFromGroup([in] long groupId, [in] long playerId);
[helpcontext(302011)] HRESULT DestroyGroup([in] long groupId);
[helpcontext(302012)] HRESULT DestroyPlayer([in] long playerId);
[helpcontext(302013)] HRESULT GetDPEnumConnections([in] BSTR guid,[in] DPEnumConnectionFlags flags, [out,retval] DirectPlayEnumConnections **retVal);
[helpcontext(302014)] HRESULT GetDPEnumGroupPlayers([in] long groupId, [in] BSTR sessionGuid, [in] DPEnumPlayerFlags flags, [out,retval] DirectPlayEnumPlayers2 **retVal);
[helpcontext(302015)] HRESULT GetDPEnumGroups( [in] BSTR sessionGuid, [in] DPEnumGroupFlags flags, [out,retval] DirectPlayEnumPlayers2 **retVal);
[helpcontext(302016)] HRESULT GetDPEnumGroupsInGroup( [in] long groupId,[in] BSTR sessionGuid, [in] DPEnumGroupFlags flags, [out,retval] DirectPlayEnumPlayers2 **retVal);
[helpcontext(302017)] HRESULT GetDPEnumPlayers( [in] BSTR sessionGuid, [in] DPEnumPlayerFlags flags, [out,retval] DirectPlayEnumPlayers2 **retVal);
[helpcontext(302018)] HRESULT GetDPEnumSessions([in] DirectPlaySessionData *sessionDesc, [in] long timeOut, [in] DPEnumSessionFlags flags, [out,retval] DirectPlayEnumSessions2 **retVal);
[helpcontext(302019)] HRESULT GetCaps([in,out] DPCAPS *caps, [in] dpGetCapsFlags flags);
[helpcontext(302020)] HRESULT GetGroupData([in] long groupId,[in] DPGetFlags flags,[out,retval] BSTR *ret);
[helpcontext(302021)] HRESULT GetGroupFlags([in] long groupId, [out,retval] DPGroupFlags * flags);
[helpcontext(302022)] HRESULT GetGroupLongName([in] long groupId, [out,retval] BSTR *name);
[helpcontext(302023)] HRESULT GetGroupShortName([in] long groupId, [out,retval] BSTR *name);
[helpcontext(302024)] HRESULT GetGroupParent([in] long groupId,[out,retval] long* ret);
[helpcontext(302025)] HRESULT GetGroupOwner([in] long groupId, [out,retval] long * ret);
[helpcontext(302026)] HRESULT GetMessageCount([in] long playerId, [out,retval] long *count);
[helpcontext(302027)] HRESULT GetMessageQueue([in] long from, [in] long to, [in] DPMessageQueueFlags flags, [in,out] long *nMessage,[in,out] long *nBytes);
[helpcontext(302028)] HRESULT GetPlayerAccountId([in] long playerid,[out,retval] BSTR *acctid);
[helpcontext(302029)] HRESULT GetPlayerAddress([in] long playerId, [out,retval] DirectPlayAddress **ret);
[helpcontext(302030)] HRESULT GetPlayerCaps([in] long playerId, [out] DPCAPS *caps, [in] dpGetCapsFlags flags);
[helpcontext(302031)] HRESULT GetPlayerData([in] long playerId, [in] DPGetFlags flags, [out,retval] BSTR *ret);
[helpcontext(302032)] HRESULT GetPlayerFlags([in] long playerid,[out,retval] DPPlayerFlags *retflags);
// docdoc GetPlayerName replaced by two below.
[helpcontext(302033)] HRESULT GetPlayerFormalName([in] long playerId, [out,retval] BSTR *name);
[helpcontext(302034)] HRESULT GetPlayerFriendlyName([in] long playerId, [out,retval] BSTR *name);
[helpcontext(302035)] HRESULT GetSessionDesc([in,out] DirectPlaySessionData **sessionDesc);
[helpcontext(302036)] HRESULT InitializeConnection([in] DirectPlayAddress *address); //flags not used
[helpcontext(302037)] HRESULT Open([in,out] DirectPlaySessionData *sessionDesc,
[in] DPOpenFlags flags); //flags must be zero
[helpcontext(302038)] HRESULT Receive([in, out] long* fromPlayerId, [in, out] long* toPlayerId,
[in] DPReceiveFlags flags, [out,retval] DirectPlayMessage **ret);
[hidden,helpcontext(302039)] HRESULT ReceiveSize([in, out] long* fromPlayerId, [in, out] long* toPlayerId,
[in] DPReceiveFlags flags, [out,retval] int* dataSize);
[helpcontext(302040)] HRESULT SecureOpen(
[in] DirectPlaySessionData *sessiondesc,
[in] DPOpenFlags flags,
[in] DPSECURITYDESC *security,
[in] DPCREDENTIALS *credentials);
[helpcontext(302041)] HRESULT Send([in] long fromPlayerId, [in] long toPlayerId,
[in] DPSendFlags flags, [in] DirectPlayMessage *msg);
[helpcontext(302042)] HRESULT SendChatMessage([in] long fromPlayerId, [in] long toPlayerId,
[in] DPSendFlags flags, [in] BSTR message);
[helpcontext(302043)] HRESULT SendEx([in] long fromPlayerId, [in] long toPlayerId,
[in] DPSendFlags flags, [in] DirectPlayMessage *msg, [in] long priority,
[in] long timeout, [in] long context,[out,retval] long *messageid);
[helpcontext(302044)] HRESULT CreateMessage([out,retval] DirectPlayMessage **msg);
[helpcontext(302045)] HRESULT SetGroupConnectionSettings([in] long id,[in] DirectPlayLobbyConnection *connection); //flags must be zero
[helpcontext(302046)] HRESULT SetGroupData([in] long groupId, [in] BSTR data, [in] DPSetFlags flags);
[helpcontext(302047)] HRESULT SetGroupName([in] long groupId, [in] BSTR friendlyName,
[in] BSTR formalName, [in] DPSetFlags flags);
[helpcontext(302048)] HRESULT SetGroupOwner([in] long groupId, [in] long ownerId);
[helpcontext(302049)] HRESULT SetPlayerData([in] long playerId, [in] BSTR data, [in] DPSetFlags flags);
[helpcontext(302050)] HRESULT SetPlayerName([in] long playerId, [in] BSTR friendlyName, [in] BSTR formalName, [in] DPSetFlags flags);
[helpcontext(302051)] HRESULT SetSessionDesc([in] DirectPlaySessionData *sessionDesc); //flags not used
[helpcontext(302052)] HRESULT StartSession([in] long id); //flags not used
[helpcontext(302053)] HRESULT CreateSessionData([out,retval] DirectPlaySessionData **sessionDesc);
};
[
object,
uuid(9F76FF10-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectPlayLobby3 Interface"),
pointer_default(unique),
local,
helpcontext(302200)
]
interface DirectPlayLobby3 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(302201)] HRESULT Connect([in] DPConnectFlags flags, [out,retval] DirectPlay4 **directPlay);
[helpcontext(302202)] HRESULT GetDPEnumLocalApplications( [out,retval] DirectPlayEnumLocalApplications **retVal); //flags are zero
[helpcontext(302203)] HRESULT GetConnectionSettings([in] long applicationId,
[out,retval] DirectPlayLobbyConnection **connection);
[helpcontext(302204)] HRESULT ReceiveLobbyMessage([in] long applicationId,
[in,out] long *messageFlags,
[out,retval] DirectPlayMessage **data);
[hidden,helpcontext(302205)] HRESULT ReceiveLobbyMessageSize([in] long applicationId,
[in,out] long *messageFlags,
[out,retval] long *dataSize);
//TODO CONSIDER CHANGING THIS!!!
[helpcontext(302206)] HRESULT RunApplication(
[in] DirectPlayLobbyConnection *connection,
[in] long receiveEvent,
[out,retval] long * applicationId);
[helpcontext(302207)] HRESULT SendLobbyMessage([in] DPLMsg flags,
[in] long applicationId,
[in] DirectPlayMessage *msg);
[helpcontext(302208)] HRESULT SetConnectionSettings([in] long applicationId,
[in] DirectPlayLobbyConnection *connection);
[helpcontext(302209)] HRESULT SetLobbyMessageEvent([in] long applicationId, [in] long receiveEvent);
[helpcontext(302210)] HRESULT RegisterApplication( [in] DPAPPLICATIONDESC2 *ApplicationInfo);
[helpcontext(302211)] HRESULT UnregisterApplication( [in] BSTR guidApplication);
[helpcontext(302212)] HRESULT WaitForConnectionSettings([in] DPLWait flags);
[helpcontext(302213)] HRESULT CreateMessage([out,retval] DirectPlayMessage **msg);
[helpcontext(302214)] HRESULT CreateConnectionData([out,retval] DirectPlayLobbyConnection **connection);
[helpcontext(302215)] HRESULT CreateINetAddress([in] BSTR addr,[in] int port,[out,retval] DirectPlayAddress **ret);
[helpcontext(302216)] HRESULT CreateComPortAddress([in] long port,[in] long baudRate, [in] long stopBits, [in] long parity, [in] long flowcontrol,[out,retval] DirectPlayAddress **ret);
[helpcontext(302217)] HRESULT CreateLobbyProviderAddress([in] BSTR guid,[out,retval] DirectPlayAddress **ret);
[helpcontext(302218)] HRESULT CreateServiceProviderAddress([in] BSTR guid,[out,retval] DirectPlayAddress **ret);
[helpcontext(302219)] HRESULT CreateModemAddress([in] BSTR modem, [in] BSTR phone, [out,retval] DirectPlayAddress **ret);
[helpcontext(302220)] HRESULT CreateIPXAddress([out,retval] DirectPlayAddress **ret);
[helpcontext(302221),hidden] HRESULT CreateCustomAddress([in] long size, [in] void *data,[out,retval] DirectPlayAddress **ret);
[helpcontext(302222)] HRESULT GetModemName([in] long index,[out,retval] BSTR *name);
[helpcontext(302223)] HRESULT GetModemCount([out,retval] long *count);
};
///////////////////////////////////////////////////////////////////////////
//
// RM INTERFACE CALLBACKS
//
///////////////////////////////////////////////////////////////////////////
[ object,
uuid(BBD5AD04-8E91-11d1-8808-00C04FC2C602), // Direct44
helpstring("Direct3DRMEnumerateObjectsCallback Interface"),
pointer_default(unique),
helpcontext(302400)
]
interface Direct3DRMEnumerateObjectsCallback : IUnknown
{
import "oaidl.idl";
[helpcontext(302401)] HRESULT CallbackRMEnumerateObjects([in] Direct3DRMObject *object, [in] USERARG *userArgument);
};
[ object,
uuid(BBD5AD03-8E91-11d1-8808-00C04FC2C602), //Direct54
helpstring("Direct3DRMCallback Interface"),
pointer_default(unique),
helpcontext(302600)
]
interface Direct3DRMCallback : IUnknown
{
import "oaidl.idl";
// This function is called after the object has been destroyed,
// so this function cannot be called with the object as argument.
[helpcontext(302601)] HRESULT CallbackRMDestroyObject([in] USERARG *args);
};
/*
[ object,
uuid(BBD5AD06-8E91-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMUserVisualCallback Interface"),
pointer_default(unique),
helpcontext(302800)
]
interface Direct3DRMUserVisualCallback : IUnknown
{
import "oaidl.idl";
[helpcontext(302801)] HRESULT CallbackRMUserVisual([in] Direct3DRMUserVisual *uv,
[in] USERARG *userArgument, [in] D3DRMUserVisualReason r,
[in] Direct3DRMDevice3 *d, [in] Direct3dRMViewport2 *v, [out,retval] DBOOLFlags *retv);
};
*/
///////////////////////////////////////////////////////////////////////////
[ object,
uuid(BBD5AD0A-8E91-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMLoadCallback Interface"),
pointer_default(unique),
helpcontext(303000)
]
interface Direct3DRMLoadCallback : IUnknown
{
import "oaidl.idl";
[helpcontext(303001)] HRESULT CallbackRMLoad([in] Direct3DRMObject **Obj, [in] BSTR guid, [in] USERARG *userArgument);
};
///////////////////////////////////////////////////////////////////////////
[ object,
uuid(BBD5AD16-8E91-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMLoadTextureCallback3 Interface"),
pointer_default(unique),
helpcontext(303200)
]
interface Direct3DRMLoadTextureCallback3 : IUnknown
{
import "oaidl.idl";
[helpcontext(303201)] HRESULT CallbackRMLoadTexture([in] BSTR textureName, [in] USERARG *userArgument,
[out, retval] Direct3DRMTexture3 **retv);
};
///////////////////////////////////////////////////////////////////////////
//
// Direct3DIM
//
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FDD5-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3D7 Interface"),
pointer_default(unique),
local,
helpcontext(303400)
]
interface Direct3D7 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(303401)] HRESULT CreateDevice([in] BSTR guid, DirectDrawSurface7 *surf, [out, retval] Direct3DDevice7 **ret);
[helpcontext(303402)] HRESULT CreateVertexBuffer([in] D3DVERTEXBUFFERDESC *desc,[in] D3DDPFlags flags,[out,retval] Direct3dVertexBuffer7 **f);
[helpcontext(303403)] HRESULT EvictManagedTextures();
[helpcontext(303404)] HRESULT GetDevicesEnum([out,retval] Direct3DEnumDevices **retv);
[helpcontext(303405)] HRESULT GetDirectDraw([out,retval] DirectDraw7 **retv);
[helpcontext(303406)] HRESULT GetEnumZBufferFormats([in] BSTR guid, [out,retval] Direct3DEnumPixelFormats **retv);
};
[
object,
local,
uuid(9F76FDD7-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DDevice7 Interface"),
pointer_default(unique),
helpcontext(303600)
]
interface Direct3DDevice7 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(303601)] HRESULT ApplyStateBlock([in] long blockHandle);
[helpcontext(303602)] HRESULT BeginScene();
[helpcontext(303603)] HRESULT BeginStateBlock();
[helpcontext(303604)] HRESULT CaptureStateBlock([in] long blockHandle);
[helpcontext(303605)] HRESULT Clear([in] long count, [in] SAFEARRAY(D3DRECT) *recs, [in] d3dClearFlags flags, [in] long color,[in] float z,[in] long stencil);
[helpcontext(303606)] HRESULT ComputeSphereVisibility(D3DVECTOR *center,float *radius ,[out,retval] long *returnVal);
[helpcontext(303607)] HRESULT DeleteStateBlock([in] long blockHandle);
[helpcontext(303608)] HRESULT DrawIndexedPrimitive(
[in] D3DPrimitiveType d3dpt,[in] d3dFVFFlags d3dfvf,
[in] AVERT *vertices,[in] long VertexCount,
[in] SAFEARRAY(short) *indices, [in] long IndicesCount,
[in] D3DDPFlags flags);
[helpcontext(303609)] HRESULT DrawIndexedPrimitiveVB([in] D3DPrimitiveType d3dpt,
[in] Direct3DVertexBuffer7 *vertexBuffer,
[in] long startVertex,
[in] long numVertices,
[in] SAFEARRAY(short) *indexArray,
[in] long indexcount,
[in] D3DDPFlags flags);
[helpcontext(303610)] HRESULT DrawPrimitive(
[in] D3DPrimitiveType d3dpt,[in] d3dFVFFlags d3dfvf,
[in] AVERT *vertices, [in] long VertexCount,
[in] D3DDPFlags flags);
[helpcontext(303611)] HRESULT DrawPrimitiveVB([in] D3DPrimitiveType d3dpt,
[in] Direct3DVertexBuffer7 *vertexBuffer,
[in] long startVertex,
[in] long numVertices,
[in] D3DDPFlags flags);
//[helpcontext(303612)] HRESULT DuplicateStateBlock([in] long hndl,[out,retval] long * ret);
[helpcontext(303613)] HRESULT EndScene();
[helpcontext(303614)] HRESULT EndStateBlock([in] long *blockHandle);
[helpcontext(303615)] HRESULT GetCaps( [in,out] D3DDEVICEDESC7 *desc);
[helpcontext(303616)] HRESULT GetClipStatus( [in,out] D3DCLIPSTATUS *clipStatus);
[helpcontext(303617)] HRESULT GetDirect3D( [out, retval] Direct3d7 **dev);
[helpcontext(303618)] HRESULT GetLight([in] long LightIndex, [in,out] D3DLIGHT7 *Light);
[helpcontext(303619)] HRESULT GetLightEnable([in] long LightIndex, [out,retval] VARIANT_BOOL *b);
[helpcontext(303620)] HRESULT GetMaterial([in,out] D3DMATERIAL7 *Material);
[helpcontext(303621)] HRESULT GetRenderState([in]D3DRenderStateType state ,[out,retval] long *renderstate);
[helpcontext(303622)] HRESULT GetRenderTarget([out,retval] DirectDrawSurface7 **ppval);
[helpcontext(303623)] HRESULT GetTexture([in] long stage,[out,retval] DirectDrawSurface7 **retv);
[helpcontext(303624)] HRESULT GetTextureFormatsEnum([out,retval] Direct3DEnumPixelFormats **retval);
[helpcontext(303625)] HRESULT GetTextureStageState([in]long stage,[in] D3DTextureStageStateType state,[out,retval] long *val);
[helpcontext(303626)] HRESULT GetTransform([in] D3DTransformStateType transformType,[in,out] D3DMATRIX *matrix);
[helpcontext(303627)] HRESULT GetViewport([in,out] D3DVIEWPORT7 *viewport);
[helpcontext(303628)] HRESULT LightEnable([in] long LightIndex, [in] VARIANT_BOOL bEnable);
[helpcontext(303629)] HRESULT Load([in] DirectDrawSurface7 *DestTex,[in] long xDest, [in] long yDest,[in] DirectDrawSurface7 *SrcTex, [in] RECT *rcSrcRect,[in] long flags);
[helpcontext(303630)] HRESULT MultiplyTransform([in] D3DTransformStateType dstTransfromStateType,[in,out] D3DMATRIX *matrix);
//[helpcontext(303631)] HRESULT OverlayStateBlock([in] long blockHandle);
[helpcontext(303632)] HRESULT PreLoad([in] DirectDrawSurface7 *texture );
[helpcontext(303633)] HRESULT SetClipStatus( [in] D3DCLIPSTATUS *clipStatus);
[helpcontext(303634)] HRESULT SetLight([in] long LightIndex, [in] D3DLIGHT7 *Light);
[helpcontext(303635)] HRESULT SetMaterial([in] D3DMATERIAL7 *mat);
[helpcontext(303636)] HRESULT SetRenderState([in]D3DRenderStateType state,[in] long renderstate);
[helpcontext(303637)] HRESULT SetRenderTarget([in] DirectDrawSurface7 *surface);
[helpcontext(303638)] HRESULT SetTexture([in] long stage,[in] DirectDrawSurface7 *texture);
[helpcontext(303639)] HRESULT SetTextureStageState([in]long stage,[in] D3DTextureStageStateType state,[in] long value);
[helpcontext(303640)] HRESULT SetTransform([in] D3DTransformStateType transformType,[in] D3DMATRIX *matrix);
[helpcontext(303641)] HRESULT SetViewport([in] D3DVIEWPORT7 *viewport);
[helpcontext(303642)] HRESULT ValidateDevice([out,retval] long *passes);
[helpcontext(303643)] HRESULT SetTextureStageStateSingle([in]long stage,[in] D3DTextureStageSingle state,[in] float value);
[helpcontext(303644)] HRESULT GetTextureStageStateSingle([in]long stage,[in] D3DTextureStageSingle state,[out,retval] float *val);
[helpcontext(303645)] HRESULT GetInfo([in] D3DDevInfoId lDevInfoID,[in,out] void * DevInfoType,[in] long lSize);
[helpcontext(303646)] HRESULT SetRenderStateSingle([in]D3DRenderStateSingle state,[in] float val);
[helpcontext(303647)] HRESULT GetRenderStateSingle([in]D3DRenderStateSingle state ,[out,retval] float *val);
[helpcontext(303648)] HRESULT GetDeviceGuid([out,retval] BSTR *ret);
//check help
[helpcontext(303649)] HRESULT CreateStateBlock([in] D3DStateBlockType d3dsbType, [out,retval] long *blockHandle);
[helpcontext(303650)] HRESULT SetClipPlane([in] long Index, [in] float A, [in] float B ,[in] float C, [in] float D);
[helpcontext(303651)] HRESULT GetClipPlane([in] long Index, [in,out] float *A, [in,out] float *B ,[in,out] float *C, [in,out] float *D);
};
[
object,
uuid(9F76FDDA-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DVertexBuffer7 Interface"),
pointer_default(unique),
local,
helpcontext(303800)
]
interface Direct3DVertexBuffer7 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(303801)] HRESULT GetVertexBufferDesc([in,out] D3DVERTEXBUFFERDESC *desc);
[helpcontext(303802)] HRESULT GetVertices([in] long startIndex, [in] long count,[in] void *verts);
[helpcontext(303803)] HRESULT Lock([in] DDLockFlags flags);
[helpcontext(303804)] HRESULT Optimize([in] Direct3DDevice7 *dev); //flags not used
[helpcontext(303805)] HRESULT ProcessVertices([in] D3DVopFlags vertexOp,
[in] long destIndex,
[in] long count,
[in] Direct3DVertexBuffer7 *srcBuffer,
[in] long srcIndex,
[in] Direct3DDevice7 *dev,
[in] D3DProcessVerticesFlags flags); //has flags set to zero
[helpcontext(303806)] HRESULT SetVertices([in] long startIndex, [in] long count,[in] void *verts);
[helpcontext(303807)] HRESULT Unlock();
[hidden] HRESULT SetVertexSize([in] long vertexSizeInBytes);
};
[
object,
uuid(9F76FDD6-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DEnumPixelFormats Interface"),
pointer_default(unique),
local,
helpcontext(304000)
]
interface Direct3DEnumPixelFormats : IUnknown{
[helpcontext(304001)] HRESULT GetItem([in] long index, [in,out] DDPIXELFORMAT *pixelFormat);
[helpcontext(304002)] HRESULT GetCount([out,retval] long *count);
};
[
object,
uuid(9F76FDD3-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DEnumDevices Interface"),
pointer_default(unique),
local,
helpcontext(304200)
]
interface Direct3DEnumDevices : IUnknown
{
import "oaidl.idl";
[helpcontext(304201)] HRESULT GetGuid([in] long index,[out,retval] BSTR *guid);
[helpcontext(304202)] HRESULT GetDescription([in] long index,[out,retval] BSTR *guid);
[helpcontext(304203)] HRESULT GetName([in] long index,[out,retval] BSTR *guid);
[helpcontext(304204)] HRESULT GetDesc([in] long index, [in,out] D3DDEVICEDESC7 *hwDesc);
[helpcontext(304205)] HRESULT GetCount([out,retval]long *count);
};
///////////////////////////////////////////////////////////////////////////
//
// Direct Draw Interfaces
//
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FDC9-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectDrawPalette Interface"),
pointer_default(unique),
local,
helpcontext(304400)
]
interface DirectDrawPalette : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpddp);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpddp);
[helpcontext(304401)] HRESULT GetCaps( [out, retval] DDPCapsFlags *caps);
[helpcontext(304402)] HRESULT GetEntries([in] long start, [in] long count, [in,out] SAFEARRAY(APAL) *val);
[helpcontext(304403)] HRESULT SetEntries([in] long start, [in] long count, [in] SAFEARRAY(APAL) *val);
[hidden] HRESULT SetEntriesHalftone([in] long start, [in] long count);
[hidden] HRESULT SetEntriesSystemPalette([in] long start, [in] long count);
};
[
object,
uuid(9F76FDCA-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectDrawClipper Interface"),
pointer_default(unique),
local,
helpcontext(304600)
]
interface DirectDrawClipper : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpddc);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpddc);
[helpcontext(304601)] HRESULT GetClipListSize( [out, retval] int *count);
[helpcontext(304602)] HRESULT GetClipList([in,out] SAFEARRAY(RECT) *rects );
[helpcontext(304603)] HRESULT SetClipList( [in] long count, [in] SAFEARRAY(RECT) *rects );
[helpcontext(304604)] HRESULT GetHWnd([out, retval] HWnd *hdl);
[helpcontext(304605)] HRESULT SetHWnd( [in] HWnd hdl);
[helpcontext(304606)] HRESULT IsClipListChanged( [out, retval] int *status);
};
[
object,
uuid(9F76FDE0-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectDrawColorControl Interface"),
pointer_default(unique),
local,
helpcontext(304800)
]
interface DirectDrawColorControl : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdds);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdds);
[helpcontext(304801)] HRESULT GetColorControls([in,out] DDCOLORCONTROL *colorControl);
[helpcontext(304802)] HRESULT SetColorControls([in] DDCOLORCONTROL *colorControl);
};
[
object,
uuid(9F76FDE1-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectDrawEnum Interface"),
pointer_default(unique),
local,
helpcontext(305000)
]
interface DirectDrawEnum : IUnknown
{
import "oaidl.idl";
[helpcontext(305001)] HRESULT GetGuid([in] long index,[out,retval] BSTR *guid);
[helpcontext(305002)] HRESULT GetDescription([in] long index,[out,retval] BSTR *ret);
[helpcontext(305003)] HRESULT GetName([in] long index,[out,retval] BSTR *ret);
[helpcontext(305004)] HRESULT GetMonitorHandle([in] long index,[out,retval] long *ret);
[helpcontext(305005)] HRESULT GetCount([out,retval]long *count);
};
[
object,
uuid(9F76FFFF-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectDrawEnumModes Interface"),
pointer_default(unique),
local,
helpcontext(305200)
]
interface DirectDrawEnumModes : IUnknown
{
import "oaidl.idl";
[helpcontext(305201)] HRESULT GetItem( [in]long index, [in,out] DDSURFACEDESC2 *info);
[helpcontext(305202)] HRESULT GetCount([out,retval]long *count);
};
[
object,
uuid(9F76FDE6-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectDrawEnumSurfaces Interface"),
pointer_default(unique),
local,
helpcontext(305400)
]
interface DirectDrawEnumSurfaces : IUnknown
{
import "oaidl.idl";
[helpcontext(305401)] HRESULT GetItem( [in]long index, [out,retval] DirectDrawSurface7 **retVal);
[helpcontext(305402)] HRESULT GetCount([out,retval]long *count);
};
[
object,
uuid(9F76FDE7-8E92-11d1-8808-00C04FC2C602),
helpstring("IDirectDraw7 Interface"),
pointer_default(unique),
local,
helpcontext(305600)
]
interface DirectDraw7 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(305601)] HRESULT CreateClipper([in] long flags, [out, retval] DirectDrawClipper **val);
[helpcontext(305602)] HRESULT CreatePalette([in] DDPCapsFlags flags, [in] SAFEARRAY(APAL) *pe, [out, retval] DirectDrawPalette **val);
[helpcontext(305603)] HRESULT CreateSurface([in] DDSURFACEDESC2 *dd, [out, retval] DirectDrawSurface7 **retv);
[helpcontext(305604)] HRESULT CreateSurfaceFromFile([in] BSTR file, [in,out] DDSURFACEDESC2 *dd, [out, retval] DirectDrawSurface7 **retv);
[helpcontext(305605)] HRESULT CreateSurfaceFromResource([in] BSTR file, [in] BSTR resName, [in,out] DDSURFACEDESC2 *ddsd, [out, retval] DirectDrawSurface7 **retv);
[helpcontext(305606)] HRESULT DuplicateSurface([in] DirectDrawSurface7 *ddIn,[out, retval] DirectDrawSurface7 **ddOut);
[helpcontext(305607)] HRESULT FlipToGDISurface();
[helpcontext(305608)] HRESULT GetAvailableTotalMem([in] DDSCAPS2 *ddsCaps, [out, retval] long *m);
[helpcontext(305609)] HRESULT GetCaps([in,out] DDCAPS *hwCaps, [in,out] DDCAPS *helCaps);
[helpcontext(305610)] HRESULT GetDirect3D([out, retval] Direct3d7 **retv);
[helpcontext(305611)] HRESULT GetDisplayMode( [in,out] DDSURFACEDESC2 *surface);
[helpcontext(305612)] HRESULT GetDisplayModesEnum([in] DDEDMFlags flags,[in] DDSURFACEDESC2 *ddsd,[out,retval] DirectDrawEnumModes **retval);
[helpcontext(305613)] HRESULT GetFourCCCodes( [in,out] SAFEARRAY(long) *ccCodes);
[helpcontext(305614)] HRESULT GetFreeMem( [in] DDSCAPS2 *ddsCaps, [out, retval] long *m);
[helpcontext(305615)] HRESULT GetGDISurface( [out, retval] DirectDrawSurface7 **s);
[helpcontext(305616)] HRESULT GetMonitorFrequency([out, retval] long *freq);
[helpcontext(305617)] HRESULT GetNumFourCCCodes([out, retval] long *nCodes);
[helpcontext(305618)] HRESULT GetScanLine([in,out] long *lines, [out, retval] long *status);
[helpcontext(305619)] HRESULT GetSurfaceFromDC([in] long hdc,[out,retval] DirectDrawSurface7 **retv);
[helpcontext(305620)] HRESULT GetSurfacesEnum([in] DDEnumSurfacesFlags flags, [in] DDSURFACEDESC2 *desc, [out,retval] DirectDrawEnumSurfaces **ret);
[helpcontext(305621)] HRESULT GetVerticalBlankStatus([out, retval] long *status);
[helpcontext(305622)] HRESULT LoadPaletteFromBitmap([in] BSTR bName, [out, retval] DirectDrawPalette **retv);
[helpcontext(305623)] HRESULT RestoreAllSurfaces();
[helpcontext(305624)] HRESULT RestoreDisplayMode();
[helpcontext(305625)] HRESULT SetCooperativeLevel([in] HWnd hdl, [in] DDSCLFlags flags);
[helpcontext(305626)] HRESULT SetDisplayMode([in] long w, [in] long h, [in] long bpp, [in] long ref,[in] DDSDMFlags mode);
[helpcontext(305627)] HRESULT TestCooperativeLevel([out,retval] long *status);
[helpcontext(305628)] HRESULT WaitForVerticalBlank([in] DDWaitVBFlags flags, [in] long handle, [out, retval] long *status);
[helpcontext(305629)] HRESULT GetDeviceIdentifier([in] DDDeviceIDFlags flags,[out,retval] DirectDrawIdentifier **ret);
};
[
object,
uuid(9F76FDE8-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectDrawSurface7 Interface"),
pointer_default(unique),
local,
helpcontext(305800)
]
interface DirectDrawSurface7 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdds);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdds);
[helpcontext(305801)] HRESULT AddAttachedSurface( [in] DirectDrawSurface7 *ddS);
[helpcontext(305802)] HRESULT Blt( [in] RECT *destRect, [in] DirectDrawSurface7 *ddS, [in] RECT *srcRect, [in] DDBltFlags flags, [out, retval] long *status);
[helpcontext(305803)] HRESULT BltColorFill( [in] RECT *destRect, [in] long fillvalue, [out, retval] long *status );
[helpcontext(305804)] HRESULT BltFast( [in] long dx, [in] long dy, [in] DirectDrawSurface7 *dds, [in] RECT *srcRect, [in] DDBltFastFlags trans, [out, retval] long *status);
[helpcontext(305805)] HRESULT BltFx( [in] RECT *destRect, [in] DirectDrawSurface7 *ddS, [in] RECT *srcRect, [in] DDBltFlags flags, [in] DDBLTFX *bltfx, [out, retval] long *status );
[helpcontext(305806)] HRESULT BltToDC([in] long hdc, [in] RECT *srcRect, [in] RECT *destRect);
[helpcontext(305807)] HRESULT ChangeUniquenessValue();
[helpcontext(305808)] HRESULT DeleteAttachedSurface( [in] DirectDrawSurface7 *dds) ;
[helpcontext(305809)] HRESULT DrawBox([in] long x1, [in] long y1, [in] long x2, [in] long y2);
[helpcontext(305810)] HRESULT DrawCircle([in] long x1, [in] long y1, [in] long r);
[helpcontext(305811)] HRESULT DrawEllipse([in] long x1, [in] long y1, [in] long x2, [in] long y2);
[helpcontext(305812)] HRESULT DrawLine([in] long x1, [in] long y1, [in] long x2, [in] long y2);
[helpcontext(305813)] HRESULT DrawRoundedBox([in] long x1, [in] long y1, [in] long x2, [in] long y2,[in] long rw, [in] long rh);
[helpcontext(305814)] HRESULT DrawText([in] long x, [in] long y, [in] BSTR text, [in] VARIANT_BOOL b);
[helpcontext(305815)] HRESULT Flip( [in] DirectDrawSurface7 *dds, [in] DDFlipFlags flags);
[helpcontext(305816)] HRESULT GetAttachedSurface( [in] DDSCaps2 *caps, [out, retval] DirectDrawSurface7 **dds);
[helpcontext(305817)] HRESULT GetAttachedSurfaceEnum([out,retval] DirectDrawEnumSurfaces **retval);
[helpcontext(305818)] HRESULT GetBltStatus([in] DDGFSFlags flags, [out, retval] long *status);
[helpcontext(305819)] HRESULT GetCaps( [in,out] DDSCAPS2 *caps);
[helpcontext(305820)] HRESULT GetClipper( [out, retval] DirectDrawClipper **val);
[helpcontext(305821)] HRESULT GetColorKey( [in] long flags, [in,out] DDCOLORKEY *val);
[helpcontext(305822)] HRESULT GetDC( [out, retval] long *hdc);
[helpcontext(305823)] HRESULT GetDirectDraw( [out, retval] DirectDraw7 **val);
[helpcontext(305824)] HRESULT GetDirectDrawColorControl([out,retval] DirectDrawColorControl **retv);
[helpcontext(305825)] HRESULT GetDirectDrawGammaControl([out,retval] DirectDrawGammaControl **retv);
[helpcontext(305826)] HRESULT GetDrawStyle([out,retval] long *drawStyle);
[helpcontext(305827)] HRESULT GetDrawWidth([out,retval] long *drawWidth);
[helpcontext(305828)] HRESULT GetFillColor([out,retval] long *color);
[helpcontext(305829)] HRESULT GetFillStyle([out,retval] long *fillStyle);
[helpcontext(305830)] HRESULT GetFlipStatus( [in] DDGfsFlags flags, [out, retval] long *status);
[helpcontext(305831)] HRESULT GetFontTransparency([out,retval] VARIANT_BOOL *b);
[helpcontext(305832)] HRESULT GetForeColor([out,retval] long *color);
[helpcontext(305833)] HRESULT GetLockedPixel([in] int x, [in] int y, [out,retval] long *col);
//[helpcontext(305834)] HRESULT GetLockedSurfaceBits([in,out] ABYTE *memory);
[helpcontext(305835)] HRESULT GetPalette( [out, retval] DirectDrawPalette **val);
[helpcontext(305836)] HRESULT GetPixelFormat( [in,out] DDPIXELFORMAT *pf);
[helpcontext(305837)] HRESULT GetSurfaceDesc([in,out] DDSURFACEDESC2 *surface);
[helpcontext(305838)] HRESULT GetUniquenessValue([out,retval] long *retVal);
[helpcontext(305839)] HRESULT IsLost([out, retval] long *status);
[helpcontext(305840)] HRESULT Lock( [in] RECT *r, [in] DDSURFACEDESC2 *desc, [in] ddLockFlags flags, [in] Handle hnd);
[helpcontext(305841)] HRESULT ReleaseDC([in] long hdc);
[helpcontext(305842)] HRESULT Restore();
[helpcontext(305843)] HRESULT SetClipper( [in] DirectDrawClipper *val) ;
[helpcontext(305844)] HRESULT SetColorKey( [in] DDCKeyFlags flags, [in] DDCOLORKEY *val);
[helpcontext(305845)] HRESULT SetDrawStyle([in] long drawStyle);
[helpcontext(305846)] HRESULT SetDrawWidth([in] long drawWidth);
[helpcontext(305847)] HRESULT SetFillColor([in] long color);
[helpcontext(305848)] HRESULT SetFillStyle([in] long fillStyle);
[helpcontext(305849)] HRESULT SetFont([in] IFont *font);
[helpcontext(305850)] HRESULT SetFontTransparency([in] VARIANT_BOOL b);
[helpcontext(305851)] HRESULT SetForeColor([in] long color);
[helpcontext(305852)] HRESULT SetLockedPixel([in] int x, [in] int y, [in] long col);
//[helpcontext(305853)] HRESULT SetLockedSurfaceBits([in,out] ABYTE *memory);
[helpcontext(305854)] HRESULT SetPalette([in] DirectDrawPalette *ddp);
[helpcontext(305855)] HRESULT Unlock( [in] RECT *r);
[helpcontext(305856)] HRESULT SetPriority([in] long Priority);
[helpcontext(305857)] HRESULT GetPriority([out,retval] long *Priority);
[helpcontext(305858)] HRESULT GetLOD([out,retval] long *lod);
[helpcontext(305859)] HRESULT SetLOD([in] long lod);
[helpcontext(305860)] HRESULT GetLockedArray([in] SAFEARRAY(byte) *array);
[helpcontext(305868)] HRESULT SetFontBackColor([in] long color);
[helpcontext(305869)] HRESULT GetFontBackColor([out,retval] long *color);
[helpcontext(305870)] HRESULT UpdateOverlay( [in] RECT *rect, [in] DirectDrawSurface7 *dds, [in] RECT *rectD, [in] DDOverFlags flags);
[helpcontext(305871)] HRESULT UpdateOverlayZOrder( [in] DDOverZFlags flags, [in] DirectDrawSurface7 *dds);
[helpcontext(305872)] HRESULT GetOverlayPosition( [in,out] long *x, [in,out] long *y);
[helpcontext(305873)] HRESULT SetOverlayPosition( [in] long x, [in] long y);
[helpcontext(305874)] HRESULT GetOverlayZOrdersEnum([in] DDEnumOverlayZFlags flags,[out,retval] DirectDrawEnumSurfaces **retval);
[helpcontext(305875)] HRESULT UpdateOverlayFx([in] RECT *rect, [in] DirectDrawSurface7 *dds, [in] RECT *rectD, [in] DDOverFlags flags, [in,out] DDOVERLAYFX *ddoverfx);
/*
//CONSIDER USING A STRING
[helpcontext(305868)] HRESULT FreePrivateData([in] BSTR guid);
[helpcontext(305869)] HRESULT GetPrivateData([in] BSTR guid,[in,out] SAFEARRAY(long)* data);
[helpcontext(305870)] HRESULT GetPrivateDataSize([in] BSTR guid,[out,retval] long *size);
[helpcontext(305871)] HRESULT SetPrivateData([in] BSTR guid, [in] SAFEARRAY(long) *data);
*/
};
[
object,
uuid(9F76FDE9-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectDrawGammaControl Interface"),
pointer_default(unique),
local ,
helpcontext(306000)
]
interface DirectDrawGammaControl : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdds);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdds);
[helpcontext(306001)] HRESULT GetGammaRamp([in] DDSGRFlags flags,[in,out] DDGAMMARAMP *gammaRamp);
[helpcontext(306002)] HRESULT SetGammaRamp([in] DDSGRFlags flags,[in] DDGAMMARAMP *gammaRamp);
};
///////////////////////////////////////////////////////////////////////////
//
// Direct 3D Retain Mode Interfaces
//
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE0E-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMObject Interface"),
pointer_default(unique),
local,
helpcontext(306200)
]
interface Direct3DRMObject : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(306201)] HRESULT AddDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *arg);
[helpcontext(306202)] HRESULT DeleteDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *args);
[helpcontext(306203)] HRESULT CloneObject([out,retval] RMCLONEOBJECT **retv);
[helpcontext(306204)] HRESULT SetAppData( [in] long data);
[helpcontext(306205)] HRESULT GetAppData( [out, retval] long *data);
[helpcontext(306206)] HRESULT SetName ([in] BSTR name);
[helpcontext(306207)] HRESULT GetName([out,retval] BSTR *name); //LPSTR
[helpcontext(306208)] HRESULT GetClassName([out,retval] BSTR *name); //LPSTR
};
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE0F-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMVisual Interface"),
pointer_default(unique),
local,
helpcontext(306400)
]
interface Direct3DRMVisual : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
//
/*** D3DRMObjects ***/
//
[helpcontext(306201)] HRESULT AddDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *arg);
[helpcontext(306202)] HRESULT DeleteDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *args);
[helpcontext(306203)] HRESULT CloneObject([out,retval] RMCLONEOBJECT **retv);
[helpcontext(306204)] HRESULT SetAppData( [in] long data);
[helpcontext(306205)] HRESULT GetAppData( [out, retval] long *data);
[helpcontext(306206)] HRESULT SetName ([in] BSTR name);
[helpcontext(306207)] HRESULT GetName([out,retval] BSTR *name); //LPSTR
[helpcontext(306208)] HRESULT GetClassName([out,retval] BSTR *name); //LPSTR
};
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE32-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMFace2 Interface"),
pointer_default(unique),
local,
helpcontext(306600)
]
interface Direct3DRMFace2 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(306201)] HRESULT AddDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *arg);
[helpcontext(306202)] HRESULT DeleteDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *args);
[helpcontext(306203)] HRESULT CloneObject([out,retval] RMCLONEOBJECT **retv);
[helpcontext(306204)] HRESULT SetAppData( [in] long data);
[helpcontext(306205)] HRESULT GetAppData( [out, retval] long *data);
[helpcontext(306206)] HRESULT SetName ([in] BSTR name);
[helpcontext(306207)] HRESULT GetName([out,retval] BSTR *name); //LPSTR
[helpcontext(306208)] HRESULT GetClassName([out,retval] BSTR *name); //LPSTR
//
// IDirect3DRMFace methods - docdoc: based on D3DRMObject
//
[helpcontext(306609)] HRESULT AddVertex([in] float x, [in] float y, [in] float z);
[helpcontext(306610)] HRESULT AddVertexAndNormalIndexed([in] long vertexIndex, [in] long normalIndex);
[helpcontext(306611)] HRESULT GetColor([out, retval] D3Dcolor *retv);
[helpcontext(306612)] HRESULT GetMaterial([out, retval] Direct3DRMMaterial2 **retv);
[helpcontext(306613)] HRESULT GetNormal([in,out] D3DVECTOR *val);
[helpcontext(306614)] HRESULT GetTexture([out, retval] Direct3DRMTexture3 **ref);
[helpcontext(306615)] HRESULT GetTextureCoordinateIndex([in] long which, [out, retval] int *retv);
[helpcontext(306616)] HRESULT GetTextureCoordinates([in] long vertex, [in,out] float *u,[in,out] float *v);
[helpcontext(306617)] HRESULT GetVertex([in] long idx, [in,out] D3DVECTOR *vert,[in,out] D3DVECTOR *norm);
[helpcontext(306618)] HRESULT GetVertexCount([out, retval] int *retv);
[helpcontext(306619)] HRESULT GetVertexIndex([in] long which, [out, retval] int *retv);
[helpcontext(306620)] HRESULT GetVertices([in] long vertexCount, [in,out] SAFEARRAY(D3DVECTOR) *coord,[in,out] SAFEARRAY(D3DVECTOR) *normals);
[hidden] HRESULT GetVerticesJava([in] long vertex_cnt, [in,out] float *coord,[in,out] float *normals);
[helpcontext(306621)] HRESULT SetColor([in] D3Dcolor c);
[helpcontext(306622)] HRESULT SetColorRGB([in] float r, [in] float g, [in] float b);
[helpcontext(306623)] HRESULT SetMaterial([in] Direct3DRMMaterial2 *ref);
[helpcontext(306624)] HRESULT SetTexture([in] Direct3DRMTexture3 *ref);
[helpcontext(306625)] HRESULT SetTextureCoordinates([in] long vertex, [in] float u,[in] float v);
[helpcontext(306626)] HRESULT SetTextureTopology([in] DBOOLFlags wrap_u, [in] DBOOLFlags wrap_v);
[helpcontext(306627)] HRESULT GetTextureTopology([in,out] DBOOLFlags *wrap_u, [in,out] DBOOLFlags *wrap_v);
};
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE03-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMLight Interface"),
pointer_default(unique),
local,
helpcontext(306800)
]
interface Direct3DRMLight : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(306201)] HRESULT AddDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *arg);
[helpcontext(306202)] HRESULT DeleteDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *args);
[helpcontext(306203)] HRESULT CloneObject([out,retval] RMCLONEOBJECT **retv);
[helpcontext(306204)] HRESULT SetAppData( [in] long data);
[helpcontext(306205)] HRESULT GetAppData( [out, retval] long *data);
[helpcontext(306206)] HRESULT SetName ([in] BSTR name);
[helpcontext(306207)] HRESULT GetName([out,retval] BSTR *name); //LPSTR
[helpcontext(306208)] HRESULT GetClassName([out,retval] BSTR *name); //LPSTR
//
// IDirect3DRMLight methods - docdoc: based on iD3DRMObject!
//
[helpcontext(306809)] HRESULT SetType([in] D3DRMLightType t);
[helpcontext(306810)] HRESULT SetColor([in] D3Dcolor c);
[helpcontext(306811)] HRESULT SetColorRGB([in] float r, [in] float g, [in] float b);
[helpcontext(306812)] HRESULT SetRange([in] float rng);
[helpcontext(306813)] HRESULT SetUmbra([in] float u);
[helpcontext(306814)] HRESULT SetPenumbra([in] float p);
[helpcontext(306815)] HRESULT SetConstantAttenuation([in] float atn);
[helpcontext(306816)] HRESULT SetLinearAttenuation([in] float atn);
[helpcontext(306817)] HRESULT SetQuadraticAttenuation([in] float atn);
[helpcontext(306818)] HRESULT GetRange([out, retval] float *retv);
[helpcontext(306819)] HRESULT GetUmbra([out, retval] float *retv);
[helpcontext(306820)] HRESULT GetPenumbra([out, retval] float *retv);
[helpcontext(306821)] HRESULT GetConstantAttenuation([out, retval] float *retv);
[helpcontext(306822)] HRESULT GetLinearAttenuation([out, retval] float *retv);
[helpcontext(306823)] HRESULT GetQuadraticAttenuation([out, retval] float *retv);
[helpcontext(306824)] HRESULT GetColor( [out, retval] D3Dcolor *value);
[helpcontext(306825)] HRESULT GetType([out, retval] D3DRMLightType *retv);
[helpcontext(306826)] HRESULT SetEnableFrame([in] Direct3DRMFrame3 *f);
[helpcontext(306827)] HRESULT GetEnableFrame([out, retval] Direct3DRMFrame3 **retv);
};
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE06-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMMesh Interface"),
pointer_default(unique),
local,
helpcontext(307000)
]
interface Direct3DRMMesh : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(306201)] HRESULT AddDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *arg);
[helpcontext(306202)] HRESULT DeleteDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *args);
[helpcontext(306203)] HRESULT CloneObject([out,retval] RMCLONEOBJECT **retv);
[helpcontext(306204)] HRESULT SetAppData( [in] long data);
[helpcontext(306205)] HRESULT GetAppData( [out, retval] long *data);
[helpcontext(306206)] HRESULT SetName ([in] BSTR name);
[helpcontext(306207)] HRESULT GetName([out,retval] BSTR *name); //LPSTR
[helpcontext(306208)] HRESULT GetClassName([out,retval] BSTR *name); //LPSTR
/*
* IDirect3DRMMesh methods
*/
//#pragma message ("consider if you want to pass down count to API that fill SAFEARRAYS")
[helpcontext(307009)] HRESULT SetGroupColor([in] D3DRMGroupIndex id, [in] d3dcolor val);
[helpcontext(307010)] HRESULT SetGroupColorRGB([in] D3DRMGroupIndex id, [in] float r,[in] float g, [in] float b);
[helpcontext(307011)] HRESULT SetGroupMapping([in] D3DRMGroupIndex id, [in] d3drmMappingFlags value);
[helpcontext(307012)] HRESULT SetGroupQuality([in] D3DRMGroupIndex id, [in] d3drmRenderQuality value);
[helpcontext(307013)] HRESULT SetGroupMaterial([in] D3DRMGroupIndex id, [in] Direct3dRMMaterial2 *val);
[helpcontext(307014)] HRESULT SetGroupTexture([in] D3DRMGroupIndex id, [in] Direct3dRMTexture3 *val);
[helpcontext(307015)] HRESULT GetGroupCount([out, retval] long *retv);
[helpcontext(307016)] HRESULT GetGroupColor( [in] D3DRMGroupIndex id, [out, retval] d3dcolor *retv);
[helpcontext(307017)] HRESULT GetGroupMapping( [in] D3DRMGroupIndex id, [out, retval] d3drmMappingFlags *retv);
[helpcontext(307018)] HRESULT GetGroupQuality( [in] D3DRMGroupIndex id, [out, retval] d3drmRenderQuality *retv);
[helpcontext(307019)] HRESULT GetGroupMaterial([in] D3DRMGroupIndex id, [out, retval] Direct3dRMMaterial2 **retv);
[helpcontext(307020)] HRESULT GetGroupTexture( [in] D3DRMGroupIndex id, [out, retval] Direct3dRMTexture3 **retv);
[helpcontext(307021)] HRESULT ScaleMesh([in] float sx, [in] float sy, [in] float sz);
[helpcontext(307022)] HRESULT Translate([in] float tx, [in] float ty, [in] float tz);
[helpcontext(307023)] HRESULT GetBox([in] D3DRMBOX *vector);
[helpcontext(307024)] HRESULT GetSizes( [in]D3DRMGroupIndex id, [out]long *cnt1,[out]long *cnt2,[out] long *cnt3,[out] long *cnt4);
//docdoc: this function takes an array of vertices, well there is a bit of a problem
// with that in java so the alternative has been to remove SetVertices()
// and created two functions one SetVertice, which only set one vertice
// and SetVerticesAsFloats, which takes in an array of floats as vertices
[helpcontext(307025)] HRESULT SetVertex([in] D3DRMGroupIndex id, [in] long idx, [in] D3DRMVERTEX *values);
[helpcontext(307026)] HRESULT GetVertex([in] D3DRMGroupIndex id, [in] long idx, [in,out] D3DRMVERTEX *ret);
[helpcontext(307027)] HRESULT GetVertexCount([in] D3DRMGroupIndex id, [out, retval] long *cnt);
[helpcontext(307028)] HRESULT AddGroup([in] long vertexCount, [in] long faceCount, [in] long verticesPerFace,
[in] SAFEARRAY(long) *fdata, [out,retval] D3DRMGroupIndex *retId);
[helpcontext(307029)] HRESULT GetGroupData([in] D3DRMGroupIndex id, [in,out] SAFEARRAY(long) *psa);
[helpcontext(307030)] HRESULT GetGroupDataSize([in] D3DRMGroupIndex id, [out,retval] long *retVal);
[helpcontext(307031)] HRESULT SetVertices([in] D3DRMGroupIndex id, [in] long idx, [in] long count, [in] SAFEARRAY(D3DRMVERTEX) *vertexArray);
[helpcontext(307032)] HRESULT GetVertices([in] D3DRMGroupIndex id, [in] long idx,long count, [in,out] SAFEARRAY(D3DRMVERTEX) *vertexArray);
[hidden] HRESULT AddGroupJava([in] long vcnt, [in] long fcnt, [in] long vPerFace,
[in,out] long *fdata, [out,retval] D3DRMGroupIndex *retId);
[hidden] HRESULT GetGroupDataJava([in] D3DRMGroupIndex id, [in] long size,[in,out] long *fData);
[hidden] HRESULT SetVerticesJava([in] D3DRMGroupIndex id, [in] long idx, [in] long cnt, [in,out] float *vertexArray);
[hidden] HRESULT GetVerticesJava([in] D3DRMGroupIndex id, [in] long idx,long cnt, [in,out] float *vertexArray);
};
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE08-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMWrap Interface"),
pointer_default(unique),
local,
helpcontext(307200)
]
interface Direct3DRMWrap : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(306201)] HRESULT AddDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *arg);
[helpcontext(306202)] HRESULT DeleteDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *args);
[helpcontext(306203)] HRESULT CloneObject([out,retval] RMCLONEOBJECT **retv);
[helpcontext(306204)] HRESULT SetAppData( [in] long data);
[helpcontext(306205)] HRESULT GetAppData( [out, retval] long *data);
[helpcontext(306206)] HRESULT SetName ([in] BSTR name);
[helpcontext(306207)] HRESULT GetName([out,retval] BSTR *name); //LPSTR
[helpcontext(306208)] HRESULT GetClassName([out,retval] BSTR *name); //LPSTR
[helpcontext(307209)] HRESULT Apply([in] Direct3DRMObject *visual);
[helpcontext(307210)] HRESULT ApplyRelative([in] Direct3DRMFrame3 *f, [in] Direct3dRMObject *visual);
};
///////////////////////////////////////////////////////////////////////////
/*
[
object,
uuid(9F76FE0C-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMUserVisual Interface"),
pointer_default(unique),
local,
hidden,
helpcontext(307400)
]
interface Direct3DRMUserVisual : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(306201)] HRESULT AddDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *arg);
[helpcontext(306202)] HRESULT DeleteDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *args);
[helpcontext(306203)] HRESULT CloneObject([out,retval] RMCLONEOBJECT **retv);
[helpcontext(306204)] HRESULT SetAppData( [in] long data);
[helpcontext(306205)] HRESULT GetAppData( [out, retval] long *data);
[helpcontext(306206)] HRESULT SetName ([in] BSTR name);
[helpcontext(306207)] HRESULT GetName([out,retval] BSTR *name); //LPSTR
[helpcontext(306208)] HRESULT GetClassName([out,retval] BSTR *name); //LPSTR
};
*/
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE11-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMObjectArray Interface"), // Direct51
pointer_default(unique),
local,
helpcontext(307600)
]
interface Direct3DRMObjectArray : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(307601)] HRESULT GetSize( [out, retval] long *retv);
[helpcontext(307602)] HRESULT GetElement([in] long index, [out,retval] Direct3DRMObject **retv);
};
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE12-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMDeviceArray Interface"),
pointer_default(unique),
local,
helpcontext(307800)
]
interface Direct3DRMDeviceArray : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(307801)] HRESULT GetSize( [out, retval] long *retv);
[helpcontext(307802)] HRESULT GetElement([in] long index, [out, retval] Direct3DRMDevice3 **lplpD3DRMDevice);
};
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE13-8E92-11d1-8808-00C04FC2C602),
helpstring("IDirect3DRMViewportArray Interface"),
pointer_default(unique),
local,
helpcontext(308000)
]
interface Direct3DRMViewportArray : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(308001)] HRESULT GetSize( [out, retval] long *retv);
[helpcontext(308002)] HRESULT GetElement([in] long index, [out, retval] Direct3DRMViewport2 **lplpD3DRMViewport);
};
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE14-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMFrameArray Interface"),
pointer_default(unique),
local,
helpcontext(308200)
]
interface Direct3DRMFrameArray : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(308201)] HRESULT GetSize( [out, retval] long *retv);
[helpcontext(308202)] HRESULT GetElement([in] long index, [out, retval] Direct3DRMFrame3 **ppFrame);
};
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE15-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMVisualArray Interface"),
pointer_default(unique),
local,
helpcontext(308400)
]
interface Direct3DRMVisualArray : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(308401)] HRESULT GetSize( [out, retval] long *retv);
[helpcontext(308402)] HRESULT GetElement( [in] long index, [out, retval] Direct3DRMVisual **retv);
};
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE16-8E92-11d1-8808-00C04FC2C602),
helpstring("IDirect3DRMLightArray Interface"),
pointer_default(unique),
local,
helpcontext(308600)
]
interface Direct3DRMLightArray : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(308601)] HRESULT GetSize( [out, retval] long *retv);
[helpcontext(308602)] HRESULT GetElement( [in] long index, [out, retval] Direct3DRMLight **retv);
};
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE17-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMPickArray Interface"),
pointer_default(unique),
local,
helpcontext(308800)
]
interface Direct3DRMPickArray : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(308801)] HRESULT GetSize( [out, retval] long *retv);
[helpcontext(308802)] HRESULT GetPickVisual([in] long index, [in] D3DRMPICKDESC *pickDesc,
[out,retval] Direct3DRMVisual **visual);
[helpcontext(308803)] HRESULT GetPickFrame([in] long index, [in] D3DRMPICKDESC *pickDesc,
[out, retval] Direct3DRMFrameArray **frameArray);
};
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE18-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMFaceArray Interface"),
pointer_default(unique),
local,
helpcontext(309000)
]
interface Direct3DRMFaceArray : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(309001)] HRESULT GetSize( [out, retval] long *retv);
[helpcontext(309002)] HRESULT GetElement([in] long index, [out, retval] Direct3DRMFace2 **retv);
};
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE19-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMPick2Array Interface"),
pointer_default(unique),
local,
helpcontext(309200)
]
interface Direct3DRMPick2Array : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(309201)] HRESULT GetSize( [out, retval] long *retv);
[helpcontext(309202)] HRESULT GetPickVisual([in] long index, [in] D3DRMPICKDESC2 *pickDesc,
[out,retval] Direct3DRMVisual **visual);
[helpcontext(309203)] HRESULT GetPickFrame([in] long index, [in] D3DRMPICKDESC2 *pickDesc,
[out, retval] Direct3DRMFrameArray **frameArray);
};
[ object,
uuid(9F76FE33-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMFrameMoveCallback3"),
pointer_default(unique),
helpcontext(309400)
] interface Direct3DRMFrameMoveCallback3 : IUnknown
{
import "oaidl.idl";
[helpcontext(309401)] HRESULT CallbackRMFrameMove([in] Direct3DRMFrame3 *f,
[in] USERARG *arg, [in] float delta);
};
[ object,
uuid(9F76FE34-8E92-11d1-8808-00C04FC2C602), // Direct45
helpstring("Direct3DRMDeviceUpdateCallback3 Interface"),
pointer_default(unique),
helpcontext(309600)
]
interface Direct3DRMDeviceUpdateCallback3 : IUnknown
{
import "oaidl.idl";
//TODO update callback wont work in VB with structures
// User supplied callback
[helpcontext(309601)] HRESULT CallbackRMUpdate([in] Direct3DRMDevice3 *f,
[in] USERARG *arg, [in] int n, [in] D3DRECT *Update);
};
[ object,
uuid(9F76FE35-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMAnimationArray"),
pointer_default(unique),
local,
helpcontext(309800)
]
interface Direct3DRMAnimationArray : IUnknown
{
import "oaidl.idl";
[helpcontext(309801)] HRESULT GetSize([out,retval] long *ret);
[helpcontext(309802)] HRESULT GetElement([in] long index,[out,retval] Direct3DRMAnimation2 **anim);
};
[
object,
uuid(9F76FE36-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMShadow2 Interface"),
pointer_default(unique),
local,
helpcontext(310000)
]
interface Direct3DRMShadow2 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(306201)] HRESULT AddDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *arg);
[helpcontext(306202)] HRESULT DeleteDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *args);
[helpcontext(306203)] HRESULT CloneObject([out,retval] RMCLONEOBJECT **retv);
[helpcontext(306204)] HRESULT SetAppData( [in] long data);
[helpcontext(306205)] HRESULT GetAppData( [out, retval] long *data);
[helpcontext(306206)] HRESULT SetName ([in] BSTR name);
[helpcontext(306207)] HRESULT GetName([out,retval] BSTR *name); //LPSTR
[helpcontext(306208)] HRESULT GetClassName([out,retval] BSTR *name); //LPSTR
[helpcontext(310009)] HRESULT SetOptions([in] D3DRMShadowFlags flags);
};
[
object,
uuid(9F76FE20-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMViewport2 Interface"),
pointer_default(unique),
local,
helpcontext(310200)
]
interface Direct3DRMViewport2 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
//
/*** D3DRMObjects ***/
//
[helpcontext(306201)] HRESULT AddDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *arg);
[helpcontext(306202)] HRESULT DeleteDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *args);
[helpcontext(306203)] HRESULT CloneObject([out,retval] RMCLONEOBJECT **retv);
[helpcontext(306204)] HRESULT SetAppData( [in] long data);
[helpcontext(306205)] HRESULT GetAppData( [out, retval] long *data);
[helpcontext(306206)] HRESULT SetName ([in] BSTR name);
[helpcontext(306207)] HRESULT GetName([out,retval] BSTR *name); //LPSTR
[helpcontext(306208)] HRESULT GetClassName([out,retval] BSTR *name); //LPSTR
//
// _dxj_Direct3DRMViewport
//
[helpcontext(310209)] HRESULT Clear([in] D3DRMViewportClearFlags flags);
[helpcontext(310210)] HRESULT Render([in] Direct3DRMFrame3 *rootFrame);
[helpcontext(310211)] HRESULT GetCamera([out, retval] Direct3DRMFrame3 **val);
[helpcontext(310212)] HRESULT GetDevice([out, retval] Direct3DRMDevice3 **val);
[helpcontext(310213)] HRESULT SetFront( [in] float v);
[helpcontext(310214)] HRESULT SetBack( [in] float v);
[helpcontext(310215)] HRESULT SetField( [in] float v);
[helpcontext(310216)] HRESULT SetUniformScaling( [in] DBOOLFlags flag); //BOOL
[helpcontext(310217)] HRESULT SetCamera( [in] Direct3DRMFrame3 *f);
[helpcontext(310218)] HRESULT SetProjection([in] D3DRMProjectionType val);
[helpcontext(310219)] HRESULT Transform([out] D3DRMVECTOR4D *d, [in] D3DVECTOR *s);
[helpcontext(310220)] HRESULT InverseTransform([out] D3DVECTOR *d, [in] D3DRMVECTOR4D *s);
[helpcontext(310221)] HRESULT Configure([in] long x, [in] long y, [in] long width, [in] long height);
[helpcontext(310222)] HRESULT ForceUpdate([in] long x1, [in] long y1, [in] long x2, [in] long y2);
[helpcontext(310223)] HRESULT SetPlane([in] float left, [in] float right, [in] float bottom, [in] float top);
[helpcontext(310224)] HRESULT GetPlane([in,out] float *l, [in,out] float *r, [in,out] float *b, [in,out] float *t);
[helpcontext(310225)] HRESULT Pick([in] long x, [in] long y, [out, retval] Direct3DRMPickArray **retv);
[helpcontext(310226)] HRESULT GetUniformScaling([out, retval] DBOOLFlags *retv); //BOOL
[helpcontext(310227)] HRESULT GetX([out, retval] long *retv);
[helpcontext(310228)] HRESULT GetY([out, retval] long *retv);
[helpcontext(310229)] HRESULT GetHeight([out, retval] long *w);
[helpcontext(310230)] HRESULT GetWidth([out, retval] long *w);
[helpcontext(310231)] HRESULT GetField([out, retval] float *retv);
[helpcontext(310232)] HRESULT GetBack([out, retval] float *retv);
[helpcontext(310233)] HRESULT GetFront([out, retval] float *retv);
[helpcontext(310234)] HRESULT GetProjection([out, retval] D3DRMProjectionType *retv);
};
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE21-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMMaterial2 Interface"),
pointer_default(unique),
helpcontext(310400)
]
interface Direct3DRMMaterial2 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(306201)] HRESULT AddDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *arg);
[helpcontext(306202)] HRESULT DeleteDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *args);
[helpcontext(306203)] HRESULT CloneObject([out,retval] RMCLONEOBJECT **retv);
[helpcontext(306204)] HRESULT SetAppData( [in] long data);
[helpcontext(306205)] HRESULT GetAppData( [out, retval] long *data);
[helpcontext(306206)] HRESULT SetName ([in] BSTR name);
[helpcontext(306207)] HRESULT GetName([out,retval] BSTR *name); //LPSTR
[helpcontext(306208)] HRESULT GetClassName([out,retval] BSTR *name); //LPSTR
/*
* IDirect3DRMMaterial methods
*/
[helpcontext(310409)] HRESULT SetPower([in] float power);
[helpcontext(310410)] HRESULT SetSpecular([in] float r, [in] float g, [in] float b);
[helpcontext(310411)] HRESULT SetEmissive([in] float r, [in] float g, [in] float b);
[helpcontext(310412)] HRESULT SetAmbient([in] float r, [in] float g, [in] float b);
[helpcontext(310413)] HRESULT GetPower([out, retval] float *power);
[helpcontext(310414)] HRESULT GetSpecular([out] float *r, [out] float *g, [out] float *b);
[helpcontext(310415)] HRESULT GetEmissive([out] float *r, [out] float *g, [out] float *b);
[helpcontext(310416)] HRESULT GetAmbient([out] float *r, [out] float *g, [out] float *b);
};
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE22-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMAnimation2 Interface"),
pointer_default(unique),
local,
helpcontext(310600)
]
interface Direct3DRMAnimation2 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(306201)] HRESULT AddDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *arg);
[helpcontext(306202)] HRESULT DeleteDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *args);
[helpcontext(306203)] HRESULT CloneObject([out,retval] RMCLONEOBJECT **retv);
[helpcontext(306204)] HRESULT SetAppData( [in] long data);
[helpcontext(306205)] HRESULT GetAppData( [out, retval] long *data);
[helpcontext(306206)] HRESULT SetName ([in] BSTR name);
[helpcontext(306207)] HRESULT GetName([out,retval] BSTR *name); //LPSTR
[helpcontext(306208)] HRESULT GetClassName([out,retval] BSTR *name); //LPSTR
/*
* IDirect3DRMAnimation2 methods
*/
[helpcontext(310609)] HRESULT SetOptions([in] D3DRMAnimationOptions flags);
[helpcontext(310610)] HRESULT AddRotateKey([in] float time, [in] D3DRMQUATERNION *q);
[helpcontext(310611)] HRESULT AddPositionKey([in] float time, [in] float x, [in] float y, [in] float z);
[helpcontext(310612)] HRESULT AddScaleKey([in] float time, [in] float x, [in] float y, [in] float z);
[helpcontext(310613)] HRESULT DeleteKey([in] float time);
[helpcontext(310614)] HRESULT SetFrame([in] Direct3DRMFrame3 *frame);
[helpcontext(310615)] HRESULT GetFrame([out,retval] Direct3DRMFrame3 **frame);
[helpcontext(310616)] HRESULT SetTime([in] float time);
[helpcontext(310617)] HRESULT GetOptions([out, retval] D3DRMAnimationOptions *options);
[helpcontext(310618)] HRESULT AddKey([in] D3DRMANIMATIONKEY *key);
[helpcontext(310619)] HRESULT DeleteKeyById([in] long id);
[helpcontext(310620)] HRESULT GetKeys([in] float timeMin,[in] float timeMax ,[in,out] SAFEARRAY(D3DRMANIMATIONKEY) *keyArray);
[helpcontext(310621)] HRESULT GetKeysCount([in] float timeMin,[in] float timeMax, [out,retval] long *count);
[helpcontext(310622)] HRESULT ModifyKey([in] D3DRMANIMATIONKEY *key);
};
[
object,
uuid(9F76FE23-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMAnimationSet2 Interface"),
pointer_default(unique),
local,
helpcontext(310800)
]
interface Direct3DRMAnimationSet2 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(306201)] HRESULT AddDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *arg);
[helpcontext(306202)] HRESULT DeleteDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *args);
[helpcontext(306203)] HRESULT CloneObject([out,retval] RMCLONEOBJECT **retv);
[helpcontext(306204)] HRESULT SetAppData( [in] long data);
[helpcontext(306205)] HRESULT GetAppData( [out, retval] long *data);
[helpcontext(306206)] HRESULT SetName ([in] BSTR name);
[helpcontext(306207)] HRESULT GetName([out,retval] BSTR *name); //LPSTR
[helpcontext(306208)] HRESULT GetClassName([out,retval] BSTR *name); //LPSTR
//
// IDirect3DRMAnimationSet methods
//
[helpcontext(310809)] HRESULT AddAnimation([in] Direct3DRMAnimation2 *aid);
[helpcontext(310810)] HRESULT DeleteAnimation([in] Direct3DRMAnimation2 *aid);
[helpcontext(310811)] HRESULT GetAnimations([out,retval] Direct3DRMAnimationArray **ret);
[helpcontext(310812)] HRESULT LoadFromFile( [in] BSTR filename, [in] VARIANT id,
[in] D3DRMLoadFlags flags, [in] Direct3dRMLoadTextureCallback3 * loadTextureImplementation,
[in] USERARG *userArgument, [in] Direct3DRMFrame3 *parentFrame);
[helpcontext(310813)] HRESULT SetTime([in] float time);
};
[
object,
uuid(9F76FE24-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRM3 Interface"),
pointer_default(unique),
local,
helpcontext(311000)
]
interface Direct3DRM3 : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(311001)] HRESULT CreateDeviceFromClipper([in]DirectDrawClipper *lpDDClipper,[in]BSTR guid,[in]int width,[in]int height,[out,retval]Direct3DRMDevice3 **retv);
[helpcontext(311002)] HRESULT CreateFrame([in]Direct3DRMFrame3 *parent,[out,retval]Direct3dRMFrame3 **retv);
[helpcontext(311003)] HRESULT CreateLightRGB ([in]D3DRMLightType lt,[in]float vred,[in]float vgreen,[in]float vblue,[out,retval]Direct3dRMLight **retv);
[helpcontext(311004)] HRESULT CreateLight([in]D3DRMLightType lt,[in]long color,[out,retval]Direct3dRMLight **retv);
[helpcontext(311005)] HRESULT CreateMeshBuilder([out,retval]Direct3DRMMeshBuilder3 **retv);
[helpcontext(311006)] HRESULT CreateMaterial([in]float d, [out,retval]Direct3DRMMaterial2 **val);
[helpcontext(311007)] HRESULT LoadTexture([in]BSTR name, [out,retval]Direct3DRMTexture3 **retval);
[helpcontext(311008)] HRESULT CreateViewport([in]Direct3DRMDevice3 *dev,[in] Direct3dRMFrame3 *fr,[in]long x,[in]long y,[in]long w,[in]long h,[out,retval]Direct3dRMViewport2 **retval);
[helpcontext(311009)] HRESULT SetDefaultTextureColors( [in]long numTextureColors);
[helpcontext(311010)] HRESULT SetDefaultTextureShades( [in]long numTextureShades);
[helpcontext(311011)] HRESULT CreateAnimationSet([out,retval]Direct3DRMAnimationSet2 **retval) ;
[helpcontext(311012)] HRESULT CreateMesh([out,retval]Direct3DRMMesh **retv);
[helpcontext(311013)] HRESULT CreateFace([out,retval]Direct3DRMFace2 **retv);
[helpcontext(311014)] HRESULT CreateAnimation([out,retval]Direct3DRMAnimation2 **retv);
[helpcontext(311015)] HRESULT Tick([in]float tic);
[helpcontext(311016)] HRESULT CreateDeviceFromSurface( [in]BSTR g, [in]DirectDraw4 *dd, [in]DirectDrawSurface4 *dds,[in] D3DRMCreateDeviceFlags flags,[out,retval] Direct3dRMDevice3 **retval);
[helpcontext(311017)] HRESULT CreateTextureFromSurface([in] DirectDrawSurface4 *dds,[out,retval] Direct3DRMTexture3 **retv);
[helpcontext(311018)] HRESULT CreateWrap( [in]D3DRMWrapType t, [in]Direct3dRMFrame3 *f,
[in] float ox,[in] float oy,
[in]float oz, [in]float dx, [in] float dy, [in]float dz,
[in]float ux, [in]float uy, [in] float uz, [in]float ou,
[in]float ov, [in]float su, [in] float sv,[out,retval]Direct3DRMWrap **retv);
[helpcontext(311019)] HRESULT GetSearchPath([out,retval]BSTR *name);
[helpcontext(311020)] HRESULT GetDevices([out,retval] Direct3DRMDeviceArray **retval);
[helpcontext(311021)] HRESULT GetNamedObject([in]BSTR name,[out,retval]Direct3DRMObject **retval);
[helpcontext(311022)] HRESULT SetSearchPath([in] BSTR name);
[helpcontext(311023)] HRESULT AddSearchPath([in] BSTR name);
[helpcontext(311024)] HRESULT EnumerateObjects([in]Direct3DRMEnumerateObjectsCallback *enumerateObjectsImplementation,[in] USERARG *userArgument);
[helpcontext(311025)] HRESULT LoadFromFile([in]BSTR filename, [in]VARIANT id,
[in] SAFEARRAY(BSTR) *guidArray, [in]long count,[in] D3DRMLoadFlags options,[in] Direct3dRMLoadCallback *loadCallbackImplementation,
[in]USERARG *loadArgument, [in]Direct3DRMLoadTextureCallback3 *loadTextureImplementation, [in]USERARG *loadTextureArgument,[in] Direct3dRMFrame3 *parentFrame);
[helpcontext(311026)] HRESULT CreateShadow([in] Direct3DRMVisual *visual,
[in] Direct3DRMLight *light,
[in] float px, [in]float py,[in]float pz,
[in] float nx, [in]float ny,[in]float nz,
[out,retval] Direct3DRMShadow2 **retv);
[helpcontext(311027)] HRESULT CreateProgressiveMesh([out,retval]Direct3DRMProgressiveMesh **retv);
[helpcontext(311028)] HRESULT CreateClippedVisual([in] Direct3DRMVisual *vis,[out,retval] Direct3dRMClippedVisual **ret);
[helpcontext(311029)] HRESULT GetOptions([out,retval] D3DRMHandedness *options);
[helpcontext(311030)] HRESULT SetOptions([in] D3DRMHandedness options);
[helpcontext(311031)] HRESULT CreateInterpolatorMesh([out,retval] Direct3DRMMeshInterpolator **ret);
[helpcontext(311032)] HRESULT CreateInterpolatorTexture([out,retval] Direct3DRMTextureInterpolator **ret);
[helpcontext(311033)] HRESULT CreateInterpolatorMaterial([out,retval] Direct3DRMMaterialInterpolator **ret);
[helpcontext(311034)] HRESULT CreateInterpolatorFrame([out,retval] Direct3DRMFrameInterpolator **ret) ;
[helpcontext(311035)] HRESULT CreateInterpolatorViewport([out,retval] Direct3DRMViewportInterpolator **ret) ;
[helpcontext(311036)] HRESULT CreateInterpolatorLight([out,retval] Direct3DRMLightInterpolator **ret) ;
};
[
object,
uuid(9F76FE25-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMFrame3 Interface"),
pointer_default(unique),
local,
helpcontext(311200)
]
interface Direct3DRMFrame3 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(306201)] HRESULT AddDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *arg);
[helpcontext(306202)] HRESULT DeleteDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *args);
[helpcontext(306203)] HRESULT CloneObject([out,retval] RMCLONEOBJECT **retv);
[helpcontext(306204)] HRESULT SetAppData( [in] long data);
[helpcontext(306205)] HRESULT GetAppData( [out, retval] long *data);
[helpcontext(306206)] HRESULT SetName ([in] BSTR name);
[helpcontext(306207)] HRESULT GetName([out,retval] BSTR *name); //LPSTR
[helpcontext(306208)] HRESULT GetClassName([out,retval] BSTR *name); //LPSTR
//
// _dxj_Direct3DRMFrame
//
[helpcontext(311209)] HRESULT AddVisual( [in] Direct3DRMVisual *v );
[helpcontext(311210)] HRESULT DeleteVisual( [in] Direct3DRMVisual *v );
[helpcontext(311211)] HRESULT AddLight( [in] Direct3DRMLight *val);
[helpcontext(311212)] HRESULT DeleteLight([in] Direct3DRMLight *l);
[helpcontext(311213)] HRESULT AddChild([in] Direct3DRMFrame3 *child);
[helpcontext(311214)] HRESULT DeleteChild([in] Direct3DRMFrame3 *c);
//CONSIDER GETING TRANSFORM IN A D3DMATRIX STRUCT INSTEAD
[helpcontext(311215)] HRESULT GetTransform([in] Direct3DRMFrame3 *referenceFrame,[in,out] SAFEARRAY(float) *val);
[helpcontext(311216)] HRESULT AddTransform([in] D3DRMCombineType t, [in] SAFEARRAY(float) *val);
[helpcontext(311217)] HRESULT AddTranslation([in] D3DRMCombineType t, [in] float x, [in] float y, [in] float z);
[helpcontext(311218)] HRESULT AddScale([in] D3DRMCombineType combineType, [in] float sx, [in] float sy,[in] float sz);
[helpcontext(311219)] HRESULT AddRotation([in] D3DRMCombineType combineType, [in] float x,
[in] float y,[in] float z, [in] float theta);
[helpcontext(311220)] HRESULT AddMoveCallback( [in] Direct3DRMFrameMoveCallback3 *frameMoveImplementation, [in] USERARG *userArgument, [in] D3DRMCallbackOrderFlags flags);
[helpcontext(311221)] HRESULT DeleteMoveCallback([in] Direct3DRMFrameMoveCallback3 *frameMoveImplementation, [in] USERARG *userArgument);
[helpcontext(311222)] HRESULT Transform([in,out] D3DVECTOR *d, [in] D3DVECTOR *s);
[helpcontext(311223)] HRESULT TransformVectors([in]Direct3DRMFrame3 *reference,[in] long num, [in,out] SAFEARRAY(D3DVECTOR) *DstVectors,[in,out] SAFEARRAY(D3DVECTOR) *SrcVectors);
[helpcontext(311224)] HRESULT InverseTransform([in,out] D3DVECTOR *d, [in] D3DVECTOR *s);
[helpcontext(311225)] HRESULT InverseTransformVectors([in]Direct3DRMFrame3 *reference,[in] long num, [in,out] SAFEARRAY(D3DVECTOR) *DstVectors,[in,out] SAFEARRAY(D3DVECTOR) *SrcVectors);
[helpcontext(311226)] HRESULT GetAxes([in,out]D3DVECTOR *dir,[in,out]D3DVECTOR *up);
[helpcontext(311227)] HRESULT GetBox([in,out]D3DRMBOX *box);
[helpcontext(311228)] HRESULT GetBoxEnable([out,retval] DBOOLFlags *b);
[helpcontext(311229)] HRESULT GetChildren([out, retval] Direct3DRMFrameArray **children);
[helpcontext(311230)] HRESULT GetColor([out, retval] D3Dcolor *retv);
[helpcontext(311231)] HRESULT GetHierarchyBox([in,out]D3DRMBOX *box);
[helpcontext(311232)] HRESULT GetInheritAxes([out,retval] DBOOLFlags *b);
[helpcontext(311233)] HRESULT GetLights( [out, retval] Direct3DRMLightArray **lights);
[helpcontext(311234)] HRESULT GetMaterial(Direct3DRMMaterial2 **ret);
[helpcontext(311235)] HRESULT GetMaterialMode([out, retval] D3DRMMaterialMode *retv);
[helpcontext(311236)] HRESULT GetOrientation( [in] Direct3DRMFrame3 *ref, [in,out] D3DVECTOR *dir,[in,out] D3DVECTOR *up);
[helpcontext(311237)] HRESULT GetMaterialOverride([in,out] D3DRMMATERIALOVERRIDE *override);
[helpcontext(311238)] HRESULT GetMaterialOverrideTexture([out,retval] Direct3DRMTexture3 **ret);
[helpcontext(311239)] HRESULT GetParent( [out, retval] Direct3DRMFrame3 **retv);
[helpcontext(311240)] HRESULT GetPosition([in] Direct3DRMFrame3 *ref, [in,out] D3DVECTOR *position);
[helpcontext(311241)] HRESULT GetRotation([in] Direct3DRMFrame3 *ref,[in,out] D3DVECTOR *axis,[out] float *theta);
[helpcontext(311242)] HRESULT GetScene([out, retval] Direct3DRMFrame3 **retv);
[helpcontext(311243)] HRESULT GetSceneBackground([out, retval] D3Dcolor *retv);
[helpcontext(311244)] HRESULT GetSceneBackgroundDepth([out, retval] DirectDrawSurface7 **retv);
[helpcontext(311245)] HRESULT GetSceneFogColor([out, retval] D3Dcolor *retv);
[helpcontext(311246)] HRESULT GetSceneFogEnable([out, retval] DBOOLFlags *benable);
[helpcontext(311247)] HRESULT GetSceneFogMode([out, retval] D3DRMFogMode *retv);
[helpcontext(311248)] HRESULT GetSceneFogMethod([out, retval] D3DRMFogMethod *method);
[helpcontext(311249)] HRESULT GetSceneFogParams([in,out] float *start, [in,out] float *end, [in,out] float *density);
[helpcontext(311250)] HRESULT GetSortMode([out, retval] D3DRMSortMode *retv);
[helpcontext(311251)] HRESULT GetTexture([out,retval] Direct3DRMTexture3 **ref);
[helpcontext(311252)] HRESULT GetVelocity([in] Direct3DRMFrame3 *ref, [in,out] D3DVECTOR *vel,
[in] DBOOLFlags includeRotationalVelocity);
[helpcontext(311253)] HRESULT GetVisuals([out, retval] Direct3DRMVisualArray **visuals);
[helpcontext(311254)] HRESULT GetVisual([in] long index, [out, retval] Direct3DRMVisual **visualArray);
[helpcontext(311255)] HRESULT GetVisualCount([out, retval] long *vis);
[helpcontext(311256)] HRESULT GetTraversalOptions([out,retval] D3DRMTraversalFlags *ret);
[helpcontext(311257)] HRESULT GetZBufferMode([out,retval] D3DRMZBufferMode *ret);
//CONSIDER what of loading from resources
[helpcontext(311258)] HRESULT LoadFromFile([in] BSTR filename, [in] VARIANT id,
[in] D3DRMLoadFlags flags, [in] Direct3dRMLoadTextureCallback3 *loadTextureImplementation,
[in] USERARG *userArgument);
[helpcontext(311259)] HRESULT LookAt([in] Direct3DRMFrame3 *tgt, [in] Direct3dRMFrame3 *reference, [in] D3DRMFrameConstraint contraint);
[helpcontext(311260)] HRESULT Move( [in] float delta);
[helpcontext(311261)] HRESULT RayPick([in]Direct3DRMFrame3 *refer,[in]D3DRMRAY *ray,[in]d3drmRayPickFlags flags,[out,retval]Direct3dRMPick2Array **retv);
[helpcontext(311262)] HRESULT Save([in]BSTR name,[in] D3DRMXofFormat format, [in] d3drmSaveFlags flags);
[helpcontext(311263)] HRESULT SetAxes([in]float dx,[in]float dy,[in]float dz,[in]float ux,[in]float uy,[in]float uz);
[helpcontext(311264)] HRESULT SetBox([in]D3DRMBOX *box);
[helpcontext(311265)] HRESULT SetBoxEnable([in] DBOOLFlags boxEnable);
[helpcontext(311266)] HRESULT SetColor([in] D3Dcolor c);
[helpcontext(311267)] HRESULT SetColorRGB([in] float r, [in] float g, [in] float b);
[helpcontext(311268)] HRESULT SetInheritAxes([in]DBOOLFlags inheritFromParent);
[helpcontext(311269)] HRESULT SetMaterial([in] Direct3DRMMaterial2 *mat);
[helpcontext(311270)] HRESULT SetMaterialMode([in] D3DRMMaterialMode val);
[helpcontext(311271)] HRESULT SetMaterialOverride([in,out] D3DRMMATERIALOVERRIDE *override);
[helpcontext(311272)] HRESULT SetMaterialOverrideTexture([in] Direct3DRMTexture3 *tex);
[helpcontext(311273)] HRESULT SetOrientation( [in] Direct3DRMFrame3 *reference, [in] float dx,
[in] float dy, [in] float dz, [in] float ux,
[in] float uy, [in] float uz);
[helpcontext(311274)] HRESULT SetPosition( [in] Direct3DRMFrame3 *reference, [in] float x,
[in] float y, [in] float z);
[helpcontext(311275)] HRESULT SetQuaternion([in]Direct3DRMFrame3 *reference,D3DRMQUATERNION *quat);
[helpcontext(311276)] HRESULT SetRotation( [in] Direct3DRMFrame3 *reference, [in] float x,
[in] float y, [in] float z, [in] float theta);
[helpcontext(311277)] HRESULT SetSceneBackground([in] D3Dcolor c);
[helpcontext(311278)] HRESULT SetSceneBackgroundDepth([in] DirectDrawSurface7 *s);
[helpcontext(311279)] HRESULT SetSceneBackgroundImage([in] Direct3DRMTexture3 *i);
[helpcontext(311280)] HRESULT SetSceneBackgroundRGB([in] float r, [in] float g, [in] float b);
[helpcontext(311281)] HRESULT SetSceneFogColor([in] D3Dcolor c);
[helpcontext(311282)] HRESULT SetSceneFogEnable([in] DBOOLFlags benable);
[helpcontext(311283)] HRESULT SetSceneFogMethod([in] D3DRMFogMethod method);
[helpcontext(311284)] HRESULT SetSceneFogMode([in] D3DRMFogMode c);
[helpcontext(311285)] HRESULT SetSceneFogParams([in] float start, [in] float end, [in] float density);
[helpcontext(311286)] HRESULT SetSortMode([in] D3DRMSortMode val);
[helpcontext(311287)] HRESULT SetTexture([in] Direct3DRMTexture3 *t);
[helpcontext(311288)] HRESULT SetTraversalOptions([in] D3DRMTraversalFlags flags);
[helpcontext(311289)] HRESULT SetVelocity( [in] Direct3DRMFrame3 *reference, [in] float x,
[in] float y, [in] float z, [in] DBOOLFlags with_rotation);
[helpcontext(311290)] HRESULT SetZbufferMode([in] D3DRMZbufferMode val);
};
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE26-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMMeshBuilder3 Interface"),
pointer_default(unique),
local,
helpcontext(311400)
]
interface Direct3DRMMeshBuilder3 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(306201)] HRESULT AddDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *arg);
[helpcontext(306202)] HRESULT DeleteDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *args);
[helpcontext(306203)] HRESULT CloneObject([out,retval] RMCLONEOBJECT **retv);
[helpcontext(306204)] HRESULT SetAppData( [in] long data);
[helpcontext(306205)] HRESULT GetAppData( [out, retval] long *data);
[helpcontext(306206)] HRESULT SetName ([in] BSTR name);
[helpcontext(306207)] HRESULT GetName([out,retval] BSTR *name); //LPSTR
[helpcontext(306208)] HRESULT GetClassName([out,retval] BSTR *name); //LPSTR
/*
* IDirect3DRMMeshBuilder methods
*/
[helpcontext(311409)] HRESULT AddFace([in] Direct3DRMFace2 *f);
[helpcontext(311410)] HRESULT AddFaces([in] long vc, [in] SAFEARRAY(D3DVECTOR) *verexArray,
[in] long nc, [in] SAFEARRAY(D3DVECTOR) *normalArray,
[in] SAFEARRAY(long) *data,
[out, retval] Direct3DRMFaceArray **array );
[helpcontext(311411)] HRESULT AddFacesIndexed([in] D3DRMAddFacesFlags flags, [in] SAFEARRAY(long) *indexArray,[out,retval] long *newFaceIndex);
[helpcontext(311412)] HRESULT AddFrame([in] Direct3DRMFrame3 *frame);
[helpcontext(311413)] HRESULT AddMesh([in] Direct3DRMMesh *mesh);
[helpcontext(311414)] HRESULT AddMeshBuilder([in] Direct3DRMMeshBuilder3 *meshbuilder, D3DRMAddMeshbuilderFlags flags);
[helpcontext(311415)] HRESULT AddNormal([in] float x, [in] float y,[in] float z, [out, retval] int *index);
[helpcontext(311416)] HRESULT AddTriangles([in] D3DRMAddTrianglesVt format,[in] long vertexcount,[in] void *data);
[helpcontext(311417)] HRESULT AddVertex([in] float x, [in] float y,[in] float z, [out, retval] int *index);
[helpcontext(311418)] HRESULT CreateFace([out, retval] Direct3DRMFace2 **retv);
[helpcontext(311419)] HRESULT CreateMesh( [out,retval] Direct3DRMMesh **retv);
[helpcontext(311420)] HRESULT CreateSubMesh( [out,retval] Direct3DRMMeshBuilder3 **retv);
[helpcontext(311421)] HRESULT DeleteFace([in] Direct3DRMFace2 *face);
[hidden] HRESULT DeleteNormals([in] long id, [in] long count);
[helpcontext(311422)] HRESULT DeleteSubMesh([in] Direct3DRMMeshBuilder3 *mesh);
[hidden] HRESULT DeleteVertices([in] long id, [in] long count);
[helpcontext(311423)] HRESULT Empty();
[helpcontext(311424)] HRESULT EnableMesh([in] D3DRMAddMeshBuilderFlags flags);
[helpcontext(311425)] HRESULT GenerateNormals(float angle,D3DRMGenerateNormalsFlags flags);
[helpcontext(311426)] HRESULT GetBox( [in,out] D3DRMBOX *retv);
[helpcontext(311427)] HRESULT GetColorSource( [out, retval] D3DRMColorSource *data);
[helpcontext(311428)] HRESULT GetEnable([out,retval] D3DRMAddMeshBuilderFlags *flags);
[helpcontext(311429)] HRESULT GetFace([in] long id,[out, retval] Direct3DRMFace2 **retv);
[helpcontext(311430)] HRESULT GetFaceCount([out, retval] int *retv);
[helpcontext(311431)] HRESULT GetFaces([out, retval] Direct3DRMFaceArray **retv);
[helpcontext(311432)] HRESULT GetGeometry( [in,out] SAFEARRAY(D3DVECTOR) *verexArray,
[in,out] SAFEARRAY(D3DVECTOR) *normalArray,
[in,out] SAFEARRAY(long) *faceData);
[helpcontext(311433)] HRESULT GetNormal([in] long index, [in,out] D3DVECTOR *desc);
[helpcontext(311434)] HRESULT GetNormalCount([out, retval] long *normalCount);
[helpcontext(311435)] HRESULT GetParentMesh([in] D3DRMParentingFlags flags, [out,retval] Direct3dRMMeshBuilder3 **vis);
[helpcontext(311436)] HRESULT GetPerspective([out,retval] long *retv); //BOOL
[helpcontext(311437)] HRESULT GetQuality([out,retval] D3DRMRenderQuality *retv);
[helpcontext(311438)] HRESULT GetSubMeshes([in] long count,[in,out] SAFEARRAY(Direct3DRMMeshBuilder3) *arrayOfMeshBuilders);
[helpcontext(311439)] HRESULT GetSubMeshCount([out,retval] long *count);
[helpcontext(311440)] HRESULT GetTextureCoordinates([in] long idx,[in,out] float *u,[in,out] float *v);
[helpcontext(311441)] HRESULT GetVertex([in] long id, [in,out] D3DVECTOR *vec);
[helpcontext(311442)] HRESULT GetVertexColor([in] long index, [out, retval] D3Dcolor *retv);
[helpcontext(311443)] HRESULT GetVertexCount([out, retval] int *retv);
[helpcontext(311444)] HRESULT GetFaceDataSize([out, retval] long *faceCount);
[helpcontext(311445)] HRESULT LoadFromFile( [in] BSTR filename, [in] VARIANT id, [in] D3DRMLoadFlags flags, [in] Direct3dRMLoadTextureCallback3 *loadTextureImplementation, [in] USERARG *userArgument);
[helpcontext(311446)] HRESULT Optimize();
[helpcontext(311447)] HRESULT Save([in] BSTR fname, [in] D3DRMXofFormat xFormat, [in] d3drmSaveFlags save);
[helpcontext(311448)] HRESULT ScaleMesh( [in] float sx, [in] float sy, [in] float sz);
[helpcontext(311449)] HRESULT SetColor([in] D3Dcolor col);
[helpcontext(311450)] HRESULT SetColorRGB( [in] float red, [in] float green, [in] float blue);
[helpcontext(311451)] HRESULT SetColorSource([in] D3DRMColorSource val);
[helpcontext(311452)] HRESULT SetMaterial([in] Direct3DRMMaterial2 *mat);
[helpcontext(311453)] HRESULT SetNormal([in] long idx,[in] float x,[in] float y,[in] float z);
[helpcontext(311454)] HRESULT SetPerspective([in] DBOOLFlags perspectiveEnabled); //BOOL
[helpcontext(311455)] HRESULT SetQuality( [in] D3DRMRenderQuality q);
[helpcontext(311456)] HRESULT SetTexture( [in] Direct3DRMTexture3 *tex);
[helpcontext(311457)] HRESULT SetTextureCoordinates([in] long idx, [in] float u, [in] float v);
[helpcontext(311458)] HRESULT SetTextureTopology([in] DBOOLFlags wrap_u, [in] DBOOLFlags wrap_v); //BOOL
[helpcontext(311459)] HRESULT SetVertex([in] long idx,[in] float x,[in] float y,[in] float z);
[helpcontext(311460)] HRESULT SetVertexColor([in] long idx, [in] D3Dcolor c);
[helpcontext(311461)] HRESULT SetVertexColorRGB( [in] long idx, [in] float r, [in] float g, [in] float b);
[helpcontext(311462)] HRESULT Translate([in] float tx, [in] float ty, [in] float tz);
//getVertices left unimplemented
//set vertices not implmented
//set normals not implemented
[hidden] HRESULT AddFacesJava([in] long vc, [in] float *ver,
[in] long nc, [in] float *norm, [in] long *data, [out, retval] Direct3DRMFaceArray **array );
};
[
object,
uuid(9F76FE27-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMDevice3 Interface"),
pointer_default(unique),
local,
helpcontext(311600)
]
interface Direct3DRMDevice3 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
//
// D3DRMObjects
//
[helpcontext(306201)] HRESULT AddDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *arg);
[helpcontext(306202)] HRESULT DeleteDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *args);
[helpcontext(306203)] HRESULT CloneObject([out,retval] RMCLONEOBJECT **retv);
[helpcontext(306204)] HRESULT SetAppData( [in] long data);
[helpcontext(306205)] HRESULT GetAppData( [out, retval] long *data);
[helpcontext(306206)] HRESULT SetName ([in] BSTR name);
[helpcontext(306207)] HRESULT GetName([out,retval] BSTR *name); //LPSTR
[helpcontext(306208)] HRESULT GetClassName([out,retval] BSTR *name); //LPSTR
[helpcontext(311609)] HRESULT AddUpdateCallback([in] Direct3DRMDeviceUpdateCallback3 *updateCallbackImplementation, [in] USERARG *userArgument);
[helpcontext(311610)] HRESULT DeleteUpdateCallback([in] Direct3DRMDeviceUpdateCallback3 *updateCallbackImplementation, [in] USERARG *userArgument);
[helpcontext(311611)] HRESULT FindPreferredTextureFormat([in] DDBitDepthFlags bitDepth,[in] D3DRMFptfFlags flags, [in,out] DDPIXELFORMAT *ddpf);
[helpcontext(311612)] HRESULT GetBufferCount([out, retval] long *retv);
[helpcontext(311613)] HRESULT GetColorModel( [out, retval] D3DColorModel *retv);
[helpcontext(311614)] HRESULT GetDither([out, retval] DBOOLFlags *ditherEnabled);
[helpcontext(311615)] HRESULT GetHeight([out, retval] int *w);
[helpcontext(311616)] HRESULT GetQuality([out, retval] D3DRMRenderQuality *retv);
[helpcontext(311617)] HRESULT GetRenderMode([out, retval] D3DRMRenderModeFlags *retv);
[helpcontext(311618)] HRESULT GetShades([out, retval] long *numShades);
[helpcontext(311619)] HRESULT GetTextureQuality( [out, retval] D3DRMTextureQuality *retv);
[helpcontext(311620)] HRESULT GetTrianglesDrawn([out, retval] long *retv); //no params internally
[helpcontext(311621)] HRESULT GetViewports([out,retval] Direct3DRMViewportArray **views);
[helpcontext(311622)] HRESULT GetWireframeOptions([out, retval] D3DRMWireFrameFlags *retv); //no params internally
[helpcontext(311623)] HRESULT GetWidth([out, retval] int *w);
[helpcontext(311624)] HRESULT SetBufferCount([in] long count);
[helpcontext(311625)] HRESULT SetDither([in] DBOOLFlags ditherEnabled);
[helpcontext(311626)] HRESULT SetQuality( [in] D3DRMRenderQuality q);
[helpcontext(311627)] HRESULT SetRenderMode([in] D3DRMRenderModeFlags flags);
[helpcontext(311628)] HRESULT SetShades( [in] int numShades);
[helpcontext(311629)] HRESULT SetTextureQuality( [in] D3DRMTextureQuality d);
[helpcontext(311630)] HRESULT Update();
// Respond to a WM_ACTIVATE message.
[helpcontext(311631)] HRESULT HandleActivate([in] long wparam) ;
[helpcontext(311632)] HRESULT HandlePaint([in] long hdc) ;
};
[
object,
uuid(9F76FE28-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMTexture3 Interface"),
pointer_default(unique),
local,
helpcontext(311800)
]
interface Direct3DRMTexture3 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
//
// D3DRMObject methods
//
[helpcontext(306201)] HRESULT AddDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *arg);
[helpcontext(306202)] HRESULT DeleteDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *args);
[helpcontext(306203)] HRESULT CloneObject([out,retval] RMCLONEOBJECT **retv);
[helpcontext(306204)] HRESULT SetAppData( [in] long data);
[helpcontext(306205)] HRESULT GetAppData( [out, retval] long *data);
[helpcontext(306206)] HRESULT SetName ([in] BSTR name);
[helpcontext(306207)] HRESULT GetName([out,retval] BSTR *name); //LPSTR
[helpcontext(306208)] HRESULT GetClassName([out,retval] BSTR *name); //LPSTR
//
// IDirect3DRMTexture3 methods
//
[helpcontext(311809)] HRESULT Changed([in] D3DRMTextureChangedFlags flags, [in] long nRects,[in] SAFEARRAY(RECT) *rects); //BOOL values
[helpcontext(311810)] HRESULT GenerateMIPMap();
[helpcontext(311811)] HRESULT GetCacheFlags([out,retval] D3DRMTextureCacheFlags *ret);
[helpcontext(311812)] HRESULT GetCacheImportance([out,retval] long *ret);
[helpcontext(311813)] HRESULT GetColors([out, retval] long *c);
[helpcontext(311814)] HRESULT GetDecalOrigin([out] long *x, [out] long *y);
[helpcontext(311815)] HRESULT GetDecalScale([out, retval] DBOOLFlags *considerScale);
[helpcontext(311816)] HRESULT GetDecalSize([out] float *w, [out] float *h);
[helpcontext(311817)] HRESULT GetDecalTransparency([out, retval] DBOOLFlags *enabled); //BOOL
[helpcontext(311818)] HRESULT GetDecalTransparentColor([out, retval] D3Dcolor *tc);
[helpcontext(311819)] HRESULT GetShades([out, retval] long *shades);
[helpcontext(311820)] HRESULT GetSurface( [in] long flags,[out, retval] DirectDrawSurface4 **surface);
[helpcontext(311821)] HRESULT SetCacheOptions([in] long importance, [in] D3DRMTextureCacheFlags flags);
[helpcontext(311822)] HRESULT SetColors([in] long numColors);
[helpcontext(311823)] HRESULT SetDecalOrigin([in] long x, [in] long y);
[helpcontext(311824)] HRESULT SetDecalScale([in] DBOOLFlags considerScale);
[helpcontext(311825)] HRESULT SetDecalSize([in] float width, [in] float height);
[helpcontext(311826)] HRESULT SetDecalTransparency([in] DBOOLFlags transparencyEnabled); //BOOL
[helpcontext(311827)] HRESULT SetDecalTransparentColor([in] D3Dcolor tcolor);
[helpcontext(311828)] HRESULT SetShades([in] long numShades);
//note setDownSample callback and setValidation callback not supported
};
[
object,
uuid(9F76FE30-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMClippedVisual Interface"),
pointer_default(unique),
local,
helpcontext(312000)
]
interface Direct3DRMClippedVisual : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
//
// D3DRMObject methods
//
[helpcontext(306201)] HRESULT AddDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *arg);
[helpcontext(306202)] HRESULT DeleteDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *args);
[helpcontext(306203)] HRESULT CloneObject([out,retval] RMCLONEOBJECT **retv);
[helpcontext(306204)] HRESULT SetAppData( [in] long data);
[helpcontext(306205)] HRESULT GetAppData( [out, retval] long *data);
[helpcontext(306206)] HRESULT SetName ([in] BSTR name);
[helpcontext(306207)] HRESULT GetName([out,retval] BSTR *name); //LPSTR
[helpcontext(306208)] HRESULT GetClassName([out,retval] BSTR *name); //LPSTR
[helpcontext(312009)] HRESULT AddPlane([in] Direct3DRMFrame3 *ref, [in,out] D3DVECTOR *point, [in,out] D3DVECTOR *normal, [out,retval] long *ret);
[helpcontext(312010)] HRESULT DeletePlane([in] long id);
[helpcontext(312011)] HRESULT GetPlane([in] long id,[in] Direct3DRMFrame3 *ref, [in,out] D3DVECTOR *point, [in,out] D3DVECTOR *normal);
[helpcontext(312012)] HRESULT GetPlaneIds([in] long count, [in,out] SAFEARRAY(long) *arrayOfIds);
[helpcontext(312013)] HRESULT GetPlaneIdsCount([out,retval] long *count);
[helpcontext(312014)] HRESULT SetPlane([in] long id,[in] Direct3DRMFrame3 *ref, [in,out] D3DVECTOR *point, [in,out] D3DVECTOR *normal);
};
[
object,
uuid(9F76FE31-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMProgressiveMesh Interface"),
pointer_default(unique),
local,
helpcontext(312200)
]
interface Direct3DRMProgressiveMesh : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
//
// D3DRMObject methods
//
[helpcontext(306201)] HRESULT AddDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *arg);
[helpcontext(306202)] HRESULT DeleteDestroyCallback([in] Direct3DRMCallback *fn, [in] USERARG *args);
[helpcontext(306203)] HRESULT CloneObject([out,retval] RMCLONEOBJECT **retv);
[helpcontext(306204)] HRESULT SetAppData( [in] long data);
[helpcontext(306205)] HRESULT GetAppData( [out, retval] long *data);
[helpcontext(306206)] HRESULT SetName ([in] BSTR name);
[helpcontext(306207)] HRESULT GetName([out,retval] BSTR *name); //LPSTR
[helpcontext(306208)] HRESULT GetClassName([out,retval] BSTR *name); //LPSTR
[helpcontext(312209)] HRESULT LoadFromFile([in] BSTR sFile, [in] VARIANT id,[in] D3DRMLoadFlags options, [in] Direct3dRMLoadTextureCallback3 *loadTextureImplementation,[in] USERARG *userArgument);
[helpcontext(312210)] HRESULT GetLoadStatus([in,out] D3DRMPMESHLOADSTATUS *loadStatus);
[helpcontext(312211)] HRESULT SetMinRenderDetail([in] float val);
[helpcontext(312212)] HRESULT Abort();
[helpcontext(312213)] HRESULT GetFaceDetail([out,retval] long *count);
[helpcontext(312214)] HRESULT GetVertexDetail([out,retval] long *count);
[helpcontext(312215)] HRESULT SetFaceDetail([in] long count);
[helpcontext(312216)] HRESULT SetVertexDetail([in] long count);
[helpcontext(312217)] HRESULT GetFaceDetailRange([in,out] long *min,[in,out] long *max);
[helpcontext(312218)] HRESULT GetVertexDetailRange([in,out] long *min,[in,out] long *max);
[helpcontext(312219)] HRESULT GetDetail([out,retval] float *detail);
[helpcontext(312220)] HRESULT SetDetail([in] float detail);
[helpcontext(312221)] HRESULT RegisterEvents([in] long hEvent,[in] long flags,[in] long reserved);
[helpcontext(312222)] HRESULT CreateMesh([out,retval] Direct3DRMMesh **mesh);
[helpcontext(312223)] HRESULT Duplicate([out,retval] Direct3DRMProgressiveMesh **mesh);
[helpcontext(312224)] HRESULT GetBox([in,out] D3DRMBOX *box);
[helpcontext(312225)] HRESULT SetQuality(D3DRMRenderQuality quality);
[helpcontext(312226)] HRESULT GetQuality([out,retval] D3DRMRenderQuality *quality);
};
///////////////////////////////////////////////////////////////////////////
//
// Direct Sound Interfaces
//
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FB00-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectSound Interface"),
pointer_default(unique),
local,
helpcontext(312400)
]
interface DirectSound : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
//
//*** IDirectSound methods ***
//
[helpcontext(312401)] HRESULT CreateSoundBuffer([in] DSBUFFERDESC *bufferDesc,
[in] WAVEFORMATEX *format,
[out, retval] DirectSoundBuffer **soundBuffer);
[helpcontext(312402)] HRESULT CreateSoundBufferFromFile([in] BSTR fileName, [in,out] DSBUFFERDESC *bufferDesc,
[out] WAVEFORMATEX *format,
[out, retval] DirectSoundBuffer **soundBuffer);
[helpcontext(312403)] HRESULT CreateSoundBufferFromResource([in] BSTR dll, [in] BSTR resourceName, [in,out] DSBUFFERDESC *bufferDesc,
[out] WAVEFORMATEX *format,
[out, retval] DirectSoundBuffer **soundBuffer);
[helpcontext(312404)] HRESULT GetCaps([in,out] DSCAPS *caps);
[helpcontext(312405)] HRESULT DuplicateSoundBuffer([in] DirectSoundBuffer *original,
[out, retval] DirectSoundBuffer **duplicate);
[helpcontext(312406)] HRESULT SetCooperativeLevel([in] HWnd hwnd, [in] DSSCLFlags level);
[helpcontext(312407)] HRESULT GetSpeakerConfig([out,retval] DSSpeakerFlags *speakerConfig);
[helpcontext(312408)] HRESULT SetSpeakerConfig([in] DSSpeakerFlags speakerConfig);
};
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FB01-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectSoundBuffer Interface"),
pointer_default(unique),
local,
helpcontext(312600)
]
interface DirectSoundBuffer : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
//
/*** IDirectSoundBuffer methods ***/
//
[helpcontext(312601)] HRESULT GetDirectSound3DListener([out, retval] DirectSound3dListener **lpdsl);
[helpcontext(312602)] HRESULT GetDirectSound3DBuffer([out, retval] DirectSound3dBuffer **lpdsb);
[helpcontext(312603)] HRESULT GetCaps([in,out] DSBCAPS *caps);
[helpcontext(312604)] HRESULT GetCurrentPosition([out] DSCURSORS *cursors);
[helpcontext(312605)] HRESULT GetFormat([in,out] WAVEFORMATEX *format);
[helpcontext(312606)] HRESULT GetVolume([out,retval] long *volume);
[helpcontext(312607)] HRESULT GetPan([out,retval] long *pan);
[helpcontext(312608)] HRESULT GetFrequency([out,retval] long *frequency);
[helpcontext(312609)] HRESULT GetStatus([out,retval] DSBStatusFlags *status);
[hidden] HRESULT Initialize([in] DirectSound *directSound,
[in,out] DSBUFFERDESC *bufferDesc, [in,out] byte *wbuf);
[helpcontext(312610)] HRESULT WriteBuffer([in] long start, [in] long size, [in] ABYTE *buffer, [in] DSBLockFlags flags);
[helpcontext(312611)] HRESULT ReadBuffer([in] long start, [in] long size, [in] ABYTE *buffer, [in] DSBLockFlags flags);
[helpcontext(312612)] HRESULT Play([in] DSBPlayFlags flags);
[helpcontext(312613)] HRESULT SetCurrentPosition([in] long newPosition);
[helpcontext(312614)] HRESULT SetFormat([in] WAVEFORMATEX *format);
[helpcontext(312615)] HRESULT SetVolume([in] long volume);
[helpcontext(312616)] HRESULT SetPan([in] long pan);
[helpcontext(312617)] HRESULT SetFrequency([in] long frequency);
[helpcontext(312618)] HRESULT Stop();
[helpcontext(312619)] HRESULT Restore();
[helpcontext(312620)] HRESULT SetNotificationPositions(long nElements, SAFEARRAY(DSBPOSITIONNOTIFY) *psa);
[helpcontext(312621)] HRESULT SaveToFile([in] BSTR filename);
};
///////////////////////////////////////////////////////////////////////////
// DirectSound3DListener
[
object,
uuid(9F76FB02-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectSound3DListener Interface"),
pointer_default(unique),
local,
helpcontext(312800)
]
interface DirectSound3DListener: IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
//
/*** IDirectSound3D methods ***/
//
[helpcontext(312801)] HRESULT GetAllParameters( [in,out] DS3DLISTENER *listener );
[helpcontext(312802)] HRESULT GetDistanceFactor( [out,retval] float *distanceFactor );
[helpcontext(312803)] HRESULT GetDopplerFactor( [out,retval] float *dopplerFactor );
[helpcontext(312804)] HRESULT GetOrientation( [in,out] D3DVECTOR *orientFront, [in,out] D3DVECTOR *orientTop );
[helpcontext(312805)] HRESULT GetPosition( [out] D3DVECTOR *position );
[helpcontext(312806)] HRESULT GetRolloffFactor( [out,retval] float* rolloffFactor );
[helpcontext(312807)] HRESULT GetVelocity( [out,retval] D3DVECTOR *velocity );
[helpcontext(312808)] HRESULT SetAllParameters( [in] DS3DLISTENER *listener, [in] ds3dApplyFlags applyFlag);
[helpcontext(312809)] HRESULT SetDistanceFactor( [in] float distanceFactor, [in] DS3DApplyFlags applyFlag);
[helpcontext(312810)] HRESULT SetDopplerFactor( [in] float dopplerFactor, [in] DS3DApplyFlags applyFlag);
[helpcontext(312811)] HRESULT SetOrientation( [in] float xFront, [in] float yFront, [in] float zFront,
[in] float xTop, [in] float yTop, [in] float zTop,
[in] DS3DApplyFlags applyFlag);
[helpcontext(312812)] HRESULT SetPosition( [in] float x , [in] float y, [in] float z, [in] DS3DApplyFlags applyFlag);
[helpcontext(312813)] HRESULT SetRolloffFactor( [in] float rolloffFactor, [in] DS3DApplyFlags applyFlag);
[helpcontext(312814)] HRESULT SetVelocity( [in] float x, [in] float y, [in] float z, [in] DS3DApplyFlags applyFlag);
[helpcontext(312815)] HRESULT CommitDeferredSettings();
[helpcontext(312816)] HRESULT GetDirectSoundBuffer([out,retval] DirectSoundBuffer **retVal);
};
///////////////////////////////////////////////////////////////////////////
// IDirectSound3DBuffer
[
object,
uuid(9F76FB03-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectSound3DBuffer Interface"),
pointer_default(unique),
local,
helpcontext(313000)
]
interface DirectSound3DBuffer : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
//
/*** IDirectSoundBuffer3D methods ***/
//
[helpcontext(313001)] HRESULT GetDirectSound3DListener([out,retval] DirectSound3dListener **retVal);
[helpcontext(313002)] HRESULT GetDirectSoundBuffer([out,retval] DirectSoundBuffer **retVal);
[helpcontext(313003)] HRESULT GetAllParameters( [in,out] DS3DBUFFER *buffer );
[helpcontext(313004)] HRESULT GetConeAngles( [in,out] long *inCone, [in,out] long *outCone );
[helpcontext(313005)] HRESULT GetConeOrientation( [in,out] D3DVECTOR* orientation );
[helpcontext(313006)] HRESULT GetConeOutsideVolume( [out,retval] long * coneOutsideVolume );
[helpcontext(313007)] HRESULT GetMaxDistance( [out,retval] float* maxDistance );
[helpcontext(313008)] HRESULT GetMinDistance( [out,retval] float* minDistance );
[helpcontext(313009)] HRESULT GetMode( [out,retval] DS3DModeFlags *mode );
[helpcontext(313010)] HRESULT GetPosition( [in,out] D3DVECTOR* position );
[helpcontext(313011)] HRESULT GetVelocity( [in,out] D3DVECTOR* velocity );
[helpcontext(313012)] HRESULT SetAllParameters( [in] DS3DBUFFER *buffer,[in] ds3dApplyFlags applyFlag);
[helpcontext(313013)] HRESULT SetConeAngles( [in] long inCone, [in] long outCone, [in] DS3DApplyFlags applyFlag);
[helpcontext(313014)] HRESULT SetConeOrientation( [in] float x , [in] float y, [in] float z, [in] DS3DApplyFlags applyFlag);
[helpcontext(313015)] HRESULT SetConeOutsideVolume( [in] long coneOutsideVolume,[in] DS3DApplyFlags applyFlag);
[helpcontext(313016)] HRESULT SetMaxDistance( [in] float maxDistance,[in] DS3DApplyFlags applyFlag);
[helpcontext(313017)] HRESULT SetMinDistance( [in] float minDistance,[in] DS3DApplyFlags applyFlag);
[helpcontext(313018)] HRESULT SetMode( [in] DS3DModeFlags mode,[in] ds3dApplyFlags applyFlag);
[helpcontext(313019)] HRESULT SetPosition( [in] float x , [in] float y, [in] float z, [in] DS3DApplyFlags applyFlag);
[helpcontext(313020)] HRESULT SetVelocity( [in] float x , [in] float y, [in] float z, [in] DS3DApplyFlags applyFlag);
};
[
object,
uuid(9F76FB04-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectSoundCapture Interface"),
pointer_default(unique),
local,
helpcontext(313200)
]
interface DirectSoundCapture : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(313201)] HRESULT CreateCaptureBuffer([in] DSCBUFFERDESC *bufferDesc,[out,retval] DirectSoundCaptureBuffer **ret);
[helpcontext(313202)] HRESULT GetCaps([in,out] DSCCAPS *caps);
};
[
object,
uuid(9F76FB05-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectSoundCaptureBuffer Interface"),
pointer_default(unique),
helpcontext(313400)
]
interface DirectSoundCaptureBuffer : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(313401)] HRESULT GetCaps([in,out] DSCBCAPS *caps);
[helpcontext(313402)] HRESULT GetCurrentPosition([in,out] DSCURSORS *cursors);
[helpcontext(313403)] HRESULT GetFormat([in,out] WAVEFORMATEX *waveformat);
[helpcontext(313404)] HRESULT GetStatus([out,retval] DSCBStatusFlags * status);
[hidden] HRESULT Initialize([in]DirectSoundCaptureBuffer *captureBuffer,[in] DSCBUFFERDESC *bufferDesc);
[helpcontext(313405)] HRESULT Start([in] DSCBStartFlags flags);
[helpcontext(313406)] HRESULT Stop();
[helpcontext(313407)] HRESULT WriteBuffer([in] long start, [in] long size, [in] ALONG *buffer, [in] DSCBLockFlags flags);
[helpcontext(313408)] HRESULT ReadBuffer([in] long start, [in] long size, [in] ALONG *buffer, [in] DSCBLockFlags flags);
[helpcontext(313409)] HRESULT SetNotificationPositions(long nElements, SAFEARRAY(DSBPOSITIONNOTIFY) *psa);
};
[
object,
uuid(9F76FB07-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectSoundEnum Interface"),
pointer_default(unique),
local,
helpcontext(313600)
]
interface DirectSoundEnum : IUnknown
{
import "oaidl.idl";
[helpcontext(313601)] HRESULT GetGuid([in] long index,[out,retval] BSTR *guid);
[helpcontext(313602)] HRESULT GetDescription([in] long index,[out,retval] BSTR *guid);
[helpcontext(313603)] HRESULT GetName([in] long index,[out,retval] BSTR *guid);
[helpcontext(313604)] HRESULT GetCount([out,retval]long *count);
};
///////////////////////////////////////////////////////////////////////////
//
// Direct Input Interfaces
//
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FA02-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectInput Interface"),
pointer_default(unique),
local,
helpcontext(313800)
]
interface DirectInput : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(313801)] HRESULT CreateDevice([in] BSTR guid, [out,retval] DirectInputDevice **dev);
[helpcontext(313802)] HRESULT GetDIEnumDevices([in] DIDeviceType deviceType, [in] diEnumDevicesFlags flags, [out,retval] DirectInputEnumDevices **retVal);
[helpcontext(313803)] HRESULT GetDeviceStatus([in] BSTR guid, [out,retval] VARIANT_BOOL *status);
[helpcontext(313804)] HRESULT RunControlPanel([in] long hwndOwner);
};
[
object,
uuid(9F76FA04-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectInputDeviceInstance Interface"),
pointer_default(unique),
local,
helpcontext(314000)
]
interface DirectInputDeviceInstance : IUnknown
{
[helpcontext(314001)] HRESULT GetGuidInstance([out,retval] BSTR *ret);
[helpcontext(314002)] HRESULT GetGuidProduct([out,retval] BSTR *ret);
[helpcontext(314003)] HRESULT GetProductName([out,retval] BSTR *ret);
[helpcontext(314004)] HRESULT GetInstanceName([out,retval] BSTR *ret);
[helpcontext(314005)] HRESULT GetGuidFFDriver([out,retval] BSTR *ret);
[helpcontext(314006)] HRESULT GetUsagePage([out,retval] short *ret);
[helpcontext(314007)] HRESULT GetUsage([out,retval] short *ret);
[helpcontext(314008)] HRESULT GetDevType([out,retval] long *ret);
};
[
object,
uuid(9F76FA05-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectInputDeviceObjectInstance Interface"),
pointer_default(unique),
local,
helpcontext(314200)
]
interface DirectInputDeviceObjectInstance : IUnknown
{
[helpcontext(314201)] HRESULT GetGuidType([out,retval] BSTR *ret);
[helpcontext(314202)] HRESULT GetOfs([out,retval] long *ret);
[helpcontext(314203)] HRESULT GetType([out,retval] long *ret);
[helpcontext(314204)] HRESULT GetFlags([out,retval] DIDeviceObjInstanceFlags *ret);
[helpcontext(314205)] HRESULT GetName([out,retval] BSTR *ret);
[helpcontext(314206)] HRESULT GetCollectionNumber([out,retval] short *ret);
[helpcontext(314207)] HRESULT GetDesignatorIndex([out,retval] short *ret);
[helpcontext(314208)] HRESULT GetUsagePage([out,retval] short *ret);
[helpcontext(314209)] HRESULT GetUsage([out,retval] short *ret);
[helpcontext(314210)] HRESULT GetDimension([out,retval] long *ret);
[helpcontext(314211)] HRESULT GetExponent([out,retval] short *ret);
};
[
object,
uuid(9F76FA03-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectInputDevice Interface"),
pointer_default(unique),
local,
helpcontext(314400)
]
interface DirectInputDevice : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(314401)] HRESULT Acquire();
[helpcontext(314402)] HRESULT GetDeviceObjectsEnum([in] DIDFTFlags flags,[out,retval] DirectInputEnumDeviceObjects **ppret);
[helpcontext(314403)] HRESULT GetCapabilities([in,out] DIDEVCAPS *caps);
[helpcontext(314404)] HRESULT GetDeviceData( [in,out] SAFEARRAY(DIDeviceOBJECTDATA) *deviceObjectDataArray,[in] DIDGDDFlags flags,[out,retval] long *c);
[helpcontext(314405)] HRESULT GetDeviceInfo([out,retval] DirectInputDeviceInstance **deviceInstance);
[helpcontext(314406)] HRESULT GetDeviceStateKeyboard ([in,out] DIKEYBOARDSTATE *state);
[helpcontext(314407)] HRESULT GetDeviceStateMouse ([in,out] DIMOUSESTATE *state);
[helpcontext(314408)] HRESULT GetDeviceStateJoystick ([in,out] DIJOYSTATE *state);
[helpcontext(314409)] HRESULT GetDeviceStateJoystick2 ([in,out] DIJOYSTATE2 *state);
[helpcontext(314410)] HRESULT GetDeviceState([in] long cb, [in] void* state);
[helpcontext(314411)] HRESULT GetObjectInfo( [in] long obj, [in] DIPHFlags how, [out,retval] DirectInputDeviceObjectInstance **ret);
[helpcontext(314412)] HRESULT GetProperty([in] BSTR guid,[out] void *propertyInfo);
[helpcontext(314413)] HRESULT RunControlPanel([in] long hwnd);
[helpcontext(314414)] HRESULT SetCooperativeLevel([in] long hwnd, [in] DISCLFlags flags);
[helpcontext(314415)] HRESULT SetCommonDataFormat([in] diCommonDataFormats format);
[helpcontext(314416)] HRESULT SetDataFormat([in] DIDATAFORMAT *format,SAFEARRAY(DIOBJECTDATAFORMAT) * formatArray);
[helpcontext(314417)] HRESULT SetEventNotification([in] long hEvent);
[helpcontext(314418)] HRESULT SetProperty([in] BSTR guid,[in] void *propertyInfo);
[helpcontext(314419)] HRESULT Unacquire();
[helpcontext(314420)] HRESULT Poll();
[helpcontext(314421)] HRESULT CreateEffect(
[in] BSTR effectGuid,
[in] DIEFFECT *effectinfo,
[out,retval] DirectInputEffect **ret);
[helpcontext(314422)] HRESULT CreateCustomEffect(
[in] DIEFFECT *effectinfo,
[in] long channels,
[in] long samplePeriod,
[in] long nSamples,
[in] SAFEARRAY(long) *sampledata,
[out,retval] DirectInputEffect **ret);
[helpcontext(314423)] HRESULT SendDeviceData([in] long count,[in] SAFEARRAY(DIDeviceOBJECTDATA) *data, [in] disddFlags flags, [out,retval] long *retcount);
[helpcontext(314424)] HRESULT SendForceFeedbackCommand([in] DISFFCFLAGS flags);
[helpcontext(314425)] HRESULT GetForceFeedbackState([out,retval] DIGFFSFLAGS *state);
[helpcontext(314426)] HRESULT GetEffectsEnum([in] DIEFTFLAGS effType,[out,retval] DirectInputEnumEffects **ret);
};
[
object,
uuid(BCAA7DA9-F7EF-11d2-93FD-00C04FC2C602),
helpstring("DirectInputEffect Interface"),
pointer_default(unique),
local,
helpcontext(314600)
]
interface DirectInputEffect : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(314601)] HRESULT Download();
[helpcontext(314602)] HRESULT GetEffectGuid([out,retval] BSTR *guid);
[helpcontext(314603)] HRESULT GetEffectStatus([out,retval] long *ret);
[helpcontext(314604)] HRESULT Start([in] long iterations, [in] long flags);
[helpcontext(314605)] HRESULT Stop();
[helpcontext(314606)] HRESULT Unload();
[helpcontext(314607)] HRESULT SetParameters([in] DIEFFECT *effectinfo,[in] DIEPFLAGS flags);
[helpcontext(314608)] HRESULT GetParameters([in,out] DIEFFECT *effectinfo);
};
[
object,
uuid(BCAA7DAA-F7EF-11d2-93FD-00C04FC2C602),
helpstring("DirectInputEnumEffects Interface"),
pointer_default(unique),
local,
helpcontext(314800)
]
interface DirectInputEnumEffects : IUnknown
{
import "oaidl.idl";
[helpcontext(314801)] HRESULT GetCount([out,retval] long *ret);
[helpcontext(314802)] HRESULT GetEffectGuid([in] long i,[out,retval] BSTR *ret);
[helpcontext(314803)] HRESULT GetType([in] long i,[out,retval] DIEFTFLAGS *ret);
[helpcontext(314804)] HRESULT GetStaticParams([in] long i,[out,retval] DIEPFLAGS *ret);
[helpcontext(314805)] HRESULT GetDynamicParams([in] long i,[out,retval] DIEPFLAGS *ret);
[helpcontext(314806)] HRESULT GetName([in] long i, [out,retval] BSTR *ret);
};
[
object,
uuid(9F76FA08-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectInputEnumDeviceObjects Interface"),
pointer_default(unique),
local,
helpcontext(315000)
]
interface DirectInputEnumDeviceObjects : IUnknown
{
import "oaidl.idl";
[helpcontext(315001)] HRESULT GetItem( [in]long index, [out,retval] DirectInputDeviceObjectInstance **info);
[helpcontext(315002)] HRESULT GetCount([out,retval]long *count);
};
[
object,
uuid(9F76FA09-8E92-11d1-8808-00C04FC2C602),
helpstring("DirectInputEnumDevices Interface"),
pointer_default(unique),
local,
helpcontext(315200)
]
interface DirectInputEnumDevices : IUnknown
{
import "oaidl.idl";
[helpcontext(315201)] HRESULT GetItem( [in]long index, [out,retval] DirectInputDeviceInstance **info);
[helpcontext(315202)] HRESULT GetCount([out,retval]long *count);
};
///////////////////////////////////////////////////////////////////////////
//
// Direct3DRM Interpolator Interfaces
//
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(9F76FE29-8E92-11d1-8808-00C04FC2C602),
helpstring("Direct3DRMInterpolator Interface"),
pointer_default(unique),
local,
hidden,
helpcontext(315400)
]
interface Direct3DRMInterpolator : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(315401)] HRESULT AttachObject([in] Direct3DRMObject *rmObject);
[helpcontext(315402)] HRESULT DetachObject([in] Direct3DRMObject *rmObject);
[helpcontext(315403)] HRESULT GetAttachedObjects([out,retval] Direct3DRMObjectArray **rmArray);
[helpcontext(315404)] HRESULT SetIndex([in] float val);
[helpcontext(315405)] HRESULT GetIndex([out,retval] float *val);
[helpcontext(315406)] HRESULT Interpolate([in] float val, [in] Direct3DRMObject *rmobject, [in] D3DRMInterpolationFlags options);
};
[
object,
uuid(5F4637E1-62AC-11d2-90B1-00C04FC2C602),
helpstring("Direct3DRMViewportInterpolator Interface"),
pointer_default(unique),
local,
//hidden,
helpcontext(315600)
]
interface Direct3DRMViewportInterpolator : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(315601)] HRESULT AttachObject([in] Direct3DRMObject *rmObject);
[helpcontext(315602)] HRESULT DetachObject([in] Direct3DRMObject *rmObject);
[helpcontext(315603)] HRESULT GetAttachedObjects([out,retval] Direct3DRMObjectArray **rmArray);
[helpcontext(315604)] HRESULT SetIndex([in] float val);
[helpcontext(315605)] HRESULT GetIndex([out,retval] float *val);
[helpcontext(315606)] HRESULT Interpolate([in] float val, [in] Direct3DRMObject *rmobject, [in] D3DRMInterpolationFlags options);
[helpcontext(315607)] HRESULT SetFront([in] float val);
[helpcontext(315608)] HRESULT SetBack([in] float val);
[helpcontext(315609)] HRESULT SetField([in] float val);
[helpcontext(315610)] HRESULT SetPlane([in] float left, [in] float right, [in] float bottom, [in] float top);
};
[
object,
uuid(5F4637E2-62AC-11d2-90B1-00C04FC2C602),
helpstring("Direct3DRMFrameInterpolator Interface"),
pointer_default(unique),
local,
//hidden,
helpcontext(315800)
]
interface Direct3DRMFrameInterpolator : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(315801)] HRESULT AttachObject([in] Direct3DRMObject *rmObject);
[helpcontext(315802)] HRESULT DetachObject([in] Direct3DRMObject *rmObject);
[helpcontext(315803)] HRESULT GetAttachedObjects([out,retval] Direct3DRMObjectArray **rmArray);
[helpcontext(315804)] HRESULT SetIndex([in] float val);
[helpcontext(315805)] HRESULT GetIndex([out,retval] float *val);
[helpcontext(315806)] HRESULT Interpolate([in] float val, [in] Direct3DRMObject *rmobject, [in] D3DRMInterpolationFlags options);
[helpcontext(315807)] HRESULT SetPosition( [in] Direct3DRMFrame3 *reference, [in] float x,
[in] float y, [in] float z);
[helpcontext(315808)] HRESULT SetQuaternion([in]Direct3DRMFrame3 *reference,D3DRMQUATERNION *quat);
[helpcontext(315809)] HRESULT SetRotation( [in] Direct3DRMFrame3 *reference, [in] float x,
[in] float y, [in] float z, [in] float theta);
[helpcontext(315810)] HRESULT SetVelocity( [in] Direct3DRMFrame3 *reference, [in] float x,
[in] float y, [in] float z, [in] DBOOLFlags with_rotation);
[helpcontext(315811)] HRESULT SetOrientation( [in] Direct3DRMFrame3 *reference, [in] float dx,
[in] float dy, [in] float dz, [in] float ux,
[in] float uy, [in] float uz);
[helpcontext(315812)] HRESULT SetSceneBackground([in] D3Dcolor c);
[helpcontext(315813)] HRESULT SetSceneFogColor([in] D3Dcolor c);
[helpcontext(315814)] HRESULT SetSceneBackgroundRGB([in] float r, [in] float g, [in] float b);
[helpcontext(315815)] HRESULT SetSceneFogParams([in] float start, [in] float end, [in] float density);
[helpcontext(315816)] HRESULT SetColor([in] D3Dcolor c);
[helpcontext(315817)] HRESULT SetColorRGB([in] float r, [in] float g, [in] float b);
};
[
object,
uuid(5F4637E3-62AC-11d2-90B1-00C04FC2C602),
helpstring("Direct3DRMeshInterpolator Interface"),
pointer_default(unique),
local,
// hidden,
helpcontext(316000)
]
interface Direct3DRMMeshInterpolator : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(316001)] HRESULT AttachObject([in] Direct3DRMObject *rmObject);
[helpcontext(316002)] HRESULT DetachObject([in] Direct3DRMObject *rmObject);
[helpcontext(316003)] HRESULT GetAttachedObjects([out,retval] Direct3DRMObjectArray **rmArray);
[helpcontext(316004)] HRESULT SetIndex([in] float val);
[helpcontext(316005)] HRESULT GetIndex([out,retval] float *val);
[helpcontext(316006)] HRESULT Interpolate([in] float val, [in] Direct3DRMObject *rmobject, [in] D3DRMInterpolationFlags options);
[helpcontext(316007)] HRESULT Translate([in] float tx, [in] float ty, [in] float tz);
[helpcontext(316008)] HRESULT SetVertices([in] D3DRMGroupIndex id, [in] long idx, [in] long count, [in] SAFEARRAY(D3DRMVERTEX) *vertexArray);
[helpcontext(316009)] HRESULT SetGroupColor([in] D3DRMGroupIndex id, [in] d3dcolor val);
[helpcontext(316010)] HRESULT SetGroupColorRGB([in] D3DRMGroupIndex id, [in] float r,[in] float g, [in] float b);
};
[
object,
uuid(5F4637E4-62AC-11d2-90B1-00C04FC2C602),
helpstring("Direct3DRMLightInterpolator Interface"),
pointer_default(unique),
local,
//hidden,
helpcontext(316200)
]
interface Direct3DRMLightInterpolator : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(316201)] HRESULT AttachObject([in] Direct3DRMObject *rmObject);
[helpcontext(316202)] HRESULT DetachObject([in] Direct3DRMObject *rmObject);
[helpcontext(316203)] HRESULT GetAttachedObjects([out,retval] Direct3DRMObjectArray **rmArray);
[helpcontext(316204)] HRESULT SetIndex([in] float val);
[helpcontext(316205)] HRESULT GetIndex([out,retval] float *val);
[helpcontext(316206)] HRESULT Interpolate([in] float val, [in] Direct3DRMObject *rmobject, [in] D3DRMInterpolationFlags options);
//
// IDirect3DRMLight methods - docdoc: based on iD3DRMObject!
//
[helpcontext(316207)] HRESULT SetColor([in] D3Dcolor c);
[helpcontext(316208)] HRESULT SetColorRGB([in] float r, [in] float g, [in] float b);
[helpcontext(316209)] HRESULT SetRange([in] float rng);
[helpcontext(316210)] HRESULT SetUmbra([in] float u);
[helpcontext(316211)] HRESULT SetPenumbra([in] float p);
[helpcontext(316212)] HRESULT SetConstantAttenuation([in] float atn);
[helpcontext(316213)] HRESULT SetLinearAttenuation([in] float atn);
[helpcontext(316214)] HRESULT SetQuadraticAttenuation([in] float atn);
};
[
object,
uuid(5F4637E5-62AC-11d2-90B1-00C04FC2C602),
helpstring("Direct3DRMTextureInterpolator Interface"),
pointer_default(unique),
local,
//hidden,
helpcontext(316400)
]
interface Direct3DRMTextureInterpolator : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(316401)] HRESULT AttachObject([in] Direct3DRMObject *rmObject);
[helpcontext(316402)] HRESULT DetachObject([in] Direct3DRMObject *rmObject);
[helpcontext(316403)] HRESULT GetAttachedObjects([out,retval] Direct3DRMObjectArray **rmArray);
[helpcontext(316404)] HRESULT SetIndex([in] float val);
[helpcontext(316405)] HRESULT GetIndex([out,retval] float *val);
[helpcontext(316406)] HRESULT Interpolate([in] float val, [in] Direct3DRMObject *rmobject, [in] D3DRMInterpolationFlags options);
[helpcontext(316407)] HRESULT SetDecalOrigin([in] long x, [in] long y);
[helpcontext(316408)] HRESULT SetDecalSize([in] float width, [in] float height);
[helpcontext(316409)] HRESULT SetDecalTransparentColor([in] D3Dcolor tcolor);
};
[
object,
uuid(5F4637E6-62AC-11d2-90B1-00C04FC2C602),
helpstring("Direct3DRMMaterialInterpolator Interface"),
pointer_default(unique),
local,
//hidden,
helpcontext(316600)
]
interface Direct3DRMMaterialInterpolator : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(316601)] HRESULT AttachObject([in] Direct3DRMObject *rmObject);
[helpcontext(316602)] HRESULT DetachObject([in] Direct3DRMObject *rmObject);
[helpcontext(316603)] HRESULT GetAttachedObjects([out,retval] Direct3DRMObjectArray **rmArray);
[helpcontext(316604)] HRESULT SetIndex([in] float val);
[helpcontext(316605)] HRESULT GetIndex([out,retval] float *val);
[helpcontext(316606)] HRESULT Interpolate([in] float val, [in] Direct3DRMObject *rmobject, [in] D3DRMInterpolationFlags options);
[helpcontext(316607)] HRESULT SetPower([in] float power);
[helpcontext(316608)] HRESULT SetSpecular([in] float red, [in] float green, [in] float blue);
[helpcontext(316609)] HRESULT SetEmissive([in] float red, [in] float green, [in] float blue);
};
///////////////////////////////////////////////////////////////////////////
//
// DirectMusic
//
///////////////////////////////////////////////////////////////////////////
#define MUSIC_TIME long
#define REFERENCE_TIME long
[
object,
uuid(FAFA35A0-8B72-11d2-90B2-00C04FC2C602),
helpstring("DirectMusicLoader Interface"),
pointer_default(unique),
local,
helpcontext(316800)
]
interface DirectMusicLoader : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
// in place of GetObject we can have a function for each type -
// load from Resource
[helpcontext(316801)] HRESULT LoadSegment([in]BSTR filename, [out,retval] DirectMusicSegment **ret);
[helpcontext(316802)] HRESULT LoadStyle([in]BSTR filename, [out,retval] DirectMusicStyle **ret);
[helpcontext(316803)] HRESULT LoadBand([in]BSTR filename, [out,retval] DirectMusicBand **ret);
[helpcontext(316804)] HRESULT LoadCollection([in]BSTR filename, [out,retval] DirectMusicCollection **ret);
[helpcontext(316805)] HRESULT LoadSegmentFromResource([in]BSTR moduleName,[in]BSTR resourceName, [out,retval] DirectMusicSegment **ret);
[helpcontext(316806)] HRESULT LoadStyleFromResource([in]BSTR moduleName,[in]BSTR resourceName, [out,retval] DirectMusicStyle **ret);
[helpcontext(316807)] HRESULT LoadBandFromResource([in]BSTR moduleName,[in] BSTR resourceName, [out,retval] DirectMusicBand **ret);
[helpcontext(316808)] HRESULT LoadCollectionFromResource([in]BSTR moduleName,[in]BSTR resourceName, [out,retval] DirectMusicCollection **ret);
[helpcontext(316809)] HRESULT SetSearchDirectory([in] BSTR dir);
[helpcontext(316810)] HRESULT LoadChordMap([in]BSTR filename, [out,retval] DirectMusicChordMap **ret);
[helpcontext(316811)] HRESULT LoadChordMapFromResource([in]BSTR moduleName,[in]BSTR resourceName, [out,retval] DirectMusicChordMap **ret);
};
[
object,
uuid(FAFA35A1-8B72-11d2-90B2-00C04FC2C602),
helpstring("DirectMusicSegment Interface"),
pointer_default(unique),
local,
helpcontext(317000)
]
interface DirectMusicSegment : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
/* DirectMusicSegment */
[helpcontext(317001)] HRESULT Clone ([in] MUSIC_TIME mtStart, [in] MUSIC_TIME mtEnd, [out,retval] DirectMusicSegment** ppSegment);
[helpcontext(317002)] HRESULT SetStartPoint ([in] MUSIC_TIME mtStart) ;
[helpcontext(317003)] HRESULT GetStartPoint ([out,retval] MUSIC_TIME* pmtStart);
[helpcontext(317004)] HRESULT SetLoopPoints ([in] MUSIC_TIME mtStart, [in] MUSIC_TIME mtEnd);
[helpcontext(317005)] HRESULT GetLoopPointStart ([out,retval] MUSIC_TIME* pmtStart);
[helpcontext(317006)] HRESULT GetLoopPointEnd ([out,retval] MUSIC_TIME* pmtEnd);
[helpcontext(317007)] HRESULT GetLength ([out,retval] MUSIC_TIME* pmtLength);
[helpcontext(317008)] HRESULT SetLength ([in] MUSIC_TIME mtLength);
[helpcontext(317009)] HRESULT GetRepeats ([out,retval] long* lRepeats);
[helpcontext(317010)] HRESULT SetRepeats ([in] long lRepeats) ;
//track params
[helpcontext(317011)] HRESULT Download( [in] DirectMusicPerformance *performance);
[helpcontext(317012)] HRESULT Unload( [in] DirectMusicPerformance *performance);
[helpcontext(317013)] HRESULT SetAutoDownloadEnable ( [in] VARIANT_BOOL b);
[helpcontext(317014)] HRESULT SetTempoEnable ( [in] VARIANT_BOOL b);
[helpcontext(317015)] HRESULT SetTimeSigEnable ( [in] VARIANT_BOOL b);
[helpcontext(317016)] HRESULT SetStandardMidiFile( );
[helpcontext(317017)] HRESULT ConnectToCollection ( [in] DirectMusicCollection *c);
};
[
object,
uuid(FAFA35A2-8B72-11d2-90B2-00C04FC2C602),
helpstring("DirectMusicComposer Interface"),
pointer_default(unique),
local,
helpcontext(317200)
]
interface DirectMusicComposer : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(317201)] HRESULT AutoTransition ([in] DirectMusicPerformance* performance,
[in] DirectMusicSegment* toSeg,
[in] long lCommand,
[in] long lFlags,
[in] DirectMusicChordMap *chordmap,
[out,retval] DirectMusicSegment** ppTransSeg);
[helpcontext(317202)] HRESULT ComposeSegmentFromTemplate ([in] DirectMusicStyle* style,
[in] DirectMusicSegment* templateSeg,
[in] short activity,
[in] DirectMusicChordMap *chordmap,
[out,retval] DirectMusicSegment** SectionSeg);
[helpcontext(317203)] HRESULT ComposeSegmentFromShape ( [in] DirectMusicStyle* style,
[in] short numberOfMeasures,
[in] short shape,
[in] short activity,
[in] VARIANT_BOOL bIntro,
[in] VARIANT_BOOL bEnd,
[in] DirectMusicChordMap *chordmap,
[out,retval] DirectMusicSegment** SectionSeg);
[helpcontext(317204)] HRESULT ComposeTransition ([in] DirectMusicSegment* fromSeg,
[in] DirectMusicSegment* toSeg,
[in] MUSIC_TIME mtTime,
[in] long lCommand,
[in] long lFlags,
[in] DirectMusicChordMap *chordmap,
[out,retval] DirectMusicSegment** SectionSeg);
[helpcontext(317205)] HRESULT ComposeTemplateFromShape ([in] short numMeasures,
[in] short shape,
[in] VARIANT_BOOL bIntro,
[in] VARIANT_BOOL bEnd,
[in] short endLength,
[out,retval] DirectMusicSegment** TempSeg);
[helpcontext(317206)] HRESULT ChangeChordMap([in] DirectMusicSegment* segment,[in] VARIANT_BOOL trackScale, [in] DirectMusicChordMap* ChordMap);
};
[
object,
uuid(FAFA35A3-8B72-11d2-90B2-00C04FC2C602),
helpstring("DirectMusicBand Interface"),
pointer_default(unique),
local,
helpcontext(317400)
]
interface DirectMusicBand : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(317401)] HRESULT CreateSegment([out,retval] DirectMusicSegment **ret);
[helpcontext(317402)] HRESULT Download([in] DirectMusicPerformance *performance);
[helpcontext(317403)] HRESULT Unload([in] DirectMusicPerformance *performance);
};
[
object,
uuid(FAFA35A4-8B72-11d2-90B2-00C04FC2C602),
helpstring("DirectMusicStyle Interface"),
pointer_default(unique),
local,
helpcontext(317600)
]
interface DirectMusicStyle : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(317601)] HRESULT GetBandName([in] long index,[out,retval] BSTR *name);
[helpcontext(317602)] HRESULT GetBandCount([out,retval] long *count);
[helpcontext(317603)] HRESULT GetBand([in] BSTR name,[out,retval] DirectMusicBand **ret);
[helpcontext(317604)] HRESULT GetDefaultBand([out,retval] DirectMusicBand **ret);
[helpcontext(317605)] HRESULT GetMotifName([in] long index,[out,retval] BSTR *name);
[helpcontext(317606)] HRESULT GetMotifCount([out,retval] long *count);
[helpcontext(317607)] HRESULT GetMotif([in] BSTR name,[out,retval] DirectMusicSegment **ret);
[helpcontext(317608)] HRESULT GetTimeSignature( [in,out] DMUS_TIMESIGNATURE* pTimeSig);
[helpcontext(317609)] HRESULT GetTempo([out,retval] double *pTempo);
};
[
object,
uuid(FAFA35A5-8B72-11d2-90B2-00C04FC2C602),
helpstring("DirectMusicChordMap Interface"),
pointer_default(unique),
local,
helpcontext(317800)
]
interface DirectMusicChordMap : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[hidden] HRESULT GetScale([out,retval] long *scale);
};
[
object,
uuid(FAFA35A6-8B72-11d2-90B2-00C04FC2C602),
helpstring("DirectMusicSegmentState Interface"),
pointer_default(unique),
local,
helpcontext(318000)
]
interface DirectMusicSegmentState : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(318001)] HRESULT GetRepeats([out,retval] long *repeats);
[helpcontext(318002)] HRESULT GetSeek([out,retval] MUSIC_TIME *seek);
[helpcontext(318003)] HRESULT GetStartPoint([out,retval] MUSIC_TIME *seek);
[helpcontext(318004)] HRESULT GetStartTime([out,retval] MUSIC_TIME *seek);
[helpcontext(318005)] HRESULT GetSegment([out,retval] DirectMusicSegment **segment);
};
[
object,
uuid(FAFA35A7-8B72-11d2-90B2-00C04FC2C602),
helpstring("DirectMusicPerformance Interface"),
pointer_default(unique),
local,
helpcontext(318200)
]
interface DirectMusicPerformance : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(318201)] HRESULT Init ([in] DirectSound *DirectSound, [in] long hWnd) ;
[helpcontext(318202)] HRESULT CloseDown ();
[helpcontext(318203)] HRESULT PlaySegment ([in] DirectMusicSegment* segment,
[in] long lFlags,
[in] long startTime,
[out,retval] DirectMusicSegmentState** segmentState);
[helpcontext(318204)] HRESULT Stop ([in] DirectMusicSegment* segment,
[in] DirectMusicSegmentState *segmentState,
[in] MUSIC_TIME mtTime,
[in] long lFlags) ;
[helpcontext(318205)] HRESULT GetSegmentState ([in] MUSIC_TIME mtTime, [out,retval] DirectMusicSegmentState **ret);
[helpcontext(318206)] HRESULT Invalidate ([in] MUSIC_TIME mtTime, [in] long flags);
[helpcontext(318207)] HRESULT IsPlaying ([in] DirectMusicSegment* segment, [in] DirectMusicSegmentState* segmentState,[out,retval] VARIANT_BOOL *b);
[helpcontext(318208)] HRESULT AddNotificationType ([in] CONST_DMUS_NOTIFICATION_TYPE type);
[helpcontext(318209)] HRESULT RemoveNotificationType ([in] CONST_DMUS_NOTIFICATION_TYPE type);
[helpcontext(318210)] HRESULT SetNotificationHandle([in] long hnd);
[helpcontext(318211)] HRESULT GetNotificationPMSG ([in,out] DMUS_NOTIFICATION_PMSG *message,[out,retval] VARIANT_BOOL *success);
[helpcontext(318212)] HRESULT MusicToClockTime ([in] MUSIC_TIME mtTime,[out,retval] REFERENCE_TIME *ctTime);
[helpcontext(318213)] HRESULT ClockToMusicTime ([in] REFERENCE_TIME ctTime,[out,retval] MUSIC_TIME *mtTime);
[helpcontext(318214)] HRESULT GetMusicTime ([out,retval] MUSIC_TIME* ret);
[helpcontext(318215)] HRESULT GetClockTime ([out,retval] REFERENCE_TIME* ret);
[helpcontext(318216)] HRESULT GetPrepareTime ([out,retval] long *lMilliSeconds);
[helpcontext(318217)] HRESULT GetBumperLength ([out,retval] long *lMilliSeconds);
[helpcontext(318218)] HRESULT GetLatencyTime ([out,retval] REFERENCE_TIME *ctTime);
[helpcontext(318219)] HRESULT GetQueueTime ([out,retval] REFERENCE_TIME *ctTime);
[helpcontext(318220)] HRESULT GetResolvedTime ([in] REFERENCE_TIME ctTime, [in] long flags, [out,retval] REFERENCE_TIME *ret);
[helpcontext(318221)] HRESULT SetPrepareTime ([in] long lMilliSeconds);
[helpcontext(318222)] HRESULT SetBumperLength ([in] long lMilliSeconds) ;
[helpcontext(318223)] HRESULT AdjustTime ([in] long tAmount);
//global params
[helpcontext(318224)] HRESULT SetMasterAutoDownload ([in] VARIANT_BOOL b);
[helpcontext(318225)] HRESULT GetMasterAutoDownload ([out,retval] VARIANT_BOOL *b);
[helpcontext(318226)] HRESULT SetMasterTempo ([in] float tempo);
[helpcontext(318227)] HRESULT GetMasterTempo ([out,retval] float *tempo);
[helpcontext(318228)] HRESULT SetMasterVolume ([in] long vol);
[helpcontext(318229)] HRESULT GetMasterVolume ([out,retval] long *v);
[helpcontext(318230)] HRESULT SetMasterGrooveLevel ([in] short level);
[helpcontext(318231)] HRESULT GetMasterGrooveLevel ([out,retval] short *level);
[helpcontext(318232)] HRESULT Reset([in] long resetflags );
[helpcontext(318233)] HRESULT GetStyle([in] MUSIC_TIME mtTime,[in,out] MUSIC_TIME *mtUntil,[out,retval] DirectMusicStyle **ret);
[helpcontext(318234)] HRESULT GetChordMap([in] MUSIC_TIME mtTime,[in,out] MUSIC_TIME *mtUntil,[out,retval] DirectMusicChordMap **ret);
[helpcontext(318235)] HRESULT GetCommand([in] MUSIC_TIME mtTime,[in,out] MUSIC_TIME *mtUntil,[out,retval] Byte *command) ;
[helpcontext(318236)] HRESULT GetGrooveLevel([in] MUSIC_TIME mtTime,[in,out] MUSIC_TIME *mtUntil,[out,retval] Byte *level) ;
[helpcontext(318237)] HRESULT GetTempo([in] MUSIC_TIME mtTime,[in,out] MUSIC_TIME *mtUntil,[out,retval] double *tempo) ;
[helpcontext(318238)] HRESULT GetTimeSig([in] MUSIC_TIME mtTime,[in,out] MUSIC_TIME *mtUntil,[in,out] DMUS_TIMESIGNATURE *timeSig) ;
[helpcontext(318239)] HRESULT SendNotePMSG([in] MUSIC_TIME lTime,
[in] long flags,
[in] long channel,
[in] DMUS_NOTE_PMSG *msg);
[helpcontext(318240)] HRESULT SendCurvePMSG([in] MUSIC_TIME lTime,
[in] long flags,
[in] long channel,
[in] DMUS_CURVE_PMSG *msg);
[helpcontext(318241)] HRESULT SendMIDIPMSG([in] MUSIC_TIME lTime,
[in] long flags,
[in] long channel,
[in] Byte status,
[in] Byte byte1,
[in] Byte byte2);
[helpcontext(318242)] HRESULT SendPatchPMSG([in] MUSIC_TIME lTime,
[in] long flags,
[in] long channel,
[in] Byte instrument,
[in] Byte byte1,
[in] Byte byte2);
[helpcontext(318243)] HRESULT SendTempoPMSG([in] MUSIC_TIME lTime,
[in] long flags,
// [in] long channel,
[in] double tempo);
[helpcontext(318244)] HRESULT SendTransposePMSG([in] MUSIC_TIME lTime,
[in] long flags,
[in] long channel,
[in] short transpose);
[helpcontext(318245)] HRESULT SendTimeSigPMSG([in] MUSIC_TIME lTime,
[in] long flags,
[in] DMUS_TIMESIGNATURE *timesig);
[helpcontext(318246)] HRESULT GetPortName([in] long index,[out,retval] BSTR *name);
[helpcontext(318247)] HRESULT GetPortCount([out,retval] long *c);
[helpcontext(318248)] HRESULT GetPortCaps([in] long index,[in,out] DMUS_PORTCAPS *caps);
[helpcontext(318249)] HRESULT SetPort([in] long index,[in] long numGroups);
};
[
object,
uuid(FAFA35A8-8B72-11d2-90B2-00C04FC2C602),
helpstring("DirectMusicCollection Interface"),
pointer_default(unique),
local,
helpcontext(318400)
]
interface DirectMusicCollection : IUnknown
{
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
};
///////////////////////////////////////////////////////////////////////////
//
// Other
//
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(FAFA35B0-8B72-11d2-90B2-00C04FC2C602),
helpstring("DirectXEvent Interface"),
pointer_default(unique),
oleautomation,
helpcontext(318600)
]
interface DirectXEvent : IUnknown
{
[helpcontext(318601)] HRESULT DXCallback([in] long eventid);
};
#if FALSE
[
object,
uuid(FAFA35B1-8B72-11d2-90B2-00C04FC2C602),
helpstring("WebObject Interface"),
pointer_default(unique),
oleautomation,
hidden,
helpcontext(318800)
]
interface DirectWeb : IUnknown
{
[helpcontext(318801)] HRESULT LoadPage([in]BSTR page,[in]int w, [in]int h);
[helpcontext(318802)] HRESULT DrawToDC([in]long hdc,[in]int w, [in]int h);
[helpcontext(318803)] HRESULT GetReadyState([out,retval]BSTR *ret);
[helpcontext(318804)] HRESULT GetHeight([in]int *height);
[helpcontext(318805)] HRESULT GetWidth([in]int *width);
[helpcontext(318806)] HRESULT Click([in] int x, [in] int y);
};
#endif
[
object,
uuid(FAFA3599-8B72-11d2-90B2-00C04FC2C602),
helpstring("DirectX7 root object functions"),
pointer_default(unique),
helpcontext(319000)
]
interface IDirectX7 : IUnknown
{
import "oaidl.idl";
[helpcontext(319001)] HRESULT Direct3DRMCreate([out,retval] Direct3dRM3 **ret);
[helpcontext(319002)] HRESULT DirectDrawCreate([in] BSTR guid, [out,retval] DirectDraw7 **ret);
[helpcontext(319003)] HRESULT GetDDEnum([out,retval] DirectDrawEnum **ret);
[helpcontext(319004)] HRESULT DirectSoundCreate([in] BSTR guid, [out,retval] DirectSound **ret);
[helpcontext(319005)] HRESULT DirectSoundCaptureCreate([in] BSTR guid, [out,retval] DirectSoundCapture **ret);
[helpcontext(319006)] HRESULT GetDSEnum([out,retval] DirectSoundEnum **retVal);
[helpcontext(319007)] HRESULT GetDSCaptureEnum([out,retval] DirectSoundEnum **retVal);
[helpcontext(319008)] HRESULT DirectInputCreate([out,retval]DirectInput **ret);
[helpcontext(319009)] HRESULT DirectPlayCreate([in] BSTR guid, [out,retval] DirectPlay4 **ret);
[helpcontext(319010)] HRESULT DirectPlayLobbyCreate([out,retval] DirectPlayLobby3 **ret);
[hidden] HRESULT GetDPEnum([out,retval]DirectPlayEnumServiceProviders **retval);
[helpcontext(319011)] HRESULT ColorGetAlpha([in] long color,[out,retval] float *ret);
[helpcontext(319012)] HRESULT ColorGetBlue([in] long color,[out,retval] float *ret);
[helpcontext(319013)] HRESULT ColorGetGreen([in] long color,[out,retval] float *ret);
[helpcontext(319014)] HRESULT ColorGetRed([in] long color,[out,retval] float *ret);
[helpcontext(319015)] HRESULT CreateColorRGB([in] float r,[in] float g,[in] float b,[out,retval]long *color);
[helpcontext(319016)] HRESULT CreateColorRGBA([in] float r,[in] float g,[in] float b,[in] float a,[out,retval]long *color);
[helpcontext(319017)] HRESULT MatrixFromQuaternion([out] D3DMatrix *matrix, [in] D3DRMQUATERNION *quat);
[helpcontext(319018)] HRESULT QuaternionRotation([out] D3DRMQUATERNION *quat,[in]D3DVECTOR *axis, [in]float theta);
[helpcontext(319019)] HRESULT QuaternionMultiply([out] D3DRMQUATERNION *quat,[in] D3DRMQUATERNION *quatA,[in] D3DRMQUATERNION *quatB);
[helpcontext(319020)] HRESULT QuaternionSlerp([out] D3DRMQUATERNION *quat,[in] D3DRMQUATERNION *quatA,[in] D3DRMQUATERNION *quatB, [in] float alpha);
[helpcontext(319021)] HRESULT VectorAdd([out] D3DVECTOR *v,[in]D3DVECTOR *vA,[in]D3DVECTOR *vB);
[helpcontext(319022)] HRESULT VectorCrossProduct([out] D3DVECTOR *v,[in]D3DVECTOR *vA,[in]D3DVECTOR *vB);
[helpcontext(319023)] HRESULT VectorDotProduct([in]D3DVECTOR *vA,[in]D3DVECTOR *vB,[out,retval] float *ret);
[helpcontext(319024)] HRESULT VectorModulus([in]D3DVECTOR *vA,[out,retval] float *ret);
[helpcontext(319025)] HRESULT VectorNormalize([in,out] D3DVECTOR *v);
[helpcontext(319026)] HRESULT VectorRandom([in,out] D3DVECTOR *v);
[helpcontext(319027)] HRESULT VectorReflect([out] D3DVECTOR *vDest,[in]D3DVECTOR *vRay,[in]D3DVECTOR *vNormal);
[helpcontext(319028)] HRESULT VectorRotate([out] D3DVECTOR *vDest,[in]D3DVECTOR *vA,[in]D3DVECTOR *vAxis,[in] float theta);
[helpcontext(319029)] HRESULT VectorScale([out] D3DVECTOR *vDest,[in]D3DVECTOR *vA,[in] float factor);
[helpcontext(319030)] HRESULT VectorSubtract([out] D3DVECTOR *v,[in]D3DVECTOR *vA,[in]D3DVECTOR *vB);
[helpcontext(319031)] HRESULT VectorCopy([in,out] D3DVECTOR *vDest, [in] D3DVECTOR *vSrc);
[helpcontext(319032)] HRESULT RotateXMatrix([in,out] D3DMATRIX *mDest,[in] float radians);
[helpcontext(319033)] HRESULT RotateYMatrix([in,out] D3DMATRIX *mDest,[in] float radians);
[helpcontext(319034)] HRESULT RotateZMatrix([in,out] D3DMATRIX *mDest,[in] float radians);
[helpcontext(319035)] HRESULT ViewMatrix([in,out] D3DMATRIX *mDest,[in] D3DVECTOR *vFrom, [in] D3DVECTOR *vTo, [in] D3DVECTOR *vUp, [in] float roll);
[helpcontext(319036)] HRESULT MatrixMultiply([in,out]D3DMATRIX *mDest,[in] D3DMATRIX *mA,[in] D3DMATRIX *mB);
[helpcontext(319037)] HRESULT ProjectionMatrix([in,out]D3DMATRIX *mDest,[in] float nearPlane, [in] float farplane, [in] float fov);
[helpcontext(319038)] HRESULT CopyMatrix([in,out]D3DMATRIX *mDest,[in] D3DMATRIX * mSrc);
[helpcontext(319039)] HRESULT IdentityMatrix([in,out]D3DMATRIX *mDest);
[helpcontext(319040)] HRESULT ZeroMatrix([in,out]D3DMATRIX *mDest);
[helpcontext(319041)] HRESULT TickCount([out,retval] long *retv);
[helpcontext(319042)] HRESULT SystemBpp([out, retval] long *retv);
[helpcontext(319043)] HRESULT DirectMusicLoaderCreate([out,retval] DirectMusicLoader **ret);
[helpcontext(319044)] HRESULT DirectMusicComposerCreate([out,retval] DirectMusicComposer **ret);
[helpcontext(319045)] HRESULT DirectMusicPerformanceCreate([out,retval] DirectMusicPerformance **ret);
[helpcontext(319046)] HRESULT GetWindowRect([in] long hwnd, [in,out] RECT *r);
[helpcontext(319047)] HRESULT CreateEvent([in] DirectXEvent *event,[out,retval] long *h);
[helpcontext(319048)] HRESULT SetEvent([in] long eventId);
[helpcontext(319049)] HRESULT DestroyEvent([in] long eventId);
[helpcontext(319050)] HRESULT CreateD3DVertex([in]float x, [in]float y, [in]float z, [in]float nx, [in]float ny, [in]float nz, [in]float tu, [in]float tv, [in,out] D3dVertex *v);
[helpcontext(319051)] HRESULT CreateD3DLVertex([in]float x, [in]float y, [in]float z,[in] long color, [in] long specular, [in] float tu, [in] float tv, [in,out] D3dLVertex *v);
[helpcontext(319052)] HRESULT CreateD3DTLVertex([in]float sx,[in] float sy,[in] float sz, [in]float rhw, [in]long color, [in]long specular, [in]float tu, [in]float tv, [in,out] D3dTLVertex *v);
[helpcontext(319053)] HRESULT DirectDraw4Create([in] BSTR guid,[out,retval] DirectDraw4 **ret);
//needs to be added to master help ids
[helpcontext(319054)] HRESULT CreateNewGuid([out,retval] BSTR *retGuid);
};
///////////////////////////////////////////////////////////////////////////
[
object,
uuid(BCAA7DA2-F7EF-11d2-93FD-00C04FC2C602),
helpstring("IDirectDraw4 Interface"),
pointer_default(unique),
local,
helpcontext(305600)
]
interface DirectDraw4 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdd);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdd);
[helpcontext(305601)] HRESULT CreateClipper([in] long flags, [out, retval] DirectDrawClipper **val);
[helpcontext(305602)] HRESULT CreatePalette([in] DDPCapsFlags flags, [in] SAFEARRAY(APAL) *pe, [out, retval] DirectDrawPalette **val);
[helpcontext(305603)] HRESULT CreateSurface([in] DDSURFACEDESC2 *dd, [out, retval] DirectDrawSurface4 **retv);
[helpcontext(305604)] HRESULT CreateSurfaceFromFile([in] BSTR file, [in,out] DDSURFACEDESC2 *dd, [out, retval] DirectDrawSurface4 **retv);
[helpcontext(305605)] HRESULT CreateSurfaceFromResource([in] BSTR file, [in] BSTR resName, [in,out] DDSURFACEDESC2 *ddsd, [out, retval] DirectDrawSurface4 **retv);
[helpcontext(305606)] HRESULT DuplicateSurface([in] DirectDrawSurface4 *ddIn,[out, retval] DirectDrawSurface4 **ddOut);
[helpcontext(305607)] HRESULT FlipToGDISurface();
[helpcontext(305608)] HRESULT GetAvailableTotalMem([in] DDSCAPS2 *ddsCaps, [out, retval] long *m);
[helpcontext(305609)] HRESULT GetCaps([in,out] DDCAPS *hwCaps, [in,out] DDCAPS *helCaps);
[helpcontext(305611)] HRESULT GetDisplayMode( [in,out] DDSURFACEDESC2 *surface);
[helpcontext(305612)] HRESULT GetDisplayModesEnum([in] DDEDMFlags flags,[in] DDSURFACEDESC2 *ddsd,[out,retval] DirectDrawEnumModes **retval);
[helpcontext(305613)] HRESULT GetFourCCCodes( [in,out] SAFEARRAY(long) *ccCodes);
[helpcontext(305614)] HRESULT GetFreeMem( [in] DDSCAPS2 *ddsCaps, [out, retval] long *m);
[helpcontext(305615)] HRESULT GetGDISurface( [out, retval] DirectDrawSurface4 **s);
[helpcontext(305616)] HRESULT GetMonitorFrequency([out, retval] long *freq);
[helpcontext(305617)] HRESULT GetNumFourCCCodes([out, retval] long *nCodes);
[helpcontext(305618)] HRESULT GetScanLine([in,out] long *lines, [out, retval] long *status);
[helpcontext(305619)] HRESULT GetSurfaceFromDC([in] long hdc,[out,retval] DirectDrawSurface4 **retv);
[helpcontext(305621)] HRESULT GetVerticalBlankStatus([out, retval] long *status);
[helpcontext(305622)] HRESULT LoadPaletteFromBitmap([in] BSTR bName, [out, retval] DirectDrawPalette **retv);
[helpcontext(305623)] HRESULT RestoreAllSurfaces();
[helpcontext(305624)] HRESULT RestoreDisplayMode();
[helpcontext(305625)] HRESULT SetCooperativeLevel([in] HWnd hdl, [in] DDSCLFlags flags);
[helpcontext(305626)] HRESULT SetDisplayMode([in] long w, [in] long h, [in] long bpp, [in] long ref,[in] DDSDMFlags mode);
[helpcontext(305627)] HRESULT TestCooperativeLevel([out,retval] long *status);
[helpcontext(305628)] HRESULT WaitForVerticalBlank([in] DDWaitVBFlags flags, [in] long handle, [out, retval] long *status);
};
[
object,
uuid(BCAA7DA3-F7EF-11d2-93FD-00C04FC2C602),
helpstring("DirectDrawSurface4 Interface"),
pointer_default(unique),
local,
helpcontext(305800)
]
interface DirectDrawSurface4 : IUnknown
{
import "oaidl.idl";
[hidden] HRESULT InternalSetObject([in] IUnknown *lpdds);
[hidden] HRESULT InternalGetObject([out, retval] IUnknown **lpdds);
[helpcontext(305801)] HRESULT AddAttachedSurface( [in] DirectDrawSurface4 *ddS);
[helpcontext(305802)] HRESULT Blt( [in] RECT *destRect, [in] DirectDrawSurface4 *ddS, [in] RECT *srcRect, [in] DDBltFlags flags, [out, retval] long *status);
[helpcontext(305803)] HRESULT BltColorFill( [in] RECT *destRect, [in] long fillvalue, [out, retval] long *status );
[helpcontext(305804)] HRESULT BltFast( [in] long dx, [in] long dy, [in] DirectDrawSurface4 *dds, [in] RECT *srcRect, [in] DDBltFastFlags trans, [out, retval] long *status);
[helpcontext(305805)] HRESULT BltFx( [in] RECT *destRect, [in] DirectDrawSurface4 *ddS, [in] RECT *srcRect, [in] DDBltFlags flags, [in] DDBLTFX *bltfx, [out, retval] long *status );
[helpcontext(305806)] HRESULT BltToDC([in] long hdc, [in] RECT *srcRect, [in] RECT *destRect);
[helpcontext(305807)] HRESULT ChangeUniquenessValue();
[helpcontext(305808)] HRESULT DeleteAttachedSurface( [in] DirectDrawSurface4 *dds) ;
[helpcontext(305809)] HRESULT DrawBox([in] long x1, [in] long y1, [in] long x2, [in] long y2);
[helpcontext(305810)] HRESULT DrawCircle([in] long x1, [in] long y1, [in] long r);
[helpcontext(305811)] HRESULT DrawEllipse([in] long x1, [in] long y1, [in] long x2, [in] long y2);
[helpcontext(305812)] HRESULT DrawLine([in] long x1, [in] long y1, [in] long x2, [in] long y2);
[helpcontext(305813)] HRESULT DrawRoundedBox([in] long x1, [in] long y1, [in] long x2, [in] long y2,[in] long rw, [in] long rh);
[helpcontext(305814)] HRESULT DrawText([in] long x, [in] long y, [in] BSTR text, [in] VARIANT_BOOL b);
[helpcontext(305815)] HRESULT Flip( [in] DirectDrawSurface4 *dds, [in] DDFlipFlags flags);
[helpcontext(305816)] HRESULT GetAttachedSurface( [in] DDSCaps2 *caps, [out, retval] DirectDrawSurface4 **dds);
[helpcontext(305818)] HRESULT GetBltStatus([in] DDGFSFlags flags, [out, retval] long *status);
[helpcontext(305819)] HRESULT GetCaps( [in,out] DDSCAPS2 *caps);
[helpcontext(305820)] HRESULT GetClipper( [out, retval] DirectDrawClipper **val);
[helpcontext(305821)] HRESULT GetColorKey( [in] long flags, [in,out] DDCOLORKEY *val);
[helpcontext(305822)] HRESULT GetDC( [out, retval] long *hdc);
[helpcontext(305823)] HRESULT GetDirectDraw( [out, retval] DirectDraw4 **val);
[helpcontext(305826)] HRESULT getDrawStyle([out,retval] long *drawStyle);
[helpcontext(305827)] HRESULT getDrawWidth([out,retval] long *drawWidth);
[helpcontext(305828)] HRESULT GetFillColor([out,retval] long *color);
[helpcontext(305829)] HRESULT GetFillStyle([out,retval] long *fillStyle);
[helpcontext(305830)] HRESULT GetFlipStatus( [in] DDGfsFlags flags, [out, retval] long *status);
[helpcontext(305831)] HRESULT GetFontTransparency([out,retval] VARIANT_BOOL *b);
[helpcontext(305832)] HRESULT GetForeColor([out,retval] long *color);
[helpcontext(305833)] HRESULT GetLockedPixel([in] int x, [in] int y, [out,retval] long *col);
[helpcontext(305835)] HRESULT GetPalette( [out, retval] DirectDrawPalette **val);
[helpcontext(305836)] HRESULT GetPixelFormat( [in,out] DDPIXELFORMAT *pf);
[helpcontext(305837)] HRESULT GetSurfaceDesc([in,out] DDSURFACEDESC2 *surface);
[helpcontext(305838)] HRESULT GetUniquenessValue([out,retval] long *retVal);
[helpcontext(305839)] HRESULT isLost([out, retval] long *status);
[helpcontext(305840)] HRESULT Lock( [in] RECT *r, [in] DDSURFACEDESC2 *desc, [in] ddLockFlags flags, [in] Handle hnd);
[helpcontext(305841)] HRESULT ReleaseDC([in] long hdc);
[helpcontext(305842)] HRESULT restore();
[helpcontext(305843)] HRESULT SetClipper( [in] DirectDrawClipper *val) ;
[helpcontext(305844)] HRESULT SetColorKey( [in] DDCKeyFlags flags, [in] DDCOLORKEY *val);
[helpcontext(305845)] HRESULT setDrawStyle([in] long drawStyle);
[helpcontext(305846)] HRESULT setDrawWidth([in] long drawWidth);
[helpcontext(305847)] HRESULT SetFillColor([in] long color);
[helpcontext(305848)] HRESULT SetFillStyle([in] long fillStyle);
[helpcontext(305849)] HRESULT SetFont([in] IFont *font);
[helpcontext(305850)] HRESULT SetFontTransparency([in] VARIANT_BOOL b);
[helpcontext(305851)] HRESULT SetForeColor([in] long color);
[helpcontext(305852)] HRESULT SetLockedPixel([in] int x, [in] int y, [in] long col);
[helpcontext(305854)] HRESULT SetPalette([in] DirectDrawPalette *ddp);
[helpcontext(305855)] HRESULT Unlock( [in] RECT *r);
[helpcontext(305860)] HRESULT GetLockedArray([in] SAFEARRAY(byte) *array);
[helpcontext(305868)] HRESULT SetFontBackColor([in] long color);
[helpcontext(305869)] HRESULT GetFontBackColor([out,retval] long *color);
};
[
object,
uuid(BCAA7DA4-F7EF-11d2-93FD-00C04FC2C602),
helpstring("DirectDrawIdentifier Interface"),
pointer_default(unique),
local,
helpcontext(319600)
]
interface DirectDrawIdentifier : IUnknown
{
import "oaidl.idl";
[helpcontext(319601)] HRESULT GetDriver([out,retval] BSTR *ret);
[helpcontext(319602)] HRESULT GetDescription([out,retval] BSTR *ret);
[helpcontext(319603)] HRESULT GetDriverVersion([out,retval] long *ret);
[helpcontext(319604)] HRESULT GetDriverSubVersion([out,retval] long *ret);
[helpcontext(319605)] HRESULT GetVendorId([out,retval] long *ret);
[helpcontext(319606)] HRESULT GetDeviceId([out,retval] long *ret);
[helpcontext(319607)] HRESULT GetSubSysId([out,retval] long *ret);
[helpcontext(319608)] HRESULT GetRevision([out,retval] long *ret);
[helpcontext(319609)] HRESULT GetDeviceIndentifier([out,retval] BSTR *ret);
[helpcontext(319610)] HRESULT GetWHQLLevel([out,retval] long *ret);
};
///////////////////////////////////////////////////////////////////////////
importlib("stdole2.tlb");
[
uuid(E1211353-8E94-11d1-8808-00C04FC2C602),
helpstring("DirectX7"),
helpcontext(319800)
]
coclass DirectX7 { [default] interface IDirectX7; };
};