VirtualBox

Ignore:
Timestamp:
Apr 19, 2010 3:27:01 PM (15 years ago)
Author:
vboxsync
Message:

crOpenGL: update to wine 1.1.43

Location:
trunk/src/VBox/Additions/WINNT/Graphics/Wine/include
Files:
125 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/Makefile.in

    r21731 r28475  
    1515        amstream.idl \
    1616        amvideo.idl \
     17        audioclient.idl \
     18        audiopolicy.idl \
    1719        austream.idl \
    1820        bits.idl \
    1921        bits1_5.idl \
    2022        comcat.idl \
     23        commoncontrols.idl \
    2124        control.idl \
     25        ctfutb.idl \
    2226        ctxtcall.idl \
    2327        d3d10.idl \
    2428        ddstream.idl \
     29        devicetopology.idl \
    2530        dimm.idl \
    2631        dispex.idl \
     
    2934        dxgi.idl \
    3035        dxgitype.idl \
     36        endpointvolume.idl \
    3137        exdisp.idl \
    3238        fusion.idl \
     
    6975        sensevts.idl \
    7076        servprov.idl \
     77        shdeprecated.idl \
    7178        shldisp.idl \
    7279        shobjidl.idl \
     
    8693        wuapi.idl \
    8794        xmldom.idl \
    88         xmldso.idl
     95        xmldso.idl \
     96        xmllite.idl
    8997
    9098IDL_TLB_SRCS = \
     
    95103        $(PUBLIC_IDL_H_SRCS) \
    96104        accctrl.h \
     105        access.idl \
    97106        aclapi.h \
    98107        aclui.h \
    99108        adshlp.h \
    100109        advpub.h \
     110        af_irda.h \
     111        amaudio.h \
    101112        appmgmt.h \
     113        asynot.idl \
     114        asysta.idl \
    102115        audevcod.h \
     116        audiosessiontypes.h \
    103117        aviriff.h \
     118        avrt.h \
    104119        axcore.idl \
    105120        axextend.idl \
     
    107122        basetyps.h \
    108123        bcrypt.h \
     124        binres.idl \
    109125        bitsmsg.h \
    110126        cderr.h \
     
    113129        cierror.h \
    114130        clusapi.h \
     131        cmdbas.idl \
     132        cmdtxt.idl \
    115133        commctrl.h \
    116134        commctrl.rh \
     
    144162        d3dx9.h \
    145163        d3dx9core.h \
     164        d3dx9effect.h \
    146165        d3dx9math.h \
    147166        d3dx9math.inl \
    148167        d3dx9mesh.h \
    149168        d3dx9shader.h \
     169        d3dx9shape.h \
    150170        d3dx9tex.h \
    151171        dbghelp.h \
     
    178198        devenum.idl \
    179199        devguid.h \
     200        devpkey.h \
     201        devpropdef.h \
    180202        digitalv.h \
    181203        dinput.h \
     
    362384        oleauto.h \
    363385        olectl.h \
     386        oledberr.h \
    364387        oledlg.h \
     388        opnrst.idl \
    365389        pdh.h \
    366390        pdhmsg.h \
     
    369393        powrprof.h \
    370394        profinfo.h \
     395        propkey.h \
     396        propkeydef.h \
    371397        propvarutil.h \
    372398        prsht.h \
     
    530556        esac; done
    531557        -rmdir $(INSTALLDIRS)
    532 
    533 @DEPENDENCIES@  # everything below this line is overwritten by make depend
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/axcore.idl

    r19678 r28475  
    5757cpp_quote("#define MAX_FILTER_NAME 128")
    5858
     59cpp_quote("#ifndef REFERENCE_TIME_DEFINED")
     60cpp_quote("#define REFERENCE_TIME_DEFINED")
    5961typedef LONGLONG REFERENCE_TIME;
     62cpp_quote("#endif")
    6063
    6164cpp_quote("#ifndef REFTIME_DEFINED")
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/commdlg.h

    r19678 r28475  
    274274#define FR_MATCHALEFHAMZA               0x80000000
    275275
    276 typedef UINT (CALLBACK *LPCFHOOKPROC)(HWND,UINT,WPARAM,LPARAM);
     276typedef UINT_PTR (CALLBACK *LPCFHOOKPROC)(HWND,UINT,WPARAM,LPARAM);
    277277
    278278typedef struct tagCHOOSEFONTA
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/config.h.in

    r21731 r28475  
    11/* include/config.h.in.  Generated from configure.ac by autoheader.  */
    22
     3#ifndef WINE_CROSSTEST
    34#define __WINE_CONFIG_H
    45
     
    2324/* Define to 1 if you have the <asm/types.h> header file. */
    2425#undef HAVE_ASM_TYPES_H
     26
     27/* Define to 1 if you have the `AudioFileStreamOpen' function. */
     28#undef HAVE_AUDIOFILESTREAMOPEN
     29
     30/* Define to 1 if you have the <AudioToolbox/AudioConverter.h> header file. */
     31#undef HAVE_AUDIOTOOLBOX_AUDIOCONVERTER_H
     32
     33/* Define to 1 if you have the <AudioToolbox/AudioFileStream.h> header file.
     34   */
     35#undef HAVE_AUDIOTOOLBOX_AUDIOFILESTREAM_H
     36
     37/* Define to 1 if you have the <AudioToolbox/AudioFile.h> header file. */
     38#undef HAVE_AUDIOTOOLBOX_AUDIOFILE_H
    2539
    2640/* Define to 1 if you have the <AudioUnit/AudioUnit.h> header file. */
     
    241255#undef HAVE_IEEEFP_H
    242256
     257/* Define to 1 if you have the <ifaddrs.h> header file. */
     258#undef HAVE_IFADDRS_H
     259
    243260/* Define to 1 if you have the <inet/mib2.h> header file. */
    244261#undef HAVE_INET_MIB2_H
     
    538555#undef HAVE_ONE_ARG_MKDIR
    539556
     557/* Define to 1 if OpenAL is available */
     558#undef HAVE_OPENAL
     559
    540560/* Define if OpenGL is present on the system */
    541561#undef HAVE_OPENGL
     
    559579#undef HAVE_PNG_H
    560580
     581/* Define to 1 if libpng has the png_set_expand_gray_1_2_4_to_8 function. */
     582#undef HAVE_PNG_SET_EXPAND_GRAY_1_2_4_TO_8
     583
    561584/* Define to 1 if you have the `poll' function. */
    562585#undef HAVE_POLL
     
    736759#undef HAVE_STRTOULL
    737760
    738 /* Define to 1 if `direction' is member of `struct ff_effect'. */
     761/* Define to 1 if `direction' is a member of `struct ff_effect'. */
    739762#undef HAVE_STRUCT_FF_EFFECT_DIRECTION
    740763
    741 /* Define to 1 if `icps_outhist' is member of `struct icmpstat'. */
     764/* Define to 1 if `icps_outhist' is a member of `struct icmpstat'. */
    742765#undef HAVE_STRUCT_ICMPSTAT_ICPS_OUTHIST
    743766
    744 /* Define to 1 if `msg_accrights' is member of `struct msghdr'. */
     767/* Define to 1 if `ifr_hwaddr' is a member of `struct ifreq'. */
     768#undef HAVE_STRUCT_IFREQ_IFR_HWADDR
     769
     770/* Define to 1 if `msg_accrights' is a member of `struct msghdr'. */
    745771#undef HAVE_STRUCT_MSGHDR_MSG_ACCRIGHTS
    746772
    747 /* Define to 1 if `mt_blkno' is member of `struct mtget'. */
     773/* Define to 1 if `mt_blkno' is a member of `struct mtget'. */
    748774#undef HAVE_STRUCT_MTGET_MT_BLKNO
    749775
    750 /* Define to 1 if `mt_blksiz' is member of `struct mtget'. */
     776/* Define to 1 if `mt_blksiz' is a member of `struct mtget'. */
    751777#undef HAVE_STRUCT_MTGET_MT_BLKSIZ
    752778
    753 /* Define to 1 if `mt_gstat' is member of `struct mtget'. */
     779/* Define to 1 if `mt_gstat' is a member of `struct mtget'. */
    754780#undef HAVE_STRUCT_MTGET_MT_GSTAT
    755781
    756 /* Define to 1 if `name' is member of `struct option'. */
     782/* Define to 1 if `name' is a member of `struct option'. */
    757783#undef HAVE_STRUCT_OPTION_NAME
    758784
    759 /* Define to 1 if `sin6_scope_id' is member of `struct sockaddr_in6'. */
     785/* Define to 1 if `sin6_scope_id' is a member of `struct sockaddr_in6'. */
    760786#undef HAVE_STRUCT_SOCKADDR_IN6_SIN6_SCOPE_ID
    761787
    762 /* Define to 1 if `sa_len' is member of `struct sockaddr'. */
     788/* Define to 1 if `sa_len' is a member of `struct sockaddr'. */
    763789#undef HAVE_STRUCT_SOCKADDR_SA_LEN
    764790
    765 /* Define to 1 if `sun_len' is member of `struct sockaddr_un'. */
     791/* Define to 1 if `sun_len' is a member of `struct sockaddr_un'. */
    766792#undef HAVE_STRUCT_SOCKADDR_UN_SUN_LEN
    767793
    768 /* Define to 1 if `f_bavail' is member of `struct statfs'. */
     794/* Define to 1 if `f_bavail' is a member of `struct statfs'. */
    769795#undef HAVE_STRUCT_STATFS_F_BAVAIL
    770796
    771 /* Define to 1 if `f_bfree' is member of `struct statfs'. */
     797/* Define to 1 if `f_bfree' is a member of `struct statfs'. */
    772798#undef HAVE_STRUCT_STATFS_F_BFREE
    773799
    774 /* Define to 1 if `f_favail' is member of `struct statfs'. */
     800/* Define to 1 if `f_favail' is a member of `struct statfs'. */
    775801#undef HAVE_STRUCT_STATFS_F_FAVAIL
    776802
    777 /* Define to 1 if `f_ffree' is member of `struct statfs'. */
     803/* Define to 1 if `f_ffree' is a member of `struct statfs'. */
    778804#undef HAVE_STRUCT_STATFS_F_FFREE
    779805
    780 /* Define to 1 if `f_frsize' is member of `struct statfs'. */
     806/* Define to 1 if `f_frsize' is a member of `struct statfs'. */
    781807#undef HAVE_STRUCT_STATFS_F_FRSIZE
    782808
    783 /* Define to 1 if `f_namelen' is member of `struct statfs'. */
     809/* Define to 1 if `f_namelen' is a member of `struct statfs'. */
    784810#undef HAVE_STRUCT_STATFS_F_NAMELEN
    785811
    786 /* Define to 1 if `f_blocks' is member of `struct statvfs'. */
     812/* Define to 1 if `f_blocks' is a member of `struct statvfs'. */
    787813#undef HAVE_STRUCT_STATVFS_F_BLOCKS
    788814
    789 /* Define to 1 if `st_atim' is member of `struct stat'. */
     815/* Define to 1 if `st_atim' is a member of `struct stat'. */
    790816#undef HAVE_STRUCT_STAT_ST_ATIM
    791817
    792 /* Define to 1 if `st_blocks' is member of `struct stat'. */
     818/* Define to 1 if `st_blocks' is a member of `struct stat'. */
    793819#undef HAVE_STRUCT_STAT_ST_BLOCKS
    794820
    795 /* Define to 1 if `st_ctim' is member of `struct stat'. */
     821/* Define to 1 if `st_ctim' is a member of `struct stat'. */
    796822#undef HAVE_STRUCT_STAT_ST_CTIM
    797823
    798 /* Define to 1 if `st_mtim' is member of `struct stat'. */
     824/* Define to 1 if `st_mtim' is a member of `struct stat'. */
    799825#undef HAVE_STRUCT_STAT_ST_MTIM
    800826
     
    967993#undef HAVE_THR_KILL2
    968994
     995/* Define to 1 if you have the <tiffio.h> header file. */
     996#undef HAVE_TIFFIO_H
     997
    969998/* Define to 1 if you have the `timegm' function. */
    970999#undef HAVE_TIMEGM
     
    11441173#undef SONAME_LIBODBC
    11451174
     1175/* Define to the soname of the libopenal library. */
     1176#undef SONAME_LIBOPENAL
     1177
    11461178/* Define to the soname of the libpng library. */
    11471179#undef SONAME_LIBPNG
     
    11521184/* Define to the soname of the libssl library. */
    11531185#undef SONAME_LIBSSL
     1186
     1187/* Define to the soname of the libtiff library. */
     1188#undef SONAME_LIBTIFF
     1189
     1190/* Define to the soname of the libv4l1 library. */
     1191#undef SONAME_LIBV4L1
    11541192
    11551193/* Define to the soname of the libX11 library. */
     
    12231261#undef inline
    12241262#endif
     1263
     1264#endif /* WINE_CROSSTEST */
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/cvconst.h

    r16477 r28475  
    521521    CV_AMD64_MM71       = CV_REG_MM71,
    522522
     523    CV_AMD64_XMM8       = 252,           /* this includes XMM9 to XMM15 */
     524
    523525    CV_AMD64_RAX        = 328,
    524526    CV_AMD64_RBX        = 329,
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/d3d10effect.h

    r21731 r28475  
    109109} D3D10_EFFECT_DESC;
    110110
     111typedef struct _D3D10_EFFECT_SHADER_DESC
     112{
     113    const BYTE *pInputSignature;
     114    BOOL IsInline;
     115    const BYTE *pBytecode;
     116    UINT BytecodeLength;
     117    LPCSTR SODecl;
     118    UINT NumInputSignatureEntries;
     119    UINT NumOutputSignatureEntries;
     120} D3D10_EFFECT_SHADER_DESC;
     121
    111122typedef struct _D3D10_PASS_DESC
    112123{
     
    210221    STDMETHOD(SetTextureBuffer)(THIS_ ID3D10ShaderResourceView *view) PURE;
    211222    STDMETHOD(GetTextureBuffer)(THIS_ ID3D10ShaderResourceView **view) PURE;
     223};
     224#undef INTERFACE
     225
     226DEFINE_GUID(IID_ID3D10EffectScalarVariable, 0x00e48f7b, 0xd2c8, 0x49e8, 0xa8, 0x6c, 0x02, 0x2d, 0xee, 0x53, 0x43, 0x1f);
     227
     228#define INTERFACE ID3D10EffectScalarVariable
     229DECLARE_INTERFACE_(ID3D10EffectScalarVariable, ID3D10EffectVariable)
     230{
     231    /* ID3D10EffectVariable methods */
     232    STDMETHOD_(BOOL, IsValid)(THIS) PURE;
     233    STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE;
     234    STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE;
     235    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE;
     236    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ LPCSTR name) PURE;
     237    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE;
     238    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ LPCSTR name) PURE;
     239    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ LPCSTR semantic) PURE;
     240    STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE;
     241    STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE;
     242    STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE;
     243    STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE;
     244    STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE;
     245    STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE;
     246    STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE;
     247    STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE;
     248    STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE;
     249    STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE;
     250    STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE;
     251    STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE;
     252    STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE;
     253    STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE;
     254    STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE;
     255    STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     256    STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     257    /* ID3D10EffectScalarVariable methods */
     258    STDMETHOD(SetFloat)(THIS_ float value) PURE;
     259    STDMETHOD(GetFloat)(THIS_ float *value) PURE;
     260    STDMETHOD(SetFloatArray)(THIS_ float *values, UINT offset, UINT count) PURE;
     261    STDMETHOD(GetFloatArray)(THIS_ float *values, UINT offset, UINT count) PURE;
     262    STDMETHOD(SetInt)(THIS_ int value) PURE;
     263    STDMETHOD(GetInt)(THIS_ int *value) PURE;
     264    STDMETHOD(SetIntArray)(THIS_ int *values, UINT offset, UINT count) PURE;
     265    STDMETHOD(GetIntArray)(THIS_ int *values, UINT offset, UINT count) PURE;
     266    STDMETHOD(SetBool)(THIS_ BOOL value) PURE;
     267    STDMETHOD(GetBool)(THIS_ BOOL *value) PURE;
     268    STDMETHOD(SetBoolArray)(THIS_ BOOL *values, UINT offset, UINT count) PURE;
     269    STDMETHOD(GetBoolArray)(THIS_ BOOL *values, UINT offset, UINT count) PURE;
     270};
     271#undef INTERFACE
     272
     273DEFINE_GUID(IID_ID3D10EffectVectorVariable, 0x62b98c44, 0x1f82, 0x4c67, 0xbc, 0xd0, 0x72, 0xcf, 0x8f, 0x21, 0x7e, 0x81);
     274
     275#define INTERFACE ID3D10EffectVectorVariable
     276DECLARE_INTERFACE_(ID3D10EffectVectorVariable, ID3D10EffectVariable)
     277{
     278    /* ID3D10EffectVariable methods */
     279    STDMETHOD_(BOOL, IsValid)(THIS) PURE;
     280    STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE;
     281    STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE;
     282    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE;
     283    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ LPCSTR name) PURE;
     284    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE;
     285    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ LPCSTR name) PURE;
     286    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ LPCSTR semantic) PURE;
     287    STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE;
     288    STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE;
     289    STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE;
     290    STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE;
     291    STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE;
     292    STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE;
     293    STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE;
     294    STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE;
     295    STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE;
     296    STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE;
     297    STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE;
     298    STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE;
     299    STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE;
     300    STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE;
     301    STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE;
     302    STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     303    STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     304    /* ID3D10EffectVectorVariable methods */
     305    STDMETHOD(SetBoolVector)(THIS_ BOOL *value) PURE;
     306    STDMETHOD(SetIntVector)(THIS_ int *value) PURE;
     307    STDMETHOD(SetFloatVector)(THIS_ float *value) PURE;
     308    STDMETHOD(GetBoolVector)(THIS_ BOOL *value) PURE;
     309    STDMETHOD(GetIntVector)(THIS_ int *value) PURE;
     310    STDMETHOD(GetFloatVector)(THIS_ float *value) PURE;
     311    STDMETHOD(SetBoolVectorArray)(THIS_ BOOL *values, UINT offset, UINT count) PURE;
     312    STDMETHOD(SetIntVectorArray)(THIS_ int *values, UINT offset, UINT count) PURE;
     313    STDMETHOD(SetFloatVectorArray)(THIS_ float *values, UINT offset, UINT count) PURE;
     314    STDMETHOD(GetBoolVectorArray)(THIS_ BOOL *values, UINT offset, UINT count) PURE;
     315    STDMETHOD(GetIntVectorArray)(THIS_ int *values, UINT offset, UINT count) PURE;
     316    STDMETHOD(GetFloatVectorArray)(THIS_ float *values, UINT offset, UINT count) PURE;
    212317};
    213318#undef INTERFACE
     
    253358    STDMETHOD(SetMatrixTransposeArray)(THIS_ float *data, UINT offset, UINT count) PURE;
    254359    STDMETHOD(GetMatrixTransposeArray)(THIS_ float *data, UINT offset, UINT count) PURE;
     360};
     361#undef INTERFACE
     362
     363DEFINE_GUID(IID_ID3D10EffectStringVariable, 0x71417501, 0x8df9, 0x4e0a, 0xa7, 0x8a, 0x25, 0x5f, 0x97, 0x56, 0xba, 0xff);
     364
     365#define INTERFACE ID3D10EffectStringVariable
     366DECLARE_INTERFACE_(ID3D10EffectStringVariable, ID3D10EffectVariable)
     367{
     368    /* ID3D10EffectVariable methods */
     369    STDMETHOD_(BOOL, IsValid)(THIS) PURE;
     370    STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE;
     371    STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE;
     372    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE;
     373    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ LPCSTR name) PURE;
     374    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE;
     375    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ LPCSTR name) PURE;
     376    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ LPCSTR semantic) PURE;
     377    STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE;
     378    STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE;
     379    STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE;
     380    STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE;
     381    STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE;
     382    STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE;
     383    STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE;
     384    STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE;
     385    STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE;
     386    STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE;
     387    STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE;
     388    STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE;
     389    STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE;
     390    STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE;
     391    STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE;
     392    STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     393    STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     394    /* ID3D10EffectStringVariable methods */
     395    STDMETHOD(GetString)(THIS_ LPCSTR *str) PURE;
     396    STDMETHOD(GetStringArray)(THIS_ LPCSTR *strs, UINT offset, UINT count) PURE;
     397};
     398#undef INTERFACE
     399
     400DEFINE_GUID(IID_ID3D10EffectShaderResourceVariable,
     401        0xc0a7157b, 0xd872, 0x4b1d, 0x80, 0x73, 0xef, 0xc2, 0xac, 0xd4, 0xb1, 0xfc);
     402
     403#define INTERFACE ID3D10EffectShaderResourceVariable
     404DECLARE_INTERFACE_(ID3D10EffectShaderResourceVariable, ID3D10EffectVariable)
     405{
     406    /* ID3D10EffectVariable methods */
     407    STDMETHOD_(BOOL, IsValid)(THIS) PURE;
     408    STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE;
     409    STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE;
     410    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE;
     411    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ LPCSTR name) PURE;
     412    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE;
     413    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ LPCSTR name) PURE;
     414    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ LPCSTR semantic) PURE;
     415    STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE;
     416    STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE;
     417    STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE;
     418    STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE;
     419    STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE;
     420    STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE;
     421    STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE;
     422    STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE;
     423    STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE;
     424    STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE;
     425    STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE;
     426    STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE;
     427    STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE;
     428    STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE;
     429    STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE;
     430    STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     431    STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     432    /* ID3D10EffectShaderResourceVariable methods */
     433    STDMETHOD(SetResource)(THIS_ ID3D10ShaderResourceView *resource) PURE;
     434    STDMETHOD(GetResource)(THIS_ ID3D10ShaderResourceView **resource) PURE;
     435    STDMETHOD(SetResourceArray)(THIS_ ID3D10ShaderResourceView **resources, UINT offset, UINT count) PURE;
     436    STDMETHOD(GetResourceArray)(THIS_ ID3D10ShaderResourceView **resources, UINT offset, UINT count) PURE;
     437};
     438#undef INTERFACE
     439
     440DEFINE_GUID(IID_ID3D10EffectRenderTargetViewVariable,
     441        0x28ca0cc3, 0xc2c9, 0x40bb, 0xb5, 0x7f, 0x67, 0xb7, 0x37, 0x12, 0x2b, 0x17);
     442
     443#define INTERFACE ID3D10EffectRenderTargetViewVariable
     444DECLARE_INTERFACE_(ID3D10EffectRenderTargetViewVariable, ID3D10EffectVariable)
     445{
     446    /* ID3D10EffectVariable methods */
     447    STDMETHOD_(BOOL, IsValid)(THIS) PURE;
     448    STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE;
     449    STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE;
     450    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE;
     451    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ LPCSTR name) PURE;
     452    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE;
     453    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ LPCSTR name) PURE;
     454    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ LPCSTR semantic) PURE;
     455    STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE;
     456    STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE;
     457    STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE;
     458    STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE;
     459    STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE;
     460    STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE;
     461    STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE;
     462    STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE;
     463    STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE;
     464    STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE;
     465    STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE;
     466    STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE;
     467    STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE;
     468    STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE;
     469    STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE;
     470    STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     471    STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     472    /* ID3D10EffectRenderTargetViewVariable methods */
     473    STDMETHOD(SetRenderTarget)(THIS_ ID3D10RenderTargetView *view) PURE;
     474    STDMETHOD(GetRenderTarget)(THIS_ ID3D10RenderTargetView **view) PURE;
     475    STDMETHOD(SetRenderTargetArray)(THIS_ ID3D10RenderTargetView **views, UINT offset, UINT count) PURE;
     476    STDMETHOD(GetRenderTargetArray)(THIS_ ID3D10RenderTargetView **views, UINT offset, UINT count) PURE;
     477};
     478#undef INTERFACE
     479
     480DEFINE_GUID(IID_ID3D10EffectDepthStencilViewVariable,
     481        0x3e02c918, 0xcc79, 0x4985, 0xb6, 0x22, 0x2d, 0x92, 0xad, 0x70, 0x16, 0x23);
     482
     483#define INTERFACE ID3D10EffectDepthStencilViewVariable
     484DECLARE_INTERFACE_(ID3D10EffectDepthStencilViewVariable, ID3D10EffectVariable)
     485{
     486    /* ID3D10EffectVariable methods */
     487    STDMETHOD_(BOOL, IsValid)(THIS) PURE;
     488    STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE;
     489    STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE;
     490    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE;
     491    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ LPCSTR name) PURE;
     492    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE;
     493    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ LPCSTR name) PURE;
     494    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ LPCSTR semantic) PURE;
     495    STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE;
     496    STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE;
     497    STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE;
     498    STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE;
     499    STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE;
     500    STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE;
     501    STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE;
     502    STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE;
     503    STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE;
     504    STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE;
     505    STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE;
     506    STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE;
     507    STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE;
     508    STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE;
     509    STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE;
     510    STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     511    STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     512    /* ID3D10EffectDepthStencilViewVariable methods */
     513    STDMETHOD(SetDepthStencil)(THIS_ ID3D10DepthStencilView *view) PURE;
     514    STDMETHOD(GetDepthStencil)(THIS_ ID3D10DepthStencilView **view) PURE;
     515    STDMETHOD(SetDepthStencilArray)(THIS_ ID3D10DepthStencilView **views, UINT offset, UINT count) PURE;
     516    STDMETHOD(GetDepthStencilArray)(THIS_ ID3D10DepthStencilView **views, UINT offset, UINT count) PURE;
     517};
     518#undef INTERFACE
     519
     520DEFINE_GUID(IID_ID3D10EffectShaderVariable, 0x80849279, 0xc799, 0x4797, 0x8c, 0x33, 0x04, 0x07, 0xa0, 0x7d, 0x9e, 0x06);
     521
     522#define INTERFACE ID3D10EffectShaderVariable
     523DECLARE_INTERFACE_(ID3D10EffectShaderVariable, ID3D10EffectVariable)
     524{
     525    /* ID3D10EffectVariable methods */
     526    STDMETHOD_(BOOL, IsValid)(THIS) PURE;
     527    STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE;
     528    STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE;
     529    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE;
     530    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ LPCSTR name) PURE;
     531    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE;
     532    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ LPCSTR name) PURE;
     533    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ LPCSTR semantic) PURE;
     534    STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE;
     535    STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE;
     536    STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE;
     537    STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE;
     538    STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE;
     539    STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE;
     540    STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE;
     541    STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE;
     542    STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE;
     543    STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE;
     544    STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE;
     545    STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE;
     546    STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE;
     547    STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE;
     548    STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE;
     549    STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     550    STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     551    /* ID3D10EffectShaderVariable methods */
     552    STDMETHOD(GetShaderDesc)(THIS_ UINT index, D3D10_EFFECT_SHADER_DESC *desc) PURE;
     553    STDMETHOD(GetVertexShader)(THIS_ UINT index, ID3D10VertexShader **shader) PURE;
     554    STDMETHOD(GetGeometryShader)(THIS_ UINT index, ID3D10GeometryShader **shader) PURE;
     555    STDMETHOD(GetPixelShader)(THIS_ UINT index, ID3D10PixelShader **shader) PURE;
     556    STDMETHOD(GetInputSignatureElementDesc)(THIS_ UINT shader_index, UINT element_index,
     557            D3D10_SIGNATURE_PARAMETER_DESC *desc) PURE;
     558    STDMETHOD(GetOutputSignatureElementDesc)(THIS_ UINT shader_index, UINT element_index,
     559            D3D10_SIGNATURE_PARAMETER_DESC *desc) PURE;
     560};
     561#undef INTERFACE
     562
     563DEFINE_GUID(IID_ID3D10EffectBlendVariable, 0x1fcd2294, 0xdf6d, 0x4eae, 0x86, 0xb3, 0x0e, 0x91, 0x60, 0xcf, 0xb0, 0x7b);
     564
     565#define INTERFACE ID3D10EffectBlendVariable
     566DECLARE_INTERFACE_(ID3D10EffectBlendVariable, ID3D10EffectVariable)
     567{
     568    /* ID3D10EffectVariable methods */
     569    STDMETHOD_(BOOL, IsValid)(THIS) PURE;
     570    STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE;
     571    STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE;
     572    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE;
     573    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ LPCSTR name) PURE;
     574    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE;
     575    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ LPCSTR name) PURE;
     576    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ LPCSTR semantic) PURE;
     577    STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE;
     578    STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE;
     579    STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE;
     580    STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE;
     581    STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE;
     582    STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE;
     583    STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE;
     584    STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE;
     585    STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE;
     586    STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE;
     587    STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE;
     588    STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE;
     589    STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE;
     590    STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE;
     591    STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE;
     592    STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     593    STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     594    /* ID3D10EffectBlendVariable methods */
     595    STDMETHOD(GetBlendState)(THIS_ UINT index, ID3D10BlendState **blend_state) PURE;
     596    STDMETHOD(GetBackingStore)(THIS_ UINT index, D3D10_BLEND_DESC *desc) PURE;
     597};
     598#undef INTERFACE
     599
     600DEFINE_GUID(IID_ID3D10EffectDepthStencilVariable,
     601        0xaf482368, 0x330a, 0x46a5, 0x9a, 0x5c, 0x01, 0xc7, 0x1a, 0xf2, 0x4c, 0x8d);
     602
     603#define INTERFACE ID3D10EffectDepthStencilVariable
     604DECLARE_INTERFACE_(ID3D10EffectDepthStencilVariable, ID3D10EffectVariable)
     605{
     606    /* ID3D10EffectVariable methods */
     607    STDMETHOD_(BOOL, IsValid)(THIS) PURE;
     608    STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE;
     609    STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE;
     610    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE;
     611    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ LPCSTR name) PURE;
     612    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE;
     613    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ LPCSTR name) PURE;
     614    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ LPCSTR semantic) PURE;
     615    STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE;
     616    STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE;
     617    STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE;
     618    STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE;
     619    STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE;
     620    STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE;
     621    STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE;
     622    STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE;
     623    STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE;
     624    STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE;
     625    STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE;
     626    STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE;
     627    STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE;
     628    STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE;
     629    STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE;
     630    STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     631    STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     632    /* ID3D10EffectDepthStencilVariable methods */
     633    STDMETHOD(GetDepthStencilState)(THIS_ UINT index, ID3D10DepthStencilState **depth_stencil_state) PURE;
     634    STDMETHOD(GetBackingStore)(THIS_ UINT index, D3D10_DEPTH_STENCIL_DESC *desc) PURE;
     635};
     636#undef INTERFACE
     637
     638DEFINE_GUID(IID_ID3D10EffectRasterizerVariable,
     639        0x21af9f0e, 0x4d94, 0x4ea9, 0x97, 0x85, 0x2c, 0xb7, 0x6b, 0x8c, 0x0b, 0x34);
     640
     641#define INTERFACE ID3D10EffectRasterizerVariable
     642DECLARE_INTERFACE_(ID3D10EffectRasterizerVariable, ID3D10EffectVariable)
     643{
     644    /* ID3D10EffectVariable methods */
     645    STDMETHOD_(BOOL, IsValid)(THIS) PURE;
     646    STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE;
     647    STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE;
     648    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE;
     649    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ LPCSTR name) PURE;
     650    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE;
     651    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ LPCSTR name) PURE;
     652    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ LPCSTR semantic) PURE;
     653    STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE;
     654    STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE;
     655    STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE;
     656    STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE;
     657    STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE;
     658    STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE;
     659    STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE;
     660    STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE;
     661    STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE;
     662    STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE;
     663    STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE;
     664    STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE;
     665    STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE;
     666    STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE;
     667    STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE;
     668    STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     669    STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     670    /* ID3D10EffectRasterizerVariable methods */
     671    STDMETHOD(GetRasterizerState)(THIS_ UINT index, ID3D10RasterizerState **rasterizer_state) PURE;
     672    STDMETHOD(GetBackingStore)(THIS_ UINT index, D3D10_RASTERIZER_DESC *desc) PURE;
     673};
     674#undef INTERFACE
     675
     676DEFINE_GUID(IID_ID3D10EffectSamplerVariable,
     677        0x6530d5c7, 0x07e9, 0x4271, 0xa4, 0x18, 0xe7, 0xce, 0x4b, 0xd1, 0xe4, 0x80);
     678
     679#define INTERFACE ID3D10EffectSamplerVariable
     680DECLARE_INTERFACE_(ID3D10EffectSamplerVariable, ID3D10EffectVariable)
     681{
     682    /* ID3D10EffectVariable methods */
     683    STDMETHOD_(BOOL, IsValid)(THIS) PURE;
     684    STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE;
     685    STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE;
     686    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE;
     687    STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ LPCSTR name) PURE;
     688    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE;
     689    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ LPCSTR name) PURE;
     690    STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ LPCSTR semantic) PURE;
     691    STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE;
     692    STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE;
     693    STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE;
     694    STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE;
     695    STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE;
     696    STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE;
     697    STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE;
     698    STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE;
     699    STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE;
     700    STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE;
     701    STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE;
     702    STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE;
     703    STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE;
     704    STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE;
     705    STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE;
     706    STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     707    STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE;
     708    /* ID3D10EffectSamplerVariable methods */
     709    STDMETHOD(GetSampler)(THIS_ UINT index, ID3D10SamplerState **sampler) PURE;
     710    STDMETHOD(GetBackingStore)(THIS_ UINT index, D3D10_SAMPLER_DESC *desc) PURE;
    255711};
    256712#undef INTERFACE
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/d3drm.h

    r25949 r28475  
    11/*
    22 * Copyright (C) 2005 Peter Berg Larsen
     3 * Copyright (C) 2010 Christian Costa
    34 *
    45 * This library is free software; you can redistribute it and/or
     
    3031
    3132#include <ddraw.h>
     33
     34typedef struct IDirect3DRM *LPDIRECT3DRM;
     35
    3236#include <d3drmobj.h>
    3337
     
    4044DEFINE_GUID(IID_IDirect3DRM2,               0x4516ecc8, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
    4145DEFINE_GUID(IID_IDirect3DRM3,               0x4516ec83, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
    42 
    43 typedef void *LPDIRECT3DRM;
    4446
    4547HRESULT WINAPI Direct3DRMCreate(LPDIRECT3DRM* ppDirect3DRM);
     
    179181#endif
    180182
     183/*****************************************************************************
     184 * IDirect3DRM2 interface
     185 */
     186#ifdef WINE_NO_UNICODE_MACROS
     187#undef GetClassName
     188#endif
     189#define INTERFACE IDirect3DRM2
     190DECLARE_INTERFACE_(IDirect3DRM2,IUnknown)
     191{
     192    /*** IUnknown methods ***/
     193    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     194    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     195    STDMETHOD_(ULONG,Release)(THIS) PURE;
     196    /*** IDirect3DRM2 methods ***/
     197    STDMETHOD(CreateObject)(THIS_ REFCLSID rclsid, LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     198    STDMETHOD(CreateFrame)(THIS_ LPDIRECT3DRMFRAME, LPDIRECT3DRMFRAME2 *) PURE;
     199    STDMETHOD(CreateMesh)(THIS_ LPDIRECT3DRMMESH *) PURE;
     200    STDMETHOD(CreateMeshBuilder)(THIS_ LPDIRECT3DRMMESHBUILDER2 *) PURE;
     201    STDMETHOD(CreateFace)(THIS_ LPDIRECT3DRMFACE *) PURE;
     202    STDMETHOD(CreateAnimation)(THIS_ LPDIRECT3DRMANIMATION *) PURE;
     203    STDMETHOD(CreateAnimationSet)(THIS_ LPDIRECT3DRMANIMATIONSET *) PURE;
     204    STDMETHOD(CreateTexture)(THIS_ LPD3DRMIMAGE, LPDIRECT3DRMTEXTURE2 *) PURE;
     205    STDMETHOD(CreateLight)(THIS_ D3DRMLIGHTTYPE, D3DCOLOR, LPDIRECT3DRMLIGHT *) PURE;
     206    STDMETHOD(CreateLightRGB)(THIS_ D3DRMLIGHTTYPE, D3DVALUE, D3DVALUE, D3DVALUE, LPDIRECT3DRMLIGHT *) PURE;
     207    STDMETHOD(CreateMaterial)(THIS_ D3DVALUE, LPDIRECT3DRMMATERIAL *) PURE;
     208    STDMETHOD(CreateDevice)(THIS_ DWORD, DWORD, LPDIRECT3DRMDEVICE2 *) PURE;
     209    STDMETHOD(CreateDeviceFromSurface)(THIS_ LPGUID pGUID, LPDIRECTDRAW pDD, LPDIRECTDRAWSURFACE pDDSBack,
     210        LPDIRECT3DRMDEVICE2 *) PURE;
     211    STDMETHOD(CreateDeviceFromD3D)(THIS_ LPDIRECT3D2 pD3D, LPDIRECT3DDEVICE2 pD3DDev, LPDIRECT3DRMDEVICE2 *) PURE;
     212    STDMETHOD(CreateDeviceFromClipper)(THIS_ LPDIRECTDRAWCLIPPER pDDClipper, LPGUID pGUID, int width, int height,
     213        LPDIRECT3DRMDEVICE2 *) PURE;
     214    STDMETHOD(CreateTextureFromSurface)(THIS_ LPDIRECTDRAWSURFACE pDDS, LPDIRECT3DRMTEXTURE2 *) PURE;
     215    STDMETHOD(CreateShadow)(THIS_ LPDIRECT3DRMVISUAL, LPDIRECT3DRMLIGHT, D3DVALUE px, D3DVALUE py, D3DVALUE pz,
     216        D3DVALUE nx, D3DVALUE ny, D3DVALUE nz, LPDIRECT3DRMVISUAL *) PURE;
     217    STDMETHOD(CreateViewport)(THIS_ LPDIRECT3DRMDEVICE, LPDIRECT3DRMFRAME, DWORD, DWORD, DWORD, DWORD,
     218        LPDIRECT3DRMVIEWPORT *) PURE;
     219    STDMETHOD(CreateWrap)(THIS_ D3DRMWRAPTYPE, LPDIRECT3DRMFRAME, D3DVALUE ox, D3DVALUE oy, D3DVALUE oz,
     220        D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE uz, D3DVALUE ou, D3DVALUE ov,
     221        D3DVALUE su, D3DVALUE sv, LPDIRECT3DRMWRAP *) PURE;
     222    STDMETHOD(CreateUserVisual)(THIS_ D3DRMUSERVISUALCALLBACK, LPVOID pArg, LPDIRECT3DRMUSERVISUAL *) PURE;
     223    STDMETHOD(LoadTexture)(THIS_ const char *, LPDIRECT3DRMTEXTURE2 *) PURE;
     224    STDMETHOD(LoadTextureFromResource)(THIS_ HMODULE hModule, LPCSTR /* LPCTSTR */ strName, LPCSTR /* LPCTSTR */ strType, LPDIRECT3DRMTEXTURE2 *) PURE;
     225    STDMETHOD(SetSearchPath)(THIS_ LPCSTR) PURE;
     226    STDMETHOD(AddSearchPath)(THIS_ LPCSTR) PURE;
     227    STDMETHOD(GetSearchPath)(THIS_ DWORD *size_return, LPSTR path_return) PURE;
     228    STDMETHOD(SetDefaultTextureColors)(THIS_ DWORD) PURE;
     229    STDMETHOD(SetDefaultTextureShades)(THIS_ DWORD) PURE;
     230    STDMETHOD(GetDevices)(THIS_ LPDIRECT3DRMDEVICEARRAY *) PURE;
     231    STDMETHOD(GetNamedObject)(THIS_ const char *, LPDIRECT3DRMOBJECT *) PURE;
     232    STDMETHOD(EnumerateObjects)(THIS_ D3DRMOBJECTCALLBACK, LPVOID) PURE;
     233    STDMETHOD(Load)(THIS_ LPVOID, LPVOID, LPIID *, DWORD, D3DRMLOADOPTIONS, D3DRMLOADCALLBACK, LPVOID,
     234        D3DRMLOADTEXTURECALLBACK, LPVOID, LPDIRECT3DRMFRAME) PURE;
     235    STDMETHOD(Tick)(THIS_ D3DVALUE) PURE;
     236    STDMETHOD(CreateProgressiveMesh)(THIS_ LPDIRECT3DRMPROGRESSIVEMESH) PURE;
     237};
     238#undef INTERFACE
     239
     240#if !defined(__cplusplus) || defined(CINTERFACE)
     241/*** IUnknown methods ***/
     242#define IDirect3DRM2_QueryInterface(p,a,b)                         (p)->lpVtbl->QueryInterface(p,a,b)
     243#define IDirect3DRM2_AddRef(p)                                     (p)->lpVtbl->AddRef(p)
     244#define IDirect3DRM2_Release(p)                                    (p)->lpVtbl->Release(p)
     245/*** IDirect3DRM2 methods ***/
     246#define IDirect3DRM2_CreateObject(p,a,b,c,d)                       (p)->lpVtbl->CreateObject(p,a,b,d)
     247#define IDirect3DRM2_CreateFrame(p,a,b)                            (p)->lpVtbl->CreateFrame(p,a,b)
     248#define IDirect3DRM2_CreateMesh(p,a)                               (p)->lpVtbl->CreateMesh(p,a)
     249#define IDirect3DRM2_CreateMeshBuilder(p,a)                        (p)->lpVtbl->CreateMeshBuilder(p,a)
     250#define IDirect3DRM2_CreateFace(p,a)                               (p)->lpVtbl->CreateFace(p,a)
     251#define IDirect3DRM2_CreateAnimation(p,a)                          (p)->lpVtbl->CreateAnimation(p,a)
     252#define IDirect3DRM2_CreateAnimationSet(p,a)                       (p)->lpVtbl->CreateAnimationSet(p,a)
     253#define IDirect3DRM2_CreateTexture(p,a,b)                          (p)->lpVtbl->CreateTexture(p,a,b)
     254#define IDirect3DRM2_CreateLight(p,a,b,c)                          (p)->lpVtbl->CreateLight(p,a,b,c)
     255#define IDirect3DRM2_CreateLightRGB(p,a,b,c,d,e)                   (p)->lpVtbl->CreateLightRGB(p,a,b,c,d,e)
     256#define IDirect3DRM2_CreateMaterial(p,a,b)                         (p)->lpVtbl->CreateMaterial(p,a,b)
     257#define IDirect3DRM2_CreateDevice(p,a,b,c)                         (p)->lpVtbl->CreateDevice(p,a,b,c)
     258#define IDirect3DRM2_CreateDeviceFromSurface(p,a,b,c,d)            (p)->lpVtbl->CreateDeviceFromSurface(p,a,b,c,d)
     259#define IDirect3DRM2_CreateDeviceFromD3D(p,a,b,c)                  (p)->lpVtbl->CreateDeviceFromD3D(p,a,b,c)
     260#define IDirect3DRM2_CreateDeviceFromClipper(p,a,b,c,d,e)          (p)->lpVtbl->CreateDeviceFromClipper(p,a,b,c,d,e)
     261#define IDirect3DRM2_CreateTextureFromSurface(p,a,b)               (p)->lpVtbl->CreateTextureFromSurface(p,a,b)
     262#define IDirect3DRM2_CreateShadow(p,a,b,c,d,e,f,g,h,i)             (p)->lpVtbl->CreateShadow(p,a,b,c,d,e,f,g,h,i)
     263#define IDirect3DRM2_CreateViewport(p,a,b,c,d,e,f,g)               (p)->lpVtbl->CreateViewport(p,a,b,c,d,e,f,g)
     264#define IDirect3DRM2_CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) (p)->lpVtbl->CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q)
     265#define IDirect3DRM2_CreateUserVisual(p,a,b,c)                     (p)->lpVtbl->CreateUserVisual(p,a,b,c)
     266#define IDirect3DRM2_LoadTexture(p,a,b)                            (p)->lpVtbl->LoadTexture(p,a,b)
     267#define IDirect3DRM2_LoadTextureFromResource(p,a,b,c,d)            (p)->lpVtbl->LoadTextureFromResource(p,a,b,c,d)
     268#define IDirect3DRM2_SetSearchPath(p,a)                            (p)->lpVtbl->SetSearchPath(p,a)
     269#define IDirect3DRM2_AddSearchPath(p,a)                            (p)->lpVtbl->AddSearchPath(p,a)
     270#define IDirect3DRM2_GetSearchPath(p,a,b)                          (p)->lpVtbl->GetSearchPath(p,a,b)
     271#define IDirect3DRM2_SetDefaultTextureColors(p,a)                  (p)->lpVtbl->SetDefaultTextureColors(p,a)
     272#define IDirect3DRM2_SetDefaultTextureShades(p,a)                  (p)->lpVtbl->SetDefaultTextureShades(p,a)
     273#define IDirect3DRM2_GetDevices(p,a)                               (p)->lpVtbl->GetDevices(p,a)
     274#define IDirect3DRM2_GetNamedObject(p,a,b)                         (p)->lpVtbl->GetNamedObject(p,a,b)
     275#define IDirect3DRM2_EnumerateObjects(p,a,b)                       (p)->lpVtbl->EnumerateObjects(p,a,b)
     276#define IDirect3DRM2_Load(p,a,b,c,d,e,f,g,h,i,j)                   (p)->lpVtbl->Load(p,a,b,c,d,e,f,g,h,i,j)
     277#define IDirect3DRM2_Tick(p,a)                                     (p)->lpVtbl->Tick(p,a)
     278#define IDirect3DRM2_CreateProgressiveMesh(p,a)                    (p)->lpVtbl->CreateProgressiveMesh(p,a)
     279#else
     280/*** IUnknown methods ***/
     281#define IDirect3DRM2_QueryInterface(p,a,b)                         (p)->QueryInterface(a,b)
     282#define IDirect3DRM2_AddRef(p)                                     (p)->AddRef()
     283#define IDirect3DRM2_Release(p)                                    (p)->Release()
     284/*** IDirect3DRM2 methods ***/
     285#define IDirect3DRM2_CreateObject(p,a,b,c,d)                       (p)->CreateObject(a,b,d)
     286#define IDirect3DRM2_CreateFrame(p,a,b)                            (p)->CreateFrame(a,b)
     287#define IDirect3DRM2_CreateMesh(p,a)                               (p)->CreateMesh(a)
     288#define IDirect3DRM2_CreateMeshBuilder(p,a)                        (p)->CreateMeshBuilder(a)
     289#define IDirect3DRM2_CreateFace(p,a)                               (p)->CreateFace(a)
     290#define IDirect3DRM2_CreateAnimation(p,a)                          (p)->CreateAnimation(a)
     291#define IDirect3DRM2_CreateAnimationSet(p,a)                       (p)->CreateAnimationSet(a)
     292#define IDirect3DRM2_CreateTexture(p,a,b)                          (p)->CreateTexture(a,b)
     293#define IDirect3DRM2_CreateLight(p,a,b,c)                          (p)->CreateLight(a,b,c)
     294#define IDirect3DRM2_CreateLightRGB(p,a,b,c,d,e)                   (p)->CreateLightRGB(a,b,c,d,e)
     295#define IDirect3DRM2_CreateMaterial(p,a,b)                         (p)->CreateMaterial(a,b)
     296#define IDirect3DRM2_CreateDevice(p,a,b,c)                         (p)->CreateDevice(a,b,c)
     297#define IDirect3DRM2_CreateDeviceFromSurface(p,a,b,c,d)            (p)->CreateDeviceFromSurface(a,b,c,d)
     298#define IDirect3DRM2_CreateDeviceFromD3D(p,a,b,c)                  (p)->CreateDeviceFromD3D(a,b,c)
     299#define IDirect3DRM2_CreateDeviceFromClipper(p,a,b,c,d,e)          (p)->CreateDeviceFromClipper(a,b,c,d,e)
     300#define IDirect3DRM2_CreateTextureFromSurface(p,a,b)               (p)->CreateTextureFromSurface(a,b)
     301#define IDirect3DRM2_CreateShadow(p,a,b,c,d,e,f,g,h,i)             (p)->CreateShadow(a,b,c,d,e,f,g,h,i)
     302#define IDirect3DRM2_CreateViewport(p,a,b,c,d,e,f,g)               (p)->CreateViewport(a,b,c,d,e,f,g)
     303#define IDirect3DRM2_CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) (p)->CreateWrap(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p)
     304#define IDirect3DRM2_CreateUserVisual(p,a,b,c)                     (p)->CreateUserVisual(a,b,c)
     305#define IDirect3DRM2_LoadTexture(p,a,b)                            (p)->LoadTexture(a,b)
     306#define IDirect3DRM2_LoadTextureFromResource(p,a,b)                (p)->LoadTextureFromResource(a,b)
     307#define IDirect3DRM2_SetSearchPath(p,a)                            (p)->SetSearchPath(a)
     308#define IDirect3DRM2_AddSearchPath(p,a)                            (p)->AddSearchPath(a)
     309#define IDirect3DRM2_GetSearchPath(p,a,b)                          (p)->GetSearchPath(a,b)
     310#define IDirect3DRM2_SetDefaultTextureColors(p,a)                  (p)->SetDefaultTextureColors(a)
     311#define IDirect3DRM2_SetDefaultTextureShades(p,a)                  (p)->SetDefaultTextureShades(a)
     312#define IDirect3DRM2_GetDevices(p,a)                               (p)->GetDevices(a)
     313#define IDirect3DRM2_GetNamedObject(p,a,b)                         (p)->GetNamedObject(a,b)
     314#define IDirect3DRM2_EnumerateObjects(p,a,b)                       (p)->EnumerateObjects(a,b)
     315#define IDirect3DRM2_Load(p,a,b,c,d,e,f,g,h,i,j)                   (p)->Load(a,b,c,d,e,f,g,h,i,j)
     316#define IDirect3DRM2_Tick(p,a)                                     (p)->Tick(a)
     317#define IDirect3DRM2_CreateProgressiveMesh(p,a)                    (p)->CreateProgressiveMesh(p,a)
     318#endif
     319
     320/*****************************************************************************
     321 * IDirect3DRM3 interface
     322 */
     323#ifdef WINE_NO_UNICODE_MACROS
     324#undef GetClassName
     325#endif
     326#define INTERFACE IDirect3DRM3
     327DECLARE_INTERFACE_(IDirect3DRM3,IUnknown)
     328{
     329    /*** IUnknown methods ***/
     330    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     331    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     332    STDMETHOD_(ULONG,Release)(THIS) PURE;
     333    /*** IDirect3DRM2 methods ***/
     334    STDMETHOD(CreateObject)(THIS_ REFCLSID rclsid, LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     335    STDMETHOD(CreateFrame)(THIS_ LPDIRECT3DRMFRAME3, LPDIRECT3DRMFRAME3 *) PURE;
     336    STDMETHOD(CreateMesh)(THIS_ LPDIRECT3DRMMESH *) PURE;
     337    STDMETHOD(CreateMeshBuilder)(THIS_ LPDIRECT3DRMMESHBUILDER3 *) PURE;
     338    STDMETHOD(CreateFace)(THIS_ LPDIRECT3DRMFACE2 *) PURE;
     339    STDMETHOD(CreateAnimation)(THIS_ LPDIRECT3DRMANIMATION2 *) PURE;
     340    STDMETHOD(CreateAnimationSet)(THIS_ LPDIRECT3DRMANIMATIONSET2 *) PURE;
     341    STDMETHOD(CreateTexture)(THIS_ LPD3DRMIMAGE, LPDIRECT3DRMTEXTURE3 *) PURE;
     342    STDMETHOD(CreateLight)(THIS_ D3DRMLIGHTTYPE, D3DCOLOR, LPDIRECT3DRMLIGHT *) PURE;
     343    STDMETHOD(CreateLightRGB)(THIS_ D3DRMLIGHTTYPE, D3DVALUE, D3DVALUE, D3DVALUE, LPDIRECT3DRMLIGHT *) PURE;
     344    STDMETHOD(CreateMaterial)(THIS_ D3DVALUE, LPDIRECT3DRMMATERIAL2 *) PURE;
     345    STDMETHOD(CreateDevice)(THIS_ DWORD, DWORD, LPDIRECT3DRMDEVICE3 *) PURE;
     346    STDMETHOD(CreateDeviceFromSurface)(THIS_ LPGUID pGUID, LPDIRECTDRAW pDD, LPDIRECTDRAWSURFACE pDDSBack,
     347        LPDIRECT3DRMDEVICE3 *) PURE;
     348    STDMETHOD(CreateDeviceFromD3D)(THIS_ LPDIRECT3D2 pD3D, LPDIRECT3DDEVICE2 pD3DDev, LPDIRECT3DRMDEVICE3 *) PURE;
     349    STDMETHOD(CreateDeviceFromClipper)(THIS_ LPDIRECTDRAWCLIPPER pDDClipper, LPGUID pGUID, int width, int height,
     350        LPDIRECT3DRMDEVICE3 *) PURE;
     351    STDMETHOD(CreateTextureFromSurface)(THIS_ LPDIRECTDRAWSURFACE pDDS, LPDIRECT3DRMTEXTURE3 *) PURE;
     352    STDMETHOD(CreateShadow)(THIS_ LPUNKNOWN, LPDIRECT3DRMLIGHT, D3DVALUE px, D3DVALUE py, D3DVALUE pz,
     353        D3DVALUE nx, D3DVALUE ny, D3DVALUE nz, LPDIRECT3DRMSHADOW2 *) PURE;
     354    STDMETHOD(CreateViewport)(THIS_ LPDIRECT3DRMDEVICE3, LPDIRECT3DRMFRAME3, DWORD, DWORD, DWORD, DWORD,
     355        LPDIRECT3DRMVIEWPORT2 *) PURE;
     356    STDMETHOD(CreateWrap)(THIS_ D3DRMWRAPTYPE, LPDIRECT3DRMFRAME3, D3DVALUE ox, D3DVALUE oy, D3DVALUE oz,
     357        D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE uz, D3DVALUE ou, D3DVALUE ov,
     358        D3DVALUE su, D3DVALUE sv, LPDIRECT3DRMWRAP *) PURE;
     359    STDMETHOD(CreateUserVisual)(THIS_ D3DRMUSERVISUALCALLBACK, LPVOID pArg, LPDIRECT3DRMUSERVISUAL *) PURE;
     360    STDMETHOD(LoadTexture)(THIS_ const char *, LPDIRECT3DRMTEXTURE3 *) PURE;
     361    STDMETHOD(LoadTextureFromResource)(THIS_ HMODULE hModule, LPCSTR /* LPCTSTR */ strName, LPCSTR  /* LPCTSTR */ strType, LPDIRECT3DRMTEXTURE3 *) PURE;
     362    STDMETHOD(SetSearchPath)(THIS_ LPCSTR) PURE;
     363    STDMETHOD(AddSearchPath)(THIS_ LPCSTR) PURE;
     364    STDMETHOD(GetSearchPath)(THIS_ DWORD *size_return, LPSTR path_return) PURE;
     365    STDMETHOD(SetDefaultTextureColors)(THIS_ DWORD) PURE;
     366    STDMETHOD(SetDefaultTextureShades)(THIS_ DWORD) PURE;
     367    STDMETHOD(GetDevices)(THIS_ LPDIRECT3DRMDEVICEARRAY *) PURE;
     368    STDMETHOD(GetNamedObject)(THIS_ const char *, LPDIRECT3DRMOBJECT *) PURE;
     369    STDMETHOD(EnumerateObjects)(THIS_ D3DRMOBJECTCALLBACK, LPVOID) PURE;
     370    STDMETHOD(Load)(THIS_ LPVOID, LPVOID, LPIID *, DWORD, D3DRMLOADOPTIONS, D3DRMLOADCALLBACK, LPVOID,
     371        D3DRMLOADTEXTURECALLBACK, LPVOID, LPDIRECT3DRMFRAME3) PURE;
     372    STDMETHOD(Tick)(THIS_ D3DVALUE) PURE;
     373    STDMETHOD(CreateProgressiveMesh)(THIS_ LPDIRECT3DRMPROGRESSIVEMESH) PURE;
     374    STDMETHOD(RegisterClient)(THIS_ REFGUID rguid, LPDWORD lpdwID) PURE;
     375    STDMETHOD(UnregisterClient)(THIS_ REFGUID rguid) PURE;
     376    STDMETHOD(CreateClippedVisual)(THIS_ LPDIRECT3DRMVISUAL, LPDIRECT3DRMCLIPPEDVISUAL *) PURE;
     377    STDMETHOD(SetOptions)(THIS_ DWORD) PURE;
     378    STDMETHOD(GetOptions)(THIS_ LPDWORD) PURE;
     379};
     380#undef INTERFACE
     381
     382#if !defined(__cplusplus) || defined(CINTERFACE)
     383/*** IUnknown methods ***/
     384#define IDirect3DRM3_QueryInterface(p,a,b)                         (p)->lpVtbl->QueryInterface(p,a,b)
     385#define IDirect3DRM3_AddRef(p)                                     (p)->lpVtbl->AddRef(p)
     386#define IDirect3DRM3_Release(p)                                    (p)->lpVtbl->Release(p)
     387/*** IDirect3DRM3 methods ***/
     388#define IDirect3DRM3_CreateObject(p,a,b,c,d)                       (p)->lpVtbl->CreateObject(p,a,b,d)
     389#define IDirect3DRM3_CreateFrame(p,a,b)                            (p)->lpVtbl->CreateFrame(p,a,b)
     390#define IDirect3DRM3_CreateMesh(p,a)                               (p)->lpVtbl->CreateMesh(p,a)
     391#define IDirect3DRM3_CreateMeshBuilder(p,a)                        (p)->lpVtbl->CreateMeshBuilder(p,a)
     392#define IDirect3DRM3_CreateFace(p,a)                               (p)->lpVtbl->CreateFace(p,a)
     393#define IDirect3DRM3_CreateAnimation(p,a)                          (p)->lpVtbl->CreateAnimation(p,a)
     394#define IDirect3DRM3_CreateAnimationSet(p,a)                       (p)->lpVtbl->CreateAnimationSet(p,a)
     395#define IDirect3DRM3_CreateTexture(p,a,b)                          (p)->lpVtbl->CreateTexture(p,a,b)
     396#define IDirect3DRM3_CreateLight(p,a,b,c)                          (p)->lpVtbl->CreateLight(p,a,b,c)
     397#define IDirect3DRM3_CreateLightRGB(p,a,b,c,d,e)                   (p)->lpVtbl->CreateLightRGB(p,a,b,c,d,e)
     398#define IDirect3DRM3_CreateMaterial(p,a,b)                         (p)->lpVtbl->CreateMaterial(p,a,b)
     399#define IDirect3DRM3_CreateDevice(p,a,b,c)                         (p)->lpVtbl->CreateDevice(p,a,b,c)
     400#define IDirect3DRM3_CreateDeviceFromSurface(p,a,b,c,d)            (p)->lpVtbl->CreateDeviceFromSurface(p,a,b,c,d)
     401#define IDirect3DRM3_CreateDeviceFromD3D(p,a,b,c)                  (p)->lpVtbl->CreateDeviceFromD3D(p,a,b,c)
     402#define IDirect3DRM3_CreateDeviceFromClipper(p,a,b,c,d,e)          (p)->lpVtbl->CreateDeviceFromClipper(p,a,b,c,d,e)
     403#define IDirect3DRM3_CreateTextureFromSurface(p,a,b)               (p)->lpVtbl->CreateTextureFromSurface(p,a,b)
     404#define IDirect3DRM3_CreateShadow(p,a,b,c,d,e,f,g,h,i)             (p)->lpVtbl->CreateShadow(p,a,b,c,d,e,f,g,h,i)
     405#define IDirect3DRM3_CreateViewport(p,a,b,c,d,e,f,g)               (p)->lpVtbl->CreateViewport(p,a,b,c,d,e,f,g)
     406#define IDirect3DRM3_CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) (p)->lpVtbl->CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q)
     407#define IDirect3DRM3_CreateUserVisual(p,a,b,c)                     (p)->lpVtbl->CreateUserVisual(p,a,b,c)
     408#define IDirect3DRM3_LoadTexture(p,a,b)                            (p)->lpVtbl->LoadTexture(p,a,b)
     409#define IDirect3DRM3_LoadTextureFromResource(p,a,b,c,d)            (p)->lpVtbl->LoadTextureFromResource(p,a,b,c,d)
     410#define IDirect3DRM3_SetSearchPath(p,a)                            (p)->lpVtbl->SetSearchPath(p,a)
     411#define IDirect3DRM3_AddSearchPath(p,a)                            (p)->lpVtbl->AddSearchPath(p,a)
     412#define IDirect3DRM3_GetSearchPath(p,a,b)                          (p)->lpVtbl->GetSearchPath(p,a,b)
     413#define IDirect3DRM3_SetDefaultTextureColors(p,a)                  (p)->lpVtbl->SetDefaultTextureColors(p,a)
     414#define IDirect3DRM3_SetDefaultTextureShades(p,a)                  (p)->lpVtbl->SetDefaultTextureShades(p,a)
     415#define IDirect3DRM3_GetDevices(p,a)                               (p)->lpVtbl->GetDevices(p,a)
     416#define IDirect3DRM3_GetNamedObject(p,a,b)                         (p)->lpVtbl->GetNamedObject(p,a,b)
     417#define IDirect3DRM3_EnumerateObjects(p,a,b)                       (p)->lpVtbl->EnumerateObjects(p,a,b)
     418#define IDirect3DRM3_Load(p,a,b,c,d,e,f,g,h,i,j)                   (p)->lpVtbl->Load(p,a,b,c,d,e,f,g,h,i,j)
     419#define IDirect3DRM3_Tick(p,a)                                     (p)->lpVtbl->Tick(p,a)
     420#define IDirect3DRM3_CreateProgressiveMesh(p,a)                    (p)->lpVtbl->CreateProgressiveMesh(p,a)
     421#define IDirect3DRM3_RegisterClient(p,a,b)                         (p)->lpVtbl->RegisterClient(p,a,b)
     422#define IDirect3DRM3_UnregisterClient(p,a)                         (p)->lpVtbl->UnregisterClient(p,a)
     423#define IDirect3DRM3_CreateClippedVisual(p,ab)                     (p)->lpVtbl->CreateClippedVisual(p,a,b)
     424#define IDirect3DRM3_SetOptions(p,a)                               (p)->lpVtbl->SetOptions(p,a)
     425#define IDirect3DRM3_GetOptions(p,a)                               (p)->lpVtbl->GetOptions(p,a)
     426#else
     427/*** IUnknown methods ***/
     428#define IDirect3DRM3_QueryInterface(p,a,b)                         (p)->QueryInterface(a,b)
     429#define IDirect3DRM3_AddRef(p)                                     (p)->AddRef()
     430#define IDirect3DRM3_Release(p)                                    (p)->Release()
     431/*** IDirect3DRM3 methods ***/
     432#define IDirect3DRM3_CreateObject(p,a,b,c,d)                       (p)->CreateObject(a,b,d)
     433#define IDirect3DRM3_CreateFrame(p,a,b)                            (p)->CreateFrame(a,b)
     434#define IDirect3DRM3_CreateMesh(p,a)                               (p)->CreateMesh(a)
     435#define IDirect3DRM3_CreateMeshBuilder(p,a)                        (p)->CreateMeshBuilder(a)
     436#define IDirect3DRM3_CreateFace(p,a)                               (p)->CreateFace(a)
     437#define IDirect3DRM3_CreateAnimation(p,a)                          (p)->CreateAnimation(a)
     438#define IDirect3DRM3_CreateAnimationSet(p,a)                       (p)->CreateAnimationSet(a)
     439#define IDirect3DRM3_CreateTexture(p,a,b)                          (p)->CreateTexture(a,b)
     440#define IDirect3DRM3_CreateLight(p,a,b,c)                          (p)->CreateLight(a,b,c)
     441#define IDirect3DRM3_CreateLightRGB(p,a,b,c,d,e)                   (p)->CreateLightRGB(a,b,c,d,e)
     442#define IDirect3DRM3_CreateMaterial(p,a,b)                         (p)->CreateMaterial(a,b)
     443#define IDirect3DRM3_CreateDevice(p,a,b,c)                         (p)->CreateDevice(a,b,c)
     444#define IDirect3DRM3_CreateDeviceFromSurface(p,a,b,c,d)            (p)->CreateDeviceFromSurface(a,b,c,d)
     445#define IDirect3DRM3_CreateDeviceFromD3D(p,a,b,c)                  (p)->CreateDeviceFromD3D(a,b,c)
     446#define IDirect3DRM3_CreateDeviceFromClipper(p,a,b,c,d,e)          (p)->CreateDeviceFromClipper(a,b,c,d,e)
     447#define IDirect3DRM3_CreateTextureFromSurface(p,a,b)               (p)->CreateTextureFromSurface(a,b)
     448#define IDirect3DRM3_CreateShadow(p,a,b,c,d,e,f,g,h,i)             (p)->CreateShadow(a,b,c,d,e,f,g,h,i)
     449#define IDirect3DRM3_CreateViewport(p,a,b,c,d,e,f,g)               (p)->CreateViewport(a,b,c,d,e,f,g)
     450#define IDirect3DRM3_CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) (p)->CreateWrap(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p)
     451#define IDirect3DRM3_CreateUserVisual(p,a,b,c)                     (p)->CreateUserVisual(a,b,c)
     452#define IDirect3DRM3_LoadTexture(p,a,b)                            (p)->LoadTexture(a,b)
     453#define IDirect3DRM3_LoadTextureFromResource(p,a,b,c,d)            (p)->LoadTextureFromResource(a,b,c,d)
     454#define IDirect3DRM3_SetSearchPath(p,a)                            (p)->SetSearchPath(a)
     455#define IDirect3DRM3_AddSearchPath(p,a)                            (p)->AddSearchPath(a)
     456#define IDirect3DRM3_GetSearchPath(p,a,b)                          (p)->GetSearchPath(a,b)
     457#define IDirect3DRM3_SetDefaultTextureColors(p,a)                  (p)->SetDefaultTextureColors(a)
     458#define IDirect3DRM3_SetDefaultTextureShades(p,a)                  (p)->SetDefaultTextureShades(a)
     459#define IDirect3DRM3_GetDevices(p,a)                               (p)->GetDevices(a)
     460#define IDirect3DRM3_GetNamedObject(p,a,b)                         (p)->GetNamedObject(a,b)
     461#define IDirect3DRM3_EnumerateObjects(p,a,b)                       (p)->EnumerateObjects(a,b)
     462#define IDirect3DRM3_Load(p,a,b,c,d,e,f,g,h,i,j)                   (p)->Load(a,b,c,d,e,f,g,h,i,j)
     463#define IDirect3DRM3_Tick(p,a)                                     (p)->Tick(a)
     464#define IDirect3DRM3_CreateProgressiveMesh(p,a)                    (p)->CreateProgressiveMesh(p,a)
     465#define IDirect3DRM3_RegisterClient(p,a,b)                         (p)->RegisterClient(p,a,b)
     466#define IDirect3DRM3_UnregisterClient(p,a)                         (p)->UnregisterClient(p,a)
     467#define IDirect3DRM3_CreateClippedVisual(p,ab)                     (p)->CreateClippedVisual(p,a,b)
     468#define IDirect3DRM3_SetOptions(p,a)                               (p)->SetOptions(p,a)
     469#define IDirect3DRM3_GetOptions(p,a)                               (p)->GetOptions(p,a)
     470#endif
     471
    181472#define D3DRM_OK                        DD_OK
    182473#define D3DRMERR_BADOBJECT              MAKE_DDHRESULT(781)
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/d3drmdef.h

    r25949 r28475  
    22 * Copyright 2007 Vijay Kiran Kamuju
    33 * Copyright 2007 David ADAM
     4 * Copyright 2010 Christian Costa
    45 *
    56 * This library is free software; you can redistribute it and/or
     
    3738#endif
    3839
     40typedef struct _D3DRMVECTOR4D
     41{
     42    D3DVALUE x;
     43    D3DVALUE y;
     44    D3DVALUE z;
     45    D3DVALUE w;
     46} D3DRMVECTOR4D, *LPD3DRMVECTOR4D;
     47
    3948typedef D3DVALUE D3DRMMATRIX4D[4][4];
    4049
     
    4352    D3DVECTOR v;
    4453} D3DRMQUATERNION, *LPD3DRMQUATERNION;
     54
     55typedef struct _D3DRMRAY {
     56    D3DVECTOR dvDir;
     57    D3DVECTOR dvPos;
     58} D3DRMRAY, *LPD3DRMRAY;
     59
     60typedef struct _D3DRMBOX {
     61    D3DVECTOR min;
     62    D3DVECTOR max;
     63} D3DRMBOX, *LPD3DRMBOX;
    4564
    4665typedef enum _D3DRMLIGHTTYPE {
     
    5170    D3DRMLIGHT_PARALLELPOINT
    5271} D3DRMLIGHTTYPE, *LPD3DRMLIGHTTYPE;
     72
     73typedef DWORD D3DRMRENDERQUALITY, *LPD3DRMRENDERQUALITY;
     74
     75typedef enum _D3DRMTEXTUREQUALITY {
     76    D3DRMTEXTURE_NEAREST,
     77    D3DRMTEXTURE_LINEAR,
     78    D3DRMTEXTURE_MIPNEAREST,
     79    D3DRMTEXTURE_MIPLINEAR,
     80    D3DRMTEXTURE_LINEARMIPNEAREST,
     81    D3DRMTEXTURE_LINEARMIPLINEAR
     82} D3DRMTEXTUREQUALITY, *LPD3DRMTEXTUREQUALITY;
     83
     84typedef enum _D3DRMCOMBINETYPE {
     85    D3DRMCOMBINE_REPLACE,
     86    D3DRMCOMBINE_BEFORE,
     87    D3DRMCOMBINE_AFTER
     88} D3DRMCOMBINETYPE, *LPD3DRMCOMBINETYPE;
    5389
    5490typedef struct _D3DRMPALETTEENTRY {
     
    86122} D3DRMWRAPTYPE, *LPD3DRMWRAPTYPE;
    87123
     124typedef enum _D3DRMPROJECTIONTYPE
     125{
     126    D3DRMPROJECT_PERSPECTIVE,
     127    D3DRMPROJECT_ORTHOGRAPHIC,
     128    D3DRMPROJECT_RIGHTHANDPERSPECTIVE,
     129    D3DRMPROJECT_RIGHTHANDORTHOGRAPHIC
     130} D3DRMPROJECTIONTYPE, *LPD3DRMPROJECTIONTYPE;
     131
     132typedef enum _D3DRMXOFFORMAT {
     133    D3DRMXOF_BINARY,
     134    D3DRMXOF_COMPRESSED,
     135    D3DRMXOF_TEXT
     136} D3DRMXOFFORMAT, *LPD3DRMXOFFORMAT;
     137
     138typedef DWORD D3DRMSAVEOPTIONS;
     139
     140typedef enum _D3DRMCOLORSOURCE {
     141    D3DRMCOLOR_FROMFACE,
     142    D3DRMCOLOR_FROMVERTEX
     143} D3DRMCOLORSOURCE, *LPD3DRMCOLORSOURCE;
     144
     145typedef enum _D3DRMFRAMECONSTRAINT {
     146    D3DRMCONSTRAIN_Z,
     147    D3DRMCONSTRAIN_Y,
     148    D3DRMCONSTRAIN_X
     149} D3DRMFRAMECONSTRAINT, *LPD3DRMFRAMECONSTRAINT;
     150
     151typedef enum _D3DRMMATERIALMODE {
     152    D3DRMMATERIAL_FROMMESH,
     153    D3DRMMATERIAL_FROMPARENT,
     154    D3DRMMATERIAL_FROMFRAME
     155} D3DRMMATERIALMODE, *LPD3DRMMATERIALMODE;
     156
     157typedef enum _D3DRMFOGMODE {
     158    D3DRMFOG_LINEAR,
     159    D3DRMFOG_EXPONENTIAL,
     160    D3DRMFOG_EXPONENTIALSQUARED
     161} D3DRMFOGMODE, *LPD3DRMFOGMODE;
     162
     163typedef enum _D3DRMZBUFFERMODE {
     164    D3DRMZBUFFER_FROMPARENT,
     165    D3DRMZBUFFER_ENABLE,
     166    D3DRMZBUFFER_DISABLE
     167} D3DRMZBUFFERMODE, *LPD3DRMZBUFFERMODE;
     168
     169typedef enum _D3DRMSORTMODE {
     170    D3DRMSORT_FROMPARENT,
     171    D3DRMSORT_NONE,
     172    D3DRMSORT_FRONTTOBACK,
     173    D3DRMSORT_BACKTOFRONT
     174} D3DRMSORTMODE, *LPD3DRMSORTMODE;
     175
     176typedef struct _D3DRMMATERIALOVERRIDE {
     177    DWORD         dwSize;
     178    DWORD         dwFlags;
     179    D3DCOLORVALUE dcDiffuse;
     180    D3DCOLORVALUE dcAmbient;
     181    D3DCOLORVALUE dcEmissive;
     182    D3DCOLORVALUE dcSpecular;
     183    D3DVALUE      dvPower;
     184    LPUNKNOWN     lpD3DRMTex;
     185} D3DRMMATERIALOVERRIDE, *LPD3DRMMATERIALOVERRIDE;
     186
    88187typedef DWORD D3DRMLOADOPTIONS;
     188
     189#define D3DRMLOAD_FROMFILE             0x000L
     190#define D3DRMLOAD_FROMRESOURCE         0x001L
     191#define D3DRMLOAD_FROMMEMORY           0x002L
     192#define D3DRMLOAD_FROMSTREAM           0x004L
     193#define D3DRMLOAD_FROMURL              0x008L
     194
     195#define D3DRMLOAD_BYNAME               0x010L
     196#define D3DRMLOAD_BYPOSITION           0x020L
     197#define D3DRMLOAD_BYGUID               0x040L
     198#define D3DRMLOAD_FIRST                0x080L
     199
     200#define D3DRMLOAD_INSTANCEBYREFERENCE  0x100L
     201#define D3DRMLOAD_INSTANCEBYCOPYING    0x200L
     202
     203#define D3DRMLOAD_ASYNCHRONOUS         0x400L
     204
     205typedef struct _D3DRMLOADRESOURCE {
     206    HMODULE hModule;
     207    LPCSTR /*LPCTSTR*/ lpName;
     208    LPCSTR /*LPCTSTR*/ lpType;
     209} D3DRMLOADRESOURCE, *LPD3DRMLOADRESOURCE;
     210
     211typedef struct _D3DRMLOADMEMORY {
     212    LPVOID lpMemory;
     213    DWORD dSize;
     214} D3DRMLOADMEMORY, *LPD3DRMLOADMEMORY;
     215
     216typedef struct _D3DRMPMESHLOADSTATUS {
     217    DWORD dwSize;
     218    DWORD dwPMeshSize;
     219    DWORD dwBaseMeshSize;
     220    DWORD dwBytesLoaded;
     221    DWORD dwVerticesLoaded;
     222    DWORD dwFacesLoaded;
     223    HRESULT dwLoadResult;
     224    DWORD dwFlags;
     225} D3DRMPMESHLOADSTATUS, *LPD3DRMPMESHLOADSTATUS;
    89226
    90227typedef enum _D3DRMUSERVISUALREASON {
     
    92229    D3DRMUSERVISUAL_RENDER
    93230} D3DRMUSERVISUALREASON, *LPD3DRMUSERVISUALREASON;
     231
     232typedef DWORD D3DRMMAPPING;
     233
     234typedef struct _D3DRMVERTEX {
     235    D3DVECTOR position;
     236    D3DVECTOR normal;
     237    D3DVALUE  tu;
     238    D3DVALUE  tv;
     239    D3DCOLOR  color;
     240} D3DRMVERTEX, *LPD3DRMVERTEX;
     241
     242typedef LONG D3DRMGROUPINDEX;
    94243
    95244void WINAPI D3DRMMatrixFromQuaternion(D3DRMMATRIX4D, LPD3DRMQUATERNION);
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/d3drmobj.h

    r25949 r28475  
    11/*
    22 * Copyright (C) 2008 Vijay Kiran Kamuju
     3 * Copyright (C) 2010 Christian Costa
    34 *
    45 * This library is free software; you can redistribute it and/or
     
    4344
    4445DEFINE_GUID(IID_IDirect3DRMObject,          0xeb16cb00, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     46DEFINE_GUID(IID_IDirect3DRMObject2,         0x4516ec7c, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
     47DEFINE_GUID(IID_IDirect3DRMDevice,          0xe9e19280, 0x6e05, 0x11cf, 0xac, 0x4a, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     48DEFINE_GUID(IID_IDirect3DRMDevice2,         0x4516ec78, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
     49DEFINE_GUID(IID_IDirect3DRMDevice3,         0x549f498b, 0xbfeb, 0x11d1, 0x8e, 0xd8, 0x00, 0xa0, 0xc9, 0x67, 0xa4, 0x82);
     50DEFINE_GUID(IID_IDirect3DRMViewport,        0xeb16cb02, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     51DEFINE_GUID(IID_IDirect3DRMViewport2,       0x4a1b1be6, 0xbfed, 0x11d1, 0x8e, 0xd8, 0x00, 0xa0, 0xc9, 0x67, 0xa4, 0x82);
     52DEFINE_GUID(IID_IDirect3DRMFrame,           0xeb16cb03, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     53DEFINE_GUID(IID_IDirect3DRMFrame2,          0xc3dfbd60, 0x3988, 0x11d0, 0x9e, 0xc2, 0x00, 0x00, 0xc0, 0x29, 0x1a, 0xc3);
     54DEFINE_GUID(IID_IDirect3DRMFrame3,          0xff6b7f70, 0xa40e, 0x11d1, 0x91, 0xf9, 0x00, 0x00, 0xf8, 0x75, 0x8e, 0x66);
    4555DEFINE_GUID(IID_IDirect3DRMVisual,          0xeb16cb04, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     56DEFINE_GUID(IID_IDirect3DRMMesh,            0xa3a80d01, 0x6e12, 0x11cf, 0xac, 0x4a, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     57DEFINE_GUID(IID_IDirect3DRMMeshBuilder,     0xa3a80d02, 0x6e12, 0x11cf, 0xac, 0x4a, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     58DEFINE_GUID(IID_IDirect3DRMMeshBuilder2,    0x4516ec77, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
     59DEFINE_GUID(IID_IDirect3DRMMeshBuilder3,    0x4516ec82, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
     60DEFINE_GUID(IID_IDirect3DRMFace,            0xeb16cb07, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     61DEFINE_GUID(IID_IDirect3DRMFace2,           0x4516ec81, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
     62DEFINE_GUID(IID_IDirect3DRMLight,           0xeb16cb08, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     63DEFINE_GUID(IID_IDirect3DRMTexture,         0xeb16cb09, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     64DEFINE_GUID(IID_IDirect3DRMTexture2,        0x120f30c0, 0x1629, 0x11d0, 0x94, 0x1c, 0x00, 0x80, 0xc8, 0x0c, 0xfa, 0x7b);
     65DEFINE_GUID(IID_IDirect3DRMTexture3,        0xff6b7f73, 0xa40e, 0x11d1, 0x91, 0xf9, 0x00, 0x00, 0xf8, 0x75, 0x8e, 0x66);
     66DEFINE_GUID(IID_IDirect3DRMWrap,            0xeb16cb0a, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     67DEFINE_GUID(IID_IDirect3DRMMaterial,        0xeb16cb0b, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     68DEFINE_GUID(IID_IDirect3DRMMaterial2,       0xff6b7f75, 0xa40e, 0x11d1, 0x91, 0xf9, 0x00, 0x00, 0xf8, 0x75, 0x8e, 0x66);
     69DEFINE_GUID(IID_IDirect3DRMAnimation,       0xeb16cb0d, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     70DEFINE_GUID(IID_IDirect3DRMAnimation2,      0xff6b7f77, 0xa40e, 0x11d1, 0x91, 0xf9, 0x00, 0x00, 0xf8, 0x75, 0x8e, 0x66);
     71DEFINE_GUID(IID_IDirect3DRMAnimationSet,    0xeb16cb0e, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     72DEFINE_GUID(IID_IDirect3DRMAnimationSet2,   0xff6b7f79, 0xa40e, 0x11d1, 0x91, 0xf9, 0x00, 0x00, 0xf8, 0x75, 0x8e, 0x66);
     73DEFINE_GUID(IID_IDirect3DRMObjectArray,     0x242f6bc2, 0x3849, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
     74DEFINE_GUID(IID_IDirect3DRMDeviceArray,     0xeb16cb10, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     75DEFINE_GUID(IID_IDirect3DRMViewportArray,   0xeb16cb11, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     76DEFINE_GUID(IID_IDirect3DRMFrameArray,      0xeb16cb12, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     77DEFINE_GUID(IID_IDirect3DRMVisualArray,     0xeb16cb13, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     78DEFINE_GUID(IID_IDirect3DRMLightArray,      0xeb16cb14, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     79DEFINE_GUID(IID_IDirect3DRMPickedArray,     0xeb16cb16, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     80DEFINE_GUID(IID_IDirect3DRMFaceArray,       0xeb16cb17, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     81DEFINE_GUID(IID_IDirect3DRMAnimationArray,  0xd5f1cae0, 0x4bd7, 0x11d1, 0xb9, 0x74, 0x00, 0x60, 0x08, 0x3e, 0x45, 0xf3);
     82DEFINE_GUID(IID_IDirect3DRMUserVisual,      0x59163de0, 0x6d43, 0x11cf, 0xac, 0x4a, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     83DEFINE_GUID(IID_IDirect3DRMShadow,          0xaf359780, 0x6ba3, 0x11cf, 0xac, 0x4a, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1);
     84DEFINE_GUID(IID_IDirect3DRMShadow2,         0x86b44e25, 0x9c82, 0x11d1, 0xbb, 0x0b, 0x00, 0xa0, 0xc9, 0x81, 0xa0, 0xa6);
     85DEFINE_GUID(IID_IDirect3DRMInterpolator,    0x242f6bc1, 0x3849, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
     86DEFINE_GUID(IID_IDirect3DRMProgressiveMesh, 0x4516ec79, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
     87DEFINE_GUID(IID_IDirect3DRMPicked2Array,    0x4516ec7b, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3);
     88DEFINE_GUID(IID_IDirect3DRMClippedVisual,   0x5434e733, 0x6d66, 0x11d1, 0xbb, 0x0b, 0x00, 0x00, 0xf8, 0x75, 0x86, 0x5a);
    4689
    4790typedef struct IDirect3DRMObject          *LPDIRECT3DRMOBJECT, **LPLPDIRECT3DRMOBJECT;
     91typedef struct IDirect3DRMObject2         *LPDIRECT3DRMOBJECT2, **LPLPDIRECT3DRMOBJECT2;
    4892typedef struct IDirect3DRMDevice          *LPDIRECT3DRMDEVICE, **LPLPDIRECT3DRMDEVICE;
     93typedef struct IDirect3DRMDevice2         *LPDIRECT3DRMDEVICE2, **LPLPDIRECT3DRMDEVICE2;
     94typedef struct IDirect3DRMDevice3         *LPDIRECT3DRMDEVICE3, **LPLPDIRECT3DRMDEVICE3;
    4995typedef struct IDirect3DRMViewport        *LPDIRECT3DRMVIEWPORT, **LPLPDIRECT3DRMVIEWPORT;
     96typedef struct IDirect3DRMViewport2       *LPDIRECT3DRMVIEWPORT2, **LPLPDIRECT3DRMVIEWPORT2;
    5097typedef struct IDirect3DRMFrame           *LPDIRECT3DRMFRAME, **LPLPDIRECT3DRMFRAME;
     98typedef struct IDirect3DRMFrame2          *LPDIRECT3DRMFRAME2, **LPLPDIRECT3DRMFRAME2;
     99typedef struct IDirect3DRMFrame3          *LPDIRECT3DRMFRAME3, **LPLPDIRECT3DRMFRAME3;
    51100typedef struct IDirect3DRMVisual          *LPDIRECT3DRMVISUAL, **LPLPDIRECT3DRMVISUAL;
    52101typedef struct IDirect3DRMMesh            *LPDIRECT3DRMMESH, **LPLPDIRECT3DRMMESH;
    53102typedef struct IDirect3DRMMeshBuilder     *LPDIRECT3DRMMESHBUILDER, **LPLPDIRECT3DRMMESHBUILDER;
     103typedef struct IDirect3DRMMeshBuilder2    *LPDIRECT3DRMMESHBUILDER2, **LPLPDIRECT3DRMMESHBUILDER2;
     104typedef struct IDirect3DRMMeshBuilder3    *LPDIRECT3DRMMESHBUILDER3, **LPLPDIRECT3DRMMESHBUILDER3;
    54105typedef struct IDirect3DRMFace            *LPDIRECT3DRMFACE, **LPLPDIRECT3DRMFACE;
     106typedef struct IDirect3DRMFace2           *LPDIRECT3DRMFACE2, **LPLPDIRECT3DRMFACE2;
    55107typedef struct IDirect3DRMLight           *LPDIRECT3DRMLIGHT, **LPLPDIRECT3DRMLIGHT;
    56108typedef struct IDirect3DRMTexture         *LPDIRECT3DRMTEXTURE, **LPLPDIRECT3DRMTEXTURE;
     109typedef struct IDirect3DRMTexture2        *LPDIRECT3DRMTEXTURE2, **LPLPDIRECT3DRMTEXTURE2;
     110typedef struct IDirect3DRMTexture3        *LPDIRECT3DRMTEXTURE3, **LPLPDIRECT3DRMTEXTURE3;
    57111typedef struct IDirect3DRMWrap            *LPDIRECT3DRMWRAP, **LPLPDIRECT3DRMWRAP;
    58112typedef struct IDirect3DRMMaterial        *LPDIRECT3DRMMATERIAL, **LPLPDIRECT3DRMMATERIAL;
     113typedef struct IDirect3DRMMaterial2       *LPDIRECT3DRMMATERIAL2, **LPLPDIRECT3DRMMATERIAL2;
    59114typedef struct IDirect3DRMAnimation       *LPDIRECT3DRMANIMATION, **LPLPDIRECT3DRMANIMATION;
     115typedef struct IDirect3DRMAnimation2      *LPDIRECT3DRMANIMATION2, **LPLPDIRECT3DRMANIMATION2;
    60116typedef struct IDirect3DRMAnimationSet    *LPDIRECT3DRMANIMATIONSET, **LPLPDIRECT3DRMANIMATIONSET;
     117typedef struct IDirect3DRMAnimationSet2   *LPDIRECT3DRMANIMATIONSET2, **LPLPDIRECT3DRMANIMATIONSET2;
    61118typedef struct IDirect3DRMUserVisual      *LPDIRECT3DRMUSERVISUAL, **LPLPDIRECT3DRMUSERVISUAL;
     119typedef struct IDirect3DRMShadow          *LPDIRECT3DRMSHADOW, **LPLPDIRECT3DRMSHADOW;
     120typedef struct IDirect3DRMShadow2         *LPDIRECT3DRMSHADOW2, **LPLPDIRECT3DRMSHADOW2;
     121typedef struct IDirect3DRMArray           *LPDIRECT3DRMARRAY, **LPLPDIRECT3DRMARRAY;
     122typedef struct IDirect3DRMObjectArray     *LPDIRECT3DRMOBJECTARRAY, **LPLPDIRECT3DRMOBJECTARRAY;
    62123typedef struct IDirect3DRMDeviceArray     *LPDIRECT3DRMDEVICEARRAY, **LPLPDIRECT3DRMDEVICEARRAY;
     124typedef struct IDirect3DRMFaceArray       *LPDIRECT3DRMFACEARRAY, **LPLPDIRECT3DRMFACEARRAY;
     125typedef struct IDirect3DRMViewportArray   *LPDIRECT3DRMVIEWPORTARRAY, **LPLPDIRECT3DRMVIEWPORTARRAY;
     126typedef struct IDirect3DRMFrameArray      *LPDIRECT3DRMFRAMEARRAY, **LPLPDIRECT3DRMFRAMEARRAY;
     127typedef struct IDirect3DRMAnimationArray  *LPDIRECT3DRMANIMATIONARRAY, **LPLPDIRECT3DRMANIMATIONARRAY;
     128typedef struct IDirect3DRMVisualArray     *LPDIRECT3DRMVISUALARRAY, **LPLPDIRECT3DRMVISUALARRAY;
     129typedef struct IDirect3DRMPickedArray     *LPDIRECT3DRMPICKEDARRAY, **LPLPDIRECT3DRMPICKEDARRAY;
     130typedef struct IDirect3DRMPicked2Array    *LPDIRECT3DRMPICKED2ARRAY, **LPLPDIRECT3DRMPICKED2ARRAY;
     131typedef struct IDirect3DRMLightArray      *LPDIRECT3DRMLIGHTARRAY, **LPLPDIRECT3DRMLIGHTARRAY;
     132typedef struct IDirect3DRMProgressiveMesh *LPDIRECT3DRMPROGRESSIVEMESH, **LPLPDIRECT3DRMPROGRESSIVEMESH;
     133typedef struct IDirect3DRMClippedVisual   *LPDIRECT3DRMCLIPPEDVISUAL, **LPLPDIRECT3DRMCLIPPEDVISUAL;
    63134
    64135/* ********************************************************************
     
    67138
    68139typedef void (__cdecl *D3DRMOBJECTCALLBACK)(LPDIRECT3DRMOBJECT obj, LPVOID arg);
     140typedef void (__cdecl *D3DRMFRAMEMOVECALLBACK)(LPDIRECT3DRMFRAME obj, LPVOID arg, D3DVALUE delta);
     141typedef void (__cdecl *D3DRMFRAME3MOVECALLBACK)(LPDIRECT3DRMFRAME3 obj, LPVOID arg, D3DVALUE delta);
     142typedef void (__cdecl *D3DRMUPDATECALLBACK)(LPDIRECT3DRMDEVICE obj, LPVOID arg, int, LPD3DRECT);
    69143typedef int (__cdecl *D3DRMUSERVISUALCALLBACK)(LPDIRECT3DRMUSERVISUAL obj, LPVOID arg,
    70144    D3DRMUSERVISUALREASON reason, LPDIRECT3DRMDEVICE dev, LPDIRECT3DRMVIEWPORT view);
    71145typedef HRESULT (__cdecl *D3DRMLOADTEXTURECALLBACK)(char *tex_name, void *arg, LPDIRECT3DRMTEXTURE *);
     146typedef HRESULT (__cdecl *D3DRMLOADTEXTURE3CALLBACK)(char *tex_name, void *arg, LPDIRECT3DRMTEXTURE3 *);
    72147typedef void (__cdecl *D3DRMLOADCALLBACK)(LPDIRECT3DRMOBJECT object, REFIID objectguid, LPVOID arg);
    73148
     
    146221
    147222/*****************************************************************************
     223 * IDirect3DRMObject2 interface
     224 */
     225#ifdef WINE_NO_UNICODE_MACROS
     226#undef GetClassName
     227#endif
     228#define INTERFACE IDirect3DRMObject2
     229DECLARE_INTERFACE_(IDirect3DRMObject2,IUnknown)
     230{
     231    /*** IUnknown methods ***/
     232    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     233    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     234    STDMETHOD_(ULONG,Release)(THIS) PURE;
     235    /*** IDirect3DRMObject2 methods ***/
     236    STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK pFunc, LPVOID pArg) PURE;
     237    STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     238    STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK pFunc, LPVOID pArg) PURE;
     239    STDMETHOD(GetClientData)(THIS_ DWORD id, LPVOID* ppData) PURE;
     240    STDMETHOD(GetDirect3DRM)(THIS_ LPDIRECT3DRM* ppDirect3DRM) PURE;
     241    STDMETHOD(GetName)(THIS_ LPDWORD pSize, LPSTR pName) PURE;
     242    STDMETHOD(SetClientData)(THIS_ DWORD id, LPVOID pData, DWORD flags) PURE;
     243    STDMETHOD(SetName)(THIS_ LPCSTR pName) PURE;
     244    STDMETHOD(GetAge)(THIS_ DWORD flags, LPDWORD pAge) PURE;
     245};
     246#undef INTERFACE
     247
     248#if !defined(__cplusplus) || defined(CINTERFACE)
     249/*** IUnknown methods ***/
     250#define IDirect3DRMObject2_QueryInterface(p,a,b)        (p)->lpVtbl->QueryInterface(p,a,b)
     251#define IDirect3DRMObject2_AddRef(p)                    (p)->lpVtbl->AddRef(p)
     252#define IDirect3DRMObject2_Release(p)                   (p)->lpVtbl->Release(p)
     253/*** IDirect3DRMObject2 methods ***/
     254#define IDirect3DRMObject2_AddDestroyCallback(p,a,b)    (p)->lpVtbl->AddDestroyCallback(p,a,b)
     255#define IDirect3DRMObject2_Clone(p,a,b,c)               (p)->lpVtbl->Clone(p,a,b,c)
     256#define IDirect3DRMObject2_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
     257#define IDirect3DRMObject2_GetClientData(p,a,b)         (p)->lpVtbl->SetClientData(p,a,b)
     258#define IDirect3DRMObject2_GetDirect3DRM(p,a)           (p)->lpVtbl->GetDirect3DRM(p,a)
     259#define IDirect3DRMObject2_GetName(p,a,b)               (p)->lpVtbl->GetName(p,a,b)
     260#define IDirect3DRMObject2_SetClientData(p,a,b,c)       (p)->lpVtbl->SetClientData(p,a,b,c)
     261#define IDirect3DRMObject2_SetName(p,a)                 (p)->lpVtbl->SetName(p,a)
     262#define IDirect3DRMObject2_GetAge(p,a,b)                (p)->lpVtbl->GetAge(p,a,b)
     263#else
     264/*** IUnknown methods ***/
     265#define IDirect3DRMObject2_QueryInterface(p,a,b)        (p)->QueryInterface(a,b)
     266#define IDirect3DRMObject2_AddRef(p)                    (p)->AddRef()
     267#define IDirect3DRMObject2_Release(p)                   (p)->Release()
     268/*** IDirect3DRMObject2 methods ***/
     269#define IDirect3DRMObject2_AddDestroyCallback(p,a,b)    (p)->AddDestroyCallback(a,b)
     270#define IDirect3DRMObject2_Clone(p,a,b,c)               (p)->Clone(a,b,c)
     271#define IDirect3DRMObject2_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b)
     272#define IDirect3DRMObject2_GetClientData(p,a,b)         (p)->SetClientData(a,b)
     273#define IDirect3DRMObject2_GetDirect3DRM(p,a)           (p)->GetDirect3DRM(a)
     274#define IDirect3DRMObject2_GetName(p,a,b)               (p)->GetName(a,b)
     275#define IDirect3DRMObject2_SetClientData(p,a,b,c)       (p)->SetClientData(a,b,c)
     276#define IDirect3DRMObject2_SetName(p,a)                 (p)->SetName(a)
     277#define IDirect3DRMObject2_GetAge(p,a,b)                (p)->GetAge(a,b)
     278#endif
     279
     280/*****************************************************************************
    148281 * IDirect3DRMVisual interface
    149282 */
     
    197330#endif
    198331
     332/*****************************************************************************
     333 * IDirect3DRMDevice interface
     334 */
     335#ifdef WINE_NO_UNICODE_MACROS
     336#undef GetClassName
     337#endif
     338#define INTERFACE IDirect3DRMDevice
     339DECLARE_INTERFACE_(IDirect3DRMDevice,IUnknown)
     340{
     341    /*** IUnknown methods ***/
     342    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     343    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     344    STDMETHOD_(ULONG,Release)(THIS) PURE;
     345    /*** IDirect3DRMObject methods ***/
     346    STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     347    STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK pFunc, LPVOID pArg) PURE;
     348    STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK pFunc, LPVOID pArg) PURE;
     349    STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
     350    STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
     351    STDMETHOD(SetName)(THIS_ LPCSTR) PURE;
     352    STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     353    STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     354    /*** IDirect3DRMDevice methods ***/
     355    STDMETHOD(Init)(THIS_ ULONG width, ULONG height) PURE;
     356    STDMETHOD(InitFromD3D)(THIS_ LPDIRECT3D pD3D, LPDIRECT3DDEVICE pD3DDev) PURE;
     357    STDMETHOD(InitFromClipper)(THIS_ LPDIRECTDRAWCLIPPER pDDClipper, LPGUID pGUID, int width, int height) PURE;
     358    STDMETHOD(Update)(THIS) PURE;
     359    STDMETHOD(AddUpdateCallback)(THIS_ D3DRMUPDATECALLBACK, LPVOID arg) PURE;
     360    STDMETHOD(DeleteUpdateCallback)(THIS_ D3DRMUPDATECALLBACK, LPVOID arg) PURE;
     361    STDMETHOD(SetBufferCount)(THIS_ DWORD) PURE;
     362    STDMETHOD_(DWORD, GetBufferCount)(THIS) PURE;
     363    STDMETHOD(SetDither)(THIS_ BOOL) PURE;
     364    STDMETHOD(SetShades)(THIS_ DWORD) PURE;
     365    STDMETHOD(SetQuality)(THIS_ D3DRMRENDERQUALITY) PURE;
     366    STDMETHOD(SetTextureQuality)(THIS_ D3DRMTEXTUREQUALITY) PURE;
     367    STDMETHOD(GetViewports)(THIS_ LPDIRECT3DRMVIEWPORTARRAY *return_views) PURE;
     368    STDMETHOD_(BOOL, GetDither)(THIS) PURE;
     369    STDMETHOD_(DWORD, GetShades)(THIS) PURE;
     370    STDMETHOD_(DWORD, GetHeight)(THIS) PURE;
     371    STDMETHOD_(DWORD, GetWidth)(THIS) PURE;
     372    STDMETHOD_(DWORD, GetTrianglesDrawn)(THIS) PURE;
     373    STDMETHOD_(DWORD, GetWireframeOptions)(THIS) PURE;
     374    STDMETHOD_(D3DRMRENDERQUALITY, GetQuality)(THIS) PURE;
     375    STDMETHOD_(D3DCOLORMODEL, GetColorModel)(THIS) PURE;
     376    STDMETHOD_(D3DRMTEXTUREQUALITY, GetTextureQuality)(THIS) PURE;
     377    STDMETHOD(GetDirect3DDevice)(THIS_ LPDIRECT3DDEVICE *) PURE;
     378};
     379#undef INTERFACE
     380
     381#if !defined(__cplusplus) || defined(CINTERFACE)
     382/*** IUnknown methods ***/
     383#define IDirect3DRMDevice_QueryInterface(p,a,b)        (p)->lpVtbl->QueryInterface(p,a,b)
     384#define IDirect3DRMDevice_AddRef(p)                    (p)->lpVtbl->AddRef(p)
     385#define IDirect3DRMDevice_Release(p)                   (p)->lpVtbl->Release(p)
     386/*** IDirect3DRMObject methods ***/
     387#define IDirect3DRMDevice_Clone(p,a,b,c)               (p)->lpVtbl->Clone(p,a,b,c)
     388#define IDirect3DRMDevice_AddDestroyCallback(p,a,b)    (p)->lpVtbl->AddDestroyCallback(p,a,b)
     389#define IDirect3DRMDevice_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
     390#define IDirect3DRMDevice_SetAppData(p,a)              (p)->lpVtbl->SetAppData(p,a)
     391#define IDirect3DRMDevice_GetAppData(p)                (p)->lpVtbl->GetAppData(p)
     392#define IDirect3DRMDevice_SetName(p,a)                 (p)->lpVtbl->SetName(p,a)
     393#define IDirect3DRMDevice_GetName(p,a,b)               (p)->lpVtbl->GetName(p,a,b)
     394#define IDirect3DRMDevice_GetClassName(p,a,b)          (p)->lpVtbl->GetClassName(p,a,b)
     395/*** IDirect3DRMDevice methods ***/
     396#define IDirect3DRMDevice_Init(p,a,b)                  (p)->lpVtbl->Init(p,a,b)
     397#define IDirect3DRMDevice_InitFromD3D(p,a,b)           (p)->lpVtbl->InitFromD3D(p,a,b)
     398#define IDirect3DRMDevice_InitFromClipper(p,a,b,c,d)   (p)->lpVtbl->InitFromClipper(p,a,b,c,d)
     399#define IDirect3DRMDevice_Update(p)                    (p)->lpVtbl->Update(p)
     400#define IDirect3DRMDevice_AddUpdateCallback(p,a,b)     (p)->lpVtbl->AddUpdateCallback(p,a,b)
     401#define IDirect3DRMDevice_DeleteUpdateCallback(p,a,b)  (p)->lpVtbl->DeleteUpdateCallback(p,a,b,c)
     402#define IDirect3DRMDevice_SetBufferCount(p,a)          (p)->lpVtbl->SetBufferCount(p,a)
     403#define IDirect3DRMDevice_GetBufferCount(p)            (p)->lpVtbl->GetBufferCount(p)
     404#define IDirect3DRMDevice_SetDither(p,a)               (p)->lpVtbl->SetDither(p,a)
     405#define IDirect3DRMDevice_SetShades(p,a)               (p)->lpVtbl->SetShades(p,a)
     406#define IDirect3DRMDevice_SetQuality(p,a)              (p)->lpVtbl->SetQuality(p,a)
     407#define IDirect3DRMDevice_SetTextureQuality(p,a)       (p)->lpVtbl->SetTextureQuality(p,a)
     408#define IDirect3DRMDevice_GetViewports(p,a)            (p)->lpVtbl->GetViewports(p,a)
     409#define IDirect3DRMDevice_GetDither(p)                 (p)->lpVtbl->GetDither(p)
     410#define IDirect3DRMDevice_GetShades(p)                 (p)->lpVtbl->GetShades(p)
     411#define IDirect3DRMDevice_GetHeight(p)                 (p)->lpVtbl->GetHeight(p)
     412#define IDirect3DRMDevice_GetWidth(p)                  (p)->lpVtbl->GetWidth(p)
     413#define IDirect3DRMDevice_GetTrianglesDrawn(p)         (p)->lpVtbl->GetTrianglesDrawn(p)
     414#define IDirect3DRMDevice_GetWireframeOptions(p)       (p)->lpVtbl->GetWireframeOptions(p)
     415#define IDirect3DRMDevice_GetQuality(p)                (p)->lpVtbl->GetQuality(p)
     416#define IDirect3DRMDevice_GetColorModel(p)             (p)->lpVtbl->GetColorModel(p)
     417#define IDirect3DRMDevice_GetTextureQuality(p)         (p)->lpVtbl->GetTextureQuality(p)
     418#define IDirect3DRMDevice_GetDirect3DDevice(p,a)       (p)->lpVtbl->GetDirect3DDevice(p,a)
     419#else
     420/*** IUnknown methods ***/
     421#define IDirect3DRMDevice_QueryInterface(p,a,b)        (p)->QueryInterface(a,b)
     422#define IDirect3DRMDevice_AddRef(p)                    (p)->AddRef()
     423#define IDirect3DRMDevice_Release(p)                   (p)->Release()
     424/*** IDirect3DRMObject methods ***/
     425#define IDirect3DRMDevice_Clone(p,a,b,c)               (p)->Clone(a,b,c)
     426#define IDirect3DRMDevice_AddDestroyCallback(p,a,b)    (p)->AddDestroyCallback(a,b)
     427#define IDirect3DRMDevice_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b)
     428#define IDirect3DRMDevice_SetAppData(p,a)              (p)->SetAppData(a)
     429#define IDirect3DRMDevice_GetAppData(p)                (p)->GetAppData()
     430#define IDirect3DRMDevice_SetName(p,a)                 (p)->SetName(a)
     431#define IDirect3DRMDevice_GetName(p,a,b)               (p)->GetName(a,b)
     432#define IDirect3DRMDevice_GetClassName(p,a,b)          (p)->GetClassName(a,b)
     433/*** IDirect3DRMDevice methods ***/
     434#define IDirect3DRMDevice_Init(p,a,b)                  (p)->Init(p,a,b)
     435#define IDirect3DRMDevice_InitFromD3D(p,a,b)           (p)->InitFromD3D(p,a,b)
     436#define IDirect3DRMDevice_InitFromClipper(p,a,b,c,d)   (p)->InitFromClipper(p,a,b,c,d)
     437#define IDirect3DRMDevice_Update(p)                    (p)->Update(p)
     438#define IDirect3DRMDevice_AddUpdateCallback(p,a,b)     (p)->AddUpdateCallback(p,a,b)
     439#define IDirect3DRMDevice_DeleteUpdateCallback(p,a,b)  (p)->DeleteUpdateCallback(p,a,b,c)
     440#define IDirect3DRMDevice_SetBufferCount(p,a)          (p)->SetBufferCount(p,a)
     441#define IDirect3DRMDevice_GetBufferCount(p)            (p)->GetBufferCount(p)
     442#define IDirect3DRMDevice_SetDither(p,a)               (p)->SetDither(p,a)
     443#define IDirect3DRMDevice_SetShades(p,a)               (p)->SetShades(p,a)
     444#define IDirect3DRMDevice_SetQuality(p,a)              (p)->SetQuality(p,a)
     445#define IDirect3DRMDevice_SetTextureQuality(p,a)       (p)->SetTextureQuality(p,a)
     446#define IDirect3DRMDevice_GetViewports(p,a)            (p)->GetViewports(p,a)
     447#define IDirect3DRMDevice_GetDither(p)                 (p)->GetDither(p)
     448#define IDirect3DRMDevice_GetShades(p)                 (p)->GetShades(p)
     449#define IDirect3DRMDevice_GetHeight(p)                 (p)->GetHeight(p)
     450#define IDirect3DRMDevice_GetWidth(p)                  (p)->GetWidth(p)
     451#define IDirect3DRMDevice_GetTrianglesDrawn(p)         (p)->GetTrianglesDrawn(p)
     452#define IDirect3DRMDevice_GetWireframeOptions(p)       (p)->GetWireframeOptions(p)
     453#define IDirect3DRMDevice_GetQuality(p)                (p)->GetQuality(p)
     454#define IDirect3DRMDevice_GetColorModel(p)             (p)->GetColorModel(p)
     455#define IDirect3DRMDevice_GetTextureQuality(p)         (p)->GetTextureQuality(p)
     456#define IDirect3DRMDevice_GetDirect3DDevice(p,a)       (p)->GetDirect3DDevice(p,a)
     457#endif
     458
     459/*****************************************************************************
     460 * IDirect3DRMDevice2 interface
     461 */
     462#ifdef WINE_NO_UNICODE_MACROS
     463#undef GetClassName
     464#endif
     465#define INTERFACE IDirect3DRMDevice2
     466DECLARE_INTERFACE_(IDirect3DRMDevice2,IDirect3DRMDevice)
     467{
     468    /*** IUnknown methods ***/
     469    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     470    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     471    STDMETHOD_(ULONG,Release)(THIS) PURE;
     472    /*** IDirect3DRMObject methods ***/
     473    STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     474    STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK pFunc, LPVOID pArg) PURE;
     475    STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK pFunc, LPVOID pArg) PURE;
     476    STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
     477    STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
     478    STDMETHOD(SetName)(THIS_ LPCSTR) PURE;
     479    STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     480    STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     481    /*** IDirect3DRMDevice methods ***/
     482    STDMETHOD(Init)(THIS_ ULONG width, ULONG height) PURE;
     483    STDMETHOD(InitFromD3D)(THIS_ LPDIRECT3D pD3D, LPDIRECT3DDEVICE pD3DDev) PURE;
     484    STDMETHOD(InitFromClipper)(THIS_ LPDIRECTDRAWCLIPPER pDDClipper, LPGUID pGUID, int width, int height) PURE;
     485    STDMETHOD(Update)(THIS) PURE;
     486    STDMETHOD(AddUpdateCallback)(THIS_ D3DRMUPDATECALLBACK, LPVOID arg) PURE;
     487    STDMETHOD(DeleteUpdateCallback)(THIS_ D3DRMUPDATECALLBACK, LPVOID arg) PURE;
     488    STDMETHOD(SetBufferCount)(THIS_ DWORD) PURE;
     489    STDMETHOD_(DWORD, GetBufferCount)(THIS) PURE;
     490    STDMETHOD(SetDither)(THIS_ BOOL) PURE;
     491    STDMETHOD(SetShades)(THIS_ DWORD) PURE;
     492    STDMETHOD(SetQuality)(THIS_ D3DRMRENDERQUALITY) PURE;
     493    STDMETHOD(SetTextureQuality)(THIS_ D3DRMTEXTUREQUALITY) PURE;
     494    STDMETHOD(GetViewports)(THIS_ LPDIRECT3DRMVIEWPORTARRAY *return_views) PURE;
     495    STDMETHOD_(BOOL, GetDither)(THIS) PURE;
     496    STDMETHOD_(DWORD, GetShades)(THIS) PURE;
     497    STDMETHOD_(DWORD, GetHeight)(THIS) PURE;
     498    STDMETHOD_(DWORD, GetWidth)(THIS) PURE;
     499    STDMETHOD_(DWORD, GetTrianglesDrawn)(THIS) PURE;
     500    STDMETHOD_(DWORD, GetWireframeOptions)(THIS) PURE;
     501    STDMETHOD_(D3DRMRENDERQUALITY, GetQuality)(THIS) PURE;
     502    STDMETHOD_(D3DCOLORMODEL, GetColorModel)(THIS) PURE;
     503    STDMETHOD_(D3DRMTEXTUREQUALITY, GetTextureQuality)(THIS) PURE;
     504    STDMETHOD(GetDirect3DDevice)(THIS_ LPDIRECT3DDEVICE *) PURE;
     505    /*** IDirect3DRMDevice2 methods ***/
     506    STDMETHOD(InitFromD3D2)(THIS_ LPDIRECT3D2 pD3D, LPDIRECT3DDEVICE2 pD3DDev) PURE;
     507    STDMETHOD(InitFromSurface)(THIS_ LPGUID pGUID, LPDIRECTDRAW pDD, LPDIRECTDRAWSURFACE pDDSBack) PURE;
     508    STDMETHOD(SetRenderMode)(THIS_ DWORD flags) PURE;
     509    STDMETHOD_(DWORD, GetRenderMode)(THIS) PURE;
     510    STDMETHOD(GetDirect3DDevice2)(THIS_ LPDIRECT3DDEVICE2 *) PURE;
     511};
     512#undef INTERFACE
     513
     514#if !defined(__cplusplus) || defined(CINTERFACE)
     515/*** IUnknown methods ***/
     516#define IDirect3DRMDevice2_QueryInterface(p,a,b)        (p)->lpVtbl->QueryInterface(p,a,b)
     517#define IDirect3DRMDevice2_AddRef(p)                    (p)->lpVtbl->AddRef(p)
     518#define IDirect3DRMDevice2_Release(p)                   (p)->lpVtbl->Release(p)
     519/*** IDirect3DRMObject methods ***/
     520#define IDirect3DRMDevice2_Clone(p,a,b,c)               (p)->lpVtbl->Clone(p,a,b,c)
     521#define IDirect3DRMDevice2_AddDestroyCallback(p,a,b)    (p)->lpVtbl->AddDestroyCallback(p,a,b)
     522#define IDirect3DRMDevice2_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
     523#define IDirect3DRMDevice2_SetAppData(p,a)              (p)->lpVtbl->SetAppData(p,a)
     524#define IDirect3DRMDevice2_GetAppData(p)                (p)->lpVtbl->GetAppData(p)
     525#define IDirect3DRMDevice2_SetName(p,a)                 (p)->lpVtbl->SetName(p,a)
     526#define IDirect3DRMDevice2_GetName(p,a,b)               (p)->lpVtbl->GetName(p,a,b)
     527#define IDirect3DRMDevice2_GetClassName(p,a,b)          (p)->lpVtbl->GetClassName(p,a,b)
     528/*** IDirect3DRMDevice methods ***/
     529#define IDirect3DRMDevice2_Init(p,a,b)                  (p)->lpVtbl->Init(p,a,b)
     530#define IDirect3DRMDevice2_InitFromD3D(p,a,b)           (p)->lpVtbl->InitFromD3D(p,a,b)
     531#define IDirect3DRMDevice2_InitFromClipper(p,a,b,c,d)   (p)->lpVtbl->InitFromClipper(p,a,b,c,d)
     532#define IDirect3DRMDevice2_Update(p)                    (p)->lpVtbl->Update(p)
     533#define IDirect3DRMDevice2_AddUpdateCallback(p,a,b)     (p)->lpVtbl->AddUpdateCallback(p,a,b)
     534#define IDirect3DRMDevice2_DeleteUpdateCallback(p,a,b)  (p)->lpVtbl->DeleteUpdateCallback(p,a,b,c)
     535#define IDirect3DRMDevice2_SetBufferCount(p,a)          (p)->lpVtbl->SetBufferCount(p,a)
     536#define IDirect3DRMDevice2_GetBufferCount(p)            (p)->lpVtbl->GetBufferCount(p)
     537#define IDirect3DRMDevice2_SetDither(p,a)               (p)->lpVtbl->SetDither(p,a)
     538#define IDirect3DRMDevice2_SetShades(p,a)               (p)->lpVtbl->SetShades(p,a)
     539#define IDirect3DRMDevice2_SetQuality(p,a)              (p)->lpVtbl->SetQuality(p,a)
     540#define IDirect3DRMDevice2_SetTextureQuality(p,a)       (p)->lpVtbl->SetTextureQuality(p,a)
     541#define IDirect3DRMDevice2_GetViewports(p,a)            (p)->lpVtbl->GetViewports(p,a)
     542#define IDirect3DRMDevice2_GetDither(p)                 (p)->lpVtbl->GetDither(p)
     543#define IDirect3DRMDevice2_GetShades(p)                 (p)->lpVtbl->GetShades(p)
     544#define IDirect3DRMDevice2_GetHeight(p)                 (p)->lpVtbl->GetHeight(p)
     545#define IDirect3DRMDevice2_GetWidth(p)                  (p)->lpVtbl->GetWidth(p)
     546#define IDirect3DRMDevice2_GetTrianglesDrawn(p)         (p)->lpVtbl->GetTrianglesDrawn(p)
     547#define IDirect3DRMDevice2_GetWireframeOptions(p)       (p)->lpVtbl->GetWireframeOptions(p)
     548#define IDirect3DRMDevice2_GetQuality(p)                (p)->lpVtbl->GetQuality(p)
     549#define IDirect3DRMDevice2_GetColorModel(p)             (p)->lpVtbl->GetColorModel(p)
     550#define IDirect3DRMDevice2_GetTextureQuality(p)         (p)->lpVtbl->GetTextureQuality(p)
     551#define IDirect3DRMDevice2_GetDirect3DDevice(p,a)       (p)->lpVtbl->GetDirect3DDevice(p,a)
     552/*** IDirect3DRMDevice2 methods ***/
     553#define IDirect3DRMDevice2_InitFromD3D2(p,a,b)          (p)->lpVtbl->InitFromD3D2(p,a,b)
     554#define IDirect3DRMDevice2_InitFromSurface(p,a,b,c)     (p)->lpVtbl->InitFromSurface(p,a,b,c)
     555#define IDirect3DRMDevice2_SetRenderMode(p,a)           (p)->lpVtbl->SetRenderMode(p,a)
     556#define IDirect3DRMDevice2_GetRenderMode(p)             (p)->lpVtbl->GetRenderMode(p)
     557#define IDirect3DRMDevice2_GetDirect3DDevice2(p,a)      (p)->lpVtbl->GetDirect3DDevice2(p,a)
     558#else
     559/*** IUnknown methods ***/
     560#define IDirect3DRMDevice2_QueryInterface(p,a,b)        (p)->QueryInterface(a,b)
     561#define IDirect3DRMDevice2_AddRef(p)                    (p)->AddRef()
     562#define IDirect3DRMDevice2_Release(p)                   (p)->Release()
     563/*** IDirect3DRMObject methods ***/
     564#define IDirect3DRMDevice2_Clone(p,a,b,c)               (p)->Clone(a,b,c)
     565#define IDirect3DRMDevice2_AddDestroyCallback(p,a,b)    (p)->AddDestroyCallback(a,b)
     566#define IDirect3DRMDevice2_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b)
     567#define IDirect3DRMDevice2_SetAppData(p,a)              (p)->SetAppData(a)
     568#define IDirect3DRMDevice2_GetAppData(p)                (p)->GetAppData()
     569#define IDirect3DRMDevice2_SetName(p,a)                 (p)->SetName(a)
     570#define IDirect3DRMDevice2_GetName(p,a,b)               (p)->GetName(a,b)
     571#define IDirect3DRMDevice2_GetClassName(p,a,b)          (p)->GetClassName(a,b)
     572/*** IDirect3DRMDevice methods ***/
     573#define IDirect3DRMDevice2_Init(p,a,b)                  (p)->Init(p,a,b)
     574#define IDirect3DRMDevice2_InitFromD3D(p,a,b)           (p)->InitFromD3D(p,a,b)
     575#define IDirect3DRMDevice2_InitFromClipper(p,a,b,c,d)   (p)->InitFromClipper(p,a,b,c,d)
     576#define IDirect3DRMDevice2_Update(p)                    (p)->Update(p)
     577#define IDirect3DRMDevice2_AddUpdateCallback(p,a,b)     (p)->AddUpdateCallback(p,a,b)
     578#define IDirect3DRMDevice2_DeleteUpdateCallback(p,a,b)  (p)->DeleteUpdateCallback(p,a,b,c)
     579#define IDirect3DRMDevice2_SetBufferCount(p,a)          (p)->SetBufferCount(p,a)
     580#define IDirect3DRMDevice2_GetBufferCount(p)            (p)->GetBufferCount(p)
     581#define IDirect3DRMDevice2_SetDither(p,a)               (p)->SetDither(p,a)
     582#define IDirect3DRMDevice2_SetShades(p,a)               (p)->SetShades(p,a)
     583#define IDirect3DRMDevice2_SetQuality(p,a)              (p)->SetQuality(p,a)
     584#define IDirect3DRMDevice2_SetTextureQuality(p,a)       (p)->SetTextureQuality(p,a)
     585#define IDirect3DRMDevice2_GetViewports(p,a)            (p)->GetViewports(p,a)
     586#define IDirect3DRMDevice2_GetDither(p)                 (p)->GetDither(p)
     587#define IDirect3DRMDevice2_GetShades(p)                 (p)->GetShades(p)
     588#define IDirect3DRMDevice2_GetHeight(p)                 (p)->GetHeight(p)
     589#define IDirect3DRMDevice2_GetWidth(p)                  (p)->GetWidth(p)
     590#define IDirect3DRMDevice2_GetTrianglesDrawn(p)         (p)->GetTrianglesDrawn(p)
     591#define IDirect3DRMDevice2_GetWireframeOptions(p)       (p)->GetWireframeOptions(p)
     592#define IDirect3DRMDevice2_GetQuality(p)                (p)->GetQuality(p)
     593#define IDirect3DRMDevice2_GetColorModel(p)             (p)->GetColorModel(p)
     594#define IDirect3DRMDevice2_GetTextureQuality(p)         (p)->GetTextureQuality(p)
     595#define IDirect3DRMDevice2_GetDirect3DDevice(p,a)       (p)->GetDirect3DDevice(p,a)
     596/*** IDirect3DRMDevice2 methods ***/
     597#define IDirect3DRMDevice2_InitFromD3D2(p,a,b)          (p)->InitFromD3D2(a,b)
     598#define IDirect3DRMDevice2_InitFromSurface(p,a,b,c)     (p)->InitFromSurface(a,b,c)
     599#define IDirect3DRMDevice2_SetRenderMode(p,a)           (p)->SetRenderMode(a)
     600#define IDirect3DRMDevice2_GetRenderMode(p)             (p)->GetRenderMode()
     601#define IDirect3DRMDevice2_GetDirect3DDevice2(p,a)      (p)->GetDirect3DDevice2(a)
     602#endif
     603
     604/*****************************************************************************
     605 * IDirect3DRMDevice3 interface
     606 */
     607#ifdef WINE_NO_UNICODE_MACROS
     608#undef GetClassName
     609#endif
     610#define INTERFACE IDirect3DRMDevice3
     611DECLARE_INTERFACE_(IDirect3DRMDevice3,IDirect3DRMObject)
     612{
     613    /*** IUnknown methods ***/
     614    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     615    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     616    STDMETHOD_(ULONG,Release)(THIS) PURE;
     617    /*** IDirect3DRMObject methods ***/
     618    STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     619    STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK pFunc, LPVOID pArg) PURE;
     620    STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK pFunc, LPVOID pArg) PURE;
     621    STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
     622    STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
     623    STDMETHOD(SetName)(THIS_ LPCSTR) PURE;
     624    STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     625    STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     626    /*** IDirect3DRMDevice methods ***/
     627    STDMETHOD(Init)(THIS_ ULONG width, ULONG height) PURE;
     628    STDMETHOD(InitFromD3D)(THIS_ LPDIRECT3D pD3D, LPDIRECT3DDEVICE pD3DDev) PURE;
     629    STDMETHOD(InitFromClipper)(THIS_ LPDIRECTDRAWCLIPPER pDDClipper, LPGUID pGUID, int width, int height) PURE;
     630    STDMETHOD(Update)(THIS) PURE;
     631    STDMETHOD(AddUpdateCallback)(THIS_ D3DRMUPDATECALLBACK, LPVOID arg) PURE;
     632    STDMETHOD(DeleteUpdateCallback)(THIS_ D3DRMUPDATECALLBACK, LPVOID arg) PURE;
     633    STDMETHOD(SetBufferCount)(THIS_ DWORD) PURE;
     634    STDMETHOD_(DWORD, GetBufferCount)(THIS) PURE;
     635    STDMETHOD(SetDither)(THIS_ BOOL) PURE;
     636    STDMETHOD(SetShades)(THIS_ DWORD) PURE;
     637    STDMETHOD(SetQuality)(THIS_ D3DRMRENDERQUALITY) PURE;
     638    STDMETHOD(SetTextureQuality)(THIS_ D3DRMTEXTUREQUALITY) PURE;
     639    STDMETHOD(GetViewports)(THIS_ LPDIRECT3DRMVIEWPORTARRAY *return_views) PURE;
     640    STDMETHOD_(BOOL, GetDither)(THIS) PURE;
     641    STDMETHOD_(DWORD, GetShades)(THIS) PURE;
     642    STDMETHOD_(DWORD, GetHeight)(THIS) PURE;
     643    STDMETHOD_(DWORD, GetWidth)(THIS) PURE;
     644    STDMETHOD_(DWORD, GetTrianglesDrawn)(THIS) PURE;
     645    STDMETHOD_(DWORD, GetWireframeOptions)(THIS) PURE;
     646    STDMETHOD_(D3DRMRENDERQUALITY, GetQuality)(THIS) PURE;
     647    STDMETHOD_(D3DCOLORMODEL, GetColorModel)(THIS) PURE;
     648    STDMETHOD_(D3DRMTEXTUREQUALITY, GetTextureQuality)(THIS) PURE;
     649    STDMETHOD(GetDirect3DDevice)(THIS_ LPDIRECT3DDEVICE *) PURE;
     650    /*** IDirect3DRMDevice2 methods ***/
     651    STDMETHOD(InitFromD3D2)(THIS_ LPDIRECT3D2 pD3D, LPDIRECT3DDEVICE2 pD3DDev) PURE;
     652    STDMETHOD(InitFromSurface)(THIS_ LPGUID pGUID, LPDIRECTDRAW pDD, LPDIRECTDRAWSURFACE pDDSBack) PURE;
     653    STDMETHOD(SetRenderMode)(THIS_ DWORD flags) PURE;
     654    STDMETHOD_(DWORD, GetRenderMode)(THIS) PURE;
     655    STDMETHOD(GetDirect3DDevice2)(THIS_ LPDIRECT3DDEVICE2 *) PURE;
     656    /*** IDirect3DRMDevice3 methods ***/
     657    STDMETHOD(FindPreferredTextureFormat)(THIS_ DWORD BitDepths, DWORD flags, LPDDPIXELFORMAT pDDPF) PURE;
     658    STDMETHOD(RenderStateChange)(THIS_ D3DRENDERSTATETYPE drsType, DWORD val, DWORD flags) PURE;
     659    STDMETHOD(LightStateChange)(THIS_ D3DLIGHTSTATETYPE drsType, DWORD val, DWORD flags) PURE;
     660    STDMETHOD(GetStateChangeOptions)(THIS_ DWORD StateClass, DWORD StateNum, LPDWORD pFlags) PURE;
     661    STDMETHOD(SetStateChangeOptions)(THIS_ DWORD StateClass, DWORD StateNum, DWORD flags) PURE;
     662};
     663#undef INTERFACE
     664
     665#if !defined(__cplusplus) || defined(CINTERFACE)
     666/*** IUnknown methods ***/
     667#define IDirect3DRMDevice3_QueryInterface(p,a,b)               (p)->lpVtbl->QueryInterface(p,a,b)
     668#define IDirect3DRMDevice3_AddRef(p)                           (p)->lpVtbl->AddRef(p)
     669#define IDirect3DRMDevice3_Release(p)                          (p)->lpVtbl->Release(p)
     670/*** IDirect3DRMObject methods ***/
     671#define IDirect3DRMDevice3_Clone(p,a,b,c)                      (p)->lpVtbl->Clone(p,a,b,c)
     672#define IDirect3DRMDevice3_AddDestroyCallback(p,a,b)           (p)->lpVtbl->AddDestroyCallback(p,a,b)
     673#define IDirect3DRMDevice3_DeleteDestroyCallback(p,a,b)        (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
     674#define IDirect3DRMDevice3_SetAppData(p,a)                     (p)->lpVtbl->SetAppData(p,a)
     675#define IDirect3DRMDevice3_GetAppData(p)                       (p)->lpVtbl->GetAppData(p)
     676#define IDirect3DRMDevice3_SetName(p,a)                        (p)->lpVtbl->SetName(p,a)
     677#define IDirect3DRMDevice3_GetName(p,a,b)                      (p)->lpVtbl->GetName(p,a,b)
     678#define IDirect3DRMDevice3_GetClassName(p,a,b)                 (p)->lpVtbl->GetClassName(p,a,b)
     679/*** IDirect3DRMDevice methods ***/
     680#define IDirect3DRMDevice3_Init(p,a,b)                         (p)->lpVtbl->Init(p,a,b)
     681#define IDirect3DRMDevice3_InitFromD3D(p,a,b)                  (p)->lpVtbl->InitFromD3D(p,a,b)
     682#define IDirect3DRMDevice3_InitFromClipper(p,a,b,c,d)          (p)->lpVtbl->InitFromClipper(p,a,b,c,d)
     683#define IDirect3DRMDevice3_Update(p)                           (p)->lpVtbl->Update(p)
     684#define IDirect3DRMDevice3_AddUpdateCallback(p,a,b)            (p)->lpVtbl->AddUpdateCallback(p,a,b)
     685#define IDirect3DRMDevice3_DeleteUpdateCallback(p,a,b)         (p)->lpVtbl->DeleteUpdateCallback(p,a,b,c)
     686#define IDirect3DRMDevice3_SetBufferCount(p,a)                 (p)->lpVtbl->SetBufferCount(p,a)
     687#define IDirect3DRMDevice3_GetBufferCount(p)                   (p)->lpVtbl->GetBufferCount(p)
     688#define IDirect3DRMDevice3_SetDither(p,a)                      (p)->lpVtbl->SetDither(p,a)
     689#define IDirect3DRMDevice3_SetShades(p,a)                      (p)->lpVtbl->SetShades(p,a)
     690#define IDirect3DRMDevice3_SetQuality(p,a)                     (p)->lpVtbl->SetQuality(p,a)
     691#define IDirect3DRMDevice3_SetTextureQuality(p,a)              (p)->lpVtbl->SetTextureQuality(p,a)
     692#define IDirect3DRMDevice3_GetViewports(p,a)                   (p)->lpVtbl->GetViewports(p,a)
     693#define IDirect3DRMDevice3_GetDither(p)                        (p)->lpVtbl->GetDither(p)
     694#define IDirect3DRMDevice3_GetShades(p)                        (p)->lpVtbl->GetShades(p)
     695#define IDirect3DRMDevice3_GetHeight(p)                        (p)->lpVtbl->GetHeight(p)
     696#define IDirect3DRMDevice3_GetWidth(p)                         (p)->lpVtbl->GetWidth(p)
     697#define IDirect3DRMDevice3_GetTrianglesDrawn(p)                (p)->lpVtbl->GetTrianglesDrawn(p)
     698#define IDirect3DRMDevice3_GetWireframeOptions(p)              (p)->lpVtbl->GetWireframeOptions(p)
     699#define IDirect3DRMDevice3_GetQuality(p)                       (p)->lpVtbl->GetQuality(p)
     700#define IDirect3DRMDevice3_GetColorModel(p)                    (p)->lpVtbl->GetColorModel(p)
     701#define IDirect3DRMDevice3_GetTextureQuality(p)                (p)->lpVtbl->GetTextureQuality(p)
     702#define IDirect3DRMDevice3_GetDirect3DDevice(p,a)              (p)->lpVtbl->GetDirect3DDevice(p,a)
     703/*** IDirect3DRMDevice2 methods ***/
     704#define IDirect3DRMDevice3_InitFromD3D2(p,a,b)                 (p)->lpVtbl->InitFromD3D2(p,a,b)
     705#define IDirect3DRMDevice3_InitFromSurface(p,a,b,c)            (p)->lpVtbl->InitFromSurface(p,a,b,c)
     706#define IDirect3DRMDevice3_SetRenderMode(p,a)                  (p)->lpVtbl->SetRenderMode(p,a)
     707#define IDirect3DRMDevice3_GetRenderMode(p)                    (p)->lpVtbl->GetRenderMode(p)
     708#define IDirect3DRMDevice3_GetDirect3DDevice2(p,a)             (p)->lpVtbl->GetDirect3DDevice2(p,a)
     709/*** IDirect3DRMDevice3 methods ***/
     710#define IDirect3DRMDevice3_FindPreferredTextureFormat(p,a,b,c) (p)->lpVtbl->FindPreferredTextureFormat(p,a,b)
     711#define IDirect3DRMDevice3_RenderStateChange(p,a,b,c)          (p)->lpVtbl->RenderStateChange(p,a,b)
     712#define IDirect3DRMDevice3_LightStateChange(p,a,b,c)           (p)->lpVtbl->LightStateChange(p,a,b)
     713#define IDirect3DRMDevice3_GetStateChangeOptions(p,a,b,c)      (p)->lpVtbl->GetStateChangeOptions(p,a,b)
     714#define IDirect3DRMDevice3_SetStateChangeOptions(p,a,b,c)      (p)->lpVtbl->SetStateChangeOptions(p,a,b)
     715#else
     716/*** IUnknown methods ***/
     717#define IDirect3DRMDevice3_QueryInterface(p,a,b)               (p)->QueryInterface(a,b)
     718#define IDirect3DRMDevice3_AddRef(p)                           (p)->AddRef()
     719#define IDirect3DRMDevice3_Release(p)                          (p)->Release()
     720/*** IDirect3DRMObject methods ***/
     721#define IDirect3DRMDevice3_Clone(p,a,b,c)                      (p)->Clone(a,b,c)
     722#define IDirect3DRMDevice3_AddDestroyCallback(p,a,b)           (p)->AddDestroyCallback(a,b)
     723#define IDirect3DRMDevice3_DeleteDestroyCallback(p,a,b)        (p)->DeleteDestroyCallback(a,b)
     724#define IDirect3DRMDevice3_SetAppData(p,a)                     (p)->SetAppData(a)
     725#define IDirect3DRMDevice3_GetAppData(p)                       (p)->GetAppData()
     726#define IDirect3DRMDevice3_SetName(p,a)                        (p)->SetName(a)
     727#define IDirect3DRMDevice3_GetName(p,a,b)                      (p)->GetName(a,b)
     728#define IDirect3DRMDevice3_GetClassName(p,a,b)                 (p)->GetClassName(a,b)
     729/*** IDirect3DRMDevice methods ***/
     730#define IDirect3DRMDevice3_Init(p,a,b)                         (p)->Init(p,a,b)
     731#define IDirect3DRMDevice3_InitFromD3D(p,a,b)                  (p)->InitFromD3D(p,a,b)
     732#define IDirect3DRMDevice3_InitFromClipper(p,a,b,c,d)          (p)->InitFromClipper(p,a,b,c,d)
     733#define IDirect3DRMDevice3_Update(p)                           (p)->Update(p)
     734#define IDirect3DRMDevice3_AddUpdateCallback(p,a,b)            (p)->AddUpdateCallback(p,a,b)
     735#define IDirect3DRMDevice3_DeleteUpdateCallback(p,a,b)         (p)->DeleteUpdateCallback(p,a,b,c)
     736#define IDirect3DRMDevice3_SetBufferCount(p,a)                 (p)->SetBufferCount(p,a)
     737#define IDirect3DRMDevice3_GetBufferCount(p)                   (p)->GetBufferCount(p)
     738#define IDirect3DRMDevice3_SetDither(p,a)                      (p)->SetDither(p,a)
     739#define IDirect3DRMDevice3_SetShades(p,a)                      (p)->SetShades(p,a)
     740#define IDirect3DRMDevice3_SetQuality(p,a)                     (p)->SetQuality(p,a)
     741#define IDirect3DRMDevice3_SetTextureQuality(p,a)              (p)->SetTextureQuality(p,a)
     742#define IDirect3DRMDevice3_GetViewports(p,a)                   (p)->GetViewports(p,a)
     743#define IDirect3DRMDevice3_GetDither(p)                        (p)->GetDither(p)
     744#define IDirect3DRMDevice3_GetShades(p)                        (p)->GetShades(p)
     745#define IDirect3DRMDevice3_GetHeight(p)                        (p)->GetHeight(p)
     746#define IDirect3DRMDevice3_GetWidth(p)                         (p)->GetWidth(p)
     747#define IDirect3DRMDevice3_GetTrianglesDrawn(p)                (p)->GetTrianglesDrawn(p)
     748#define IDirect3DRMDevice3_GetWireframeOptions(p)              (p)->GetWireframeOptions(p)
     749#define IDirect3DRMDevice3_GetQuality(p)                       (p)->GetQuality(p)
     750#define IDirect3DRMDevice3_GetColorModel(p)                    (p)->GetColorModel(p)
     751#define IDirect3DRMDevice3_GetTextureQuality(p)                (p)->GetTextureQuality(p)
     752#define IDirect3DRMDevice3_GetDirect3DDevice(p,a)              (p)->GetDirect3DDevice(p,a)
     753/*** IDirect3DRMDevice2 methods ***/
     754#define IDirect3DRMDevice3_InitFromD3D2(p,a,b)                 (p)->InitFromD3D2(a,b)
     755#define IDirect3DRMDevice3_InitFromSurface(p,a,b,c)            (p)->InitFromSurface(a,b,c)
     756#define IDirect3DRMDevice3_SetRenderMode(p,a)                  (p)->SetRenderMode(a)
     757#define IDirect3DRMDevice3_GetRenderMode(p)                    (p)->GetRenderMode()
     758#define IDirect3DRMDevice3_GetDirect3DDevice2(p,a)             (p)->GetDirect3DDevice2(a)
     759/*** IDirect3DRMDevice3 methods ***/
     760#define IDirect3DRMDevice3_FindPreferredTextureFormat(p,a,b,c) (p)->FindPreferredTextureFormat(a,b,c)
     761#define IDirect3DRMDevice3_RenderStateChange(p,a,b,c)          (p)->RenderStateChange(a,b,c)
     762#define IDirect3DRMDevice3_LightStateChange(p,a,b,c)           (p)->LightStateChange(a,b,c)
     763#define IDirect3DRMDevice3_GetStateChangeOptions(p,a,b,c)      (p)->GetStateChangeOptions(a,b,c)
     764#define IDirect3DRMDevice3_SetStateChangeOptions(p,a,b,c)      (p)->SetStateChangeOptions(a,b,c)
     765#endif
     766
     767/*****************************************************************************
     768 * IDirect3DRMViewport interface
     769 */
     770#define INTERFACE IDirect3DRMViewport
     771DECLARE_INTERFACE_(IDirect3DRMViewport,IDirect3DRMObject)
     772{
     773    /*** IUnknown methods ***/
     774    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     775    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     776    STDMETHOD_(ULONG,Release)(THIS) PURE;
     777    /*** IDirect3DRMObject methods ***/
     778    STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     779    STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     780    STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     781    STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
     782    STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
     783    STDMETHOD(SetName)(THIS_ LPCSTR) PURE;
     784    STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     785    STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     786    /*** IDirect3DRMViewport methods ***/
     787    STDMETHOD(Init) (THIS_ LPDIRECT3DRMDEVICE dev, LPDIRECT3DRMFRAME camera, DWORD xpos, DWORD ypos,
     788        DWORD width, DWORD height) PURE;
     789    STDMETHOD(Clear)(THIS) PURE;
     790    STDMETHOD(Render)(THIS_ LPDIRECT3DRMFRAME) PURE;
     791    STDMETHOD(SetFront)(THIS_ D3DVALUE) PURE;
     792    STDMETHOD(SetBack)(THIS_ D3DVALUE) PURE;
     793    STDMETHOD(SetField)(THIS_ D3DVALUE) PURE;
     794    STDMETHOD(SetUniformScaling)(THIS_ BOOL) PURE;
     795    STDMETHOD(SetCamera)(THIS_ LPDIRECT3DRMFRAME) PURE;
     796    STDMETHOD(SetProjection)(THIS_ D3DRMPROJECTIONTYPE) PURE;
     797    STDMETHOD(Transform)(THIS_ D3DRMVECTOR4D *d, D3DVECTOR *s) PURE;
     798    STDMETHOD(InverseTransform)(THIS_ D3DVECTOR *d, D3DRMVECTOR4D *s) PURE;
     799    STDMETHOD(Configure)(THIS_ LONG x, LONG y, DWORD width, DWORD height) PURE;
     800    STDMETHOD(ForceUpdate)(THIS_ DWORD x1, DWORD y1, DWORD x2, DWORD y2) PURE;
     801    STDMETHOD(SetPlane)(THIS_ D3DVALUE left, D3DVALUE right, D3DVALUE bottom, D3DVALUE top) PURE;
     802    STDMETHOD(GetCamera)(THIS_ LPDIRECT3DRMFRAME *) PURE;
     803    STDMETHOD(GetDevice)(THIS_ LPDIRECT3DRMDEVICE *) PURE;
     804    STDMETHOD(GetPlane)(THIS_ D3DVALUE *left, D3DVALUE *right, D3DVALUE *bottom, D3DVALUE *top) PURE;
     805    STDMETHOD(Pick)(THIS_ LONG x, LONG y, LPDIRECT3DRMPICKEDARRAY *return_visuals) PURE;
     806    STDMETHOD_(BOOL, GetUniformScaling)(THIS) PURE;
     807    STDMETHOD_(LONG, GetX)(THIS) PURE;
     808    STDMETHOD_(LONG, GetY)(THIS) PURE;
     809    STDMETHOD_(DWORD, GetWidth)(THIS) PURE;
     810    STDMETHOD_(DWORD, GetHeight)(THIS) PURE;
     811    STDMETHOD_(D3DVALUE, GetField)(THIS) PURE;
     812    STDMETHOD_(D3DVALUE, GetBack)(THIS) PURE;
     813    STDMETHOD_(D3DVALUE, GetFront)(THIS) PURE;
     814    STDMETHOD_(D3DRMPROJECTIONTYPE, GetProjection)(THIS) PURE;
     815    STDMETHOD(GetDirect3DViewport)(THIS_ LPDIRECT3DVIEWPORT *) PURE;
     816};
     817#undef INTERFACE
     818
     819#if !defined(__cplusplus) || defined(CINTERFACE)
     820/*** IUnknown methods ***/
     821#define IDirect3DRMViewport_QueryInterface(p,a,b)        (p)->lpVtbl->QueryInterface(p,a,b)
     822#define IDirect3DRMViewport_AddRef(p)                    (p)->lpVtbl->AddRef(p)
     823#define IDirect3DRMViewport_Release(p)                   (p)->lpVtbl->Release(p)
     824/*** IDirect3DRMObject methods ***/
     825#define IDirect3DRMViewport_Clone(p,a,b,c)               (p)->lpVtbl->Clone(p,a,b,c)
     826#define IDirect3DRMViewport_AddDestroyCallback(p,a,b)    (p)->lpVtbl->AddDestroyCallback(p,a,b)
     827#define IDirect3DRMViewport_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
     828#define IDirect3DRMViewport_SetAppData(p,a)              (p)->lpVtbl->SetAppData(p,a)
     829#define IDirect3DRMViewport_GetAppData(p)                (p)->lpVtbl->GetAppData(p)
     830#define IDirect3DRMViewport_SetName(p,a)                 (p)->lpVtbl->SetName(p,a)
     831#define IDirect3DRMViewport_GetName(p,a,b)               (p)->lpVtbl->GetName(p,a,b)
     832#define IDirect3DRMViewport_GetClassName(p,a,b)          (p)->lpVtbl->GetClassName(p,a,b)
     833/*** IDirect3DRMViewport methods ***/
     834#define IDirect3DRMViewport_Init(p,a,b,c,d)              (p)->lpVtbl->Init(p,a,b,c,d)
     835#define IDirect3DRMViewport_Clear(p)                     (p)->lpVtbl->Clear(p)
     836#define IDirect3DRMViewport_Render(p,a)                  (p)->lpVtbl->Render(p,a)
     837#define IDirect3DRMViewport_SetFront(p,a)                (p)->lpVtbl->SetFront(p,a)
     838#define IDirect3DRMViewport_SetBack(p,a)                 (p)->lpVtbl->(p,a)
     839#define IDirect3DRMViewport_SetField(p,a)                (p)->lpVtbl->(p,a)
     840#define IDirect3DRMViewport_SetUniformScaling(p,a)       (p)->lpVtbl->SetUniformScaling(p,a)
     841#define IDirect3DRMViewport_SetCamera(p,a)               (p)->lpVtbl->SetCamera(p,a)
     842#define IDirect3DRMViewport_SetProjection(p,a)           (p)->lpVtbl->SetProjection(p,a)
     843#define IDirect3DRMViewport_Transform(p,a,b)             (p)->lpVtbl->Transform(p,a,b)
     844#define IDirect3DRMViewport_InverseTransform(p,a,b)      (p)->lpVtbl->(p,a,b)
     845#define IDirect3DRMViewport_Configure(p,a,b,c,d)         (p)->lpVtbl->Configure(p,a,b,c,d)
     846#define IDirect3DRMViewport_ForceUpdate(p,a,b,c,d)       (p)->lpVtbl->ForceUpdate(p,a,b,c,d)
     847#define IDirect3DRMViewport_SetPlane(p,a,b,c,d)          (p)->lpVtbl->SetPlane(p,a,b,c,d)
     848#define IDirect3DRMViewport_GetCamera(p,a)               (p)->lpVtbl->(p,a)
     849#define IDirect3DRMViewport_GetDevice(p,a)               (p)->lpVtbl->GetDevice(p,a)
     850#define IDirect3DRMViewport_GetPlane(p,a,b,c,d)          (p)->lpVtbl->GetPlane(p,a,b,c,d)
     851#define IDirect3DRMViewport_Pick(p,a,b,c)                (p)->lpVtbl->Pick(p,a,b,c)
     852#define IDirect3DRMViewport_GetUniformScaling(p)         (p)->lpVtbl->GetUniformScaling(p)
     853#define IDirect3DRMViewport_GetX(p)                      (p)->lpVtbl->GetX(p)
     854#define IDirect3DRMViewport_GetY(p)                      (p)->lpVtbl->GetY(p)
     855#define IDirect3DRMViewport_GetWidth(p)                  (p)->lpVtbl->GetWidth(p)
     856#define IDirect3DRMViewport_GetHeight(p)                 (p)->lpVtbl->GetHeight(p)
     857#define IDirect3DRMViewport_GetField(p)                  (p)->lpVtbl->GetField(p)
     858#define IDirect3DRMViewport_GetBack(p)                   (p)->lpVtbl->GetBack(p)
     859#define IDirect3DRMViewport_GetFront(p)                  (p)->lpVtbl->GetFront(p)
     860#define IDirect3DRMViewport_GetProjection(p)             (p)->lpVtbl->GetProjection(p)
     861#define IDirect3DRMViewport_GetDirect3DViewport(p,a)     (p)->lpVtbl->GetDirect3DViewport(p,a)
     862#else
     863/*** IUnknown methods ***/
     864#define IDirect3DRMViewport_QueryInterface(p,a,b)        (p)->QueryInterface(a,b)
     865#define IDirect3DRMViewport_AddRef(p)                    (p)->AddRef()
     866#define IDirect3DRMViewport_Release(p)                   (p)->Release()
     867/*** IDirect3DRMObject methods ***/
     868#define IDirect3DRMViewport_Clone(p,a,b,c)               (p)->Clone(a,b,c)
     869#define IDirect3DRMViewport_AddDestroyCallback(p,a,b)    (p)->AddDestroyCallback(a,b)
     870#define IDirect3DRMViewport_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b)
     871#define IDirect3DRMViewport_SetAppData(p,a)              (p)->SetAppData(a)
     872#define IDirect3DRMViewport_GetAppData(p)                (p)->GetAppData()
     873#define IDirect3DRMViewport_SetName(p,a)                 (p)->SetName(a)
     874#define IDirect3DRMViewport_GetName(p,a,b)               (p)->GetName(a,b)
     875#define IDirect3DRMViewport_GetClassName(p,a,b)          (p)->GetClassName(a,b)
     876/*** IDirect3DRMViewport methods ***/
     877#define IDirect3DRMViewport_Init(p,a,b,c,d)              (p)->Init(p,a,b,c,d)
     878#define IDirect3DRMViewport_Clear(p)                     (p)->Clear(p)
     879#define IDirect3DRMViewport_Render(p,a)                  (p)->Render(p,a)
     880#define IDirect3DRMViewport_SetFront(p,a)                (p)->SetFront(p,a)
     881#define IDirect3DRMViewport_SetBack(p,a)                 (p)->(p,a)
     882#define IDirect3DRMViewport_SetField(p,a)                (p)->(p,a)
     883#define IDirect3DRMViewport_SetUniformScaling(p,a)       (p)->SetUniformScaling(p,a)
     884#define IDirect3DRMViewport_SetCamera(p,a)               (p)->SetCamera(p,a)
     885#define IDirect3DRMViewport_SetProjection(p,a)           (p)->SetProjection(p,a)
     886#define IDirect3DRMViewport_Transform(p,a,b)             (p)->Transform(p,a,b)
     887#define IDirect3DRMViewport_InverseTransform(p,a,b)      (p)->(p,a,b)
     888#define IDirect3DRMViewport_Configure(p,a,b,c,d)         (p)->Configure(p,a,b,c,d)
     889#define IDirect3DRMViewport_ForceUpdate(p,a,b,c,d)       (p)->ForceUpdate(p,a,b,c,d)
     890#define IDirect3DRMViewport_SetPlane(p,a,b,c,d)          (p)->SetPlane(p,a,b,c,d)
     891#define IDirect3DRMViewport_GetCamera(p,a)               (p)->GetCamera(p,a)
     892#define IDirect3DRMViewport_GetDevice(p,a)               (p)->GetDevice(p,a)
     893#define IDirect3DRMViewport_GetPlane(p,a,b,c,d)          (p)->GetPlane(p,a,b,c,d)
     894#define IDirect3DRMViewport_Pick(p,a,b,c)                (p)->Pick(p,a,b,c)
     895#define IDirect3DRMViewport_GetUniformScaling(p)         (p)->GetUniformScaling(p)
     896#define IDirect3DRMViewport_GetX(p)                      (p)->GetX(p)
     897#define IDirect3DRMViewport_GetY(p)                      (p)->GetY(p)
     898#define IDirect3DRMViewport_GetWidth(p)                  (p)->GetWidth(p)
     899#define IDirect3DRMViewport_GetHeight(p)                 (p)->GetHeight(p)
     900#define IDirect3DRMViewport_GetField(p)                  (p)->GetField(p)
     901#define IDirect3DRMViewport_GetBack(p)                   (p)->GetBack(p)
     902#define IDirect3DRMViewport_GetFront(p)                  (p)->GetFront(p)
     903#define IDirect3DRMViewport_GetProjection(p)             (p)->GetProjection(p)
     904#define IDirect3DRMViewport_GetDirect3DViewport(p,a)     (p)->GetDirect3DViewport(p,a)
     905#endif
     906
     907/*****************************************************************************
     908 * IDirect3DRMViewport2 interface
     909 */
     910#define INTERFACE IDirect3DRMViewport2
     911DECLARE_INTERFACE_(IDirect3DRMViewport2,IDirect3DRMObject)
     912{
     913    /*** IUnknown methods ***/
     914    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     915    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     916    STDMETHOD_(ULONG,Release)(THIS) PURE;
     917    /*** IDirect3DRMObject methods ***/
     918    STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     919    STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     920    STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     921    STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
     922    STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
     923    STDMETHOD(SetName)(THIS_ LPCSTR) PURE;
     924    STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     925    STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     926    /*** IDirect3DRMViewport2 methods ***/
     927    STDMETHOD(Init) (THIS_ LPDIRECT3DRMDEVICE3 dev, LPDIRECT3DRMFRAME3 camera, DWORD xpos, DWORD ypos,
     928        DWORD width, DWORD height) PURE;
     929    STDMETHOD(Clear)(THIS_ DWORD flags) PURE;
     930    STDMETHOD(Render)(THIS_ LPDIRECT3DRMFRAME3) PURE;
     931    STDMETHOD(SetFront)(THIS_ D3DVALUE) PURE;
     932    STDMETHOD(SetBack)(THIS_ D3DVALUE) PURE;
     933    STDMETHOD(SetField)(THIS_ D3DVALUE) PURE;
     934    STDMETHOD(SetUniformScaling)(THIS_ BOOL) PURE;
     935    STDMETHOD(SetCamera)(THIS_ LPDIRECT3DRMFRAME3) PURE;
     936    STDMETHOD(SetProjection)(THIS_ D3DRMPROJECTIONTYPE) PURE;
     937    STDMETHOD(Transform)(THIS_ D3DRMVECTOR4D *d, D3DVECTOR *s) PURE;
     938    STDMETHOD(InverseTransform)(THIS_ D3DVECTOR *d, D3DRMVECTOR4D *s) PURE;
     939    STDMETHOD(Configure)(THIS_ LONG x, LONG y, DWORD width, DWORD height) PURE;
     940    STDMETHOD(ForceUpdate)(THIS_ DWORD x1, DWORD y1, DWORD x2, DWORD y2) PURE;
     941    STDMETHOD(SetPlane)(THIS_ D3DVALUE left, D3DVALUE right, D3DVALUE bottom, D3DVALUE top) PURE;
     942    STDMETHOD(GetCamera)(THIS_ LPDIRECT3DRMFRAME3 *) PURE;
     943    STDMETHOD(GetDevice)(THIS_ LPDIRECT3DRMDEVICE3 *) PURE;
     944    STDMETHOD(GetPlane)(THIS_ D3DVALUE *left, D3DVALUE *right, D3DVALUE *bottom, D3DVALUE *top) PURE;
     945    STDMETHOD(Pick)(THIS_ LONG x, LONG y, LPDIRECT3DRMPICKEDARRAY *return_visuals) PURE;
     946    STDMETHOD_(BOOL, GetUniformScaling)(THIS) PURE;
     947    STDMETHOD_(LONG, GetX)(THIS) PURE;
     948    STDMETHOD_(LONG, GetY)(THIS) PURE;
     949    STDMETHOD_(DWORD, GetWidth)(THIS) PURE;
     950    STDMETHOD_(DWORD, GetHeight)(THIS) PURE;
     951    STDMETHOD_(D3DVALUE, GetField)(THIS) PURE;
     952    STDMETHOD_(D3DVALUE, GetBack)(THIS) PURE;
     953    STDMETHOD_(D3DVALUE, GetFront)(THIS) PURE;
     954    STDMETHOD_(D3DRMPROJECTIONTYPE, GetProjection)(THIS) PURE;
     955    STDMETHOD(GetDirect3DViewport)(THIS_ LPDIRECT3DVIEWPORT *) PURE;
     956    STDMETHOD(TransformVectors)(THIS_ DWORD NumVectors, LPD3DRMVECTOR4D pDstVectors,
     957        LPD3DVECTOR pSrcVectors) PURE;
     958    STDMETHOD(InverseTransformVectors)(THIS_ DWORD NumVectors, LPD3DVECTOR pDstVectors,
     959        LPD3DRMVECTOR4D pSrcVectors) PURE;
     960};
     961#undef INTERFACE
     962
     963#if !defined(__cplusplus) || defined(CINTERFACE)
     964/*** IUnknown methods ***/
     965#define IDirect3DRMViewport2_QueryInterface(p,a,b)            (p)->lpVtbl->QueryInterface(p,a,b)
     966#define IDirect3DRMViewport2_AddRef(p)                        (p)->lpVtbl->AddRef(p)
     967#define IDirect3DRMViewport2_Release(p)                       (p)->lpVtbl->Release(p)
     968/*** IDirect3DRMObject methods ***/
     969#define IDirect3DRMViewport_2Clone(p,a,b,c)                   (p)->lpVtbl->Clone(p,a,b,c)
     970#define IDirect3DRMViewport2_AddDestroyCallback(p,a,b)        (p)->lpVtbl->AddDestroyCallback(p,a,b)
     971#define IDirect3DRMViewport2_DeleteDestroyCallback(p,a,b)     (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
     972#define IDirect3DRMViewport2_SetAppData(p,a)                  (p)->lpVtbl->SetAppData(p,a)
     973#define IDirect3DRMViewport2_GetAppData(p)                    (p)->lpVtbl->GetAppData(p)
     974#define IDirect3DRMViewport2_SetName(p,a)                     (p)->lpVtbl->SetName(p,a)
     975#define IDirect3DRMViewport2_GetName(p,a,b)                   (p)->lpVtbl->GetName(p,a,b)
     976#define IDirect3DRMViewport2_GetClassName(p,a,b)              (p)->lpVtbl->GetClassName(p,a,b)
     977/*** IDirect3DRMViewport2 methods ***/
     978#define IDirect3DRMViewport2_Init(p,a,b,c,d,e,f)              (p)->lpVtbl->Init(p,a,b,c,d,e,f)
     979#define IDirect3DRMViewport2_Clear(p,a)                       (p)->lpVtbl->Clear(p,a)
     980#define IDirect3DRMViewport2_Render(p,a)                      (p)->lpVtbl->Render(p,a)
     981#define IDirect3DRMViewport2_SetFront(p,a)                    (p)->lpVtbl->SetFront(p,a)
     982#define IDirect3DRMViewport2_SetBack(p,a)                     (p)->lpVtbl->(p,a)
     983#define IDirect3DRMViewport2_SetField(p,a)                    (p)->lpVtbl->(p,a)
     984#define IDirect3DRMViewport2_SetUniformScaling(p,a)           (p)->lpVtbl->SetUniformScaling(p,a)
     985#define IDirect3DRMViewport2_SetCamera(p,a)                   (p)->lpVtbl->SetCamera(p,a)
     986#define IDirect3DRMViewport2_SetProjection(p,a)               (p)->lpVtbl->SetProjection(p,a)
     987#define IDirect3DRMViewport2_Transform(p,a,b)                 (p)->lpVtbl->Transform(p,a,b)
     988#define IDirect3DRMViewport2_InverseTransform(p,a,b)          (p)->lpVtbl->(p,a,b)
     989#define IDirect3DRMViewport2_Configure(p,a,b,c,d)             (p)->lpVtbl->Configure(p,a,b,c,d)
     990#define IDirect3DRMViewport2_ForceUpdate(p,a,b,c,d)           (p)->lpVtbl->ForceUpdate(p,a,b,c,d)
     991#define IDirect3DRMViewport2_SetPlane(p,a,b,c,d)              (p)->lpVtbl->SetPlane(p,a,b,c,d)
     992#define IDirect3DRMViewport2_GetCamera(p,a)                   (p)->lpVtbl->(p,a)
     993#define IDirect3DRMViewport2_GetDevice(p,a)                   (p)->lpVtbl->GetDevice(p,a)
     994#define IDirect3DRMViewport2_GetPlane(p,a,b,c,d)              (p)->lpVtbl->GetPlane(p,a,b,c,d)
     995#define IDirect3DRMViewport2_Pick(p,a,b,c)                    (p)->lpVtbl->Pick(p,a,b,c)
     996#define IDirect3DRMViewport2_GetUniformScaling(p)             (p)->lpVtbl->GetUniformScaling(p)
     997#define IDirect3DRMViewport2_GetX(p)                          (p)->lpVtbl->GetX(p)
     998#define IDirect3DRMViewport2_GetY(p)                          (p)->lpVtbl->GetY(p)
     999#define IDirect3DRMViewport2_GetWidth(p)                      (p)->lpVtbl->GetWidth(p)
     1000#define IDirect3DRMViewport2_GetHeight(p)                     (p)->lpVtbl->GetHeight(p)
     1001#define IDirect3DRMViewport2_GetField(p)                      (p)->lpVtbl->GetField(p)
     1002#define IDirect3DRMViewport2_GetBack(p)                       (p)->lpVtbl->GetBack(p)
     1003#define IDirect3DRMViewport2_GetFront(p)                      (p)->lpVtbl->GetFront(p)
     1004#define IDirect3DRMViewport2_GetProjection(p)                 (p)->lpVtbl->GetProjection(p)
     1005#define IDirect3DRMViewport2_GetDirect3DViewport(p,a)         (p)->lpVtbl->GetDirect3DViewport(p,a)
     1006#define IDirect3DRMViewport2_TransformVectors(p,a,b,c)        (p)->lpVtbl->TransformVectors(p,a,b,c)
     1007#define IDirect3DRMViewport2_InverseTransformVectors(p,a,b,c) (p)->lpVtbl->InverseTransformVectors(p,ab,c)
     1008#else
     1009/*** IUnknown methods ***/
     1010#define IDirect3DRMViewport2_QueryInterface(p,a,b)            (p)->QueryInterface(a,b)
     1011#define IDirect3DRMViewport2_AddRef(p)                        (p)->AddRef()
     1012#define IDirect3DRMViewport2_Release(p)                       (p)->Release()
     1013/*** IDirect3DRMObject methods ***/
     1014#define IDirect3DRMViewport2_Clone(p,a,b,c)                   (p)->Clone(a,b,c)
     1015#define IDirect3DRMViewport2_AddDestroyCallback(p,a,b)        (p)->AddDestroyCallback(a,b)
     1016#define IDirect3DRMViewport2_DeleteDestroyCallback(p,a,b)     (p)->DeleteDestroyCallback(a,b)
     1017#define IDirect3DRMViewport2_SetAppData(p,a)                  (p)->SetAppData(a)
     1018#define IDirect3DRMViewport2_GetAppData(p)                    (p)->GetAppData()
     1019#define IDirect3DRMViewport2_SetName(p,a)                     (p)->SetName(a)
     1020#define IDirect3DRMViewport2_GetName(p,a,b)                   (p)->GetName(a,b)
     1021#define IDirect3DRMViewport2_GetClassName(p,a,b)              (p)->GetClassName(a,b)
     1022/*** IDirect3DRMViewport2 methods ***/
     1023#define IDirect3DRMViewport2_Init(p,a,b,c,d)                  (p)->Init(p,a,b,c,d)
     1024#define IDirect3DRMViewport2_Clear(p)                         (p)->Clear(p)
     1025#define IDirect3DRMViewport2_Render(p,a)                      (p)->Render(p,a)
     1026#define IDirect3DRMViewport2_SetFront(p,a)                    (p)->SetFront(p,a)
     1027#define IDirect3DRMViewport2_SetBack(p,a)                     (p)->(p,a)
     1028#define IDirect3DRMViewport2_SetField(p,a)                    (p)->(p,a)
     1029#define IDirect3DRMViewport2_SetUniformScaling(p,a)           (p)->SetUniformScaling(p,a)
     1030#define IDirect3DRMViewport2_SetCamera(p,a)                   (p)->SetCamera(p,a)
     1031#define IDirect3DRMViewport2_SetProjection(p,a)               (p)->SetProjection(p,a)
     1032#define IDirect3DRMViewport2_Transform(p,a,b)                 (p)->Transform(p,a,b)
     1033#define IDirect3DRMViewport2_InverseTransform(p,a,b)          (p)->(p,a,b)
     1034#define IDirect3DRMViewport2_Configure(p,a,b,c,d)             (p)->Configure(p,a,b,c,d)
     1035#define IDirect3DRMViewport2_ForceUpdate(p,a,b,c,d)           (p)->ForceUpdate(p,a,b,c,d)
     1036#define IDirect3DRMViewport2_SetPlane(p,a,b,c,d)              (p)->SetPlane(p,a,b,c,d)
     1037#define IDirect3DRMViewport2_GetCamera(p,a)                   (p)->GetCamera(p,a)
     1038#define IDirect3DRMViewport2_GetDevice(p,a)                   (p)->GetDevice(p,a)
     1039#define IDirect3DRMViewport2_GetPlane(p,a,b,c,d)              (p)->GetPlane(p,a,b,c,d)
     1040#define IDirect3DRMViewport2_Pick(p,a,b,c)                    (p)->Pick(p,a,b,c)
     1041#define IDirect3DRMViewport2_GetUniformScaling(p)             (p)->GetUniformScaling(p)
     1042#define IDirect3DRMViewport2_GetX(p)                          (p)->GetX(p)
     1043#define IDirect3DRMViewport2_GetY(p)                          (p)->GetY(p)
     1044#define IDirect3DRMViewport2_GetWidth(p)                      (p)->GetWidth(p)
     1045#define IDirect3DRMViewport2_GetHeight(p)                     (p)->GetHeight(p)
     1046#define IDirect3DRMViewport2_GetField(p)                      (p)->GetField(p)
     1047#define IDirect3DRMViewport2_GetBack(p)                       (p)->GetBack(p)
     1048#define IDirect3DRMViewport2_GetFront(p)                      (p)->GetFront(p)
     1049#define IDirect3DRMViewport2_GetProjection(p)                 (p)->GetProjection(p)
     1050#define IDirect3DRMViewport2_GetDirect3DViewport(p,a)         (p)->GetDirect3DViewport(p,a)
     1051#define IDirect3DRMViewport2_TransformVectors(p,a,b,c)        (p)->TransformVectors(a,b,c)
     1052#define IDirect3DRMViewport2_InverseTransformVectors(p,a,b,c) (p)->InverseTransformVectors(ab,c)
     1053#endif
     1054
     1055/*****************************************************************************
     1056 * IDirect3DRMFrame interface
     1057 */
     1058#define INTERFACE IDirect3DRMFrame
     1059DECLARE_INTERFACE_(IDirect3DRMFrame,IDirect3DRMVisual)
     1060{
     1061    /*** IUnknown methods ***/
     1062    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     1063    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     1064    STDMETHOD_(ULONG,Release)(THIS) PURE;
     1065    /*** IDirect3DRMObject methods ***/
     1066    STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     1067    STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     1068    STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     1069    STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
     1070    STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
     1071    STDMETHOD(SetName)(THIS_ LPCSTR) PURE;
     1072    STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     1073    STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     1074    /*** IDirect3DRMFrame methods ***/
     1075    STDMETHOD(AddChild)(THIS_ LPDIRECT3DRMFRAME child) PURE;
     1076    STDMETHOD(AddLight)(THIS_ LPDIRECT3DRMLIGHT) PURE;
     1077    STDMETHOD(AddMoveCallback)(THIS_ D3DRMFRAMEMOVECALLBACK, VOID *arg) PURE;
     1078    STDMETHOD(AddTransform)(THIS_ D3DRMCOMBINETYPE, D3DRMMATRIX4D) PURE;
     1079    STDMETHOD(AddTranslation)(THIS_ D3DRMCOMBINETYPE, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     1080    STDMETHOD(AddScale)(THIS_ D3DRMCOMBINETYPE, D3DVALUE sx, D3DVALUE sy, D3DVALUE sz) PURE;
     1081    STDMETHOD(AddRotation)(THIS_ D3DRMCOMBINETYPE, D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE theta) PURE;
     1082    STDMETHOD(AddVisual)(THIS_ LPDIRECT3DRMVISUAL) PURE;
     1083    STDMETHOD(GetChildren)(THIS_ LPDIRECT3DRMFRAMEARRAY *children) PURE;
     1084    STDMETHOD_(D3DCOLOR, GetColor)(THIS) PURE;
     1085    STDMETHOD(GetLights)(THIS_ LPDIRECT3DRMLIGHTARRAY *lights) PURE;
     1086    STDMETHOD_(D3DRMMATERIALMODE, GetMaterialMode)(THIS) PURE;
     1087    STDMETHOD(GetParent)(THIS_ LPDIRECT3DRMFRAME *) PURE;
     1088    STDMETHOD(GetPosition)(THIS_ LPDIRECT3DRMFRAME reference, LPD3DVECTOR return_position) PURE;
     1089    STDMETHOD(GetRotation)(THIS_ LPDIRECT3DRMFRAME reference, LPD3DVECTOR axis, LPD3DVALUE return_theta) PURE;
     1090    STDMETHOD(GetScene)(THIS_ LPDIRECT3DRMFRAME *) PURE;
     1091    STDMETHOD_(D3DRMSORTMODE, GetSortMode)(THIS) PURE;
     1092    STDMETHOD(GetTexture)(THIS_ LPDIRECT3DRMTEXTURE *) PURE;
     1093    STDMETHOD(GetTransform)(THIS_ D3DRMMATRIX4D return_matrix) PURE;
     1094    STDMETHOD(GetVelocity)(THIS_ LPDIRECT3DRMFRAME reference, LPD3DVECTOR return_velocity, BOOL with_rotation) PURE;
     1095    STDMETHOD(GetOrientation)(THIS_ LPDIRECT3DRMFRAME reference, LPD3DVECTOR dir, LPD3DVECTOR up) PURE;
     1096    STDMETHOD(GetVisuals)(THIS_ LPDIRECT3DRMVISUALARRAY *visuals) PURE;
     1097    STDMETHOD(GetTextureTopology)(THIS_ BOOL *wrap_u, BOOL *wrap_v) PURE;
     1098    STDMETHOD(InverseTransform)(THIS_ D3DVECTOR *d, D3DVECTOR *s) PURE;
     1099    STDMETHOD(Load)(THIS_ LPVOID filename, LPVOID name, D3DRMLOADOPTIONS loadflags, D3DRMLOADTEXTURECALLBACK,
     1100        LPVOID pArg)PURE;
     1101    STDMETHOD(LookAt)(THIS_ LPDIRECT3DRMFRAME target, LPDIRECT3DRMFRAME reference, D3DRMFRAMECONSTRAINT) PURE;
     1102    STDMETHOD(Move)(THIS_ D3DVALUE delta) PURE;
     1103    STDMETHOD(DeleteChild)(THIS_ LPDIRECT3DRMFRAME) PURE;
     1104    STDMETHOD(DeleteLight)(THIS_ LPDIRECT3DRMLIGHT) PURE;
     1105    STDMETHOD(DeleteMoveCallback)(THIS_ D3DRMFRAMEMOVECALLBACK, VOID *arg) PURE;
     1106    STDMETHOD(DeleteVisual)(THIS_ LPDIRECT3DRMVISUAL) PURE;
     1107    STDMETHOD_(D3DCOLOR, GetSceneBackground)(THIS) PURE;
     1108    STDMETHOD(GetSceneBackgroundDepth)(THIS_ LPDIRECTDRAWSURFACE *) PURE;
     1109    STDMETHOD_(D3DCOLOR, GetSceneFogColor)(THIS) PURE;
     1110    STDMETHOD_(BOOL, GetSceneFogEnable)(THIS) PURE;
     1111    STDMETHOD_(D3DRMFOGMODE, GetSceneFogMode)(THIS) PURE;
     1112    STDMETHOD(GetSceneFogParams)(THIS_ D3DVALUE *return_start, D3DVALUE *return_end, D3DVALUE *return_density) PURE;
     1113    STDMETHOD(SetSceneBackground)(THIS_ D3DCOLOR) PURE;
     1114    STDMETHOD(SetSceneBackgroundRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE;
     1115    STDMETHOD(SetSceneBackgroundDepth)(THIS_ LPDIRECTDRAWSURFACE) PURE;
     1116    STDMETHOD(SetSceneBackgroundImage)(THIS_ LPDIRECT3DRMTEXTURE) PURE;
     1117    STDMETHOD(SetSceneFogEnable)(THIS_ BOOL) PURE;
     1118    STDMETHOD(SetSceneFogColor)(THIS_ D3DCOLOR) PURE;
     1119    STDMETHOD(SetSceneFogMode)(THIS_ D3DRMFOGMODE) PURE;
     1120    STDMETHOD(SetSceneFogParams)(THIS_ D3DVALUE start, D3DVALUE end, D3DVALUE density) PURE;
     1121    STDMETHOD(SetColor)(THIS_ D3DCOLOR) PURE;
     1122    STDMETHOD(SetColorRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE;
     1123    STDMETHOD_(D3DRMZBUFFERMODE, GetZbufferMode)(THIS) PURE;
     1124    STDMETHOD(SetMaterialMode)(THIS_ D3DRMMATERIALMODE) PURE;
     1125    STDMETHOD(SetOrientation)(THIS_ LPDIRECT3DRMFRAME reference, D3DVALUE dx, D3DVALUE dy, D3DVALUE dz,
     1126        D3DVALUE ux, D3DVALUE uy, D3DVALUE uz) PURE;
     1127    STDMETHOD(SetPosition)(THIS_ LPDIRECT3DRMFRAME reference, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     1128    STDMETHOD(SetRotation)(THIS_ LPDIRECT3DRMFRAME reference, D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE theta) PURE;
     1129    STDMETHOD(SetSortMode)(THIS_ D3DRMSORTMODE) PURE;
     1130    STDMETHOD(SetTexture)(THIS_ LPDIRECT3DRMTEXTURE) PURE;
     1131    STDMETHOD(SetTextureTopology)(THIS_ BOOL wrap_u, BOOL wrap_v) PURE;
     1132    STDMETHOD(SetVelocity)(THIS_ LPDIRECT3DRMFRAME reference, D3DVALUE x, D3DVALUE y, D3DVALUE z, BOOL with_rotation) PURE;
     1133    STDMETHOD(SetZbufferMode)(THIS_ D3DRMZBUFFERMODE) PURE;
     1134    STDMETHOD(Transform)(THIS_ D3DVECTOR *d, D3DVECTOR *s) PURE;
     1135};
     1136#undef INTERFACE
     1137
     1138#if !defined(__cplusplus) || defined(CINTERFACE)
     1139/*** IUnknown methods ***/
     1140#define IDirect3DRMFrame_QueryInterface(p,a,b)            (p)->lpVtbl->QueryInterface(p,a,b)
     1141#define IDirect3DRMFrame_AddRef(p)                        (p)->lpVtbl->AddRef(p)
     1142#define IDirect3DRMFrame_Release(p)                       (p)->lpVtbl->Release(p)
     1143/*** IDirect3DRMObject methods ***/
     1144#define IDirect3DRMFrame_Clone(p,a,b,c)                   (p)->lpVtbl->Clone(p,a,b,c)
     1145#define IDirect3DRMFrame_AddDestroyCallback(p,a,b)        (p)->lpVtbl->AddDestroyCallback(p,a,b)
     1146#define IDirect3DRMFrame_DeleteDestroyCallback(p,a,b)     (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
     1147#define IDirect3DRMFrame_SetAppData(p,a)                  (p)->lpVtbl->SetAppData(p,a)
     1148#define IDirect3DRMFrame_GetAppData(p)                    (p)->lpVtbl->GetAppData(p)
     1149#define IDirect3DRMFrame_SetName(p,a)                     (p)->lpVtbl->SetName(p,a)
     1150#define IDirect3DRMFrame_GetName(p,a,b)                   (p)->lpVtbl->GetName(p,a,b)
     1151#define IDirect3DRMFrame_GetClassName(p,a,b)              (p)->lpVtbl->GetClassName(p,a,b)
     1152/*** IDirect3DRMFrame methods ***/
     1153#define IDirect3DRMFrame_AddChild(p,a)                    (p)->lpVtbl->AddChild(p,a)
     1154#define IDirect3DRMFrame_AddLight(p,a)                    (p)->lpVtbl->AddLight(p,a)
     1155#define IDirect3DRMFrame_AddMoveCallback(p,a,b)           (p)->lpVtbl->AddMoveCallback(p,a,b)
     1156#define IDirect3DRMFrame_AddTransform(p,a,b)              (p)->lpVtbl->AddTransform(p,a,b)
     1157#define IDirect3DRMFrame_AddTranslation(p,a,b,c,d)        (p)->lpVtbl->AddTranslation(p,a,b,c,d)
     1158#define IDirect3DRMFrame_AddScale(p,a,b,c,d)              (p)->lpVtbl->AddScale(p,a,b,c,d)
     1159#define IDirect3DRMFrame_AddRotation(p,a,b,c,d,e)         (p)->lpVtbl->AddRotation(p,a,b,c,d,e)
     1160#define IDirect3DRMFrame_AddVisual(p,a)                   (p)->lpVtbl->AddVisual(p,a)
     1161#define IDirect3DRMFrame_GetChildren(p,a)                 (p)->lpVtbl->GetChildren(p,a)
     1162#define IDirect3DRMFrame_GetColor(p)                      (p)->lpVtbl->GetColor(p)
     1163#define IDirect3DRMFrame_GetLights(p,a)                   (p)->lpVtbl->GetLights(p,a)
     1164#define IDirect3DRMFrame_GetMaterialMode(p)               (p)->lpVtbl->GetMaterialMode(p)
     1165#define IDirect3DRMFrame_GetParent(p,a)                   (p)->lpVtbl->GetParent(p,a)
     1166#define IDirect3DRMFrame_GetPosition(p,a,b)               (p)->lpVtbl->GetPosition(p,a,b)
     1167#define IDirect3DRMFrame_GetRotation(p,a,b,c)             (p)->lpVtbl->GetRotation(p,a,b,c)
     1168#define IDirect3DRMFrame_GetScene(p,a)                    (p)->lpVtbl->GetScene(p,a)
     1169#define IDirect3DRMFrame_GetSortMode(p)                   (p)->lpVtbl->GetSortMode(p)
     1170#define IDirect3DRMFrame_GetTexture(p,a)                  (p)->lpVtbl->GetTexture(p,a)
     1171#define IDirect3DRMFrame_GetTransform(p,a)                (p)->lpVtbl->GetTransform(p,a)
     1172#define IDirect3DRMFrame_GetVelocity(p,a,b,c)             (p)->lpVtbl->GetVelocity(p,a,b,c)
     1173#define IDirect3DRMFrame_GetOrientation(p,a,b,c)          (p)->lpVtbl->GetOrientation(p,a,b,c)
     1174#define IDirect3DRMFrame_GetVisuals(p,a)                  (p)->lpVtbl->GetVisuals(p,a)
     1175#define IDirect3DRMFrame_GetTextureTopology(p,a,b)        (p)->lpVtbl->GetTextureTopology(p,a,b)
     1176#define IDirect3DRMFrame_InverseTransform(p,a,b)          (p)->lpVtbl->InverseTransform(p,a,b)
     1177#define IDirect3DRMFrame_Load(p,a,b,c,d,e)                (p)->lpVtbl->Load(p,a,b,c,d,e)
     1178#define IDirect3DRMFrame_LookAt(p,a,b,c)                  (p)->lpVtbl->LookAt(p,a,b,c)
     1179#define IDirect3DRMFrame_Move(p,a)                        (p)->lpVtbl->Move(p,a)
     1180#define IDirect3DRMFrame_DeleteChild(p,a)                 (p)->lpVtbl->DeleteChild(p,a)
     1181#define IDirect3DRMFrame_DeleteLight(p,a)                 (p)->lpVtbl->DeleteLight(p,a)
     1182#define IDirect3DRMFrame_DeleteMoveCallback(p,a,b)        (p)->lpVtbl->DeleteMoveCallback(p,a,b)
     1183#define IDirect3DRMFrame_DeleteVisual(p,a)                (p)->lpVtbl->DeleteVisual(p,a)
     1184#define IDirect3DRMFrame_GetSceneBackground(p)            (p)->lpVtbl->GetSceneBackground(p)
     1185#define IDirect3DRMFrame_GetSceneBackgroundDepth(p,a)     (p)->lpVtbl->GetSceneBackgroundDepth(p,a)
     1186#define IDirect3DRMFrame_GetSceneFogColor(p)              (p)->lpVtbl->GetSceneFogColor(p)
     1187#define IDirect3DRMFrame_GetSceneFogEnable(p)             (p)->lpVtbl->GetSceneFogEnable(p)
     1188#define IDirect3DRMFrame_GetSceneFogMode(p)               (p)->lpVtbl->GetSceneFogMode(p)
     1189#define IDirect3DRMFrame_GetSceneFogParams(p,a,b,c)       (p)->lpVtbl->GetSceneFogParams(p,a,b,c)
     1190#define IDirect3DRMFrame_SetSceneBackground(p,a)          (p)->lpVtbl->SetSceneBackground(p,a)
     1191#define IDirect3DRMFrame_SetSceneBackgroundRGB(p,a,b,c)   (p)->lpVtbl->SetSceneBackgroundRGB(p,a,b,c)
     1192#define IDirect3DRMFrame_SetSceneBackgroundDepth(p,a)     (p)->lpVtbl->SetSceneBackgroundDepth(p,a)
     1193#define IDirect3DRMFrame_SetSceneBackgroundImage(p,a)     (p)->lpVtbl->SetSceneBackgroundImage(p,a)
     1194#define IDirect3DRMFrame_SetSceneFogEnable(p,a)           (p)->lpVtbl->SetSceneFogEnable(p,a)
     1195#define IDirect3DRMFrame_SetSceneFogColor(p,a)            (p)->lpVtbl->SetSceneFogColor(p,a)
     1196#define IDirect3DRMFrame_SetSceneFogMode(p,a)             (p)->lpVtbl->SetSceneFogMode(p,a)
     1197#define IDirect3DRMFrame_SetSceneFogParams(p,a,b,c)       (p)->lpVtbl->SetSceneFogParams(p,a,b,c)
     1198#define IDirect3DRMFrame_SetColor(p,a)                    (p)->lpVtbl->SetColor(p,a)
     1199#define IDirect3DRMFrame_SetColorRGB(p,a,b,c)             (p)->lpVtbl->SetColorRGB(p,a,b,c)
     1200#define IDirect3DRMFrame_GetZbufferMode(p)                (p)->lpVtbl->GetZbufferMode(p)
     1201#define IDirect3DRMFrame_SetMaterialMode(p,a)             (p)->lpVtbl->SetMaterialMode(p,a)
     1202#define IDirect3DRMFrame_SetOrientation(p,a,b,c,d,e,f,g)  (p)->lpVtbl->SetOrientation(p,a,b,c,d,e,f,g)
     1203#define IDirect3DRMFrame_SetPosition(p,a,b,c,d)           (p)->lpVtbl->SetPosition(p,a,b,c,d)
     1204#define IDirect3DRMFrame_SetRotation(p,a,b,c,d,e)         (p)->lpVtbl->SetRotation(p,a,b,c,d,e)
     1205#define IDirect3DRMFrame_SetSortMode(p,a)                 (p)->lpVtbl->SetSortMode(p,a)
     1206#define IDirect3DRMFrame_SetTexture(p,a)                  (p)->lpVtbl->SetTexture(p,a)
     1207#define IDirect3DRMFrame_SetTextureTopology(p,a,b)        (p)->lpVtbl->SetTextureTopology(p,a,b)
     1208#define IDirect3DRMFrame_SetVelocity(p,a,b,c,d,e)         (p)->lpVtbl->SetVelocity(p,a,b,c,d,e)
     1209#define IDirect3DRMFrame_SetZbufferMode(p,a)              (p)->lpVtbl->SetZbufferMode(p,a)
     1210#define IDirect3DRMFrame_Transform(p,a,b)                 (p)->lpVtbl->Transform(p,a,b)
     1211#else
     1212/*** IUnknown methods ***/
     1213#define IDirect3DRMFrame_QueryInterface(p,a,b)            (p)->QueryInterface(a,b)
     1214#define IDirect3DRMFrame_AddRef(p)                        (p)->AddRef()
     1215#define IDirect3DRMFrame_Release(p)                       (p)->Release()
     1216/*** IDirect3DRMObject methods ***/
     1217#define IDirect3DRMFrame_Clone(p,a,b,c)                   (p)->Clone(a,b,c)
     1218#define IDirect3DRMFrame_AddDestroyCallback(p,a,b)        (p)->AddDestroyCallback(a,b)
     1219#define IDirect3DRMFrame_DeleteDestroyCallback(p,a,b)     (p)->DeleteDestroyCallback(a,b)
     1220#define IDirect3DRMFrame_SetAppData(p,a)                  (p)->SetAppData(a)
     1221#define IDirect3DRMFrame_GetAppData(p)                    (p)->GetAppData()
     1222#define IDirect3DRMFrame_SetName(p,a)                     (p)->SetName(a)
     1223#define IDirect3DRMFrame_GetName(p,a,b)                   (p)->GetName(a,b)
     1224#define IDirect3DRMFrame_GetClassName(p,a,b)              (p)->GetClassName(a,b)
     1225/*** IDirect3DRMFrame methods ***/
     1226#define IDirect3DRMFrame_AddChild(p,a)                    (p)->AddChild(a)
     1227#define IDirect3DRMFrame_AddLight(p,a)                    (p)->AddLight(a)
     1228#define IDirect3DRMFrame_AddMoveCallback(p,a,b)           (p)->AddMoveCallback(a,b)
     1229#define IDirect3DRMFrame_AddTransform(p,a,b)              (p)->AddTransform(a,b)
     1230#define IDirect3DRMFrame_AddTranslation(p,a,b,c,d)        (p)->AddTranslation(a,b,c,d)
     1231#define IDirect3DRMFrame_AddScale(p,a,b,c,d)              (p)->AddScale(a,b,c,d)
     1232#define IDirect3DRMFrame_AddRotation(p,a,b,c,d,e)         (p)->AddRotation(a,b,c,d,e)
     1233#define IDirect3DRMFrame_AddVisual(p,a)                   (p)->AddVisual(a)
     1234#define IDirect3DRMFrame_GetChildren(p,a)                 (p)->GetChildren(a)
     1235#define IDirect3DRMFrame_GetColor(p)                      (p)->GetColor()
     1236#define IDirect3DRMFrame_GetLights(p,a)                   (p)->GetLights(a)
     1237#define IDirect3DRMFrame_GetMaterialMode(p)               (p)->GetMaterialMode()
     1238#define IDirect3DRMFrame_GetParent(p,a)                   (p)->GetParent(a)
     1239#define IDirect3DRMFrame_GetPosition(p,a,b)               (p)->GetPosition(a,b)
     1240#define IDirect3DRMFrame_GetRotation(p,a,b,c)             (p)->GetRotation(a,b,c)
     1241#define IDirect3DRMFrame_GetScene(p,a)                    (p)->GetScene(a)
     1242#define IDirect3DRMFrame_GetSortMode(p)                   (p)->GetSortMode()
     1243#define IDirect3DRMFrame_GetTexture(p,a)                  (p)->GetTexture(a)
     1244#define IDirect3DRMFrame_GetTransform(p,a)                (p)->GetTransform(a)
     1245#define IDirect3DRMFrame_GetVelocity(p,a,b,c)             (p)->GetVelocity(a,b,c)
     1246#define IDirect3DRMFrame_GetOrientation(p,a,b,c)          (p)->GetOrientation(a,b,c)
     1247#define IDirect3DRMFrame_GetVisuals(p,a)                  (p)->GetVisuals(a)
     1248#define IDirect3DRMFrame_GetTextureTopology(p,a,b)        (p)->GetTextureTopology(a,b)
     1249#define IDirect3DRMFrame_InverseTransform(p,a,b)          (p)->InverseTransform(a,b)
     1250#define IDirect3DRMFrame_Load(p,a,b,c,d,e)                (p)->Load(a,b,c,d,e)
     1251#define IDirect3DRMFrame_LookAt(p,a,b,c)                  (p)->LookAt(a,b,c)
     1252#define IDirect3DRMFrame_Move(p,a)                        (p)->Move(a)
     1253#define IDirect3DRMFrame_DeleteChild(p,a)                 (p)->DeleteChild(a)
     1254#define IDirect3DRMFrame_DeleteLight(p,a)                 (p)->DeleteLight(a)
     1255#define IDirect3DRMFrame_DeleteMoveCallback(p,a,b)        (p)->DeleteMoveCallback(a,b)
     1256#define IDirect3DRMFrame_DeleteVisual(p,a)                (p)->DeleteVisual(a)
     1257#define IDirect3DRMFrame_GetSceneBackground(p)            (p)->GetSceneBackground()
     1258#define IDirect3DRMFrame_GetSceneBackgroundDepth(p,a)     (p)->GetSceneBackgroundDepth(a)
     1259#define IDirect3DRMFrame_GetSceneFogColor(p)              (p)->GetSceneFogColor()
     1260#define IDirect3DRMFrame_GetSceneFogEnable(p)             (p)->GetSceneFogEnable()
     1261#define IDirect3DRMFrame_GetSceneFogMode(p)               (p)->GetSceneFogMode()
     1262#define IDirect3DRMFrame_GetSceneFogParams(p,a,b,c)       (p)->GetSceneFogParams(a,b,c)
     1263#define IDirect3DRMFrame_SetSceneBackground(p,a)          (p)->SetSceneBackground(a)
     1264#define IDirect3DRMFrame_SetSceneBackgroundRGB(p,a,b,c)   (p)->SetSceneBackgroundRGB(a,b,c)
     1265#define IDirect3DRMFrame_SetSceneBackgroundDepth(p,a)     (p)->SetSceneBackgroundDepth(a)
     1266#define IDirect3DRMFrame_SetSceneBackgroundImage(p,a)     (p)->SetSceneBackgroundImage(a)
     1267#define IDirect3DRMFrame_SetSceneFogEnable(p,a)           (p)->SetSceneFogEnable(a)
     1268#define IDirect3DRMFrame_SetSceneFogColor(p,a)            (p)->SetSceneFogColor(a)
     1269#define IDirect3DRMFrame_SetSceneFogMode(p,a)             (p)->SetSceneFogMode(a)
     1270#define IDirect3DRMFrame_SetSceneFogParams(p,a,b,c)       (p)->SetSceneFogParams(a,b,c)
     1271#define IDirect3DRMFrame_SetColor(p,a)                    (p)->SetColor(a)
     1272#define IDirect3DRMFrame_SetColorRGB(p,a,b,c)             (p)->SetColorRGB(a,b,c)
     1273#define IDirect3DRMFrame_GetZbufferMode(p)                (p)->GetZbufferMode()
     1274#define IDirect3DRMFrame_SetMaterialMode(p,a)             (p)->SetMaterialMode(a)
     1275#define IDirect3DRMFrame_SetOrientation(p,a,b,c,d,e,f,g)  (p)->SetOrientation(a,b,c,d,e,f,g)
     1276#define IDirect3DRMFrame_SetPosition(p,a,b,c,d)           (p)->SetPosition(a,b,c,d)
     1277#define IDirect3DRMFrame_SetRotation(p,a,b,c,d,e)         (p)->SetRotation(a,b,c,d,e)
     1278#define IDirect3DRMFrame_SetSortMode(p,a)                 (p)->SetSortMode(a)
     1279#define IDirect3DRMFrame_SetTexture(p,a)                  (p)->SetTexture(a)
     1280#define IDirect3DRMFrame_SetTextureTopology(p,a,b)        (p)->SetTextureTopology(a,b)
     1281#define IDirect3DRMFrame_SetVelocity(p,a,b,c,d,e)         (p)->SetVelocity(a,b,c,d,e)
     1282#define IDirect3DRMFrame_SetZbufferMode(p,a)              (p)->SetZbufferMode(a)
     1283#define IDirect3DRMFrame_Transform(p,a,b)                 (p)->Transform(a,b)
     1284#endif
     1285
     1286/*****************************************************************************
     1287 * IDirect3DRMFrame2 interface
     1288 */
     1289#define INTERFACE IDirect3DRMFrame2
     1290DECLARE_INTERFACE_(IDirect3DRMFrame2,IDirect3DRMFrame)
     1291{
     1292    /*** IUnknown methods ***/
     1293    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     1294    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     1295    STDMETHOD_(ULONG,Release)(THIS) PURE;
     1296    /*** IDirect3DRMObject methods ***/
     1297    STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     1298    STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     1299    STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     1300    STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
     1301    STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
     1302    STDMETHOD(SetName)(THIS_ LPCSTR) PURE;
     1303    STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     1304    STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     1305    /*** IDirect3DRMFrame methods ***/
     1306    STDMETHOD(AddChild)(THIS_ LPDIRECT3DRMFRAME child) PURE;
     1307    STDMETHOD(AddLight)(THIS_ LPDIRECT3DRMLIGHT) PURE;
     1308    STDMETHOD(AddMoveCallback)(THIS_ D3DRMFRAMEMOVECALLBACK, VOID *arg) PURE;
     1309    STDMETHOD(AddTransform)(THIS_ D3DRMCOMBINETYPE, D3DRMMATRIX4D) PURE;
     1310    STDMETHOD(AddTranslation)(THIS_ D3DRMCOMBINETYPE, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     1311    STDMETHOD(AddScale)(THIS_ D3DRMCOMBINETYPE, D3DVALUE sx, D3DVALUE sy, D3DVALUE sz) PURE;
     1312    STDMETHOD(AddRotation)(THIS_ D3DRMCOMBINETYPE, D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE theta) PURE;
     1313    STDMETHOD(AddVisual)(THIS_ LPDIRECT3DRMVISUAL) PURE;
     1314    STDMETHOD(GetChildren)(THIS_ LPDIRECT3DRMFRAMEARRAY *children) PURE;
     1315    STDMETHOD_(D3DCOLOR, GetColor)(THIS) PURE;
     1316    STDMETHOD(GetLights)(THIS_ LPDIRECT3DRMLIGHTARRAY *lights) PURE;
     1317    STDMETHOD_(D3DRMMATERIALMODE, GetMaterialMode)(THIS) PURE;
     1318    STDMETHOD(GetParent)(THIS_ LPDIRECT3DRMFRAME *) PURE;
     1319    STDMETHOD(GetPosition)(THIS_ LPDIRECT3DRMFRAME reference, LPD3DVECTOR return_position) PURE;
     1320    STDMETHOD(GetRotation)(THIS_ LPDIRECT3DRMFRAME reference, LPD3DVECTOR axis, LPD3DVALUE return_theta) PURE;
     1321    STDMETHOD(GetScene)(THIS_ LPDIRECT3DRMFRAME *) PURE;
     1322    STDMETHOD_(D3DRMSORTMODE, GetSortMode)(THIS) PURE;
     1323    STDMETHOD(GetTexture)(THIS_ LPDIRECT3DRMTEXTURE *) PURE;
     1324    STDMETHOD(GetTransform)(THIS_ D3DRMMATRIX4D return_matrix) PURE;
     1325    STDMETHOD(GetVelocity)(THIS_ LPDIRECT3DRMFRAME reference, LPD3DVECTOR return_velocity, BOOL with_rotation) PURE;
     1326    STDMETHOD(GetOrientation)(THIS_ LPDIRECT3DRMFRAME reference, LPD3DVECTOR dir, LPD3DVECTOR up) PURE;
     1327    STDMETHOD(GetVisuals)(THIS_ LPDIRECT3DRMVISUALARRAY *visuals) PURE;
     1328    STDMETHOD(GetTextureTopology)(THIS_ BOOL *wrap_u, BOOL *wrap_v) PURE;
     1329    STDMETHOD(InverseTransform)(THIS_ D3DVECTOR *d, D3DVECTOR *s) PURE;
     1330    STDMETHOD(Load)(THIS_ LPVOID filename, LPVOID name, D3DRMLOADOPTIONS loadflags, D3DRMLOADTEXTURECALLBACK,
     1331        LPVOID pArg)PURE;
     1332    STDMETHOD(LookAt)(THIS_ LPDIRECT3DRMFRAME target, LPDIRECT3DRMFRAME reference, D3DRMFRAMECONSTRAINT) PURE;
     1333    STDMETHOD(Move)(THIS_ D3DVALUE delta) PURE;
     1334    STDMETHOD(DeleteChild)(THIS_ LPDIRECT3DRMFRAME) PURE;
     1335    STDMETHOD(DeleteLight)(THIS_ LPDIRECT3DRMLIGHT) PURE;
     1336    STDMETHOD(DeleteMoveCallback)(THIS_ D3DRMFRAMEMOVECALLBACK, VOID *arg) PURE;
     1337    STDMETHOD(DeleteVisual)(THIS_ LPDIRECT3DRMVISUAL) PURE;
     1338    STDMETHOD_(D3DCOLOR, GetSceneBackground)(THIS) PURE;
     1339    STDMETHOD(GetSceneBackgroundDepth)(THIS_ LPDIRECTDRAWSURFACE *) PURE;
     1340    STDMETHOD_(D3DCOLOR, GetSceneFogColor)(THIS) PURE;
     1341    STDMETHOD_(BOOL, GetSceneFogEnable)(THIS) PURE;
     1342    STDMETHOD_(D3DRMFOGMODE, GetSceneFogMode)(THIS) PURE;
     1343    STDMETHOD(GetSceneFogParams)(THIS_ D3DVALUE *return_start, D3DVALUE *return_end, D3DVALUE *return_density) PURE;
     1344    STDMETHOD(SetSceneBackground)(THIS_ D3DCOLOR) PURE;
     1345    STDMETHOD(SetSceneBackgroundRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE;
     1346    STDMETHOD(SetSceneBackgroundDepth)(THIS_ LPDIRECTDRAWSURFACE) PURE;
     1347    STDMETHOD(SetSceneBackgroundImage)(THIS_ LPDIRECT3DRMTEXTURE) PURE;
     1348    STDMETHOD(SetSceneFogEnable)(THIS_ BOOL) PURE;
     1349    STDMETHOD(SetSceneFogColor)(THIS_ D3DCOLOR) PURE;
     1350    STDMETHOD(SetSceneFogMode)(THIS_ D3DRMFOGMODE) PURE;
     1351    STDMETHOD(SetSceneFogParams)(THIS_ D3DVALUE start, D3DVALUE end, D3DVALUE density) PURE;
     1352    STDMETHOD(SetColor)(THIS_ D3DCOLOR) PURE;
     1353    STDMETHOD(SetColorRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE;
     1354    STDMETHOD_(D3DRMZBUFFERMODE, GetZbufferMode)(THIS) PURE;
     1355    STDMETHOD(SetMaterialMode)(THIS_ D3DRMMATERIALMODE) PURE;
     1356    STDMETHOD(SetOrientation)(THIS_ LPDIRECT3DRMFRAME reference, D3DVALUE dx, D3DVALUE dy, D3DVALUE dz,
     1357        D3DVALUE ux, D3DVALUE uy, D3DVALUE uz) PURE;
     1358    STDMETHOD(SetPosition)(THIS_ LPDIRECT3DRMFRAME reference, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     1359    STDMETHOD(SetRotation)(THIS_ LPDIRECT3DRMFRAME reference, D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE theta) PURE;
     1360    STDMETHOD(SetSortMode)(THIS_ D3DRMSORTMODE) PURE;
     1361    STDMETHOD(SetTexture)(THIS_ LPDIRECT3DRMTEXTURE) PURE;
     1362    STDMETHOD(SetTextureTopology)(THIS_ BOOL wrap_u, BOOL wrap_v) PURE;
     1363    STDMETHOD(SetVelocity)(THIS_ LPDIRECT3DRMFRAME reference, D3DVALUE x, D3DVALUE y, D3DVALUE z, BOOL with_rotation) PURE;
     1364    STDMETHOD(SetZbufferMode)(THIS_ D3DRMZBUFFERMODE) PURE;
     1365    STDMETHOD(Transform)(THIS_ D3DVECTOR *d, D3DVECTOR *s) PURE;
     1366    /*** IDirect3DRMFrame2 methods ***/
     1367    STDMETHOD(AddMoveCallback2)(THIS_ D3DRMFRAMEMOVECALLBACK, VOID *arg, DWORD flags) PURE;
     1368    STDMETHOD(GetBox)(THIS_ LPD3DRMBOX) PURE;
     1369    STDMETHOD_(BOOL, GetBoxEnable)(THIS) PURE;
     1370    STDMETHOD(GetAxes)(THIS_ LPD3DVECTOR dir, LPD3DVECTOR up);
     1371    STDMETHOD(GetMaterial)(THIS_ LPDIRECT3DRMMATERIAL *) PURE;
     1372    STDMETHOD_(BOOL, GetInheritAxes)(THIS);
     1373    STDMETHOD(GetHierarchyBox)(THIS_ LPD3DRMBOX) PURE;
     1374    STDMETHOD(SetBox)(THIS_ LPD3DRMBOX) PURE;
     1375    STDMETHOD(SetBoxEnable)(THIS_ BOOL) PURE;
     1376    STDMETHOD(SetAxes)(THIS_ D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE uz);
     1377    STDMETHOD(SetInheritAxes)(THIS_ BOOL inherit_from_parent);
     1378    STDMETHOD(SetMaterial)(THIS_ LPDIRECT3DRMMATERIAL) PURE;
     1379    STDMETHOD(SetQuaternion)(THIS_ LPDIRECT3DRMFRAME reference, D3DRMQUATERNION *q) PURE;
     1380    STDMETHOD(RayPick)(THIS_ LPDIRECT3DRMFRAME reference, LPD3DRMRAY ray, DWORD flags,
     1381        LPDIRECT3DRMPICKED2ARRAY *return_visuals) PURE;
     1382    STDMETHOD(Save)(THIS_ LPCSTR filename, D3DRMXOFFORMAT d3dFormat, D3DRMSAVEOPTIONS d3dSaveFlags);
     1383};
     1384#undef INTERFACE
     1385
     1386#if !defined(__cplusplus) || defined(CINTERFACE)
     1387/*** IUnknown methods ***/
     1388#define IDirect3DRMFrame2_QueryInterface(p,a,b)            (p)->lpVtbl->QueryInterface(p,a,b)
     1389#define IDirect3DRMFrame2_AddRef(p)                        (p)->lpVtbl->AddRef(p)
     1390#define IDirect3DRMFrame2_Release(p)                       (p)->lpVtbl->Release(p)
     1391/*** IDirect3DRMObject methods ***/
     1392#define IDirect3DRMFrame2_Clone(p,a,b,c)                   (p)->lpVtbl->Clone(p,a,b,c)
     1393#define IDirect3DRMFrame2_AddDestroyCallback(p,a,b)        (p)->lpVtbl->AddDestroyCallback(p,a,b)
     1394#define IDirect3DRMFrame2_DeleteDestroyCallback(p,a,b)     (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
     1395#define IDirect3DRMFrame2_SetAppData(p,a)                  (p)->lpVtbl->SetAppData(p,a)
     1396#define IDirect3DRMFrame2_GetAppData(p)                    (p)->lpVtbl->GetAppData(p)
     1397#define IDirect3DRMFrame2_SetName(p,a)                     (p)->lpVtbl->SetName(p,a)
     1398#define IDirect3DRMFrame2_GetName(p,a,b)                   (p)->lpVtbl->GetName(p,a,b)
     1399#define IDirect3DRMFrame2_GetClassName(p,a,b)              (p)->lpVtbl->GetClassName(p,a,b)
     1400/*** IDirect3DRMFrame methods ***/
     1401#define IDirect3DRMFrame2_AddChild(p,a)                    (p)->lpVtbl->AddChild(p,a)
     1402#define IDirect3DRMFrame2_AddLight(p,a)                    (p)->lpVtbl->AddLight(p,a)
     1403#define IDirect3DRMFrame2_AddMoveCallback(p,a,b)           (p)->lpVtbl->AddMoveCallback(p,a,b)
     1404#define IDirect3DRMFrame2_AddTransform(p,a,b)              (p)->lpVtbl->AddTransform(p,a,b)
     1405#define IDirect3DRMFrame2_AddTranslation(p,a,b,c,d)        (p)->lpVtbl->AddTranslation(p,a,b,c,d)
     1406#define IDirect3DRMFrame2_AddScale(p,a,b,c,d)              (p)->lpVtbl->AddScale(p,a,b,c,d)
     1407#define IDirect3DRMFrame2_AddRotation(p,a,b,c,d,e)         (p)->lpVtbl->AddRotation(p,a,b,c,d,e)
     1408#define IDirect3DRMFrame2_AddVisual(p,a)                   (p)->lpVtbl->AddVisual(p,a)
     1409#define IDirect3DRMFrame2_GetChildren(p,a)                 (p)->lpVtbl->GetChildren(p,a)
     1410#define IDirect3DRMFrame2_GetColor(p)                      (p)->lpVtbl->GetColor(p)
     1411#define IDirect3DRMFrame2_GetLights(p,a)                   (p)->lpVtbl->GetLights(p,a)
     1412#define IDirect3DRMFrame2_GetMaterialMode(p)               (p)->lpVtbl->GetMaterialMode(p)
     1413#define IDirect3DRMFrame2_GetParent(p,a)                   (p)->lpVtbl->GetParent(p,a)
     1414#define IDirect3DRMFrame2_GetPosition(p,a,b)               (p)->lpVtbl->GetPosition(p,a,b)
     1415#define IDirect3DRMFrame2_GetRotation(p,a,b,c)             (p)->lpVtbl->GetRotation(p,a,b,c)
     1416#define IDirect3DRMFrame2_GetScene(p,a)                    (p)->lpVtbl->GetScene(p,a)
     1417#define IDirect3DRMFrame2_GetSortMode(p)                   (p)->lpVtbl->GetSortMode(p)
     1418#define IDirect3DRMFrame2_GetTexture(p,a)                  (p)->lpVtbl->GetTexture(p,a)
     1419#define IDirect3DRMFrame2_GetTransform(p,a)                (p)->lpVtbl->GetTransform(p,a)
     1420#define IDirect3DRMFrame2_GetVelocity(p,a,b,c)             (p)->lpVtbl->GetVelocity(p,a,b,c)
     1421#define IDirect3DRMFrame2_GetOrientation(p,a,b,c)          (p)->lpVtbl->GetOrientation(p,a,b,c)
     1422#define IDirect3DRMFrame2_GetVisuals(p,a)                  (p)->lpVtbl->GetVisuals(p,a)
     1423#define IDirect3DRMFrame2_GetTextureTopology(p,a,b)        (p)->lpVtbl->GetTextureTopology(p,a,b)
     1424#define IDirect3DRMFrame2_InverseTransform(p,a,b)          (p)->lpVtbl->InverseTransform(p,a,b)
     1425#define IDirect3DRMFrame2_Load(p,a,b,c,d,e)                (p)->lpVtbl->Load(p,a,b,c,d,e)
     1426#define IDirect3DRMFrame2_LookAt(p,a,b,c)                  (p)->lpVtbl->LookAt(p,a,b,c)
     1427#define IDirect3DRMFrame2_Move(p,a)                        (p)->lpVtbl->Move(p,a)
     1428#define IDirect3DRMFrame2_DeleteChild(p,a)                 (p)->lpVtbl->DeleteChild(p,a)
     1429#define IDirect3DRMFrame2_DeleteLight(p,a)                 (p)->lpVtbl->DeleteLight(p,a)
     1430#define IDirect3DRMFrame2_DeleteMoveCallback(p,a,b)        (p)->lpVtbl->DeleteMoveCallback(p,a,b)
     1431#define IDirect3DRMFrame2_DeleteVisual(p,a)                (p)->lpVtbl->DeleteVisual(p,a)
     1432#define IDirect3DRMFrame2_GetSceneBackground(p)            (p)->lpVtbl->GetSceneBackground(p)
     1433#define IDirect3DRMFrame2_GetSceneBackgroundDepth(p,a)     (p)->lpVtbl->GetSceneBackgroundDepth(p,a)
     1434#define IDirect3DRMFrame2_GetSceneFogColor(p)              (p)->lpVtbl->GetSceneFogColor(p)
     1435#define IDirect3DRMFrame2_GetSceneFogEnable(p)             (p)->lpVtbl->GetSceneFogEnable(p)
     1436#define IDirect3DRMFrame2_GetSceneFogMode(p)               (p)->lpVtbl->GetSceneFogMode(p)
     1437#define IDirect3DRMFrame2_GetSceneFogParams(p,a,b,c)       (p)->lpVtbl->GetSceneFogParams(p,a,b,c)
     1438#define IDirect3DRMFrame2_SetSceneBackground(p,a)          (p)->lpVtbl->SetSceneBackground(p,a)
     1439#define IDirect3DRMFrame2_SetSceneBackgroundRGB(p,a,b,c)   (p)->lpVtbl->SetSceneBackgroundRGB(p,a,b,c)
     1440#define IDirect3DRMFrame2_SetSceneBackgroundDepth(p,a)     (p)->lpVtbl->SetSceneBackgroundDepth(p,a)
     1441#define IDirect3DRMFrame2_SetSceneBackgroundImage(p,a)     (p)->lpVtbl->SetSceneBackgroundImage(p,a)
     1442#define IDirect3DRMFrame2_SetSceneFogEnable(p,a)           (p)->lpVtbl->SetSceneFogEnable(p,a)
     1443#define IDirect3DRMFrame2_SetSceneFogColor(p,a)            (p)->lpVtbl->SetSceneFogColor(p,a)
     1444#define IDirect3DRMFrame2_SetSceneFogMode(p,a)             (p)->lpVtbl->SetSceneFogMode(p,a)
     1445#define IDirect3DRMFrame2_SetSceneFogParams(p,a,b,c)       (p)->lpVtbl->SetSceneFogParams(p,a,b,c)
     1446#define IDirect3DRMFrame2_SetColor(p,a)                    (p)->lpVtbl->SetColor(p,a)
     1447#define IDirect3DRMFrame2_SetColorRGB(p,a,b,c)             (p)->lpVtbl->SetColorRGB(p,a,b,c)
     1448#define IDirect3DRMFrame2_GetZbufferMode(p)                (p)->lpVtbl->GetZbufferMode(p)
     1449#define IDirect3DRMFrame2_SetMaterialMode(p,a)             (p)->lpVtbl->SetMaterialMode(p,a)
     1450#define IDirect3DRMFrame2_SetOrientation(p,a,b,c,d,e,f,g)  (p)->lpVtbl->SetOrientation(p,a,b,c,d,e,f,g)
     1451#define IDirect3DRMFrame2_SetPosition(p,a,b,c,d)           (p)->lpVtbl->SetPosition(p,a,b,c,d)
     1452#define IDirect3DRMFrame2_SetRotation(p,a,b,c,d,e)         (p)->lpVtbl->SetRotation(p,a,b,c,d,e)
     1453#define IDirect3DRMFrame2_SetSortMode(p,a)                 (p)->lpVtbl->SetSortMode(p,a)
     1454#define IDirect3DRMFrame2_SetTexture(p,a)                  (p)->lpVtbl->SetTexture(p,a)
     1455#define IDirect3DRMFrame2_SetTextureTopology(p,a,b)        (p)->lpVtbl->SetTextureTopology(p,a,b)
     1456#define IDirect3DRMFrame2_SetVelocity(p,a,b,c,d,e)         (p)->lpVtbl->SetVelocity(p,a,b,c,d,e)
     1457#define IDirect3DRMFrame2_SetZbufferMode(p,a)              (p)->lpVtbl->SetZbufferMode(p,a)
     1458#define IDirect3DRMFrame2_Transform(p,a,b)                 (p)->lpVtbl->Transform(p,a,b)
     1459/*** IDirect3DRMFrame2 methods ***/
     1460#define IDirect3DRMFrame2_AddMoveCallback2(p,a,b,c)        (p)->lpVtbl->AddMoveCallback2(p,a,b,c)
     1461#define IDirect3DRMFrame2_GetBox(p,a)                      (p)->lpVtbl->GetBox(p,a)
     1462#define IDirect3DRMFrame2_GetBoxEnable(p)                  (p)->lpVtbl->GetBoxEnable(p)
     1463#define IDirect3DRMFrame2_GetAxes(p,a,b)                   (p)->lpVtbl->GetAxes(p,a,b)
     1464#define IDirect3DRMFrame2_GetMaterial(p,a)                 (p)->lpVtbl->GetMaterial(p,a)
     1465#define IDirect3DRMFrame2_GetInheritAxes(p,a,b)            (p)->lpVtbl->GetInheritAxes(p,a,b)
     1466#define IDirect3DRMFrame2_GetHierarchyBox(p,a)             (p)->lpVtbl->GetHierarchyBox(p,a)
     1467#define IDirect3DRMFrame2_SetBox(p,a)                      (p)->lpVtbl->SetBox(p,a)
     1468#define IDirect3DRMFrame2_SetBoxEnable(p,a)                (p)->lpVtbl->SetBoxEnable(p,a)
     1469#define IDirect3DRMFrame2_SetAxes(p,a,b,c,d,e,f)           (p)->lpVtbl->SetAxes(p,a,b,c,d,e,f)
     1470#define IDirect3DRMFrame2_SetInheritAxes(p,a)              (p)->lpVtbl->SetInheritAxes(p,a)
     1471#define IDirect3DRMFrame2_SetMaterial(p,a)                 (p)->lpVtbl->SetMaterial(p,a)
     1472#define IDirect3DRMFrame2_SetQuaternion(p,a,b)             (p)->lpVtbl->SetQuaternion(p,a,b)
     1473#define IDirect3DRMFrame2_RayPick(p,a,b,c,d)               (p)->lpVtbl->RayPick(p,a,b,c,d)
     1474#define IDirect3DRMFrame2_Save(p,a,b,c)                    (p)->lpVtbl->Save(p,a,b,c)
     1475#else
     1476/*** IUnknown methods ***/
     1477#define IDirect3DRMFrame2_QueryInterface(p,a,b)            (p)->QueryInterface(a,b)
     1478#define IDirect3DRMFrame2_AddRef(p)                        (p)->AddRef()
     1479#define IDirect3DRMFrame2_Release(p)                       (p)->Release()
     1480/*** IDirect3DRMObject methods ***/
     1481#define IDirect3DRMFrame2_Clone(p,a,b,c)                   (p)->Clone(a,b,c)
     1482#define IDirect3DRMFrame2_AddDestroyCallback(p,a,b)        (p)->AddDestroyCallback(a,b)
     1483#define IDirect3DRMFrame2_DeleteDestroyCallback(p,a,b)     (p)->DeleteDestroyCallback(a,b)
     1484#define IDirect3DRMFrame2_SetAppData(p,a)                  (p)->SetAppData(a)
     1485#define IDirect3DRMFrame2_GetAppData(p)                    (p)->GetAppData()
     1486#define IDirect3DRMFrame2_SetName(p,a)                     (p)->SetName(a)
     1487#define IDirect3DRMFrame2_GetName(p,a,b)                   (p)->GetName(a,b)
     1488#define IDirect3DRMFrame2_GetClassName(p,a,b)              (p)->GetClassName(a,b)
     1489/*** IDirect3DRMFrame methods ***/
     1490#define IDirect3DRMFrame2_AddChild(p,a)                    (p)->AddChild(a)
     1491#define IDirect3DRMFrame2_AddLight(p,a)                    (p)->AddLight(a)
     1492#define IDirect3DRMFrame2_AddMoveCallback(p,a,b)           (p)->AddMoveCallback(a,b)
     1493#define IDirect3DRMFrame2_AddTransform(p,a,b)              (p)->AddTransform(a,b)
     1494#define IDirect3DRMFrame2_AddTranslation(p,a,b,c,d)        (p)->AddTranslation(a,b,c,d)
     1495#define IDirect3DRMFrame2_AddScale(p,a,b,c,d)              (p)->AddScale(a,b,c,d)
     1496#define IDirect3DRMFrame2_AddRotation(p,a,b,c,d,e)         (p)->AddRotation(a,b,c,d,e)
     1497#define IDirect3DRMFrame2_AddVisual(p,a)                   (p)->AddVisual(a)
     1498#define IDirect3DRMFrame2_GetChildren(p,a)                 (p)->GetChildren(a)
     1499#define IDirect3DRMFrame2_GetColor(p)                      (p)->GetColor()
     1500#define IDirect3DRMFrame2_GetLights(p,a)                   (p)->GetLights(a)
     1501#define IDirect3DRMFrame2_GetMaterialMode(p)               (p)->GetMaterialMode()
     1502#define IDirect3DRMFrame2_GetParent(p,a)                   (p)->GetParent(a)
     1503#define IDirect3DRMFrame2_GetPosition(p,a,b)               (p)->GetPosition(a,b)
     1504#define IDirect3DRMFrame2_GetRotation(p,a,b,c)             (p)->GetRotation(a,b,c)
     1505#define IDirect3DRMFrame2_GetScene(p,a)                    (p)->GetScene(a)
     1506#define IDirect3DRMFrame2_GetSortMode(p)                   (p)->GetSortMode()
     1507#define IDirect3DRMFrame2_GetTexture(p,a)                  (p)->GetTexture(a)
     1508#define IDirect3DRMFrame2_GetTransform(p,a)                (p)->GetTransform(a)
     1509#define IDirect3DRMFrame2_GetVelocity(p,a,b,c)             (p)->GetVelocity(a,b,c)
     1510#define IDirect3DRMFrame2_GetOrientation(p,a,b,c)          (p)->GetOrientation(a,b,c)
     1511#define IDirect3DRMFrame2_GetVisuals(p,a)                  (p)->GetVisuals(a)
     1512#define IDirect3DRMFrame2_GetTextureTopology(p,a,b)        (p)->GetTextureTopology(a,b)
     1513#define IDirect3DRMFrame2_InverseTransform(p,a,b)          (p)->InverseTransform(a,b)
     1514#define IDirect3DRMFrame2_Load(p,a,b,c,d,e)                (p)->Load(a,b,c,d,e)
     1515#define IDirect3DRMFrame2_LookAt(p,a,b,c)                  (p)->LookAt(a,b,c)
     1516#define IDirect3DRMFrame2_Move(p,a)                        (p)->Move(a)
     1517#define IDirect3DRMFrame2_DeleteChild(p,a)                 (p)->DeleteChild(a)
     1518#define IDirect3DRMFrame2_DeleteLight(p,a)                 (p)->DeleteLight(a)
     1519#define IDirect3DRMFrame2_DeleteMoveCallback(p,a,b)        (p)->DeleteMoveCallback(a,b)
     1520#define IDirect3DRMFrame2_DeleteVisual(p,a)                (p)->DeleteVisual(a)
     1521#define IDirect3DRMFrame2_GetSceneBackground(p)            (p)->GetSceneBackground()
     1522#define IDirect3DRMFrame2_GetSceneBackgroundDepth(p,a)     (p)->GetSceneBackgroundDepth(a)
     1523#define IDirect3DRMFrame2_GetSceneFogColor(p)              (p)->GetSceneFogColor()
     1524#define IDirect3DRMFrame2_GetSceneFogEnable(p)             (p)->GetSceneFogEnable()
     1525#define IDirect3DRMFrame2_GetSceneFogMode(p)               (p)->GetSceneFogMode()
     1526#define IDirect3DRMFrame2_GetSceneFogParams(p,a,b,c)       (p)->GetSceneFogParams(a,b,c)
     1527#define IDirect3DRMFrame2_SetSceneBackground(p,a)          (p)->SetSceneBackground(a)
     1528#define IDirect3DRMFrame2_SetSceneBackgroundRGB(p,a,b,c)   (p)->SetSceneBackgroundRGB(a,b,c)
     1529#define IDirect3DRMFrame2_SetSceneBackgroundDepth(p,a)     (p)->SetSceneBackgroundDepth(a)
     1530#define IDirect3DRMFrame2_SetSceneBackgroundImage(p,a)     (p)->SetSceneBackgroundImage(a)
     1531#define IDirect3DRMFrame2_SetSceneFogEnable(p,a)           (p)->SetSceneFogEnable(a)
     1532#define IDirect3DRMFrame2_SetSceneFogColor(p,a)            (p)->SetSceneFogColor(a)
     1533#define IDirect3DRMFrame2_SetSceneFogMode(p,a)             (p)->SetSceneFogMode(a)
     1534#define IDirect3DRMFrame2_SetSceneFogParams(p,a,b,c)       (p)->SetSceneFogParams(a,b,c)
     1535#define IDirect3DRMFrame2_SetColor(p,a)                    (p)->SetColor(a)
     1536#define IDirect3DRMFrame2_SetColorRGB(p,a,b,c)             (p)->SetColorRGB(a,b,c)
     1537#define IDirect3DRMFrame2_GetZbufferMode(p)                (p)->GetZbufferMode()
     1538#define IDirect3DRMFrame2_SetMaterialMode(p,a)             (p)->SetMaterialMode(a)
     1539#define IDirect3DRMFrame2_SetOrientation(p,a,b,c,d,e,f,g)  (p)->SetOrientation(a,b,c,d,e,f,g)
     1540#define IDirect3DRMFrame2_SetPosition(p,a,b,c,d)           (p)->SetPosition(a,b,c,d)
     1541#define IDirect3DRMFrame2_SetRotation(p,a,b,c,d,e)         (p)->SetRotation(a,b,c,d,e)
     1542#define IDirect3DRMFrame2_SetSortMode(p,a)                 (p)->SetSortMode(a)
     1543#define IDirect3DRMFrame2_SetTexture(p,a)                  (p)->SetTexture(a)
     1544#define IDirect3DRMFrame2_SetTextureTopology(p,a,b)        (p)->SetTextureTopology(a,b)
     1545#define IDirect3DRMFrame2_SetVelocity(p,a,b,c,d,e)         (p)->SetVelocity(a,b,c,d,e)
     1546#define IDirect3DRMFrame2_SetZbufferMode(p,a)              (p)->SetZbufferMode(a)
     1547#define IDirect3DRMFrame2_Transform(p,a,b)                 (p)->Transform(a,b)
     1548/*** IDirect3DRMFrame2 methods ***/
     1549#define IDirect3DRMFrame2_AddMoveCallback2(p,a,b,c)        (p)->AddMoveCallback2(a,b,c)
     1550#define IDirect3DRMFrame2_GetBox(p,a)                      (p)->GetBox(a)
     1551#define IDirect3DRMFrame2_GetBoxEnable(p)                  (p)->GetBoxEnable()
     1552#define IDirect3DRMFrame2_GetAxes(p,a,b)                   (p)->GetAxes(a,b)
     1553#define IDirect3DRMFrame2_GetMaterial(p,a)                 (p)->GetMaterial(a)
     1554#define IDirect3DRMFrame2_GetInheritAxes(p,a,b)            (p)->GetInheritAxes(a,b)
     1555#define IDirect3DRMFrame2_GetHierarchyBox(p,a)             (p)->GetHierarchyBox(a)
     1556#define IDirect3DRMFrame2_SetBox(p,a)                      (p)->SetBox(a)
     1557#define IDirect3DRMFrame2_SetBoxEnable(p,a)                (p)->SetBoxEnable(a)
     1558#define IDirect3DRMFrame2_SetAxes(p,a,b,c,d,e,f)           (p)->SetAxes(a,b,c,d,e,f)
     1559#define IDirect3DRMFrame2_SetInheritAxes(p,a)              (p)->SetInheritAxes(a)
     1560#define IDirect3DRMFrame2_SetMaterial(p,a)                 (p)->SetMaterial(a)
     1561#define IDirect3DRMFrame2_SetQuaternion(p,a,b)             (p)->SetQuaternion(a,b)
     1562#define IDirect3DRMFrame2_RayPick(p,a,b,c,d)               (p)->RayPick(a,b,c,d)
     1563#define IDirect3DRMFrame2_Save(p,a,b,c)                    (p)->Save(a,b,c)
     1564#endif
     1565
     1566/*****************************************************************************
     1567 * IDirect3DRMFrame3 interface
     1568 */
     1569#define INTERFACE IDirect3DRMFrame3
     1570DECLARE_INTERFACE_(IDirect3DRMFrame3,IDirect3DRMVisual)
     1571{
     1572    /*** IUnknown methods ***/
     1573    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     1574    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     1575    STDMETHOD_(ULONG,Release)(THIS) PURE;
     1576    /*** IDirect3DRMObject methods ***/
     1577    STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     1578    STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     1579    STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     1580    STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
     1581    STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
     1582    STDMETHOD(SetName)(THIS_ LPCSTR) PURE;
     1583    STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     1584    STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     1585    /*** IDirect3DRMFrame3 methods ***/
     1586    STDMETHOD(AddChild)(THIS_ LPDIRECT3DRMFRAME3 child) PURE;
     1587    STDMETHOD(AddLight)(THIS_ LPDIRECT3DRMLIGHT) PURE;
     1588    STDMETHOD(AddMoveCallback)(THIS_ D3DRMFRAME3MOVECALLBACK, VOID *arg, DWORD flags) PURE;
     1589    STDMETHOD(AddTranslation)(THIS_ D3DRMCOMBINETYPE, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     1590    STDMETHOD(AddScale)(THIS_ D3DRMCOMBINETYPE, D3DVALUE sx, D3DVALUE sy, D3DVALUE sz) PURE;
     1591    STDMETHOD(AddRotation)(THIS_ D3DRMCOMBINETYPE, D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE theta) PURE;
     1592    STDMETHOD(AddVisual)(THIS_ LPUNKNOWN) PURE;
     1593    STDMETHOD(GetChildren)(THIS_ LPDIRECT3DRMFRAMEARRAY *children) PURE;
     1594    STDMETHOD_(D3DCOLOR, GetColor)(THIS) PURE;
     1595    STDMETHOD(GetLights)(THIS_ LPDIRECT3DRMLIGHTARRAY *lights) PURE;
     1596    STDMETHOD_(D3DRMMATERIALMODE, GetMaterialMode)(THIS) PURE;
     1597    STDMETHOD(GetParent)(THIS_ LPDIRECT3DRMFRAME3 *) PURE;
     1598    STDMETHOD(GetPosition)(THIS_ LPDIRECT3DRMFRAME3 reference, LPD3DVECTOR return_position) PURE;
     1599    STDMETHOD(GetRotation)(THIS_ LPDIRECT3DRMFRAME3 reference, LPD3DVECTOR axis, LPD3DVALUE return_theta) PURE;
     1600    STDMETHOD(GetScene)(THIS_ LPDIRECT3DRMFRAME3 *) PURE;
     1601    STDMETHOD_(D3DRMSORTMODE, GetSortMode)(THIS) PURE;
     1602    STDMETHOD(GetTexture)(THIS_ LPDIRECT3DRMTEXTURE3 *) PURE;
     1603    STDMETHOD(GetTransform)(THIS_ LPDIRECT3DRMFRAME3 reference, D3DRMMATRIX4D rmMatrix) PURE;
     1604    STDMETHOD(GetVelocity)(THIS_ LPDIRECT3DRMFRAME3 reference, LPD3DVECTOR return_velocity,
     1605        BOOL with_rotation) PURE;
     1606    STDMETHOD(GetOrientation)(THIS_ LPDIRECT3DRMFRAME3 reference, LPD3DVECTOR dir, LPD3DVECTOR up) PURE;
     1607    STDMETHOD(GetVisuals)(THIS_ LPDWORD pCount, LPUNKNOWN *) PURE;
     1608    STDMETHOD(InverseTransform)(THIS_ D3DVECTOR *d, D3DVECTOR *s) PURE;
     1609    STDMETHOD(Load)(THIS_ LPVOID filename, LPVOID name, D3DRMLOADOPTIONS loadflags,
     1610        D3DRMLOADTEXTURE3CALLBACK, LPVOID pArg) PURE;
     1611    STDMETHOD(LookAt)(THIS_ LPDIRECT3DRMFRAME3 target, LPDIRECT3DRMFRAME3 reference, D3DRMFRAMECONSTRAINT) PURE;
     1612    STDMETHOD(Move)(THIS_ D3DVALUE delta) PURE;
     1613    STDMETHOD(DeleteChild)(THIS_ LPDIRECT3DRMFRAME3) PURE;
     1614    STDMETHOD(DeleteLight)(THIS_ LPDIRECT3DRMLIGHT) PURE;
     1615    STDMETHOD(DeleteMoveCallback)(THIS_ D3DRMFRAME3MOVECALLBACK, VOID *arg) PURE;
     1616    STDMETHOD(DeleteVisual)(THIS_ LPUNKNOWN) PURE;
     1617    STDMETHOD_(D3DCOLOR, GetSceneBackground)(THIS) PURE;
     1618    STDMETHOD(GetSceneBackgroundDepth)(THIS_ LPDIRECTDRAWSURFACE *) PURE;
     1619    STDMETHOD_(D3DCOLOR, GetSceneFogColor)(THIS) PURE;
     1620    STDMETHOD_(BOOL, GetSceneFogEnable)(THIS) PURE;
     1621    STDMETHOD_(D3DRMFOGMODE, GetSceneFogMode)(THIS) PURE;
     1622    STDMETHOD(GetSceneFogParams)(THIS_ D3DVALUE *return_start, D3DVALUE *return_end,
     1623        D3DVALUE *return_density) PURE;
     1624    STDMETHOD(SetSceneBackground)(THIS_ D3DCOLOR) PURE;
     1625    STDMETHOD(SetSceneBackgroundRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE;
     1626    STDMETHOD(SetSceneBackgroundDepth)(THIS_ LPDIRECTDRAWSURFACE) PURE;
     1627    STDMETHOD(SetSceneBackgroundImage)(THIS_ LPDIRECT3DRMTEXTURE3) PURE;
     1628    STDMETHOD(SetSceneFogEnable)(THIS_ BOOL) PURE;
     1629    STDMETHOD(SetSceneFogColor)(THIS_ D3DCOLOR) PURE;
     1630    STDMETHOD(SetSceneFogMode)(THIS_ D3DRMFOGMODE) PURE;
     1631    STDMETHOD(SetSceneFogParams)(THIS_ D3DVALUE start, D3DVALUE end, D3DVALUE density) PURE;
     1632    STDMETHOD(SetColor)(THIS_ D3DCOLOR) PURE;
     1633    STDMETHOD(SetColorRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE;
     1634    STDMETHOD_(D3DRMZBUFFERMODE, GetZbufferMode)(THIS) PURE;
     1635    STDMETHOD(SetMaterialMode)(THIS_ D3DRMMATERIALMODE) PURE;
     1636    STDMETHOD(SetOrientation)(THIS_ LPDIRECT3DRMFRAME3 reference, D3DVALUE dx, D3DVALUE dy, D3DVALUE dz,
     1637        D3DVALUE ux, D3DVALUE uy, D3DVALUE uz) PURE;
     1638    STDMETHOD(SetPosition)(THIS_ LPDIRECT3DRMFRAME3 reference, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     1639    STDMETHOD(SetRotation)(THIS_ LPDIRECT3DRMFRAME3 reference, D3DVALUE x, D3DVALUE y, D3DVALUE z,
     1640        D3DVALUE theta) PURE;
     1641    STDMETHOD(SetSortMode)(THIS_ D3DRMSORTMODE) PURE;
     1642    STDMETHOD(SetTexture)(THIS_ LPDIRECT3DRMTEXTURE3) PURE;
     1643    STDMETHOD(SetVelocity)(THIS_ LPDIRECT3DRMFRAME3 reference, D3DVALUE x, D3DVALUE y, D3DVALUE z,
     1644        BOOL with_rotation) PURE;
     1645    STDMETHOD(SetZbufferMode)(THIS_ D3DRMZBUFFERMODE) PURE;
     1646    STDMETHOD(Transform)(THIS_ D3DVECTOR *d, D3DVECTOR *s) PURE;
     1647    STDMETHOD(GetBox)(THIS_ LPD3DRMBOX) PURE;
     1648    STDMETHOD_(BOOL, GetBoxEnable)(THIS) PURE;
     1649    STDMETHOD(GetAxes)(THIS_ LPD3DVECTOR dir, LPD3DVECTOR up);
     1650    STDMETHOD(GetMaterial)(THIS_ LPDIRECT3DRMMATERIAL2 *) PURE;
     1651    STDMETHOD_(BOOL, GetInheritAxes)(THIS);
     1652    STDMETHOD(GetHierarchyBox)(THIS_ LPD3DRMBOX) PURE;
     1653    STDMETHOD(SetBox)(THIS_ LPD3DRMBOX) PURE;
     1654    STDMETHOD(SetBoxEnable)(THIS_ BOOL) PURE;
     1655    STDMETHOD(SetAxes)(THIS_ D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE uz);
     1656    STDMETHOD(SetInheritAxes)(THIS_ BOOL inherit_from_parent);
     1657    STDMETHOD(SetMaterial)(THIS_ LPDIRECT3DRMMATERIAL2) PURE;
     1658    STDMETHOD(SetQuaternion)(THIS_ LPDIRECT3DRMFRAME3 reference, D3DRMQUATERNION *q) PURE;
     1659    STDMETHOD(RayPick)(THIS_ LPDIRECT3DRMFRAME3 reference, LPD3DRMRAY ray, DWORD flags,
     1660        LPDIRECT3DRMPICKED2ARRAY *return_visuals) PURE;
     1661    STDMETHOD(Save)(THIS_ LPCSTR filename, D3DRMXOFFORMAT d3dFormat, D3DRMSAVEOPTIONS d3dSaveFlags);
     1662    STDMETHOD(TransformVectors)(THIS_ LPDIRECT3DRMFRAME3 reference, DWORD NumVectors,
     1663        LPD3DVECTOR pDstVectors, LPD3DVECTOR pSrcVectors) PURE;
     1664    STDMETHOD(InverseTransformVectors)(THIS_ LPDIRECT3DRMFRAME3 reference, DWORD NumVectors,
     1665        LPD3DVECTOR pDstVectors, LPD3DVECTOR pSrcVectors) PURE;
     1666    STDMETHOD(SetTraversalOptions)(THIS_ DWORD flags) PURE;
     1667    STDMETHOD(GetTraversalOptions)(THIS_ LPDWORD pFlags) PURE;
     1668    STDMETHOD(SetSceneFogMethod)(THIS_ DWORD flags) PURE;
     1669    STDMETHOD(GetSceneFogMethod)(THIS_ LPDWORD pFlags) PURE;
     1670    STDMETHOD(SetMaterialOverride)(THIS_ LPD3DRMMATERIALOVERRIDE) PURE;
     1671    STDMETHOD(GetMaterialOverride)(THIS_ LPD3DRMMATERIALOVERRIDE) PURE;
     1672};
     1673#undef INTERFACE
     1674
     1675#if !defined(__cplusplus) || defined(CINTERFACE)
     1676/*** IUnknown methods ***/
     1677#define IDirect3DRMFrame3_QueryInterface(p,a,b)              (p)->lpVtbl->QueryInterface(p,a,b)
     1678#define IDirect3DRMFrame3_AddRef(p)                          (p)->lpVtbl->AddRef(p)
     1679#define IDirect3DRMFrame3_Release(p)                         (p)->lpVtbl->Release(p)
     1680/*** IDirect3DRMObject methods ***/
     1681#define IDirect3DRMFrame3_Clone(p,a,b,c)                     (p)->lpVtbl->Clone(p,a,b,c)
     1682#define IDirect3DRMFrame3_AddDestroyCallback(p,a,b)          (p)->lpVtbl->AddDestroyCallback(p,a,b)
     1683#define IDirect3DRMFrame3_DeleteDestroyCallback(p,a,b)       (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
     1684#define IDirect3DRMFrame3_SetAppData(p,a)                    (p)->lpVtbl->SetAppData(p,a)
     1685#define IDirect3DRMFrame3_GetAppData(p)                      (p)->lpVtbl->GetAppData(p)
     1686#define IDirect3DRMFrame3_SetName(p,a)                       (p)->lpVtbl->SetName(p,a)
     1687#define IDirect3DRMFrame3_GetName(p,a,b)                     (p)->lpVtbl->GetName(p,a,b)
     1688#define IDirect3DRMFrame3_GetClassName(p,a,b)                (p)->lpVtbl->GetClassName(p,a,b)
     1689/*** IDirect3DRMFrame3 methods ***/
     1690#define IDirect3DRMFrame3_AddChild(p,a)                      (p)->lpVtbl->AddChild(p,a)
     1691#define IDirect3DRMFrame3_AddLight(p,a)                      (p)->lpVtbl->AddLight(p,a)
     1692#define IDirect3DRMFrame3_AddMoveCallback(p,a,b,c)           (p)->lpVtbl->AddMoveCallback(p,a,b,c)
     1693#define IDirect3DRMFrame3_AddTransform(p,a,b)                (p)->lpVtbl->AddTransform(p,a,b)
     1694#define IDirect3DRMFrame3_AddTranslation(p,a,b,c,d)          (p)->lpVtbl->AddTranslation(p,a,b,c,d)
     1695#define IDirect3DRMFrame3_AddScale(p,a,b,c,d)                (p)->lpVtbl->AddScale(p,a,b,c,d)
     1696#define IDirect3DRMFrame3_AddRotation(p,a,b,c,d,e)           (p)->lpVtbl->AddRotation(p,a,b,c,d,e)
     1697#define IDirect3DRMFrame3_AddVisual(p,a)                     (p)->lpVtbl->AddVisual(p,a)
     1698#define IDirect3DRMFrame3_GetChildren(p,a)                   (p)->lpVtbl->GetChildren(p,a)
     1699#define IDirect3DRMFrame3_GetColor(p)                        (p)->lpVtbl->GetColor(p)
     1700#define IDirect3DRMFrame3_GetLights(p,a)                     (p)->lpVtbl->GetLights(p,a)
     1701#define IDirect3DRMFrame3_GetMaterialMode(p)                 (p)->lpVtbl->GetMaterialMode(p)
     1702#define IDirect3DRMFrame3_GetParent(p,a)                     (p)->lpVtbl->GetParent(p,a)
     1703#define IDirect3DRMFrame3_GetPosition(p,a,b)                 (p)->lpVtbl->GetPosition(p,a,b)
     1704#define IDirect3DRMFrame3_GetRotation(p,a,b,c)               (p)->lpVtbl->GetRotation(p,a,b,c)
     1705#define IDirect3DRMFrame3_GetScene(p,a)                      (p)->lpVtbl->GetScene(p,a)
     1706#define IDirect3DRMFrame3_GetSortMode(p)                     (p)->lpVtbl->GetSortMode(p)
     1707#define IDirect3DRMFrame3_GetTexture(p,a)                    (p)->lpVtbl->GetTexture(p,a)
     1708#define IDirect3DRMFrame3_GetTransform(p,a,b)                (p)->lpVtbl->GetTransform(p,a,b)
     1709#define IDirect3DRMFrame3_GetVelocity(p,a,b,c)               (p)->lpVtbl->GetVelocity(p,a,b,c)
     1710#define IDirect3DRMFrame3_GetOrientation(p,a,b,c)            (p)->lpVtbl->GetOrientation(p,a,b,c)
     1711#define IDirect3DRMFrame3_GetVisuals(p,a,b)                  (p)->lpVtbl->GetVisuals(p,a,b)
     1712#define IDirect3DRMFrame3_InverseTransform(p,a,b)            (p)->lpVtbl->InverseTransform(p,a,b)
     1713#define IDirect3DRMFrame3_Load(p,a,b,c,d,e)                  (p)->lpVtbl->Load(p,a,b,c,d,e)
     1714#define IDirect3DRMFrame3_LookAt(p,a,b,c)                    (p)->lpVtbl->LookAt(p,a,b,c)
     1715#define IDirect3DRMFrame3_Move(p,a)                          (p)->lpVtbl->Move(p,a)
     1716#define IDirect3DRMFrame3_DeleteChild(p,a)                   (p)->lpVtbl->DeleteChild(p,a)
     1717#define IDirect3DRMFrame3_DeleteLight(p,a)                   (p)->lpVtbl->DeleteLight(p,a)
     1718#define IDirect3DRMFrame3_DeleteMoveCallback(p,a,b)          (p)->lpVtbl->DeleteMoveCallback(p,a,b)
     1719#define IDirect3DRMFrame3_DeleteVisual(p,a)                  (p)->lpVtbl->DeleteVisual(p,a)
     1720#define IDirect3DRMFrame3_GetSceneBackground(p)              (p)->lpVtbl->GetSceneBackground(p)
     1721#define IDirect3DRMFrame3_GetSceneBackgroundDepth(p,a)       (p)->lpVtbl->GetSceneBackgroundDepth(p,a)
     1722#define IDirect3DRMFrame3_GetSceneFogColor(p)                (p)->lpVtbl->GetSceneFogColor(p)
     1723#define IDirect3DRMFrame3_GetSceneFogEnable(p)               (p)->lpVtbl->GetSceneFogEnable(p)
     1724#define IDirect3DRMFrame3_GetSceneFogMode(p)                 (p)->lpVtbl->GetSceneFogMode(p)
     1725#define IDirect3DRMFrame3_GetSceneFogParams(p,a,b,c)         (p)->lpVtbl->GetSceneFogParams(p,a,b,c)
     1726#define IDirect3DRMFrame3_SetSceneBackground(p,a)            (p)->lpVtbl->SetSceneBackground(p,a)
     1727#define IDirect3DRMFrame3_SetSceneBackgroundRGB(p,a,b,c)     (p)->lpVtbl->SetSceneBackgroundRGB(p,a,b,c)
     1728#define IDirect3DRMFrame3_SetSceneBackgroundDepth(p,a)       (p)->lpVtbl->SetSceneBackgroundDepth(p,a)
     1729#define IDirect3DRMFrame3_SetSceneBackgroundImage(p,a)       (p)->lpVtbl->SetSceneBackgroundImage(p,a)
     1730#define IDirect3DRMFrame3_SetSceneFogEnable(p,a)             (p)->lpVtbl->SetSceneFogEnable(p,a)
     1731#define IDirect3DRMFrame3_SetSceneFogColor(p,a)              (p)->lpVtbl->SetSceneFogColor(p,a)
     1732#define IDirect3DRMFrame3_SetSceneFogMode(p,a)               (p)->lpVtbl->SetSceneFogMode(p,a)
     1733#define IDirect3DRMFrame3_SetSceneFogParams(p,a,b,c)         (p)->lpVtbl->SetSceneFogParams(p,a,b,c)
     1734#define IDirect3DRMFrame3_SetColor(p,a)                      (p)->lpVtbl->SetColor(p,a)
     1735#define IDirect3DRMFrame3_SetColorRGB(p,a,b,c)               (p)->lpVtbl->SetColorRGB(p,a,b,c)
     1736#define IDirect3DRMFrame3_GetZbufferMode(p)                  (p)->lpVtbl->GetZbufferMode(p)
     1737#define IDirect3DRMFrame3_SetMaterialMode(p,a)               (p)->lpVtbl->SetMaterialMode(p,a)
     1738#define IDirect3DRMFrame3_SetOrientation(p,a,b,c,d,e,f,g)    (p)->lpVtbl->SetOrientation(p,a,b,c,d,e,f,g)
     1739#define IDirect3DRMFrame3_SetPosition(p,a,b,c,d)             (p)->lpVtbl->SetPosition(p,a,b,c,d)
     1740#define IDirect3DRMFrame3_SetRotation(p,a,b,c,d,e)           (p)->lpVtbl->SetRotation(p,a,b,c,d,e)
     1741#define IDirect3DRMFrame3_SetSortMode(p,a)                   (p)->lpVtbl->SetSortMode(p,a)
     1742#define IDirect3DRMFrame3_SetTexture(p,a)                    (p)->lpVtbl->SetTexture(p,a)
     1743#define IDirect3DRMFrame3_SetVelocity(p,a,b,c,d,e)           (p)->lpVtbl->SetVelocity(p,a,b,c,d,e)
     1744#define IDirect3DRMFrame3_SetZbufferMode(p,a)                (p)->lpVtbl->SetZbufferMode(p,a)
     1745#define IDirect3DRMFrame3_Transform(p,a,b)                   (p)->lpVtbl->Transform(p,a,b)
     1746#define IDirect3DRMFrame3_GetBox(p,a)                        (p)->lpVtbl->GetBox(p,a)
     1747#define IDirect3DRMFrame3_GetBoxEnable(p)                    (p)->lpVtbl->GetBoxEnable(p)
     1748#define IDirect3DRMFrame3_GetAxes(p,a,b)                     (p)->lpVtbl->GetAxes(p,a,b)
     1749#define IDirect3DRMFrame3_GetMaterial(p,a)                   (p)->lpVtbl->GetMaterial(p,a)
     1750#define IDirect3DRMFrame3_GetInheritAxes(p)                  (p)->lpVtbl->GetInheritAxes(p)
     1751#define IDirect3DRMFrame3_GetHierarchyBox(p,a)               (p)->lpVtbl->GetHierarchyBox(p,a)
     1752#define IDirect3DRMFrame3_SetBox(p,a)                        (p)->lpVtbl->SetBox(p,a)
     1753#define IDirect3DRMFrame3_SetBoxEnable(p,a)                  (p)->lpVtbl->SetBoxEnable(p,a)
     1754#define IDirect3DRMFrame3_SetAxes(p,a,b,c,d,e,f)             (p)->lpVtbl->SetAxes(p,a,b,c,d,e,f)
     1755#define IDirect3DRMFrame3_SetInheritAxes(p,a)                (p)->lpVtbl->SetInheritAxes(p,a)
     1756#define IDirect3DRMFrame3_SetMaterial(p,a)                   (p)->lpVtbl->SetMaterial(p,a)
     1757#define IDirect3DRMFrame3_SetQuaternion(p,a,b)               (p)->lpVtbl->SetQuaternion(p,a,b)
     1758#define IDirect3DRMFrame3_RayPick(p,a,b,c,d)                 (p)->lpVtbl->RayPick(p,a,b,c,d)
     1759#define IDirect3DRMFrame3_Save(p,a,b,c)                      (p)->lpVtbl->Save(p,a,b,c)
     1760#define IDirect3DRMFrame3_TransformVectors(p,a,b,c,d)        (p)->lpVtbl->TransformVectors(p,a,b,c,d)
     1761#define IDirect3DRMFrame3_InverseTransformVectors(p,a,b,c,d) (p)->lpVtbl->InverseTransformVectors(p,a,b,c,d)
     1762#define IDirect3DRMFrame3_SetTraversalOptions(p,a)           (p)->lpVtbl->SetTraversalOptions(p,a)
     1763#define IDirect3DRMFrame3_GetTraversalOptions(p,a)           (p)->lpVtbl->GetTraversalOptions(p,a)
     1764#define IDirect3DRMFrame3_SetSceneFogMethod(p,a)             (p)->lpVtbl->SetSceneFogMethod(p,a)
     1765#define IDirect3DRMFrame3_GetSceneFogMethod(p,a)             (p)->lpVtbl->GetSceneFogMethod(p,a)
     1766#define IDirect3DRMFrame3_SetMaterialOverride(p,a)           (p)->lpVtbl->SetMaterialOverride(p,a)
     1767#define IDirect3DRMFrame3_GetMaterialOverride(p,a)           (p)->lpVtbl->GetMaterialOverride(p,a)
     1768#else
     1769/*** IUnknown methods ***/
     1770#define IDirect3DRMFrame3_QueryInterface(p,a,b)              (p)->QueryInterface(a,b)
     1771#define IDirect3DRMFrame3_AddRef(p)                          (p)->AddRef()
     1772#define IDirect3DRMFrame3_Release(p)                         (p)->Release()
     1773/*** IDirect3DRMObject methods ***/
     1774#define IDirect3DRMFrame3_Clone(p,a,b,c)                     (p)->Clone(a,b,c)
     1775#define IDirect3DRMFrame3_AddDestroyCallback(p,a,b)          (p)->AddDestroyCallback(a,b)
     1776#define IDirect3DRMFrame3_DeleteDestroyCallback(p,a,b)       (p)->DeleteDestroyCallback(a,b)
     1777#define IDirect3DRMFrame3_SetAppData(p,a)                    (p)->SetAppData(a)
     1778#define IDirect3DRMFrame3_GetAppData(p)                      (p)->GetAppData()
     1779#define IDirect3DRMFrame3_SetName(p,a)                       (p)->SetName(a)
     1780#define IDirect3DRMFrame3_GetName(p,a,b)                     (p)->GetName(a,b)
     1781#define IDirect3DRMFrame3_GetClassName(p,a,b)                (p)->GetClassName(a,b)
     1782/*** IDirect3DRMFrame3 methods ***/
     1783#define IDirect3DRMFrame3_AddChild(p,a)                      (p)->AddChild(a)
     1784#define IDirect3DRMFrame3_AddLight(p,a)                      (p)->AddLight(a)
     1785#define IDirect3DRMFrame3_AddMoveCallback(p,a,b,c)           (p)->AddMoveCallback(a,b,c)
     1786#define IDirect3DRMFrame3_AddTransform(p,a,b)                (p)->AddTransform(a,b)
     1787#define IDirect3DRMFrame3_AddTranslation(p,a,b,c,d)          (p)->AddTranslation(a,b,c,d)
     1788#define IDirect3DRMFrame3_AddScale(p,a,b,c,d)                (p)->AddScale(a,b,c,d)
     1789#define IDirect3DRMFrame3_AddRotation(p,a,b,c,d,e)           (p)->AddRotation(a,b,c,d,e)
     1790#define IDirect3DRMFrame3_AddVisual(p,a)                     (p)->AddVisual(a)
     1791#define IDirect3DRMFrame3_GetChildren(p,a)                   (p)->GetChildren(a)
     1792#define IDirect3DRMFrame3_GetColor(p)                        (p)->GetColor()
     1793#define IDirect3DRMFrame3_GetLights(p,a)                     (p)->GetLights(a)
     1794#define IDirect3DRMFrame3_GetMaterialMode(p)                 (p)->GetMaterialMode()
     1795#define IDirect3DRMFrame3_GetParent(p,a)                     (p)->GetParent(a)
     1796#define IDirect3DRMFrame3_GetPosition(p,a,b)                 (p)->GetPosition(a,b)
     1797#define IDirect3DRMFrame3_GetRotation(p,a,b,c)               (p)->GetRotation(a,b,c)
     1798#define IDirect3DRMFrame3_GetScene(p,a)                      (p)->GetScene(a)
     1799#define IDirect3DRMFrame3_GetSortMode(p)                     (p)->GetSortMode()
     1800#define IDirect3DRMFrame3_GetTexture(p,a)                    (p)->GetTexture(a)
     1801#define IDirect3DRMFrame3_GetTransform(p,a,b)                (p)->GetTransform(a,b)
     1802#define IDirect3DRMFrame3_GetVelocity(p,a,b,c)               (p)->GetVelocity(a,b,c)
     1803#define IDirect3DRMFrame3_GetOrientation(p,a,b,c)            (p)->GetOrientation(a,b,c)
     1804#define IDirect3DRMFrame3_GetVisuals(p,a,b)                  (p)->GetVisuals(a,b)
     1805#define IDirect3DRMFrame3_InverseTransform(p,a,b)            (p)->InverseTransform(a,b)
     1806#define IDirect3DRMFrame3_Load(p,a,b,c,d,e)                  (p)->Load(a,b,c,d,e)
     1807#define IDirect3DRMFrame3_LookAt(p,a,b,c)                    (p)->LookAt(a,b,c)
     1808#define IDirect3DRMFrame3_Move(p,a)                          (p)->Move(a)
     1809#define IDirect3DRMFrame3_DeleteChild(p,a)                   (p)->DeleteChild(a)
     1810#define IDirect3DRMFrame3_DeleteLight(p,a)                   (p)->DeleteLight(a)
     1811#define IDirect3DRMFrame3_DeleteMoveCallback(p,a,b)          (p)->DeleteMoveCallback(a,b)
     1812#define IDirect3DRMFrame3_DeleteVisual(p,a)                  (p)->DeleteVisual(a)
     1813#define IDirect3DRMFrame3_GetSceneBackground(p)              (p)->GetSceneBackground()
     1814#define IDirect3DRMFrame3_GetSceneBackgroundDepth(p,a)       (p)->GetSceneBackgroundDepth(a)
     1815#define IDirect3DRMFrame3_GetSceneFogColor(p)                (p)->GetSceneFogColor()
     1816#define IDirect3DRMFrame3_GetSceneFogEnable(p)               (p)->GetSceneFogEnable()
     1817#define IDirect3DRMFrame3_GetSceneFogMode(p)                 (p)->GetSceneFogMode()
     1818#define IDirect3DRMFrame3_GetSceneFogParams(p,a,b,c)         (p)->GetSceneFogParams(a,b,c)
     1819#define IDirect3DRMFrame3_SetSceneBackground(p,a)            (p)->SetSceneBackground(a)
     1820#define IDirect3DRMFrame3_SetSceneBackgroundRGB(p,a,b,c)     (p)->SetSceneBackgroundRGB(a,b,c)
     1821#define IDirect3DRMFrame3_SetSceneBackgroundDepth(p,a)       (p)->SetSceneBackgroundDepth(a)
     1822#define IDirect3DRMFrame3_SetSceneBackgroundImage(p,a)       (p)->SetSceneBackgroundImage(a)
     1823#define IDirect3DRMFrame3_SetSceneFogEnable(p,a)             (p)->SetSceneFogEnable(a)
     1824#define IDirect3DRMFrame3_SetSceneFogColor(p,a)              (p)->SetSceneFogColor(a)
     1825#define IDirect3DRMFrame3_SetSceneFogMode(p,a)               (p)->SetSceneFogMode(a)
     1826#define IDirect3DRMFrame3_SetSceneFogParams(p,a,b,c)         (p)->SetSceneFogParams(a,b,c)
     1827#define IDirect3DRMFrame3_SetColor(p,a)                      (p)->SetColor(a)
     1828#define IDirect3DRMFrame3_SetColorRGB(p,a,b,c)               (p)->SetColorRGB(a,b,c)
     1829#define IDirect3DRMFrame3_GetZbufferMode(p)                  (p)->GetZbufferMode()
     1830#define IDirect3DRMFrame3_SetMaterialMode(p,a)               (p)->SetMaterialMode(a)
     1831#define IDirect3DRMFrame3_SetOrientation(p,a,b,c,d,e,f,g)    (p)->SetOrientation(a,b,c,d,e,f,g)
     1832#define IDirect3DRMFrame3_SetPosition(p,a,b,c,d)             (p)->SetPosition(a,b,c,d)
     1833#define IDirect3DRMFrame3_SetRotation(p,a,b,c,d,e)           (p)->SetRotation(a,b,c,d,e)
     1834#define IDirect3DRMFrame3_SetSortMode(p,a)                   (p)->SetSortMode(a)
     1835#define IDirect3DRMFrame3_SetTexture(p,a)                    (p)->SetTexture(a)
     1836#define IDirect3DRMFrame3_SetVelocity(p,a,b,c,d,e)           (p)->SetVelocity(a,b,c,d,e)
     1837#define IDirect3DRMFrame3_SetZbufferMode(p,a)                (p)->SetZbufferMode(a)
     1838#define IDirect3DRMFrame3_Transform(p,a,b)                   (p)->Transform(a,b)
     1839#define IDirect3DRMFrame3_GetBox(p,a)                        (p)->GetBox(a)
     1840#define IDirect3DRMFrame3_GetBoxEnable(p)                    (p)->GetBoxEnable()
     1841#define IDirect3DRMFrame3_GetAxes(p,a,b)                     (p)->GetAxes(a,b)
     1842#define IDirect3DRMFrame3_GetMaterial(p,a)                   (p)->GetMaterial(a)
     1843#define IDirect3DRMFrame3_GetInheritAxes(p)                  (p)->GetInheritAxes()
     1844#define IDirect3DRMFrame3_GetHierarchyBox(p,a)               (p)->GetHierarchyBox(a)
     1845#define IDirect3DRMFrame3_SetBox(p,a)                        (p)->SetBox(a)
     1846#define IDirect3DRMFrame3_SetBoxEnable(p,a)                  (p)->SetBoxEnable(a)
     1847#define IDirect3DRMFrame3_SetAxes(p,a,b,c,d,e,f)             (p)->SetAxes(a,b,c,d,e,f)
     1848#define IDirect3DRMFrame3_SetInheritAxes(p,a)                (p)->SetInheritAxes(a)
     1849#define IDirect3DRMFrame3_SetMaterial(p,a)                   (p)->SetMaterial(a)
     1850#define IDirect3DRMFrame3_SetQuaternion(p,a,b)               (p)->SetQuaternion(a,b)
     1851#define IDirect3DRMFrame3_RayPick(p,a,b,c,d)                 (p)->RayPick(a,b,c,d)
     1852#define IDirect3DRMFrame3_Save(p,a,b,c)                      (p)->Save(a,b,c)
     1853#define IDirect3DRMFrame3_TransformVectors(p,a,b,c,d)        (p)->TransformVectors(a,b,c,d)
     1854#define IDirect3DRMFrame3_InverseTransformVectors(p,a,b,c,d) (p)->InverseTransformVectors(a,b,c,d)
     1855#define IDirect3DRMFrame3_SetTraversalOptions(p,a)           (p)->SetTraversalOptions(a)
     1856#define IDirect3DRMFrame3_GetTraversalOptions(p,a)           (p)->GetTraversalOptions(a)
     1857#define IDirect3DRMFrame3_SetSceneFogMethod(p,a)             (p)->SetSceneFogMethod(a)
     1858#define IDirect3DRMFrame3_GetSceneFogMethod(p,a)             (p)->GetSceneFogMethod(a)
     1859#define IDirect3DRMFrame3_SetMaterialOverride(p,a)           (p)->SetMaterialOverride(a)
     1860#define IDirect3DRMFrame3_GetMaterialOverride(p,a)           (p)->GetMaterialOverride(a)
     1861#endif
     1862
     1863/*****************************************************************************
     1864 * IDirect3DRMMesh interface
     1865 */
     1866#define INTERFACE IDirect3DRMMesh
     1867DECLARE_INTERFACE_(IDirect3DRMMesh,IDirect3DRMVisual)
     1868{
     1869    /*** IUnknown methods ***/
     1870    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     1871    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     1872    STDMETHOD_(ULONG,Release)(THIS) PURE;
     1873    /*** IDirect3DRMObject methods ***/
     1874    STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     1875    STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     1876    STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     1877    STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
     1878    STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
     1879    STDMETHOD(SetName)(THIS_ LPCSTR) PURE;
     1880    STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     1881    STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     1882    /*** IDirect3DRMMesh methods ***/
     1883    STDMETHOD(Scale)(THIS_ D3DVALUE sx, D3DVALUE sy, D3DVALUE sz) PURE;
     1884    STDMETHOD(Translate)(THIS_ D3DVALUE tx, D3DVALUE ty, D3DVALUE tz) PURE;
     1885    STDMETHOD(GetBox)(THIS_ D3DRMBOX *) PURE;
     1886    STDMETHOD(AddGroup)(THIS_ unsigned vCount, unsigned fCount, unsigned vPerFace, unsigned *fData,
     1887        D3DRMGROUPINDEX *returnId) PURE;
     1888    STDMETHOD(SetVertices)(THIS_ D3DRMGROUPINDEX id, unsigned index, unsigned count,
     1889        D3DRMVERTEX *values) PURE;
     1890    STDMETHOD(SetGroupColor)(THIS_ D3DRMGROUPINDEX id, D3DCOLOR value) PURE;
     1891    STDMETHOD(SetGroupColorRGB)(THIS_ D3DRMGROUPINDEX id, D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE;
     1892    STDMETHOD(SetGroupMapping)(THIS_ D3DRMGROUPINDEX id, D3DRMMAPPING value) PURE;
     1893    STDMETHOD(SetGroupQuality)(THIS_ D3DRMGROUPINDEX id, D3DRMRENDERQUALITY value) PURE;
     1894    STDMETHOD(SetGroupMaterial)(THIS_ D3DRMGROUPINDEX id, LPDIRECT3DRMMATERIAL value) PURE;
     1895    STDMETHOD(SetGroupTexture)(THIS_ D3DRMGROUPINDEX id, LPDIRECT3DRMTEXTURE value) PURE;
     1896    STDMETHOD_(unsigned, GetGroupCount)(THIS) PURE;
     1897    STDMETHOD(GetGroup)(THIS_ D3DRMGROUPINDEX id, unsigned *vCount, unsigned *fCount, unsigned *vPerFace,
     1898        DWORD *fDataSize, unsigned *fData) PURE;
     1899    STDMETHOD(GetVertices)(THIS_ D3DRMGROUPINDEX id, DWORD index, DWORD count, D3DRMVERTEX *returnPtr) PURE;
     1900    STDMETHOD_(D3DCOLOR, GetGroupColor)(THIS_ D3DRMGROUPINDEX id) PURE;
     1901    STDMETHOD_(D3DRMMAPPING, GetGroupMapping)(THIS_ D3DRMGROUPINDEX id) PURE;
     1902    STDMETHOD_(D3DRMRENDERQUALITY, GetGroupQuality)(THIS_ D3DRMGROUPINDEX id) PURE;
     1903    STDMETHOD(GetGroupMaterial)(THIS_ D3DRMGROUPINDEX id, LPDIRECT3DRMMATERIAL *returnPtr) PURE;
     1904    STDMETHOD(GetGroupTexture)(THIS_ D3DRMGROUPINDEX id, LPDIRECT3DRMTEXTURE *returnPtr) PURE;
     1905};
     1906#undef INTERFACE
     1907
     1908#if !defined(__cplusplus) || defined(CINTERFACE)
     1909/*** IUnknown methods ***/
     1910#define IDirect3DRMMesh_QueryInterface(p,a,b)              (p)->lpVtbl->QueryInterface(p,a,b)
     1911#define IDirect3DRMMesh_AddRef(p)                          (p)->lpVtbl->AddRef(p)
     1912#define IDirect3DRMMesh_Release(p)                         (p)->lpVtbl->Release(p)
     1913/*** IDirect3DRMObject methods ***/
     1914#define IDirect3DRMMesh_Clone(p,a,b,c)                     (p)->lpVtbl->Clone(p,a,b,c)
     1915#define IDirect3DRMMesh_AddDestroyCallback(p,a,b)          (p)->lpVtbl->AddDestroyCallback(p,a,b)
     1916#define IDirect3DRMMesh_DeleteDestroyCallback(p,a,b)       (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
     1917#define IDirect3DRMMesh_SetAppData(p,a)                    (p)->lpVtbl->SetAppData(p,a)
     1918#define IDirect3DRMMesh_GetAppData(p)                      (p)->lpVtbl->GetAppData(p)
     1919#define IDirect3DRMMesh_SetName(p,a)                       (p)->lpVtbl->SetName(p,a)
     1920#define IDirect3DRMMesh_GetName(p,a,b)                     (p)->lpVtbl->GetName(p,a,b)
     1921#define IDirect3DRMMesh_GetClassName(p,a,b)                (p)->lpVtbl->GetClassName(p,a,b)
     1922/*** IDirect3DRMMesh methods ***/
     1923#define IDirect3DRMMesh_Scale(p,a,b,c)                     (p)->lpVtbl->Scale(p,a,b,c)
     1924#define IDirect3DRMMesh_Translate(p,a,b,c)                 (p)->lpVtbl->Translate(p,a,b,c)
     1925#define IDirect3DRMMesh_GetBox(p,a)                        (p)->lpVtbl->GetBox(p,a)
     1926#define IDirect3DRMMesh_AddGroup(p,a,b,c,d,e)              (p)->lpVtbl->AddGroup(p,a,b,c,d,e)
     1927#define IDirect3DRMMesh_SetVertices(p,a,b,c,d)             (p)->lpVtbl->SetVertices(p,a,b,c,d)
     1928#define IDirect3DRMMesh_SetGroupColor(p,a,b)               (p)->lpVtbl->SetGroupColor(p,a,b)
     1929#define IDirect3DRMMesh_SetGroupColorRGB(p,a,b,c,d)        (p)->lpVtbl->SetGroupColorRGB(p,a,b,c,d)
     1930#define IDirect3DRMMesh_SetGroupMapping(p,a,b)             (p)->lpVtbl->SetGroupMapping(p,a,b)
     1931#define IDirect3DRMMesh_SetGroupQuality(p,a,b)             (p)->lpVtbl->SetGroupQuality(p,a,b)
     1932#define IDirect3DRMMesh_SetGroupMaterial(p,a,b)            (p)->lpVtbl->SetGroupMaterial(p,a,b)
     1933#define IDirect3DRMMesh_SetGroupTexture(p,a,b)             (p)->lpVtbl->SetGroupTexture(p,a,b)
     1934#define IDirect3DRMMesh_GetGroupCount(p)                   (p)->lpVtbl->GetGroupCount(p)
     1935#define IDirect3DRMMesh_GetGroup(p,a,b,c,d,e,f)            (p)->lpVtbl->GetGroup(p,a,b,c,d,e,f)
     1936#define IDirect3DRMMesh_GetVertices(p,a,b,c,d)             (p)->lpVtbl->GetVertices(p,a,b,c,d)
     1937#define IDirect3DRMMesh_GetGroupColor(p,a)                 (p)->lpVtbl->GetGroupColor(p,a)
     1938#define IDirect3DRMMesh_GetGroupMapping(p,a)               (p)->lpVtbl->GetGroupMapping(p,a)
     1939#define IDirect3DRMMesh_GetGroupQuality(p,a)               (p)->lpVtbl->GetGroupQuality(p,a)
     1940#define IDirect3DRMMesh_GetGroupMaterial(p,a,b)            (p)->lpVtbl->GetGroupMaterial(p,a,b)
     1941#define IDirect3DRMMesh_GetGroupTexture(p,a,b)             (p)->lpVtbl->GetGroupTexture(p,a,b)
     1942#else
     1943/*** IUnknown methods ***/
     1944#define IDirect3DRMMesh_QueryInterface(p,a,b)              (p)->QueryInterface(a,b)
     1945#define IDirect3DRMMesh_AddRef(p)                          (p)->AddRef()
     1946#define IDirect3DRMMesh_Release(p)                         (p)->Release()
     1947/*** IDirect3DRMObject methods ***/
     1948#define IDirect3DRMMesh_Clone(p,a,b,c)                     (p)->Clone(a,b,c)
     1949#define IDirect3DRMMesh_AddDestroyCallback(p,a,b)          (p)->AddDestroyCallback(a,b)
     1950#define IDirect3DRMMesh_DeleteDestroyCallback(p,a,b)       (p)->DeleteDestroyCallback(a,b)
     1951#define IDirect3DRMMesh_SetAppData(p,a)                    (p)->SetAppData(a)
     1952#define IDirect3DRMMesh_GetAppData(p)                      (p)->GetAppData()
     1953#define IDirect3DRMMesh_SetName(p,a)                       (p)->SetName(a)
     1954#define IDirect3DRMMesh_GetName(p,a,b)                     (p)->GetName(a,b)
     1955#define IDirect3DRMMesh_GetClassName(p,a,b)                (p)->GetClassName(a,b)
     1956/*** IDirect3DRMMesh methods ***/
     1957#define IDirect3DRMMesh_Scale(p,a,b,c)                     (p)->Scale(a,b,c)
     1958#define IDirect3DRMMesh_Translate(p,a,b,c)                 (p)->Translate(a,b,c)
     1959#define IDirect3DRMMesh_GetBox(p,a)                        (p)->GetBox(a)
     1960#define IDirect3DRMMesh_AddGroup(p,a,b,c,d,e)              (p)->AddGroup(a,b,c,d,e)
     1961#define IDirect3DRMMesh_SetVertices(p,a,b,c,d)             (p)->SetVertices(a,b,c,d)
     1962#define IDirect3DRMMesh_SetGroupColor(p,a,b)               (p)->SetGroupColor(a,b)
     1963#define IDirect3DRMMesh_SetGroupColorRGB(p,a,b,c,d)        (p)->SetGroupColorRGB(a,b,c,d)
     1964#define IDirect3DRMMesh_SetGroupMapping(p,a,b)             (p)->SetGroupMapping(a,b)
     1965#define IDirect3DRMMesh_SetGroupQuality(p,a,b)             (p)->SetGroupQuality(a,b)
     1966#define IDirect3DRMMesh_SetGroupMaterial(p,a,b)            (p)->SetGroupMaterial(a,b)
     1967#define IDirect3DRMMesh_SetGroupTexture(p,a,b)             (p)->SetGroupTexture(a,b)
     1968#define IDirect3DRMMesh_GetGroupCount(p)                   (p)->GetGroupCount()
     1969#define IDirect3DRMMesh_GetGroup(p,a,b,c,d,e,f)            (p)->GetGroup(a,b,c,d,e,f)
     1970#define IDirect3DRMMesh_GetVertices(p,a,b,c,d)             (p)->GetVertices(a,b,c,d)
     1971#define IDirect3DRMMesh_GetGroupColor(p,a)                 (p)->GetGroupColor(a)
     1972#define IDirect3DRMMesh_GetGroupMapping(p,a)               (p)->GetGroupMapping(a)
     1973#define IDirect3DRMMesh_GetGroupQuality(p,a)               (p)->GetGroupQuality(a)
     1974#define IDirect3DRMMesh_GetGroupMaterial(p,a,b)            (p)->lpVtbl->GetGroupMaterial(a,b)
     1975#define IDirect3DRMMesh_GetGroupTexture(p,a,b)             (p)->lpVtbl->GetGroupTexture(a,b)
     1976#endif
     1977
     1978/*****************************************************************************
     1979 * IDirect3DRMProgressiveMesh interface
     1980 */
     1981#define INTERFACE IDirect3DRMProgressiveMesh
     1982DECLARE_INTERFACE_(IDirect3DRMProgressiveMesh,IDirect3DRMVisual)
     1983{
     1984    /*** IUnknown methods ***/
     1985    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     1986    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     1987    STDMETHOD_(ULONG,Release)(THIS) PURE;
     1988    /*** IDirect3DRMObject methods ***/
     1989    STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     1990    STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     1991    STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     1992    STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
     1993    STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
     1994    STDMETHOD(SetName)(THIS_ LPCSTR) PURE;
     1995    STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     1996    STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     1997    /*** IDirect3DRMProgressiveMesh methods ***/
     1998    STDMETHOD(Load) (THIS_ LPVOID pObjLocation, LPVOID pObjId, D3DRMLOADOPTIONS dloLoadflags,
     1999        D3DRMLOADTEXTURECALLBACK pCallback, LPVOID lpArg) PURE;
     2000    STDMETHOD(GetLoadStatus) (THIS_ LPD3DRMPMESHLOADSTATUS pStatus) PURE;
     2001    STDMETHOD(SetMinRenderDetail) (THIS_ D3DVALUE d3dVal) PURE;
     2002    STDMETHOD(Abort) (THIS_ DWORD flags) PURE;
     2003    STDMETHOD(GetFaceDetail) (THIS_ LPDWORD pCount) PURE;
     2004    STDMETHOD(GetVertexDetail) (THIS_ LPDWORD pCount) PURE;
     2005    STDMETHOD(SetFaceDetail) (THIS_ DWORD count) PURE;
     2006    STDMETHOD(SetVertexDetail) (THIS_ DWORD count) PURE;
     2007    STDMETHOD(GetFaceDetailRange) (THIS_ LPDWORD pMin, LPDWORD pMax) PURE;
     2008    STDMETHOD(GetVertexDetailRange) (THIS_ LPDWORD pMin, LPDWORD pMax) PURE;
     2009    STDMETHOD(GetDetail) (THIS_ D3DVALUE *pdvVal) PURE;
     2010    STDMETHOD(SetDetail) (THIS_ D3DVALUE d3dVal) PURE;
     2011    STDMETHOD(RegisterEvents) (THIS_ HANDLE event, DWORD flags, DWORD reserved) PURE;
     2012    STDMETHOD(CreateMesh) (THIS_ LPDIRECT3DRMMESH *ppD3DRMMesh) PURE;
     2013    STDMETHOD(Duplicate) (THIS_ LPDIRECT3DRMPROGRESSIVEMESH *ppD3DRMPMesh) PURE;
     2014    STDMETHOD(GetBox) (THIS_ LPD3DRMBOX pBBox) PURE;
     2015    STDMETHOD(SetQuality) (THIS_ D3DRMRENDERQUALITY) PURE;
     2016    STDMETHOD(GetQuality) (THIS_ LPD3DRMRENDERQUALITY pQuality) PURE;
     2017};
     2018#undef INTERFACE
     2019
     2020#if !defined(__cplusplus) || defined(CINTERFACE)
     2021/*** IUnknown methods ***/
     2022#define IDirect3DRMProgressiveMesh_QueryInterface(p,a,b)          (p)->lpVtbl->QueryInterface(p,a,b)
     2023#define IDirect3DRMProgressiveMesh_AddRef(p)                      (p)->lpVtbl->AddRef(p)
     2024#define IDirect3DRMProgressiveMesh_Release(p)                     (p)->lpVtbl->Release(p)
     2025/*** IDirect3DRMObject methods ***/
     2026#define IDirect3DRMProgressiveMesh_Clone(p,a,b,c)                 (p)->lpVtbl->Clone(p,a,b,c)
     2027#define IDirect3DRMProgressiveMesh_AddDestroyCallback(p,a,b)      (p)->lpVtbl->AddDestroyCallback(p,a,b)
     2028#define IDirect3DRMProgressiveMesh_DeleteDestroyCallback(p,a,b)   (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
     2029#define IDirect3DRMProgressiveMesh_SetAppData(p,a)                (p)->lpVtbl->SetAppData(p,a)
     2030#define IDirect3DRMProgressiveMesh_GetAppData(p)                  (p)->lpVtbl->GetAppData(p)
     2031#define IDirect3DRMProgressiveMesh_SetName(p,a)                   (p)->lpVtbl->SetName(p,a)
     2032#define IDirect3DRMProgressiveMesh_GetName(p,a,b)                 (p)->lpVtbl->GetName(p,a,b)
     2033#define IDirect3DRMProgressiveMesh_GetClassName(p,a,b)            (p)->lpVtbl->GetClassName(p,a,b)
     2034/*** IDirect3DRMProgressiveMesh methods ***/
     2035#define IDirect3DRMProgressiveMesh_Load(p,a,b,c,d,e)              (p)->lpVtbl->Load(p,a,b,c,d,e)
     2036#define IDirect3DRMProgressiveMesh_GetLoadStatus(p,a)             (p)->lpVtbl->GetLoadStatus(p,a)
     2037#define IDirect3DRMProgressiveMesh_SetMinRenderDetail(p,a)        (p)->lpVtbl->SetMinRenderDetail(p,a)
     2038#define IDirect3DRMProgressiveMesh_Abort(p,a)                     (p)->lpVtbl->Abort(p,a)
     2039#define IDirect3DRMProgressiveMesh_GetFaceDetail(p,a)             (p)->lpVtbl->GetFaceDetail(p,a)
     2040#define IDirect3DRMProgressiveMesh_GetVertexDetail(p,a)           (p)->lpVtbl->GetVertexDetail(p,a)
     2041#define IDirect3DRMProgressiveMesh_SetFaceDetail(p,a)             (p)->lpVtbl->SetFaceDetail(p,a)
     2042#define IDirect3DRMProgressiveMesh_SetVertexDetail(p,a)           (p)->lpVtbl->SetVertexDetail(p,a)
     2043#define IDirect3DRMProgressiveMesh_GetFaceDetailRange(p,a,b)      (p)->lpVtbl->GetFaceDetailRange(p,a,b)
     2044#define IDirect3DRMProgressiveMesh_GetVertexDetailRange(p,a,b)    (p)->lpVtbl->GetVertexDetailRange(p,a,b)
     2045#define IDirect3DRMProgressiveMesh_GetDetail(p,a)                 (p)->lpVtbl->GetDetail(p,a)
     2046#define IDirect3DRMProgressiveMesh_SetDetail(p,a)                 (p)->lpVtbl->SetDetail(p,a)
     2047#define IDirect3DRMProgressiveMesh_RegisterEvents(p,a,b,c)        (p)->lpVtbl->RegisterEvents(p,a,b,c)
     2048#define IDirect3DRMProgressiveMesh_CreateMesh(p,a)                (p)->lpVtbl->CreateMesh(p,a)
     2049#define IDirect3DRMProgressiveMesh_Duplicate(p,a)                 (p)->lpVtbl->Duplicate(p,a)
     2050#define IDirect3DRMProgressiveMesh_GetBox(p,a)                    (p)->lpVtbl->GetBox(p,a)
     2051#define IDirect3DRMProgressiveMesh_SetQuality(p,a)                (p)->lpVtbl->SetQuality(p,a)
     2052#define IDirect3DRMProgressiveMesh_GetQuality(p,a)                (p)->lpVtbl->GetQuality(p,a)
     2053#else
     2054/*** IUnknown methods ***/
     2055#define IDirect3DRMProgressiveMesh_QueryInterface(p,a,b)          (p)->QueryInterface(a,b)
     2056#define IDirect3DRMProgressiveMesh_AddRef(p)                      (p)->AddRef()
     2057#define IDirect3DRMProgressiveMesh_Release(p)                     (p)->Release()
     2058/*** IDirect3DRMObject methods ***/
     2059#define IDirect3DRMProgressiveMesh_Clone(p,a,b,c)                 (p)->Clone(a,b,c)
     2060#define IDirect3DRMProgressiveMesh_AddDestroyCallback(p,a,b)      (p)->AddDestroyCallback(a,b)
     2061#define IDirect3DRMProgressiveMesh_DeleteDestroyCallback(p,a,b)   (p)->DeleteDestroyCallback(a,b)
     2062#define IDirect3DRMProgressiveMesh_SetAppData(p,a)                (p)->SetAppData(a)
     2063#define IDirect3DRMProgressiveMesh_GetAppData(p)                  (p)->GetAppData()
     2064#define IDirect3DRMProgressiveMesh_SetName(p,a)                   (p)->SetName(a)
     2065#define IDirect3DRMProgressiveMesh_GetName(p,a,b)                 (p)->GetName(a,b)
     2066#define IDirect3DRMProgressiveMesh_GetClassName(p,a,b)            (p)->GetClassName(a,b)
     2067/*** IDirect3DRMProgressiveMesh methods ***/
     2068#define IDirect3DRMProgressiveMesh_Load(p,a,b,c,d,e)              (p)->Load(a,b,c,d,e)
     2069#define IDirect3DRMProgressiveMesh_GetLoadStatus(p,a)             (p)->GetLoadStatus(a)
     2070#define IDirect3DRMProgressiveMesh_SetMinRenderDetail(p,a)        (p)->SetMinRenderDetail(a)
     2071#define IDirect3DRMProgressiveMesh_Abort(p,a)                     (p)->Abort(a)
     2072#define IDirect3DRMProgressiveMesh_GetFaceDetail(p,a)             (p)->GetFaceDetail(a)
     2073#define IDirect3DRMProgressiveMesh_GetVertexDetail(p,a)           (p)->GetVertexDetail(a)
     2074#define IDirect3DRMProgressiveMesh_SetFaceDetail(p,a)             (p)->SetFaceDetail(a)
     2075#define IDirect3DRMProgressiveMesh_SetVertexDetail(p,a)           (p)->SetVertexDetail(a)
     2076#define IDirect3DRMProgressiveMesh_GetFaceDetailRange(p,a,b)      (p)->GetFaceDetailRange(a,b)
     2077#define IDirect3DRMProgressiveMesh_GetVertexDetailRange(p,a,b)    (p)->GetVertexDetailRange(a,b)
     2078#define IDirect3DRMProgressiveMesh_GetDetail(p,a)                 (p)->GetDetail(a)
     2079#define IDirect3DRMProgressiveMesh_SetDetail(p,a)                 (p)->SetDetail(a)
     2080#define IDirect3DRMProgressiveMesh_RegisterEvents(p,a,b,c)        (p)->RegisterEvents(a,b,c)
     2081#define IDirect3DRMProgressiveMesh_CreateMesh(p,a)                (p)->CreateMesh(a)
     2082#define IDirect3DRMProgressiveMesh_Duplicate(p,a)                 (p)->Duplicate(a)
     2083#define IDirect3DRMProgressiveMesh_GetBox(p,a)                    (p)->GetBox(a)
     2084#define IDirect3DRMProgressiveMesh_SetQuality(p,a)                (p)->SetQuality(a)
     2085#define IDirect3DRMProgressiveMesh_GetQuality(p,a)                (p)->GetQuality(a)
     2086#endif
     2087
     2088/*****************************************************************************
     2089 * IDirect3DRMShadow interface
     2090 */
     2091#define INTERFACE IDirect3DRMShadow
     2092DECLARE_INTERFACE_(IDirect3DRMShadow,IDirect3DRMVisual)
     2093{
     2094    /*** IUnknown methods ***/
     2095    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     2096    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     2097    STDMETHOD_(ULONG,Release)(THIS) PURE;
     2098    /*** IDirect3DRMObject methods ***/
     2099    STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     2100    STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     2101    STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     2102    STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
     2103    STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
     2104    STDMETHOD(SetName)(THIS_ LPCSTR) PURE;
     2105    STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     2106    STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     2107    /*** IDirect3DRMShadow methods ***/
     2108    STDMETHOD(Init)(THIS_ LPDIRECT3DRMVISUAL visual, LPDIRECT3DRMLIGHT light,
     2109        D3DVALUE px, D3DVALUE py, D3DVALUE pz, D3DVALUE nx, D3DVALUE ny, D3DVALUE nz) PURE;
     2110};
     2111#undef INTERFACE
     2112
     2113#if !defined(__cplusplus) || defined(CINTERFACE)
     2114/*** IUnknown methods ***/
     2115#define IDirect3DRMShadow_QueryInterface(p,a,b)          (p)->lpVtbl->QueryInterface(p,a,b)
     2116#define IDirect3DRMShadow_AddRef(p)                      (p)->lpVtbl->AddRef(p)
     2117#define IDirect3DRMShadow_Release(p)                     (p)->lpVtbl->Release(p)
     2118/*** IDirect3DRMObject methods ***/
     2119#define IDirect3DRMShadow_Clone(p,a,b,c)                 (p)->lpVtbl->Clone(p,a,b,c)
     2120#define IDirect3DRMShadow_AddDestroyCallback(p,a,b)      (p)->lpVtbl->AddDestroyCallback(p,a,b)
     2121#define IDirect3DRMShadow_DeleteDestroyCallback(p,a,b)   (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
     2122#define IDirect3DRMShadow_SetAppData(p,a)                (p)->lpVtbl->SetAppData(p,a)
     2123#define IDirect3DRMShadow_GetAppData(p)                  (p)->lpVtbl->GetAppData(p)
     2124#define IDirect3DRMShadow_SetName(p,a)                   (p)->lpVtbl->SetName(p,a)
     2125#define IDirect3DRMShadow_GetName(p,a,b)                 (p)->lpVtbl->GetName(p,a,b)
     2126#define IDirect3DRMShadow_GetClassName(p,a,b)            (p)->lpVtbl->GetClassName(p,a,b)
     2127/*** IDirect3DRMShadow methods ***/
     2128#define IDirect3DRMShadow_Init(p,a,b,c,d,e,f,g)          (p)->lpVtbl->Load(p,a,b,c,d,e,f,g)
     2129#else
     2130/*** IUnknown methods ***/
     2131#define IDirect3DRMShadow_QueryInterface(p,a,b)          (p)->QueryInterface(a,b)
     2132#define IDirect3DRMShadow_AddRef(p)                      (p)->AddRef()
     2133#define IDirect3DRMShadow_Release(p)                     (p)->Release()
     2134/*** IDirect3DRMObject methods ***/
     2135#define IDirect3DRMShadow_Clone(p,a,b,c)                 (p)->Clone(a,b,c)
     2136#define IDirect3DRMShadow_AddDestroyCallback(p,a,b)      (p)->AddDestroyCallback(a,b)
     2137#define IDirect3DRMShadow_DeleteDestroyCallback(p,a,b)   (p)->DeleteDestroyCallback(a,b)
     2138#define IDirect3DRMShadow_SetAppData(p,a)                (p)->SetAppData(a)
     2139#define IDirect3DRMShadow_GetAppData(p)                  (p)->GetAppData()
     2140#define IDirect3DRMShadow_SetName(p,a)                   (p)->SetName(a)
     2141#define IDirect3DRMShadow_GetName(p,a,b)                 (p)->GetName(a,b)
     2142#define IDirect3DRMShadow_GetClassName(p,a,b)            (p)->GetClassName(a,b)
     2143/*** IDirect3DRMShadow methods ***/
     2144#define IDirect3DRMShadow_Init(p,a,b,c,d,e,f,g)          (p)->Load(a,b,c,d,e,f,g)
     2145#endif
     2146
     2147/*****************************************************************************
     2148 * IDirect3DRMShadow2 interface
     2149 */
     2150#define INTERFACE IDirect3DRMShadow2
     2151DECLARE_INTERFACE_(IDirect3DRMShadow2,IDirect3DRMVisual)
     2152{
     2153    /*** IUnknown methods ***/
     2154    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     2155    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     2156    STDMETHOD_(ULONG,Release)(THIS) PURE;
     2157    /*** IDirect3DRMObject methods ***/
     2158    STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     2159    STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     2160    STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     2161    STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
     2162    STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
     2163    STDMETHOD(SetName)(THIS_ LPCSTR) PURE;
     2164    STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     2165    STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     2166    /*** IDirect3DRMShadow methods ***/
     2167    STDMETHOD(Init)(THIS_ LPUNKNOWN pUNK, LPDIRECT3DRMLIGHT light,
     2168        D3DVALUE px, D3DVALUE py, D3DVALUE pz, D3DVALUE nx, D3DVALUE ny, D3DVALUE nz) PURE;
     2169    /*** IDirect3DRMShadow2 methods ***/
     2170    STDMETHOD(GetVisual)(THIS_ LPDIRECT3DRMVISUAL *) PURE;
     2171    STDMETHOD(SetVisual)(THIS_ LPUNKNOWN pUNK, DWORD) PURE;
     2172    STDMETHOD(GetLight)(THIS_ LPDIRECT3DRMLIGHT *) PURE;
     2173    STDMETHOD(SetLight)(THIS_ LPDIRECT3DRMLIGHT, DWORD) PURE;
     2174    STDMETHOD(GetPlane)(THIS_ LPD3DVALUE px, LPD3DVALUE py, LPD3DVALUE pz,
     2175        LPD3DVALUE nx, LPD3DVALUE ny, LPD3DVALUE nz) PURE;
     2176    STDMETHOD(SetPlane)(THIS_ D3DVALUE px, D3DVALUE py, D3DVALUE pz,
     2177        D3DVALUE nx, D3DVALUE ny, D3DVALUE nz, DWORD) PURE;
     2178    STDMETHOD(GetOptions)(THIS_ LPDWORD) PURE;
     2179    STDMETHOD(SetOptions)(THIS_ DWORD) PURE;
     2180};
     2181#undef INTERFACE
     2182
     2183#if !defined(__cplusplus) || defined(CINTERFACE)
     2184/*** IUnknown methods ***/
     2185#define IDirect3DRMShadow2_QueryInterface(p,a,b)          (p)->lpVtbl->QueryInterface(p,a,b)
     2186#define IDirect3DRMShadow2_AddRef(p)                      (p)->lpVtbl->AddRef(p)
     2187#define IDirect3DRMShadow2_Release(p)                     (p)->lpVtbl->Release(p)
     2188/*** IDirect3DRMObject methods ***/
     2189#define IDirect3DRMShadow2_Clone(p,a,b,c)                 (p)->lpVtbl->Clone(p,a,b,c)
     2190#define IDirect3DRMShadow2_AddDestroyCallback(p,a,b)      (p)->lpVtbl->AddDestroyCallback(p,a,b)
     2191#define IDirect3DRMShadow2_DeleteDestroyCallback(p,a,b)   (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
     2192#define IDirect3DRMShadow2_SetAppData(p,a)                (p)->lpVtbl->SetAppData(p,a)
     2193#define IDirect3DRMShadow2_GetAppData(p)                  (p)->lpVtbl->GetAppData(p)
     2194#define IDirect3DRMShadow2_SetName(p,a)                   (p)->lpVtbl->SetName(p,a)
     2195#define IDirect3DRMShadow2_GetName(p,a,b)                 (p)->lpVtbl->GetName(p,a,b)
     2196#define IDirect3DRMShadow2_GetClassName(p,a,b)            (p)->lpVtbl->GetClassName(p,a,b)
     2197/*** IDirect3DRMShadow methods ***/
     2198#define IDirect3DRMShadow2_Init(p,a,b,c,d,e,f,g)          (p)->lpVtbl->Init(p,a,b,c,d,e,f,g)
     2199/*** IDirect3DRMShadow2 methods ***/
     2200#define IDirect3DRMShadow2_GetVisual(p,a)                 (p)->lpVtbl->GetVisual(p,a)
     2201#define IDirect3DRMShadow2_SetVisual(p,a,b)               (p)->lpVtbl->SetVisual(p,a,b)
     2202#define IDirect3DRMShadow2_GetLight(p,a)                  (p)->lpVtbl->GetLight(p,a)
     2203#define IDirect3DRMShadow2_SetLight(p,a,b)                (p)->lpVtbl->SetLight(p,a,b)
     2204#define IDirect3DRMShadow2_GetPlane(p,a,b,c,d,e,f)        (p)->lpVtbl->GetPlane(p,a,b,c,d,e,f)
     2205#define IDirect3DRMShadow2_SetPlane(p,a,b,c,d,e,f)        (p)->lpVtbl->SetPlane(p,a,b,c,d,e,f)
     2206#define IDirect3DRMShadow2_GetOptions(p,a)                (p)->lpVtbl->GetOptions(p,a)
     2207#define IDirect3DRMShadow2_SetOptions(p,a)                (p)->lpVtbl->SetOptions(p,a)
     2208#else
     2209/*** IUnknown methods ***/
     2210#define IDirect3DRMShadow2_QueryInterface(p,a,b)          (p)->QueryInterface(a,b)
     2211#define IDirect3DRMShadow2_AddRef(p)                      (p)->AddRef()
     2212#define IDirect3DRMShadow2_Release(p)                     (p)->Release()
     2213/*** IDirect3DRMObject methods ***/
     2214#define IDirect3DRMShadow2_Clone(p,a,b,c)                 (p)->Clone(a,b,c)
     2215#define IDirect3DRMShadow2_AddDestroyCallback(p,a,b)      (p)->AddDestroyCallback(a,b)
     2216#define IDirect3DRMShadow2_DeleteDestroyCallback(p,a,b)   (p)->DeleteDestroyCallback(a,b)
     2217#define IDirect3DRMShadow2_SetAppData(p,a)                (p)->SetAppData(a)
     2218#define IDirect3DRMShadow2_GetAppData(p)                  (p)->GetAppData()
     2219#define IDirect3DRMShadow2_SetName(p,a)                   (p)->SetName(a)
     2220#define IDirect3DRMShadow2_GetName(p,a,b)                 (p)->GetName(a,b)
     2221#define IDirect3DRMShadow2_GetClassName(p,a,b)            (p)->GetClassName(a,b)
     2222/*** IDirect3DRMShadow methods ***/
     2223#define IDirect3DRMShadow2_Init(p,a,b,c,d,e,f,g)          (p)->Init(a,b,c,d,e,f,g)
     2224/*** IDirect3DRMShadow2 methods ***/
     2225#define IDirect3DRMShadow2_GetVisual(p,a)                 (p)->GetVisual(a)
     2226#define IDirect3DRMShadow2_SetVisual(p,a,b)               (p)->SetVisual(a,b)
     2227#define IDirect3DRMShadow2_GetLight(p,a)                  (p)->GetLight(a)
     2228#define IDirect3DRMShadow2_SetLight(p,a,b)                (p)->SetLight(a,b)
     2229#define IDirect3DRMShadow2_GetPlane(p,a,b,c,d,e,f)        (p)->GetPlane(a,b,c,d,e,f)
     2230#define IDirect3DRMShadow2_SetPlane(p,a,b,c,d,e,f)        (p)->SetPlane(a,b,c,d,e,f)
     2231#define IDirect3DRMShadow2_GetOptions(p,a)                (p)->GetOptions(a)
     2232#define IDirect3DRMShadow2_SetOptions(p,a)                (p)->lpVtbl->SetOptions(p,a)
     2233#endif
     2234
     2235/*****************************************************************************
     2236 * IDirect3DRMFace interface
     2237 */
     2238#define INTERFACE IDirect3DRMFace
     2239DECLARE_INTERFACE_(IDirect3DRMFace,IDirect3DRMObject)
     2240{
     2241    /*** IUnknown methods ***/
     2242    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     2243    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     2244    STDMETHOD_(ULONG,Release)(THIS) PURE;
     2245    /*** IDirect3DRMObject methods ***/
     2246    STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     2247    STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     2248    STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     2249    STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
     2250    STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
     2251    STDMETHOD(SetName)(THIS_ LPCSTR) PURE;
     2252    STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     2253    STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     2254    /*** IDirect3DRMFace methods ***/
     2255    STDMETHOD(AddVertex)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     2256    STDMETHOD(AddVertexAndNormalIndexed)(THIS_ DWORD vertex, DWORD normal) PURE;
     2257    STDMETHOD(SetColorRGB)(THIS_ D3DVALUE, D3DVALUE, D3DVALUE) PURE;
     2258    STDMETHOD(SetColor)(THIS_ D3DCOLOR) PURE;
     2259    STDMETHOD(SetTexture)(THIS_ LPDIRECT3DRMTEXTURE) PURE;
     2260    STDMETHOD(SetTextureCoordinates)(THIS_ DWORD vertex, D3DVALUE u, D3DVALUE v) PURE;
     2261    STDMETHOD(SetMaterial)(THIS_ LPDIRECT3DRMMATERIAL) PURE;
     2262    STDMETHOD(SetTextureTopology)(THIS_ BOOL wrap_u, BOOL wrap_v) PURE;
     2263    STDMETHOD(GetVertex)(THIS_ DWORD index, D3DVECTOR *vertex, D3DVECTOR *normal) PURE;
     2264    STDMETHOD(GetVertices)(THIS_ DWORD *vertex_count, D3DVECTOR *coords, D3DVECTOR *normals);
     2265    STDMETHOD(GetTextureCoordinates)(THIS_ DWORD vertex, D3DVALUE *u, D3DVALUE *v) PURE;
     2266    STDMETHOD(GetTextureTopology)(THIS_ BOOL *wrap_u, BOOL *wrap_v) PURE;
     2267    STDMETHOD(GetNormal)(THIS_ D3DVECTOR *) PURE;
     2268    STDMETHOD(GetTexture)(THIS_ LPDIRECT3DRMTEXTURE *) PURE;
     2269    STDMETHOD(GetMaterial)(THIS_ LPDIRECT3DRMMATERIAL *) PURE;
     2270    STDMETHOD_(int, GetVertexCount)(THIS) PURE;
     2271    STDMETHOD_(int, GetVertexIndex)(THIS_ DWORD which) PURE;
     2272    STDMETHOD_(int, GetTextureCoordinateIndex)(THIS_ DWORD which) PURE;
     2273    STDMETHOD_(D3DCOLOR, GetColor)(THIS) PURE;
     2274};
     2275#undef INTERFACE
     2276
     2277#if !defined(__cplusplus) || defined(CINTERFACE)
     2278/*** IUnknown methods ***/
     2279#define IDirect3DRMFace_QueryInterface(p,a,b)             (p)->lpVtbl->QueryInterface(p,a,b)
     2280#define IDirect3DRMFace_AddRef(p)                         (p)->lpVtbl->AddRef(p)
     2281#define IDirect3DRMFace_Release(p)                        (p)->lpVtbl->Release(p)
     2282/*** IDirect3DRMObject methods ***/
     2283#define IDirect3DRMFace_Clone(p,a,b,c)                    (p)->lpVtbl->Clone(p,a,b,c)
     2284#define IDirect3DRMFace_AddDestroyCallback(p,a,b)         (p)->lpVtbl->AddDestroyCallback(p,a,b)
     2285#define IDirect3DRMFace_DeleteDestroyCallback(p,a,b)      (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
     2286#define IDirect3DRMFace_SetAppData(p,a)                   (p)->lpVtbl->SetAppData(p,a)
     2287#define IDirect3DRMFace_GetAppData(p)                     (p)->lpVtbl->GetAppData(p)
     2288#define IDirect3DRMFace_SetName(p,a)                      (p)->lpVtbl->SetName(p,a)
     2289#define IDirect3DRMFace_GetName(p,a,b)                    (p)->lpVtbl->GetName(p,a,b)
     2290#define IDirect3DRMFace_GetClassName(p,a,b)               (p)->lpVtbl->GetClassName(p,a,b)
     2291/*** IDirect3DRMFace methods ***/
     2292#define IDirect3DRMFace_AddVertex(p,a,b,c)                (p)->lpVtbl->AddVertex(p,a,b,c)
     2293#define IDirect3DRMFace_AddVertexAndNormalIndexed(p,a,b)  (p)->lpVtbl->AddVertexAndNormalIndexed(p,a,b)
     2294#define IDirect3DRMFace_SetColorRGB(p,a,b,c)              (p)->lpVtbl->SetColorRGB(p,a,b,c)
     2295#define IDirect3DRMFace_SetColor(p,a)                     (p)->lpVtbl->SetColor(p,a)
     2296#define IDirect3DRMFace_SetTexture(p,a)                   (p)->lpVtbl->SetTexture(p,a)
     2297#define IDirect3DRMFace_SetTextureCoordinates(p,a,b,c)    (p)->lpVtbl->SetTextureCoordinates(p,a,b,c)
     2298#define IDirect3DRMFace_SetMaterial(p,a)                  (p)->lpVtbl->SetMaterial(p,a)
     2299#define IDirect3DRMFace_SetTextureTopology(p,a,b)         (p)->lpVtbl->SetTextureTopology(p,a,b)
     2300#define IDirect3DRMFace_GetVertex(p,a,b,c)                (p)->lpVtbl->GetVertex(p,a,b,c)
     2301#define IDirect3DRMFace_GetVertices(p,a,b,c)              (p)->lpVtbl->GetVertices(p,a,b,c)
     2302#define IDirect3DRMFace_GetTextureCoordinates(p,a,b,c)    (p)->lpVtbl->GetTextureCoordinates(p,a,b,c)
     2303#define IDirect3DRMFace_GetTextureTopology(p,a,b)         (p)->lpVtbl->GetTextureTopology(p,a,b)
     2304#define IDirect3DRMFace_GetNormal(p,a)                    (p)->lpVtbl->GetNormal(p,a)
     2305#define IDirect3DRMFace_GetTexture(p,a)                   (p)->lpVtbl->GetTexture(p,a)
     2306#define IDirect3DRMFace_GetVertexCount(p)                 (p)->lpVtbl->GetVertexCount(p)
     2307#define IDirect3DRMFace_GetVertexIndex(p,a)               (p)->lpVtbl->GetVertexIndex(p,a)
     2308#define IDirect3DRMFace_GetTextureCoordinateIndex(p,a)    (p)->lpVtbl->GetTextureCoordinateIndex(p,a)
     2309#define IDirect3DRMFace_GetColor(p,a)                     (p)->lpVtbl->GetColor(p,a)
     2310#else
     2311/*** IUnknown methods ***/
     2312#define IDirect3DRMFace_QueryInterface(p,a,b)             (p)->QueryInterface(a,b)
     2313#define IDirect3DRMFace_AddRef(p)                         (p)->AddRef()
     2314#define IDirect3DRMFace_Release(p)                        (p)->Release()
     2315/*** IDirect3DRMObject methods ***/
     2316#define IDirect3DRMFace_Clone(p,a,b,c)                    (p)->Clone(a,b,c)
     2317#define IDirect3DRMFace_AddDestroyCallback(p,a,b)         (p)->AddDestroyCallback(a,b)
     2318#define IDirect3DRMFace_DeleteDestroyCallback(p,a,b)      (p)->DeleteDestroyCallback(a,b)
     2319#define IDirect3DRMFace_SetAppData(p,a)                   (p)->SetAppData(a)
     2320#define IDirect3DRMFace_GetAppData(p)                     (p)->GetAppData()
     2321#define IDirect3DRMFace_SetName(p,a)                      (p)->SetName(a)
     2322#define IDirect3DRMFace_GetName(p,a,b)                    (p)->GetName(a,b)
     2323#define IDirect3DRMFace_GetClassName(p,a,b)               (p)->GetClassName(a,b)
     2324/*** IDirect3DRMFace methods ***/
     2325#define IDirect3DRMFace_AddVertex(p,a,b,c)                (p)->AddVertex(a,b,c)
     2326#define IDirect3DRMFace_AddVertexAndNormalIndexed(p,a,b)  (p)->AddVertexAndNormalIndexed(a,b)
     2327#define IDirect3DRMFace_SetColorRGB(p,a,b,c)              (p)->SetColorRGB(a,b,c)
     2328#define IDirect3DRMFace_SetColor(p,a)                     (p)->SetColor(a)
     2329#define IDirect3DRMFace_SetTexture(p,a)                   (p)->SetTexture(a)
     2330#define IDirect3DRMFace_SetTextureCoordinates(p,a,b,c)    (p)->SetTextureCoordinates(a,b,c)
     2331#define IDirect3DRMFace_SetMaterial(p,a)                  (p)->SetMaterial(a)
     2332#define IDirect3DRMFace_SetTextureTopology(p,a,b)         (p)->SetTextureTopology(a,b)
     2333#define IDirect3DRMFace_GetVertex(p,a,b,c)                (p)->GetVertex(a,b,c)
     2334#define IDirect3DRMFace_GetVertices(p,a,b,c)              (p)->GetVertices(a,b,c)
     2335#define IDirect3DRMFace_GetTextureCoordinates(p,a,b,c)    (p)->GetTextureCoordinates(a,b,c)
     2336#define IDirect3DRMFace_GetTextureTopology(p,a,b)         (p)->GetTextureTopology(a,b)
     2337#define IDirect3DRMFace_GetNormal(p,a)                    (p)->GetNormal(a)
     2338#define IDirect3DRMFace_GetTexture(p,a)                   (p)->GetTexture(a)
     2339#define IDirect3DRMFace_GetVertexCount(p)                 (p)->GetVertexCount()
     2340#define IDirect3DRMFace_GetVertexIndex(p,a)               (p)->GetVertexIndex(a)
     2341#define IDirect3DRMFace_GetTextureCoordinateIndex(p,a)    (p)->GetTextureCoordinateIndex(a)
     2342#define IDirect3DRMFace_GetColor(p,a)                     (p)->GetColor(a)
     2343#endif
     2344
     2345/*****************************************************************************
     2346 * IDirect3DRMFace2 interface
     2347 */
     2348#define INTERFACE IDirect3DRMFace2
     2349DECLARE_INTERFACE_(IDirect3DRMFace2,IDirect3DRMObject)
     2350{
     2351    /*** IUnknown methods ***/
     2352    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     2353    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     2354    STDMETHOD_(ULONG,Release)(THIS) PURE;
     2355    /*** IDirect3DRMObject methods ***/
     2356    STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     2357    STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     2358    STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     2359    STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
     2360    STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
     2361    STDMETHOD(SetName)(THIS_ LPCSTR) PURE;
     2362    STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     2363    STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     2364    /*** IDirect3DRMFace methods ***/
     2365    STDMETHOD(AddVertex)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     2366    STDMETHOD(AddVertexAndNormalIndexed)(THIS_ DWORD vertex, DWORD normal) PURE;
     2367    STDMETHOD(SetColorRGB)(THIS_ D3DVALUE, D3DVALUE, D3DVALUE) PURE;
     2368    STDMETHOD(SetColor)(THIS_ D3DCOLOR) PURE;
     2369    STDMETHOD(SetTexture)(THIS_ LPDIRECT3DRMTEXTURE3) PURE;
     2370    STDMETHOD(SetTextureCoordinates)(THIS_ DWORD vertex, D3DVALUE u, D3DVALUE v) PURE;
     2371    STDMETHOD(SetMaterial)(THIS_ LPDIRECT3DRMMATERIAL2) PURE;
     2372    STDMETHOD(SetTextureTopology)(THIS_ BOOL wrap_u, BOOL wrap_v) PURE;
     2373    STDMETHOD(GetVertex)(THIS_ DWORD index, D3DVECTOR *vertex, D3DVECTOR *normal) PURE;
     2374    STDMETHOD(GetVertices)(THIS_ DWORD *vertex_count, D3DVECTOR *coords, D3DVECTOR *normals);
     2375    STDMETHOD(GetTextureCoordinates)(THIS_ DWORD vertex, D3DVALUE *u, D3DVALUE *v) PURE;
     2376    STDMETHOD(GetTextureTopology)(THIS_ BOOL *wrap_u, BOOL *wrap_v) PURE;
     2377    STDMETHOD(GetNormal)(THIS_ D3DVECTOR *) PURE;
     2378    STDMETHOD(GetTexture)(THIS_ LPDIRECT3DRMTEXTURE3 *) PURE;
     2379    STDMETHOD(GetMaterial)(THIS_ LPDIRECT3DRMMATERIAL2 *) PURE;
     2380    STDMETHOD_(int, GetVertexCount)(THIS) PURE;
     2381    STDMETHOD_(int, GetVertexIndex)(THIS_ DWORD which) PURE;
     2382    STDMETHOD_(int, GetTextureCoordinateIndex)(THIS_ DWORD which) PURE;
     2383    STDMETHOD_(D3DCOLOR, GetColor)(THIS) PURE;
     2384};
     2385#undef INTERFACE
     2386
     2387#if !defined(__cplusplus) || defined(CINTERFACE)
     2388/*** IUnknown methods ***/
     2389#define IDirect3DRMFace2_QueryInterface(p,a,b)             (p)->lpVtbl->QueryInterface(p,a,b)
     2390#define IDirect3DRMFace2_AddRef(p)                         (p)->lpVtbl->AddRef(p)
     2391#define IDirect3DRMFace2_Release(p)                        (p)->lpVtbl->Release(p)
     2392/*** IDirect3DRMObject methods ***/
     2393#define IDirect3DRMFace2_Clone(p,a,b,c)                    (p)->lpVtbl->Clone(p,a,b,c)
     2394#define IDirect3DRMFace2_AddDestroyCallback(p,a,b)         (p)->lpVtbl->AddDestroyCallback(p,a,b)
     2395#define IDirect3DRMFace2_DeleteDestroyCallback(p,a,b)      (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
     2396#define IDirect3DRMFace2_SetAppData(p,a)                   (p)->lpVtbl->SetAppData(p,a)
     2397#define IDirect3DRMFace2_GetAppData(p)                     (p)->lpVtbl->GetAppData(p)
     2398#define IDirect3DRMFace2_SetName(p,a)                      (p)->lpVtbl->SetName(p,a)
     2399#define IDirect3DRMFace2_GetName(p,a,b)                    (p)->lpVtbl->GetName(p,a,b)
     2400#define IDirect3DRMFace2_GetClassName(p,a,b)               (p)->lpVtbl->GetClassName(p,a,b)
     2401/*** IDirect3DRMFace methods ***/
     2402#define IDirect3DRMFace2_AddVertex(p,a,b,c)                (p)->lpVtbl->AddVertex(p,a,b,c)
     2403#define IDirect3DRMFace2_AddVertexAndNormalIndexed(p,a,b)  (p)->lpVtbl->AddVertexAndNormalIndexed(p,a,b)
     2404#define IDirect3DRMFace2_SetColorRGB(p,a,b,c)              (p)->lpVtbl->SetColorRGB(p,a,b,c)
     2405#define IDirect3DRMFace2_SetColor(p,a)                     (p)->lpVtbl->SetColor(p,a)
     2406#define IDirect3DRMFace2_SetTexture(p,a)                   (p)->lpVtbl->SetTexture(p,a)
     2407#define IDirect3DRMFace2_SetTextureCoordinates(p,a,b,c)    (p)->lpVtbl->SetTextureCoordinates(p,a,b,c)
     2408#define IDirect3DRMFace2_SetMaterial(p,a)                  (p)->lpVtbl->SetMaterial(p,a)
     2409#define IDirect3DRMFace2_SetTextureTopology(p,a,b)         (p)->lpVtbl->SetTextureTopology(p,a,b)
     2410#define IDirect3DRMFace2_GetVertex(p,a,b,c)                (p)->lpVtbl->GetVertex(p,a,b,c)
     2411#define IDirect3DRMFace2_GetVertices(p,a,b,c)              (p)->lpVtbl->GetVertices(p,a,b,c)
     2412#define IDirect3DRMFace2_GetTextureCoordinates(p,a,b,c)    (p)->lpVtbl->GetTextureCoordinates(p,a,b,c)
     2413#define IDirect3DRMFace2_GetTextureTopology(p,a,b)         (p)->lpVtbl->GetTextureTopology(p,a,b)
     2414#define IDirect3DRMFace2_GetNormal(p,a)                    (p)->lpVtbl->GetNormal(p,a)
     2415#define IDirect3DRMFace2_GetTexture(p,a)                   (p)->lpVtbl->GetTexture(p,a)
     2416#define IDirect3DRMFace2_GetVertexCount(p)                 (p)->lpVtbl->GetVertexCount(p)
     2417#define IDirect3DRMFace2_GetVertexIndex(p,a)               (p)->lpVtbl->GetVertexIndex(p,a)
     2418#define IDirect3DRMFace2_GetTextureCoordinateIndex(p,a)    (p)->lpVtbl->GetTextureCoordinateIndex(p,a)
     2419#define IDirect3DRMFace2_GetColor(p,a)                     (p)->lpVtbl->GetColor(p,a)
     2420#else
     2421/*** IUnknown methods ***/
     2422#define IDirect3DRMFace2_QueryInterface(p,a,b)             (p)->QueryInterface(a,b)
     2423#define IDirect3DRMFace2_AddRef(p)                         (p)->AddRef()
     2424#define IDirect3DRMFace2_Release(p)                        (p)->Release()
     2425/*** IDirect3DRMObject methods ***/
     2426#define IDirect3DRMFace2_Clone(p,a,b,c)                    (p)->Clone(a,b,c)
     2427#define IDirect3DRMFace2_AddDestroyCallback(p,a,b)         (p)->AddDestroyCallback(a,b)
     2428#define IDirect3DRMFace2_DeleteDestroyCallback(p,a,b)      (p)->DeleteDestroyCallback(a,b)
     2429#define IDirect3DRMFace2_SetAppData(p,a)                   (p)->SetAppData(a)
     2430#define IDirect3DRMFace2_GetAppData(p)                     (p)->GetAppData()
     2431#define IDirect3DRMFace2_SetName(p,a)                      (p)->SetName(a)
     2432#define IDirect3DRMFace2_GetName(p,a,b)                    (p)->GetName(a,b)
     2433#define IDirect3DRMFace2_GetClassName(p,a,b)               (p)->GetClassName(a,b)
     2434/*** IDirect3DRMFace methods ***/
     2435#define IDirect3DRMFace2_AddVertex(p,a,b,c)                (p)->AddVertex(a,b,c)
     2436#define IDirect3DRMFace2_AddVertexAndNormalIndexed(p,a,b)  (p)->AddVertexAndNormalIndexed(a,b)
     2437#define IDirect3DRMFace2_SetColorRGB(p,a,b,c)              (p)->SetColorRGB(a,b,c)
     2438#define IDirect3DRMFace2_SetColor(p,a)                     (p)->SetColor(a)
     2439#define IDirect3DRMFace2_SetTexture(p,a)                   (p)->SetTexture(a)
     2440#define IDirect3DRMFace2_SetTextureCoordinates(p,a,b,c)    (p)->SetTextureCoordinates(a,b,c)
     2441#define IDirect3DRMFace2_SetMaterial(p,a)                  (p)->SetMaterial(a)
     2442#define IDirect3DRMFace2_SetTextureTopology(p,a,b)         (p)->SetTextureTopology(a,b)
     2443#define IDirect3DRMFace2_GetVertex(p,a,b,c)                (p)->GetVertex(a,b,c)
     2444#define IDirect3DRMFace2_GetVertices(p,a,b,c)              (p)->GetVertices(a,b,c)
     2445#define IDirect3DRMFace2_GetTextureCoordinates(p,a,b,c)    (p)->GetTextureCoordinates(a,b,c)
     2446#define IDirect3DRMFace2_GetTextureTopology(p,a,b)         (p)->GetTextureTopology(a,b)
     2447#define IDirect3DRMFace2_GetNormal(p,a)                    (p)->GetNormal(a)
     2448#define IDirect3DRMFace2_GetTexture(p,a)                   (p)->GetTexture(a)
     2449#define IDirect3DRMFace2_GetVertexCount(p)                 (p)->GetVertexCount()
     2450#define IDirect3DRMFace2_GetVertexIndex(p,a)               (p)->GetVertexIndex(a)
     2451#define IDirect3DRMFace2_GetTextureCoordinateIndex(p,a)    (p)->GetTextureCoordinateIndex(a)
     2452#define IDirect3DRMFace2_GetColor(p,a)                     (p)->GetColor(a)
     2453#endif
     2454
     2455/*****************************************************************************
     2456 * IDirect3DRMMeshBuilder interface
     2457 */
     2458#define INTERFACE IDirect3DRMMeshBuilder
     2459DECLARE_INTERFACE_(IDirect3DRMMeshBuilder,IDirect3DRMVisual)
     2460{
     2461    /*** IUnknown methods ***/
     2462    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     2463    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     2464    STDMETHOD_(ULONG,Release)(THIS) PURE;
     2465    /*** IDirect3DRMObject methods ***/
     2466    STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     2467    STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     2468    STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     2469    STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
     2470    STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
     2471    STDMETHOD(SetName)(THIS_ LPCSTR) PURE;
     2472    STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     2473    STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     2474    /*** IDirect3DRMMeshBuilder methods ***/
     2475    STDMETHOD(Load)(THIS_ LPVOID filename, LPVOID name, D3DRMLOADOPTIONS loadflags, D3DRMLOADTEXTURECALLBACK, LPVOID pArg) PURE;
     2476    STDMETHOD(Save)(THIS_ const char *filename, D3DRMXOFFORMAT, D3DRMSAVEOPTIONS save) PURE;
     2477    STDMETHOD(Scale)(THIS_ D3DVALUE sx, D3DVALUE sy, D3DVALUE sz) PURE;
     2478    STDMETHOD(Translate)(THIS_ D3DVALUE tx, D3DVALUE ty, D3DVALUE tz) PURE;
     2479    STDMETHOD(SetColorSource)(THIS_ D3DRMCOLORSOURCE) PURE;
     2480    STDMETHOD(GetBox)(THIS_ D3DRMBOX *) PURE;
     2481    STDMETHOD(GenerateNormals)(THIS) PURE;
     2482    STDMETHOD_(D3DRMCOLORSOURCE, GetColorSource)(THIS) PURE;
     2483    STDMETHOD(AddMesh)(THIS_ LPDIRECT3DRMMESH) PURE;
     2484    STDMETHOD(AddMeshBuilder)(THIS_ LPDIRECT3DRMMESHBUILDER) PURE;
     2485    STDMETHOD(AddFrame)(THIS_ LPDIRECT3DRMFRAME) PURE;
     2486    STDMETHOD(AddFace)(THIS_ LPDIRECT3DRMFACE) PURE;
     2487    STDMETHOD(AddFaces)(THIS_ DWORD vcount, D3DVECTOR *vertices, DWORD ncount, D3DVECTOR *normals, DWORD *data,
     2488        LPDIRECT3DRMFACEARRAY*) PURE;
     2489    STDMETHOD(ReserveSpace)(THIS_ DWORD vertex_Count, DWORD normal_count, DWORD face_count) PURE;
     2490    STDMETHOD(SetColorRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE;
     2491    STDMETHOD(SetColor)(THIS_ D3DCOLOR) PURE;
     2492    STDMETHOD(SetTexture)(THIS_ LPDIRECT3DRMTEXTURE) PURE;
     2493    STDMETHOD(SetMaterial)(THIS_ LPDIRECT3DRMMATERIAL) PURE;
     2494    STDMETHOD(SetTextureTopology)(THIS_ BOOL wrap_u, BOOL wrap_v) PURE;
     2495    STDMETHOD(SetQuality)(THIS_ D3DRMRENDERQUALITY) PURE;
     2496    STDMETHOD(SetPerspective)(THIS_ BOOL) PURE;
     2497    STDMETHOD(SetVertex)(THIS_ DWORD index, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     2498    STDMETHOD(SetNormal)(THIS_ DWORD index, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     2499    STDMETHOD(SetTextureCoordinates)(THIS_ DWORD index, D3DVALUE u, D3DVALUE v) PURE;
     2500    STDMETHOD(SetVertexColor)(THIS_ DWORD index, D3DCOLOR) PURE;
     2501    STDMETHOD(SetVertexColorRGB)(THIS_ DWORD index, D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE;
     2502    STDMETHOD(GetFaces)(THIS_ LPDIRECT3DRMFACEARRAY*) PURE;
     2503    STDMETHOD(GetVertices)(THIS_ DWORD *vcount, D3DVECTOR *vertices, DWORD *ncount, D3DVECTOR *normals,
     2504        DWORD *face_data_size, DWORD *face_data) PURE;
     2505    STDMETHOD(GetTextureCoordinates)(THIS_ DWORD index, D3DVALUE *u, D3DVALUE *v) PURE;
     2506    STDMETHOD_(int, AddVertex)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     2507    STDMETHOD_(int, AddNormal)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     2508    STDMETHOD(CreateFace)(THIS_ LPDIRECT3DRMFACE*) PURE;
     2509    STDMETHOD_(D3DRMRENDERQUALITY, GetQuality)(THIS) PURE;
     2510    STDMETHOD_(BOOL, GetPerspective)(THIS) PURE;
     2511    STDMETHOD_(int, GetFaceCount)(THIS) PURE;
     2512    STDMETHOD_(int, GetVertexCount)(THIS) PURE;
     2513    STDMETHOD_(D3DCOLOR, GetVertexColor)(THIS_ DWORD index) PURE;
     2514    STDMETHOD(CreateMesh)(THIS_ LPDIRECT3DRMMESH*) PURE;
     2515};
     2516#undef INTERFACE
     2517
     2518#if !defined(__cplusplus) || defined(CINTERFACE)
     2519/*** IUnknown methods ***/
     2520#define IDirect3DRMMeshBuilder_QueryInterface(p,a,b)             (p)->lpVtbl->QueryInterface(p,a,b)
     2521#define IDirect3DRMMeshBuilder_AddRef(p)                         (p)->lpVtbl->AddRef(p)
     2522#define IDirect3DRMMeshBuilder_Release(p)                        (p)->lpVtbl->Release(p)
     2523/*** IDirect3DRMObject methods ***/
     2524#define IDirect3DRMMeshBuilder_Clone(p,a,b,c)                    (p)->lpVtbl->Clone(p,a,b,c)
     2525#define IDirect3DRMMeshBuilder_AddDestroyCallback(p,a,b)         (p)->lpVtbl->AddDestroyCallback(p,a,b)
     2526#define IDirect3DRMMeshBuilder_DeleteDestroyCallback(p,a,b)      (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
     2527#define IDirect3DRMMeshBuilder_SetAppData(p,a)                   (p)->lpVtbl->SetAppData(p,a)
     2528#define IDirect3DRMMeshBuilder_GetAppData(p)                     (p)->lpVtbl->GetAppData(p)
     2529#define IDirect3DRMMeshBuilder_SetName(p,a)                      (p)->lpVtbl->SetName(p,a)
     2530#define IDirect3DRMMeshBuilder_GetName(p,a,b)                    (p)->lpVtbl->GetName(p,a,b)
     2531#define IDirect3DRMMeshBuilder_GetClassName(p,a,b)               (p)->lpVtbl->GetClassName(p,a,b)
     2532/*** IDirect3DRMMeshBuilder methods ***/
     2533#define IDirect3DRMMeshBuilder_Load(p,a,b,c,d,e)                 (p)->lpVtbl->Load(p,a,b,c,d,e)
     2534#define IDirect3DRMMeshBuilder_Save(p,a,b,c)                     (p)->lpVtbl->Save(p,a,b,c)
     2535#define IDirect3DRMMeshBuilder_Scale(p,a,b,c)                    (p)->lpVtbl->Scale(p,a,b,c)
     2536#define IDirect3DRMMeshBuilder_Translate(p,a,b,c)                (p)->lpVtbl->Translate(p,a)
     2537#define IDirect3DRMMeshBuilder_SetColorSource(p,a)               (p)->lpVtbl->SetColorSource(p,a,b,c)
     2538#define IDirect3DRMMeshBuilder_GetBox(p,a)                       (p)->lpVtbl->GetBox(p,a)
     2539#define IDirect3DRMMeshBuilder_GenerateNormals(p)                (p)->lpVtbl->GenerateNormals(p)
     2540#define IDirect3DRMMeshBuilder_GetColorSource(p)                 (p)->lpVtbl->GetColorSource(p)
     2541#define IDirect3DRMMeshBuilder_AddMesh(p,a)                      (p)->lpVtbl->AddMesh(p,a)
     2542#define IDirect3DRMMeshBuilder_AddMeshBuilder(p,a)               (p)->lpVtbl->AddMeshBuilder(p,a)
     2543#define IDirect3DRMMeshBuilder_AddFrame(p,a)                     (p)->lpVtbl->AddFrame(p,a)
     2544#define IDirect3DRMMeshBuilder_AddFace(p,a)                      (p)->lpVtbl->AddFace(p,a)
     2545#define IDirect3DRMMeshBuilder_AddFaces(p,a,b,c,d,e,f)           (p)->lpVtbl->AddFaces(p,a,b,c,d,e,f)
     2546#define IDirect3DRMMeshBuilder_ReserveSpace(p,a,b,c)             (p)->lpVtbl->ReserveSpace(p,a,b,c)
     2547#define IDirect3DRMMeshBuilder_SetColorRGB(p,a,b,c)              (p)->lpVtbl->SetColorRGB(p,a,b,c)
     2548#define IDirect3DRMMeshBuilder_SetColor(p,a)                     (p)->lpVtbl->SetColor(p,a)
     2549#define IDirect3DRMMeshBuilder_SetTexture(p,a)                   (p)->lpVtbl->SetTexture(p,a)
     2550#define IDirect3DRMMeshBuilder_SetMateria(p,a)                   (p)->lpVtbl->SetMateria(p,a)
     2551#define IDirect3DRMMeshBuilder_SetTextureTopology(p,a,b)         (p)->lpVtbl->SetTextureTopology(p,a,b)
     2552#define IDirect3DRMMeshBuilder_SetQuality(p,a)                   (p)->lpVtbl->SetQuality(p,a)
     2553#define IDirect3DRMMeshBuilder_SetPerspective(p,a)               (p)->lpVtbl->SetPerspective(p,a)
     2554#define IDirect3DRMMeshBuilder_SetVertex(p,a,b,c,d)              (p)->lpVtbl->SetVertex(p,a,b,c,d)
     2555#define IDirect3DRMMeshBuilder_SetNormal(p,a,b,c,d)              (p)->lpVtbl->SetNormal(p,a,b,c,d)
     2556#define IDirect3DRMMeshBuilder_SetTextureCoordinates(p,a,b,c)    (p)->lpVtbl->SetTextureCoordinates(p,a,b,c)
     2557#define IDirect3DRMMeshBuilder_SetVertexColor(p,a,b)             (p)->lpVtbl->SetVertexColor(p,a,b)
     2558#define IDirect3DRMMeshBuilder_SetVertexColorRGB(p,a,b,c,d)      (p)->lpVtbl->SetVertexColorRGB(p,a,b,c,d)
     2559#define IDirect3DRMMeshBuilder_GetFaces(p,a)                     (p)->lpVtbl->GetFaces(p,a)
     2560#define IDirect3DRMMeshBuilder_GetVertices(p,a,b,c,d,e,f)        (p)->lpVtbl->GetVertices(p,a,b,c,d,e,f)
     2561#define IDirect3DRMMeshBuilder_GetTextureCoordinates(p,a,b,c)    (p)->lpVtbl->GetTextureCoordinates(p,a,b,c)
     2562#define IDirect3DRMMeshBuilder_AddVertex(p,a,b,c)                (p)->lpVtbl->AddVertex(p,a,b,c)
     2563#define IDirect3DRMMeshBuilder_AddNormal(p,a,b,c)                (p)->lpVtbl->AddNormal(p,a,b,c)
     2564#define IDirect3DRMMeshBuilder_CreateFace(p,a)                   (p)->lpVtbl->CreateFace(p,a)
     2565#define IDirect3DRMMeshBuilder_GetQuality(p)                     (p)->lpVtbl->GetQuality(p)
     2566#define IDirect3DRMMeshBuilder_GetPerspective(p)                 (p)->lpVtbl->GetPerspective(p)
     2567#define IDirect3DRMMeshBuilder_GetFaceCount(p)                   (p)->lpVtbl->GetFaceCount(p)
     2568#define IDirect3DRMMeshBuilder_GetVertexCount(p)                 (p)->lpVtbl->GetVertexCount(p)
     2569#define IDirect3DRMMeshBuilder_GetVertexColor(p,a)               (p)->lpVtbl->GetVertexColor(p,a)
     2570#define IDirect3DRMMeshBuilder_CreateMesh(p,a)                   (p)->lpVtbl->CreateMesh(p,a)
     2571#else
     2572/*** IUnknown methods ***/
     2573#define IDirect3DRMMeshBuilder_QueryInterface(p,a,b)             (p)->QueryInterface(a,b)
     2574#define IDirect3DRMMeshBuilder_AddRef(p)                         (p)->AddRef()
     2575#define IDirect3DRMMeshBuilder_Release(p)                        (p)->Release()
     2576/*** IDirect3DRMObject methods ***/
     2577#define IDirect3DRMMeshBuilder_Clone(p,a,b,c)                    (p)->Clone(a,b,c)
     2578#define IDirect3DRMMeshBuilder_AddDestroyCallback(p,a,b)         (p)->AddDestroyCallback(a,b)
     2579#define IDirect3DRMMeshBuilder_DeleteDestroyCallback(p,a,b)      (p)->DeleteDestroyCallback(a,b)
     2580#define IDirect3DRMMeshBuilder_SetAppData(p,a)                   (p)->SetAppData(a)
     2581#define IDirect3DRMMeshBuilder_GetAppData(p)                     (p)->GetAppData()
     2582#define IDirect3DRMMeshBuilder_SetName(p,a)                      (p)->SetName(a)
     2583#define IDirect3DRMMeshBuilder_GetName(p,a,b)                    (p)->GetName(a,b)
     2584#define IDirect3DRMMeshBuilder_GetClassName(p,a,b)               (p)->GetClassName(a,b)
     2585/*** IDirect3DRMMeshBuilder methods ***/
     2586#define IDirect3DRMMeshBuilder_Load(p,a,b,c,d,e)                 (p)->Load(a,b,c,d,e)
     2587#define IDirect3DRMMeshBuilder_Save(p,a,b,c)                     (p)->Save(a,b,c)
     2588#define IDirect3DRMMeshBuilder_Scale(p,a,b,c)                    (p)->Scale(a,b,c)
     2589#define IDirect3DRMMeshBuilder_Translate(p,a,b,c)                (p)->Translate(a)
     2590#define IDirect3DRMMeshBuilder_SetColorSource(p,a)               (p)->SetColorSource(a,b,c)
     2591#define IDirect3DRMMeshBuilder_GetBox(p,a)                       (p)->GetBox(a)
     2592#define IDirect3DRMMeshBuilder_GenerateNormals(p)                (p)->GenerateNormals()
     2593#define IDirect3DRMMeshBuilder_GetColorSource(p)                 (p)->GetColorSource()
     2594#define IDirect3DRMMeshBuilder_AddMesh(p,a)                      (p)-->AddMesh(a)
     2595#define IDirect3DRMMeshBuilder_AddMeshBuilder(p,a)               (p)->AddMeshBuilder(a)
     2596#define IDirect3DRMMeshBuilder_AddFrame(p,a)                     (p)->AddFrame(a)
     2597#define IDirect3DRMMeshBuilder_AddFace(p,a)                      (p)->AddFace(a)
     2598#define IDirect3DRMMeshBuilder_AddFaces(p,a,b,c,d,e,f)           (p)->AddFaces(a,b,c,d,e,f)
     2599#define IDirect3DRMMeshBuilder_ReserveSpace(p,a,b,c)             (p)->ReserveSpace(a,b,c)
     2600#define IDirect3DRMMeshBuilder_SetColorRGB(p,a,b,c)              (p)->SetColorRGB(a,b,c)
     2601#define IDirect3DRMMeshBuilder_SetColor(p,a)                     (p)->SetColor(a)
     2602#define IDirect3DRMMeshBuilder_SetTexture(p,a)                   (p)->SetTexture(a)
     2603#define IDirect3DRMMeshBuilder_SetMateria(p,a)                   (p)->SetMateria(a)
     2604#define IDirect3DRMMeshBuilder_SetTextureTopology(p,a,b)         (p)->SetTextureTopology(a,b)
     2605#define IDirect3DRMMeshBuilder_SetQuality(p,a)                   (p)->SetQuality(a)
     2606#define IDirect3DRMMeshBuilder_SetPerspective(p,a)               (p)->SetPerspective(a)
     2607#define IDirect3DRMMeshBuilder_SetVertex(p,a,b,c,d)              (p)->SetVertex(a,b,c,d)
     2608#define IDirect3DRMMeshBuilder_SetNormal(p,a,b,c,d)              (p)->SetNormal(a,b,c,d)
     2609#define IDirect3DRMMeshBuilder_SetTextureCoordinates(p,a,b,c)    (p)->SetTextureCoordinates(a,b,c)
     2610#define IDirect3DRMMeshBuilder_SetVertexColor(p,a,b)             (p)->SetVertexColor(a,b)
     2611#define IDirect3DRMMeshBuilder_SetVertexColorRGB(p,a,b,c,d)      (p)->SetVertexColorRGB(a,b,c,d)
     2612#define IDirect3DRMMeshBuilder_GetFaces(p,a)                     (p)->GetFaces(a)
     2613#define IDirect3DRMMeshBuilder_GetVertices(p,a,b,c,d,e,f)        (p)->GetVertices(a,b,c,d,e,f)
     2614#define IDirect3DRMMeshBuilder_GetTextureCoordinates(p,a,b,c)    (p)->GetTextureCoordinates(a,b,c)
     2615#define IDirect3DRMMeshBuilder_AddVertex(p,a,b,c)                (p)->AddVertex(a,b,c)
     2616#define IDirect3DRMMeshBuilder_AddNormal(p,a,b,c)                (p)->AddNormal(a,b,c)
     2617#define IDirect3DRMMeshBuilder_CreateFace(p,a)                   (p)->CreateFace(a)
     2618#define IDirect3DRMMeshBuilder_GetQuality(p)                     (p)->GetQuality()
     2619#define IDirect3DRMMeshBuilder_GetPerspective(p)                 (p)->GetPerspective()
     2620#define IDirect3DRMMeshBuilder_GetFaceCount(p)                   (p)->GetFaceCount()
     2621#define IDirect3DRMMeshBuilder_GetVertexCount(p)                 (p)->GetVertexCount()
     2622#define IDirect3DRMMeshBuilder_GetVertexColor(p,a)               (p)->GetVertexColor(a)
     2623#define IDirect3DRMMeshBuilder_CreateMesh(p,a)                   (p)->CreateMesh(a)
     2624#endif
     2625
     2626/*****************************************************************************
     2627 * IDirect3DRMMeshBuilder2 interface
     2628 */
     2629#define INTERFACE IDirect3DRMMeshBuilder2
     2630DECLARE_INTERFACE_(IDirect3DRMMeshBuilder2,IDirect3DRMMeshBuilder)
     2631{
     2632    /*** IUnknown methods ***/
     2633    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     2634    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     2635    STDMETHOD_(ULONG,Release)(THIS) PURE;
     2636    /*** IDirect3DRMObject methods ***/
     2637    STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     2638    STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     2639    STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     2640    STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
     2641    STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
     2642    STDMETHOD(SetName)(THIS_ LPCSTR) PURE;
     2643    STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     2644    STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     2645    /*** IDirect3DRMMeshBuilder methods ***/
     2646    STDMETHOD(Load)(THIS_ LPVOID filename, LPVOID name, D3DRMLOADOPTIONS loadflags, D3DRMLOADTEXTURECALLBACK, LPVOID pArg) PURE;
     2647    STDMETHOD(Save)(THIS_ const char *filename, D3DRMXOFFORMAT, D3DRMSAVEOPTIONS save) PURE;
     2648    STDMETHOD(Scale)(THIS_ D3DVALUE sx, D3DVALUE sy, D3DVALUE sz) PURE;
     2649    STDMETHOD(Translate)(THIS_ D3DVALUE tx, D3DVALUE ty, D3DVALUE tz) PURE;
     2650    STDMETHOD(SetColorSource)(THIS_ D3DRMCOLORSOURCE) PURE;
     2651    STDMETHOD(GetBox)(THIS_ D3DRMBOX *) PURE;
     2652    STDMETHOD(GenerateNormals)(THIS) PURE;
     2653    STDMETHOD_(D3DRMCOLORSOURCE, GetColorSource)(THIS) PURE;
     2654    STDMETHOD(AddMesh)(THIS_ LPDIRECT3DRMMESH) PURE;
     2655    STDMETHOD(AddMeshBuilder)(THIS_ LPDIRECT3DRMMESHBUILDER) PURE;
     2656    STDMETHOD(AddFrame)(THIS_ LPDIRECT3DRMFRAME) PURE;
     2657    STDMETHOD(AddFace)(THIS_ LPDIRECT3DRMFACE) PURE;
     2658    STDMETHOD(AddFaces)(THIS_ DWORD vcount, D3DVECTOR *vertices, DWORD ncount, D3DVECTOR *normals, DWORD *data,
     2659        LPDIRECT3DRMFACEARRAY*) PURE;
     2660    STDMETHOD(ReserveSpace)(THIS_ DWORD vertex_Count, DWORD normal_count, DWORD face_count) PURE;
     2661    STDMETHOD(SetColorRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE;
     2662    STDMETHOD(SetColor)(THIS_ D3DCOLOR) PURE;
     2663    STDMETHOD(SetTexture)(THIS_ LPDIRECT3DRMTEXTURE) PURE;
     2664    STDMETHOD(SetMaterial)(THIS_ LPDIRECT3DRMMATERIAL) PURE;
     2665    STDMETHOD(SetTextureTopology)(THIS_ BOOL wrap_u, BOOL wrap_v) PURE;
     2666    STDMETHOD(SetQuality)(THIS_ D3DRMRENDERQUALITY) PURE;
     2667    STDMETHOD(SetPerspective)(THIS_ BOOL) PURE;
     2668    STDMETHOD(SetVertex)(THIS_ DWORD index, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     2669    STDMETHOD(SetNormal)(THIS_ DWORD index, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     2670    STDMETHOD(SetTextureCoordinates)(THIS_ DWORD index, D3DVALUE u, D3DVALUE v) PURE;
     2671    STDMETHOD(SetVertexColor)(THIS_ DWORD index, D3DCOLOR) PURE;
     2672    STDMETHOD(SetVertexColorRGB)(THIS_ DWORD index, D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE;
     2673    STDMETHOD(GetFaces)(THIS_ LPDIRECT3DRMFACEARRAY*) PURE;
     2674    STDMETHOD(GetVertices)(THIS_ DWORD *vcount, D3DVECTOR *vertices, DWORD *ncount, D3DVECTOR *normals,
     2675        DWORD *face_data_size, DWORD *face_data) PURE;
     2676    STDMETHOD(GetTextureCoordinates)(THIS_ DWORD index, D3DVALUE *u, D3DVALUE *v) PURE;
     2677    STDMETHOD_(int, AddVertex)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     2678    STDMETHOD_(int, AddNormal)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     2679    STDMETHOD(CreateFace)(THIS_ LPDIRECT3DRMFACE*) PURE;
     2680    STDMETHOD_(D3DRMRENDERQUALITY, GetQuality)(THIS) PURE;
     2681    STDMETHOD_(BOOL, GetPerspective)(THIS) PURE;
     2682    STDMETHOD_(int, GetFaceCount)(THIS) PURE;
     2683    STDMETHOD_(int, GetVertexCount)(THIS) PURE;
     2684    STDMETHOD_(D3DCOLOR, GetVertexColor)(THIS_ DWORD index) PURE;
     2685    STDMETHOD(CreateMesh)(THIS_ LPDIRECT3DRMMESH*) PURE;
     2686    /*** IDirect3DRMMeshBuilder2 methods ***/
     2687    STDMETHOD(GenerateNormals2)(THIS_ D3DVALUE crease, DWORD flags) PURE;
     2688    STDMETHOD(GetFace)(THIS_ DWORD index, LPDIRECT3DRMFACE*) PURE;
     2689};
     2690#undef INTERFACE
     2691
     2692#if !defined(__cplusplus) || defined(CINTERFACE)
     2693/*** IUnknown methods ***/
     2694#define IDirect3DRMMeshBuilder2_QueryInterface(p,a,b)            (p)->lpVtbl->QueryInterface(p,a,b)
     2695#define IDirect3DRMMeshBuilder2_AddRef(p)                        (p)->lpVtbl->AddRef(p)
     2696#define IDirect3DRMMeshBuilder2_Release(p)                       (p)->lpVtbl->Release(p)
     2697/*** IDirect3DRMObject methods ***/
     2698#define IDirect3DRMMeshBuilder2_Clone(p,a,b,c)                   (p)->lpVtbl->Clone(p,a,b,c)
     2699#define IDirect3DRMMeshBuilder2_AddDestroyCallback(p,a,b)        (p)->lpVtbl->AddDestroyCallback(p,a,b)
     2700#define IDirect3DRMMeshBuilder2_DeleteDestroyCallback(p,a,b)     (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
     2701#define IDirect3DRMMeshBuilder2_SetAppData(p,a)                  (p)->lpVtbl->SetAppData(p,a)
     2702#define IDirect3DRMMeshBuilder2_GetAppData(p)                    (p)->lpVtbl->GetAppData(p)
     2703#define IDirect3DRMMeshBuilder2_SetName(p,a)                     (p)->lpVtbl->SetName(p,a)
     2704#define IDirect3DRMMeshBuilder2_GetName(p,a,b)                   (p)->lpVtbl->GetName(p,a,b)
     2705#define IDirect3DRMMeshBuilder2_GetClassName(p,a,b)              (p)->lpVtbl->GetClassName(p,a,b)
     2706/*** IDirect3DRMMeshBuilder methods ***/
     2707#define IDirect3DRMMeshBuilder2_Load(p,a,b,c,d,e)                (p)->lpVtbl->Load(p,a,b,c,d,e)
     2708#define IDirect3DRMMeshBuilder2_Save(p,a,b,c)                    (p)->lpVtbl->Save(p,a,b,c)
     2709#define IDirect3DRMMeshBuilder2_Scale(p,a,b,c)                   (p)->lpVtbl->Scale(p,a,b,c)
     2710#define IDirect3DRMMeshBuilder2_Translate(p,a,b,c)               (p)->lpVtbl->Translate(p,a)
     2711#define IDirect3DRMMeshBuilder2_SetColorSource(p,a)              (p)->lpVtbl->SetColorSource(p,a,b,c)
     2712#define IDirect3DRMMeshBuilder2_GetBox(p,a)                      (p)->lpVtbl->GetBox(p,a)
     2713#define IDirect3DRMMeshBuilder2_GenerateNormals(p)               (p)->lpVtbl->GenerateNormals(p)
     2714#define IDirect3DRMMeshBuilder2_GetColorSource(p)                (p)->lpVtbl->GetColorSource(p)
     2715#define IDirect3DRMMeshBuilder2_AddMesh(p,a)                     (p)->lpVtbl->AddMesh(p,a)
     2716#define IDirect3DRMMeshBuilder2_AddMeshBuilder(p,a)              (p)->lpVtbl->AddMeshBuilder(p,a)
     2717#define IDirect3DRMMeshBuilder2_AddFrame(p,a)                    (p)->lpVtbl->AddFrame(p,a)
     2718#define IDirect3DRMMeshBuilder2_AddFace(p,a)                     (p)->lpVtbl->AddFace(p,a)
     2719#define IDirect3DRMMeshBuilder2_AddFaces(p,a,b,c,d,e,f)          (p)->lpVtbl->AddFaces(p,a,b,c,d,e,f)
     2720#define IDirect3DRMMeshBuilder2_ReserveSpace(p,a,b,c)            (p)->lpVtbl->ReserveSpace(p,a,b,c)
     2721#define IDirect3DRMMeshBuilder2_SetColorRGB(p,a,b,c)             (p)->lpVtbl->SetColorRGB(p,a,b,c)
     2722#define IDirect3DRMMeshBuilder2_SetColor(p,a)                    (p)->lpVtbl->SetColor(p,a)
     2723#define IDirect3DRMMeshBuilder2_SetTexture(p,a)                  (p)->lpVtbl->SetTexture(p,a)
     2724#define IDirect3DRMMeshBuilder2_SetMateria(p,a)                  (p)->lpVtbl->SetMateria(p,a)
     2725#define IDirect3DRMMeshBuilder2_SetTextureTopology(p,a,b)        (p)->lpVtbl->SetTextureTopology(p,a,b)
     2726#define IDirect3DRMMeshBuilder2_SetQuality(p,a)                  (p)->lpVtbl->SetQuality(p,a)
     2727#define IDirect3DRMMeshBuilder2_SetPerspective(p,a)              (p)->lpVtbl->SetPerspective(p,a)
     2728#define IDirect3DRMMeshBuilder2_SetVertex(p,a,b,c,d)             (p)->lpVtbl->SetVertex(p,a,b,c,d)
     2729#define IDirect3DRMMeshBuilder2_SetNormal(p,a,b,c,d)             (p)->lpVtbl->SetNormal(p,a,b,c,d)
     2730#define IDirect3DRMMeshBuilder2_SetTextureCoordinates(p,a,b,c)   (p)->lpVtbl->SetTextureCoordinates(p,a,b,c)
     2731#define IDirect3DRMMeshBuilder2_SetVertexColor(p,a,b)            (p)->lpVtbl->SetVertexColor(p,a,b)
     2732#define IDirect3DRMMeshBuilder2_SetVertexColorRGB(p,a,b,c,d)     (p)->lpVtbl->SetVertexColorRGB(p,a,b,c,d)
     2733#define IDirect3DRMMeshBuilder2_GetFaces(p,a)                    (p)->lpVtbl->GetFaces(p,a)
     2734#define IDirect3DRMMeshBuilder2_GetVertices(p,a,b,c,d,e,f)       (p)->lpVtbl->GetVertices(p,a,b,c,d,e,f)
     2735#define IDirect3DRMMeshBuilder2_GetTextureCoordinates(p,a,b,c)   (p)->lpVtbl->GetTextureCoordinates(p,a,b,c)
     2736#define IDirect3DRMMeshBuilder2_AddVertex(p,a,b,c)               (p)->lpVtbl->AddVertex(p,a,b,c)
     2737#define IDirect3DRMMeshBuilder2_AddNormal(p,a,b,c)               (p)->lpVtbl->AddNormal(p,a,b,c)
     2738#define IDirect3DRMMeshBuilder2_CreateFace(p,a)                  (p)->lpVtbl->CreateFace(p,a)
     2739#define IDirect3DRMMeshBuilder2_GetQuality(p)                    (p)->lpVtbl->GetQuality(p)
     2740#define IDirect3DRMMeshBuilder2_GetPerspective(p)                (p)->lpVtbl->GetPerspective(p)
     2741#define IDirect3DRMMeshBuilder2_GetFaceCount(p)                  (p)->lpVtbl->GetFaceCount(p)
     2742#define IDirect3DRMMeshBuilder2_GetVertexCount(p)                (p)->lpVtbl->GetVertexCount(p)
     2743#define IDirect3DRMMeshBuilder2_GetVertexColor(p,a)              (p)->lpVtbl->GetVertexColor(p,a)
     2744#define IDirect3DRMMeshBuilder2_CreateMesh(p,a)                  (p)->lpVtbl->CreateMesh(p,a)
     2745/*** IDirect3DRMMeshBuilder2 methods ***/
     2746#define IDirect3DRMMeshBuilder2_GenerateNormals2(p,a,b)          (p)->lpVtbl->GenerateNormals2(p,a,b)
     2747#define IDirect3DRMMeshBuilder2_GetFace(p,a,b)                   (p)->lpVtbl->GetFace(p,a,b)
     2748#else
     2749/*** IUnknown methods ***/
     2750#define IDirect3DRMMeshBuilder2_QueryInterface(p,a,b)            (p)->QueryInterface(a,b)
     2751#define IDirect3DRMMeshBuilder2_AddRef(p)                        (p)->AddRef()
     2752#define IDirect3DRMMeshBuilder2_Release(p)                       (p)->Release()
     2753/*** IDirect3DRMObject methods ***/
     2754#define IDirect3DRMMeshBuilder2_Clone(p,a,b,c)                   (p)->Clone(a,b,c)
     2755#define IDirect3DRMMeshBuilder2_AddDestroyCallback(p,a,b)        (p)->AddDestroyCallback(a,b)
     2756#define IDirect3DRMMeshBuilder2_DeleteDestroyCallback(p,a,b)     (p)->DeleteDestroyCallback(a,b)
     2757#define IDirect3DRMMeshBuilder2_SetAppData(p,a)                  (p)->SetAppData(a)
     2758#define IDirect3DRMMeshBuilder2_GetAppData(p)                    (p)->GetAppData()
     2759#define IDirect3DRMMeshBuilder2_SetName(p,a)                     (p)->SetName(a)
     2760#define IDirect3DRMMeshBuilder2_GetName(p,a,b)                   (p)->GetName(a,b)
     2761#define IDirect3DRMMeshBuilder2_GetClassName(p,a,b)              (p)->GetClassName(a,b)
     2762/*** IDirect3DRMMeshBuilder methods ***/
     2763#define IDirect3DRMMeshBuilder2_Load(p,a,b,c,d,e)                (p)->Load(a,b,c,d,e)
     2764#define IDirect3DRMMeshBuilder2_Save(p,a,b,c)                    (p)->Save(a,b,c)
     2765#define IDirect3DRMMeshBuilder2_Scale(p,a,b,c)                   (p)->Scale(a,b,c)
     2766#define IDirect3DRMMeshBuilder2_Translate(p,a,b,c)               (p)->Translate(a)
     2767#define IDirect3DRMMeshBuilder2_SetColorSource(p,a)              (p)->SetColorSource(a,b,c)
     2768#define IDirect3DRMMeshBuilder2_GetBox(p,a)                      (p)->GetBox(a)
     2769#define IDirect3DRMMeshBuilder2_GenerateNormals(p)               (p)->GenerateNormals()
     2770#define IDirect3DRMMeshBuilder2_GetColorSource(p)                (p)->GetColorSource()
     2771#define IDirect3DRMMeshBuilder2_AddMesh(p,a)                     (p)-->AddMesh(a)
     2772#define IDirect3DRMMeshBuilder2_AddMeshBuilder(p,a)              (p)->AddMeshBuilder(a)
     2773#define IDirect3DRMMeshBuilder2_AddFrame(p,a)                    (p)->AddFrame(a)
     2774#define IDirect3DRMMeshBuilder2_AddFace(p,a)                     (p)->AddFace(a)
     2775#define IDirect3DRMMeshBuilder2_AddFaces(p,a,b,c,d,e,f)          (p)->AddFaces(a,b,c,d,e,f)
     2776#define IDirect3DRMMeshBuilder2_ReserveSpace(p,a,b,c)            (p)->ReserveSpace(a,b,c)
     2777#define IDirect3DRMMeshBuilder2_SetColorRGB(p,a,b,c)             (p)->SetColorRGB(a,b,c)
     2778#define IDirect3DRMMeshBuilder2_SetColor(p,a)                    (p)->SetColor(a)
     2779#define IDirect3DRMMeshBuilder2_SetTexture(p,a)                  (p)->SetTexture(a)
     2780#define IDirect3DRMMeshBuilder2_SetMateria(p,a)                  (p)->SetMateria(a)
     2781#define IDirect3DRMMeshBuilder2_SetTextureTopology(p,a,b)        (p)->SetTextureTopology(a,b)
     2782#define IDirect3DRMMeshBuilder2_SetQuality(p,a)                  (p)->SetQuality(a)
     2783#define IDirect3DRMMeshBuilder2_SetPerspective(p,a)              (p)->SetPerspective(a)
     2784#define IDirect3DRMMeshBuilder2_SetVertex(p,a,b,c,d)             (p)->SetVertex(a,b,c,d)
     2785#define IDirect3DRMMeshBuilder2_SetNormal(p,a,b,c,d)             (p)->SetNormal(a,b,c,d)
     2786#define IDirect3DRMMeshBuilder2_SetTextureCoordinates(p,a,b,c)   (p)->SetTextureCoordinates(a,b,c)
     2787#define IDirect3DRMMeshBuilder2_SetVertexColor(p,a,b)            (p)->SetVertexColor(a,b)
     2788#define IDirect3DRMMeshBuilder2_SetVertexColorRGB(p,a,b,c,d)     (p)->SetVertexColorRGB(a,b,c,d)
     2789#define IDirect3DRMMeshBuilder2_GetFaces(p,a)                    (p)->GetFaces(a)
     2790#define IDirect3DRMMeshBuilder2_GetVertices(p,a,b,c,d,e,f)       (p)->GetVertices(a,b,c,d,e,f)
     2791#define IDirect3DRMMeshBuilder2_GetTextureCoordinates(p,a,b,c)   (p)->GetTextureCoordinates(a,b,c)
     2792#define IDirect3DRMMeshBuilder2_AddVertex(p,a,b,c)               (p)->AddVertex(a,b,c)
     2793#define IDirect3DRMMeshBuilder2_AddNormal(p,a,b,c)               (p)->AddNormal(a,b,c)
     2794#define IDirect3DRMMeshBuilder2_CreateFace(p,a)                  (p)->CreateFace(a)
     2795#define IDirect3DRMMeshBuilder2_GetQuality(p)                    (p)->GetQuality()
     2796#define IDirect3DRMMeshBuilder2_GetPerspective(p)                (p)->GetPerspective()
     2797#define IDirect3DRMMeshBuilder2_GetFaceCount(p)                  (p)->GetFaceCount()
     2798#define IDirect3DRMMeshBuilder2_GetVertexCount(p)                (p)->GetVertexCount()
     2799#define IDirect3DRMMeshBuilder2_GetVertexColor(p,a)              (p)->GetVertexColor(a)
     2800#define IDirect3DRMMeshBuilder2_CreateMesh(p,a)                  (p)->CreateMesh(a)
     2801/*** IDirect3DRMMeshBuilder2 methods ***/
     2802#define IDirect3DRMMeshBuilder2_GenerateNormals2(p,a,b)          (p)->GenerateNormals2(a,b)
     2803#define IDirect3DRMMeshBuilder2_GetFace(p,a,b)                   (p)->GetFace(a,b)
     2804#endif
     2805
     2806/*****************************************************************************
     2807 * IDirect3DRMMeshBuilder3 interface
     2808 */
     2809#define INTERFACE IDirect3DRMMeshBuilder3
     2810DECLARE_INTERFACE_(IDirect3DRMMeshBuilder3,IDirect3DRMVisual)
     2811{
     2812    /*** IUnknown methods ***/
     2813    STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
     2814    STDMETHOD_(ULONG,AddRef)(THIS) PURE;
     2815    STDMETHOD_(ULONG,Release)(THIS) PURE;
     2816    /*** IDirect3DRMObject methods ***/
     2817    STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
     2818    STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     2819    STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
     2820    STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
     2821    STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
     2822    STDMETHOD(SetName)(THIS_ LPCSTR) PURE;
     2823    STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     2824    STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
     2825    /*** IDirect3DRMMeshBuilder3 methods ***/
     2826    STDMETHOD(Load)(THIS_ LPVOID filename, LPVOID name, D3DRMLOADOPTIONS loadflags, D3DRMLOADTEXTURE3CALLBACK, LPVOID pArg) PURE;
     2827    STDMETHOD(Save)(THIS_ const char *filename, D3DRMXOFFORMAT, D3DRMSAVEOPTIONS save) PURE;
     2828    STDMETHOD(Scale)(THIS_ D3DVALUE sx, D3DVALUE sy, D3DVALUE sz) PURE;
     2829    STDMETHOD(Translate)(THIS_ D3DVALUE tx, D3DVALUE ty, D3DVALUE tz) PURE;
     2830    STDMETHOD(SetColorSource)(THIS_ D3DRMCOLORSOURCE) PURE;
     2831    STDMETHOD(GetBox)(THIS_ D3DRMBOX *) PURE;
     2832    STDMETHOD(GenerateNormals)(THIS_ D3DVALUE crease, DWORD flags) PURE;
     2833    STDMETHOD_(D3DRMCOLORSOURCE, GetColorSource)(THIS) PURE;
     2834    STDMETHOD(AddMesh)(THIS_ LPDIRECT3DRMMESH) PURE;
     2835    STDMETHOD(AddMeshBuilder)(THIS_ LPDIRECT3DRMMESHBUILDER3) PURE;
     2836    STDMETHOD(AddFrame)(THIS_ LPDIRECT3DRMFRAME3) PURE;
     2837    STDMETHOD(AddFace)(THIS_ LPDIRECT3DRMFACE2) PURE;
     2838    STDMETHOD(AddFaces)(THIS_ DWORD vcount, D3DVECTOR *vertices, DWORD ncount, D3DVECTOR *normals, DWORD *data,
     2839        LPDIRECT3DRMFACEARRAY*) PURE;
     2840    STDMETHOD(ReserveSpace)(THIS_ DWORD vertex_Count, DWORD normal_count, DWORD face_count) PURE;
     2841    STDMETHOD(SetColorRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE;
     2842    STDMETHOD(SetColor)(THIS_ D3DCOLOR) PURE;
     2843    STDMETHOD(SetTexture)(THIS_ LPDIRECT3DRMTEXTURE3) PURE;
     2844    STDMETHOD(SetMaterial)(THIS_ LPDIRECT3DRMMATERIAL2) PURE;
     2845    STDMETHOD(SetTextureTopology)(THIS_ BOOL wrap_u, BOOL wrap_v) PURE;
     2846    STDMETHOD(SetQuality)(THIS_ D3DRMRENDERQUALITY) PURE;
     2847    STDMETHOD(SetPerspective)(THIS_ BOOL) PURE;
     2848    STDMETHOD(SetVertex)(THIS_ DWORD index, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     2849    STDMETHOD(SetNormal)(THIS_ DWORD index, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     2850    STDMETHOD(SetTextureCoordinates)(THIS_ DWORD index, D3DVALUE u, D3DVALUE v) PURE;
     2851    STDMETHOD(SetVertexColor)(THIS_ DWORD index, D3DCOLOR) PURE;
     2852    STDMETHOD(SetVertexColorRGB)(THIS_ DWORD index, D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE;
     2853    STDMETHOD(GetFaces)(THIS_ LPDIRECT3DRMFACEARRAY*) PURE;
     2854    STDMETHOD(GetGeometry)(THIS_ DWORD *vcount, D3DVECTOR *vertices, DWORD *ncount, D3DVECTOR *normals,
     2855        DWORD *face_data_size, DWORD *face_data) PURE;
     2856    STDMETHOD(GetTextureCoordinates)(THIS_ DWORD index, D3DVALUE *u, D3DVALUE *v) PURE;
     2857    STDMETHOD_(int, AddVertex)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     2858    STDMETHOD_(int, AddNormal)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE;
     2859    STDMETHOD(CreateFace)(THIS_ LPDIRECT3DRMFACE2*) PURE;
     2860    STDMETHOD_(D3DRMRENDERQUALITY, GetQuality)(THIS) PURE;
     2861    STDMETHOD_(BOOL, GetPerspective)(THIS) PURE;
     2862    STDMETHOD_(int, GetFaceCount)(THIS) PURE;
     2863    STDMETHOD_(int, GetVertexCount)(THIS) PURE;
     2864    STDMETHOD_(D3DCOLOR, GetVertexColor)(THIS_ DWORD index) PURE;
     2865    STDMETHOD(CreateMesh)(THIS_ LPDIRECT3DRMMESH*) PURE;
     2866    STDMETHOD(GetFace)(THIS_ DWORD index, LPDIRECT3DRMFACE2 *) PURE;
     2867    STDMETHOD(GetVertex)(THIS_ DWORD index, LPD3DVECTOR pVector) PURE;
     2868    STDMETHOD(GetNormal)(THIS_ DWORD index, LPD3DVECTOR pVector) PURE;
     2869    STDMETHOD(DeleteVertices)(THIS_ DWORD IndexFirst, DWORD count) PURE;
     2870    STDMETHOD(DeleteNormals)(THIS_ DWORD IndexFirst, DWORD count) PURE;
     2871    STDMETHOD(DeleteFace)(THIS_ LPDIRECT3DRMFACE2) PURE;
     2872    STDMETHOD(Empty)(THIS_ DWORD flags) PURE;
     2873    STDMETHOD(Optimize)(THIS_ DWORD flags) PURE;
     2874    STDMETHOD(AddFacesIndexed)(THIS_ DWORD flags, DWORD *pvIndices, DWORD *pIndexFirst, DWORD *pCount) PURE;
     2875    STDMETHOD(CreateSubMesh)(THIS_ LPUNKNOWN *) PURE;
     2876    STDMETHOD(GetParentMesh)(THIS_ DWORD, LPUNKNOWN *) PURE;
     2877    STDMETHOD(GetSubMeshes)(THIS_ LPDWORD pCount, LPUNKNOWN *) PURE;
     2878    STDMETHOD(DeleteSubMesh)(THIS_ LPUNKNOWN) PURE;
     2879    STDMETHOD(Enable)(THIS_ DWORD) PURE;
     2880    STDMETHOD(GetEnable)(THIS_ DWORD *) PURE;
     2881    STDMETHOD(AddTriangles)(THIS_ DWORD flags, DWORD format, DWORD VertexCount, LPVOID pvData) PURE;
     2882    STDMETHOD(SetVertices)(THIS_ DWORD IndexFirst, DWORD count, LPD3DVECTOR) PURE;
     2883    STDMETHOD(GetVertices)(THIS_ DWORD IndexFirst, LPDWORD pCount, LPD3DVECTOR) PURE;
     2884    STDMETHOD(SetNormals)(THIS_ DWORD IndexFirst, DWORD count, LPD3DVECTOR) PURE;
     2885    STDMETHOD(GetNormals)(THIS_ DWORD IndexFirst, LPDWORD pCount, LPD3DVECTOR) PURE;
     2886    STDMETHOD_(int, GetNormalCount)(THIS) PURE;
     2887};
     2888#undef INTERFACE
     2889
     2890#if !defined(__cplusplus) || defined(CINTERFACE)
     2891/*** IUnknown methods ***/
     2892#define IDirect3DRMMeshBuilder3_QueryInterface(p,a,b)            (p)->lpVtbl->QueryInterface(p,a,b)
     2893#define IDirect3DRMMeshBuilder3_AddRef(p)                        (p)->lpVtbl->AddRef(p)
     2894#define IDirect3DRMMeshBuilder3_Release(p)                       (p)->lpVtbl->Release(p)
     2895/*** IDirect3DRMObject methods ***/
     2896#define IDirect3DRMMeshBuilder3_Clone(p,a,b,c)                   (p)->lpVtbl->Clone(p,a,b,c)
     2897#define IDirect3DRMMeshBuilder3_AddDestroyCallback(p,a,b)        (p)->lpVtbl->AddDestroyCallback(p,a,b)
     2898#define IDirect3DRMMeshBuilder3_DeleteDestroyCallback(p,a,b)     (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
     2899#define IDirect3DRMMeshBuilder3_SetAppData(p,a)                  (p)->lpVtbl->SetAppData(p,a)
     2900#define IDirect3DRMMeshBuilder3_GetAppData(p)                    (p)->lpVtbl->GetAppData(p)
     2901#define IDirect3DRMMeshBuilder3_SetName(p,a)                     (p)->lpVtbl->SetName(p,a)
     2902#define IDirect3DRMMeshBuilder3_GetName(p,a,b)                   (p)->lpVtbl->GetName(p,a,b)
     2903#define IDirect3DRMMeshBuilder3_GetClassName(p,a,b)              (p)->lpVtbl->GetClassName(p,a,b)
     2904/*** IDirect3DRMMeshBuilder3 methods ***/
     2905#define IDirect3DRMMeshBuilder3_Load(p,a,b,c,d,e)                (p)->lpVtbl->Load(p,a,b,c,d,e)
     2906#define IDirect3DRMMeshBuilder3_Save(p,a,b,c)                    (p)->lpVtbl->Save(p,a,b,c)
     2907#define IDirect3DRMMeshBuilder3_Scale(p,a,b,c)                   (p)->lpVtbl->Scale(p,a,b,c)
     2908#define IDirect3DRMMeshBuilder3_Translate(p,a,b,c)               (p)->lpVtbl->Translate(p,a)
     2909#define IDirect3DRMMeshBuilder3_SetColorSource(p,a)              (p)->lpVtbl->SetColorSource(p,a,b,c)
     2910#define IDirect3DRMMeshBuilder3_GetBox(p,a)                      (p)->lpVtbl->GetBox(p,a)
     2911#define IDirect3DRMMeshBuilder3_GenerateNormals(p,a,b)           (p)->lpVtbl->GenerateNormals(p,a,b)
     2912#define IDirect3DRMMeshBuilder3_GetColorSource(p)                (p)->lpVtbl->GetColorSource(p)
     2913#define IDirect3DRMMeshBuilder3_AddMesh(p,a)                     (p)->lpVtbl->AddMesh(p,a)
     2914#define IDirect3DRMMeshBuilder3_AddMeshBuilder(p,a)              (p)->lpVtbl->AddMeshBuilder(p,a)
     2915#define IDirect3DRMMeshBuilder3_AddFrame(p,a)                    (p)->lpVtbl->AddFrame(p,a)
     2916#define IDirect3DRMMeshBuilder3_AddFace(p,a)                     (p)->lpVtbl->AddFace(p,a)
     2917#define IDirect3DRMMeshBuilder3_AddFaces(p,a,b,c,d,e,f)          (p)->lpVtbl->AddFaces(p,a,b,c,d,e,f)
     2918#define IDirect3DRMMeshBuilder3_ReserveSpace(p,a,b,c)            (p)->lpVtbl->ReserveSpace(p,a,b,c)
     2919#define IDirect3DRMMeshBuilder3_SetColorRGB(p,a,b,c)             (p)->lpVtbl->SetColorRGB(p,a,b,c)
     2920#define IDirect3DRMMeshBuilder3_SetColor(p,a)                    (p)->lpVtbl->SetColor(p,a)
     2921#define IDirect3DRMMeshBuilder3_SetTexture(p,a)                  (p)->lpVtbl->SetTexture(p,a)
     2922#define IDirect3DRMMeshBuilder3_SetMateria(p,a)                  (p)->lpVtbl->SetMateria(p,a)
     2923#define IDirect3DRMMeshBuilder3_SetTextureTopology(p,a,b)        (p)->lpVtbl->SetTextureTopology(p,a,b)
     2924#define IDirect3DRMMeshBuilder3_SetQuality(p,a)                  (p)->lpVtbl->SetQuality(p,a)
     2925#define IDirect3DRMMeshBuilder3_SetPerspective(p,a)              (p)->lpVtbl->SetPerspective(p,a)
     2926#define IDirect3DRMMeshBuilder3_SetVertex(p,a,b,c,d)             (p)->lpVtbl->SetVertex(p,a,b,c,d)
     2927#define IDirect3DRMMeshBuilder3_SetNormal(p,a,b,c,d)             (p)->lpVtbl->SetNormal(p,a,b,c,d)
     2928#define IDirect3DRMMeshBuilder3_SetTextureCoordinates(p,a,b,c)   (p)->lpVtbl->SetTextureCoordinates(p,a,b,c)
     2929#define IDirect3DRMMeshBuilder3_SetVertexColor(p,a,b)            (p)->lpVtbl->SetVertexColor(p,a,b)
     2930#define IDirect3DRMMeshBuilder3_SetVertexColorRGB(p,a,b,c,d)     (p)->lpVtbl->SetVertexColorRGB(p,a,b,c,d)
     2931#define IDirect3DRMMeshBuilder3_GetFaces(p,a)                    (p)->lpVtbl->GetFaces(p,a)
     2932#define IDirect3DRMMeshBuilder3_GetGeometry(p,a,b,c,d,e,f)       (p)->lpVtbl->GetGeometry(p,a,b,c,d,e,f)
     2933#define IDirect3DRMMeshBuilder3_GetTextureCoordinates(p,a,b,c)   (p)->lpVtbl->GetTextureCoordinates(p,a,b,c)
     2934#define IDirect3DRMMeshBuilder3_AddVertex(p,a,b,c)               (p)->lpVtbl->AddVertex(p,a,b,c)
     2935#define IDirect3DRMMeshBuilder3_AddNormal(p,a,b,c)               (p)->lpVtbl->AddNormal(p,a,b,c)
     2936#define IDirect3DRMMeshBuilder3_CreateFace(p,a)                  (p)->lpVtbl->CreateFace(p,a)
     2937#define IDirect3DRMMeshBuilder3_GetQuality(p)                    (p)->lpVtbl->GetQuality(p)
     2938#define IDirect3DRMMeshBuilder3_GetPerspective(p)                (p)->lpVtbl->GetPerspective(p)
     2939#define IDirect3DRMMeshBuilder3_GetFaceCount(p)                  (p)->lpVtbl->GetFaceCount(p)
     2940#define IDirect3DRMMeshBuilder3_GetVertexCount(p)                (p)->lpVtbl->GetVertexCount(p)
     2941#define IDirect3DRMMeshBuilder3_GetVertexColor(p,a)              (p)->lpVtbl->GetVertexColor(p,a)
     2942#define IDirect3DRMMeshBuilder3_CreateMesh(p,a)                  (p)->lpVtbl->CreateMesh(p,a)
     2943#define IDirect3DRMMeshBuilder3_GetFace(p,a,b)                   (p)->lpVtbl->GetFace(p,a,b)
     2944#define IDirect3DRMMeshBuilder3_GetVertex(p,a,b)                 (p)->lpVtbl->GetVertex(p,a,b)
     2945#define IDirect3DRMMeshBuilder3_GetNormal(p,a,b)                 (p)->lpVtbl->GetNormal(p,a,b)
     2946#define IDirect3DRMMeshBuilder3_DeleteVertices(p,a,b)            (p)->lpVtbl->DeleteVertices(p,a,b)
     2947#define IDirect3DRMMeshBuilder3_DeleteNormals(p,a,b)             (p)->lpVtbl->DeleteNormals(p,a,b)
     2948#define IDirect3DRMMeshBuilder3_DeleteFace(p,a)                  (p)->lpVtbl->DeleteFace(p,a)
     2949#define IDirect3DRMMeshBuilder3_Empty(p,a)                       (p)->lpVtbl->Empty(p,a)
     2950#define IDirect3DRMMeshBuilder3_Optimize(p,a)                    (p)->lpVtbl->Optimize(p,a)
     2951#define IDirect3DRMMeshBuilder3_AddFacesIndexed(p,a,b,c,d)       (p)->lpVtbl->AddFacesIndexed(p,a,b,c,d)
     2952#define IDirect3DRMMeshBuilder3_CreateSubMesh(p,a)               (p)->lpVtbl->CreateSubMesh(p,a)
     2953#define IDirect3DRMMeshBuilder3_GetParentMesh(p,a,b)             (p)->lpVtbl->GetParentMesh(p,a,b)
     2954#define IDirect3DRMMeshBuilder3_GetSubMeshes(p,a,b)              (p)->lpVtbl->GetSubMeshes(p,a,b)
     2955#define IDirect3DRMMeshBuilder3_DeleteSubMesh(p,a)               (p)->lpVtbl->DeleteSubMesh(p,a)
     2956#define IDirect3DRMMeshBuilder3_Enable(p,a)                      (p)->lpVtbl->Enable(p,a)
     2957#define IDirect3DRMMeshBuilder3_AddTriangles(p,a,b,c,d)          (p)->lpVtbl->AddTriangles(p,a,b,c,d)
     2958#define IDirect3DRMMeshBuilder3_SetVertices(p,a,b,c)             (p)->lpVtbl->SetVertices(p,a,b,c)
     2959#define IDirect3DRMMeshBuilder3_GetVertices(p,a,b,c)             (p)->lpVtbl->GetVertices(p,a,b,c)
     2960#define IDirect3DRMMeshBuilder3_SetNormals(p,a,b,c)              (p)->lpVtbl->SetNormals(p,a,b,c)
     2961#define IDirect3DRMMeshBuilder3_GetNormals(p,a,b,c)              (p)->lpVtbl->GetNormals(p,a,b,c)
     2962#define IDirect3DRMMeshBuilder3_GetNormalCount(p)                (p)->lpVtbl->GetNormalCount(p,a)
     2963#else
     2964/*** IUnknown methods ***/
     2965#define IDirect3DRMMeshBuilder3_QueryInterface(p,a,b)            (p)->QueryInterface(a,b)
     2966#define IDirect3DRMMeshBuilder3_AddRef(p)                        (p)->AddRef()
     2967#define IDirect3DRMMeshBuilder3_Release(p)                       (p)->Release()
     2968/*** IDirect3DRMObject methods ***/
     2969#define IDirect3DRMMeshBuilder3_Clone(p,a,b,c)                   (p)->Clone(a,b,c)
     2970#define IDirect3DRMMeshBuilder3_AddDestroyCallback(p,a,b)        (p)->AddDestroyCallback(a,b)
     2971#define IDirect3DRMMeshBuilder3_DeleteDestroyCallback(p,a,b)     (p)->DeleteDestroyCallback(a,b)
     2972#define IDirect3DRMMeshBuilder3_SetAppData(p,a)                  (p)->SetAppData(a)
     2973#define IDirect3DRMMeshBuilder3_GetAppData(p)                    (p)->GetAppData()
     2974#define IDirect3DRMMeshBuilder3_SetName(p,a)                     (p)->SetName(a)
     2975#define IDirect3DRMMeshBuilder3_GetName(p,a,b)                   (p)->GetName(a,b)
     2976#define IDirect3DRMMeshBuilder3_GetClassName(p,a,b)              (p)->GetClassName(a,b)
     2977/*** IDirect3DRMMeshBuilder3 methods ***/
     2978#define IDirect3DRMMeshBuilder3_Load(p,a,b,c,d,e)                (p)->Load(a,b,c,d,e)
     2979#define IDirect3DRMMeshBuilder3_Save(p,a,b,c)                    (p)->Save(a,b,c)
     2980#define IDirect3DRMMeshBuilder3_Scale(p,a,b,c)                   (p)->Scale(a,b,c)
     2981#define IDirect3DRMMeshBuilder3_Translate(p,a,b,c)               (p)->Translate(a)
     2982#define IDirect3DRMMeshBuilder3_SetColorSource(p,a)              (p)->SetColorSource(a,b,c)
     2983#define IDirect3DRMMeshBuilder3_GetBox(p,a)                      (p)->GetBox(a)
     2984#define IDirect3DRMMeshBuilder3_GenerateNormals(p,a,b)           (p)->GenerateNormals(a,b)
     2985#define IDirect3DRMMeshBuilder3_GetColorSource(p)                (p)->GetColorSource()
     2986#define IDirect3DRMMeshBuilder3_AddMesh(p,a)                     (p)-->AddMesh(a)
     2987#define IDirect3DRMMeshBuilder3_AddMeshBuilder(p,a)              (p)->AddMeshBuilder(a)
     2988#define IDirect3DRMMeshBuilder3_AddFrame(p,a)                    (p)->AddFrame(a)
     2989#define IDirect3DRMMeshBuilder3_AddFace(p,a)                     (p)->AddFace(a)
     2990#define IDirect3DRMMeshBuilder3_AddFaces(p,a,b,c,d,e,f)          (p)->AddFaces(a,b,c,d,e,f)
     2991#define IDirect3DRMMeshBuilder3_ReserveSpace(p,a,b,c)            (p)->ReserveSpace(a,b,c)
     2992#define IDirect3DRMMeshBuilder3_SetColorRGB(p,a,b,c)             (p)->SetColorRGB(a,b,c)
     2993#define IDirect3DRMMeshBuilder3_SetColor(p,a)                    (p)->SetColor(a)
     2994#define IDirect3DRMMeshBuilder3_SetTexture(p,a)                  (p)->SetTexture(a)
     2995#define IDirect3DRMMeshBuilder3_SetMateria(p,a)                  (p)->SetMateria(a)
     2996#define IDirect3DRMMeshBuilder3_SetTextureTopology(p,a,b)        (p)->SetTextureTopology(a,b)
     2997#define IDirect3DRMMeshBuilder3_SetQuality(p,a)                  (p)->SetQuality(a)
     2998#define IDirect3DRMMeshBuilder3_SetPerspective(p,a)              (p)->SetPerspective(a)
     2999#define IDirect3DRMMeshBuilder3_SetVertex(p,a,b,c,d)             (p)->SetVertex(a,b,c,d)
     3000#define IDirect3DRMMeshBuilder3_SetNormal(p,a,b,c,d)             (p)->SetNormal(a,b,c,d)
     3001#define IDirect3DRMMeshBuilder3_SetTextureCoordinates(p,a,b,c)   (p)->SetTextureCoordinates(a,b,c)
     3002#define IDirect3DRMMeshBuilder3_SetVertexColor(p,a,b)            (p)->SetVertexColor(a,b)
     3003#define IDirect3DRMMeshBuilder3_SetVertexColorRGB(p,a,b,c,d)     (p)->SetVertexColorRGB(a,b,c,d)
     3004#define IDirect3DRMMeshBuilder3_GetFaces(p,a)                    (p)->GetFaces(a)
     3005#define IDirect3DRMMeshBuilder3_GetGeometry(p,a,b,c,d,e,f)       (p)->GetGeometry(a,b,c,d,e,f)
     3006#define IDirect3DRMMeshBuilder3_GetTextureCoordinates(p,a,b,c)   (p)->GetTextureCoordinates(a,b,c)
     3007#define IDirect3DRMMeshBuilder3_AddVertex(p,a,b,c)               (p)->AddVertex(a,b,c)
     3008#define IDirect3DRMMeshBuilder3_AddNormal(p,a,b,c)               (p)->AddNormal(a,b,c)
     3009#define IDirect3DRMMeshBuilder3_CreateFace(p,a)                  (p)->CreateFace(a)
     3010#define IDirect3DRMMeshBuilder3_GetQuality(p)                    (p)->GetQuality()
     3011#define IDirect3DRMMeshBuilder3_GetPerspective(p)                (p)->GetPerspective()
     3012#define IDirect3DRMMeshBuilder3_GetFaceCount(p)                  (p)->GetFaceCount()
     3013#define IDirect3DRMMeshBuilder3_GetVertexCount(p)                (p)->GetVertexCount()
     3014#define IDirect3DRMMeshBuilder3_GetVertexColor(p,a)              (p)->GetVertexColor(a)
     3015#define IDirect3DRMMeshBuilder3_CreateMesh(p,a)                  (p)->CreateMesh(a)
     3016#define IDirect3DRMMeshBuilder3_GetFace(p,a,b)                   (p)->GetFace(p,a,b)
     3017#define IDirect3DRMMeshBuilder3_GetVertex(p,a,b)                 (p)->GetVertex(p,a,b)
     3018#define IDirect3DRMMeshBuilder3_GetNormal(p,a,b)                 (p)->GetNormal(p,a,b)
     3019#define IDirect3DRMMeshBuilder3_DeleteVertices(p,a,b)            (p)->DeleteVertices(p,a,b)
     3020#define IDirect3DRMMeshBuilder3_DeleteNormals(p,a,b)             (p)->DeleteNormals(p,a,b)
     3021#define IDirect3DRMMeshBuilder3_DeleteFace(p,a)                  (p)->DeleteFace(p,a)
     3022#define IDirect3DRMMeshBuilder3_Empty(p,a)                       (p)->Empty(p,a)
     3023#define IDirect3DRMMeshBuilder3_Optimize(p,a)                    (p)->Optimize(p,a)
     3024#define IDirect3DRMMeshBuilder3_AddFacesIndexed(p,a,b,c,d)       (p)->AddFacesIndexed(p,a,b,c,d)
     3025#define IDirect3DRMMeshBuilder3_CreateSubMesh(p,a)               (p)->CreateSubMesh(p,a)
     3026#define IDirect3DRMMeshBuilder3_GetParentMesh(p,a,b)             (p)->GetParentMesh(p,a,b)
     3027#define IDirect3DRMMeshBuilder3_GetSubMeshes(p,a,b)              (p)->GetSubMeshes(p,a,b)
     3028#define IDirect3DRMMeshBuilder3_DeleteSubMesh(p,a)               (p)->DeleteSubMesh(p,a)
     3029#define IDirect3DRMMeshBuilder3_Enable(p,a)                      (p)->Enable(p,a)
     3030#define IDirect3DRMMeshBuilder3_AddTriangles(p,a,b,c,d)          (p)->AddTriangles(p,a,b,c,d)
     3031#define IDirect3DRMMeshBuilder3_SetVertices(p,a,b,c)             (p)->SetVertices(p,a,b,c)
     3032#define IDirect3DRMMeshBuilder3_GetVertices(p,a,b,c)             (p)->GetVertices(p,a,b,c)
     3033#define IDirect3DRMMeshBuilder3_SetNormals(p,a,b,c)              (p)->SetNormals(p,a,b,c)
     3034#define IDirect3DRMMeshBuilder3_GetNormals(p,a,b,c)              (p)->GetNormals(p,a,b,c)
     3035#define IDirect3DRMMeshBuilder3_GetNormalCount(p)                (p)->GetNormalCount(p,a)
     3036#endif
     3037
    1993038#ifdef __cplusplus
    2003039};
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/d3dx8.h

    r22496 r28475  
    2626 */
    2727
    28 /*
    29  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    30  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    31  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    32  * a choice of LGPL license versions is made available with the language indicating
    33  * that LGPLv2 or any later version may be used, or where a choice of which version
    34  * of the LGPL is applied is otherwise unspecified.
    35  */
    36 
    37 /*
    38  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    39  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    40  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    41  * a choice of LGPL license versions is made available with the language indicating
    42  * that LGPLv2 or any later version may be used, or where a choice of which version
    43  * of the LGPL is applied is otherwise unspecified.
    44  */
    45 
    46 /*
    47  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    48  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    49  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    50  * a choice of LGPL license versions is made available with the language indicating
    51  * that LGPLv2 or any later version may be used, or where a choice of which version
    52  * of the LGPL is applied is otherwise unspecified.
    53  */
    54 
    55 /*
    56  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    57  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    58  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    59  * a choice of LGPL license versions is made available with the language indicating
    60  * that LGPLv2 or any later version may be used, or where a choice of which version
    61  * of the LGPL is applied is otherwise unspecified.
    62  */
    63 
    64 /*
    65  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    66  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    67  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    68  * a choice of LGPL license versions is made available with the language indicating
    69  * that LGPLv2 or any later version may be used, or where a choice of which version
    70  * of the LGPL is applied is otherwise unspecified.
    71  */
    72 
    7328#ifndef __D3DX8_H__
    7429#define __D3DX8_H__
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/d3dx8core.h

    r22496 r28475  
    1515 * License along with this library; if not, write to the Free Software
    1616 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
    17  */
    18 
    19 /*
    20  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    21  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    22  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    23  * a choice of LGPL license versions is made available with the language indicating
    24  * that LGPLv2 or any later version may be used, or where a choice of which version
    25  * of the LGPL is applied is otherwise unspecified.
    26  */
    27 
    28 /*
    29  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    30  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    31  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    32  * a choice of LGPL license versions is made available with the language indicating
    33  * that LGPLv2 or any later version may be used, or where a choice of which version
    34  * of the LGPL is applied is otherwise unspecified.
    35  */
    36 
    37 /*
    38  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    39  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    40  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    41  * a choice of LGPL license versions is made available with the language indicating
    42  * that LGPLv2 or any later version may be used, or where a choice of which version
    43  * of the LGPL is applied is otherwise unspecified.
    44  */
    45 
    46 /*
    47  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    48  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    49  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    50  * a choice of LGPL license versions is made available with the language indicating
    51  * that LGPLv2 or any later version may be used, or where a choice of which version
    52  * of the LGPL is applied is otherwise unspecified.
    53  */
    54 
    55 /*
    56  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    57  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    58  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    59  * a choice of LGPL license versions is made available with the language indicating
    60  * that LGPLv2 or any later version may be used, or where a choice of which version
    61  * of the LGPL is applied is otherwise unspecified.
    6217 */
    6318
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/d3dx8math.h

    r22496 r28475  
    1616 * License along with this library; if not, write to the Free Software
    1717 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
    18  */
    19 
    20 /*
    21  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    22  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    23  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    24  * a choice of LGPL license versions is made available with the language indicating
    25  * that LGPLv2 or any later version may be used, or where a choice of which version
    26  * of the LGPL is applied is otherwise unspecified.
    27  */
    28 
    29 /*
    30  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    31  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    32  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    33  * a choice of LGPL license versions is made available with the language indicating
    34  * that LGPLv2 or any later version may be used, or where a choice of which version
    35  * of the LGPL is applied is otherwise unspecified.
    36  */
    37 
    38 /*
    39  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    40  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    41  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    42  * a choice of LGPL license versions is made available with the language indicating
    43  * that LGPLv2 or any later version may be used, or where a choice of which version
    44  * of the LGPL is applied is otherwise unspecified.
    45  */
    46 
    47 /*
    48  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    49  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    50  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    51  * a choice of LGPL license versions is made available with the language indicating
    52  * that LGPLv2 or any later version may be used, or where a choice of which version
    53  * of the LGPL is applied is otherwise unspecified.
    54  */
    55 
    56 /*
    57  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    58  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    59  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    60  * a choice of LGPL license versions is made available with the language indicating
    61  * that LGPLv2 or any later version may be used, or where a choice of which version
    62  * of the LGPL is applied is otherwise unspecified.
    6318 */
    6419
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/d3dx8math.inl

    r22496 r28475  
    2727 */
    2828
    29 /*
    30  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    31  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    32  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    33  * a choice of LGPL license versions is made available with the language indicating
    34  * that LGPLv2 or any later version may be used, or where a choice of which version
    35  * of the LGPL is applied is otherwise unspecified.
    36  */
    37 
    38 /*
    39  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    40  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    41  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    42  * a choice of LGPL license versions is made available with the language indicating
    43  * that LGPLv2 or any later version may be used, or where a choice of which version
    44  * of the LGPL is applied is otherwise unspecified.
    45  */
    46 
    47 /*
    48  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    49  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    50  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    51  * a choice of LGPL license versions is made available with the language indicating
    52  * that LGPLv2 or any later version may be used, or where a choice of which version
    53  * of the LGPL is applied is otherwise unspecified.
    54  */
    55 
    56 /*
    57  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    58  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    59  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    60  * a choice of LGPL license versions is made available with the language indicating
    61  * that LGPLv2 or any later version may be used, or where a choice of which version
    62  * of the LGPL is applied is otherwise unspecified.
    63  */
    64 
    65 /*
    66  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    67  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    68  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    69  * a choice of LGPL license versions is made available with the language indicating
    70  * that LGPLv2 or any later version may be used, or where a choice of which version
    71  * of the LGPL is applied is otherwise unspecified.
    72  */
    73 
    7429#ifndef __D3DX8MATH_INL__
    7530#define __D3DX8MATH_INL__
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/d3dx8mesh.h

    r22496 r28475  
    1515 * License along with this library; if not, write to the Free Software
    1616 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
    17  */
    18 
    19 /*
    20  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    21  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    22  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    23  * a choice of LGPL license versions is made available with the language indicating
    24  * that LGPLv2 or any later version may be used, or where a choice of which version
    25  * of the LGPL is applied is otherwise unspecified.
    26  */
    27 
    28 /*
    29  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    30  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    31  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    32  * a choice of LGPL license versions is made available with the language indicating
    33  * that LGPLv2 or any later version may be used, or where a choice of which version
    34  * of the LGPL is applied is otherwise unspecified.
    35  */
    36 
    37 /*
    38  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    39  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    40  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    41  * a choice of LGPL license versions is made available with the language indicating
    42  * that LGPLv2 or any later version may be used, or where a choice of which version
    43  * of the LGPL is applied is otherwise unspecified.
    44  */
    45 
    46 /*
    47  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    48  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    49  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    50  * a choice of LGPL license versions is made available with the language indicating
    51  * that LGPLv2 or any later version may be used, or where a choice of which version
    52  * of the LGPL is applied is otherwise unspecified.
    53  */
    54 
    55 /*
    56  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    57  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    58  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    59  * a choice of LGPL license versions is made available with the language indicating
    60  * that LGPLv2 or any later version may be used, or where a choice of which version
    61  * of the LGPL is applied is otherwise unspecified.
    6217 */
    6318
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/d3dx9.h

    r19678 r28475  
    4242#include "d3dx9mesh.h"
    4343#include "d3dx9shader.h"
     44#include "d3dx9effect.h"
    4445#include "d3dx9tex.h"
    4546
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/d3dx9mesh.h

    r21731 r28475  
    3131#define __WINE_D3DX9MESH_H
    3232
     33DEFINE_GUID(IID_ID3DXBaseMesh, 0x7ed943dd, 0x52e8, 0x40b5, 0xa8, 0xd8, 0x76, 0x68, 0x5c, 0x40, 0x63, 0x30);
     34DEFINE_GUID(IID_ID3DXMesh,     0x4020e5c2, 0x1403, 0x4929, 0x88, 0x3f, 0xe2, 0xe8, 0x49, 0xfa, 0xc1, 0x95);
     35
     36enum _MAX_FVF_DECL_SIZE
     37{
     38    MAX_FVF_DECL_SIZE = MAXD3DDECLLENGTH + 1
     39};
     40
     41typedef struct ID3DXBaseMesh* LPD3DXBASEMESH;
     42typedef struct ID3DXMesh* LPD3DXMESH;
     43
     44typedef struct _D3DXATTRIBUTERANGE {
     45    DWORD AttribId;
     46    DWORD FaceStart;
     47    DWORD FaceCount;
     48    DWORD VertexStart;
     49    DWORD VertexCount;
     50} D3DXATTRIBUTERANGE;
     51
     52typedef D3DXATTRIBUTERANGE* LPD3DXATTRIBUTERANGE;
     53
     54#undef INTERFACE
     55#define INTERFACE ID3DXBaseMesh
     56
     57DECLARE_INTERFACE_(ID3DXBaseMesh, IUnknown)
     58{
     59    /*** IUnknown methods ***/
     60    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID* object) PURE;
     61    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
     62    STDMETHOD_(ULONG, Release)(THIS) PURE;
     63    /*** ID3DXBaseMesh ***/
     64    STDMETHOD(DrawSubset)(THIS_ DWORD attrib_id) PURE;
     65    STDMETHOD_(DWORD, GetNumFaces)(THIS) PURE;
     66    STDMETHOD_(DWORD, GetNumVertices)(THIS) PURE;
     67    STDMETHOD_(DWORD, GetFVF)(THIS) PURE;
     68    STDMETHOD(GetDeclaration)(THIS_ D3DVERTEXELEMENT9 declaration[MAX_FVF_DECL_SIZE]) PURE;
     69    STDMETHOD_(DWORD, GetNumBytesPerVertex)(THIS) PURE;
     70    STDMETHOD_(DWORD, GetOptions)(THIS) PURE;
     71    STDMETHOD(GetDevice)(THIS_ LPDIRECT3DDEVICE9* device) PURE;
     72    STDMETHOD(CloneMeshFVF)(THIS_ DWORD options, DWORD fvf, LPDIRECT3DDEVICE9 device, LPD3DXMESH* clone_mesh) PURE;
     73    STDMETHOD(CloneMesh)(THIS_ DWORD options, CONST D3DVERTEXELEMENT9* declaration, LPDIRECT3DDEVICE9 device,
     74        LPD3DXMESH* clone_mesh) PURE;
     75    STDMETHOD(GetVertexBuffer)(THIS_ LPDIRECT3DVERTEXBUFFER9* vertex_buffer) PURE;
     76    STDMETHOD(GetIndexBuffer)(THIS_ LPDIRECT3DINDEXBUFFER9* index_buffer) PURE;
     77    STDMETHOD(LockVertexBuffer)(THIS_ DWORD flags, LPVOID* data) PURE;
     78    STDMETHOD(UnlockVertexBuffer)(THIS) PURE;
     79    STDMETHOD(LockIndexBuffer)(THIS_ DWORD flags, LPVOID* data) PURE;
     80    STDMETHOD(UnlockIndexBuffer)(THIS) PURE;
     81    STDMETHOD(GetAttributeTable)(THIS_ D3DXATTRIBUTERANGE* attrib_table, DWORD* attrib_table_size) PURE;
     82    STDMETHOD(ConvertPointRepsToAdjacency)(THIS_ CONST DWORD* point_reps, DWORD* adjacency) PURE;
     83    STDMETHOD(ConvertAdjacencyToPointReps)(THIS_ CONST DWORD* adjacency, DWORD* point_reps) PURE;
     84    STDMETHOD(GenerateAdjacency)(THIS_ FLOAT epsilon, DWORD* adjacency) PURE;
     85    STDMETHOD(UpdateSemantics)(THIS_ D3DVERTEXELEMENT9 declaration[MAX_FVF_DECL_SIZE]) PURE;
     86};
     87
     88
     89#undef INTERFACE
     90#define INTERFACE ID3DXMesh
     91
     92DECLARE_INTERFACE_(ID3DXMesh, ID3DXBaseMesh)
     93{
     94    /*** IUnknown methods ***/
     95    STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID* object) PURE;
     96    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
     97    STDMETHOD_(ULONG, Release)(THIS) PURE;
     98    /*** ID3DXBaseMesh ***/
     99    STDMETHOD(DrawSubset)(THIS_ DWORD attrib_id) PURE;
     100    STDMETHOD_(DWORD, GetNumFaces)(THIS) PURE;
     101    STDMETHOD_(DWORD, GetNumVertices)(THIS) PURE;
     102    STDMETHOD_(DWORD, GetFVF)(THIS) PURE;
     103    STDMETHOD(GetDeclaration)(THIS_ D3DVERTEXELEMENT9 declaration[MAX_FVF_DECL_SIZE]) PURE;
     104    STDMETHOD_(DWORD, GetNumBytesPerVertex)(THIS) PURE;
     105    STDMETHOD_(DWORD, GetOptions)(THIS) PURE;
     106    STDMETHOD(GetDevice)(THIS_ LPDIRECT3DDEVICE9* device) PURE;
     107    STDMETHOD(CloneMeshFVF)(THIS_ DWORD options, DWORD fvf, LPDIRECT3DDEVICE9 device, LPD3DXMESH* clone_mesh) PURE;
     108    STDMETHOD(CloneMesh)(THIS_ DWORD options, CONST D3DVERTEXELEMENT9* declaration, LPDIRECT3DDEVICE9 device,
     109        LPD3DXMESH* clone_mesh) PURE;
     110    STDMETHOD(GetVertexBuffer)(THIS_ LPDIRECT3DVERTEXBUFFER9* vertex_buffer) PURE;
     111    STDMETHOD(GetIndexBuffer)(THIS_ LPDIRECT3DINDEXBUFFER9* index_buffer) PURE;
     112    STDMETHOD(LockVertexBuffer)(THIS_ DWORD flags, LPVOID* data) PURE;
     113    STDMETHOD(UnlockVertexBuffer)(THIS) PURE;
     114    STDMETHOD(LockIndexBuffer)(THIS_ DWORD flags, LPVOID* data) PURE;
     115    STDMETHOD(UnlockIndexBuffer)(THIS) PURE;
     116    STDMETHOD(GetAttributeTable)(THIS_ D3DXATTRIBUTERANGE* attrib_table, DWORD* attrib_table_size) PURE;
     117    STDMETHOD(ConvertPointRepsToAdjacency)(THIS_ CONST DWORD* point_reps, DWORD* adjacency) PURE;
     118    STDMETHOD(ConvertAdjacencyToPointReps)(THIS_ CONST DWORD* adjacency, DWORD* point_reps) PURE;
     119    STDMETHOD(GenerateAdjacency)(THIS_ FLOAT epsilon, DWORD* adjacency) PURE;
     120    STDMETHOD(UpdateSemantics)(THIS_ D3DVERTEXELEMENT9 declaration[MAX_FVF_DECL_SIZE]) PURE;
     121    /*** ID3DXMesh ***/
     122    STDMETHOD(LockAttributeBuffer)(THIS_ DWORD flags, DWORD** data) PURE;
     123    STDMETHOD(UnlockAttributeBuffer)(THIS) PURE;
     124    STDMETHOD(Optimize)(THIS_ DWORD flags, CONST DWORD* adjacency_in, DWORD* adjacency_out,
     125        DWORD* face_remap, LPD3DXBUFFER* vertex_remap, LPD3DXMESH* opt_mesh) PURE;
     126    STDMETHOD(OptimizeInplace)(THIS_ DWORD flags, CONST DWORD* adjacency_in, DWORD* adjacency_out,
     127                     DWORD* face_remap, LPD3DXBUFFER* vertex_remap) PURE;
     128    STDMETHOD(SetAttributeTable)(THIS_ CONST D3DXATTRIBUTERANGE* attrib_table, DWORD attrib_table_size) PURE;
     129};
     130
    33131#ifdef __cplusplus
    34132extern "C" {
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/d3dx9shader.h

    r25949 r28475  
    5353
    5454typedef LPCSTR D3DXHANDLE;
     55
     56typedef enum _D3DXREGISTER_SET
     57{
     58    D3DXRS_BOOL,
     59    D3DXRS_INT4,
     60    D3DXRS_FLOAT4,
     61    D3DXRS_SAMPLER,
     62    D3DXRS_FORCE_DWORD = 0x7fffffff
     63} D3DXREGISTER_SET, *LPD3DXREGISTER_SET;
    5564
    5665typedef enum D3DXPARAMETER_CLASS
     
    9099} D3DXPARAMETER_TYPE, *LPD3DXPARAMETER_TYPE;
    91100
     101typedef struct _D3DXCONSTANTTABLE_DESC
     102{
     103    LPCSTR Creator;
     104    DWORD Version;
     105    UINT Constants;
     106} D3DXCONSTANTTABLE_DESC, *LPD3DXCONSTANTTABLE_DESC;
     107
     108typedef struct _D3DXCONSTANT_DESC
     109{
     110    LPCSTR Name;
     111    D3DXREGISTER_SET RegisterSet;
     112    UINT RegisterIndex;
     113    UINT RegisterCount;
     114    D3DXPARAMETER_CLASS Class;
     115    D3DXPARAMETER_TYPE Type;
     116    UINT Rows;
     117    UINT Columns;
     118    UINT Elements;
     119    UINT StructMembers;
     120    UINT Bytes;
     121    LPCVOID DefaultValue;
     122} D3DXCONSTANT_DESC, *LPD3DXCONSTANT_DESC;
     123
     124DEFINE_GUID(IID_ID3DXConstantTable, 0x9dca3190, 0x38b9, 0x4fc3, 0x92, 0xe3, 0x39, 0xc6, 0xdd, 0xfb, 0x35, 0x8b);
     125
     126#undef INTERFACE
     127#define INTERFACE ID3DXConstantTable
     128
     129DECLARE_INTERFACE_(ID3DXConstantTable, ID3DXBuffer)
     130{
     131    /*** IUnknown methods ***/
     132    STDMETHOD(QueryInterface)(THIS_ REFIID iid, LPVOID *ppv) PURE;
     133    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
     134    STDMETHOD_(ULONG, Release)(THIS) PURE;
     135    /*** ID3DXBuffer methods ***/
     136    STDMETHOD_(LPVOID, GetBufferPointer)(THIS) PURE;
     137    STDMETHOD_(DWORD, GetBufferSize)(THIS) PURE;
     138    /*** ID3DXConstantTable methods ***/
     139    STDMETHOD(GetDesc)(THIS_ D3DXCONSTANTTABLE_DESC *pDesc) PURE;
     140    STDMETHOD(GetConstantDesc)(THIS_ D3DXHANDLE hConstant, D3DXCONSTANT_DESC *pConstantDesc, UINT *pCount) PURE;
     141    STDMETHOD_(UINT, GetSamplerIndex)(THIS_ D3DXHANDLE hConstant) PURE;
     142    STDMETHOD_(D3DXHANDLE, GetConstant)(THIS_ D3DXHANDLE hConstant, UINT Index) PURE;
     143    STDMETHOD_(D3DXHANDLE, GetConstantByName)(THIS_ D3DXHANDLE hConstant, LPCSTR pName) PURE;
     144    STDMETHOD_(D3DXHANDLE, GetConstantElement)(THIS_ D3DXHANDLE hConstant, UINT Index) PURE;
     145    STDMETHOD(SetDefaults)(THIS_ LPDIRECT3DDEVICE9 pDevice) PURE;
     146    STDMETHOD(SetValue)(THIS_ LPDIRECT3DDEVICE9 pDevice, D3DXHANDLE hConstant, LPCVOID pData, UINT Bytes) PURE;
     147    STDMETHOD(SetBool)(THIS_ LPDIRECT3DDEVICE9 pDevice, D3DXHANDLE hConstant, BOOL b) PURE;
     148    STDMETHOD(SetBoolArray)(THIS_ LPDIRECT3DDEVICE9 pDevice, D3DXHANDLE hConstant, CONST BOOL* pb, UINT Count) PURE;
     149    STDMETHOD(SetInt)(THIS_ LPDIRECT3DDEVICE9 pDevice, D3DXHANDLE hConstant, INT n) PURE;
     150    STDMETHOD(SetIntArray)(THIS_ LPDIRECT3DDEVICE9 pDevice, D3DXHANDLE hConstant, CONST INT* pn, UINT Count) PURE;
     151    STDMETHOD(SetFloat)(THIS_ LPDIRECT3DDEVICE9 pDevice, D3DXHANDLE hConstant, FLOAT f) PURE;
     152    STDMETHOD(SetFloatArray)(THIS_ LPDIRECT3DDEVICE9 pDevice, D3DXHANDLE hConstant, CONST FLOAT* pf, UINT Count) PURE;
     153    STDMETHOD(SetVector)(THIS_ LPDIRECT3DDEVICE9 pDevice, D3DXHANDLE hConstant, CONST D3DXVECTOR4* pVector) PURE;
     154    STDMETHOD(SetVectorArray)(THIS_ LPDIRECT3DDEVICE9 pDevice, D3DXHANDLE hConstant, CONST D3DXVECTOR4* pVector, UINT Count) PURE;
     155    STDMETHOD(SetMatrix)(THIS_ LPDIRECT3DDEVICE9 pDevice, D3DXHANDLE hConstant, CONST D3DXMATRIX* pMatrix) PURE;
     156    STDMETHOD(SetMatrixArray)(THIS_ LPDIRECT3DDEVICE9 pDevice, D3DXHANDLE hConstant, CONST D3DXMATRIX* pMatrix, UINT Count) PURE;
     157    STDMETHOD(SetMatrixPointerArray)(THIS_ LPDIRECT3DDEVICE9 pDevice, D3DXHANDLE hConstant, CONST D3DXMATRIX** ppMatrix, UINT Count) PURE;
     158    STDMETHOD(SetMatrixTranspose)(THIS_ LPDIRECT3DDEVICE9 pDevice, D3DXHANDLE hConstant, CONST D3DXMATRIX* pMatrix) PURE;
     159    STDMETHOD(SetMatrixTransposeArray)(THIS_ LPDIRECT3DDEVICE9 pDevice, D3DXHANDLE hConstant, CONST D3DXMATRIX* pMatrix, UINT Count) PURE;
     160    STDMETHOD(SetMatrixTransposePointerArray)(THIS_ LPDIRECT3DDEVICE9 pDevice, D3DXHANDLE hConstant, CONST D3DXMATRIX** ppMatrix, UINT Count) PURE;
     161};
     162
     163#if !defined(__cplusplus) || defined(CINTERFACE)
     164/*** IUnknown methods ***/
     165#define ID3DXConstantTable_QueryInterface(p,a,b)                      (p)->lpVtbl->QueryInterface(p,a,b)
     166#define ID3DXConstantTable_AddRef(p)                                  (p)->lpVtbl->AddRef(p)
     167#define ID3DXConstantTable_Release(p)                                 (p)->lpVtbl->Release(p)
     168/*** ID3DXBuffer methods ***/
     169#define ID3DXConstantTable_GetBufferPointer(p)                        (p)->lpVtbl->GetBufferPointer(p)
     170#define ID3DXConstantTable_GetBufferSize(p)                           (p)->lpVtbl->GetBufferSize(p)
     171/*** ID3DXConstantTable methods ***/
     172#define ID3DXConstantTable_GetDesc(p,a)                               (p)->lpVtbl->GetDesc(p,a)
     173#define ID3DXConstantTable_GetConstantDesc(p,a,b,c)                   (p)->lpVtbl->GetConstantDesc(p,a,b,c)
     174#define ID3DXConstantTable_GetSamplerIndex(p,a)                       (p)->lpVtbl->GetSamplerIndex(p,a)
     175#define ID3DXConstantTable_GetConstant(p,a,b)                         (p)->lpVtbl->GetConstant(p,a,b)
     176#define ID3DXConstantTable_GetConstantByName(p,a,b)                   (p)->lpVtbl->GetConstantByName(p,a,b)
     177#define ID3DXConstantTable_GetConstantElement(p,a,b)                  (p)->lpVtbl->GetConstantElement(p,a,b)
     178#define ID3DXConstantTable_SetDefaults(p,a)                           (p)->lpVtbl->SetDefaults(p,a)
     179#define ID3DXConstantTable_SetValue(p,a,b,c,d)                        (p)->lpVtbl->SetValue(p,a,b,c,d)
     180#define ID3DXConstantTable_SetBool(p,a,b,c)                           (p)->lpVtbl->SetBool(p,a,b,c)
     181#define ID3DXConstantTable_SetBoolArray(p,a,b,c,d)                    (p)->lpVtbl->SetBoolArray(p,a,b,c,d)
     182#define ID3DXConstantTable_SetInt(p,a,b,c)                            (p)->lpVtbl->SetInt(p,a,b,c)
     183#define ID3DXConstantTable_SetIntArray(p,a,b,c,d)                     (p)->lpVtbl->SetIntArray(p,a,b,c,d)
     184#define ID3DXConstantTable_SetFloat(p,a,b,c)                          (p)->lpVtbl->SetFloat(p,a,b,c)
     185#define ID3DXConstantTable_SetFloatArray(p,a,b,c,d)                   (p)->lpVtbl->SetFloatArray(p,a,b,c,d)
     186#define ID3DXConstantTable_SetVector(p,a,b,c)                         (p)->lpVtbl->SetVector(p,a,b,c)
     187#define ID3DXConstantTable_SetVectorArray(p,a,b,c,d)                  (p)->lpVtbl->SetVectorArray(p,a,b,c,d)
     188#define ID3DXConstantTable_SetMatrix(p,a,b,c)                         (p)->lpVtbl->SetMatrix(p,a,b,c)
     189#define ID3DXConstantTable_SetMatrixArray(p,a,b,c,d)                  (p)->lpVtbl->SetMatrixArray(p,a,b,c,d)
     190#define ID3DXConstantTable_SetMatrixPointerArray(p,a,b,c,d)           (p)->lpVtbl->SetMatrixPointerArray(p,a,b,c,d)
     191#define ID3DXConstantTable_SetMatrixTranspose(p,a,b,c)                (p)->lpVtbl->SetMatrixTranspose(p,a,b,c)
     192#define ID3DXConstantTable_SetMatrixTransposeArray(p,a,b,c,d)         (p)->lpVtbl->SetMatrixTransposeArray(p,a,b,c,d)
     193#define ID3DXConstantTable_SetMatrixTransposePointerArray(p,a,b,c,d)  (p)->lpVtbl->SetMatrixTransposePointerArray(p,a,b,c,d)
     194#else
     195/*** IUnknown methods ***/
     196#define ID3DXConstantTable_QueryInterface(p,a,b)                      (p)->QueryInterface(a,b)
     197#define ID3DXConstantTable_AddRef(p)                                  (p)->AddRef()
     198#define ID3DXConstantTable_Release(p)                                 (p)->Release()
     199/*** ID3DXBuffer methods ***/
     200#define ID3DXConstantTable_GetBufferPointer(p)                        (p)->GetBufferPointer()
     201#define ID3DXConstantTable_GetBufferSize(p)                           (p)->GetBufferSize()
     202/*** ID3DXConstantTable methods ***/
     203#define ID3DXConstantTable_GetDesc(p,a)                               (p)->GetDesc(a)
     204#define ID3DXConstantTable_GetConstantDesc(p,a,b,c)                   (p)->GetConstantDesc(a,b,c)
     205#define ID3DXConstantTable_GetSamplerIndex(p,a)                       (p)->GetConstantDesc(a)
     206#define ID3DXConstantTable_GetConstant(p,a,b)                         (p)->GetConstant(a,b)
     207#define ID3DXConstantTable_GetConstantByName(p,a,b)                   (p)->GetConstantByName(a,b)
     208#define ID3DXConstantTable_GetConstantElement(p,a,b)                  (p)->GetConstantElement(a,b)
     209#define ID3DXConstantTable_SetDefaults(p,a)                           (p)->SetDefaults(a)
     210#define ID3DXConstantTable_SetValue(p,a,b,c,d)                        (p)->SetValue(a,b,c,d)
     211#define ID3DXConstantTable_SetBool(p,a,b,c)                           (p)->SetBool(a,b,c)
     212#define ID3DXConstantTable_SetBoolArray(p,a,b,c,d)                    (p)->SetBoolArray(a,b,c,d)
     213#define ID3DXConstantTable_SetInt(p,a,b,c)                            (p)->SetInt(a,b,c)
     214#define ID3DXConstantTable_SetIntArray(p,a,b,c,d)                     (p)->SetIntArray(a,b,c,d)
     215#define ID3DXConstantTable_SetFloat(p,a,b,c)                          (p)->SetFloat(a,b,c)
     216#define ID3DXConstantTable_SetFloatArray(p,a,b,c,d)                   (p)->SetFloatArray(a,b,c,d)
     217#define ID3DXConstantTable_SetVector(p,a,b,c)                         (p)->SetVector(a,b,c)
     218#define ID3DXConstantTable_SetVectorArray(p,a,b,c,d)                  (p)->SetVectorArray(a,b,c,d)
     219#define ID3DXConstantTable_SetMatrix(p,a,b,c)                         (p)->SetMatrix(a,b,c)
     220#define ID3DXConstantTable_SetMatrixArray(p,a,b,c,d)                  (p)->SetMatrixArray(a,b,c,d)
     221#define ID3DXConstantTable_SetMatrixPointerArray(p,a,b,c,d)           (p)->SetMatrixPointerArray(a,b,c,d)
     222#define ID3DXConstantTable_SetMatrixTranspose(p,a,b,c)                (p)->SetMatrixTranspose(a,b,c)
     223#define ID3DXConstantTable_SetMatrixTransposeArray(p,a,b,c,d)         (p)->SetMatrixTransposeArray(a,b,c,d)
     224#define ID3DXConstantTable_SetMatrixTransposePointerArray(p,a,b,c,d)  (p)->SetMatrixTransposePointerArray(a,b,c,d)
     225#endif
     226
     227typedef struct ID3DXConstantTable *LPD3DXCONSTANTTABLE;
     228
    92229typedef struct _D3DXMACRO {
    93230    LPCSTR Name;
     
    95232} D3DXMACRO, *LPD3DXMACRO;
    96233
     234typedef struct _D3DXSEMANTIC {
     235    UINT Usage;
     236    UINT UsageIndex;
     237} D3DXSEMANTIC, *LPD3DXSEMANTIC;
     238
    97239typedef enum _D3DXINCLUDE_TYPE
    98240{
     
    124266DWORD WINAPI D3DXGetShaderVersion(const DWORD *byte_code);
    125267LPCSTR WINAPI D3DXGetVertexShaderProfile(LPDIRECT3DDEVICE9 device);
     268HRESULT WINAPI D3DXFindShaderComment(CONST DWORD* byte_code, DWORD fourcc, LPCVOID* data, UINT* size);
    126269
    127270HRESULT WINAPI D3DXAssembleShaderFromFileA(LPCSTR filename,
     
    163306                                  LPD3DXBUFFER* error_messages);
    164307
     308HRESULT WINAPI D3DXGetShaderConstantTableEx(CONST DWORD* byte_code,
     309                                            DWORD flags,
     310                                            LPD3DXCONSTANTTABLE* constant_table);
     311
     312HRESULT WINAPI D3DXGetShaderConstantTable(CONST DWORD* byte_code,
     313                                          LPD3DXCONSTANTTABLE* constant_table);
     314
    165315#ifdef __cplusplus
    166316}
    167317#endif
    168318
     319typedef struct _D3DXSHADER_CONSTANTTABLE
     320{
     321    DWORD Size;
     322    DWORD Creator;
     323    DWORD Version;
     324    DWORD Constants;
     325    DWORD ConstantInfo;
     326    DWORD Flags;
     327    DWORD Target;
     328} D3DXSHADER_CONSTANTTABLE, *LPD3DXSHADER_CONSTANTTABLE;
     329
     330typedef struct _D3DXSHADER_CONSTANTINFO
     331{
     332    DWORD Name;
     333    WORD  RegisterSet;
     334    WORD  RegisterIndex;
     335    WORD  RegisterCount;
     336    WORD  Reserved;
     337    DWORD TypeInfo;
     338    DWORD DefaultValue;
     339} D3DXSHADER_CONSTANTINFO, *LPD3DXSHADER_CONSTANTINFO;
     340
     341typedef struct _D3DXSHADER_TYPEINFO
     342{
     343    WORD  Class;
     344    WORD  Type;
     345    WORD  Rows;
     346    WORD  Columns;
     347    WORD  Elements;
     348    WORD  StructMembers;
     349    DWORD StructMemberInfo;
     350} D3DXSHADER_TYPEINFO, *LPD3DXSHADER_TYPEINFO;
     351
     352typedef struct _D3DXSHADER_STRUCTMEMBERINFO
     353{
     354    DWORD Name;
     355    DWORD TypeInfo;
     356} D3DXSHADER_STRUCTMEMBERINFO, *LPD3DXSHADER_STRUCTMEMBERINFO;
     357
    169358#endif /* __D3DX9SHADER_H__ */
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/dbs.idl

    r25949 r28475  
    193193};
    194194
    195 cpp_quote("DEFINE_GUID(DBGUID_SESSION,    0xc8b522f5, 0x5cf3, 0x11ce, 0xad, 0xe5, 0x00, 0xaa, 0x00, 0x44, 0x77, 0x3d);")
    196 cpp_quote("DEFINE_GUID(DBGUID_ROWSET,     0xc8b522f6, 0x5cf3, 0x11ce, 0xad, 0xe5, 0x00, 0xaa, 0x00, 0x44, 0x77, 0x3d);")
    197 cpp_quote("DEFINE_GUID(DBGUID_ROW,        0xc8b522f7, 0x5cf3, 0x11ce, 0xad, 0xe5, 0x00, 0xaa, 0x00, 0x44, 0x77, 0x3d);")
    198 cpp_quote("DEFINE_GUID(DBGUID_STREAM,     0xc8b522f9, 0x5cf3, 0x11ce, 0xad, 0xe5, 0x00, 0xaa, 0x00, 0x44, 0x77, 0x3d);")
     195cpp_quote("#ifdef DBINITCONSTANTS")
     196cpp_quote("#ifdef __cplusplus")
     197cpp_quote("#define DEFINE_DBGUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \\")
     198cpp_quote("        EXTERN_C const GUID name DECLSPEC_HIDDEN;     \\")
     199cpp_quote("        EXTERN_C const GUID name =                    \\")
     200cpp_quote("     { l, w1, w2, { b1, b2,  b3,  b4,  b5,  b6,  b7,  b8 } }")
     201cpp_quote("#else")
     202cpp_quote("#define DEFINE_DBGUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \\")
     203cpp_quote("        const GUID name DECLSPEC_HIDDEN;      \\")
     204cpp_quote("        const GUID name =                             \\")
     205cpp_quote("     { l, w1, w2, { b1, b2,  b3,  b4,  b5,  b6,  b7,  b8 } }")
     206cpp_quote("#endif")
     207cpp_quote("#else")
     208cpp_quote("#define DEFINE_DBGUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \\")
     209cpp_quote("    EXTERN_C const GUID name DECLSPEC_HIDDEN")
     210cpp_quote("#endif")
     211
     212cpp_quote("DEFINE_DBGUID(DBGUID_SESSION,    0xc8b522f5, 0x5cf3, 0x11ce, 0xad, 0xe5, 0x00, 0xaa, 0x00, 0x44, 0x77, 0x3d);")
     213cpp_quote("DEFINE_DBGUID(DBGUID_ROWSET,     0xc8b522f6, 0x5cf3, 0x11ce, 0xad, 0xe5, 0x00, 0xaa, 0x00, 0x44, 0x77, 0x3d);")
     214cpp_quote("DEFINE_DBGUID(DBGUID_ROW,        0xc8b522f7, 0x5cf3, 0x11ce, 0xad, 0xe5, 0x00, 0xaa, 0x00, 0x44, 0x77, 0x3d);")
     215cpp_quote("DEFINE_DBGUID(DBGUID_STREAM,     0xc8b522f9, 0x5cf3, 0x11ce, 0xad, 0xe5, 0x00, 0xaa, 0x00, 0x44, 0x77, 0x3d);")
    199216
    200217typedef struct tagDBCOLUMNACCESS
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/ddk/usb.h

    r25949 r28475  
    9494#define USBD_STATUS_SUCCESS                          ((USBD_STATUS)0x00000000)
    9595#define USBD_STATUS_PENDING                          ((USBD_STATUS)0x40000000)
     96#define USBD_STATUS_ERROR                            ((USBD_STATUS)0x80000000)
     97#define USBD_STATUS_HALTED                           ((USBD_STATUS)0xC0000000)
     98
     99#define USBD_STATUS_CANCELED                         ((USBD_STATUS)0x00010000)
     100#define USBD_STATUS_CANCELING                        ((USBD_STATUS)0x00020000)
    96101#define USBD_STATUS_CRC                              ((USBD_STATUS)0xC0000001)
    97102#define USBD_STATUS_BTSTUFF                          ((USBD_STATUS)0xC0000002)
     
    113118#define USBD_STATUS_DATA_BUFFER_ERROR                ((USBD_STATUS)0xC0000013)
    114119#define USBD_STATUS_ENDPOINT_HALTED                  ((USBD_STATUS)0xC0000030)
     120#define USBD_STATUS_NO_MEMORY                        ((USBD_STATUS)0x80000100)
    115121#define USBD_STATUS_INVALID_URB_FUNCTION             ((USBD_STATUS)0x80000200)
    116122#define USBD_STATUS_INVALID_PARAMETER                ((USBD_STATUS)0x80000300)
    117123#define USBD_STATUS_ERROR_BUSY                       ((USBD_STATUS)0x80000400)
     124#define USBD_STATUS_REQUEST_FAILED                   ((USBD_STATUS)0x80000500)
    118125#define USBD_STATUS_INVALID_PIPE_HANDLE              ((USBD_STATUS)0x80000600)
    119126#define USBD_STATUS_NO_BANDWIDTH                     ((USBD_STATUS)0x80000700)
     
    134141#define USBD_STATUS_DEVICE_GONE                      ((USBD_STATUS)0xC0007000)
    135142#define USBD_STATUS_STATUS_NOT_MAPPED                ((USBD_STATUS)0xC0008000)
    136 #define USBD_STATUS_CANCELED                         ((USBD_STATUS)0xC0010000)
    137143#define USBD_STATUS_ISO_NOT_ACCESSED_BY_HW           ((USBD_STATUS)0xC0020000)
    138144#define USBD_STATUS_ISO_TD_ERROR                     ((USBD_STATUS)0xC0030000)
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/ddk/usb100.h

    r16477 r28475  
    5858typedef struct _USB_DEVICE_DESCRIPTOR *PUSB_DEVICE_DESCRIPTOR;
    5959
     60#define USB_ENDPOINT_TYPE_MASK            0x03
     61#define USB_ENDPOINT_TYPE_CONTROL         0x00
     62#define USB_ENDPOINT_TYPE_ISOCHRONOUS     0x01
     63#define USB_ENDPOINT_TYPE_BULK            0x02
     64#define USB_ENDPOINT_TYPE_INTERRUPT       0x03
     65
    6066typedef struct _USB_ENDPOINT_DESCRIPTOR {
    6167    UCHAR bLength;
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/ddk/usbdlib.h

    r16477 r28475  
    3535typedef struct _USBD_INTERFACE_LIST_ENTRY *PUSBD_INTERFACE_LIST_ENTRY;
    3636
     37PURB WINAPI USBD_CreateConfigurationRequest(PUSB_CONFIGURATION_DESCRIPTOR,PUSHORT);
     38PURB WINAPI USBD_CreateConfigurationRequestEx(PUSB_CONFIGURATION_DESCRIPTOR,PUSBD_INTERFACE_LIST_ENTRY);
     39ULONG WINAPI USBD_GetInterfaceLength(PUSB_INTERFACE_DESCRIPTOR,PUCHAR);
     40VOID WINAPI USBD_GetUSBDIVersion(PUSBD_VERSION_INFORMATION);
     41PUSB_COMMON_DESCRIPTOR WINAPI USBD_ParseDescriptors(PVOID,ULONG,PVOID,LONG);
     42PUSB_INTERFACE_DESCRIPTOR WINAPI USBD_ParseConfigurationDescriptorEx(PUSB_CONFIGURATION_DESCRIPTOR,PVOID,LONG,LONG,LONG,LONG,LONG);
     43
    3744#endif
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/ddk/wdm.h

    r25949 r28475  
    433433          PVOID  DriverContext[4];
    434434        } DUMMYSTRUCTNAME;
    435       } DUMMYUNIONNAME;
     435      } DUMMYUNIONNAME1;
    436436      PETHREAD  Thread;
    437437      PCHAR  AuxiliaryBuffer;
     
    441441          struct _IO_STACK_LOCATION  *CurrentStackLocation;
    442442          ULONG  PacketType;
    443         } DUMMYUNIONNAME;
     443        } DUMMYUNIONNAME2;
    444444      } DUMMYSTRUCTNAME;
    445445      struct _FILE_OBJECT  *OriginalFileObject;
     
    698698  BusQueryDeviceSerialNumber
    699699} BUS_QUERY_ID_TYPE, *PBUS_QUERY_ID_TYPE;
     700
     701typedef enum {
     702  DevicePropertyDeviceDescription,
     703  DevicePropertyHardwareID,
     704  DevicePropertyCompatibleIDs,
     705  DevicePropertyBootConfiguration,
     706  DevicePropertyBootConfigurationTranslated,
     707  DevicePropertyClassName,
     708  DevicePropertyClassGuid,
     709  DevicePropertyDriverKeyName,
     710  DevicePropertyManufacturer,
     711  DevicePropertyFriendlyName,
     712  DevicePropertyLocationInformation,
     713  DevicePropertyPhysicalDeviceObjectName,
     714  DevicePropertyBusTypeGuid,
     715  DevicePropertyLegacyBusType,
     716  DevicePropertyBusNumber,
     717  DevicePropertyEnumeratorName,
     718  DevicePropertyAddress,
     719  DevicePropertyUINumber,
     720  DevicePropertyInstallState,
     721  DevicePropertyRemovalPolicy
     722} DEVICE_REGISTRY_PROPERTY;
    700723
    701724typedef enum _DEVICE_TEXT_TYPE {
     
    10311054NTSTATUS WINAPI ObCloseHandle(IN HANDLE handle);
    10321055
    1033 #define IoGetCurrentIrpStackLocation(_Irp) ((_Irp)->Tail.Overlay.CurrentStackLocation)
     1056#ifdef NONAMELESSUNION
     1057# ifdef NONAMELESSSTRUCT
     1058#  define IoGetCurrentIrpStackLocation(_Irp) ((_Irp)->Tail.Overlay.s.u2.CurrentStackLocation)
     1059#  define IoGetNextIrpStackLocation(_Irp) ((_Irp)->Tail.Overlay.s.u2.CurrentStackLocation - 1)
     1060# else
     1061#  define IoGetCurrentIrpStackLocation(_Irp) ((_Irp)->Tail.Overlay.u2.CurrentStackLocation)
     1062#  define IoGetNextIrpStackLocation(_Irp) ((_Irp)->Tail.Overlay.u2.CurrentStackLocation - 1)
     1063# endif
     1064#else
     1065# ifdef NONAMELESSSTRUCT
     1066#  define IoGetCurrentIrpStackLocation(_Irp) ((_Irp)->Tail.Overlay.s.CurrentStackLocation)
     1067#  define IoGetNextIrpStackLocation(_Irp) ((_Irp)->Tail.Overlay.s.CurrentStackLocation - 1)
     1068# else
     1069#  define IoGetCurrentIrpStackLocation(_Irp) ((_Irp)->Tail.Overlay.CurrentStackLocation)
     1070#  define IoGetNextIrpStackLocation(_Irp) ((_Irp)->Tail.Overlay.CurrentStackLocation - 1)
     1071# endif
     1072#endif
    10341073
    10351074#define KernelMode 0
     
    10571096PVOID     WINAPI IoAllocateErrorLogEntry(PVOID,UCHAR);
    10581097PIRP      WINAPI IoAllocateIrp(CCHAR,BOOLEAN);
     1098NTSTATUS  WINAPI IoCallDriver(DEVICE_OBJECT*,IRP*);
     1099VOID      WINAPI IoCompleteRequest(IRP*,UCHAR);
    10591100NTSTATUS  WINAPI IoCreateDevice(DRIVER_OBJECT*,ULONG,UNICODE_STRING*,DEVICE_TYPE,ULONG,BOOLEAN,DEVICE_OBJECT**);
    10601101NTSTATUS  WINAPI IoCreateDriver(UNICODE_STRING*,PDRIVER_INITIALIZE);
     
    10661107PEPROCESS WINAPI IoGetCurrentProcess(void);
    10671108NTSTATUS  WINAPI IoGetDeviceObjectPointer(UNICODE_STRING*,ACCESS_MASK,PFILE_OBJECT*,PDEVICE_OBJECT*);
     1109NTSTATUS  WINAPI IoGetDeviceProperty(PDEVICE_OBJECT,DEVICE_REGISTRY_PROPERTY,ULONG,PVOID,PULONG);
    10681110PVOID     WINAPI IoGetDriverObjectExtension(PDRIVER_OBJECT,PVOID);
    10691111PDEVICE_OBJECT WINAPI IoGetRelatedDeviceObject(PFILE_OBJECT);
     
    10751117ULONG     WINAPI KeQueryTimeIncrement(void);
    10761118LONG      WINAPI KeReleaseSemaphore(PRKSEMAPHORE,KPRIORITY,LONG,BOOLEAN);
     1119LONG      WINAPI KeResetEvent(PRKEVENT);
     1120LONG      WINAPI KeSetEvent(PRKEVENT,KPRIORITY,BOOLEAN);
    10771121KPRIORITY WINAPI KeSetPriorityThread(PKTHREAD,KPRIORITY);
    10781122
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/dispex.idl

    r23571 r28475  
    9191    [local]
    9292    HRESULT InvokeEx(
    93             [in] DISPID id,
    94             [in] LCID lcid,
    95             [in] WORD wFlags,
    96             [in] DISPPARAMS *pdp,
    97             [out] VARIANT *pvarRes,
    98             [out] EXCEPINFO *pei,
    99             [in, unique] IServiceProvider *pspCaller);
     93            [in, annotation("__in")] DISPID id,
     94            [in, annotation("__in")] LCID lcid,
     95            [in, annotation("__in")] WORD wFlags,
     96            [in, annotation("__in")] DISPPARAMS *pdp,
     97            [out, annotation("__out_opt")] VARIANT *pvarRes,
     98            [out, annotation("__out_opt")] EXCEPINFO *pei,
     99            [in, unique, annotation("__in_opt")] IServiceProvider *pspCaller);
    100100
    101101    [call_as(InvokeEx)]
     
    201201            [in] VARIANT *pvar);
    202202}
     203
     204[
     205    object,
     206    uuid(10e2414a-ec59-49d2-bc51-5add2c36febc),
     207    pointer_default(unique)
     208]
     209interface IProvideRuntimeContext : IUnknown
     210{
     211    HRESULT GetCurrentSourceContext(
     212            [out] DWORD_PTR *pdwContext,
     213            [out] VARIANT_BOOL *pfExecutingGlobalCode);
     214}
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/dls1.h

    r21731 r28475  
    2626 * of the LGPL is applied is otherwise unspecified.
    2727 */
    28  
     28
    2929#ifndef __WINE_INCLUDE_DLS1_H
    3030#define __WINE_INCLUDE_DLS1_H
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/dmoreg.h

    r16477 r28475  
    3030
    3131#include "mediaobj.h"
     32
     33#ifdef __cplusplus
     34extern "C" {
     35#endif
    3236
    3337typedef struct _DMO_PARTIAL_MEDIATYPE
     
    7781            0xe88c9ba0,0xc557,0x11d0,0x8a,0x2b,0x00,0xa0,0xc9,0x25,0x5a,0xc1);
    7882
     83#ifdef __cplusplus
     84}
     85#endif
     86
    7987#endif /* __DMOREG_H__ */
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/dsound.h

    r25949 r28475  
    11081108#define IDirectSound3DBuffer_GetVelocity(p,a)              (p)->GetVelocity(a)
    11091109#define IDirectSound3DBuffer_SetAllParameters(p,a,b)       (p)->SetAllParameters(a,b)
    1110 #define IDirectSound3DBuffer_SetConeAngles(p,a,b)          (p)->SetConeAngles(a,b)
     1110#define IDirectSound3DBuffer_SetConeAngles(p,a,b,c)        (p)->SetConeAngles(a,b,c)
    11111111#define IDirectSound3DBuffer_SetConeOrientation(p,a,b,c,d) (p)->SetConeOrientation(a,b,c,d)
    11121112#define IDirectSound3DBuffer_SetConeOutsideVolume(p,a,b)   (p)->SetConeOutsideVolume(a,b)
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/gdipluscolormatrix.h

    r16477 r28475  
    5555{
    5656    Color oldColor;
    57     Color newCOlor;
     57    Color newColor;
    5858};
    5959
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/gdiplusflat.h

    r25949 r28475  
    571571GpStatus WINGDIPAPI GdipSetPathGradientSigmaBlend(GpPathGradient*,REAL,REAL);
    572572GpStatus WINGDIPAPI GdipSetPathGradientSurroundColorsWithCount(GpPathGradient*,
    573     ARGB*,INT*);
     573    GDIPCONST ARGB*,INT*);
    574574GpStatus WINGDIPAPI GdipSetPathGradientWrapMode(GpPathGradient*,GpWrapMode);
     575GpStatus WINGDIPAPI GdipGetPathGradientSurroundColorCount(GpPathGradient*,INT*);
    575576
    576577/* PathIterator */
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/iphlpapi.h

    r16477 r28475  
    2525 * of the LGPL is applied is otherwise unspecified.
    2626 */
     27
    2728#ifndef WINE_IPHLPAPI_H__
    2829#define WINE_IPHLPAPI_H__
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/iprtrmib.h

    r16477 r28475  
    2525 * of the LGPL is applied is otherwise unspecified.
    2626 */
     27
    2728#ifndef WINE_IPRTRMIB_H__
    2829#define WINE_IPRTRMIB_H__
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/ksmedia.h

    r25949 r28475  
    4444#define KSAUDIO_SPEAKER_7POINT1 (KSAUDIO_SPEAKER_5POINT1 | SPEAKER_FRONT_LEFT_OF_CENTER | SPEAKER_FRONT_RIGHT_OF_CENTER)
    4545
     46#ifndef REFERENCE_TIME_DEFINED
     47#define REFERENCE_TIME_DEFINED
    4648typedef LONGLONG REFERENCE_TIME;
     49#endif
    4750
    4851typedef enum
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/lmmsg.h

    r16477 r28475  
    2525 * of the LGPL is applied is otherwise unspecified.
    2626 */
     27
    2728#ifndef _LMMSG_
    2829#define _LMMSG_
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/lmserver.h

    r16477 r28475  
    2525 * of the LGPL is applied is otherwise unspecified.
    2626 */
     27
    2728#ifndef _LMSERVER_
    2829#define _LMSERVER_
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/lmshare.h

    r16477 r28475  
    2525 * of the LGPL is applied is otherwise unspecified.
    2626 */
     27
    2728#ifndef _LMSHARE_H
    2829#define _LMSHARE_H
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/lmuse.h

    r16477 r28475  
    2525 * of the LGPL is applied is otherwise unspecified.
    2626 */
     27
    2728#ifndef _LMUSE_H
    2829#define _LMUSE_H
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/mapitags.h

    r25949 r28475  
    2727 * of the LGPL is applied is otherwise unspecified.
    2828 */
     29
    2930#ifndef MAPITAGS_H
    3031#define MAPITAGS_H
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/mlang.idl

    r19678 r28475  
    678678        [in] UINT uiCodePage,
    679679        [in] LCID lcid,
    680         [in,out] LPWSTR lpWideCharStr,
     680        [in,out,size_is(cchWideChar)] LPWSTR lpWideCharStr,
    681681        [in] int cchWideChar);
    682682
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/mmddk.h

    r19678 r28475  
    386386#define MCI_CONSTANT            8
    387387#define MCI_END_CONSTANT        9
     388#define MCI_HWND                10
     389#define MCI_HPAL                11
     390#define MCI_HDC                 12
    388391
    389392#define MAKEMCIRESOURCE(wRet, wRes) MAKELRESULT((wRet), (wRes))
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/mmsystem.h

    r25949 r28475  
    667667#define MOD_FMSYNTH     4  /* FM internal synth */
    668668#define MOD_MAPPER      5  /* MIDI mapper */
     669#define MOD_WAVETABLE   6  /* hardware watetable internal synth */
     670#define MOD_SWSYNTH     7  /* software synth */
    669671
    670672#define MIDICAPS_VOLUME         0x0001  /* supports volume control */
     
    728730    struct midihdr_tag *lpNext;
    729731    DWORD_PTR   reserved;
     732    /* Win 32 extended the structure with these 2 fields */
    730733    DWORD       dwOffset;
    731734    DWORD_PTR   dwReserved[8];
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/msctf.idl

    r23571 r28475  
    3030import "comcat.idl";
    3131import "textstor.idl";
    32 /* import "ctfutb.idl"; */
     32import "ctfutb.idl";
    3333#endif
    3434cpp_quote("#include <winuser.h>")
     
    4242cpp_quote("HRESULT WINAPI TF_GetThreadMgr(ITfThreadMgr **pptim);")
    4343cpp_quote("HRESULT WINAPI TF_CreateInputProcessorProfiles(ITfInputProcessorProfiles **ppipr);")
     44cpp_quote("HRESULT WINAPI TF_CreateLangBarMgr(ITfLangBarMgr **pppbm);")
    4445
    4546cpp_quote("EXTERN_C const GUID GUID_PROP_TEXTOWNER;")
     
    5152cpp_quote("EXTERN_C const CLSID CLSID_TF_ThreadMgr;")
    5253cpp_quote("EXTERN_C const CLSID CLSID_TF_InputProcessorProfiles;")
     54cpp_quote("EXTERN_C const CLSID CLSID_TF_LangBarMgr;")
    5355cpp_quote("EXTERN_C const CLSID CLSID_TF_CategoryMgr;")
    54 cpp_quote("DEFINE_GUID(CLSID_TF_DisplayAttributeMgr,0x3ce74de4,0x53d3,0x4d74,0x8b,0x83,0x43,0x1b,0x38,0x28,0xba,0x53);")
     56cpp_quote("EXTERN_C const CLSID CLSID_TF_DisplayAttributeMgr;")
    5557
    5658/* GUIDs for Compartments */
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/mshtmdid.h

    r25949 r28475  
    135135#define DISPID_IE8_ELEMENTMAX   (DISPID_SITE-1)
    136136#define DISPID_IE8_ELEMENT      DISPID_IE8_ELEMENTBASE
     137
     138#define DISPID_IE8_FRAMESITEBASE  (DISPID_FRAMESITE+1120)
     139#define DISPID_IE8_FRAMEMAX       (WEBOC_DISPIDBASE-1)
     140#define DISPID_IE8_FRAME          DISPID_IE8_FRAMESITEBASE
     141#define DISPID_IE8_IFRAME         DISPID_IE8_FRAMESITEBASE
    137142
    138143#define DISPID_COLLECTION      (DISPID_NORMAL_FIRST+500)
     
    24972502#define DISPID_IHTMLSCRIPTELEMENT2_CHARSET  DISPID_SCRIPT+10
    24982503
     2504/* IHTMLScriptElement3 */
     2505#define DISPID_IHTMLSCRIPTELEMENT3_IE8_SRC  DISPID_IE8_SCRIPT
     2506
    24992507/* IHTMLFrameBase */
    25002508#define DISPID_IHTMLFRAMEBASE_SRC           DISPID_FRAMESITE+0
     
    25172525/* IHTMLFrameBase3 */
    25182526#define DISPID_IHTMLFRAMEBASE3_LONGDESC  DISPID_FRAMESITE+10
     2527
     2528/* IHTMLFrameElement */
     2529#define DISPID_IHTMLFRAMEELEMENT_BORDERCOLOR  DISPID_FRAME+1
     2530
     2531/* IHTMLFrameElement2 */
     2532#define DISPID_IHTMLFRAMEELEMENT2_HEIGHT  STDPROPID_XOBJ_HEIGHT
     2533#define DISPID_IHTMLFRAMEELEMENT2_WIDTH   STDPROPID_XOBJ_WIDTH
     2534
     2535/* IHTMLFrameElement3 */
     2536#define DISPID_IHTMLFRAMEELEMENT3_CONTENTDOCUMENT  DISPID_IE8_FRAME
     2537#define DISPID_IHTMLFRAMEELEMENT3_IE8_SRC          DISPID_IE8_FRAME+1
     2538#define DISPID_IHTMLFRAMEELEMENT3_IE8_LONGDESC     DISPID_IE8_FRAME+2
     2539#define DISPID_IHTMLFRAMEELEMENT3_IE8_FRAMEBORDER  DISPID_IE8_FRAME+3
    25192540
    25202541/* IHTMLIFrameElement */
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/mshtml.idl

    r25949 r28475  
    11/*
    2  * Copyright 2004-2007 Jacek Caban for CodeWeavers
     2 * Copyright 2004-2010 Jacek Caban for CodeWeavers
    33 * Copyright 2008      Konstantin Kondratyuk (Etersoft)
    44 *
     
    28862886    [propget, id(DISPID_IHTMLCURRENTSTYLE4_MAXWIDTH), displaybind, bindable]
    28872887    HRESULT maxWidth([retval, out] VARIANT * p);
    2888 };
     2888}
    28892889
    28902890/*****************************************************************************
     
    59135913                        interface IHTMLStyleSheetPage;
    59145914                        interface IHTMLDOMConstructor;
    5915 };
     5915}
    59165916
    59175917[
     
    67126712    [id(DISPID_HTMLFORMELEMENTEVENTS_ONRESET)]
    67136713    VARIANT_BOOL onreset();
    6714 };
     6714}
    67156715
    67166716interface IHTMLEventObj;
     
    69156915    [id(DISPID_HTMLFORMELEMENTEVENTS2_ONRESET)]
    69166916    VARIANT_BOOL onreset([in] IHTMLEventObj* pEvtObj);
    6917 };
     6917}
    69186918
    69196919[
     
    73757375    [propget, id(DISPID_IHTMLCONTROLELEMENT_CLIENTLEFT), displaybind, bindable]
    73767376    HRESULT clientLeft([retval, out] LONG * p);
    7377 };
     7377}
    73787378
    73797379/*****************************************************************************
     
    76447644    [propget, id(DISPID_IHTMLBODYELEMENT2_ONAFTERPRINT), displaybind, bindable]
    76457645    VARIANT onafterprint();
    7646 };
     7646}
    76477647
    76487648[
     
    76657665                        interface IHTMLBodyElement;
    76667666                        interface IHTMLBodyElement2;
    7667 };
     7667}
    76687668
    76697669/*****************************************************************************
     
    89818981
    89828982/*****************************************************************************
     8983 *    DispHTMLTextAreaElement dispinterface
     8984 */
     8985[
     8986    hidden,
     8987    uuid(3050f521-98b5-11cf-bb82-00aa00bdce0b)
     8988]
     8989dispinterface DispHTMLTextAreaElement
     8990{
     8991properties:
     8992methods:
     8993    WINE_HTMLDATAELEMENT_DISPINTERFACE_DECL;
     8994
     8995    [propget, id(DISPID_IHTMLTEXTAREAELEMENT_TYPE)]
     8996    BSTR type();
     8997
     8998    [propput, id(DISPID_IHTMLTEXTAREAELEMENT_VALUE), displaybind, bindable]
     8999    void value(BSTR v);
     9000
     9001    [propget, id(DISPID_IHTMLTEXTAREAELEMENT_VALUE), displaybind, bindable]
     9002    BSTR value();
     9003
     9004    [propput, id(DISPID_IHTMLTEXTAREAELEMENT_NAME), displaybind, bindable]
     9005    void name(BSTR v);
     9006
     9007    [propget, id(DISPID_IHTMLTEXTAREAELEMENT_NAME), displaybind, bindable]
     9008    BSTR name();
     9009
     9010    [propput, id(DISPID_IHTMLTEXTAREAELEMENT_STATUS)]
     9011    void status(VARIANT v);
     9012
     9013    [propget, id(DISPID_IHTMLTEXTAREAELEMENT_STATUS)]
     9014    VARIANT status();
     9015
     9016    [propget, id(DISPID_IHTMLTEXTAREAELEMENT_FORM)]
     9017    IHTMLFormElement *form();
     9018
     9019    [propput, id(DISPID_IHTMLTEXTAREAELEMENT_DEFAULTVALUE), displaybind, bindable, hidden]
     9020    void defaultValue(BSTR v);
     9021
     9022    [propget, id(DISPID_IHTMLTEXTAREAELEMENT_DEFAULTVALUE), displaybind, bindable, hidden]
     9023    BSTR defaultValue();
     9024
     9025    [id(DISPID_IHTMLTEXTAREAELEMENT_SELECT)]
     9026    void select();
     9027
     9028    [propput, id(DISPID_IHTMLTEXTAREAELEMENT_ONCHANGE), displaybind, bindable]
     9029    void onchange(VARIANT v);
     9030
     9031    [propget, id(DISPID_IHTMLTEXTAREAELEMENT_ONCHANGE), displaybind, bindable]
     9032    VARIANT onchange();
     9033
     9034    [propput, id(DISPID_IHTMLTEXTAREAELEMENT_ONSELECT), displaybind, bindable]
     9035    void onselect(VARIANT v);
     9036
     9037    [propget, id(DISPID_IHTMLTEXTAREAELEMENT_ONSELECT), displaybind, bindable]
     9038    VARIANT onselect();
     9039
     9040    [propput, id(DISPID_IHTMLTEXTAREAELEMENT_READONLY), displaybind, bindable]
     9041    void readOnly(VARIANT_BOOL v);
     9042
     9043    [propget, id(DISPID_IHTMLTEXTAREAELEMENT_READONLY), displaybind, bindable]
     9044    VARIANT_BOOL readOnly();
     9045
     9046    [propput, id(DISPID_IHTMLTEXTAREAELEMENT_ROWS), displaybind, bindable]
     9047    void rows(LONG v);
     9048
     9049    [propget, id(DISPID_IHTMLTEXTAREAELEMENT_ROWS), displaybind, bindable]
     9050    LONG rows();
     9051
     9052    [propput, id(DISPID_IHTMLTEXTAREAELEMENT_COLS), displaybind, bindable]
     9053    void cols(LONG v);
     9054
     9055    [propget, id(DISPID_IHTMLTEXTAREAELEMENT_COLS), displaybind, bindable]
     9056    LONG cols();
     9057
     9058    [propput, id(DISPID_IHTMLTEXTAREAELEMENT_WRAP), displaybind, bindable]
     9059    void wrap(BSTR v);
     9060
     9061    [propget, id(DISPID_IHTMLTEXTAREAELEMENT_WRAP), displaybind, bindable]
     9062    BSTR wrap();
     9063
     9064    [id(DISPID_IHTMLTEXTAREAELEMENT_CREATETEXTRANGE)]
     9065    IHTMLTxtRange *createTextRange();
     9066}
     9067
     9068/*****************************************************************************
    89839069 *    DispHTMLUnknownElement interface
    89849070 */
     
    1025510341    [propget, id(DISPID_IHTMLWINDOW4_FRAMEELEMENT)]
    1025610342    HRESULT frameElement([retval, out] IHTMLFrameBase* * p);
    10257 };
     10343}
    1025810344
    1025910345/*****************************************************************************
     
    1027310359    [propget, id(DISPID_IHTMLWINDOW5_XMLHTTPREQUEST)]
    1027410360    HRESULT XMLHttpRequest([retval, out] VARIANT * p);
    10275 };
     10361}
    1027610362
    1027710363/*****************************************************************************
     
    1091210998    [propget, id(DISPID_IHTMLWINDOW5_XMLHTTPREQUEST)]
    1091310999    VARIANT XMLHttpRequest();
    10914 };
     11000}
    1091511001
    1091611002/*****************************************************************************
     
    1095911045    [id(DISPID_HTMLWINDOWEVENTS_ONAFTERPRINT)]
    1096011046    void onafterprint();
    10961 };
     11047}
    1096211048
    1096311049/*****************************************************************************
     
    1100611092    [id(DISPID_HTMLWINDOWEVENTS2_ONAFTERPRINT)]
    1100711093    void onafterprint([in] IHTMLEventObj* pEvtObj);
    11008 };
     11094}
    1100911095
    1101011096/*****************************************************************************
     
    1102311109                        interface IHTMLWindow4;
    1102411110                        interface IHTMLWindow5;
    11025 };
     11111}
    1102611112
    1102711113/*****************************************************************************
     
    1148311569    [id(DISPID_HTMLTEXTCONTAINEREVENTS_ONSELECT)]
    1148411570    void onselect();
    11485 };
     11571}
    1148611572
    1148711573/*****************************************************************************
     
    1168711773    [id(DISPID_HTMLTEXTCONTAINEREVENTS2_ONSELECT)]
    1168811774    void onselect([in] IHTMLEventObj* pEvtObj);
    11689 };
     11775}
    1169011776
    1169111777/*****************************************************************************
     
    1333913425    [id(DISPID_HTMLELEMENTEVENTS2_ONMOUSEWHEEL)]
    1334013426    VARIANT_BOOL onmousewheel([in] IHTMLEventObj* pEvtObj);
    13341 };
     13427}
     13428
    1334213429[
    1334313430    hidden,
     
    1353613623    [id(DISPID_HTMLELEMENTEVENTS_ONFOCUSOUT)]
    1353713624    void onfocusout();
    13538 
    13539 };
     13625}
    1354013626
    1354113627[
     
    1395314039    [id(DISPID_HTMLELEMENTEVENTS2_ONMOUSEWHEEL)]
    1395414040    VARIANT_BOOL onmousewheel([in] IHTMLEventObj* pEvtObj);
    13955 };
     14041}
    1395614042
    1395714043/*****************************************************************************
     
    1416314249        [defaultvalue(-1), in] LONG indexTo,
    1416414250        [retval, out] IDispatch** row);
    14165 };
     14251}
    1416614252
    1416714253[
     
    1417814264    [propget, id(DISPID_IHTMLTABLE3_SUMMARY), displaybind, bindable]
    1417914265    HRESULT summary([retval, out] BSTR * p);
    14180 };
     14266}
    1418114267
    1418214268[
     
    1420114287                        interface IHTMLTable2;
    1420214288                        interface IHTMLTable3;
    14203 };
     14289}
    1420414290
    1420514291[
     
    1463714723
    1463814724/*****************************************************************************
     14725 *    DispHTMLScriptElement dispinterface
     14726 */
     14727[
     14728    hidden,
     14729    uuid(3050f530-98b5-11cf-bb82-00aa00bdce0b)
     14730]
     14731dispinterface DispHTMLScriptElement
     14732{
     14733properties:
     14734methods:
     14735    WINE_HTMLELEMENT_DISPINTERFACE_DECL;
     14736
     14737    [propput, id(DISPID_IHTMLSCRIPTELEMENT_SRC), displaybind, bindable]
     14738    void src(BSTR v);
     14739
     14740    [propget, id(DISPID_IHTMLSCRIPTELEMENT_SRC), displaybind, bindable]
     14741    BSTR src();
     14742
     14743    [propput, id(DISPID_IHTMLSCRIPTELEMENT_HTMLFOR), displaybind, bindable]
     14744    void htmlFor(BSTR v);
     14745
     14746    [propget, id(DISPID_IHTMLSCRIPTELEMENT_HTMLFOR), displaybind, bindable]
     14747    BSTR htmlFor();
     14748
     14749    [propput, id(DISPID_IHTMLSCRIPTELEMENT_EVENT), displaybind, bindable]
     14750    void event(BSTR v);
     14751
     14752    [propget, id(DISPID_IHTMLSCRIPTELEMENT_EVENT), displaybind, bindable]
     14753    BSTR event();
     14754
     14755    [propput, id(DISPID_IHTMLSCRIPTELEMENT_TEXT), displaybind, bindable]
     14756    void text(BSTR v);
     14757
     14758    [propget, id(DISPID_IHTMLSCRIPTELEMENT_TEXT), displaybind, bindable]
     14759    BSTR text();
     14760
     14761    [propput, id(DISPID_IHTMLSCRIPTELEMENT_DEFER), displaybind, bindable]
     14762    void defer(VARIANT_BOOL v);
     14763
     14764    [propget, id(DISPID_IHTMLSCRIPTELEMENT_DEFER), displaybind, bindable]
     14765    VARIANT_BOOL defer();
     14766
     14767    [propput, id(DISPID_IHTMLSCRIPTELEMENT_ONERROR), displaybind, bindable]
     14768    void onerror(VARIANT v);
     14769
     14770    [propget, id(DISPID_IHTMLSCRIPTELEMENT_ONERROR), displaybind, bindable]
     14771    VARIANT onerror();
     14772
     14773    [propput, id(DISPID_IHTMLSCRIPTELEMENT_TYPE), displaybind, bindable]
     14774    void type(BSTR v);
     14775
     14776    [propget, id(DISPID_IHTMLSCRIPTELEMENT_TYPE), displaybind, bindable]
     14777    BSTR type();
     14778
     14779    [propput, id(DISPID_IHTMLSCRIPTELEMENT2_CHARSET), displaybind, bindable]
     14780    void charset(BSTR v);
     14781
     14782    [propget, id(DISPID_IHTMLSCRIPTELEMENT2_CHARSET), displaybind, bindable]
     14783    BSTR charset();
     14784
     14785    [propput, id(DISPID_IHTMLSCRIPTELEMENT3_IE8_SRC)]
     14786    void ie8_src(BSTR v);
     14787
     14788    [propget, id(DISPID_IHTMLSCRIPTELEMENT3_IE8_SRC)]
     14789    BSTR ie8_src();
     14790}
     14791
     14792/*****************************************************************************
    1463914793 *    IHTMLFrameBase interface
    1464014794 */
     
    1470214856}
    1470314857
     14858#define WINE_IHTMLFRAMEBASE_DISPINTERFACE_DECL          \
     14859    [propput, id(DISPID_IHTMLFRAMEBASE_SRC)]            \
     14860    void src(BSTR v);                                   \
     14861                                                        \
     14862    [propget, id(DISPID_IHTMLFRAMEBASE_SRC)]            \
     14863    BSTR src();                                         \
     14864                                                        \
     14865    [propput, id(DISPID_IHTMLFRAMEBASE_NAME)]           \
     14866    void name(BSTR v);                                  \
     14867                                                        \
     14868    [propget, id(DISPID_IHTMLFRAMEBASE_NAME)]           \
     14869    BSTR name();                                        \
     14870                                                        \
     14871    [propput, id(DISPID_IHTMLFRAMEBASE_BORDER)]         \
     14872    void border(VARIANT v);                             \
     14873                                                        \
     14874    [propget, id(DISPID_IHTMLFRAMEBASE_BORDER)]         \
     14875    VARIANT border();                                   \
     14876                                                        \
     14877    [propput, id(DISPID_IHTMLFRAMEBASE_FRAMEBORDER)]    \
     14878    void frameBorder(BSTR v);                           \
     14879                                                        \
     14880    [propget, id(DISPID_IHTMLFRAMEBASE_FRAMEBORDER)]    \
     14881    BSTR frameBorder();                                 \
     14882                                                        \
     14883    [propput, id(DISPID_IHTMLFRAMEBASE_FRAMESPACING)]   \
     14884    void frameSpacing(VARIANT v);                       \
     14885                                                        \
     14886    [propget, id(DISPID_IHTMLFRAMEBASE_FRAMESPACING)]   \
     14887    VARIANT frameSpacing();                             \
     14888                                                        \
     14889    [propput, id(DISPID_IHTMLFRAMEBASE_MARGINWIDTH)]    \
     14890    void marginWidth(VARIANT v);                        \
     14891                                                        \
     14892    [propget, id(DISPID_IHTMLFRAMEBASE_MARGINWIDTH)]    \
     14893    VARIANT marginWidth();                              \
     14894                                                        \
     14895    [propput, id(DISPID_IHTMLFRAMEBASE_MARGINHEIGHT)]   \
     14896    void marginHeight(VARIANT v);                       \
     14897                                                        \
     14898    [propget, id(DISPID_IHTMLFRAMEBASE_MARGINHEIGHT)]   \
     14899    VARIANT marginHeight();                             \
     14900                                                        \
     14901    [propput, id(DISPID_IHTMLFRAMEBASE_NORESIZE)]       \
     14902    void noResize(VARIANT_BOOL v);                      \
     14903                                                        \
     14904    [propget, id(DISPID_IHTMLFRAMEBASE_NORESIZE)]       \
     14905    VARIANT_BOOL noResize();                            \
     14906                                                        \
     14907    [propput, id(DISPID_IHTMLFRAMEBASE_SCROLLING)]      \
     14908    void scrolling(BSTR v);                             \
     14909                                                        \
     14910    [propget, id(DISPID_IHTMLFRAMEBASE_SCROLLING)]      \
     14911    BSTR scrolling()
     14912
    1470414913/*****************************************************************************
    1470514914 *    IHTMLFrameBase2 interface
     
    1473814947}
    1473914948
     14949#define WINE_IHTMLFRAMEBASE2_DISPINTERFACE_DECL                         \
     14950    [propget, id(DISPID_IHTMLFRAMEBASE2_CONTENTWINDOW)]                 \
     14951    IHTMLWindow2 *contentWindow();                                      \
     14952                                                                        \
     14953    [propput, id(DISPID_IHTMLFRAMEBASE2_ONLOAD), displaybind, bindable] \
     14954    void onload(VARIANT v);                                             \
     14955                                                                        \
     14956    [propget, id(DISPID_IHTMLFRAMEBASE2_ONLOAD), displaybind, bindable] \
     14957    VARIANT onload();                                                   \
     14958                                                                        \
     14959    [propput, id(DISPID_IHTMLFRAMEBASE2_ALLOWTRANSPARENCY)]             \
     14960    void allowTransparency(VARIANT_BOOL v);                             \
     14961                                                                        \
     14962    [propget, id(DISPID_IHTMLFRAMEBASE2_ALLOWTRANSPARENCY)]             \
     14963    VARIANT_BOOL allowTransparency()
     14964
     14965#define WINE_IHTMLFRAMEBASE3_DISPINTERFACE_DECL                           \
     14966    [propput, id(DISPID_IHTMLFRAMEBASE3_LONGDESC), displaybind, bindable] \
     14967    void longDesc(BSTR v);                                                \
     14968                                                                          \
     14969    [propget, id(DISPID_IHTMLFRAMEBASE3_LONGDESC), displaybind, bindable] \
     14970    BSTR longDesc()
     14971
     14972
     14973#define WINE_HTMLFRAMEBASE_DISPINTERFACE_DECL \
     14974    WINE_HTMLDATAELEMENT_DISPINTERFACE_DECL;  \
     14975    WINE_IHTMLFRAMEBASE_DISPINTERFACE_DECL;   \
     14976    WINE_IHTMLFRAMEBASE2_DISPINTERFACE_DECL;  \
     14977    WINE_IHTMLFRAMEBASE3_DISPINTERFACE_DECL
     14978
     14979/*****************************************************************************
     14980 *    IHTMLFrameElement3 interface
     14981 */
     14982[
     14983    odl,
     14984    oleautomation,
     14985    dual,
     14986    uuid(3051042d-98b5-11cf-bb82-00aa00bdce0b)
     14987]
     14988interface IHTMLFrameElement3 : IDispatch
     14989{
     14990    [propget, id(DISPID_IHTMLFRAMEELEMENT3_CONTENTDOCUMENT)]
     14991    HRESULT contentDocument([out, retval] IDispatch **p);
     14992
     14993    [propput, id(DISPID_IHTMLFRAMEELEMENT3_IE8_SRC)]
     14994    HRESULT src([in] BSTR v);
     14995
     14996    [propget, id(DISPID_IHTMLFRAMEELEMENT3_IE8_SRC)]
     14997    HRESULT src([out, retval] BSTR *p);
     14998
     14999    [propput, id(DISPID_IHTMLFRAMEELEMENT3_IE8_LONGDESC)]
     15000    HRESULT longDesc([in] BSTR v);
     15001
     15002    [propget, id(DISPID_IHTMLFRAMEELEMENT3_IE8_LONGDESC)]
     15003    HRESULT longDesc([out, retval] BSTR *p);
     15004
     15005    [propput, id(DISPID_IHTMLFRAMEELEMENT3_IE8_FRAMEBORDER)]
     15006    HRESULT frameBorder([in] BSTR v);
     15007
     15008    [propget, id(DISPID_IHTMLFRAMEELEMENT3_IE8_FRAMEBORDER)]
     15009    HRESULT frameBorder([out, retval] BSTR * p);
     15010}
     15011
     15012/*****************************************************************************
     15013 *    DispHTMLFrameElement dispinterface
     15014 */
     15015[
     15016    hidden,
     15017    uuid(3050f513-98b5-11cf-bb82-00aa00bdce0b)
     15018]
     15019dispinterface DispHTMLFrameElement
     15020{
     15021properties:
     15022methods:
     15023    WINE_HTMLFRAMEBASE_DISPINTERFACE_DECL;
     15024
     15025    [propput, id(DISPID_IHTMLFRAMEELEMENT_BORDERCOLOR)]
     15026    void borderColor(VARIANT v);
     15027
     15028    [propget, id(DISPID_IHTMLFRAMEELEMENT_BORDERCOLOR)]
     15029    VARIANT borderColor();
     15030
     15031    [propput, id(DISPID_IHTMLFRAMEELEMENT2_HEIGHT)]
     15032    void height(VARIANT v);
     15033
     15034    [propget, id(DISPID_IHTMLFRAMEELEMENT2_HEIGHT)]
     15035    VARIANT height();
     15036
     15037    [propput, id(DISPID_IHTMLFRAMEELEMENT2_WIDTH)]
     15038    void width(VARIANT v);
     15039
     15040    [propget, id(DISPID_IHTMLFRAMEELEMENT2_WIDTH)]
     15041    VARIANT width();
     15042
     15043    [propget, id(DISPID_IHTMLFRAMEELEMENT3_CONTENTDOCUMENT)]
     15044    IDispatch *contentDocument();
     15045
     15046    [propput, id(DISPID_IHTMLFRAMEELEMENT3_IE8_SRC)]
     15047    void ie8_src(BSTR v);
     15048
     15049    [propget, id(DISPID_IHTMLFRAMEELEMENT3_IE8_SRC)]
     15050    BSTR ie8_src();
     15051
     15052    [propput, id(DISPID_IHTMLFRAMEELEMENT3_IE8_LONGDESC)]
     15053    void ie8_longDesc(BSTR v);
     15054
     15055    [propget, id(DISPID_IHTMLFRAMEELEMENT3_IE8_LONGDESC)]
     15056    BSTR ie8_longDesc();
     15057
     15058    [propput, id(DISPID_IHTMLFRAMEELEMENT3_IE8_FRAMEBORDER)]
     15059    void ie8_frameBorder(BSTR v);
     15060
     15061    [propget, id(DISPID_IHTMLFRAMEELEMENT3_IE8_FRAMEBORDER)]
     15062    BSTR ie8_frameBorder();
     15063}
     15064
     15065/*****************************************************************************
     15066 *    IHTMLIFrameElement interface
     15067 */
     15068[
     15069    odl,
     15070    oleautomation,
     15071    dual,
     15072    uuid(3050f315-98b5-11cf-bb82-00aa00bdce0b)
     15073]
     15074interface IHTMLIFrameElement : IDispatch
     15075{
     15076    [propput, id(DISPID_IHTMLIFRAMEELEMENT_VSPACE)]
     15077    HRESULT vspace([in] LONG v);
     15078
     15079    [propget, id(DISPID_IHTMLIFRAMEELEMENT_VSPACE)]
     15080    HRESULT vspace([retval, out] LONG *p);
     15081
     15082    [propput, id(DISPID_IHTMLIFRAMEELEMENT_HSPACE)]
     15083    HRESULT hspace([in] LONG v);
     15084
     15085    [propget, id(DISPID_IHTMLIFRAMEELEMENT_HSPACE)]
     15086    HRESULT hspace([retval, out] LONG *p);
     15087
     15088    [propput, id(DISPID_IHTMLIFRAMEELEMENT_ALIGN), displaybind, bindable]
     15089    HRESULT align([in] BSTR v);
     15090
     15091    [propget, id(DISPID_IHTMLIFRAMEELEMENT_ALIGN), displaybind, bindable]
     15092    HRESULT align([retval, out] BSTR *p);
     15093}
     15094
    1474015095/*****************************************************************************
    1474115096 *    DispHTMLIFrame dispinterface
     
    1474915104properties:
    1475015105methods:
    14751     WINE_HTMLDATAELEMENT_DISPINTERFACE_DECL;
    14752 
    14753     [propput, id(DISPID_IHTMLFRAMEBASE_SRC)]
    14754     void src(BSTR v);
    14755 
    14756     [propget, id(DISPID_IHTMLFRAMEBASE_SRC)]
    14757     BSTR src();
    14758 
    14759     [propput, id(DISPID_IHTMLFRAMEBASE_NAME)]
    14760     void name(BSTR v);
    14761 
    14762     [propget, id(DISPID_IHTMLFRAMEBASE_NAME)]
    14763     BSTR name();
    14764 
    14765     [propput, id(DISPID_IHTMLFRAMEBASE_BORDER)]
    14766     void border(VARIANT v);
    14767 
    14768     [propget, id(DISPID_IHTMLFRAMEBASE_BORDER)]
    14769     VARIANT border();
    14770 
    14771     [propput, id(DISPID_IHTMLFRAMEBASE_FRAMEBORDER)]
    14772     void frameBorder(BSTR v);
    14773 
    14774     [propget, id(DISPID_IHTMLFRAMEBASE_FRAMEBORDER)]
    14775     BSTR frameBorder();
    14776 
    14777     [propput, id(DISPID_IHTMLFRAMEBASE_FRAMESPACING)]
    14778     void frameSpacing(VARIANT v);
    14779 
    14780     [propget, id(DISPID_IHTMLFRAMEBASE_FRAMESPACING)]
    14781     VARIANT frameSpacing();
    14782 
    14783     [propput, id(DISPID_IHTMLFRAMEBASE_MARGINWIDTH)]
    14784     void marginWidth(VARIANT v);
    14785 
    14786     [propget, id(DISPID_IHTMLFRAMEBASE_MARGINWIDTH)]
    14787     VARIANT marginWidth();
    14788 
    14789     [propput, id(DISPID_IHTMLFRAMEBASE_MARGINHEIGHT)]
    14790     void marginHeight(VARIANT v);
    14791 
    14792     [propget, id(DISPID_IHTMLFRAMEBASE_MARGINHEIGHT)]
    14793     VARIANT marginHeight();
    14794 
    14795     [propput, id(DISPID_IHTMLFRAMEBASE_NORESIZE)]
    14796     void noResize(VARIANT_BOOL v);
    14797 
    14798     [propget, id(DISPID_IHTMLFRAMEBASE_NORESIZE)]
    14799     VARIANT_BOOL noResize();
    14800 
    14801     [propput, id(DISPID_IHTMLFRAMEBASE_SCROLLING)]
    14802     void scrolling(BSTR v);
    14803 
    14804     [propget, id(DISPID_IHTMLFRAMEBASE_SCROLLING)]
    14805     BSTR scrolling();
    14806 
    14807     [propget, id(DISPID_IHTMLFRAMEBASE2_CONTENTWINDOW)]
    14808     IHTMLWindow2 *contentWindow();
    14809 
    14810     [propput, id(DISPID_IHTMLFRAMEBASE2_ONLOAD), displaybind, bindable]
    14811     void onload(VARIANT v);
    14812 
    14813     [propget, id(DISPID_IHTMLFRAMEBASE2_ONLOAD), displaybind, bindable]
    14814     VARIANT onload();
    14815 
    14816     [propput, id(DISPID_IHTMLFRAMEBASE2_ALLOWTRANSPARENCY)]
    14817     void allowTransparency(VARIANT_BOOL v);
    14818 
    14819     [propget, id(DISPID_IHTMLFRAMEBASE2_ALLOWTRANSPARENCY)]
    14820     VARIANT_BOOL allowTransparency();
    14821 
    14822     [propput, id(DISPID_IHTMLFRAMEBASE3_LONGDESC), displaybind, bindable]
    14823     void longDesc(BSTR v);
    14824 
    14825     [propget, id(DISPID_IHTMLFRAMEBASE3_LONGDESC), displaybind, bindable]
    14826     BSTR longDesc();
     15106    WINE_HTMLFRAMEBASE_DISPINTERFACE_DECL;
    1482715107
    1482815108    [propput, id(DISPID_IHTMLIFRAMEELEMENT_VSPACE)]
     
    1513715417
    1513815418} /* library MSHTML */
     15419
     15420interface IOleCommandTarget;
     15421
     15422/*****************************************************************************
     15423 *    IHTMLPrivateWindow interface
     15424 */
     15425[
     15426    object,
     15427    uuid(3050f6dc-98b5-11cf-bb82-00aa00bdce0b),
     15428    local
     15429]
     15430interface IHTMLPrivateWindow : IUnknown
     15431{
     15432    HRESULT SuperNavigate(BSTR url, BSTR arg2, BSTR arg3, BSTR arg4, VARIANT *post_data, VARIANT *headers, ULONG flags);
     15433    HRESULT GetPendingUrl(BSTR *url);
     15434    HRESULT SetPICSTarget(IOleCommandTarget *cmdtrg);
     15435    HRESULT PICSComplete(int arg);
     15436    HRESULT FindWindowByName(LPCWSTR name, IHTMLWindow2 **ret);
     15437    HRESULT GetAddressBarUrl(BSTR *url);
     15438}
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/msi.h

    r23571 r28475  
    513513#define     MsiGetPatchInfoEx WINELIB_NAME_AW(MsiGetPatchInfoEx)
    514514
     515UINT WINAPI MsiGetPatchInfoA(LPCSTR, LPCSTR, LPSTR, LPDWORD);
     516UINT WINAPI MsiGetPatchInfoW(LPCWSTR, LPCWSTR, LPWSTR, LPDWORD);
     517#define     MsiGetPatchInfo WINELIB_NAME_AW(MsiGetPatchInfo)
     518
    515519UINT WINAPI MsiEnableLogA(DWORD, LPCSTR, DWORD);
    516520UINT WINAPI MsiEnableLogW(DWORD, LPCWSTR, DWORD);
     
    607611#define     MsiSourceListEnumSources WINELIB_NAME_AW(MsiSourceListEnumSources)
    608612
     613UINT WINAPI MsiSourceListClearSourceA(LPCSTR, LPCSTR, MSIINSTALLCONTEXT, DWORD, LPCSTR);
     614UINT WINAPI MsiSourceListClearSourceW(LPCWSTR, LPCWSTR, MSIINSTALLCONTEXT, DWORD, LPCWSTR);
     615#define     MsiSourceListClearSource WINELIB_NAME_AW(MsiSourceListClearSource)
     616
    609617UINT WINAPI MsiSourceListClearAllA(LPCSTR, LPCSTR, DWORD);
    610618UINT WINAPI MsiSourceListClearAllW(LPCWSTR, LPCWSTR, DWORD);
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/msidefs.h

    r16477 r28475  
    230230    msidbRemoveFileInstallModeOnRemove = 0x00000002,
    231231    msidbRemoveFileInstallModeOnBoth = 0x00000003,
     232};
     233
     234enum
     235{
     236    msidbIniFileActionAddLine    = 0x00000000,
     237    msidbIniFileActionCreateLine = 0x00000001,
     238    msidbIniFileActionRemoveLine = 0x00000002,
     239    msidbIniFileActionAddTag     = 0x00000003,
     240    msidbIniFileActionRemoveTag  = 0x00000004
    232241};
    233242
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/mstcpip.h

    r19678 r28475  
    2828struct tcp_keepalive
    2929{
    30     u_long onoff;
    31     u_long keepalivetime;
    32     u_long keepaliveinterval;
     30    ULONG onoff;
     31    ULONG keepalivetime;
     32    ULONG keepaliveinterval;
    3333};
    3434
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/msvcrt/conio.h

    r21731 r28475  
    66 * This file is in the public domain.
    77 */
     8
    89/*
    910 * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/msvcrt/crtdbg.h

    r22652 r28475  
    2727 * of the LGPL is applied is otherwise unspecified.
    2828 */
     29
    2930#ifndef __WINE_CRTDBG_H_
    3031#define __WINE_CRTDBG_H_
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/msvcrt/ctype.h

    r19678 r28475  
    66 * This file is in the public domain.
    77 */
     8
    89/*
    910 * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/msvcrt/direct.h

    r21731 r28475  
    66 * This file is in the public domain.
    77 */
     8
    89/*
    910 * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/msvcrt/dos.h

    r19678 r28475  
    66 * This file is in the public domain.
    77 */
     8
    89/*
    910 * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/msvcrt/eh.h

    r19678 r28475  
    1818 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
    1919 */
     20
    2021/*
    2122 * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/msvcrt/fcntl.h

    r19678 r28475  
    66 * This file is in the public domain.
    77 */
     8
    89/*
    910 * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/msvcrt/io.h

    r25949 r28475  
    66 * This file is in the public domain.
    77 */
     8
    89/*
    910 * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/msvcrt/setjmp.h

    r19678 r28475  
    5353} _JUMP_BUFFER;
    5454
    55 #endif /* __i386__ */
     55#define _JBLEN 16
     56#define _JBTYPE int
    5657
    57 #define _JBLEN                     16
    58 #define _JBTYPE                    int
    59 typedef _JBTYPE                    jmp_buf[_JBLEN];
     58#elif defined(__x86_64__)
    6059
     60typedef struct _SETJMP_FLOAT128
     61{
     62    unsigned __int64 DECLSPEC_ALIGN(16) Part[2];
     63} SETJMP_FLOAT128;
     64
     65typedef struct _JUMP_BUFFER
     66{
     67    unsigned __int64 Frame;
     68    unsigned __int64 Rbx;
     69    unsigned __int64 Rsp;
     70    unsigned __int64 Rbp;
     71    unsigned __int64 Rsi;
     72    unsigned __int64 Rdi;
     73    unsigned __int64 R12;
     74    unsigned __int64 R13;
     75    unsigned __int64 R14;
     76    unsigned __int64 R15;
     77    unsigned __int64 Rip;
     78    unsigned __int64 Spare;
     79    SETJMP_FLOAT128  Xmm6;
     80    SETJMP_FLOAT128  Xmm7;
     81    SETJMP_FLOAT128  Xmm8;
     82    SETJMP_FLOAT128  Xmm9;
     83    SETJMP_FLOAT128  Xmm10;
     84    SETJMP_FLOAT128  Xmm11;
     85    SETJMP_FLOAT128  Xmm12;
     86    SETJMP_FLOAT128  Xmm13;
     87    SETJMP_FLOAT128  Xmm14;
     88    SETJMP_FLOAT128  Xmm15;
     89} _JUMP_BUFFER;
     90
     91#define _JBLEN  16
     92typedef SETJMP_FLOAT128 _JBTYPE;
     93
     94#else
     95
     96#define _JBLEN 1
     97#define _JBTYPE int
     98
     99#endif
     100
     101typedef _JBTYPE jmp_buf[_JBLEN];
    61102
    62103#ifdef __cplusplus
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/msvcrt/stdlib.h

    r21731 r28475  
    229229#endif /* _WSTDLIB_DEFINED */
    230230
     231typedef void (__cdecl *_invalid_parameter_handler)(const wchar_t*, const wchar_t*, const wchar_t*, unsigned, uintptr_t);
     232_invalid_parameter_handler __cdecl _set_invalid_parameter_handler(_invalid_parameter_handler);
     233_invalid_parameter_handler __cdecl _get_invalid_parameter_handler(void);
     234void __cdecl _invalid_parameter(const wchar_t *expr, const wchar_t *func, const wchar_t *file,
     235                                unsigned int line, uintptr_t arg);
     236
    231237#ifdef __cplusplus
    232238}
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/msvcrt/sys/locking.h

    r16477 r28475  
    2727 * of the LGPL is applied is otherwise unspecified.
    2828 */
     29
    2930#ifndef __WINE_SYS_LOCKING_H__
    3031#define __WINE_SYS_LOCKING_H__
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/mswsock.h

    r16477 r28475  
    2525 * of the LGPL is applied is otherwise unspecified.
    2626 */
     27
    2728#ifndef _MSWSOCK_
    2829#define _MSWSOCK_
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/msxml.h

    r25949 r28475  
    1 /*** Autogenerated by WIDL 1.1.36 from ../../include/msxml.idl - Do not edit ***/
     1/*** Autogenerated by WIDL 1.1.43 from ../../include/msxml.idl - Do not edit ***/
    22
    33#include <rpc.h>
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/msxml2.idl

    r19678 r28475  
    9595interface IMXWriter;
    9696
     97interface IXMLDOMSchemaCollection2;
     98interface ISchemaStringCollection;
     99interface ISchemaItemCollection;
     100interface ISchemaItem;
     101interface ISchema;
     102interface ISchemaParticle;
     103interface ISchemaAttribute;
     104interface ISchemaElement;
     105interface ISchemaType;
     106interface ISchemaComplexType;
     107interface ISchemaAttributeGroup;
     108interface ISchemaModelGroup;
     109interface ISchemaAny;
     110interface ISchemaIdentityConstraint;
     111interface ISchemaNotation;
     112
    97113
    98114cpp_quote("#define DOMDocument DOMDocument2")
     
    118134cpp_quote("#endif   /* __WIDL_XMLDOM_H */")
    119135
     136typedef enum _SOMITEMTYPE
     137{
     138    SOMITEM_SCHEMA                      = 0x1000,
     139    SOMITEM_ATTRIBUTE                   = 0x1001,
     140    SOMITEM_ATTRIBUTEGROUP              = 0x1002,
     141    SOMITEM_NOTATION                    = 0x1003,
     142    SOMITEM_IDENTITYCONSTRAINT          = 0x1100,
     143    SOMITEM_KEY                         = 0x1101,
     144    SOMITEM_KEYREF                      = 0x1102,
     145    SOMITEM_UNIQUE                      = 0x1103,
     146    SOMITEM_ANYTYPE                     = 0x2000,
     147    SOMITEM_DATATYPE                    = 0x2100,
     148    SOMITEM_DATATYPE_ANYTYPE            = 0x2101,
     149    SOMITEM_DATATYPE_ANYURI             = 0x2102,
     150    SOMITEM_DATATYPE_BASE64BINARY       = 0x2103,
     151    SOMITEM_DATATYPE_BOOLEAN            = 0x2104,
     152    SOMITEM_DATATYPE_BYTE               = 0x2105,
     153    SOMITEM_DATATYPE_DATE               = 0x2106,
     154    SOMITEM_DATATYPE_DATETIME           = 0x2107,
     155    SOMITEM_DATATYPE_DAY                = 0x2108,
     156    SOMITEM_DATATYPE_DECIMAL            = 0x2109,
     157    SOMITEM_DATATYPE_DOUBLE             = 0x210A,
     158    SOMITEM_DATATYPE_DURATION           = 0x210B,
     159    SOMITEM_DATATYPE_ENTITIES           = 0x210C,
     160    SOMITEM_DATATYPE_ENTITY             = 0x210D,
     161    SOMITEM_DATATYPE_FLOAT              = 0x210E,
     162    SOMITEM_DATATYPE_HEXBINARY          = 0x210F,
     163    SOMITEM_DATATYPE_ID                 = 0x2110,
     164    SOMITEM_DATATYPE_IDREF              = 0x2111,
     165    SOMITEM_DATATYPE_IDREFS             = 0x2112,
     166    SOMITEM_DATATYPE_INT                = 0x2113,
     167    SOMITEM_DATATYPE_INTEGER            = 0x2114,
     168    SOMITEM_DATATYPE_LANGUAGE           = 0x2115,
     169    SOMITEM_DATATYPE_LONG               = 0x2116,
     170    SOMITEM_DATATYPE_MONTH              = 0x2117,
     171    SOMITEM_DATATYPE_MONTHDAY           = 0x2118,
     172    SOMITEM_DATATYPE_NAME               = 0x2119,
     173    SOMITEM_DATATYPE_NCNAME             = 0x211A,
     174    SOMITEM_DATATYPE_NEGATIVEINTEGER    = 0x211B,
     175    SOMITEM_DATATYPE_NMTOKEN            = 0x211C,
     176    SOMITEM_DATATYPE_NMTOKENS           = 0x211D,
     177    SOMITEM_DATATYPE_NONNEGATIVEINTEGER = 0x211E,
     178    SOMITEM_DATATYPE_NONPOSITIVEINTEGER = 0x211F,
     179    SOMITEM_DATATYPE_NORMALIZEDSTRING   = 0x2120,
     180    SOMITEM_DATATYPE_NOTATION           = 0x2121,
     181    SOMITEM_DATATYPE_POSITIVEINTEGER    = 0x2122,
     182    SOMITEM_DATATYPE_QNAME              = 0x2123,
     183    SOMITEM_DATATYPE_SHORT              = 0x2124,
     184    SOMITEM_DATATYPE_STRING             = 0x2125,
     185    SOMITEM_DATATYPE_TIME               = 0x2126,
     186    SOMITEM_DATATYPE_TOKEN              = 0x2127,
     187    SOMITEM_DATATYPE_UNSIGNEDBYTE       = 0x2128,
     188    SOMITEM_DATATYPE_UNSIGNEDINT        = 0x2129,
     189    SOMITEM_DATATYPE_UNSIGNEDLONG       = 0x212A,
     190    SOMITEM_DATATYPE_UNSIGNEDSHORT      = 0x212B,
     191    SOMITEM_DATATYPE_YEAR               = 0x212C,
     192    SOMITEM_DATATYPE_YEARMONTH          = 0x212D,
     193    SOMITEM_DATATYPE_ANYSIMPLETYPE      = 0x21FF,
     194    SOMITEM_SIMPLETYPE                  = 0x2200,
     195    SOMITEM_COMPLEXTYPE                 = 0x2400,
     196    SOMITEM_PARTICLE                    = 0x4000,
     197    SOMITEM_ANY                         = 0x4001,
     198    SOMITEM_ANYATTRIBUTE                = 0x4002,
     199    SOMITEM_ELEMENT                     = 0x4003,
     200    SOMITEM_GROUP                       = 0x4100,
     201    SOMITEM_ALL                         = 0x4101,
     202    SOMITEM_CHOICE                      = 0x4102,
     203    SOMITEM_SEQUENCE                    = 0x4103,
     204    SOMITEM_EMPTYPARTICLE               = 0x4104,
     205    SOMITEM_NULL                        = 0x0800,
     206    SOMITEM_NULL_TYPE                   = 0x2800,
     207    SOMITEM_NULL_ANY                    = 0x4801,
     208    SOMITEM_NULL_ANYATTRIBUTE           = 0x4802,
     209    SOMITEM_NULL_ELEMENT                = 0x4803,
     210} SOMITEMTYPE;
     211
     212typedef enum _SCHEMAUSE
     213{
     214    SCHEMAUSE_OPTIONAL,
     215    SCHEMAUSE_PROHIBITED,
     216    SCHEMAUSE_REQUIRED,
     217} SCHEMAUSE;
     218
     219typedef enum _SCHEMADERIVATIONMETHOD
     220{
     221    SCHEMADERIVATIONMETHOD_EMPTY        = 0x0000,
     222    SCHEMADERIVATIONMETHOD_SUBSTITUTION = 0x0001,
     223    SCHEMADERIVATIONMETHOD_EXTENSION    = 0x0002,
     224    SCHEMADERIVATIONMETHOD_RESTRICTION  = 0x0004,
     225    SCHEMADERIVATIONMETHOD_LIST         = 0x0008,
     226    SCHEMADERIVATIONMETHOD_UNION        = 0x0010,
     227    SCHEMADERIVATIONMETHOD_ALL          = 0x00FF,
     228    SCHEMADERIVATIONMETHOD_NONE         = 0x0100,
     229} SCHEMADERIVATIONMETHOD;
     230
     231typedef enum _SCHEMACONTENTTYPE
     232{
     233    SCHEMACONTENTTYPE_EMPTY,
     234    SCHEMACONTENTTYPE_TEXTONLY,
     235    SCHEMACONTENTTYPE_ELEMENTONLY,
     236    SCHEMACONTENTTYPE_MIXED,
     237} SCHEMACONTENTTYPE;
     238
     239typedef enum _SCHEMAPROCESSCONTENTS
     240{
     241    SCHEMAPROCESSCONTENTS_NONE,
     242    SCHEMAPROCESSCONTENTS_SKIP,
     243    SCHEMAPROCESSCONTENTS_LAX,
     244    SCHEMAPROCESSCONTENTS_STRICT,
     245} SCHEMAPROCESSCONTENTS;
     246
     247typedef enum _SCHEMAWHITESPACE
     248{
     249    SCHEMAWHITESPACE_NONE       = -1,
     250    SCHEMAWHITESPACE_PRESERVE   =  0,
     251    SCHEMAWHITESPACE_REPLACE    =  1,
     252    SCHEMAWHITESPACE_COLLAPSE   =  2,
     253} SCHEMAWHITESPACE;
     254
     255
     256typedef enum _SCHEMATYPEVARIETY
     257{
     258    SCHEMATYPEVARIETY_NONE      = -1,
     259    SCHEMATYPEVARIETY_ATOMIC    =  0,
     260    SCHEMATYPEVARIETY_LIST      =  1,
     261    SCHEMATYPEVARIETY_UNION     =  2,
     262} SCHEMATYPEVARIETY;
     263
    120264[
    121265local,
     
    426570    HRESULT _newEnum([retval, out] IUnknown **ppUnk);
    427571}
     572
     573[
     574    local,
     575    object,
     576    uuid(50ea08b0-dd1b-4664-9a50-c2f40f4bd79a),
     577]
     578interface IXMLDOMSchemaCollection2 : IXMLDOMSchemaCollection
     579{
     580    [id(DISPID_SOM_VALIDATE)]
     581    HRESULT validate();
     582
     583    [propput, id(DISPID_SOM_VALIDATEONLOAD)]
     584    HRESULT validateOnLoad(
     585        [in] VARIANT_BOOL validateOnLoad);
     586
     587    [propget, id(DISPID_SOM_VALIDATEONLOAD)]
     588    HRESULT validateOnLoad(
     589        [out,retval] VARIANT_BOOL* validateOnLoad);
     590
     591    [id(DISPID_SOM_GETSCHEMA)]
     592    HRESULT getSchema(
     593        [in] BSTR namespaceURI,
     594        [out,retval] ISchema** schema);
     595
     596    [id(DISPID_SOM_GETDECLARATION)]
     597    HRESULT getDeclaration(
     598        [in] IXMLDOMNode* node,
     599        [out,retval]ISchemaItem** item);
     600};
    428601
    429602[
     
    10801253}
    10811254
     1255[
     1256    uuid(88d969c0-f192-11d4-a65f-0040963251e5)
     1257]
     1258coclass DOMDocument40
     1259{
     1260    [default] interface IXMLDOMDocument2;
     1261    [default, source] dispinterface XMLDOMDocumentEvents;
     1262}
    10821263
    10831264[
     
    19622143
    19632144[
     2145    local,
     2146    object,
     2147    uuid(50ea08b1-dd1b-4664-9a50-c2f40f4bd79a),
     2148    dual
     2149]
     2150interface ISchemaStringCollection : IDispatch
     2151{
     2152    [id(DISPID_VALUE), propget]
     2153    HRESULT item(
     2154        [in] long index,
     2155        [out,retval] BSTR* bstr);
     2156
     2157    [id(DISPID_SOM_LENGTH), propget]
     2158    HRESULT length(
     2159        [out,retval] long* length);
     2160
     2161    [id(DISPID_NEWENUM), hidden, restricted, propget]
     2162    HRESULT _newEnum(
     2163        [out,retval] IUnknown** ppunk);
     2164};
     2165
     2166[
     2167    local,
     2168    object,
     2169    uuid(50ea08b2-dd1b-4664-9a50-c2f40f4bd79a),
     2170    dual
     2171]
     2172interface ISchemaItemCollection : IDispatch
     2173{
     2174    [id(DISPID_VALUE), propget]
     2175    HRESULT item(
     2176        [in] long index,
     2177        [out,retval]ISchemaItem** item);
     2178
     2179    [id(DISPID_SOM_ITEMBYNAME)]
     2180    HRESULT itemByName(
     2181        [in] BSTR name,
     2182        [out,retval] ISchemaItem** item);
     2183
     2184    [id(DISPID_SOM_ITEMBYQNAME)]
     2185    HRESULT itemByQName(
     2186        [in] BSTR name,
     2187        [in] BSTR namespaceURI,
     2188        [out,retval] ISchemaItem** item);
     2189
     2190    [id(DISPID_SOM_LENGTH), propget]
     2191    HRESULT length(
     2192        [out,retval]long* length);
     2193
     2194    [id(DISPID_NEWENUM), hidden, restricted, propget]
     2195    HRESULT _newEnum(
     2196        [out,retval]IUnknown** ppunk);
     2197};
     2198
     2199[
     2200    local,
     2201    object,
     2202    uuid(50ea08b3-dd1b-4664-9a50-c2f40f4bd79a),
     2203    dual
     2204]
     2205interface ISchemaItem : IDispatch
     2206{
     2207    [id(DISPID_SOM_NAME), propget]
     2208    HRESULT name(
     2209        [out,retval] BSTR* name);
     2210
     2211    [id(DISPID_SOM_NAMESPACEURI), propget]
     2212    HRESULT namespaceURI(
     2213        [out,retval] BSTR* namespaceURI);
     2214
     2215    [id(DISPID_SOM_SCHEMA), propget]
     2216    HRESULT schema(
     2217        [out,retval] ISchema** schema);
     2218
     2219    [id(DISPID_SOM_ID), propget]
     2220    HRESULT id(
     2221        [out,retval] BSTR* id);
     2222
     2223    [id(DISPID_SOM_ITEMTYPE), propget]
     2224    HRESULT itemType(
     2225        [out,retval] SOMITEMTYPE* itemType);
     2226
     2227    [id(DISPID_SOM_UNHANDLEDATTRS), propget]
     2228    HRESULT unhandledAttributes(
     2229        [out,retval] IVBSAXAttributes** attributes);
     2230
     2231    [id(DISPID_SOM_WRITEANNOTATION)]
     2232    HRESULT writeAnnotation(
     2233        [in] IUnknown* annotationSink,
     2234        [out,retval] VARIANT_BOOL* isWritten);
     2235};
     2236
     2237[
     2238    local,
     2239    object,
     2240    uuid(50ea08b4-dd1b-4664-9a50-c2f40f4bd79a),
     2241    dual
     2242]
     2243interface ISchema : ISchemaItem
     2244{
     2245    [id(DISPID_SOM_TARGETNAMESPACE), propget]
     2246    HRESULT targetNamespace(
     2247        [out,retval] BSTR* targetNamespace);
     2248
     2249    [id(DISPID_SOM_VERSION), propget]
     2250    HRESULT version(
     2251        [out,retval] BSTR* version);
     2252
     2253    [id(DISPID_SOM_TYPES), propget]
     2254    HRESULT types(
     2255        [out,retval] ISchemaItemCollection** types);
     2256
     2257    [id(DISPID_SOM_ELEMENTS), propget]
     2258    HRESULT elements(
     2259        [out,retval] ISchemaItemCollection** elements);
     2260
     2261    [id(DISPID_SOM_ATTRIBUTES), propget]
     2262    HRESULT attributes(
     2263        [out,retval] ISchemaItemCollection** attributes);
     2264
     2265    [id(DISPID_SOM_ATTRIBUTEGROUPS), propget]
     2266    HRESULT attributeGroups(
     2267        [out,retval] ISchemaItemCollection** attributeGroups);
     2268
     2269    [id(DISPID_SOM_MODELGROUPS), propget]
     2270    HRESULT modelGroups(
     2271        [out,retval] ISchemaItemCollection** modelGroups);
     2272
     2273    [id(DISPID_SOM_NOTATIONS), propget]
     2274    HRESULT notations(
     2275        [out,retval] ISchemaItemCollection** notations);
     2276
     2277    [id(DISPID_SOM_SCHEMALOCATIONS), propget]
     2278    HRESULT schemaLocations(
     2279        [out,retval] ISchemaStringCollection** schemaLocations);
     2280};
     2281
     2282[
     2283    local,
     2284    object,
     2285    uuid(50ea08b5-dd1b-4664-9a50-c2f40f4bd79a),
     2286    dual
     2287]
     2288interface ISchemaParticle : ISchemaItem
     2289{
     2290    [id(DISPID_SOM_MINOCCURS), propget]
     2291    HRESULT minOccurs(
     2292        [out,retval] VARIANT* minOccurs);
     2293
     2294    [id(DISPID_SOM_MAXOCCURS), propget]
     2295    HRESULT maxOccurs(
     2296        [out,retval] VARIANT* maxOccurs);
     2297};
     2298
     2299[
     2300    object,
     2301    uuid(50ea08b6-dd1b-4664-9a50-c2f40f4bd79a),
     2302    dual,
     2303]
     2304interface ISchemaAttribute : ISchemaItem
     2305{
     2306    [id(DISPID_SOM_TYPE), propget]
     2307    HRESULT type(
     2308        [out,retval] ISchemaType** type);
     2309
     2310    [id(DISPID_SOM_SCOPE), propget]
     2311    HRESULT scope(
     2312        [out,retval] ISchemaComplexType** scope);
     2313
     2314    [id(DISPID_SOM_DEFAULTVALUE), propget]
     2315    HRESULT defaultValue(
     2316        [out,retval]BSTR* defaultValue);
     2317
     2318    [id(DISPID_SOM_FIXEDVALUE), propget]
     2319    HRESULT fixedValue(
     2320        [out,retval] BSTR* fixedValue);
     2321
     2322    [id(DISPID_SOM_USE), propget]
     2323    HRESULT use(
     2324        [out,retval] SCHEMAUSE* use);
     2325
     2326    [id(DISPID_SOM_ISREFERENCE), propget]
     2327    HRESULT isReference(
     2328        [out,retval] VARIANT_BOOL* reference);
     2329};
     2330
     2331[
     2332    local,
     2333    object,
     2334    uuid(50ea08b7-dd1b-4664-9a50-c2f40f4bd79a),
     2335    dual
     2336]
     2337interface ISchemaElement : ISchemaParticle
     2338{
     2339    [id(DISPID_SOM_TYPE), propget]
     2340    HRESULT type(
     2341        [out,retval] ISchemaType** type);
     2342
     2343    [id(DISPID_SOM_SCOPE), propget]
     2344    HRESULT scope(
     2345        [out,retval] ISchemaComplexType** scope);
     2346
     2347    [id(DISPID_SOM_DEFAULTVALUE), propget]
     2348    HRESULT defaultValue(
     2349        [out,retval] BSTR* defaultValue);
     2350
     2351    [id(DISPID_SOM_FIXEDVALUE), propget]
     2352    HRESULT fixedValue(
     2353        [out,retval] BSTR* fixedValue);
     2354
     2355    [id(DISPID_SOM_ISNILLABLE), propget]
     2356    HRESULT isNillable(
     2357        [out,retval] VARIANT_BOOL* nillable);
     2358
     2359    [id(DISPID_SOM_IDCONSTRAINTS), propget]
     2360    HRESULT identityConstraints(
     2361        [out,retval] ISchemaItemCollection** constraints);
     2362
     2363    [id(DISPID_SOM_SUBSTITUTIONGROUP), propget]
     2364    HRESULT substitutionGroup(
     2365        [out,retval] ISchemaElement** element);
     2366
     2367    [id(DISPID_SOM_EXCLUSIONS), propget]
     2368    HRESULT substitutionGroupExclusions(
     2369        [out,retval] SCHEMADERIVATIONMETHOD* exclusions);
     2370
     2371    [id(DISPID_SOM_DISALLOWED), propget]
     2372    HRESULT disallowedSubstitutions(
     2373        [out,retval] SCHEMADERIVATIONMETHOD* disallowed);
     2374
     2375    [id(DISPID_SOM_ISABSTRACT), propget]
     2376    HRESULT isAbstract(
     2377        [out,retval] VARIANT_BOOL* abstract);
     2378
     2379    [id(DISPID_SOM_ISREFERENCE), propget]
     2380    HRESULT isReference(
     2381        [out,retval] VARIANT_BOOL* reference);
     2382};
     2383
     2384[
     2385    local,
     2386    object,
     2387    uuid(50ea08b8-dd1b-4664-9a50-c2f40f4bd79a),
     2388    dual
     2389]
     2390interface ISchemaType : ISchemaItem
     2391{
     2392    [id(DISPID_SOM_BASETYPES), propget]
     2393    HRESULT baseTypes(
     2394        [out,retval] ISchemaItemCollection** baseTypes);
     2395
     2396    [id(DISPID_SOM_FINAL), propget]
     2397    HRESULT final(
     2398        [out,retval] SCHEMADERIVATIONMETHOD* final);
     2399
     2400    [id(DISPID_SOM_VARIETY), propget]
     2401    HRESULT variety(
     2402        [out,retval] SCHEMATYPEVARIETY* variety);
     2403
     2404    [id(DISPID_SOM_DERIVEDBY), propget]
     2405    HRESULT derivedBy(
     2406        [out,retval] SCHEMADERIVATIONMETHOD* derivedBy);
     2407
     2408    [id(DISPID_SOM_ISVALID)]
     2409    HRESULT isValid(
     2410        [in] BSTR data,
     2411        [out,retval] VARIANT_BOOL* valid);
     2412
     2413    [id(DISPID_SOM_MINEXCLUSIVE), propget]
     2414    HRESULT minExclusive(
     2415        [out,retval]BSTR* minExclusive);
     2416
     2417    [id(DISPID_SOM_MININCLUSIVE), propget]
     2418    HRESULT minInclusive(
     2419        [out,retval] BSTR* minInclusive);
     2420
     2421    [id(DISPID_SOM_MAXEXCLUSIVE), propget]
     2422    HRESULT maxExclusive(
     2423        [out,retval] BSTR* maxExclusive);
     2424
     2425    [id(DISPID_SOM_MAXINCLUSIVE), propget]
     2426    HRESULT maxInclusive(
     2427        [out,retval] BSTR* maxInclusive);
     2428
     2429    [id(DISPID_SOM_TOTALDIGITS), propget]
     2430    HRESULT totalDigits(
     2431        [out,retval] VARIANT* totalDigits);
     2432
     2433    [id(DISPID_SOM_FRACTIONDIGITS), propget]
     2434    HRESULT fractionDigits(
     2435        [out,retval] VARIANT* fractionDigits);
     2436
     2437    [id(DISPID_SOM_LENGTH), propget]
     2438    HRESULT length(
     2439        [out,retval] VARIANT* length);
     2440
     2441    [id(DISPID_SOM_MINLENGTH), propget]
     2442    HRESULT minLength(
     2443        [out,retval]VARIANT* minLength);
     2444
     2445    [id(DISPID_SOM_MAXLENGTH), propget]
     2446    HRESULT maxLength(
     2447        [out,retval]VARIANT* maxLength);
     2448
     2449    [id(DISPID_SOM_ENUMERATION), propget]
     2450    HRESULT enumeration(
     2451        [out,retval] ISchemaStringCollection** enumeration);
     2452
     2453    [id(DISPID_SOM_WHITESPACE), propget]
     2454    HRESULT whitespace(
     2455        [out,retval]SCHEMAWHITESPACE* whitespace);
     2456
     2457    [id(DISPID_SOM_PATTERNS), propget]
     2458    HRESULT patterns(
     2459        [out,retval] ISchemaStringCollection** patterns);
     2460};
     2461
     2462[
     2463    local,
     2464    object,
     2465    uuid(50ea08b9-dd1b-4664-9a50-c2f40f4bd79a),
     2466    dual,
     2467]
     2468interface ISchemaComplexType : ISchemaType
     2469{
     2470    [id(DISPID_SOM_ISABSTRACT), propget]
     2471    HRESULT isAbstract(
     2472        [out,retval] VARIANT_BOOL* abstract);
     2473
     2474    [id(DISPID_SOM_ANYATTRIBUTE), propget]
     2475    HRESULT anyAttribute(
     2476        [out,retval] ISchemaAny** anyAttribute);
     2477
     2478    [id(DISPID_SOM_ATTRIBUTES), propget]
     2479    HRESULT attributes(
     2480        [out,retval] ISchemaItemCollection** attributes);
     2481
     2482    [id(DISPID_SOM_CONTENTTYPE), propget]
     2483    HRESULT contentType(
     2484        [out,retval] SCHEMACONTENTTYPE* contentType);
     2485
     2486    [id(DISPID_SOM_CONTENTMODEL), propget]
     2487    HRESULT contentModel(
     2488        [out,retval] ISchemaModelGroup** contentModel);
     2489
     2490    [id(DISPID_SOM_PROHIBITED), propget]
     2491    HRESULT prohibitedSubstitutions(
     2492        [out,retval] SCHEMADERIVATIONMETHOD* prohibited);
     2493};
     2494
     2495[
     2496    local,
     2497    object,
     2498    uuid(50ea08ba-dd1b-4664-9a50-c2f40f4bd79a),
     2499    dual,
     2500]
     2501interface ISchemaAttributeGroup : ISchemaItem
     2502{
     2503    [id(DISPID_SOM_ANYATTRIBUTE), propget]
     2504    HRESULT anyAttribute(
     2505        [out,retval] ISchemaAny** anyAttribute);
     2506
     2507    [id(DISPID_SOM_ATTRIBUTES), propget]
     2508        HRESULT attributes(
     2509            [out,retval] ISchemaItemCollection** attributes);
     2510};
     2511
     2512[
     2513    local,
     2514    object,
     2515    uuid(50ea08bb-dd1b-4664-9a50-c2f40f4bd79a),
     2516    dual,
     2517]
     2518interface ISchemaModelGroup : ISchemaParticle
     2519{
     2520    [id(DISPID_SOM_PARTICLES), propget]
     2521    HRESULT particles(
     2522        [out,retval] ISchemaItemCollection** particles);
     2523};
     2524
     2525[
     2526    local,
     2527    object,
     2528    uuid(50ea08bc-dd1b-4664-9a50-c2f40f4bd79a),
     2529    dual
     2530]
     2531interface ISchemaAny : ISchemaParticle
     2532{
     2533    [id(DISPID_SOM_NAMESPACES), propget]
     2534    HRESULT namespaces(
     2535        [out,retval] ISchemaStringCollection** namespaces);
     2536
     2537    [id(DISPID_SOM_PROCESSCONTENTS), propget]
     2538    HRESULT processContents(
     2539        [out,retval] SCHEMAPROCESSCONTENTS* processContents);
     2540};
     2541
     2542[
     2543    local,
     2544    object,
     2545    uuid(50ea08bd-dd1b-4664-9a50-c2f40f4bd79a),
     2546    dual
     2547]
     2548interface ISchemaIdentityConstraint : ISchemaItem
     2549{
     2550    [id(DISPID_SOM_SELECTOR), propget]
     2551    HRESULT selector(
     2552        [out,retval] BSTR* selector);
     2553
     2554    [id(DISPID_SOM_FIELDS), propget]
     2555        HRESULT fields(
     2556            [out,retval] ISchemaStringCollection** fields);
     2557
     2558    [id(DISPID_SOM_REFERENCEDKEY), propget]
     2559    HRESULT referencedKey(
     2560        [out,retval] ISchemaIdentityConstraint** key);
     2561};
     2562
     2563[
     2564    local,
     2565    object,
     2566    uuid(50ea08be-dd1b-4664-9a50-c2f40f4bd79a),
     2567    dual
     2568]
     2569interface ISchemaNotation : ISchemaItem
     2570{
     2571    [id(DISPID_SOM_SYSTEMIDENTIFIER), propget]
     2572    HRESULT systemIdentifier(
     2573        [out,retval] BSTR* uri);
     2574
     2575    [id(DISPID_SOM_PUBLICIDENTIFIER), propget]
     2576    HRESULT publicIdentifier(
     2577        [out,retval] BSTR* uri);
     2578};
     2579
     2580
     2581[
    19642582    uuid(079aa557-4a18-424a-8eee-e39f0a8d41b9)
    19652583]
     
    19792597    interface ISAXXMLReader;
    19802598    interface IMXReaderControl;
     2599};
     2600
     2601[
     2602    uuid(7c6e29bc-8b8b-4c3d-859e-af6cd158be0f)
     2603]
     2604coclass SAXXMLReader40
     2605{
     2606    [default] interface IVBSAXXMLReader;
     2607    interface ISAXXMLReader;
    19812608};
    19822609
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/msxml2did.h

    r16477 r28475  
    404404#define DISPID_MX_READER_CONTROL_SUSPEND                0x00000578
    405405
     406#define DISPID_MX_SCHEMADECLHANDLER                     0x0000057a
     407#define DISPID_MX_SCHEMADECLHANDLER_SCHEMAELEMENTDECL   0x0000057b
     408
     409#define DISPID_MX_NSMGR                                 0x0000057d
     410#define DISPID_MX_NSMGR_ALLOWOVERRIDE                   0x0000057e
     411#define DISPID_MX_NSMGR_RESET                           0x0000057f
     412#define DISPID_MX_NSMGR_PUSHCONTEXT                     0x00000580
     413#define DISPID_MX_NSMGR_PUSHNODECONTEXT                 0x00000581
     414#define DISPID_MX_NSMGR_POPCONTEXT                      0x00000582
     415#define DISPID_MX_NSMGR_DECLAREPREFIX                   0x00000583
     416#define DISPID_MX_NSMGR_GETDECLAREDPREFIXES             0x00000584
     417#define DISPID_MX_NSMGR_GETPREFIXES                     0x00000585
     418#define DISPID_MX_NSMGR_GETURI                          0x00000586
     419#define DISPID_MX_NSMGR_GETURIFROMNODE                  0x00000587
     420#define DISPID_MX_NSMGR_LENGTH                          0x00000588
     421
     422#define DISPID_SOM_VALIDATE                             0x0000058b
     423#define DISPID_SOM_VALIDATEONLOAD                       0x0000058c
     424#define DISPID_SOM_GETSCHEMA                            0x0000058d
     425#define DISPID_SOM_GETDECLARATION                       0x0000058e
     426#define DISPID_SOM_ITEMBYNAME                           0x0000058f
     427#define DISPID_SOM_ITEMBYQNAME                          0x00000590
     428#define DISPID_SOM_ANYATTRIBUTE                         0x00000591
     429#define DISPID_SOM_ATTRIBUTEGROUPS                      0x00000592
     430#define DISPID_SOM_ATTRIBUTES                           0x00000593
     431#define DISPID_SOM_BASETYPES                            0x00000594
     432#define DISPID_SOM_CONTENTMODEL                         0x00000595
     433#define DISPID_SOM_CONTENTTYPE                          0x00000596
     434#define DISPID_SOM_DEFAULTVALUE                         0x00000597
     435#define DISPID_SOM_DERIVEDBY                            0x00000598
     436#define DISPID_SOM_DISALLOWED                           0x00000599
     437#define DISPID_SOM_ELEMENTS                             0x0000059a
     438#define DISPID_SOM_ENUMERATION                          0x0000059b
     439#define DISPID_SOM_FIELDS                               0x0000059c
     440#define DISPID_SOM_FINAL                                0x0000059d
     441#define DISPID_SOM_FIXEDVALUE                           0x0000059e
     442#define DISPID_SOM_FRACTIONDIGITS                       0x0000059f
     443#define DISPID_SOM_ID                                   0x000005a0
     444#define DISPID_SOM_IDCONSTRAINTS                        0x000005a1
     445#define DISPID_SOM_ISABSTRACT                           0x000005a2
     446#define DISPID_SOM_ISNILLABLE                           0x000005a3
     447#define DISPID_SOM_ISREFERENCE                          0x000005a4
     448#define DISPID_SOM_ISVALID                              0x000005a5
     449#define DISPID_SOM_ITEMTYPE                             0x000005a6
     450#define DISPID_SOM_LENGTH                               0x000005a7
     451#define DISPID_SOM_MAXEXCLUSIVE                         0x000005a8
     452#define DISPID_SOM_MAXINCLUSIVE                         0x000005a9
     453#define DISPID_SOM_MAXLENGTH                            0x000005aa
     454#define DISPID_SOM_MAXOCCURS                            0x000005ab
     455#define DISPID_SOM_MINEXCLUSIVE                         0x000005ac
     456#define DISPID_SOM_MININCLUSIVE                         0x000005ad
     457#define DISPID_SOM_MINLENGTH                            0x000005ae
     458#define DISPID_SOM_MINOCCURS                            0x000005af
     459#define DISPID_SOM_MODELGROUPS                          0x000005b0
     460#define DISPID_SOM_NAME                                 0x000005b1
     461#define DISPID_SOM_NAMESPACES                           0x000005b2
     462#define DISPID_SOM_NAMESPACEURI                         0x000005b3
     463#define DISPID_SOM_NOTATIONS                            0x000005b4
     464#define DISPID_SOM_PARTICLES                            0x000005b5
     465#define DISPID_SOM_PATTERNS                             0x000005b6
     466#define DISPID_SOM_PROCESSCONTENTS                      0x000005b7
     467#define DISPID_SOM_PROHIBITED                           0x000005b8
     468#define DISPID_SOM_PUBLICIDENTIFIER                     0x000005b9
     469#define DISPID_SOM_REFERENCEDKEY                        0x000005ba
     470#define DISPID_SOM_SCHEMA                               0x000005bb
     471#define DISPID_SOM_SCHEMALOCATIONS                      0x000005bc
     472#define DISPID_SOM_SCOPE                                0x000005bd
     473#define DISPID_SOM_SELECTOR                             0x000005be
     474#define DISPID_SOM_SUBSTITUTIONGROUP                    0x000005bf
     475#define DISPID_SOM_EXCLUSIONS                           0x000005c0
     476#define DISPID_SOM_SYSTEMIDENTIFIER                     0x000005c1
     477#define DISPID_SOM_TARGETNAMESPACE                      0x000005c2
     478#define DISPID_SOM_TOTALDIGITS                          0x000005c3
     479#define DISPID_SOM_TYPE                                 0x000005c4
     480#define DISPID_SOM_TYPES                                0x000005c5
     481#define DISPID_SOM_UNHANDLEDATTRS                       0x000005c6
     482#define DISPID_SOM_USE                                  0x000005c7
     483#define DISPID_SOM_VARIETY                              0x000005c8
     484#define DISPID_SOM_VERSION                              0x000005c9
     485#define DISPID_SOM_WHITESPACE                           0x000005ca
     486#define DISPID_SOM_WRITEANNOTATION                      0x000005cb
     487
    406488
    407489#endif /* __MSXML2DID_H__ */
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/npapi.h

    r16477 r28475  
    2525 * of the LGPL is applied is otherwise unspecified.
    2626 */
     27
    2728#ifndef __WINE_NPAPI_H__
    2829#define __WINE_NPAPI_H__
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/ntsecapi.h

    r16477 r28475  
    347347
    348348#define RtlGenRandom                    SystemFunction036
     349#define RtlEncryptMemory                SystemFunction040
     350#define RtlDecryptMemory                SystemFunction041
    349351
    350352BOOLEAN WINAPI RtlGenRandom(PVOID,ULONG);
     353NTSTATUS WINAPI RtlEncryptMemory(PVOID,ULONG,ULONG);
     354NTSTATUS WINAPI RtlDecryptMemory(PVOID,ULONG,ULONG);
    351355
    352356NTSTATUS WINAPI LsaAddAccountRights(LSA_HANDLE,PSID,PLSA_UNICODE_STRING,ULONG);
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/ntstatus.h

    r16477 r28475  
    915915#define STATUS_VDM_DISALLOWED            ((NTSTATUS) 0xC0000414)
    916916#define STATUS_HUNG_DISPLAY_DRIVER_THREAD ((NTSTATUS) 0xC0000415)
     917#define STATUS_INSUFFICIENT_RESOURCE_FOR_SPECIFIED_SHARED_SECTION_SIZE ((NTSTATUS) 0xC0000416)
     918#define STATUS_INVALID_CRUNTIME_PARAMETER   ((NTSTATUS) 0xC0000417)
     919#define STATUS_NTLM_BLOCKED                 ((NTSTATUS) 0xC0000418)
     920#define STATUS_ASSERTION_FAILURE            ((NTSTATUS) 0xC0000420)
     921#define STATUS_VERIFIER_STOP                ((NTSTATUS) 0xC0000421)
     922#define STATUS_CALLBACK_POP_STACK           ((NTSTATUS) 0xC0000423)
     923#define STATUS_INCOMPATIBLE_DRIVER_BLOCKED  ((NTSTATUS) 0xC0000424)
     924#define STATUS_HIVE_UNLOADED                ((NTSTATUS) 0xC0000425)
     925#define STATUS_COMPRESSION_DISABLED         ((NTSTATUS) 0xC0000426)
     926#define STATUS_FILE_SYSTEM_LIMITATION       ((NTSTATUS) 0xC0000427)
     927#define STATUS_INVALID_IMAGE_HASH           ((NTSTATUS) 0xC0000428)
     928#define STATUS_NOT_CAPABLE                  ((NTSTATUS) 0xC0000429)
     929#define STATUS_REQUEST_OUT_OF_SEQUENCE      ((NTSTATUS) 0xC000042A)
     930#define STATUS_IMPLEMENTATION_LIMIT         ((NTSTATUS) 0xC000042B)
     931#define STATUS_ELEVATION_REQUIRED           ((NTSTATUS) 0xC000042C)
     932#define STATUS_BEYOND_VDL                   ((NTSTATUS) 0xC0000432)
     933#define STATUS_ENCOUNTERED_WRITE_IN_PROGRESS ((NTSTATUS) 0xC0000433)
     934#define STATUS_PTE_CHANGED                  ((NTSTATUS) 0xC0000434)
     935#define STATUS_PURGE_FAILED                 ((NTSTATUS) 0xC0000435)
     936#define STATUS_CRED_REQUIRES_CONFIRMATION   ((NTSTATUS) 0xC0000440)
     937#define STATUS_CS_ENCRYPTION_INVALID_SERVER_RESPONSE ((NTSTATUS) 0xC0000441)
     938#define STATUS_CS_ENCRYPTION_UNSUPPORTED_SERVER ((NTSTATUS) 0xC0000442)
     939#define STATUS_CS_ENCRYPTION_EXISTING_ENCRYPTED_FILE ((NTSTATUS) 0xC0000443)
     940#define STATUS_CS_ENCRYPTION_NEW_ENCRYPTED_FILE ((NTSTATUS) 0xC0000444)
     941#define STATUS_CS_ENCRYPTION_FILE_NOT_CSE   ((NTSTATUS) 0xC0000445)
     942#define STATUS_INVALID_LABEL                ((NTSTATUS) 0xC0000446)
     943#define STATUS_DRIVER_PROCESS_TERMINATED    ((NTSTATUS) 0xC0000450)
     944#define STATUS_AMBIGUOUS_SYSTEM_DEVICE      ((NTSTATUS) 0xC0000451)
     945#define STATUS_SYSTEM_DEVICE_NOT_FOUND      ((NTSTATUS) 0xC0000452)
     946#define STATUS_RESTART_BOOT_APPLICATION     ((NTSTATUS) 0xC0000453)
     947#define STATUS_INVALID_TASK_NAME            ((NTSTATUS) 0xC0000500)
     948#define STATUS_INVALID_TASK_INDEX           ((NTSTATUS) 0xC0000501)
     949#define STATUS_THREAD_ALREADY_IN_TASK       ((NTSTATUS) 0xC0000502)
     950#define STATUS_CALLBACK_BYPASS              ((NTSTATUS) 0xC0000503)
     951#define STATUS_PORT_CLOSED                  ((NTSTATUS) 0xC0000700)
     952#define STATUS_MESSAGE_LOST                 ((NTSTATUS) 0xC0000701)
     953#define STATUS_INVALID_MESSAGE              ((NTSTATUS) 0xC0000702)
     954#define STATUS_REQUEST_CANCELED             ((NTSTATUS) 0xC0000703)
     955#define STATUS_RECURSIVE_DISPATCH           ((NTSTATUS) 0xC0000704)
     956#define STATUS_LPC_RECEIVE_BUFFER_EXPECTED  ((NTSTATUS) 0xC0000705)
     957#define STATUS_LPC_INVALID_CONNECTION_USAGE ((NTSTATUS) 0xC0000706)
     958#define STATUS_LPC_REQUESTS_NOT_ALLOWED     ((NTSTATUS) 0xC0000707)
     959#define STATUS_RESOURCE_IN_USE              ((NTSTATUS) 0xC0000708)
     960#define STATUS_HARDWARE_MEMORY_ERROR        ((NTSTATUS) 0xC0000709)
     961#define STATUS_THREADPOOL_HANDLE_EXCEPTION  ((NTSTATUS) 0xC000070A)
     962#define STATUS_THREADPOOL_SET_EVENT_ON_COMPLETION_FAILED ((NTSTATUS) 0xC000070B)
     963#define STATUS_THREADPOOL_RELEASE_SEMAPHORE_ON_COMPLETION_FAILED ((NTSTATUS) 0xC000070C)
     964#define STATUS_THREADPOOL_RELEASE_MUTEX_ON_COMPLETION_FAILED ((NTSTATUS) 0xC000070D)
     965#define STATUS_THREADPOOL_FREE_LIBRARY_ON_COMPLETION_FAILED ((NTSTATUS) 0xC000070E)
     966#define STATUS_THREADPOOL_RELEASED_DURING_OPERATION ((NTSTATUS) 0xC000070F)
     967#define STATUS_CALLBACK_RETURNED_WHILE_IMPERSONATING ((NTSTATUS) 0xC0000710)
     968#define STATUS_APC_RETURNED_WHILE_IMPERSONATING ((NTSTATUS) 0xC0000711)
     969#define STATUS_PROCESS_IS_PROTECTED         ((NTSTATUS) 0xC0000712)
     970#define STATUS_MCA_EXCEPTION                ((NTSTATUS) 0xC0000713)
     971#define STATUS_CERTIFICATE_MAPPING_NOT_UNIQUE ((NTSTATUS) 0xC0000714)
     972#define STATUS_SYMLINK_CLASS_DISABLED       ((NTSTATUS) 0xC0000715)
     973#define STATUS_INVALID_IDN_NORMALIZATION    ((NTSTATUS) 0xC0000716)
     974#define STATUS_NO_UNICODE_TRANSLATION       ((NTSTATUS) 0xC0000717)
     975#define STATUS_ALREADY_REGISTERED           ((NTSTATUS) 0xC0000718)
     976#define STATUS_CONTEXT_MISMATCH             ((NTSTATUS) 0xC0000719)
     977#define STATUS_PORT_ALREADY_HAS_COMPLETION_LIST ((NTSTATUS) 0xC000071A)
     978#define STATUS_CALLBACK_RETURNED_THREAD_PRIORITY ((NTSTATUS) 0xC000071B)
     979#define STATUS_INVALID_THREAD               ((NTSTATUS) 0xC000071C)
     980#define STATUS_CALLBACK_RETURNED_TRANSACTION ((NTSTATUS) 0xC000071D)
     981#define STATUS_CALLBACK_RETURNED_LDR_LOCK   ((NTSTATUS) 0xC000071E)
     982#define STATUS_CALLBACK_RETURNED_LANG       ((NTSTATUS) 0xC000071F)
     983#define STATUS_CALLBACK_RETURNED_PRI_BACK   ((NTSTATUS) 0xC0000720)
     984#define STATUS_CALLBACK_RETURNED_THREAD_AFFINITY ((NTSTATUS) 0xC0000721)
     985#define STATUS_DISK_REPAIR_DISABLED         ((NTSTATUS) 0xC0000800)
     986#define STATUS_DS_DOMAIN_RENAME_IN_PROGRESS ((NTSTATUS) 0xC0000801)
     987#define STATUS_DISK_QUOTA_EXCEEDED          ((NTSTATUS) 0xC0000802)
     988#define STATUS_CONTENT_BLOCKED              ((NTSTATUS) 0xC0000804)
     989#define STATUS_BAD_CLUSTERS                 ((NTSTATUS) 0xC0000805)
     990#define STATUS_VOLUME_DIRTY                 ((NTSTATUS) 0xC0000806)
     991#define STATUS_FILE_CHECKED_OUT             ((NTSTATUS) 0xC0000901)
     992#define STATUS_CHECKOUT_REQUIRED            ((NTSTATUS) 0xC0000902)
     993#define STATUS_BAD_FILE_TYPE                ((NTSTATUS) 0xC0000903)
     994#define STATUS_FILE_TOO_LARGE               ((NTSTATUS) 0xC0000904)
     995#define STATUS_FORMS_AUTH_REQUIRED          ((NTSTATUS) 0xC0000905)
     996#define STATUS_VIRUS_INFECTED               ((NTSTATUS) 0xC0000906)
     997#define STATUS_VIRUS_DELETED                ((NTSTATUS) 0xC0000907)
     998#define STATUS_BAD_MCFG_TABLE               ((NTSTATUS) 0xC0000908)
     999
    9171000#define STATUS_WOW_ASSERTION             ((NTSTATUS) 0xC0009898)
    9181001
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/oaidl.h

    r25949 r28475  
    1 /*** Autogenerated by WIDL 1.1.36 from ../../include/oaidl.idl - Do not edit ***/
     1/*** Autogenerated by WIDL 1.1.43 from ../../include/oaidl.idl - Do not edit ***/
    22
    33#include <rpc.h>
     
    446446
    447447typedef struct tagIDLDESC {
    448     ULONG dwReserved;
     448    ULONG_PTR dwReserved;
    449449    USHORT wIDLFlags;
    450450} IDLDESC;
     
    509509    BSTR bstrHelpFile;
    510510    DWORD dwHelpContext;
    511     ULONG pvReserved;
    512     ULONG pfnDeferredFillIn;
     511    ULONG_PTR pvReserved;
     512    ULONG_PTR pfnDeferredFillIn;
    513513    SCODE scode;
    514514} EXCEPINFO;
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/oaidl.idl

    r20612 r28475  
    353353
    354354typedef struct tagIDLDESC {
    355   ULONG dwReserved;
     355  ULONG_PTR dwReserved;
    356356  USHORT wIDLFlags;
    357357} IDLDESC, *LPIDLDESC;
     
    414414  BSTR bstrHelpFile;
    415415  DWORD dwHelpContext;
    416   ULONG pvReserved;
    417   ULONG pfnDeferredFillIn;
     416  ULONG_PTR pvReserved;
     417  ULONG_PTR pfnDeferredFillIn;
    418418  SCODE scode;
    419419} EXCEPINFO;
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/objbase.h

    r19678 r28475  
    441441 */
    442442HRESULT WINAPI StringFromCLSID(REFCLSID id, LPOLESTR*);
    443 HRESULT WINAPI CLSIDFromString(LPOLESTR, CLSID *);
     443HRESULT WINAPI CLSIDFromString(LPCOLESTR, LPCLSID);
    444444HRESULT WINAPI CLSIDFromProgID(LPCOLESTR progid, LPCLSID riid);
    445445HRESULT WINAPI ProgIDFromCLSID(REFCLSID clsid, LPOLESTR *lplpszProgID);
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/objidl.h

    r25949 r28475  
    1 /*** Autogenerated by WIDL 1.1.36 from ../../include/objidl.idl - Do not edit ***/
     1/*** Autogenerated by WIDL 1.1.43 from ../../include/objidl.idl - Do not edit ***/
    22
    33#include <rpc.h>
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/objsel.h

    r16410 r28475  
    1515 *
    1616 */
     17
     18/*
     19 * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
     20 * other than GPL or LGPL is available it will apply instead, Sun elects to use only
     21 * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
     22 * a choice of LGPL license versions is made available with the language indicating
     23 * that LGPLv2 or any later version may be used, or where a choice of which version
     24 * of the LGPL is applied is otherwise unspecified.
     25 */
     26
    1727#ifndef __OBJSEL_H_
    1828#define __OBJSEL_H_
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/oledb.idl

    r25949 r28475  
    1616 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
    1717 */
    18 cpp_quote("#ifdef _WIN64")
     18
    1919/*
    2020 * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
     
    2626 */
    2727
     28cpp_quote("#ifdef _WIN64")
    2829cpp_quote("#include <pshpack8.h>")
    2930cpp_quote("#else")
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/oleidl.h

    r25949 r28475  
    1 /*** Autogenerated by WIDL 1.1.36 from ../../include/oleidl.idl - Do not edit ***/
     1/*** Autogenerated by WIDL 1.1.43 from ../../include/oleidl.idl - Do not edit ***/
    22
    33#include <rpc.h>
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/pdh.h

    r19678 r28475  
    4747typedef HANDLE PDH_HLOG;
    4848
     49#define PDH_CVERSION_WIN40  0x0400
     50#define PDH_CVERSION_WIN50  0x0500
     51#define PDH_VERSION         0x0503
     52
    4953#define PDH_MAX_SCALE 7
    5054#define PDH_MIN_SCALE (-7)
     
    5862#define PDH_FMT_1000        0x00002000
    5963#define PDH_FMT_NOCAP100    0x00008000
     64
     65#define DATA_SOURCE_REGISTRY    0x00000001
     66#define DATA_SOURCE_LOGFILE     0x00000002
     67#define DATA_SOURCE_WBEM        0x00000004
    6068
    6169typedef struct _PDH_FMT_COUNTERVALUE
     
    192200#define    PdhGetCounterInfo WINELIB_NAME_AW(PdhGetCounterInfo)
    193201PDH_STATUS WINAPI PdhGetCounterTimeBase(PDH_HCOUNTER, LONGLONG *);
     202PDH_STATUS WINAPI PdhGetDllVersion(LPDWORD);
    194203PDH_STATUS WINAPI PdhGetFormattedCounterValue(PDH_HCOUNTER, DWORD, LPDWORD, PPDH_FMT_COUNTERVALUE);
    195204PDH_STATUS WINAPI PdhGetRawCounterValue(PDH_HCOUNTER, LPDWORD, PPDH_RAW_COUNTER);
     
    208217PDH_STATUS WINAPI PdhRemoveCounter(PDH_HCOUNTER);
    209218PDH_STATUS WINAPI PdhSetCounterScaleFactor(PDH_HCOUNTER, LONG);
     219PDH_STATUS WINAPI PdhSetDefaultRealTimeDataSource(DWORD);
    210220PDH_STATUS WINAPI PdhValidatePathA(LPCSTR);
    211221PDH_STATUS WINAPI PdhValidatePathW(LPCWSTR);
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/propidl.h

    r25949 r28475  
    1 /*** Autogenerated by WIDL 1.1.36 from ../../include/propidl.idl - Do not edit ***/
     1/*** Autogenerated by WIDL 1.1.43 from ../../include/propidl.idl - Do not edit ***/
    22
    33#include <rpc.h>
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/raserror.h

    r16477 r28475  
    3333#define ERROR_BUFFER_INVALID                   (RASBASE+10)
    3434#define ERROR_INVALID_SIZE                     (RASBASE+32)
     35#define ERROR_STATE_MACHINES_NOT_STARTED       (RASBASE+95)
    3536#define ERROR_RASMAN_CANNOT_INITIALIZE         (RASBASE+111)
    3637
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/rpcasync.h

    r16477 r28475  
    2525 * of the LGPL is applied is otherwise unspecified.
    2626 */
     27
    2728#ifndef __WINE_RPCASYNC_H
    2829#define __WINE_RPCASYNC_H
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/schannel.h

    r20612 r28475  
    2525 * of the LGPL is applied is otherwise unspecified.
    2626 */
     27
    2728#ifndef __WINE_SCHANNEL_H__
    2829#define __WINE_SCHANNEL_H__
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/schnlsp.h

    r16477 r28475  
    2525 * of the LGPL is applied is otherwise unspecified.
    2626 */
     27
    2728#ifndef __WINE_SHNLSP_H__
    2829#define __WINE_SHNLSP_H__
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/sddl.h

    r16477 r28475  
    2525 * of the LGPL is applied is otherwise unspecified.
    2626 */
     27
    2728#ifndef __SDDL_H__
    2829#define __SDDL_H__
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/servprov.h

    r25949 r28475  
    1 /*** Autogenerated by WIDL 1.1.36 from ../../include/servprov.idl - Do not edit ***/
     1/*** Autogenerated by WIDL 1.1.43 from ../../include/servprov.idl - Do not edit ***/
    22
    33#include <rpc.h>
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/shlobj.h

    r25949 r28475  
    3333#include <prsht.h>
    3434#include <shlguid.h>
     35
     36#ifdef WINE_NO_UNICODE_MACROS
     37#undef GetObject
     38#endif
    3539
    3640#ifdef __cplusplus
     
    549553#endif
    550554
     555/****************************************************************************
     556 * IShellFolderView interface
     557 */
     558
     559typedef struct _ITEMSPACING
     560{
     561    int cxSmall;
     562    int cySmall;
     563    int cxLarge;
     564    int cyLarge;
     565} ITEMSPACING;
     566
     567#define INTERFACE IShellFolderView
     568DEFINE_GUID(IID_IShellFolderView,0x37a378c0,0xf82d,0x11ce,0xae,0x65,0x08,0x00,0x2b,0x2e,0x12,0x62);
     569DECLARE_INTERFACE_(IShellFolderView, IUnknown)
     570{
     571    /*** IUnknown methods ***/
     572    STDMETHOD_(HRESULT,QueryInterface) (THIS_ REFIID riid, void **ppv) PURE;
     573    STDMETHOD_(ULONG,AddRef) (THIS)  PURE;
     574    STDMETHOD_(ULONG,Release) (THIS) PURE;
     575
     576    /*** IShellFolderView methods ***/
     577    STDMETHOD(Rearrange) (THIS_ LPARAM lParamSort) PURE;
     578    STDMETHOD(GetArrangeParam) (THIS_ LPARAM *plParamSort) PURE;
     579    STDMETHOD(ArrangeGrid) (THIS) PURE;
     580    STDMETHOD(AutoArrange) (THIS) PURE;
     581    STDMETHOD(GetAutoArrange) (THIS) PURE;
     582    STDMETHOD(AddObject) (THIS_ PITEMID_CHILD pidl, UINT *puItem) PURE;
     583    STDMETHOD(GetObject) (THIS_ PITEMID_CHILD *ppidl, UINT uItem) PURE;
     584    STDMETHOD(RemoveObject) (THIS_ PITEMID_CHILD pidl, UINT *puItem) PURE;
     585    STDMETHOD(GetObjectCount) (THIS_ UINT *puCount) PURE;
     586    STDMETHOD(SetObjectCount) (THIS_ UINT uCount, UINT dwFlags) PURE;
     587    STDMETHOD(UpdateObject) (THIS_ PITEMID_CHILD pidlOld, PITEMID_CHILD pidlNew, UINT *puItem) PURE;
     588    STDMETHOD(RefreshObject) (THIS_ PITEMID_CHILD pidl, UINT *puItem) PURE;
     589    STDMETHOD(SetRedraw) (THIS_ BOOL bRedraw) PURE;
     590    STDMETHOD(GetSelectedCount) (THIS_ UINT *puSelected) PURE;
     591    STDMETHOD(GetSelectedObjects) (THIS_ PCITEMID_CHILD **pppidl, UINT *puItems) PURE;
     592    STDMETHOD(IsDropOnSource) (THIS_ IDropTarget *pDropTarget) PURE;
     593    STDMETHOD(GetDragPoint) (THIS_ POINT *ppt) PURE;
     594    STDMETHOD(GetDropPoint) (THIS_ POINT *ppt) PURE;
     595    STDMETHOD(MoveIcons) (THIS_ IDataObject *pDataObject) PURE;
     596    STDMETHOD(SetItemPos) (THIS_ PCUITEMID_CHILD pidl, POINT *ppt) PURE;
     597    STDMETHOD(IsBkDropTarget) (THIS_ IDropTarget *pDropTarget) PURE;
     598    STDMETHOD(SetClipboard) (THIS_ BOOL bMove) PURE;
     599    STDMETHOD(SetPoints) (THIS_ IDataObject *pDataObject) PURE;
     600    STDMETHOD(GetItemSpacing) (THIS_ ITEMSPACING *pSpacing) PURE;
     601    STDMETHOD(SetCallback) (THIS_ IShellFolderViewCB* pNewCB, IShellFolderViewCB** ppOldCB) PURE;
     602    STDMETHOD(Select) ( THIS_  UINT dwFlags ) PURE;
     603    STDMETHOD(QuerySupport) (THIS_ UINT * pdwSupport ) PURE;
     604    STDMETHOD(SetAutomationObject)(THIS_ IDispatch* pdisp) PURE;
     605};
     606#undef INTERFACE
     607
     608#if !defined(__cplusplus) || defined(CINTERFACE)
     609/*** IUnknown methods ***/
     610#define IShellFolderView_QueryInterface(p,a,b)      (p)->lpVtbl->QueryInterface(p,a,b)
     611#define IShellFolderView_AddRef(p)                  (p)->lpVtbl->AddRef(p)
     612#define IShellFolderView_Release(p)                 (p)->lpVtbl->Release(p)
     613/*** IShellFolderView methods ***/
     614#define IShellFolderView_Rearrange(p,a)             (p)->lpVtbl->Rearrange(p,a)
     615#define IShellFolderView_GetArrangeParam(p,a)       (p)->lpVtbl->GetArrangeParam(p,a)
     616#define IShellFolderView_ArrangeGrid(p)             (p)->lpVtbl->ArrangeGrid(p)
     617#define IShellFolderView_AutoArrange(p)             (p)->lpVtbl->AutoArrange(p)
     618#define IShellFolderView_GetAutoArrange(p)          (p)->lpVtbl->GetAutoArrange(p)
     619#define IShellFolderView_AddObject(p,a,b)           (p)->lpVtbl->AddObject(p,a,b)
     620#define IShellFolderView_GetObject(p,a,b)           (p)->lpVtbl->GetObject(p,a,b)
     621#define IShellFolderView_RemoveObject(p,a,b)        (p)->lpVtbl->RemoveObject(p,a,b)
     622#define IShellFolderView_GetObjectCount(p,a)        (p)->lpVtbl->GetObjectCount(p,a)
     623#define IShellFolderView_SetObjectCount(p,a,b)      (p)->lpVtbl->SetObjectCount(p,a,b)
     624#define IShellFolderView_UpdateObject(p,a,b,c)      (p)->lpVtbl->UpdateObject(p,a,b,c)
     625#define IShellFolderView_RefreshObject(p,a,b)       (p)->lpVtbl->RefreshObject(p,a,b)
     626#define IShellFolderView_SetRedraw(p,a)             (p)->lpVtbl->SetRedraw(p,a)
     627#define IShellFolderView_GetSelectedCount(p,a)      (p)->lpVtbl->GetSelectedCount(p,a)
     628#define IShellFolderView_GetSelectedObjects(p,a,b)  (p)->lpVtbl->GetSelectedObjects(p,a,b)
     629#define IShellFolderView_IsDropOnSource(p,a)        (p)->lpVtbl->IsDropOnSource(p,a)
     630#define IShellFolderView_GetDragPoint(p,a)          (p)->lpVtbl->GetDragPoint(p,a)
     631#define IShellFolderView_GetDropPoint(p,a)          (p)->lpVtbl->GetDropPoint(p,a)
     632#define IShellFolderView_MoveIcons(p,a)             (p)->lpVtbl->MoveIcons(p,a)
     633#define IShellFolderView_SetItemPos(p,a,b)          (p)->lpVtbl->SetItemPos(p,a,b)
     634#define IShellFolderView_DropTarget(p,a)            (p)->lpVtbl->DropTarget(p,a)
     635#define IShellFolderView_SetClipboard(p,a)          (p)->lpVtbl->SetClipboard(p,a)
     636#define IShellFolderView_SetPoints(p,a)             (p)->lpVtbl->SetPoints(p,a)
     637#define IShellFolderView_GetItemSpacing(p,a)        (p)->lpVtbl->GetItemSpacing(p,a)
     638#define IShellFolderView_SetCallback(p,a)           (p)->lpVtbl->SetCallback(p,a)
     639#define IShellFolderView_Select(p,a)                (p)->lpVtbl->Select(p,a)
     640#define IShellFolderView_QuerySupport(p,a)          (p)->lpVtbl->QuerySupport(p,a)
     641#define IShellFolderView_SetAutomationObject(p,a)   (p)->lpVtbl->SetAutomationObject(p,a)
     642#endif
     643
    551644/* IProgressDialog interface */
    552645#define PROGDLG_NORMAL           0x00000000
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/shlwapi.h

    r19678 r28475  
    9494
    9595HKEY WINAPI  SHRegDuplicateHKey(HKEY);
     96
     97/* SHRegGetValue flags */
     98typedef INT SRRF;
     99
     100#define SRRF_RT_REG_NONE 0x1
     101#define SRRF_RT_REG_SZ 0x2
     102#define SRRF_RT_REG_EXPAND_SZ 0x4
     103#define SRRF_RT_REG_BINARY 0x8
     104#define SRRF_RT_REG_DWORD 0x10
     105#define SRRF_RT_REG_MULTI_SZ 0x20
     106#define SRRF_RT_REG_QWORD 0x40
     107
     108#define SRRF_RT_DWORD (SRRF_RT_REG_BINARY|SRRF_RT_REG_DWORD)
     109#define SRRF_RT_QWORD (SRRF_RT_REG_BINARY|SRRF_RT_REG_QWORD)
     110#define SRRF_RT_ANY 0xffff
     111
     112#define SRRF_RM_ANY 0
     113#define SRRF_RM_NORMAL 0x10000
     114#define SRRF_RM_SAFE 0x20000
     115#define SRRF_RM_SAFENETWORK 0x40000
     116
     117#define SRRF_NOEXPAND 0x10000000
     118#define SRRF_ZEROONFAILURE 0x20000000
     119#define SRRF_NOVIRT 0x40000000
     120
     121LSTATUS WINAPI SHRegGetValueA(HKEY,LPCSTR,LPCSTR,SRRF,LPDWORD,LPVOID,LPDWORD);
     122LSTATUS WINAPI SHRegGetValueW(HKEY,LPCWSTR,LPCWSTR,SRRF,LPDWORD,LPVOID,LPDWORD);
     123#define SHRegGetValue WINELIB_NAME_AW(SHRegGetValue)
    96124
    97125/* Undocumented registry functions */
     
    10561084#define TPS_LONGEXECTIME 0x00000008
    10571085
     1086/* SHFormatDateTimeA/SHFormatDateTimeW flags */
     1087#define FDTF_SHORTTIME          0x00000001
     1088#define FDTF_SHORTDATE          0x00000002
     1089#define FDTF_DEFAULT            (FDTF_SHORTDATE | FDTF_SHORTTIME)
     1090#define FDTF_LONGDATE           0x00000004
     1091#define FDTF_LONGTIME           0x00000008
     1092#define FDTF_RELATIVE           0x00000010
     1093#define FDTF_LTRDATE            0x00000100
     1094#define FDTF_RTLDATE            0x00000200
     1095#define FDTF_NOAUTOREADINGORDER 0x00000400
     1096
     1097
     1098typedef struct
     1099{
     1100    const IID *piid;
     1101    int        dwOffset;
     1102} QITAB, *LPQITAB;
     1103
     1104HRESULT WINAPI QISearch(void* base, const QITAB *pqit, REFIID riid, void **ppv);
     1105
    10581106#include <poppack.h>
    10591107
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/shobjidl.idl

    r25949 r28475  
    545545}
    546546
     547/*****************************************************************************
     548 * IFolderView interface
     549 */
     550[
     551    uuid(cde725b0-ccc9-4519-917e-325d72fab4ce),
     552    object,
     553    pointer_default(unique)
     554]
     555interface IFolderView : IUnknown
     556{
     557    HRESULT GetCurrentViewMode( [out] UINT *mode );
     558    HRESULT SetCurrentViewMode( [in] UINT mode );
     559    HRESULT GetFolder( [in] REFIID riid, [out, iid_is(riid)] void **ppv );
     560    HRESULT Item(
     561        [in] int index,
     562        [out] PITEMID_CHILD *ppidl
     563    );
     564    HRESULT ItemCount(
     565        [in] UINT flags,
     566        [out] int *items
     567    );
     568    HRESULT Items(
     569        [in] UINT flags,
     570        [in] REFIID riid,
     571        [out, iid_is(riid)] void **ppv
     572    );
     573    HRESULT GetSelectionMarkedItem( [out] int *item );
     574    HRESULT GetFocusedItem( [out] int *item );
     575    HRESULT GetItemPosition(
     576        [in] PCUITEMID_CHILD pidl,
     577        [out] POINT* ppt
     578    );
     579    HRESULT GetSpacing( [in, out, unique] POINT* pt );
     580    HRESULT GetDefaultSpacing( [out] POINT* pt );
     581    HRESULT GetAutoArrange();
     582    HRESULT SelectItem(
     583        [in] int item,
     584        [in] DWORD flags
     585    );
     586    HRESULT SelectAndPositionItems(
     587        [in] UINT cidl,
     588        [in, size_is(cidl)] PCUITEMID_CHILD_ARRAY apidl,
     589        [in, unique, size_is(cidl)] POINT* apt,
     590        [in] DWORD flags
     591    );
     592}
    547593
    548594/*****************************************************************************
     
    14931539    HRESULT ResetEnumerator();
    14941540}
     1541
     1542[
     1543    object,
     1544    uuid(cb728b20-f786-11ce-92ad-00aa00a74cd0),
     1545    pointer_default(unique)
     1546]
     1547interface IProfferService : IUnknown
     1548{
     1549    HRESULT ProfferService(
     1550        [in] REFGUID service,
     1551        [in] IServiceProvider *pService,
     1552        [out] DWORD *pCookie);
     1553
     1554    HRESULT RevokeService([in] DWORD cookie);
     1555}
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/shtypes.idl

    r25949 r28475  
    4444} ITEMIDLIST,*LPITEMIDLIST;
    4545typedef const ITEMIDLIST *LPCITEMIDLIST;
     46typedef LPITEMIDLIST PITEMID_CHILD;
     47typedef const PITEMID_CHILD PCITEMID_CHILD;
     48typedef LPCITEMIDLIST PCUITEMID_CHILD;
     49typedef LPCITEMIDLIST *PCUITEMID_CHILD_ARRAY;
    4650cpp_quote("#include <poppack.h>")
    4751
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/slerror.h

    r16477 r28475  
    2626 * of the LGPL is applied is otherwise unspecified.
    2727 */
     28
    2829#ifndef __WINE_SLERROR_H
    2930#define __WINE_SLERROR_H
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/slpublic.h

    r16477 r28475  
    2626 * of the LGPL is applied is otherwise unspecified.
    2727 */
     28
    2829#ifndef __WINE_SLPUBLIC_H
    2930#define __WINE_SLPUBLIC_H
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/snmp.h

    r16477 r28475  
    2525 * of the LGPL is applied is otherwise unspecified.
    2626 */
     27
    2728#ifndef _WINE_SNMP_H
    2829#define _WINE_SNMP_H
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/sspi.h

    r19678 r28475  
    141141#define SECPKG_FLAG_DELEGATION             0x00020000
    142142#define SECPKG_FLAG_READONLY_WITH_CHECKSUM 0x00040000
     143
     144#define SECPKG_ID_NONE  0xffff
    143145
    144146typedef struct _SecBuffer
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/t2embapi.h

    r21731 r28475  
    4949                               LPVOID,LPWSTR,LPSTR,TTLOADINFO*);
    5050
     51/* embedding privileges */
     52#define EMBED_PREVIEWPRINT  1
     53#define EMBED_EDITABLE      2
     54#define EMBED_INSTALLABLE   3
     55#define EMBED_NOEMBEDDING   4
     56
     57LONG WINAPI TTGetEmbeddingType(HDC, ULONG*);
     58
    5159#ifdef __cplusplus
    5260}
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/twain.h

    r19678 r28475  
    4949    version 1.8  January 1999    Removed undocumented duplicate AUTO<cap> JMH
    5050\* ======================================================================== */
     51
     52/*
     53 * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
     54 * other than GPL or LGPL is available it will apply instead, Sun elects to use only
     55 * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
     56 * a choice of LGPL license versions is made available with the language indicating
     57 * that LGPLv2 or any later version may be used, or where a choice of which version
     58 * of the LGPL is applied is otherwise unspecified.
     59 */
    5160
    5261#ifndef TWAIN
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/unknwn.h

    r25949 r28475  
    1 /*** Autogenerated by WIDL 1.1.36 from ../../include/unknwn.idl - Do not edit ***/
     1/*** Autogenerated by WIDL 1.1.43 from ../../include/unknwn.idl - Do not edit ***/
    22
    33#include <rpc.h>
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/urlmon.h

    r25949 r28475  
    1 /*** Autogenerated by WIDL 1.1.36 from ../../include/urlmon.idl - Do not edit ***/
    2 
    3 /*
    4  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    5  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    6  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    7  * a choice of LGPL license versions is made available with the language indicating
    8  * that LGPLv2 or any later version may be used, or where a choice of which version
    9  * of the LGPL is applied is otherwise unspecified.
    10  */
     1/*** Autogenerated by WIDL 1.1.43 from ../../include/urlmon.idl - Do not edit ***/
    112
    123#include <rpc.h>
     
    184175#endif
    185176
     177#ifndef __IUriBuilder_FWD_DEFINED__
     178#define __IUriBuilder_FWD_DEFINED__
     179typedef interface IUriBuilder IUriBuilder;
     180#endif
     181
    186182#ifndef __IInternetProtocolEx_FWD_DEFINED__
    187183#define __IInternetProtocolEx_FWD_DEFINED__
     
    192188#ifdef WINE_NO_UNICODE_MACROS
    193189#undef GetUserName
     190#undef SetPort
    194191#endif
    195192#ifndef __IInternetProtocolSink_FWD_DEFINED__
     
    51345131#endif  /* __IUri_INTERFACE_DEFINED__ */
    51355132
     5133HRESULT WINAPI CreateUri(LPCWSTR,DWORD,DWORD_PTR,IUri**);
     5134HRESULT WINAPI CreateUriWithFragment(LPCWSTR,LPCWSTR,DWORD,DWORD_PTR,IUri**);
     5135HRESULT WINAPI CreateUriFromMultiByteString(LPCSTR,DWORD,DWORD,DWORD,DWORD_PTR,IUri**);
     5136#define Uri_HAS_ABSOLUTE_URI    (1 << Uri_PROPERTY_ABSOLUTE_URI)
     5137#define Uri_HAS_AUTHORITY       (1 << Uri_PROPERTY_AUTHORITY)
     5138#define Uri_HAS_DISPLAY_URI     (1 << Uri_PROPERTY_DISPLAY_URI)
     5139#define Uri_HAS_DOMAIN          (1 << Uri_PROPERTY_DOMAIN)
     5140#define Uri_HAS_EXTENSION       (1 << Uri_PROPERTY_EXTENSION)
     5141#define Uri_HAS_FRAGMENT        (1 << Uri_PROPERTY_FRAGMENT)
     5142#define Uri_HAS_HOST            (1 << Uri_PROPERTY_HOST)
     5143#define Uri_HAS_PASSWORD        (1 << Uri_PROPERTY_PASSWORD)
     5144#define Uri_HAS_PATH            (1 << Uri_PROPERTY_PATH)
     5145#define Uri_HAS_QUERY           (1 << Uri_PROPERTY_QUERY)
     5146#define Uri_HAS_RAW_URI         (1 << Uri_PROPERTY_RAW_URI)
     5147#define Uri_HAS_SCHEME_NAME     (1 << Uri_PROPERTY_SCHEME_NAME)
     5148#define Uri_HAS_USER_NAME       (1 << Uri_PROPERTY_USER_NAME)
     5149#define Uri_HAS_PATH_AND_QUERY  (1 << Uri_PROPERTY_PATH_AND_QUERY)
     5150#define Uri_HAS_USER_INFO       (1 << Uri_PROPERTY_USER_INFO)
     5151#define Uri_HAS_HOST_TYPE       (1 << Uri_PROPERTY_HOST_TYPE)
     5152#define Uri_HAS_PORT            (1 << Uri_PROPERTY_PORT)
     5153#define Uri_HAS_SCHEME          (1 << Uri_PROPERTY_SCHEME)
     5154#define Uri_HAS_ZONE            (1 << Uri_PROPERTY_ZONE)
     5155#define Uri_CREATE_ALLOW_RELATIVE                  0x0001
     5156#define Uri_CREATE_ALLOW_IMPLICIT_WILDCARD_SCHEME  0x0002
     5157#define Uri_CREATE_ALLOW_IMPLICIT_FILE_SCHEME      0x0004
     5158#define Uri_CREATE_NOFRAG                          0x0008
     5159#define Uri_CREATE_NO_CANONICALIZE                 0x0010
     5160#define Uri_CREATE_CANONICALIZE                    0x0100
     5161#define Uri_CREATE_FILE_USE_DOS_PATH               0x0020
     5162#define Uri_CREATE_DECODE_EXTRA_INFO               0x0040
     5163#define Uri_CREATE_NO_DECODE_EXTRA_INFO            0x0080
     5164#define Uri_CREATE_CRACK_UNKNOWN_SCHEMES           0x0200
     5165#define Uri_CREATE_NO_CRACK_UNKNOWN_SCHEMES        0x0400
     5166#define Uri_CREATE_PRE_PROCESS_HTML_URI            0x0800
     5167#define Uri_CREATE_NO_PRE_PROCESS_HTML_URI         0x1000
     5168#define Uri_CREATE_IE_SETTINGS                     0x2000
     5169#define Uri_CREATE_NO_IE_SETTINGS                  0x4000
     5170#define Uri_CREATE_NO_ENCODE_FORBIDDEN_CHARACTERS  0x8000
     5171#define Uri_DISPLAY_NO_FRAGMENT  0x00000001
     5172#define Uri_PUNYCODE_IDN_HOST    0x00000002
     5173#define Uri_DISPLAY_IDN_HOST     0x00000004
     5174#define Uri_ENCODING_USER_INFO_AND_PATH_IS_PERCENT_ENCODED_UTF8   0x00000001
     5175#define Uri_ENCODING_USER_INFO_AND_PATH_IS_CP                     0x00000002
     5176#define Uri_ENCODING_HOST_IS_IDN                                  0x00000004
     5177#define Uri_ENCODING_HOST_IS_PERCENT_ENCODED_UTF8                 0x00000008
     5178#define Uri_ENCODING_HOST_IS_PERCENT_ENCODED_CP                   0x00000010
     5179#define Uri_ENCODING_QUERY_AND_FRAGMENT_IS_PERCENT_ENCODED_UTF8   0x00000020
     5180#define Uri_ENCODING_QUERY_AND_FRAGMENT_IS_CP                     0x00000040
     5181#define Uri_ENCODING_RFC (Uri_ENCODING_USER_INFO_AND_PATH_IS_PERCENT_ENCODED_UTF8|Uri_ENCODING_HOST_IS_PERCENT_ENCODED_UTF8|Uri_ENCODING_QUERY_AND_FRAGMENT_IS_PERCENT_ENCODED_UTF8)
     5182#define UriBuilder_USE_ORIGINAL_FLAGS  0x00000001
    51365183/*****************************************************************************
    51375184 * IUriContainer interface
     
    51965243
    51975244#endif  /* __IUriContainer_INTERFACE_DEFINED__ */
     5245
     5246/*****************************************************************************
     5247 * IUriBuilder interface
     5248 */
     5249#ifndef __IUriBuilder_INTERFACE_DEFINED__
     5250#define __IUriBuilder_INTERFACE_DEFINED__
     5251
     5252DEFINE_GUID(IID_IUriBuilder, 0x4221b2e1, 0x8955, 0x46c0, 0xbd,0x5b, 0xde,0x98,0x97,0x56,0x5d,0xe7);
     5253#if defined(__cplusplus) && !defined(CINTERFACE)
     5254interface IUriBuilder : public IUnknown
     5255{
     5256    virtual HRESULT STDMETHODCALLTYPE CreateUriSimple(
     5257        DWORD dwAllowEncodingPropertyMask,
     5258        DWORD_PTR dwReserved,
     5259        IUri **ppIUri) = 0;
     5260
     5261    virtual HRESULT STDMETHODCALLTYPE CreateUri(
     5262        DWORD dwCreateFlags,
     5263        DWORD dwAllowEncodingPropertyMask,
     5264        DWORD_PTR dwReserved,
     5265        IUri **ppIUri) = 0;
     5266
     5267    virtual HRESULT STDMETHODCALLTYPE CreateUriWithFlags(
     5268        DWORD dwCreateFlags,
     5269        DWORD dwUriBuilderFlags,
     5270        DWORD dwAllowEncodingPropertyMask,
     5271        DWORD_PTR dwReserved,
     5272        IUri **ppIUri) = 0;
     5273
     5274    virtual HRESULT STDMETHODCALLTYPE GetIUri(
     5275        IUri **ppIUri) = 0;
     5276
     5277    virtual HRESULT STDMETHODCALLTYPE SetIUri(
     5278        IUri *pIUri) = 0;
     5279
     5280    virtual HRESULT STDMETHODCALLTYPE GetFragment(
     5281        DWORD *pcchFragment,
     5282        LPCWSTR *ppwzFragment) = 0;
     5283
     5284    virtual HRESULT STDMETHODCALLTYPE GetHost(
     5285        DWORD *pcchHost,
     5286        LPCWSTR *ppwzHost) = 0;
     5287
     5288    virtual HRESULT STDMETHODCALLTYPE GetPassword(
     5289        DWORD *pcchPassword,
     5290        LPCWSTR *ppwzPassword) = 0;
     5291
     5292    virtual HRESULT STDMETHODCALLTYPE GetPath(
     5293        DWORD *pcchPath,
     5294        LPCWSTR *ppwzPath) = 0;
     5295
     5296    virtual HRESULT STDMETHODCALLTYPE GetPort(
     5297        BOOL *pfHasPort,
     5298        DWORD *pdwPort) = 0;
     5299
     5300    virtual HRESULT STDMETHODCALLTYPE GetQuery(
     5301        DWORD *pcchQuery,
     5302        LPCWSTR *ppwzQuery) = 0;
     5303
     5304    virtual HRESULT STDMETHODCALLTYPE GetSchemeName(
     5305        DWORD *pcchSchemeName,
     5306        LPCWSTR *ppwzSchemeName) = 0;
     5307
     5308    virtual HRESULT STDMETHODCALLTYPE GetUserName(
     5309        DWORD *pcchUserName,
     5310        LPCWSTR *ppwzUserName) = 0;
     5311
     5312    virtual HRESULT STDMETHODCALLTYPE SetFragment(
     5313        LPCWSTR pwzNewValue) = 0;
     5314
     5315    virtual HRESULT STDMETHODCALLTYPE SetHost(
     5316        LPCWSTR pwzNewValue) = 0;
     5317
     5318    virtual HRESULT STDMETHODCALLTYPE SetPassword(
     5319        LPCWSTR pwzNewValue) = 0;
     5320
     5321    virtual HRESULT STDMETHODCALLTYPE SetPath(
     5322        LPCWSTR pwzNewValue) = 0;
     5323
     5324    virtual HRESULT STDMETHODCALLTYPE SetPort(
     5325        BOOL fHasPort,
     5326        DWORD dwNewValue) = 0;
     5327
     5328    virtual HRESULT STDMETHODCALLTYPE SetQuery(
     5329        LPCWSTR pwzNewValue) = 0;
     5330
     5331    virtual HRESULT STDMETHODCALLTYPE SetSchemeName(
     5332        LPCWSTR pwzNewValue) = 0;
     5333
     5334    virtual HRESULT STDMETHODCALLTYPE SetUserName(
     5335        LPCWSTR pwzNewValue) = 0;
     5336
     5337    virtual HRESULT STDMETHODCALLTYPE RemoveProperties(
     5338        DWORD dwPropertyMask) = 0;
     5339
     5340    virtual HRESULT STDMETHODCALLTYPE HasBeenModified(
     5341        BOOL *pfModified) = 0;
     5342
     5343};
     5344#else
     5345typedef struct IUriBuilderVtbl {
     5346    BEGIN_INTERFACE
     5347
     5348    /*** IUnknown methods ***/
     5349    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
     5350        IUriBuilder* This,
     5351        REFIID riid,
     5352        void **ppvObject);
     5353
     5354    ULONG (STDMETHODCALLTYPE *AddRef)(
     5355        IUriBuilder* This);
     5356
     5357    ULONG (STDMETHODCALLTYPE *Release)(
     5358        IUriBuilder* This);
     5359
     5360    /*** IUriBuilder methods ***/
     5361    HRESULT (STDMETHODCALLTYPE *CreateUriSimple)(
     5362        IUriBuilder* This,
     5363        DWORD dwAllowEncodingPropertyMask,
     5364        DWORD_PTR dwReserved,
     5365        IUri **ppIUri);
     5366
     5367    HRESULT (STDMETHODCALLTYPE *CreateUri)(
     5368        IUriBuilder* This,
     5369        DWORD dwCreateFlags,
     5370        DWORD dwAllowEncodingPropertyMask,
     5371        DWORD_PTR dwReserved,
     5372        IUri **ppIUri);
     5373
     5374    HRESULT (STDMETHODCALLTYPE *CreateUriWithFlags)(
     5375        IUriBuilder* This,
     5376        DWORD dwCreateFlags,
     5377        DWORD dwUriBuilderFlags,
     5378        DWORD dwAllowEncodingPropertyMask,
     5379        DWORD_PTR dwReserved,
     5380        IUri **ppIUri);
     5381
     5382    HRESULT (STDMETHODCALLTYPE *GetIUri)(
     5383        IUriBuilder* This,
     5384        IUri **ppIUri);
     5385
     5386    HRESULT (STDMETHODCALLTYPE *SetIUri)(
     5387        IUriBuilder* This,
     5388        IUri *pIUri);
     5389
     5390    HRESULT (STDMETHODCALLTYPE *GetFragment)(
     5391        IUriBuilder* This,
     5392        DWORD *pcchFragment,
     5393        LPCWSTR *ppwzFragment);
     5394
     5395    HRESULT (STDMETHODCALLTYPE *GetHost)(
     5396        IUriBuilder* This,
     5397        DWORD *pcchHost,
     5398        LPCWSTR *ppwzHost);
     5399
     5400    HRESULT (STDMETHODCALLTYPE *GetPassword)(
     5401        IUriBuilder* This,
     5402        DWORD *pcchPassword,
     5403        LPCWSTR *ppwzPassword);
     5404
     5405    HRESULT (STDMETHODCALLTYPE *GetPath)(
     5406        IUriBuilder* This,
     5407        DWORD *pcchPath,
     5408        LPCWSTR *ppwzPath);
     5409
     5410    HRESULT (STDMETHODCALLTYPE *GetPort)(
     5411        IUriBuilder* This,
     5412        BOOL *pfHasPort,
     5413        DWORD *pdwPort);
     5414
     5415    HRESULT (STDMETHODCALLTYPE *GetQuery)(
     5416        IUriBuilder* This,
     5417        DWORD *pcchQuery,
     5418        LPCWSTR *ppwzQuery);
     5419
     5420    HRESULT (STDMETHODCALLTYPE *GetSchemeName)(
     5421        IUriBuilder* This,
     5422        DWORD *pcchSchemeName,
     5423        LPCWSTR *ppwzSchemeName);
     5424
     5425    HRESULT (STDMETHODCALLTYPE *GetUserName)(
     5426        IUriBuilder* This,
     5427        DWORD *pcchUserName,
     5428        LPCWSTR *ppwzUserName);
     5429
     5430    HRESULT (STDMETHODCALLTYPE *SetFragment)(
     5431        IUriBuilder* This,
     5432        LPCWSTR pwzNewValue);
     5433
     5434    HRESULT (STDMETHODCALLTYPE *SetHost)(
     5435        IUriBuilder* This,
     5436        LPCWSTR pwzNewValue);
     5437
     5438    HRESULT (STDMETHODCALLTYPE *SetPassword)(
     5439        IUriBuilder* This,
     5440        LPCWSTR pwzNewValue);
     5441
     5442    HRESULT (STDMETHODCALLTYPE *SetPath)(
     5443        IUriBuilder* This,
     5444        LPCWSTR pwzNewValue);
     5445
     5446    HRESULT (STDMETHODCALLTYPE *SetPort)(
     5447        IUriBuilder* This,
     5448        BOOL fHasPort,
     5449        DWORD dwNewValue);
     5450
     5451    HRESULT (STDMETHODCALLTYPE *SetQuery)(
     5452        IUriBuilder* This,
     5453        LPCWSTR pwzNewValue);
     5454
     5455    HRESULT (STDMETHODCALLTYPE *SetSchemeName)(
     5456        IUriBuilder* This,
     5457        LPCWSTR pwzNewValue);
     5458
     5459    HRESULT (STDMETHODCALLTYPE *SetUserName)(
     5460        IUriBuilder* This,
     5461        LPCWSTR pwzNewValue);
     5462
     5463    HRESULT (STDMETHODCALLTYPE *RemoveProperties)(
     5464        IUriBuilder* This,
     5465        DWORD dwPropertyMask);
     5466
     5467    HRESULT (STDMETHODCALLTYPE *HasBeenModified)(
     5468        IUriBuilder* This,
     5469        BOOL *pfModified);
     5470
     5471    END_INTERFACE
     5472} IUriBuilderVtbl;
     5473interface IUriBuilder {
     5474    CONST_VTBL IUriBuilderVtbl* lpVtbl;
     5475};
     5476
     5477#ifdef COBJMACROS
     5478/*** IUnknown methods ***/
     5479#define IUriBuilder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
     5480#define IUriBuilder_AddRef(This) (This)->lpVtbl->AddRef(This)
     5481#define IUriBuilder_Release(This) (This)->lpVtbl->Release(This)
     5482/*** IUriBuilder methods ***/
     5483#define IUriBuilder_CreateUriSimple(This,dwAllowEncodingPropertyMask,dwReserved,ppIUri) (This)->lpVtbl->CreateUriSimple(This,dwAllowEncodingPropertyMask,dwReserved,ppIUri)
     5484#define IUriBuilder_CreateUri(This,dwCreateFlags,dwAllowEncodingPropertyMask,dwReserved,ppIUri) (This)->lpVtbl->CreateUri(This,dwCreateFlags,dwAllowEncodingPropertyMask,dwReserved,ppIUri)
     5485#define IUriBuilder_CreateUriWithFlags(This,dwCreateFlags,dwUriBuilderFlags,dwAllowEncodingPropertyMask,dwReserved,ppIUri) (This)->lpVtbl->CreateUriWithFlags(This,dwCreateFlags,dwUriBuilderFlags,dwAllowEncodingPropertyMask,dwReserved,ppIUri)
     5486#define IUriBuilder_GetIUri(This,ppIUri) (This)->lpVtbl->GetIUri(This,ppIUri)
     5487#define IUriBuilder_SetIUri(This,pIUri) (This)->lpVtbl->SetIUri(This,pIUri)
     5488#define IUriBuilder_GetFragment(This,pcchFragment,ppwzFragment) (This)->lpVtbl->GetFragment(This,pcchFragment,ppwzFragment)
     5489#define IUriBuilder_GetHost(This,pcchHost,ppwzHost) (This)->lpVtbl->GetHost(This,pcchHost,ppwzHost)
     5490#define IUriBuilder_GetPassword(This,pcchPassword,ppwzPassword) (This)->lpVtbl->GetPassword(This,pcchPassword,ppwzPassword)
     5491#define IUriBuilder_GetPath(This,pcchPath,ppwzPath) (This)->lpVtbl->GetPath(This,pcchPath,ppwzPath)
     5492#define IUriBuilder_GetPort(This,pfHasPort,pdwPort) (This)->lpVtbl->GetPort(This,pfHasPort,pdwPort)
     5493#define IUriBuilder_GetQuery(This,pcchQuery,ppwzQuery) (This)->lpVtbl->GetQuery(This,pcchQuery,ppwzQuery)
     5494#define IUriBuilder_GetSchemeName(This,pcchSchemeName,ppwzSchemeName) (This)->lpVtbl->GetSchemeName(This,pcchSchemeName,ppwzSchemeName)
     5495#define IUriBuilder_GetUserName(This,pcchUserName,ppwzUserName) (This)->lpVtbl->GetUserName(This,pcchUserName,ppwzUserName)
     5496#define IUriBuilder_SetFragment(This,pwzNewValue) (This)->lpVtbl->SetFragment(This,pwzNewValue)
     5497#define IUriBuilder_SetHost(This,pwzNewValue) (This)->lpVtbl->SetHost(This,pwzNewValue)
     5498#define IUriBuilder_SetPassword(This,pwzNewValue) (This)->lpVtbl->SetPassword(This,pwzNewValue)
     5499#define IUriBuilder_SetPath(This,pwzNewValue) (This)->lpVtbl->SetPath(This,pwzNewValue)
     5500#define IUriBuilder_SetPort(This,fHasPort,dwNewValue) (This)->lpVtbl->SetPort(This,fHasPort,dwNewValue)
     5501#define IUriBuilder_SetQuery(This,pwzNewValue) (This)->lpVtbl->SetQuery(This,pwzNewValue)
     5502#define IUriBuilder_SetSchemeName(This,pwzNewValue) (This)->lpVtbl->SetSchemeName(This,pwzNewValue)
     5503#define IUriBuilder_SetUserName(This,pwzNewValue) (This)->lpVtbl->SetUserName(This,pwzNewValue)
     5504#define IUriBuilder_RemoveProperties(This,dwPropertyMask) (This)->lpVtbl->RemoveProperties(This,dwPropertyMask)
     5505#define IUriBuilder_HasBeenModified(This,pfModified) (This)->lpVtbl->HasBeenModified(This,pfModified)
     5506#endif
     5507
     5508#endif
     5509
     5510HRESULT STDMETHODCALLTYPE IUriBuilder_CreateUriSimple_Proxy(
     5511    IUriBuilder* This,
     5512    DWORD dwAllowEncodingPropertyMask,
     5513    DWORD_PTR dwReserved,
     5514    IUri **ppIUri);
     5515void __RPC_STUB IUriBuilder_CreateUriSimple_Stub(
     5516    IRpcStubBuffer* This,
     5517    IRpcChannelBuffer* pRpcChannelBuffer,
     5518    PRPC_MESSAGE pRpcMessage,
     5519    DWORD* pdwStubPhase);
     5520HRESULT STDMETHODCALLTYPE IUriBuilder_CreateUri_Proxy(
     5521    IUriBuilder* This,
     5522    DWORD dwCreateFlags,
     5523    DWORD dwAllowEncodingPropertyMask,
     5524    DWORD_PTR dwReserved,
     5525    IUri **ppIUri);
     5526void __RPC_STUB IUriBuilder_CreateUri_Stub(
     5527    IRpcStubBuffer* This,
     5528    IRpcChannelBuffer* pRpcChannelBuffer,
     5529    PRPC_MESSAGE pRpcMessage,
     5530    DWORD* pdwStubPhase);
     5531HRESULT STDMETHODCALLTYPE IUriBuilder_CreateUriWithFlags_Proxy(
     5532    IUriBuilder* This,
     5533    DWORD dwCreateFlags,
     5534    DWORD dwUriBuilderFlags,
     5535    DWORD dwAllowEncodingPropertyMask,
     5536    DWORD_PTR dwReserved,
     5537    IUri **ppIUri);
     5538void __RPC_STUB IUriBuilder_CreateUriWithFlags_Stub(
     5539    IRpcStubBuffer* This,
     5540    IRpcChannelBuffer* pRpcChannelBuffer,
     5541    PRPC_MESSAGE pRpcMessage,
     5542    DWORD* pdwStubPhase);
     5543HRESULT STDMETHODCALLTYPE IUriBuilder_GetIUri_Proxy(
     5544    IUriBuilder* This,
     5545    IUri **ppIUri);
     5546void __RPC_STUB IUriBuilder_GetIUri_Stub(
     5547    IRpcStubBuffer* This,
     5548    IRpcChannelBuffer* pRpcChannelBuffer,
     5549    PRPC_MESSAGE pRpcMessage,
     5550    DWORD* pdwStubPhase);
     5551HRESULT STDMETHODCALLTYPE IUriBuilder_SetIUri_Proxy(
     5552    IUriBuilder* This,
     5553    IUri *pIUri);
     5554void __RPC_STUB IUriBuilder_SetIUri_Stub(
     5555    IRpcStubBuffer* This,
     5556    IRpcChannelBuffer* pRpcChannelBuffer,
     5557    PRPC_MESSAGE pRpcMessage,
     5558    DWORD* pdwStubPhase);
     5559HRESULT STDMETHODCALLTYPE IUriBuilder_GetFragment_Proxy(
     5560    IUriBuilder* This,
     5561    DWORD *pcchFragment,
     5562    LPCWSTR *ppwzFragment);
     5563void __RPC_STUB IUriBuilder_GetFragment_Stub(
     5564    IRpcStubBuffer* This,
     5565    IRpcChannelBuffer* pRpcChannelBuffer,
     5566    PRPC_MESSAGE pRpcMessage,
     5567    DWORD* pdwStubPhase);
     5568HRESULT STDMETHODCALLTYPE IUriBuilder_GetHost_Proxy(
     5569    IUriBuilder* This,
     5570    DWORD *pcchHost,
     5571    LPCWSTR *ppwzHost);
     5572void __RPC_STUB IUriBuilder_GetHost_Stub(
     5573    IRpcStubBuffer* This,
     5574    IRpcChannelBuffer* pRpcChannelBuffer,
     5575    PRPC_MESSAGE pRpcMessage,
     5576    DWORD* pdwStubPhase);
     5577HRESULT STDMETHODCALLTYPE IUriBuilder_GetPassword_Proxy(
     5578    IUriBuilder* This,
     5579    DWORD *pcchPassword,
     5580    LPCWSTR *ppwzPassword);
     5581void __RPC_STUB IUriBuilder_GetPassword_Stub(
     5582    IRpcStubBuffer* This,
     5583    IRpcChannelBuffer* pRpcChannelBuffer,
     5584    PRPC_MESSAGE pRpcMessage,
     5585    DWORD* pdwStubPhase);
     5586HRESULT STDMETHODCALLTYPE IUriBuilder_GetPath_Proxy(
     5587    IUriBuilder* This,
     5588    DWORD *pcchPath,
     5589    LPCWSTR *ppwzPath);
     5590void __RPC_STUB IUriBuilder_GetPath_Stub(
     5591    IRpcStubBuffer* This,
     5592    IRpcChannelBuffer* pRpcChannelBuffer,
     5593    PRPC_MESSAGE pRpcMessage,
     5594    DWORD* pdwStubPhase);
     5595HRESULT STDMETHODCALLTYPE IUriBuilder_GetPort_Proxy(
     5596    IUriBuilder* This,
     5597    BOOL *pfHasPort,
     5598    DWORD *pdwPort);
     5599void __RPC_STUB IUriBuilder_GetPort_Stub(
     5600    IRpcStubBuffer* This,
     5601    IRpcChannelBuffer* pRpcChannelBuffer,
     5602    PRPC_MESSAGE pRpcMessage,
     5603    DWORD* pdwStubPhase);
     5604HRESULT STDMETHODCALLTYPE IUriBuilder_GetQuery_Proxy(
     5605    IUriBuilder* This,
     5606    DWORD *pcchQuery,
     5607    LPCWSTR *ppwzQuery);
     5608void __RPC_STUB IUriBuilder_GetQuery_Stub(
     5609    IRpcStubBuffer* This,
     5610    IRpcChannelBuffer* pRpcChannelBuffer,
     5611    PRPC_MESSAGE pRpcMessage,
     5612    DWORD* pdwStubPhase);
     5613HRESULT STDMETHODCALLTYPE IUriBuilder_GetSchemeName_Proxy(
     5614    IUriBuilder* This,
     5615    DWORD *pcchSchemeName,
     5616    LPCWSTR *ppwzSchemeName);
     5617void __RPC_STUB IUriBuilder_GetSchemeName_Stub(
     5618    IRpcStubBuffer* This,
     5619    IRpcChannelBuffer* pRpcChannelBuffer,
     5620    PRPC_MESSAGE pRpcMessage,
     5621    DWORD* pdwStubPhase);
     5622HRESULT STDMETHODCALLTYPE IUriBuilder_GetUserName_Proxy(
     5623    IUriBuilder* This,
     5624    DWORD *pcchUserName,
     5625    LPCWSTR *ppwzUserName);
     5626void __RPC_STUB IUriBuilder_GetUserName_Stub(
     5627    IRpcStubBuffer* This,
     5628    IRpcChannelBuffer* pRpcChannelBuffer,
     5629    PRPC_MESSAGE pRpcMessage,
     5630    DWORD* pdwStubPhase);
     5631HRESULT STDMETHODCALLTYPE IUriBuilder_SetFragment_Proxy(
     5632    IUriBuilder* This,
     5633    LPCWSTR pwzNewValue);
     5634void __RPC_STUB IUriBuilder_SetFragment_Stub(
     5635    IRpcStubBuffer* This,
     5636    IRpcChannelBuffer* pRpcChannelBuffer,
     5637    PRPC_MESSAGE pRpcMessage,
     5638    DWORD* pdwStubPhase);
     5639HRESULT STDMETHODCALLTYPE IUriBuilder_SetHost_Proxy(
     5640    IUriBuilder* This,
     5641    LPCWSTR pwzNewValue);
     5642void __RPC_STUB IUriBuilder_SetHost_Stub(
     5643    IRpcStubBuffer* This,
     5644    IRpcChannelBuffer* pRpcChannelBuffer,
     5645    PRPC_MESSAGE pRpcMessage,
     5646    DWORD* pdwStubPhase);
     5647HRESULT STDMETHODCALLTYPE IUriBuilder_SetPassword_Proxy(
     5648    IUriBuilder* This,
     5649    LPCWSTR pwzNewValue);
     5650void __RPC_STUB IUriBuilder_SetPassword_Stub(
     5651    IRpcStubBuffer* This,
     5652    IRpcChannelBuffer* pRpcChannelBuffer,
     5653    PRPC_MESSAGE pRpcMessage,
     5654    DWORD* pdwStubPhase);
     5655HRESULT STDMETHODCALLTYPE IUriBuilder_SetPath_Proxy(
     5656    IUriBuilder* This,
     5657    LPCWSTR pwzNewValue);
     5658void __RPC_STUB IUriBuilder_SetPath_Stub(
     5659    IRpcStubBuffer* This,
     5660    IRpcChannelBuffer* pRpcChannelBuffer,
     5661    PRPC_MESSAGE pRpcMessage,
     5662    DWORD* pdwStubPhase);
     5663HRESULT STDMETHODCALLTYPE IUriBuilder_SetPort_Proxy(
     5664    IUriBuilder* This,
     5665    BOOL fHasPort,
     5666    DWORD dwNewValue);
     5667void __RPC_STUB IUriBuilder_SetPort_Stub(
     5668    IRpcStubBuffer* This,
     5669    IRpcChannelBuffer* pRpcChannelBuffer,
     5670    PRPC_MESSAGE pRpcMessage,
     5671    DWORD* pdwStubPhase);
     5672HRESULT STDMETHODCALLTYPE IUriBuilder_SetQuery_Proxy(
     5673    IUriBuilder* This,
     5674    LPCWSTR pwzNewValue);
     5675void __RPC_STUB IUriBuilder_SetQuery_Stub(
     5676    IRpcStubBuffer* This,
     5677    IRpcChannelBuffer* pRpcChannelBuffer,
     5678    PRPC_MESSAGE pRpcMessage,
     5679    DWORD* pdwStubPhase);
     5680HRESULT STDMETHODCALLTYPE IUriBuilder_SetSchemeName_Proxy(
     5681    IUriBuilder* This,
     5682    LPCWSTR pwzNewValue);
     5683void __RPC_STUB IUriBuilder_SetSchemeName_Stub(
     5684    IRpcStubBuffer* This,
     5685    IRpcChannelBuffer* pRpcChannelBuffer,
     5686    PRPC_MESSAGE pRpcMessage,
     5687    DWORD* pdwStubPhase);
     5688HRESULT STDMETHODCALLTYPE IUriBuilder_SetUserName_Proxy(
     5689    IUriBuilder* This,
     5690    LPCWSTR pwzNewValue);
     5691void __RPC_STUB IUriBuilder_SetUserName_Stub(
     5692    IRpcStubBuffer* This,
     5693    IRpcChannelBuffer* pRpcChannelBuffer,
     5694    PRPC_MESSAGE pRpcMessage,
     5695    DWORD* pdwStubPhase);
     5696HRESULT STDMETHODCALLTYPE IUriBuilder_RemoveProperties_Proxy(
     5697    IUriBuilder* This,
     5698    DWORD dwPropertyMask);
     5699void __RPC_STUB IUriBuilder_RemoveProperties_Stub(
     5700    IRpcStubBuffer* This,
     5701    IRpcChannelBuffer* pRpcChannelBuffer,
     5702    PRPC_MESSAGE pRpcMessage,
     5703    DWORD* pdwStubPhase);
     5704HRESULT STDMETHODCALLTYPE IUriBuilder_HasBeenModified_Proxy(
     5705    IUriBuilder* This,
     5706    BOOL *pfModified);
     5707void __RPC_STUB IUriBuilder_HasBeenModified_Stub(
     5708    IRpcStubBuffer* This,
     5709    IRpcChannelBuffer* pRpcChannelBuffer,
     5710    PRPC_MESSAGE pRpcMessage,
     5711    DWORD* pdwStubPhase);
     5712
     5713#endif  /* __IUriBuilder_INTERFACE_DEFINED__ */
    51985714
    51995715/*****************************************************************************
     
    53855901HRESULT WINAPI CoGetClassObjectFromURL(REFCLSID, LPCWSTR, DWORD, DWORD, LPCWSTR, LPBINDCTX, DWORD, LPVOID, REFIID, LPVOID*);
    53865902HRESULT WINAPI CreateURLMoniker(IMoniker *pmkContext, LPCWSTR szURL, IMoniker **ppmk);
     5903HRESULT WINAPI CreateURLMonikerEx(IMoniker*,LPCWSTR,IMoniker**,DWORD);
     5904HRESULT WINAPI CreateURLMonikerEx2(IMoniker*,IUri*,IMoniker**,DWORD);
    53875905HRESULT WINAPI RegisterBindStatusCallback(IBindCtx *pbc, IBindStatusCallback *pbsc, IBindStatusCallback **ppbsc, DWORD dwReserved);
    53885906HRESULT WINAPI CompareSecurityIds(BYTE*,DWORD,BYTE*,DWORD,DWORD);
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/urlmon.idl

    r25949 r28475  
    3434cpp_quote("#ifdef WINE_NO_UNICODE_MACROS")
    3535cpp_quote("#undef GetUserName")
     36cpp_quote("#undef SetPort")
    3637cpp_quote("#endif")
    3738
     
    16561657}
    16571658
     1659cpp_quote("HRESULT WINAPI CreateUri(LPCWSTR,DWORD,DWORD_PTR,IUri**);")
     1660cpp_quote("HRESULT WINAPI CreateUriWithFragment(LPCWSTR,LPCWSTR,DWORD,DWORD_PTR,IUri**);")
     1661cpp_quote("HRESULT WINAPI CreateUriFromMultiByteString(LPCSTR,DWORD,DWORD,DWORD,DWORD_PTR,IUri**);")
     1662
     1663cpp_quote("#define Uri_HAS_ABSOLUTE_URI    (1 << Uri_PROPERTY_ABSOLUTE_URI)")
     1664cpp_quote("#define Uri_HAS_AUTHORITY       (1 << Uri_PROPERTY_AUTHORITY)")
     1665cpp_quote("#define Uri_HAS_DISPLAY_URI     (1 << Uri_PROPERTY_DISPLAY_URI)")
     1666cpp_quote("#define Uri_HAS_DOMAIN          (1 << Uri_PROPERTY_DOMAIN)")
     1667cpp_quote("#define Uri_HAS_EXTENSION       (1 << Uri_PROPERTY_EXTENSION)")
     1668cpp_quote("#define Uri_HAS_FRAGMENT        (1 << Uri_PROPERTY_FRAGMENT)")
     1669cpp_quote("#define Uri_HAS_HOST            (1 << Uri_PROPERTY_HOST)")
     1670cpp_quote("#define Uri_HAS_PASSWORD        (1 << Uri_PROPERTY_PASSWORD)")
     1671cpp_quote("#define Uri_HAS_PATH            (1 << Uri_PROPERTY_PATH)")
     1672cpp_quote("#define Uri_HAS_QUERY           (1 << Uri_PROPERTY_QUERY)")
     1673cpp_quote("#define Uri_HAS_RAW_URI         (1 << Uri_PROPERTY_RAW_URI)")
     1674cpp_quote("#define Uri_HAS_SCHEME_NAME     (1 << Uri_PROPERTY_SCHEME_NAME)")
     1675cpp_quote("#define Uri_HAS_USER_NAME       (1 << Uri_PROPERTY_USER_NAME)")
     1676cpp_quote("#define Uri_HAS_PATH_AND_QUERY  (1 << Uri_PROPERTY_PATH_AND_QUERY)")
     1677cpp_quote("#define Uri_HAS_USER_INFO       (1 << Uri_PROPERTY_USER_INFO)")
     1678cpp_quote("#define Uri_HAS_HOST_TYPE       (1 << Uri_PROPERTY_HOST_TYPE)")
     1679cpp_quote("#define Uri_HAS_PORT            (1 << Uri_PROPERTY_PORT)")
     1680cpp_quote("#define Uri_HAS_SCHEME          (1 << Uri_PROPERTY_SCHEME)")
     1681cpp_quote("#define Uri_HAS_ZONE            (1 << Uri_PROPERTY_ZONE)")
     1682
     1683cpp_quote("#define Uri_CREATE_ALLOW_RELATIVE                  0x0001")
     1684cpp_quote("#define Uri_CREATE_ALLOW_IMPLICIT_WILDCARD_SCHEME  0x0002")
     1685cpp_quote("#define Uri_CREATE_ALLOW_IMPLICIT_FILE_SCHEME      0x0004")
     1686cpp_quote("#define Uri_CREATE_NOFRAG                          0x0008")
     1687cpp_quote("#define Uri_CREATE_NO_CANONICALIZE                 0x0010")
     1688cpp_quote("#define Uri_CREATE_CANONICALIZE                    0x0100")
     1689cpp_quote("#define Uri_CREATE_FILE_USE_DOS_PATH               0x0020")
     1690cpp_quote("#define Uri_CREATE_DECODE_EXTRA_INFO               0x0040")
     1691cpp_quote("#define Uri_CREATE_NO_DECODE_EXTRA_INFO            0x0080")
     1692cpp_quote("#define Uri_CREATE_CRACK_UNKNOWN_SCHEMES           0x0200")
     1693cpp_quote("#define Uri_CREATE_NO_CRACK_UNKNOWN_SCHEMES        0x0400")
     1694cpp_quote("#define Uri_CREATE_PRE_PROCESS_HTML_URI            0x0800")
     1695cpp_quote("#define Uri_CREATE_NO_PRE_PROCESS_HTML_URI         0x1000")
     1696cpp_quote("#define Uri_CREATE_IE_SETTINGS                     0x2000")
     1697cpp_quote("#define Uri_CREATE_NO_IE_SETTINGS                  0x4000")
     1698cpp_quote("#define Uri_CREATE_NO_ENCODE_FORBIDDEN_CHARACTERS  0x8000")
     1699
     1700cpp_quote("#define Uri_DISPLAY_NO_FRAGMENT  0x00000001")
     1701cpp_quote("#define Uri_PUNYCODE_IDN_HOST    0x00000002")
     1702cpp_quote("#define Uri_DISPLAY_IDN_HOST     0x00000004")
     1703
     1704cpp_quote("#define Uri_ENCODING_USER_INFO_AND_PATH_IS_PERCENT_ENCODED_UTF8   0x00000001")
     1705cpp_quote("#define Uri_ENCODING_USER_INFO_AND_PATH_IS_CP                     0x00000002")
     1706cpp_quote("#define Uri_ENCODING_HOST_IS_IDN                                  0x00000004")
     1707cpp_quote("#define Uri_ENCODING_HOST_IS_PERCENT_ENCODED_UTF8                 0x00000008")
     1708cpp_quote("#define Uri_ENCODING_HOST_IS_PERCENT_ENCODED_CP                   0x00000010")
     1709cpp_quote("#define Uri_ENCODING_QUERY_AND_FRAGMENT_IS_PERCENT_ENCODED_UTF8   0x00000020")
     1710cpp_quote("#define Uri_ENCODING_QUERY_AND_FRAGMENT_IS_CP                     0x00000040")
     1711cpp_quote("#define Uri_ENCODING_RFC (Uri_ENCODING_USER_INFO_AND_PATH_IS_PERCENT_ENCODED_UTF8|Uri_ENCODING_HOST_IS_PERCENT_ENCODED_UTF8|Uri_ENCODING_QUERY_AND_FRAGMENT_IS_PERCENT_ENCODED_UTF8)")
     1712
     1713cpp_quote("#define UriBuilder_USE_ORIGINAL_FLAGS  0x00000001")
     1714
    16581715/*****************************************************************************
    16591716 * IUriContainer interface
     
    16691726    HRESULT GetIUri([out] IUri **ppIUri);
    16701727}
     1728
     1729/*****************************************************************************
     1730 * IUriBuilder interface
     1731 */
     1732[
     1733    local,
     1734    object,
     1735    uuid(4221b2e1-8955-46c0-bd5b-de9897565de7),
     1736    pointer_default(unique)
     1737]
     1738interface IUriBuilder: IUnknown
     1739{
     1740    HRESULT CreateUriSimple(
     1741        [in]  DWORD       dwAllowEncodingPropertyMask,
     1742        [in]  DWORD_PTR   dwReserved,
     1743        [out] IUri      **ppIUri);
     1744
     1745    HRESULT CreateUri(
     1746        [in]  DWORD       dwCreateFlags,
     1747        [in]  DWORD       dwAllowEncodingPropertyMask,
     1748        [in]  DWORD_PTR   dwReserved,
     1749        [out] IUri      **ppIUri);
     1750
     1751    HRESULT CreateUriWithFlags(
     1752        [in]  DWORD       dwCreateFlags,
     1753        [in]  DWORD       dwUriBuilderFlags,
     1754        [in]  DWORD       dwAllowEncodingPropertyMask,
     1755        [in]  DWORD_PTR   dwReserved,
     1756        [out] IUri      **ppIUri);
     1757
     1758    HRESULT GetIUri(
     1759        [out] IUri **ppIUri);
     1760
     1761    HRESULT SetIUri(
     1762        [in, unique] IUri *pIUri);
     1763
     1764    HRESULT GetFragment(
     1765        [out] DWORD   *pcchFragment,
     1766        [out] LPCWSTR *ppwzFragment);
     1767
     1768    HRESULT GetHost(
     1769        [out] DWORD   *pcchHost,
     1770        [out] LPCWSTR *ppwzHost);
     1771
     1772    HRESULT GetPassword(
     1773        [out] DWORD   *pcchPassword,
     1774        [out] LPCWSTR *ppwzPassword);
     1775
     1776    HRESULT GetPath(
     1777        [out] DWORD   *pcchPath,
     1778        [out] LPCWSTR *ppwzPath);
     1779
     1780    HRESULT GetPort(
     1781        [out] BOOL  *pfHasPort,
     1782        [out] DWORD *pdwPort);
     1783
     1784    HRESULT GetQuery(
     1785        [out] DWORD   *pcchQuery,
     1786        [out] LPCWSTR *ppwzQuery);
     1787
     1788    HRESULT GetSchemeName(
     1789        [out] DWORD   *pcchSchemeName,
     1790        [out] LPCWSTR *ppwzSchemeName);
     1791
     1792    HRESULT GetUserName(
     1793        [out] DWORD   *pcchUserName,
     1794        [out] LPCWSTR *ppwzUserName);
     1795
     1796    HRESULT SetFragment(
     1797        [in] LPCWSTR pwzNewValue);
     1798
     1799    HRESULT SetHost(
     1800        [in] LPCWSTR pwzNewValue);
     1801
     1802    HRESULT SetPassword(
     1803        [in] LPCWSTR pwzNewValue);
     1804
     1805    HRESULT SetPath(
     1806        [in] LPCWSTR pwzNewValue);
     1807
     1808    HRESULT SetPort(
     1809        [in] BOOL  fHasPort,
     1810        [in] DWORD dwNewValue);
     1811
     1812    HRESULT SetQuery(
     1813        [in] LPCWSTR pwzNewValue);
     1814
     1815    HRESULT SetSchemeName(
     1816        [in] LPCWSTR pwzNewValue);
     1817
     1818    HRESULT SetUserName(
     1819        [in] LPCWSTR pwzNewValue);
     1820
     1821    HRESULT RemoveProperties(
     1822        [in] DWORD dwPropertyMask);
     1823
     1824    HRESULT HasBeenModified(
     1825        [out] BOOL *pfModified);
     1826};
    16711827
    16721828/*****************************************************************************
     
    17501906cpp_quote("HRESULT WINAPI CoGetClassObjectFromURL(REFCLSID, LPCWSTR, DWORD, DWORD, LPCWSTR, LPBINDCTX, DWORD, LPVOID, REFIID, LPVOID*);")
    17511907cpp_quote("HRESULT WINAPI CreateURLMoniker(IMoniker *pmkContext, LPCWSTR szURL, IMoniker **ppmk);")
     1908cpp_quote("HRESULT WINAPI CreateURLMonikerEx(IMoniker*,LPCWSTR,IMoniker**,DWORD);")
     1909cpp_quote("HRESULT WINAPI CreateURLMonikerEx2(IMoniker*,IUri*,IMoniker**,DWORD);")
    17521910cpp_quote("HRESULT WINAPI RegisterBindStatusCallback(IBindCtx *pbc, IBindStatusCallback *pbsc, IBindStatusCallback **ppbsc, DWORD dwReserved);")
    17531911cpp_quote("HRESULT WINAPI CompareSecurityIds(BYTE*,DWORD,BYTE*,DWORD,DWORD);")
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/userenv.h

    r16477 r28475  
    4141
    4242BOOL WINAPI CreateEnvironmentBlock(LPVOID*,HANDLE,BOOL);
     43BOOL WINAPI DestroyEnvironmentBlock(LPVOID);
    4344BOOL WINAPI ExpandEnvironmentStringsForUserA(HANDLE,LPCSTR,LPSTR,DWORD);
    4445BOOL WINAPI ExpandEnvironmentStringsForUserW(HANDLE,LPCWSTR,LPWSTR,DWORD);
     
    5051BOOL WINAPI GetProfilesDirectoryW(LPWSTR,LPDWORD);
    5152#define     GetProfilesDirectory WINELIB_NAME_AW(GetProfilesDirectory)
     53BOOL WINAPI GetAllUsersProfileDirectoryA(LPSTR,LPDWORD);
     54BOOL WINAPI GetAllUsersProfileDirectoryW(LPWSTR,LPDWORD);
     55#define     GetAllUsersProfileDirectory WINELIB_NAME_AW(GetAllUsersProfileDirectory)
    5256BOOL WINAPI GetProfileType(DWORD*);
    5357BOOL WINAPI LoadUserProfileA(HANDLE,LPPROFILEINFOA);
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/usp10.h

    r16477 r28475  
    109109  DWORD fNumericOverride        :1;
    110110  DWORD fLegacyBidiClass        :1;
    111   DWORD fReserved               :8;
     111  DWORD fMergeNeutralItems      :1;
     112  DWORD fReserved               :7;
    112113} SCRIPT_CONTROL;
    113114
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/uuids.h

    r16477 r28475  
    145145OUR_GUID_ENTRY(CLSID_AVIDoc,                         0xd3588ab0, 0x0781, 0x11ce, 0xb0, 0x3a, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70)
    146146OUR_GUID_ENTRY(CLSID_AVIDocWriter,                   0xd3588ab1, 0x0781, 0x11ce, 0xb0, 0x3a, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70)
     147OUR_GUID_ENTRY(CLSID_SampleGrabber,                  0xc1f400a0, 0x3f08, 0x11d3, 0x9f, 0x0b, 0x00, 0x60, 0x08, 0x03, 0x9e, 0x37)
    147148OUR_GUID_ENTRY(CLSID_NullRenderer,                   0xc1f400a4, 0x3f08, 0x11d3, 0x9f, 0x0b, 0x00, 0x60, 0x08, 0x03, 0x9e, 0x37)
    148149OUR_GUID_ENTRY(CLSID_VideoRenderer,                  0x70e102b0, 0x5556, 0x11ce, 0x97, 0xc0, 0x00, 0xaa, 0x00, 0x55, 0x59, 0x5a)
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/ver.h

    r16477 r28475  
    2929 * of the LGPL is applied is otherwise unspecified.
    3030 */
     31
    3132#ifndef __WINE_VER_H
    3233#define __WINE_VER_H
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wfext.h

    r16477 r28475  
    2525 * of the LGPL is applied is otherwise unspecified.
    2626 */
     27
    2728#ifndef __WINE_WFEXT_H
    2829#define __WINE_WFEXT_H
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/winbase.h

    r25949 r28475  
    17721772WINBASEAPI DWORD       WINAPI GetTimeZoneInformation(LPTIME_ZONE_INFORMATION);
    17731773WINBASEAPI BOOL        WINAPI GetThreadContext(HANDLE,CONTEXT *);
     1774WINBASEAPI DWORD       WINAPI GetThreadErrorMode(void);
    17741775WINBASEAPI INT         WINAPI GetThreadPriority(HANDLE);
    17751776WINBASEAPI BOOL        WINAPI GetThreadPriorityBoost(HANDLE,PBOOL);
     
    21062107WINBASEAPI DWORD_PTR   WINAPI SetThreadAffinityMask(HANDLE,DWORD_PTR);
    21072108WINBASEAPI BOOL        WINAPI SetThreadContext(HANDLE,const CONTEXT *);
     2109WINBASEAPI BOOL        WINAPI SetThreadErrorMode(DWORD,LPDWORD);
    21082110WINBASEAPI DWORD       WINAPI SetThreadExecutionState(EXECUTION_STATE);
    21092111WINBASEAPI DWORD       WINAPI SetThreadIdealProcessor(HANDLE,DWORD);
     
    23842386}
    23852387
     2388WINBASEAPI LONGLONG WINAPI InterlockedCompareExchange64(LONGLONG volatile*,LONGLONG,LONGLONG);
     2389
    23862390#else  /* __i386__ */
    23872391
     
    24122416}
    24132417
     2418static inline LONGLONG WINAPI InterlockedCompareExchange64( LONGLONG volatile *dest, LONGLONG xchg, LONGLONG compare )
     2419{
     2420#if defined(__x86_64__) && defined(__GNUC__)
     2421    LONGLONG ret;
     2422    __asm__ __volatile__( "lock; cmpxchgq %2,(%1)"
     2423                          : "=a" (ret) : "r" (dest), "r" (xchg), "0" (compare) : "memory" );
     2424    return ret;
     2425#else
     2426    extern __int64 interlocked_cmpxchg64( __int64 *dest, __int64 xchg, __int64 compare );
     2427    return interlocked_cmpxchg64( (__int64 *)dest, xchg, compare );
     2428#endif
     2429}
     2430
    24142431static inline LONG WINAPI InterlockedExchange( LONG volatile *dest, LONG val )
    24152432{
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wincodec.idl

    r23571 r28475  
    8282} WICBitmapEncoderCacheOption;
    8383
     84typedef enum WICBitmapInterpolationMode {
     85    WICBitmapInterpolationModeNearestNeighbor = 0x00000000,
     86    WICBitmapInterpolationModeLinear = 0x00000001,
     87    WICBitmapInterpolationModeCubic = 0x00000002,
     88    WICBitmapInterpolationModeFaint = 0x00000003,
     89    WICBITMAPINTERPOLATIONMODE_FORCE_DWORD = CODEC_FORCE_DWORD
     90} WICBitmapInterpolationMode;
     91
    8492typedef enum WICBitmapPaletteType {
    8593    WICBitmapPaletteTypeCustom = 0x00000000,
     
    179187cpp_quote("#define WINCODEC_ERR_INSUFFICIENTBUFFER 0x88982f8c")
    180188
    181 interface IWICBitmap;
    182189interface IWICPalette;
    183 interface IWICBitmapScaler;
    184 interface IWICBitmapClipper;
    185190interface IWICBitmapFlipRotator;
    186191interface IWICColorContext;
     
    215220        [in] UINT cbBufferSize,
    216221        [out, size_is(cbBufferSize)] BYTE *pbBuffer);
     222}
     223
     224[
     225    object,
     226    uuid(00000123-a8f2-4877-ba0a-fd2b6645fb94)
     227]
     228interface IWICBitmapLock : IUnknown
     229{
     230    HRESULT GetSize(
     231        [out] UINT *pWidth,
     232        [out] UINT *pHeight);
     233
     234    HRESULT GetStride(
     235        [out] UINT *pcbStride);
     236
     237    HRESULT GetDataPointer(
     238        [out] UINT *pcbBufferSize,
     239        [out, size_is(,*pcbBufferSize)] BYTE **ppbData);
     240
     241    HRESULT GetPixelFormat(
     242        [out] WICPixelFormatGUID *pPixelFormat);
     243}
     244
     245[
     246    object,
     247    uuid(00000121-a8f2-4877-ba0a-fd2b6645fb94)
     248]
     249interface IWICBitmap : IWICBitmapSource
     250{
     251    HRESULT Lock(
     252        [in] const WICRect *prcLock,
     253        [in] DWORD flags,
     254        [out] IWICBitmapLock **ppILock);
     255
     256    HRESULT SetPalette(
     257        [in] IWICPalette *pIPalette);
     258
     259    HRESULT SetResolution(
     260        [in] double dpiX,
     261        [in] double dpiY);
    217262}
    218263
     
    594639        [in] ULARGE_INTEGER ulOffset,
    595640        [in] ULARGE_INTEGER ulMaxSize);
     641}
     642
     643[
     644    object,
     645    uuid(00000302-a8f2-4877-ba0a-fd2b6645fb94)
     646]
     647interface IWICBitmapScaler : IWICBitmapSource
     648{
     649    HRESULT Initialize(
     650        [in] IWICBitmapSource *pISource,
     651        [in] UINT uiWidth,
     652        [in] UINT uiHeight,
     653        [in] WICBitmapInterpolationMode mode);
     654}
     655
     656[
     657    object,
     658    uuid(e4fbcf03-223d-4e81-9333-d635556dd1b5)
     659]
     660interface IWICBitmapClipper : IWICBitmapSource
     661{
     662    HRESULT Initialize(
     663        [in] IWICBitmapSource *pISource,
     664        [in] const WICRect *prc);
    596665}
    597666
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wincrypt.h

    r25949 r28475  
    27922792#define szOID_RSA_SHA1RSA                   "1.2.840.113549.1.1.5"
    27932793#define szOID_RSA_SET0AEP_RSA               "1.2.840.113549.1.1.6"
     2794#define szOID_RSA_SHA256RSA                 "1.2.840.113549.1.1.11"
     2795#define szOID_RSA_SHA384RSA                 "1.2.840.113549.1.1.12"
     2796#define szOID_RSA_SHA512RSA                 "1.2.840.113549.1.1.13"
    27942797#define szOID_RSA_DH                        "1.2.840.113549.1.3.1"
    27952798#define szOID_RSA_data                      "1.2.840.113549.1.7.1"
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wine/dcetypes.idl

    r22496 r28475  
    1717 * License along with this library; if not, write to the Free Software
    1818 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
    19  */
    20 
    21 /*
    22  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    23  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    24  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    25  * a choice of LGPL license versions is made available with the language indicating
    26  * that LGPLv2 or any later version may be used, or where a choice of which version
    27  * of the LGPL is applied is otherwise unspecified.
    2819 */
    2920
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wine/epm.idl

    r22496 r28475  
    1717 * License along with this library; if not, write to the Free Software
    1818 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
    19  */
    20 
    21 /*
    22  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    23  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    24  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    25  * a choice of LGPL license versions is made available with the language indicating
    26  * that LGPLv2 or any later version may be used, or where a choice of which version
    27  * of the LGPL is applied is otherwise unspecified.
    2819 */
    2920
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wine/exception.h

    r21731 r28475  
    103103#define siglongjmp(buf,val) longjmp(buf,val)
    104104#endif
     105
     106extern void __wine_rtl_unwind( EXCEPTION_REGISTRATION_RECORD* frame, EXCEPTION_RECORD *record,
     107                               void (*target)(void) ) DECLSPEC_HIDDEN DECLSPEC_NORETURN;
     108extern DWORD __wine_exception_handler( EXCEPTION_RECORD *record,
     109                                       EXCEPTION_REGISTRATION_RECORD *frame,
     110                                       CONTEXT *context,
     111                                       EXCEPTION_REGISTRATION_RECORD **pdispatcher ) DECLSPEC_HIDDEN;
     112extern DWORD __wine_exception_handler_page_fault( EXCEPTION_RECORD *record,
     113                                                  EXCEPTION_REGISTRATION_RECORD *frame,
     114                                                  CONTEXT *context,
     115                                                  EXCEPTION_REGISTRATION_RECORD **pdispatcher ) DECLSPEC_HIDDEN;
     116extern DWORD __wine_exception_handler_all( EXCEPTION_RECORD *record,
     117                                           EXCEPTION_REGISTRATION_RECORD *frame,
     118                                           CONTEXT *context,
     119                                           EXCEPTION_REGISTRATION_RECORD **pdispatcher ) DECLSPEC_HIDDEN;
     120extern DWORD __wine_finally_handler( EXCEPTION_RECORD *record,
     121                                     EXCEPTION_REGISTRATION_RECORD *frame,
     122                                     CONTEXT *context,
     123                                     EXCEPTION_REGISTRATION_RECORD **pdispatcher ) DECLSPEC_HIDDEN;
    105124
    106125#define __TRY \
     
    256275extern void __wine_enter_vm86( CONTEXT *context );
    257276
    258 #ifndef USE_COMPILER_EXCEPTIONS
    259 
    260 NTSYSAPI void WINAPI RtlUnwind(PVOID,PVOID,PEXCEPTION_RECORD,PVOID);
    261 
    262 static inline void DECLSPEC_NORETURN __wine_unwind_target(void)
    263 {
    264     __WINE_FRAME *wine_frame = (__WINE_FRAME *)__wine_get_frame();
    265     __wine_pop_frame( &wine_frame->frame );
    266     siglongjmp( wine_frame->jmp, 1 );
    267 }
    268 
    269 /* wrapper for RtlUnwind since it clobbers registers on Windows */
    270 static inline void DECLSPEC_NORETURN __wine_rtl_unwind( EXCEPTION_REGISTRATION_RECORD* frame,
    271                                                         EXCEPTION_RECORD *record,
    272                                                         void (*target)(void) )
    273 {
    274 #if defined(__GNUC__) && defined(__i386__)
    275     int dummy1, dummy2, dummy3, dummy4;
    276     __asm__ __volatile__("pushl %%ebp\n\t"
    277                          "pushl %%ebx\n\t"
    278                          "pushl $0\n\t"
    279                          "pushl %3\n\t"
    280                          "pushl %2\n\t"
    281                          "pushl %1\n\t"
    282                          "call *%0\n\t"
    283                          "popl %%ebx\n\t"
    284                          "popl %%ebp"
    285                          : "=a" (dummy1), "=S" (dummy2), "=D" (dummy3), "=c" (dummy4)
    286                          : "0" (RtlUnwind), "1" (frame), "2" (target), "3" (record)
    287                          : "edx", "memory" );
    288 #else
    289     RtlUnwind( frame, target, record, 0 );
    290 #endif
    291     for (;;) target();
    292 }
    293 
    294 static inline void DECLSPEC_NORETURN __wine_unwind_frame( EXCEPTION_RECORD *record,
    295                                                           EXCEPTION_REGISTRATION_RECORD *frame )
    296 {
    297     __WINE_FRAME *wine_frame = (__WINE_FRAME *)frame;
    298 
    299     /* hack to make GetExceptionCode() work in handler */
    300     wine_frame->ExceptionCode   = record->ExceptionCode;
    301     wine_frame->ExceptionRecord = wine_frame;
    302 
    303     __wine_rtl_unwind( frame, record, __wine_unwind_target );
    304 }
    305 
    306 static inline DWORD __wine_exception_handler( EXCEPTION_RECORD *record,
    307                                               EXCEPTION_REGISTRATION_RECORD *frame,
    308                                               CONTEXT *context,
    309                                               EXCEPTION_REGISTRATION_RECORD **pdispatcher )
    310 {
    311     __WINE_FRAME *wine_frame = (__WINE_FRAME *)frame;
    312     EXCEPTION_POINTERS ptrs;
    313 
    314     if (record->ExceptionFlags & (EH_UNWINDING | EH_EXIT_UNWIND | EH_NESTED_CALL))
    315         return ExceptionContinueSearch;
    316 
    317     ptrs.ExceptionRecord = record;
    318     ptrs.ContextRecord = context;
    319     switch(wine_frame->u.filter( &ptrs ))
    320     {
    321     case EXCEPTION_CONTINUE_SEARCH:
    322         return ExceptionContinueSearch;
    323     case EXCEPTION_CONTINUE_EXECUTION:
    324         return ExceptionContinueExecution;
    325     case EXCEPTION_EXECUTE_HANDLER:
    326         break;
    327     }
    328     __wine_unwind_frame( record, frame );
    329 }
    330 
    331 static inline DWORD __wine_exception_handler_page_fault( EXCEPTION_RECORD *record,
    332                                                          EXCEPTION_REGISTRATION_RECORD *frame,
    333                                                          CONTEXT *context,
    334                                                          EXCEPTION_REGISTRATION_RECORD **pdispatcher )
    335 {
    336     if (record->ExceptionFlags & (EH_UNWINDING | EH_EXIT_UNWIND | EH_NESTED_CALL))
    337         return ExceptionContinueSearch;
    338     if (record->ExceptionCode != STATUS_ACCESS_VIOLATION)
    339         return ExceptionContinueSearch;
    340     __wine_unwind_frame( record, frame );
    341 }
    342 
    343 static inline DWORD __wine_exception_handler_all( EXCEPTION_RECORD *record,
    344                                                   EXCEPTION_REGISTRATION_RECORD *frame,
    345                                                   CONTEXT *context,
    346                                                   EXCEPTION_REGISTRATION_RECORD **pdispatcher )
    347 {
    348     if (record->ExceptionFlags & (EH_UNWINDING | EH_EXIT_UNWIND | EH_NESTED_CALL))
    349         return ExceptionContinueSearch;
    350     __wine_unwind_frame( record, frame );
    351 }
    352 
    353 static inline DWORD __wine_finally_handler( EXCEPTION_RECORD *record,
    354                                             EXCEPTION_REGISTRATION_RECORD *frame,
    355                                             CONTEXT *context,
    356                                             EXCEPTION_REGISTRATION_RECORD **pdispatcher )
    357 {
    358     if (record->ExceptionFlags & (EH_UNWINDING | EH_EXIT_UNWIND))
    359     {
    360         __WINE_FRAME *wine_frame = (__WINE_FRAME *)frame;
    361         wine_frame->u.finally_func( FALSE );
    362     }
    363     return ExceptionContinueSearch;
    364 }
    365 
    366 #endif /* USE_COMPILER_EXCEPTIONS */
    367 
    368277#ifdef __cplusplus
    369278}
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wine/irot.idl

    r22496 r28475  
    1515 * License along with this library; if not, write to the Free Software
    1616 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
    17  */
    18 
    19 /*
    20  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    21  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    22  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    23  * a choice of LGPL license versions is made available with the language indicating
    24  * that LGPLv2 or any later version may be used, or where a choice of which version
    25  * of the LGPL is applied is otherwise unspecified.
    2617 */
    2718
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wine/itss.idl

    r22496 r28475  
    1515 * License along with this library; if not, write to the Free Software
    1616 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
    17  */
    18 
    19 /*
    20  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    21  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    22  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    23  * a choice of LGPL license versions is made available with the language indicating
    24  * that LGPLv2 or any later version may be used, or where a choice of which version
    25  * of the LGPL is applied is otherwise unspecified.
    2617 */
    2718
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wine/library.h

    r25949 r28475  
    1717 * License along with this library; if not, write to the Free Software
    1818 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
    19  */
    20 
    21 /*
    22  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    23  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    24  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    25  * a choice of LGPL license versions is made available with the language indicating
    26  * that LGPLv2 or any later version may be used, or where a choice of which version
    27  * of the LGPL is applied is otherwise unspecified.
    2819 */
    2920
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wine/pthread.h

    r22496 r28475  
    1717 * License along with this library; if not, write to the Free Software
    1818 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
    19  */
    20 
    21 /*
    22  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    23  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    24  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    25  * a choice of LGPL license versions is made available with the language indicating
    26  * that LGPLv2 or any later version may be used, or where a choice of which version
    27  * of the LGPL is applied is otherwise unspecified.
    28  */
    29 
    30 /*
    31  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    32  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    33  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    34  * a choice of LGPL license versions is made available with the language indicating
    35  * that LGPLv2 or any later version may be used, or where a choice of which version
    36  * of the LGPL is applied is otherwise unspecified.
    37  */
    38 
    39 /*
    40  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    41  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    42  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    43  * a choice of LGPL license versions is made available with the language indicating
    44  * that LGPLv2 or any later version may be used, or where a choice of which version
    45  * of the LGPL is applied is otherwise unspecified.
    46  */
    47 
    48 /*
    49  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    50  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    51  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    52  * a choice of LGPL license versions is made available with the language indicating
    53  * that LGPLv2 or any later version may be used, or where a choice of which version
    54  * of the LGPL is applied is otherwise unspecified.
    5519 */
    5620
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wine/server_protocol.h

    r25949 r28475  
    152152        struct { unsigned int eip, ebp, esp, eflags, cs, ss; } i386_regs;
    153153        struct { unsigned __int64 rip, rbp, rsp;
    154                  unsigned int cs, ss, flags; } x86_64_regs;
     154                 unsigned int cs, ss, flags, __pad; } x86_64_regs;
    155155        struct { unsigned __int64 fir;
    156                  unsigned int psr; } alpha_regs;
    157         struct { unsigned int iar, msr, ctr, lr, dar, dsisr, trap; } powerpc_regs;
     156                 unsigned int psr, __pad; } alpha_regs;
     157        struct { unsigned int iar, msr, ctr, lr, dar, dsisr, trap, __pad; } powerpc_regs;
    158158        struct { unsigned int psr, pc, npc, y, wim, tbr; } sparc_regs;
    159159    } ctl;
     
    735735    int          priority;
    736736    cpu_type_t   cpu;
    737     char __pad_60[4];
     737    int          debugger_present;
    738738};
    739739
     
    46664666    struct reply_header __header;
    46674667};
     4668
     4669
     4670
     4671struct set_cursor_request
     4672{
     4673    struct request_header __header;
     4674    unsigned int   flags;
     4675    user_handle_t  handle;
     4676    int            show_count;
     4677};
     4678struct set_cursor_reply
     4679{
     4680    struct reply_header __header;
     4681    user_handle_t  prev_handle;
     4682    int            prev_count;
     4683};
     4684#define SET_CURSOR_HANDLE 0x01
     4685#define SET_CURSOR_COUNT  0x02
    46684686
    46694687
     
    49114929    REQ_alloc_user_handle,
    49124930    REQ_free_user_handle,
     4931    REQ_set_cursor,
    49134932    REQ_NB_REQUESTS
    49144933};
     
    51595178    struct alloc_user_handle_request alloc_user_handle_request;
    51605179    struct free_user_handle_request free_user_handle_request;
     5180    struct set_cursor_request set_cursor_request;
    51615181};
    51625182union generic_reply
     
    54055425    struct alloc_user_handle_reply alloc_user_handle_reply;
    54065426    struct free_user_handle_reply free_user_handle_reply;
    5407 };
    5408 
    5409 #define SERVER_PROTOCOL_VERSION 395
     5427    struct set_cursor_reply set_cursor_reply;
     5428};
     5429
     5430#define SERVER_PROTOCOL_VERSION 398
    54105431
    54115432#endif /* __WINE_WINE_SERVER_PROTOCOL_H */
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wine/svcctl.idl

    r22496 r28475  
    2929 */
    3030
    31 /*
    32  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    33  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    34  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    35  * a choice of LGPL license versions is made available with the language indicating
    36  * that LGPLv2 or any later version may be used, or where a choice of which version
    37  * of the LGPL is applied is otherwise unspecified.
    38  */
    39 
    4031import "wtypes.idl";
    4132
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wine/test.h

    r23571 r28475  
    7575static inline const char *wine_dbgstr_w( const WCHAR *s ) { return wine_dbgstr_wn( s, -1 ); }
    7676
     77/* strcmpW is avaiable for tests compiled under Wine, but not in standalone
     78 * builds under Windows, so we reimplement it under a different name. */
     79static inline int winetest_strcmpW( const WCHAR *str1, const WCHAR *str2 )
     80{
     81    while (*str1 && (*str1 == *str2)) { str1++; str2++; }
     82    return *str1 - *str2;
     83}
     84
    7785#ifdef STANDALONE
    7886#define START_TEST(name) \
     
    8492#endif
    8593
     94#if defined(__x86_64__) && defined(__GNUC__) && defined(__WINE_USE_MSVCRT)
     95#define __winetest_cdecl __cdecl
     96#define __winetest_va_list __builtin_ms_va_list
     97#else
     98#define __winetest_cdecl
     99#define __winetest_va_list va_list
     100#endif
     101
    86102extern int broken( int condition );
    87 extern int winetest_vok( int condition, const char *msg, va_list ap );
    88 extern void winetest_vskip( const char *msg, va_list ap );
     103extern int winetest_vok( int condition, const char *msg, __winetest_va_list ap );
     104extern void winetest_vskip( const char *msg, __winetest_va_list ap );
    89105
    90106#ifdef __GNUC__
    91107
    92 extern int winetest_ok( int condition, const char *msg, ... ) __attribute__((format (printf,2,3) ));
    93 extern void winetest_skip( const char *msg, ... ) __attribute__((format (printf,1,2)));
    94 extern void winetest_win_skip( const char *msg, ... ) __attribute__((format (printf,1,2)));
    95 extern void winetest_trace( const char *msg, ... ) __attribute__((format (printf,1,2)));
     108extern void __winetest_cdecl winetest_ok( int condition, const char *msg, ... ) __attribute__((format (printf,2,3) ));
     109extern void __winetest_cdecl winetest_skip( const char *msg, ... ) __attribute__((format (printf,1,2)));
     110extern void __winetest_cdecl winetest_win_skip( const char *msg, ... ) __attribute__((format (printf,1,2)));
     111extern void __winetest_cdecl winetest_trace( const char *msg, ... ) __attribute__((format (printf,1,2)));
    96112
    97113#else /* __GNUC__ */
    98114
    99 extern int winetest_ok( int condition, const char *msg, ... );
    100 extern void winetest_skip( const char *msg, ... );
    101 extern void winetest_win_skip( const char *msg, ... );
    102 extern void winetest_trace( const char *msg, ... );
     115extern void __winetest_cdecl winetest_ok( int condition, const char *msg, ... );
     116extern void __winetest_cdecl winetest_skip( const char *msg, ... );
     117extern void __winetest_cdecl winetest_win_skip( const char *msg, ... );
     118extern void __winetest_cdecl winetest_trace( const char *msg, ... );
    103119
    104120#endif /* __GNUC__ */
    105121
    106 #define ok_(file, line)       (winetest_set_location(file, line), 0) ? 0 : winetest_ok
     122#define ok_(file, line)       (winetest_set_location(file, line), 0) ? (void)0 : winetest_ok
    107123#define skip_(file, line)     (winetest_set_location(file, line), 0) ? (void)0 : winetest_skip
    108124#define win_skip_(file, line) (winetest_set_location(file, line), 0) ? (void)0 : winetest_win_skip
     
    170186#include <stdio.h>
    171187
     188#if defined(__x86_64__) && defined(__GNUC__) && defined(__WINE_USE_MSVCRT)
     189# define __winetest_va_start(list,arg) __builtin_ms_va_start(list,arg)
     190# define __winetest_va_end(list) __builtin_ms_va_end(list)
     191#else
     192# define __winetest_va_start(list,arg) va_start(list,arg)
     193# define __winetest_va_end(list) va_end(list)
     194#endif
     195
    172196struct test
    173197{
     
    285309 *   0 if condition does not have the expected value, 1 otherwise
    286310 */
    287 int winetest_vok( int condition, const char *msg, va_list args )
     311int winetest_vok( int condition, const char *msg, __winetest_va_list args )
    288312{
    289313    tls_data* data=get_tls_data();
     
    332356}
    333357
    334 int winetest_ok( int condition, const char *msg, ... )
    335 {
    336     va_list valist;
    337     int rc;
    338 
    339     va_start(valist, msg);
    340     rc=winetest_vok(condition, msg, valist);
    341     va_end(valist);
    342     return rc;
    343 }
    344 
    345 void winetest_trace( const char *msg, ... )
    346 {
    347     va_list valist;
     358void __winetest_cdecl winetest_ok( int condition, const char *msg, ... )
     359{
     360    __winetest_va_list valist;
     361
     362    __winetest_va_start(valist, msg);
     363    winetest_vok(condition, msg, valist);
     364    __winetest_va_end(valist);
     365}
     366
     367void __winetest_cdecl winetest_trace( const char *msg, ... )
     368{
     369    __winetest_va_list valist;
    348370    tls_data* data=get_tls_data();
    349371
     
    351373    {
    352374        fprintf( stdout, "%s:%d: ", data->current_file, data->current_line );
    353         va_start(valist, msg);
     375        __winetest_va_start(valist, msg);
    354376        vfprintf(stdout, msg, valist);
    355         va_end(valist);
    356     }
    357 }
    358 
    359 void winetest_vskip( const char *msg, va_list args )
     377        __winetest_va_end(valist);
     378    }
     379}
     380
     381void winetest_vskip( const char *msg, __winetest_va_list args )
    360382{
    361383    tls_data* data=get_tls_data();
     
    366388}
    367389
    368 void winetest_skip( const char *msg, ... )
    369 {
    370     va_list valist;
    371     va_start(valist, msg);
     390void __winetest_cdecl winetest_skip( const char *msg, ... )
     391{
     392    __winetest_va_list valist;
     393    __winetest_va_start(valist, msg);
    372394    winetest_vskip(msg, valist);
    373     va_end(valist);
    374 }
    375 
    376 void winetest_win_skip( const char *msg, ... )
    377 {
    378     va_list valist;
    379     va_start(valist, msg);
     395    __winetest_va_end(valist);
     396}
     397
     398void __winetest_cdecl winetest_win_skip( const char *msg, ... )
     399{
     400    __winetest_va_list valist;
     401    __winetest_va_start(valist, msg);
    380402    if (strcmp(winetest_platform, "windows") == 0)
    381403        winetest_vskip(msg, valist);
    382404    else
    383405        winetest_vok(0, msg, valist);
    384     va_end(valist);
     406    __winetest_va_end(valist);
    385407}
    386408
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wine/wine_common_ver.rc

    r25949 r28475  
    1616 * License along with this library; if not, write to the Free Software
    1717 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
    18  */
    19 
    20 /*
    21  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    22  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    23  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    24  * a choice of LGPL license versions is made available with the language indicating
    25  * that LGPLv2 or any later version may be used, or where a choice of which version
    26  * of the LGPL is applied is otherwise unspecified.
    2718 */
    2819
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wine/wined3d.h

    r25949 r28475  
    1 /*** Autogenerated by WIDL 1.1.36 from ../../include/wine/wined3d.idl - Do not edit ***/
     1/*** Autogenerated by WIDL 1.1.43 from ../../include/wine/wined3d.idl - Do not edit ***/
    22
    33#include <rpc.h>
     
    343343    WINED3DFMT_B8G8R8A8_UNORM = 114,
    344344    WINED3DFMT_B8G8R8X8_UNORM = 115,
    345     WINED3DFMT_UYVY = 0x59565955,
    346     WINED3DFMT_YUY2 = 0x32595559,
    347     WINED3DFMT_YV12 = 0x32315659,
    348     WINED3DFMT_DXT1 = 0x31545844,
    349     WINED3DFMT_DXT2 = 0x32545844,
    350     WINED3DFMT_DXT3 = 0x33545844,
    351     WINED3DFMT_DXT4 = 0x34545844,
    352     WINED3DFMT_DXT5 = 0x35545844,
    353     WINED3DFMT_MULTI2_ARGB8 = 0x3154454d,
    354     WINED3DFMT_G8R8_G8B8 = 0x42475247,
    355     WINED3DFMT_R8G8_B8G8 = 0x47424752,
    356     WINED3DFMT_ATI2N = 0x32495441,
    357     WINED3DFMT_INST = 0x54534e49,
    358     WINED3DFMT_NVHU = 0x5548564e,
    359     WINED3DFMT_NVHS = 0x5348564e,
     345    WINED3DFMT_UYVY = (((ULONG)(unsigned char)'U' | ((ULONG)(unsigned char)'Y' << 8)) | ((ULONG)(unsigned char)'V' << 16)) | ((ULONG)(unsigned char)'Y' << 24),
     346    WINED3DFMT_YUY2 = (((ULONG)(unsigned char)'Y' | ((ULONG)(unsigned char)'U' << 8)) | ((ULONG)(unsigned char)'Y' << 16)) | ((ULONG)(unsigned char)'2' << 24),
     347    WINED3DFMT_YV12 = (((ULONG)(unsigned char)'Y' | ((ULONG)(unsigned char)'V' << 8)) | ((ULONG)(unsigned char)'1' << 16)) | ((ULONG)(unsigned char)'2' << 24),
     348    WINED3DFMT_DXT1 = (((ULONG)(unsigned char)'D' | ((ULONG)(unsigned char)'X' << 8)) | ((ULONG)(unsigned char)'T' << 16)) | ((ULONG)(unsigned char)'1' << 24),
     349    WINED3DFMT_DXT2 = (((ULONG)(unsigned char)'D' | ((ULONG)(unsigned char)'X' << 8)) | ((ULONG)(unsigned char)'T' << 16)) | ((ULONG)(unsigned char)'2' << 24),
     350    WINED3DFMT_DXT3 = (((ULONG)(unsigned char)'D' | ((ULONG)(unsigned char)'X' << 8)) | ((ULONG)(unsigned char)'T' << 16)) | ((ULONG)(unsigned char)'3' << 24),
     351    WINED3DFMT_DXT4 = (((ULONG)(unsigned char)'D' | ((ULONG)(unsigned char)'X' << 8)) | ((ULONG)(unsigned char)'T' << 16)) | ((ULONG)(unsigned char)'4' << 24),
     352    WINED3DFMT_DXT5 = (((ULONG)(unsigned char)'D' | ((ULONG)(unsigned char)'X' << 8)) | ((ULONG)(unsigned char)'T' << 16)) | ((ULONG)(unsigned char)'5' << 24),
     353    WINED3DFMT_MULTI2_ARGB8 = (((ULONG)(unsigned char)'M' | ((ULONG)(unsigned char)'E' << 8)) | ((ULONG)(unsigned char)'T' << 16)) | ((ULONG)(unsigned char)'1' << 24),
     354    WINED3DFMT_G8R8_G8B8 = (((ULONG)(unsigned char)'G' | ((ULONG)(unsigned char)'R' << 8)) | ((ULONG)(unsigned char)'G' << 16)) | ((ULONG)(unsigned char)'B' << 24),
     355    WINED3DFMT_R8G8_B8G8 = (((ULONG)(unsigned char)'R' | ((ULONG)(unsigned char)'G' << 8)) | ((ULONG)(unsigned char)'B' << 16)) | ((ULONG)(unsigned char)'G' << 24),
     356    WINED3DFMT_ATI2N = (((ULONG)(unsigned char)'A' | ((ULONG)(unsigned char)'T' << 8)) | ((ULONG)(unsigned char)'I' << 16)) | ((ULONG)(unsigned char)'2' << 24),
     357    WINED3DFMT_INST = (((ULONG)(unsigned char)'I' | ((ULONG)(unsigned char)'N' << 8)) | ((ULONG)(unsigned char)'S' << 16)) | ((ULONG)(unsigned char)'T' << 24),
     358    WINED3DFMT_NVHU = (((ULONG)(unsigned char)'N' | ((ULONG)(unsigned char)'V' << 8)) | ((ULONG)(unsigned char)'H' << 16)) | ((ULONG)(unsigned char)'U' << 24),
     359    WINED3DFMT_NVHS = (((ULONG)(unsigned char)'N' | ((ULONG)(unsigned char)'V' << 8)) | ((ULONG)(unsigned char)'H' << 16)) | ((ULONG)(unsigned char)'S' << 24),
    360360    WINED3DFMT_FORCE_DWORD = 0xffffffff
    361361} WINED3DFORMAT;
    362362typedef enum _WINED3DRENDERSTATETYPE {
    363     WINED3DRS_TEXTUREHANDLE = 1,
    364363    WINED3DRS_ANTIALIAS = 2,
    365     WINED3DRS_TEXTUREADDRESS = 3,
    366364    WINED3DRS_TEXTUREPERSPECTIVE = 4,
    367365    WINED3DRS_WRAPU = 5,
     
    377375    WINED3DRS_ALPHATESTENABLE = 15,
    378376    WINED3DRS_LASTPIXEL = 16,
    379     WINED3DRS_TEXTUREMAG = 17,
    380     WINED3DRS_TEXTUREMIN = 18,
    381377    WINED3DRS_SRCBLEND = 19,
    382378    WINED3DRS_DESTBLEND = 20,
    383     WINED3DRS_TEXTUREMAPBLEND = 21,
    384379    WINED3DRS_CULLMODE = 22,
    385380    WINED3DRS_ZFUNC = 23,
     
    402397    WINED3DRS_EDGEANTIALIAS = 40,
    403398    WINED3DRS_COLORKEYENABLE = 41,
    404     WINED3DRS_BORDERCOLOR = 43,
    405     WINED3DRS_TEXTUREADDRESSU = 44,
    406     WINED3DRS_TEXTUREADDRESSV = 45,
    407399    WINED3DRS_MIPMAPLODBIAS = 46,
    408400    WINED3DRS_ZBIAS = 47,
     
    420412    WINED3DRS_STENCILWRITEMASK = 59,
    421413    WINED3DRS_TEXTUREFACTOR = 60,
    422     WINED3DRS_STIPPLEPATTERN00 = 64,
    423     WINED3DRS_STIPPLEPATTERN01 = 65,
    424     WINED3DRS_STIPPLEPATTERN02 = 66,
    425     WINED3DRS_STIPPLEPATTERN03 = 67,
    426     WINED3DRS_STIPPLEPATTERN04 = 68,
    427     WINED3DRS_STIPPLEPATTERN05 = 69,
    428     WINED3DRS_STIPPLEPATTERN06 = 70,
    429     WINED3DRS_STIPPLEPATTERN07 = 71,
    430     WINED3DRS_STIPPLEPATTERN08 = 72,
    431     WINED3DRS_STIPPLEPATTERN09 = 73,
    432     WINED3DRS_STIPPLEPATTERN10 = 74,
    433     WINED3DRS_STIPPLEPATTERN11 = 75,
    434     WINED3DRS_STIPPLEPATTERN12 = 76,
    435     WINED3DRS_STIPPLEPATTERN13 = 77,
    436     WINED3DRS_STIPPLEPATTERN14 = 78,
    437     WINED3DRS_STIPPLEPATTERN15 = 79,
    438     WINED3DRS_STIPPLEPATTERN16 = 80,
    439     WINED3DRS_STIPPLEPATTERN17 = 81,
    440     WINED3DRS_STIPPLEPATTERN18 = 82,
    441     WINED3DRS_STIPPLEPATTERN19 = 83,
    442     WINED3DRS_STIPPLEPATTERN20 = 84,
    443     WINED3DRS_STIPPLEPATTERN21 = 85,
    444     WINED3DRS_STIPPLEPATTERN22 = 86,
    445     WINED3DRS_STIPPLEPATTERN23 = 87,
    446     WINED3DRS_STIPPLEPATTERN24 = 88,
    447     WINED3DRS_STIPPLEPATTERN25 = 89,
    448     WINED3DRS_STIPPLEPATTERN26 = 90,
    449     WINED3DRS_STIPPLEPATTERN27 = 91,
    450     WINED3DRS_STIPPLEPATTERN28 = 92,
    451     WINED3DRS_STIPPLEPATTERN29 = 93,
    452     WINED3DRS_STIPPLEPATTERN30 = 94,
    453     WINED3DRS_STIPPLEPATTERN31 = 95,
    454414    WINED3DRS_WRAP0 = 128,
    455415    WINED3DRS_WRAP1 = 129,
     
    493453    WINED3DRS_TWEENFACTOR = 170,
    494454    WINED3DRS_BLENDOP = 171,
    495     WINED3DRS_POSITIONORDER = 172,
    496     WINED3DRS_NORMALORDER = 173,
    497455    WINED3DRS_POSITIONDEGREE = 172,
    498456    WINED3DRS_NORMALDEGREE = 173,
     
    73187276        void *data) = 0;
    73197277
     7278    virtual HRESULT STDMETHODCALLTYPE GetSurfaceFromDC(
     7279        HDC dc,
     7280        IWineD3DSurface **surface) = 0;
     7281
     7282    virtual HRESULT STDMETHODCALLTYPE AcquireFocusWindow(
     7283        HWND window) = 0;
     7284
     7285    virtual void STDMETHODCALLTYPE ReleaseFocusWindow(
     7286        ) = 0;
     7287
    73207288};
    73217289#else
     
    80558023        HRESULT (STDMETHODCALLTYPE * callback)(IWineD3DResource *resource,void *pData),
    80568024        void *data);
     8025
     8026    HRESULT (STDMETHODCALLTYPE *GetSurfaceFromDC)(
     8027        IWineD3DDevice* This,
     8028        HDC dc,
     8029        IWineD3DSurface **surface);
     8030
     8031    HRESULT (STDMETHODCALLTYPE *AcquireFocusWindow)(
     8032        IWineD3DDevice* This,
     8033        HWND window);
     8034
     8035    void (STDMETHODCALLTYPE *ReleaseFocusWindow)(
     8036        IWineD3DDevice* This);
    80578037
    80588038    END_INTERFACE
     
    82008180#define IWineD3DDevice_GetFrontBufferData(This,swapchain_idx,dst_surface) (This)->lpVtbl->GetFrontBufferData(This,swapchain_idx,dst_surface)
    82018181#define IWineD3DDevice_EnumResources(This,callback,data) (This)->lpVtbl->EnumResources(This,callback,data)
     8182#define IWineD3DDevice_GetSurfaceFromDC(This,dc,surface) (This)->lpVtbl->GetSurfaceFromDC(This,dc,surface)
     8183#define IWineD3DDevice_AcquireFocusWindow(This,window) (This)->lpVtbl->AcquireFocusWindow(This,window)
     8184#define IWineD3DDevice_ReleaseFocusWindow(This) (This)->lpVtbl->ReleaseFocusWindow(This)
    82028185#endif
    82038186
     
    94399422    PRPC_MESSAGE pRpcMessage,
    94409423    DWORD* pdwStubPhase);
     9424HRESULT STDMETHODCALLTYPE IWineD3DDevice_GetSurfaceFromDC_Proxy(
     9425    IWineD3DDevice* This,
     9426    HDC dc,
     9427    IWineD3DSurface **surface);
     9428void __RPC_STUB IWineD3DDevice_GetSurfaceFromDC_Stub(
     9429    IRpcStubBuffer* This,
     9430    IRpcChannelBuffer* pRpcChannelBuffer,
     9431    PRPC_MESSAGE pRpcMessage,
     9432    DWORD* pdwStubPhase);
     9433HRESULT STDMETHODCALLTYPE IWineD3DDevice_AcquireFocusWindow_Proxy(
     9434    IWineD3DDevice* This,
     9435    HWND window);
     9436void __RPC_STUB IWineD3DDevice_AcquireFocusWindow_Stub(
     9437    IRpcStubBuffer* This,
     9438    IRpcChannelBuffer* pRpcChannelBuffer,
     9439    PRPC_MESSAGE pRpcMessage,
     9440    DWORD* pdwStubPhase);
     9441void STDMETHODCALLTYPE IWineD3DDevice_ReleaseFocusWindow_Proxy(
     9442    IWineD3DDevice* This);
     9443void __RPC_STUB IWineD3DDevice_ReleaseFocusWindow_Stub(
     9444    IRpcStubBuffer* This,
     9445    IRpcChannelBuffer* pRpcChannelBuffer,
     9446    PRPC_MESSAGE pRpcMessage,
     9447    DWORD* pdwStubPhase);
    94419448
    94429449#endif  /* __IWineD3DDevice_INTERFACE_DEFINED__ */
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wine/wined3d.idl

    r25949 r28475  
    2222 * License along with this library; if not, write to the Free Software
    2323 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
    24  */
    25 
    26 /*
    27  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    28  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    29  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    30  * a choice of LGPL license versions is made available with the language indicating
    31  * that LGPLv2 or any later version may be used, or where a choice of which version
    32  * of the LGPL is applied is otherwise unspecified.
    3324 */
    3425
     
    153144    WINED3DDEGREE_FORCE_DWORD               = 0x7fffffff
    154145} WINED3DDEGREETYPE;
     146
     147#define WINEMAKEFOURCC(ch0, ch1, ch2, ch3) \
     148        ((unsigned long)(unsigned char)(ch0) | ((unsigned long)(unsigned char)(ch1) << 8) | \
     149        ((unsigned long)(unsigned char)(ch2) << 16) | ((unsigned long)(unsigned char)(ch3) << 24))
    155150
    156151typedef enum _WINED3DFORMAT
     
    273268    WINED3DFMT_B8G8R8X8_UNORM,
    274269    /* FOURCC formats. */
    275     WINED3DFMT_UYVY                         = 0x59565955, /* UYVY */
    276     WINED3DFMT_YUY2                         = 0x32595559, /* YUY2 */
    277     WINED3DFMT_YV12                         = 0x32315659, /* YV12 */
    278     WINED3DFMT_DXT1                         = 0x31545844, /* DXT1 */
    279     WINED3DFMT_DXT2                         = 0x32545844, /* DXT2 */
    280     WINED3DFMT_DXT3                         = 0x33545844, /* DXT3 */
    281     WINED3DFMT_DXT4                         = 0x34545844, /* DXT4 */
    282     WINED3DFMT_DXT5                         = 0x35545844, /* DXT5 */
    283     WINED3DFMT_MULTI2_ARGB8                 = 0x3154454d, /* MET1 */
    284     WINED3DFMT_G8R8_G8B8                    = 0x42475247, /* GRGB */
    285     WINED3DFMT_R8G8_B8G8                    = 0x47424752, /* RGBG */
    286     WINED3DFMT_ATI2N                        = 0x32495441, /* ATI2 */
    287     WINED3DFMT_INST                         = 0x54534e49, /* INST */
    288     WINED3DFMT_NVHU                         = 0x5548564e, /* NVHU */
    289     WINED3DFMT_NVHS                         = 0x5348564e, /* NVHS */
     270    WINED3DFMT_UYVY                         = WINEMAKEFOURCC('U','Y','V','Y'),
     271    WINED3DFMT_YUY2                         = WINEMAKEFOURCC('Y','U','Y','2'),
     272    WINED3DFMT_YV12                         = WINEMAKEFOURCC('Y','V','1','2'),
     273    WINED3DFMT_DXT1                         = WINEMAKEFOURCC('D','X','T','1'),
     274    WINED3DFMT_DXT2                         = WINEMAKEFOURCC('D','X','T','2'),
     275    WINED3DFMT_DXT3                         = WINEMAKEFOURCC('D','X','T','3'),
     276    WINED3DFMT_DXT4                         = WINEMAKEFOURCC('D','X','T','4'),
     277    WINED3DFMT_DXT5                         = WINEMAKEFOURCC('D','X','T','5'),
     278    WINED3DFMT_MULTI2_ARGB8                 = WINEMAKEFOURCC('M','E','T','1'),
     279    WINED3DFMT_G8R8_G8B8                    = WINEMAKEFOURCC('G','R','G','B'),
     280    WINED3DFMT_R8G8_B8G8                    = WINEMAKEFOURCC('R','G','B','G'),
     281    WINED3DFMT_ATI2N                        = WINEMAKEFOURCC('A','T','I','2'),
     282    WINED3DFMT_INST                         = WINEMAKEFOURCC('I','N','S','T'),
     283    WINED3DFMT_NVHU                         = WINEMAKEFOURCC('N','V','H','U'),
     284    WINED3DFMT_NVHS                         = WINEMAKEFOURCC('N','V','H','S'),
    290285
    291286    WINED3DFMT_FORCE_DWORD = 0xffffffff
     
    294289typedef enum _WINED3DRENDERSTATETYPE
    295290{
    296     WINED3DRS_TEXTUREHANDLE                 = 1, /* d3d7 */
    297291    WINED3DRS_ANTIALIAS                     = 2, /* d3d7 */
    298     WINED3DRS_TEXTUREADDRESS                = 3, /* d3d7 */
    299292    WINED3DRS_TEXTUREPERSPECTIVE            = 4, /* d3d7 */
    300293    WINED3DRS_WRAPU                         = 5, /* d3d7 */
     
    310303    WINED3DRS_ALPHATESTENABLE               = 15,
    311304    WINED3DRS_LASTPIXEL                     = 16,
    312     WINED3DRS_TEXTUREMAG                    = 17, /* d3d7 */
    313     WINED3DRS_TEXTUREMIN                    = 18, /* d3d7 */
    314305    WINED3DRS_SRCBLEND                      = 19,
    315306    WINED3DRS_DESTBLEND                     = 20,
    316     WINED3DRS_TEXTUREMAPBLEND               = 21, /* d3d7 */
    317307    WINED3DRS_CULLMODE                      = 22,
    318308    WINED3DRS_ZFUNC                         = 23,
     
    335325    WINED3DRS_EDGEANTIALIAS                 = 40, /* d3d7, d3d8 */
    336326    WINED3DRS_COLORKEYENABLE                = 41, /* d3d7 */
    337     WINED3DRS_BORDERCOLOR                   = 43, /* d3d7 */
    338     WINED3DRS_TEXTUREADDRESSU               = 44, /* d3d7 */
    339     WINED3DRS_TEXTUREADDRESSV               = 45, /* d3d7 */
    340327    WINED3DRS_MIPMAPLODBIAS                 = 46, /* d3d7 */
    341328    WINED3DRS_ZBIAS                         = 47, /* d3d7, d3d8 */
     
    353340    WINED3DRS_STENCILWRITEMASK              = 59,
    354341    WINED3DRS_TEXTUREFACTOR                 = 60,
    355     WINED3DRS_STIPPLEPATTERN00              = 64,
    356     WINED3DRS_STIPPLEPATTERN01              = 65,
    357     WINED3DRS_STIPPLEPATTERN02              = 66,
    358     WINED3DRS_STIPPLEPATTERN03              = 67,
    359     WINED3DRS_STIPPLEPATTERN04              = 68,
    360     WINED3DRS_STIPPLEPATTERN05              = 69,
    361     WINED3DRS_STIPPLEPATTERN06              = 70,
    362     WINED3DRS_STIPPLEPATTERN07              = 71,
    363     WINED3DRS_STIPPLEPATTERN08              = 72,
    364     WINED3DRS_STIPPLEPATTERN09              = 73,
    365     WINED3DRS_STIPPLEPATTERN10              = 74,
    366     WINED3DRS_STIPPLEPATTERN11              = 75,
    367     WINED3DRS_STIPPLEPATTERN12              = 76,
    368     WINED3DRS_STIPPLEPATTERN13              = 77,
    369     WINED3DRS_STIPPLEPATTERN14              = 78,
    370     WINED3DRS_STIPPLEPATTERN15              = 79,
    371     WINED3DRS_STIPPLEPATTERN16              = 80,
    372     WINED3DRS_STIPPLEPATTERN17              = 81,
    373     WINED3DRS_STIPPLEPATTERN18              = 82,
    374     WINED3DRS_STIPPLEPATTERN19              = 83,
    375     WINED3DRS_STIPPLEPATTERN20              = 84,
    376     WINED3DRS_STIPPLEPATTERN21              = 85,
    377     WINED3DRS_STIPPLEPATTERN22              = 86,
    378     WINED3DRS_STIPPLEPATTERN23              = 87,
    379     WINED3DRS_STIPPLEPATTERN24              = 88,
    380     WINED3DRS_STIPPLEPATTERN25              = 89,
    381     WINED3DRS_STIPPLEPATTERN26              = 90,
    382     WINED3DRS_STIPPLEPATTERN27              = 91,
    383     WINED3DRS_STIPPLEPATTERN28              = 92,
    384     WINED3DRS_STIPPLEPATTERN29              = 93,
    385     WINED3DRS_STIPPLEPATTERN30              = 94,
    386     WINED3DRS_STIPPLEPATTERN31              = 95,
    387342    WINED3DRS_WRAP0                         = 128,
    388343    WINED3DRS_WRAP1                         = 129,
     
    426381    WINED3DRS_TWEENFACTOR                   = 170,
    427382    WINED3DRS_BLENDOP                       = 171,
    428     WINED3DRS_POSITIONORDER                 = 172,
    429     WINED3DRS_NORMALORDER                   = 173,
    430383    WINED3DRS_POSITIONDEGREE                = 172,
    431384    WINED3DRS_NORMALDEGREE                  = 173,
     
    34713424        [in] void *data
    34723425    );
     3426    HRESULT GetSurfaceFromDC(
     3427        [in] HDC dc,
     3428        [out] IWineD3DSurface **surface
     3429    );
     3430    HRESULT AcquireFocusWindow(
     3431        [in] HWND window
     3432    );
     3433    void ReleaseFocusWindow(
     3434    );
    34733435}
    34743436
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wine/winedxgi.idl

    r22496 r28475  
    1515 * License along with this library; if not, write to the Free Software
    1616 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
    17  */
    18 
    19 /*
    20  * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
    21  * other than GPL or LGPL is available it will apply instead, Sun elects to use only
    22  * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
    23  * a choice of LGPL license versions is made available with the language indicating
    24  * that LGPLv2 or any later version may be used, or where a choice of which version
    25  * of the LGPL is applied is otherwise unspecified.
    2617 */
    2718
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wine/winnet16.h

    r16477 r28475  
    209209 */
    210210
    211 WORD WINAPI WNetGetUser16(LPCSTR,LPSTR,LPINT16);
     211WORD WINAPI WNetGetUser16(LPSTR,LPINT16);
    212212
    213213
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wine/wpp.h

    r25949 r28475  
    6767extern char *wpp_find_include( const char *name, const char *parent_name );
    6868extern int wpp_parse( const char *input, FILE *output );
    69 extern int wpp_parse_temp( const char *input, const char *output_base, char **output_name );
    7069extern void wpp_set_callbacks( const struct wpp_callbacks *callbacks );
    7170
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/winerror.h

    r25949 r28475  
    316316#define ERROR_PIPE_CONNECTED                               535
    317317#define ERROR_PIPE_LISTENING                               536
     318#define ERROR_HANDLES_CLOSED                               676
    318319#define ERROR_EA_ACCESS_DENIED                             994
    319320#define ERROR_OPERATION_ABORTED                            995
     
    720721#define ERROR_INSTALL_REMOTE_DISALLOWED                    1640
    721722#define ERROR_SUCCESS_REBOOT_INITIATED                     1641
     723#define ERROR_PATCH_TARGET_NOT_FOUND                       1642
     724#define ERROR_PATCH_PACKAGE_REJECTED                       1643
     725#define ERROR_INSTALL_TRANSFORM_REJECTED                   1644
     726#define ERROR_INSTALL_REMOTE_PROHIBITED                    1645
     727#define ERROR_PATCH_REMOVAL_UNSUPPORTED                    1646
    722728#define ERROR_UNKNOWN_PATCH                                1647
     729#define ERROR_PATCH_NO_SEQUENCE                            1648
     730#define ERROR_PATCH_REMOVAL_DISALLOWED                     1649
     731#define ERROR_INVALID_PATCH_XML                            1650
     732#define ERROR_PATCH_MANAGED_ADVERTISED_PRODUCT             1651
     733#define ERROR_INSTALL_SERVICE_SAFEBOOT                     1652
    723734#define RPC_S_INVALID_STRING_BINDING                       1700
    724735#define RPC_S_WRONG_KIND_OF_BINDING                        1701
     
    15601571#define DNS_ERROR_NO_TCPIP                                 9851
    15611572#define DNS_ERROR_NO_DNS_SERVERS                           9852
     1573
     1574/*
     1575 * Also defined in winsock.h.
     1576 *
     1577 * All Windows Sockets error constants are biased by WSABASEERR from
     1578 * the "normal"
     1579 */
     1580#define WSABASEERR                 10000
     1581/*
     1582 * Windows Sockets definitions of regular Microsoft C error constants
     1583 */
     1584#define WSAEINTR                   (WSABASEERR+4)
     1585#define WSAEBADF                   (WSABASEERR+9)
     1586#define WSAEACCES                  (WSABASEERR+13)
     1587#define WSAEFAULT                  (WSABASEERR+14)
     1588#define WSAEINVAL                  (WSABASEERR+22)
     1589#define WSAEMFILE                  (WSABASEERR+24)
     1590
     1591/*
     1592 * Windows Sockets definitions of regular Berkeley error constants
     1593 */
     1594#define WSAEWOULDBLOCK             (WSABASEERR+35)
     1595#define WSAEINPROGRESS             (WSABASEERR+36)
     1596#define WSAEALREADY                (WSABASEERR+37)
     1597#define WSAENOTSOCK                (WSABASEERR+38)
     1598#define WSAEDESTADDRREQ            (WSABASEERR+39)
     1599#define WSAEMSGSIZE                (WSABASEERR+40)
     1600#define WSAEPROTOTYPE              (WSABASEERR+41)
     1601#define WSAENOPROTOOPT             (WSABASEERR+42)
     1602#define WSAEPROTONOSUPPORT         (WSABASEERR+43)
     1603#define WSAESOCKTNOSUPPORT         (WSABASEERR+44)
     1604#define WSAEOPNOTSUPP              (WSABASEERR+45)
     1605#define WSAEPFNOSUPPORT            (WSABASEERR+46)
     1606#define WSAEAFNOSUPPORT            (WSABASEERR+47)
     1607#define WSAEADDRINUSE              (WSABASEERR+48)
     1608#define WSAEADDRNOTAVAIL           (WSABASEERR+49)
     1609#define WSAENETDOWN                (WSABASEERR+50)
     1610#define WSAENETUNREACH             (WSABASEERR+51)
     1611#define WSAENETRESET               (WSABASEERR+52)
     1612#define WSAECONNABORTED            (WSABASEERR+53)
     1613#define WSAECONNRESET              (WSABASEERR+54)
     1614#define WSAENOBUFS                 (WSABASEERR+55)
     1615#define WSAEISCONN                 (WSABASEERR+56)
     1616#define WSAENOTCONN                (WSABASEERR+57)
     1617#define WSAESHUTDOWN               (WSABASEERR+58)
     1618#define WSAETOOMANYREFS            (WSABASEERR+59)
     1619#define WSAETIMEDOUT               (WSABASEERR+60)
     1620#define WSAECONNREFUSED            (WSABASEERR+61)
     1621#define WSAELOOP                   (WSABASEERR+62)
     1622#define WSAENAMETOOLONG            (WSABASEERR+63)
     1623#define WSAEHOSTDOWN               (WSABASEERR+64)
     1624#define WSAEHOSTUNREACH            (WSABASEERR+65)
     1625#define WSAENOTEMPTY               (WSABASEERR+66)
     1626#define WSAEPROCLIM                (WSABASEERR+67)
     1627#define WSAEUSERS                  (WSABASEERR+68)
     1628#define WSAEDQUOT                  (WSABASEERR+69)
     1629#define WSAESTALE                  (WSABASEERR+70)
     1630#define WSAEREMOTE                 (WSABASEERR+71)
     1631
     1632/*
     1633 * Extended Windows Sockets error constant definitions
     1634 */
     1635#define WSASYSNOTREADY             (WSABASEERR+91)
     1636#define WSAVERNOTSUPPORTED         (WSABASEERR+92)
     1637#define WSANOTINITIALISED          (WSABASEERR+93)
     1638#define WSAEDISCON                 (WSABASEERR+101)
     1639#define WSAENOMORE                 (WSABASEERR+102)
     1640#define WSAECANCELLED              (WSABASEERR+103)
     1641#define WSAEINVALIDPROCTABLE       (WSABASEERR+104)
     1642#define WSAEINVALIDPROVIDER        (WSABASEERR+105)
     1643#define WSAEPROVIDERFAILEDINIT     (WSABASEERR+106)
     1644#define WSASYSCALLFAILURE          (WSABASEERR+107)
     1645#define WSASERVICE_NOT_FOUND       (WSABASEERR+108)
     1646#define WSATYPE_NOT_FOUND          (WSABASEERR+109)
     1647#define WSA_E_NO_MORE              (WSABASEERR+110)
     1648#define WSA_E_CANCELLED            (WSABASEERR+111)
     1649#define WSAEREFUSED                (WSABASEERR+112)
     1650
     1651
    15621652#define ERROR_SXS_SECTION_NOT_FOUND                        14000
    15631653#define ERROR_SXS_CANT_GEN_ACTCTX                          14001
     
    21622252#define SEC_I_COMPLETE_NEEDED                              _HRESULT_TYPEDEF_(0x00090313L)
    21632253#define SEC_I_COMPLETE_AND_CONTINUE                        _HRESULT_TYPEDEF_(0x00090314L)
     2254#define SEC_I_CONTEXT_EXPIRED                              _HRESULT_TYPEDEF_(0x00090317L)
    21642255#define SEC_E_BAD_PKGID                                    _HRESULT_TYPEDEF_(0x80090316L)
    21652256#define SEC_E_CONTEXT_EXPIRED                              _HRESULT_TYPEDEF_(0x80090317L)
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/winnetwk.h

    r16477 r28475  
    2525 * of the LGPL is applied is otherwise unspecified.
    2626 */
    27 
    2827
    2928#ifndef _WINNETWK_H_
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/winreg.h

    r19678 r28475  
    114114WINADVAPI LSTATUS   WINAPI RegDeleteKeyW(HKEY,LPCWSTR);
    115115#define                    RegDeleteKey WINELIB_NAME_AW(RegDeleteKey)
     116WINADVAPI LSTATUS   WINAPI RegDeleteKeyExA(HKEY,LPCSTR,REGSAM,DWORD);
     117WINADVAPI LSTATUS   WINAPI RegDeleteKeyExW(HKEY,LPCWSTR,REGSAM,DWORD);
     118#define                    RegDeleteKeyEx WINELIB_NAME_AW(RegDeleteKeyEx)
    116119WINADVAPI LSTATUS   WINAPI RegDeleteKeyValueA(HKEY,LPCSTR,LPCSTR);
    117120WINADVAPI LSTATUS   WINAPI RegDeleteKeyValueW(HKEY,LPCWSTR,LPCWSTR);
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/winsock.h

    r23571 r28475  
    9090#  define select unix_select
    9191#  define socklen_t unix_socklen_t
     92#  define u_long unix_u_long
    9293#  include <sys/types.h>
    9394#  include <time.h>
     
    9798#  undef select
    9899#  undef socklen_t
     100#  undef u_long
    99101#  undef FD_SETSIZE
    100102#  undef FD_CLR
     
    128130typedef unsigned short WS_u_short;
    129131typedef unsigned int   WS_u_int;
    130 #ifdef _MSC_VER
    131 typedef unsigned long  WS_u_long;
    132 #else
    133 typedef unsigned int   WS_u_long;
    134 #endif
     132typedef ULONG          WS_u_long;
    135133#elif (defined(_MSC_VER) || defined(__MINGW32__) || defined(__WATCOMC__)) && !defined(_BSDTYPES_DEFINED)
    136134/* MinGW doesn't define the u_xxx types */
     
    138136typedef unsigned short u_short;
    139137typedef unsigned int   u_int;
    140 #ifdef _MSC_VER
    141 typedef unsigned long  u_long;
    142 #else
    143 typedef unsigned int   u_long;
    144 #endif
     138typedef ULONG          u_long;
    145139#define _BSDTYPES_DEFINED
     140#else
     141#define u_long ULONG  /* make sure we don't use the system u_long */
    146142#endif
    147143
     
    311307    char** n_aliases;              /* alias list */
    312308    short n_addrtype;              /* net address type */
    313     WS(u_long) n_net;              /* network # */
     309    ULONG n_net;                   /* network # */
    314310};
    315311
     
    533529#ifdef WORDS_BIGENDIAN
    534530
    535 #define htonl(l) ((u_long)(l))
     531#define htonl(l) ((ULONG)(l))
    536532#define htons(s) ((u_short)(s))
    537 #define ntohl(l) ((u_long)(l))
     533#define ntohl(l) ((ULONG)(l))
    538534#define ntohs(s) ((u_short)(s))
    539535
     
    544540    return (s >> 8) | (s << 8);
    545541}
    546 static inline u_long __wine_ulong_swap(u_long l)
    547 {
    548     return ((u_long)__wine_ushort_swap((u_short)l) << 16) | __wine_ushort_swap((u_short)(l >> 16));
     542static inline ULONG __wine_ulong_swap(ULONG l)
     543{
     544    return ((ULONG)__wine_ushort_swap((u_short)l) << 16) | __wine_ushort_swap((u_short)(l >> 16));
    549545}
    550546#define htonl(l) __wine_ulong_swap(l)
     
    594590
    595591#ifndef USE_WS_PREFIX
    596 #define INADDR_ANY                 ((u_long)0x00000000)
     592#define INADDR_ANY                 ((ULONG)0x00000000)
    597593#define INADDR_LOOPBACK            0x7f000001
    598 #define INADDR_BROADCAST           ((u_long)0xffffffff)
     594#define INADDR_BROADCAST           ((ULONG)0xffffffff)
    599595#define INADDR_NONE                0xffffffff
    600596#else
    601 #define WS_INADDR_ANY              ((WS_u_long)0x00000000)
     597#define WS_INADDR_ANY              ((ULONG)0x00000000)
    602598#define WS_INADDR_LOOPBACK         0x7f000001
    603 #define WS_INADDR_BROADCAST        ((WS_u_long)0xffffffff)
     599#define WS_INADDR_BROADCAST        ((ULONG)0xffffffff)
    604600#define WS_INADDR_NONE             0xffffffff
    605601#endif /* USE_WS_PREFIX */
     
    614610            WS(u_short) s_w1,s_w2;
    615611        } S_un_w;
    616         WS(u_long) S_addr;
     612        ULONG S_addr;
    617613    } S_un;
    618614#ifndef USE_WS_PREFIX
     
    788784 */
    789785#ifndef USE_WS_PREFIX
    790 #define FIONREAD                   _IOR('f', 127, u_long)
    791 #define FIONBIO                    _IOW('f', 126, u_long)
    792 #define FIOASYNC                   _IOW('f', 125, u_long)
    793 #define SIOCSHIWAT                 _IOW('s',  0, u_long)
    794 #define SIOCGHIWAT                 _IOR('s',  1, u_long)
    795 #define SIOCSLOWAT                 _IOW('s',  2, u_long)
    796 #define SIOCGLOWAT                 _IOR('s',  3, u_long)
    797 #define SIOCATMARK                 _IOR('s',  7, u_long)
    798 #else
    799 #define WS_FIONREAD                WS__IOR('f', 127, WS_u_long)
    800 #define WS_FIONBIO                 WS__IOW('f', 126, WS_u_long)
    801 #define WS_FIOASYNC                WS__IOW('f', 125, WS_u_long)
    802 #define WS_SIOCSHIWAT              WS__IOW('s',  0, WS_u_long)
    803 #define WS_SIOCGHIWAT              WS__IOR('s',  1, WS_u_long)
    804 #define WS_SIOCSLOWAT              WS__IOW('s',  2, WS_u_long)
    805 #define WS_SIOCGLOWAT              WS__IOR('s',  3, WS_u_long)
    806 #define WS_SIOCATMARK              WS__IOR('s',  7, WS_u_long)
     786#define FIONREAD                   _IOR('f', 127, ULONG)
     787#define FIONBIO                    _IOW('f', 126, ULONG)
     788#define FIOASYNC                   _IOW('f', 125, ULONG)
     789#define SIOCSHIWAT                 _IOW('s',  0, ULONG)
     790#define SIOCGHIWAT                 _IOR('s',  1, ULONG)
     791#define SIOCSLOWAT                 _IOW('s',  2, ULONG)
     792#define SIOCGLOWAT                 _IOR('s',  3, ULONG)
     793#define SIOCATMARK                 _IOR('s',  7, ULONG)
     794#else
     795#define WS_FIONREAD                WS__IOR('f', 127, ULONG)
     796#define WS_FIONBIO                 WS__IOW('f', 126, ULONG)
     797#define WS_FIOASYNC                WS__IOW('f', 125, ULONG)
     798#define WS_SIOCSHIWAT              WS__IOW('s',  0, ULONG)
     799#define WS_SIOCGHIWAT              WS__IOR('s',  1, ULONG)
     800#define WS_SIOCSLOWAT              WS__IOW('s',  2, ULONG)
     801#define WS_SIOCGLOWAT              WS__IOR('s',  3, ULONG)
     802#define WS_SIOCATMARK              WS__IOR('s',  7, ULONG)
    807803#endif
    808804
     
    863859/*
    864860 * All Windows Sockets error constants are biased by WSABASEERR from
    865  * the "normal"
     861 * the "normal". They are also defined in winerror.h.
    866862 */
    867863#define WSABASEERR                 10000
     
    10611057int WINAPI WS(getsockname)(SOCKET,struct WS(sockaddr)*,int*);
    10621058int WINAPI WS(getsockopt)(SOCKET,int,int,char*,int*);
    1063 WS(u_long) WINAPI WS(inet_addr)(const char*);
     1059ULONG WINAPI WS(inet_addr)(const char*);
    10641060char* WINAPI WS(inet_ntoa)(struct WS(in_addr));
    1065 int WINAPI WS(ioctlsocket)(SOCKET,LONG,WS(u_long)*);
     1061int WINAPI WS(ioctlsocket)(SOCKET,LONG,ULONG*);
    10661062int WINAPI WS(listen)(SOCKET,int);
    10671063int WINAPI WS(recv)(SOCKET,char*,int,int);
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/winsock2.h

    r19678 r28475  
    154154#define WS_SIO_ADDRESS_LIST_CHANGE            _WSAIO(WS_IOC_WS2,23)
    155155#define WS_SIO_QUERY_TARGET_PNP_HANDLE        _WSAIOR(WS_IOC_WS2,24)
    156 #define WS_SIO_GET_INTERFACE_LIST             WS__IOR('t', 127, WS_u_long)
     156#define WS_SIO_GET_INTERFACE_LIST             WS__IOR('t', 127, ULONG)
    157157#else /* USE_WS_PREFIX */
    158158#undef IOC_VOID
     
    190190#define SIO_ADDRESS_LIST_CHANGE    _WSAIO(IOC_WS2,23)
    191191#define SIO_QUERY_TARGET_PNP_HANDLE _WSAIOR(IOC_WS2,24)
    192 #define SIO_GET_INTERFACE_LIST     _IOR ('t', 127, u_long)
     192#define SIO_GET_INTERFACE_LIST     _IOR ('t', 127, ULONG)
    193193#endif /* USE_WS_PREFIX */
    194194
     
    557557typedef int (WINAPI *LPFN_GETSOCKNAME)(SOCKET,struct WS(sockaddr)*,int*);
    558558typedef int (WINAPI *LPFN_GETSOCKOPT)(SOCKET,int,int,char*,int*);
    559 typedef WS(u_long) (WINAPI *LPFN_HTONL)(WS(u_long));
     559typedef ULONG (WINAPI *LPFN_HTONL)(ULONG);
    560560typedef WS(u_short) (WINAPI *LPFN_HTONS)(WS(u_short));
    561561typedef ULONG (WINAPI *LPFN_INET_ADDR)(const char*);
    562562typedef char* (WINAPI *LPFN_INET_NTOA)(struct WS(in_addr);
    563 typedef int (WINAPI *LPFN_IOCTLSOCKET)(SOCKET,LONG,WS(u_long)*);
     563typedef int (WINAPI *LPFN_IOCTLSOCKET)(SOCKET,LONG,ULONG*);
    564564typedef int (WINAPI *LPFN_LISTEN)(SOCKET,int);
    565 typedef WS(u_long) (WINAPI *LPFN_NTOHL)(WS(u_long));
     565typedef ULONG (WINAPI *LPFN_NTOHL)(ULONG);
    566566typedef WS(u_short) (WINAPI *LPFN_NTOHS)(WS(u_short));
    567567typedef int (WINAPI *LPFN_RECV)(SOCKET,char*,int,int);
     
    609609INT WINAPI WSAGetServiceClassNameByClassIdW(LPGUID,LPWSTR,LPDWORD);
    610610#define WSAGetServiceClassNameByClassId WINELIB_NAME_AW(WSAGetServiceClassNameByClassId)
    611 int WINAPI WSAHtonl(SOCKET,WS(u_long),WS(u_long)*);
     611int WINAPI WSAHtonl(SOCKET,ULONG,ULONG*);
    612612int WINAPI WSAHtons(SOCKET,WS(u_short),WS(u_short)*);
    613613int WINAPI WSAInstallServiceClassA(LPWSASERVICECLASSINFOA);
     
    623623INT WINAPI WSALookupServiceNextW(HANDLE,DWORD,LPDWORD,LPWSAQUERYSETW);
    624624#define WSALookupServiceNext       WINELIB_NAME_AW(WSALookupServiceNext)
    625 int WINAPI WSANtohl(SOCKET,WS(u_long),WS(u_long)*);
     625int WINAPI WSANtohl(SOCKET,ULONG,ULONG*);
    626626int WINAPI WSANtohs(SOCKET,WS(u_short),WS(u_short)*);
    627627INT WINAPI WSAProviderConfigChange(LPHANDLE,LPWSAOVERLAPPED,LPWSAOVERLAPPED_COMPLETION_ROUTINE);
     
    682682typedef INT (WINAPI *LPFN_WSAGETSERVICECLASSNAMEBYCLASSIDW)(LPGUID,LPWSTR,LPDWORD);
    683683#define LPFN_WSAGETSERVICECLASSNAMEBYCLASSID WINELIB_NAME_AW(LPFN_WSAGETSERVICECLASSNAMEBYCLASSID)
    684 typedef int (WINAPI *LPFN_WSAHTONL)(SOCKET,WS(u_long),WS(u_long)*);
     684typedef int (WINAPI *LPFN_WSAHTONL)(SOCKET,ULONG,ULONG*);
    685685typedef int (WINAPI *LPFN_WSAHTONS)(SOCKET,WS(u_short),WS(u_short)*);
    686686typedef int (WINAPI LPFN_WSAINSTALLSERVICECLASSA)(LPWSASERVICECLASSINFOA);
     
    695695typedef INT (WINAPI *LPFN_WSALOOKUPSERVICENEXTW)(HANDLE,DWORD,LPDWORD,LPWSAQUERYSETW);
    696696#define LPFN_WSALOOKUPSERVICENEXT WINELIB_NAME_AW(LPFN_WSALOOKUPSERVICENEXT)
    697 typedef int (WINAPI *LPFN_WSANTOHL)(SOCKET,WS(u_long),WS(u_long)*);
     697typedef int (WINAPI *LPFN_WSANTOHL)(SOCKET,ULONG,ULONG*);
    698698typedef int (WINAPI *LPFN_WSANTOHS)(SOCKET,WS(u_short),WS(u_short)*);
    699699typedef INT (WINAPI *LPFN_WSAPROVIDERCONFIGCHANGE)(LPHANDLE,LPWSAOVERLAPPED,LPWSAOVERLAPPED_COMPLETION_ROUTINE);
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/winspool.h

    r16477 r28475  
    2929 * of the LGPL is applied is otherwise unspecified.
    3030 */
     31
    3132#ifndef __WINE_WINSPOOL_H
    3233#define __WINE_WINSPOOL_H
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/winternl.h

    r25949 r28475  
    11341134/* System Information Class 0x02 */
    11351135
     1136/* Documented in "Windows NT/2000 Native API Reference" by Gary Nebbett. */
    11361137typedef struct _SYSTEM_PERFORMANCE_INFORMATION {
    1137     BYTE Reserved1[312];
     1138    LARGE_INTEGER IdleTime;
     1139    LARGE_INTEGER ReadTransferCount;
     1140    LARGE_INTEGER WriteTransferCount;
     1141    LARGE_INTEGER OtherTransferCount;
     1142    ULONG ReadOperationCount;
     1143    ULONG WriteOperationCount;
     1144    ULONG OtherOperationCount;
     1145    ULONG AvailablePages;
     1146    ULONG TotalCommittedPages;
     1147    ULONG TotalCommitLimit;
     1148    ULONG PeakCommitment;
     1149    ULONG PageFaults;
     1150    ULONG WriteCopyFaults;
     1151    ULONG TransitionFaults;
     1152    ULONG Reserved1;
     1153    ULONG DemandZeroFaults;
     1154    ULONG PagesRead;
     1155    ULONG PageReadIos;
     1156    ULONG Reserved2[2];
     1157    ULONG PagefilePagesWritten;
     1158    ULONG PagefilePageWriteIos;
     1159    ULONG MappedFilePagesWritten;
     1160    ULONG MappedFilePageWriteIos;
     1161    ULONG PagedPoolUsage;
     1162    ULONG NonPagedPoolUsage;
     1163    ULONG PagedPoolAllocs;
     1164    ULONG PagedPoolFrees;
     1165    ULONG NonPagedPoolAllocs;
     1166    ULONG NonPagedPoolFrees;
     1167    ULONG TotalFreeSystemPtes;
     1168    ULONG SystemCodePage;
     1169    ULONG TotalSystemDriverPages;
     1170    ULONG TotalSystemCodePages;
     1171    ULONG SmallNonPagedLookasideListAllocateHits;
     1172    ULONG SmallPagedLookasideListAllocateHits;
     1173    ULONG Reserved3;
     1174    ULONG MmSystemCachePage;
     1175    ULONG PagedPoolPage;
     1176    ULONG SystemDriverPage;
     1177    ULONG FastReadNoWait;
     1178    ULONG FastReadWait;
     1179    ULONG FastReadResourceMiss;
     1180    ULONG FastReadNotPossible;
     1181    ULONG FastMdlReadNoWait;
     1182    ULONG FastMdlReadWait;
     1183    ULONG FastMdlReadResourceMiss;
     1184    ULONG FastMdlReadNotPossible;
     1185    ULONG MapDataNoWait;
     1186    ULONG MapDataWait;
     1187    ULONG MapDataNoWaitMiss;
     1188    ULONG MapDataWaitMiss;
     1189    ULONG PinMappedDataCount;
     1190    ULONG PinReadNoWait;
     1191    ULONG PinReadWait;
     1192    ULONG PinReadNoWaitMiss;
     1193    ULONG PinReadWaitMiss;
     1194    ULONG CopyReadNoWait;
     1195    ULONG CopyReadWait;
     1196    ULONG CopyReadNoWaitMiss;
     1197    ULONG CopyReadWaitMiss;
     1198    ULONG MdlReadNoWait;
     1199    ULONG MdlReadWait;
     1200    ULONG MdlReadNoWaitMiss;
     1201    ULONG MdlReadWaitMiss;
     1202    ULONG ReadAheadIos;
     1203    ULONG LazyWriteIos;
     1204    ULONG LazyWritePages;
     1205    ULONG DataFlushes;
     1206    ULONG DataPages;
     1207    ULONG ContextSwitches;
     1208    ULONG FirstLevelTbFills;
     1209    ULONG SecondLevelTbFills;
     1210    ULONG SystemCalls;
    11381211} SYSTEM_PERFORMANCE_INFORMATION, *PSYSTEM_PERFORMANCE_INFORMATION;
    11391212
     
    15751648
    15761649/* NtGlobalFlag bits */
     1650#define FLG_STOP_ON_EXCEPTION            0x00000001
     1651#define FLG_SHOW_LDR_SNAPS               0x00000002
     1652#define FLG_DEBUG_INITIAL_COMMAND        0x00000004
     1653#define FLG_STOP_ON_HUNG_GUI             0x00000008
    15771654#define FLG_HEAP_ENABLE_TAIL_CHECK       0x00000010
    15781655#define FLG_HEAP_ENABLE_FREE_CHECK       0x00000020
     1656#define FLG_HEAP_VALIDATE_PARAMETERS     0x00000040
     1657#define FLG_HEAP_VALIDATE_ALL            0x00000080
     1658#define FLG_APPLICATION_VERIFIER         0x00000100
     1659#define FLG_POOL_ENABLE_TAGGING          0x00000400
     1660#define FLG_HEAP_ENABLE_TAGGING          0x00000800
     1661#define FLG_USER_STACK_TRACE_DB          0x00001000
     1662#define FLG_KERNEL_STACK_TRACE_DB        0x00002000
     1663#define FLG_MAINTAIN_OBJECT_TYPELIST     0x00004000
     1664#define FLG_HEAP_ENABLE_TAG_BY_DLL       0x00008000
     1665#define FLG_DISABLE_STACK_EXTENSION      0x00010000
     1666#define FLG_ENABLE_CSRDEBUG              0x00020000
     1667#define FLG_ENABLE_KDEBUG_SYMBOL_LOAD    0x00040000
     1668#define FLG_DISABLE_PAGE_KERNEL_STACKS   0x00080000
     1669#define FLG_ENABLE_SYSTEM_CRIT_BREAKS    0x00100000
    15791670#define FLG_HEAP_DISABLE_COALESCING      0x00200000
     1671#define FLG_ENABLE_CLOSE_EXCEPTIONS      0x00400000
     1672#define FLG_ENABLE_EXCEPTION_LOGGING     0x00800000
     1673#define FLG_ENABLE_HANDLE_TYPE_TAGGING   0x01000000
     1674#define FLG_HEAP_PAGE_ALLOCS             0x02000000
     1675#define FLG_DEBUG_INITIAL_COMMAND_EX     0x04000000
     1676#define FLG_DISABLE_DBGPRINT             0x08000000
     1677#define FLG_CRITSEC_EVENT_CREATION       0x10000000
     1678#define FLG_LDR_TOP_DOWN                 0x20000000
     1679#define FLG_ENABLE_HANDLE_EXCEPTIONS     0x40000000
     1680#define FLG_DISABLE_PROTDLLS             0x80000000
    15801681
    15811682/* Rtl*Registry* functions structs and defines */
     
    18831984NTSYSAPI NTSTATUS  WINAPI LdrLockLoaderLock(ULONG,ULONG*,ULONG*);
    18841985IMAGE_BASE_RELOCATION * WINAPI LdrProcessRelocationBlock(void*,UINT,USHORT*,INT_PTR);
     1986NTSYSAPI NTSTATUS  WINAPI LdrQueryImageFileExecutionOptions(const UNICODE_STRING*,LPCWSTR,ULONG,void*,ULONG,ULONG*);
    18851987NTSYSAPI NTSTATUS  WINAPI LdrQueryProcessModuleInformation(SYSTEM_MODULE_INFORMATION*, ULONG, ULONG*);
    18861988NTSYSAPI void      WINAPI LdrShutdownProcess(void);
     
    19122014NTSYSAPI NTSTATUS  WINAPI NtContinue(PCONTEXT,BOOLEAN);
    19132015NTSYSAPI NTSTATUS  WINAPI NtCreateDirectoryObject(PHANDLE,ACCESS_MASK,POBJECT_ATTRIBUTES);
    1914 NTSYSAPI NTSTATUS  WINAPI NtCreateEvent(PHANDLE,ACCESS_MASK,const OBJECT_ATTRIBUTES *,BOOLEAN,BOOLEAN);
     2016NTSYSAPI NTSTATUS  WINAPI NtCreateEvent(PHANDLE,ACCESS_MASK,const OBJECT_ATTRIBUTES *,EVENT_TYPE,BOOLEAN);
    19152017NTSYSAPI NTSTATUS  WINAPI NtCreateEventPair(PHANDLE,ACCESS_MASK,POBJECT_ATTRIBUTES);
    19162018NTSYSAPI NTSTATUS  WINAPI NtCreateFile(PHANDLE,ACCESS_MASK,POBJECT_ATTRIBUTES,PIO_STATUS_BLOCK,PLARGE_INTEGER,ULONG,ULONG,ULONG,ULONG,PVOID,ULONG);
     
    22542356NTSYSAPI NTSTATUS  WINAPI RtlGetOwnerSecurityDescriptor(PSECURITY_DESCRIPTOR,PSID *,PBOOLEAN);
    22552357NTSYSAPI ULONG     WINAPI RtlGetProcessHeaps(ULONG,HANDLE*);
     2358NTSYSAPI DWORD     WINAPI RtlGetThreadErrorMode(void);
    22562359NTSYSAPI NTSTATUS  WINAPI RtlGetSaclSecurityDescriptor(PSECURITY_DESCRIPTOR,PBOOLEAN,PACL *,PBOOLEAN);
    22572360NTSYSAPI NTSTATUS  WINAPI RtlGetVersion(RTL_OSVERSIONINFOEXW*);
     
    23452448NTSYSAPI void      WINAPI RtlSetLastWin32ErrorAndNtStatusFromNtStatus(NTSTATUS);
    23462449NTSYSAPI NTSTATUS  WINAPI RtlSetSaclSecurityDescriptor(PSECURITY_DESCRIPTOR,BOOLEAN,PACL,BOOLEAN);
     2450NTSYSAPI NTSTATUS  WINAPI RtlSetThreadErrorMode(DWORD,LPDWORD);
    23472451NTSYSAPI NTSTATUS  WINAPI RtlSetTimeZoneInformation(const RTL_TIME_ZONE_INFORMATION*);
    23482452NTSYSAPI SIZE_T    WINAPI RtlSizeHeap(HANDLE,ULONG,const void*);
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/winuser.h

    r25949 r28475  
    979979/* a name change since win95 */
    980980#define EM_SETLIMITTEXT          EM_LIMITTEXT
     981
     982/* IMESTATUS type */
     983#define EMSIS_COMPOSITIONSTRING 1
     984
     985/* IMESTATUS type specific data */
     986#define EIMES_GETCOMPSTRATONCE         0x0001
     987#define EIMES_CANCELCOMPSTRINFOCUS     0x0002
     988#define EIMES_COMPLETECOMPSTRKILLFOCUS 0x0004
    981989
    982990/* EDITWORDBREAKPROC code values */
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/ws2ipdef.h

    r19678 r28475  
    5555typedef struct _INTERFACE_INFO
    5656{
    57     WS(u_long)        iiFlags;             /* Interface flags */
     57    ULONG             iiFlags;             /* Interface flags */
    5858    WS(sockaddr_gen)  iiAddress;           /* Interface address */
    5959    WS(sockaddr_gen)  iiBroadcastAddress;  /* Broadcast address */
     
    158158    struct WS(in_addr) imsf_multiaddr;
    159159    struct WS(in_addr) imsf_interface;
    160     WS(u_long)         imsf_fmode;
    161     WS(u_long)         imsf_numsrc;
     160    ULONG              imsf_fmode;
     161    ULONG              imsf_numsrc;
    162162    struct WS(in_addr) imsf_slist[1];
    163163} WS(IP_MSFILTER), *WS(PIP_MSFILTER);
  • trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/wtypes.h

    r25949 r28475  
    1 /*** Autogenerated by WIDL 1.1.36 from ../../include/wtypes.idl - Do not edit ***/
     1/*** Autogenerated by WIDL 1.1.43 from ../../include/wtypes.idl - Do not edit ***/
    22
    33#include <rpc.h>
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette