download d3dx8core.h
Language: C
Copyright: (C) 2002 Raphael Junqueira
LOC: 72
Project Info
ReactOS
Server: ReactOS
Type: svn
...actos\reactos\include\psdk\
   accctrl.h
   aclapi.h
   aclui.h
   activscp.idl
   advpub.h
   af_irda.h
   afxres.h
   appmgmt.h
   authz.h
   axcore.idl
   axextend.idl
   basetsd.h
   basetyps.h
   cderr.h
   cguid.h
   clusapi.h
   comcat.idl
   commctrl.h
   commdlg.h
   common.ver
   control.idl
   cpl.h
   cplext.h
   cryptuiapi.h
   custcntl.h
   cvconst.h
   d3d.h
   d3d8.h
   d3d8types.h
   d3d9.h
   d3d9types.h
   d3drm.h
   d3drmdef.h
   d3dtypes.h
   d3dx8core.h
   dbghelp.h
   dbinit.idl
   dbprop.idl
   dbs.idl
   dbt.h
   dde.h
   ddeml.h
   ddrawgdi.h
   devenum.idl
   devguid.h
   dhcpcapi.h
   dhcpcsdk.h
   digitalv.h
   dinput.h
   dispex.idl
   dlgs.h
   docobj.idl
   downloadmgr.idl
   dplay.h
   dplobby.h
   dsdriver.h
   dsgetdc.h
   dsound.h
   dsrole.h
   dvdevcod.h
   dyngraph.idl
   edevdefs.h
   errorrep.h
   evntrace.h
   exdisp.idl
   exdispid.h
   fci.h
   fdi.h
   gdiplus.h
   gdiplusbase.h
   gdiplusbrush.h
   gdipluscolor.h
   gdipluscolormatrix.h
   gdipluseffects.h
   gdiplusenums.h
   gdiplusflat.h
   gdiplusgpstubs.h
   gdiplusgraphics.h
   gdiplusheaders.h
   gdiplusimageattributes.h
   gdiplusimaging.h
   gdiplusinit.h
   gdipluslinecaps.h
   gdiplusmatrix.h
   gdiplusmem.h
   gdiplusmetafile.h
   gdiplusmetaheader.h
   gdipluspath.h
   gdipluspen.h
   gdipluspixelformats.h
   gdiplusstringformat.h
   gdiplustypes.h
   guiddef.h
   hlink.idl
   htiframe.idl
   htmlhelp.h
   httpext.h
   iads.idl
   icmpapi.h
   idispids.h
   imagehlp.h
   imm.h
   in6addr.h
   inaddr.h
   indexsrv.idl
   initguid.h
   intrin.h
   intrin_ppc.h
   intrin_x86.h
   intrin_x86_64.h
   intshcut.h
   ipexport.h
   iphlpapi.h
   ipifcons.h
   iprtrmib.h
   iptypes.h
   isguids.h
   ks.h
   ksmedia.h
   largeint.h
   lm.h
   lmaccess.h
   lmalert.h
   lmapibuf.h
   lmat.h
   lmaudit.h
   lmchdev.h
   lmconfig.h
   lmcons.h
   lmerr.h
   lmerrlog.h
   lmjoin.h
   lmmsg.h
   lmremutl.h
   lmrepl.h
   lmserver.h
   lmshare.h
   lmsname.h
   lmstats.h
   lmsvc.h
   lmuse.h
   lmuseflg.h
   lmwksta.h
   lzexpand.h
   mapi.h
   mapicode.h
   mapidefs.h
   mapiguid.h
   mapitags.h
   mapiutil.h
   mapival.h
   mapix.h
   mciavi.h
   mcx.h
   mgmtapi.h
   mimeinfo.idl
   mlang.idl
   mmddk.h
   mmsystem.h
   mscat.h
   mshtmcid.h
   mshtmdid.h
   mshtmhst.idl
   mshtml.idl
   msi.h
   msidefs.h
   msiquery.h
   mssip.h
   mswsock.h
   msxml.idl
   msxml2.idl
   msxmldid.h
   multimon.h
   nb30.h
   nddeapi.h
   ndrtypes.h
   newdev.h
   npapi.h
   nspapi.h
   ntdef.h
   ntdll.h
   ntgdi.h
   ntldap.h
   ntsecapi.h
   ntsecpkg.h
   ntstatus.h
   ntverp.h
   oaidl.idl
   objbase.h
   objfwd.h
   objidl.idl
   objsafe.idl
   objsel.h
   ocidl.idl
   ocmm.idl
   odbcinst.h
   ole.h
   ole2.h
   ole2ver.h
   oleacc.h
   oleauto.h
   olectl.h
   olectlid.h
   oledb.idl
   oledlg.h
   oleidl.idl
   optary.idl
   pbt.h
   poppack.h
   powrprof.h
   propidl.idl
   prsht.h
   psapi.h
   psdk.rbuild
   pshpack1.h
   pshpack2.h
   pshpack4.h
   pshpack8.h
   pshpck16.h
   pstore.idl
   qos.h
   rapi.h
   ras.h
   rasdlg.h
   raserror.h
   rassapi.h
   README.w32api
   reason.h
   regstr.h
   richedit.h
   richole.idl
   rpc.h
   rpcdce.h
   rpcdce2.h
   rpcdcep.h
   rpcndr.h
   rpcnsi.h
   rpcnsip.h
   rpcnterr.h
   rpcproxy.h
   schannel.h
   schemadef.h
   schnlsp.h
   scrnsave.h
   sddl.h
   sdkddkver.h
   secext.h
   security.h
   sensapi.h
   sensevts.idl
   servprov.idl
   setupapi.h
   shellapi.h
   shldisp.idl
   shlguid.h
   shlobj.h
   shlwapi.h
   shobjidl.idl
   shtypes.idl
   snmp.h
   softpub.h
   sql.h
   sqlext.h
   sqltypes.h
   sqlucode.h
   sspi.h
   stdole2.idl
   strmif.idl
   subauth.h
   svcguid.h
   tchar.h
   tcpioctl.h
   textserv.h
   tlhelp32.h
   tmschema.h
   tom.idl
   unknwn.idl
   urlhist.idl
   urlmon.idl
   userenv.h
   usp10.h
   uxtheme.h
   vfw.h
   vfwmsgs.h
   w32api.h
   wdbgexts.h
   winable.h
   winbase.h
   winber.h
   wincon.h
   wincrypt.h
   windef.h
   windns.h
   windows.h
   windowsx.h
   winefs.h
   winerror.h
   winfax.h
   wingdi.h
   wininet.h
   winioctl.h
   winldap.h
   winnetwk.h
   winnls.h
   winnls32.h
   winnt.h
   winperf.h
   winreg.h
   winres.h
   winresrc.h
   winscard.h
   winsmcrd.h
   winsnmp.h
   winsock.h
   winsock2.h
   winspool.h
   winsvc.h
   winternl.h
   wintrust.h
   winuser.h
   winver.h
   winwlx.h
   ws2spi.h
   ws2tcpip.h
   wsahelp.h
   wsipx.h
   wsnetbs.h
   wtsapi32.h
   wtypes.idl
   xcmc.h
   xmldom.idl
   xmldso.idl
   xprtdefs.h
   zmouse.h

/*
 * Copyright (C) 2002 Raphael Junqueira
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 */

#ifndef __WINE_D3DX8CORE_H
#define __WINE_D3DX8CORE_H

#include <objbase.h>

#include <d3d8.h>
#include <d3d8types.h>
#include <d3d8caps.h>

/*****************************************************************************
 * #defines and error codes
 */
#define D3DXASM_DEBUG           1
#define D3DXASM_SKIPVALIDATION  2

#define _FACD3D  0x876
#define MAKE_D3DXHRESULT( code )  MAKE_HRESULT( 1, _FACD3D, code )

/*
 * Direct3D Errors
 */
#define D3DXERR_CANNOTATTRSORT                  MAKE_D3DXHRESULT(2158)
#define D3DXERR_CANNOTMODIFYINDEXBUFFER         MAKE_D3DXHRESULT(2159)
#define D3DXERR_INVALIDMESH                     MAKE_D3DXHRESULT(2160)
#define D3DXERR_SKINNINGNOTSUPPORTED            MAKE_D3DXHRESULT(2161)
#define D3DXERR_TOOMANYINFLUENCES               MAKE_D3DXHRESULT(2162)
#define D3DXERR_INVALIDDATA                     MAKE_D3DXHRESULT(2163)

/*****************************************************************************
 * Predeclare the interfaces
 */
