home *** CD-ROM | disk | FTP | other *** search
/ Total Destruction / Total_Destruction.iso / addons / Lccwin32.exe / Lccwin32 / lccpub / include / d3drm.h < prev    next >
Encoding:
C/C++ Source or Header  |  1997-12-04  |  4.1 KB  |  94 lines

  1. #ifndef    _LCC__D3DRM_H__ 
  2. #define    _LCC__D3DRM_H__ 
  3. #include    "ddraw.h" 
  4. #include    "d3drmobj.h" 
  5. typedef    void (*D3DRMDEVICEPALETTECALLBACK)(LPDIRECT3DRMDEVICE,LPVOID,DWORD,LONG,LONG,LONG); 
  6. DEFINE_GUID(IID_IDirect3DRM,    0x2bc49361, 0x8327, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); 
  7. WIN_TYPES(IDirect3DRM,    DIRECT3DRM); 
  8. STDAPI    Direct3DRMCreate(LPDIRECT3DRM *lplpDirect3DRM); 
  9. #undef    INTERFACE 
  10. #define    INTERFACE IDirect3DRM 
  11. DECLARE_INTERFACE_(IDirect3DRM,    IUnknown) 
  12. {    
  13.     IUNKNOWN_METHODS(PURE); 
  14.     
  15.     STDMETHOD(CreateObject) 
  16.     (THIS_ REFCLSID rclsid, LPUNKNOWN pUnkOuter, REFIID riid, LPVOID FAR* ppv) PURE; 
  17.     STDMETHOD(CreateFrame) (THIS_ LPDIRECT3DRMFRAME, LPDIRECT3DRMFRAME *) PURE; 
  18.     STDMETHOD(CreateMesh) (THIS_ LPDIRECT3DRMMESH *) PURE; 
  19.     STDMETHOD(CreateMeshBuilder)(THIS_ LPDIRECT3DRMMESHBUILDER *) PURE; 
  20.     STDMETHOD(CreateFace) (THIS_ LPDIRECT3DRMFACE *) PURE; 
  21.     STDMETHOD(CreateAnimation) (THIS_ LPDIRECT3DRMANIMATION *) PURE; 
  22.     STDMETHOD(CreateAnimationSet)(THIS_ LPDIRECT3DRMANIMATIONSET *) PURE; 
  23.     STDMETHOD(CreateTexture) (THIS_ LPD3DRMIMAGE, LPDIRECT3DRMTEXTURE *) PURE; 
  24.     STDMETHOD(CreateLight) (THIS_ D3DRMLIGHTTYPE, D3DCOLOR, LPDIRECT3DRMLIGHT *) PURE; 
  25.     STDMETHOD(CreateLightRGB) 
  26.     (THIS_ D3DRMLIGHTTYPE, D3DVALUE, D3DVALUE, D3DVALUE, LPDIRECT3DRMLIGHT *) PURE; 
  27.     STDMETHOD(CreateMaterial) (THIS_ D3DVALUE, LPDIRECT3DRMMATERIAL *) PURE; 
  28.     STDMETHOD(CreateDevice) (THIS_ DWORD, DWORD, LPDIRECT3DRMDEVICE *) PURE; 
  29.     STDMETHOD(CreateDeviceFromSurface) 
  30.     ( THIS_ LPGUID lpGUID, LPDIRECTDRAW lpDD, 
  31.     LPDIRECTDRAWSURFACE lpDDSBack, LPDIRECT3DRMDEVICE * 
  32.     ) PURE; 
  33.     STDMETHOD(CreateDeviceFromD3D) 
  34.     ( THIS_ LPDIRECT3D lpD3D, LPDIRECT3DDEVICE lpD3DDev, 
  35.     LPDIRECT3DRMDEVICE * 
  36.     ) PURE; 
  37.     STDMETHOD(CreateDeviceFromClipper) 
  38.     ( THIS_ LPDIRECTDRAWCLIPPER lpDDClipper, LPGUID lpGUID, 
  39.     int width, int height, LPDIRECT3DRMDEVICE *) PURE; 
  40.     STDMETHOD(CreateTextureFromSurface)(THIS_ LPDIRECTDRAWSURFACE lpDDS, LPDIRECT3DRMTEXTURE *) PURE; 
  41.     STDMETHOD(CreateShadow) 
  42.     ( THIS_ LPDIRECT3DRMVISUAL, LPDIRECT3DRMLIGHT, 
  43.     D3DVALUE px, D3DVALUE py, D3DVALUE pz, 
  44.     D3DVALUE nx, D3DVALUE ny, D3DVALUE nz, 
  45.     LPDIRECT3DRMVISUAL * 
  46.     ) PURE; 
  47.     STDMETHOD(CreateViewport) 
  48.     ( THIS_ LPDIRECT3DRMDEVICE, LPDIRECT3DRMFRAME, DWORD, DWORD, 
  49.     DWORD, DWORD, LPDIRECT3DRMVIEWPORT * 
  50.     ) PURE; 
  51.     STDMETHOD(CreateWrap) 
  52.     ( THIS_ D3DRMWRAPTYPE, LPDIRECT3DRMFRAME, 
  53.     D3DVALUE ox, D3DVALUE oy, D3DVALUE oz, 
  54.     D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, 
  55.     D3DVALUE ux, D3DVALUE uy, D3DVALUE uz, 
  56.     D3DVALUE ou, D3DVALUE ov, 
  57.     D3DVALUE su, D3DVALUE sv, 
  58.     LPDIRECT3DRMWRAP * 
  59.     ) PURE; 
  60.     STDMETHOD(CreateUserVisual) (THIS_ D3DRMUSERVISUALCALLBACK, LPVOID lPArg, LPDIRECT3DRMUSERVISUAL *) PURE; 
  61.     STDMETHOD(LoadTexture) (THIS_ const char *, LPDIRECT3DRMTEXTURE *) PURE; 
  62.     STDMETHOD(LoadTextureFromResource) (THIS_ HRSRC rs, LPDIRECT3DRMTEXTURE *) PURE; 
  63.     STDMETHOD(SetSearchPath) (THIS_ LPCSTR) PURE; 
  64.     STDMETHOD(AddSearchPath) (THIS_ LPCSTR) PURE; 
  65.     STDMETHOD(GetSearchPath) (THIS_ DWORD *size_return, LPSTR path_return); 
  66.     STDMETHOD(SetDefaultTextureColors)(THIS_ DWORD) PURE; 
  67.     STDMETHOD(SetDefaultTextureShades)(THIS_ DWORD) PURE; 
  68.     STDMETHOD(GetDevices) (THIS_ LPDIRECT3DRMDEVICEARRAY *) PURE; 
  69.     STDMETHOD(GetNamedObject) (THIS_ const char *, LPDIRECT3DRMOBJECT *) PURE; 
  70.     STDMETHOD(EnumerateObjects) (THIS_ D3DRMOBJECTCALLBACK, LPVOID) PURE; 
  71.     STDMETHOD(Load) 
  72.     ( THIS_ LPVOID, LPVOID, LPIID *, DWORD, D3DRMLOADOPTIONS, 
  73.     D3DRMLOADCALLBACK, LPVOID, D3DRMLOADTEXTURECALLBACK, LPVOID, 
  74.     LPDIRECT3DRMFRAME 
  75.     ) PURE; 
  76.     STDMETHOD(Tick) (THIS_ D3DVALUE) PURE; 
  77. };    
  78. #define    D3DRM_OK DD_OK 
  79. #define    D3DRMERR_BADOBJECT MAKE_DDHRESULT(781) 
  80. #define    D3DRMERR_BADTYPE MAKE_DDHRESULT(782) 
  81. #define    D3DRMERR_BADALLOC MAKE_DDHRESULT(783) 
  82. #define    D3DRMERR_FACEUSED MAKE_DDHRESULT(784) 
  83. #define    D3DRMERR_NOTFOUND MAKE_DDHRESULT(785) 
  84. #define    D3DRMERR_NOTDONEYET MAKE_DDHRESULT(786) 
  85. #define    D3DRMERR_FILENOTFOUND MAKE_DDHRESULT(787) 
  86. #define    D3DRMERR_BADFILE MAKE_DDHRESULT(788) 
  87. #define    D3DRMERR_BADDEVICE MAKE_DDHRESULT(789) 
  88. #define    D3DRMERR_BADVALUE MAKE_DDHRESULT(790) 
  89. #define    D3DRMERR_BADMAJORVERSION MAKE_DDHRESULT(791) 
  90. #define    D3DRMERR_BADMINORVERSION MAKE_DDHRESULT(792) 
  91. #define    D3DRMERR_UNABLETOEXECUTE MAKE_DDHRESULT(793) 
  92. #endif
  93.     
  94.