DEFINE_GUID(IID_ID3DXBuffer,             0x1,0x1,0x4,0xB0,0xCF,0x98,0xFE,0xFD,0xFF,0x95,0x12);/* FIXME */
typedef struct ID3DXBuffer              ID3DXBuffer, *LPD3DXBUFFER;
DEFINE_GUID(IID_ID3DXFont,               0x1,0x1,0x4,0xB0,0xCF,0x98,0xFE,0xFD,0xFF,0x95,0x13);/* FIXME */
typedef struct ID3DXFont                ID3DXFont, *LPD3DXFONT;

/*****************************************************************************
 * ID3DXBuffer interface
 */
#define INTERFACE ID3DXBuffer
DECLARE_INTERFACE_(ID3DXBuffer,IUnknown)
{
    /*** IUnknown methods ***/
    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
    STDMETHOD_(ULONG,Release)(THIS) PURE;
    /*** ID3DXBuffer methods ***/
    STDMETHOD_(LPVOID,GetBufferPointer)(THIS) PURE;
    STDMETHOD_(DWORD,GetBufferSize)(THIS) PURE;
};
#undef INTERFACE

#if !defined(__cplusplus) || defined(CINTERFACE)
/*** IUnknown methods ***/
#define ID3DXBuffer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define ID3DXBuffer_AddRef(p)             (p)->lpVtbl->AddRef(p)
#define ID3DXBuffer_Release(p)            (p)->lpVtbl->Release(p)
/*** ID3DXBuffer methods ***/
#define ID3DXBuffer_GetBufferPointer(p)   (p)->lpVtbl->GetBufferPointer(p)
#define ID3DXBuffer_GetBufferSize(p)      (p)->lpVtbl->GetBufferSize(p)
#endif

/*****************************************************************************
 * ID3DXFont interface
 */
#define INTERFACE ID3DXFont
DECLARE_INTERFACE_(ID3DXFont,IUnknown)
{
    /*** IUnknown methods ***/
    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
    STDMETHOD_(ULONG,Release)(THIS) PURE;
    /*** ID3DXFont methods ***/
    STDMETHOD(Begin)(THIS) PURE;
    STDMETHOD(DrawTextA)(THIS) PURE;
    STDMETHOD(End)(THIS) PURE;
};
#undef INTERFACE

#if !defined(__cplusplus) || defined(CINTERFACE)
/*** IUnknown methods ***/
#define ID3DXFont_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define ID3DXFont_AddRef(p)             (p)->lpVtbl->AddRef(p)
#define ID3DXFont_Release(p)            (p)->lpVtbl->Release(p)
/*** ID3DXFont methods ***/
#define ID3DXFont_Begin(p)              (p)->lpVtbl->Begin(p)
#define ID3DXFont_DrawTextA(p,a,b,c,d,e)(p)->lpVtbl->DrawText(p,a,b,c,d,e)
#define ID3DXFont_End(p)                (p)->lpVtbl->End(p)
#endif

/*************************************************************************************
 * Define entrypoints 
 */
HRESULT WINAPI D3DXCreateBuffer(DWORD NumBytes, LPD3DXBUFFER* ppBuffer);
HRESULT WINAPI D3DXCreateFont(LPDIRECT3DDEVICE8 pDevice, HFONT hFont, LPD3DXFONT* ppFont);
UINT WINAPI D3DXGetFVFVertexSize(DWORD FVF);
HRESULT WINAPI D3DXAssembleShader(LPCVOID pSrcData, UINT SrcDataLen, DWORD Flags, 
			   LPD3DXBUFFER* ppConstants, 
			   LPD3DXBUFFER* ppCompiledShader,
			   LPD3DXBUFFER* ppCompilationErrors);
HRESULT WINAPI D3DXAssembleShaderFromFileA(LPSTR pSrcFile, DWORD Flags,
				    LPD3DXBUFFER* ppConstants,
				    LPD3DXBUFFER* ppCompiledShader,
				    LPD3DXBUFFER* ppCompilationErrors);
HRESULT WINAPI D3DXAssembleShaderFromFileW(LPSTR pSrcFile, DWORD Flags,
				    LPD3DXBUFFER* ppConstants,
				    LPD3DXBUFFER* ppCompiledShader,
				    LPD3DXBUFFER* ppCompilationErrors);

#endif /* __WINE_D3DX8CORE_H */

About Koders | Resources | Downloads | Support | Black Duck | Submit Project | Terms of Service | DMCA | Privacy Policy | Site Map| Contact Us