windows-nt/Source/XPSP1/NT/public/sdk/inc/dxtmsft3.idl
2020-09-26 16:20:57 +08:00

589 lines
18 KiB
Plaintext

/*****************************************************************************
* dxtmsft3.idl *
*-------------*
*
* Description:
* This is the IDL file for DirectX installable transform coclass,
* interface, and type definitions. This file describes interfaces for
* 3D transforms provided by Microsoft.
*
*-----------------------------------------------------------------------------
* Date: 07/07/97
* Copyright Microsoft Corporation 1997
* All rights reserved.
*
*****************************************************************************/
//--- Import base idl
import "oaidl.idl";
import "ocidl.idl";
import "dxtrans.idl";
//--- Additional includes
//--- Export
//=== Forward References ====================================================
//=== Constants =============================================================
//=== Struct & Enum definitions =============================================
//=== Interface definitions =================================================
//--- IExplode -------------------------------------------------
typedef enum EXPLODEDISPID
{
DISPID_Explode_Tumble = DISPID_DXE_NEXT_ID,
DISPID_Explode_MaxRotations,
DISPID_Explode_FinalVelocity,
DISPID_Explode_PositionJump,
DISPID_Explode_DecayTime
} EXPLODEDISPID;
[
object,
uuid(141DBAF0-55FB-11D1-B83E-00A0C933BE86),
dual,
helpstring("IExplode Interface"),
pointer_default(unique)
]
interface IExplode : IDXEffect
{
[propput, id(DISPID_Explode_Tumble)] HRESULT Tumble([in] BOOL newVal );
[propget, id(DISPID_Explode_Tumble)] HRESULT Tumble([out, retval] BOOL *pVal);
[propput, id(DISPID_Explode_MaxRotations)] HRESULT MaxRotations([in] LONG newVal);
[propget, id(DISPID_Explode_MaxRotations)] HRESULT MaxRotations([out, retval] LONG *pVal);
[propput, id(DISPID_Explode_FinalVelocity)] HRESULT FinalVelocity([in] float newVal);
[propget, id(DISPID_Explode_FinalVelocity)] HRESULT FinalVelocity([out, retval] float *pVal);
[propput, id(DISPID_Explode_PositionJump)] HRESULT PositionJump([in] float newVal);
[propget, id(DISPID_Explode_PositionJump)] HRESULT PositionJump([out, retval] float *pVal);
[propput, id(DISPID_Explode_DecayTime)] HRESULT DecayTime([in] float newVal);
[propget, id(DISPID_Explode_DecayTime)] HRESULT DecayTime([out, retval] float *pVal);
};
// --- ICrShatter Interface --------------------------------------------------
[
object,
uuid(63500AE1-0858-11D2-8CE4-00C04F8ECB10),
dual,
helpstring("ICrShatter Interface"),
pointer_default(unique)
]
interface ICrShatter : IDXEffect
{
[propget, id(1)] HRESULT seed([out, retval] long *pVal);
[propput, id(1)] HRESULT seed([in] long newVal);
[propget, id(2)] HRESULT maxShards([out, retval] long *pVal);
[propput, id(2)] HRESULT maxShards([in] long newVal);
[propget, id(3)] HRESULT depth([out, retval] float *pVal);
[propput, id(3)] HRESULT depth([in] float newVal);
[propget, id(4)] HRESULT backColor([out, retval] BSTR *pVal);
[propput, id(4)] HRESULT backColor([in] BSTR newVal);
[propget, id(6)] HRESULT evacuateX([out, retval] short *pVal);
[propput, id(6)] HRESULT evacuateX([in] short newVal);
[propget, id(7)] HRESULT evacuateY([out, retval] short *pVal);
[propput, id(7)] HRESULT evacuateY([in] short newVal);
[propget, id(8)] HRESULT evacuateZ([out, retval] short *pVal);
[propput, id(8)] HRESULT evacuateZ([in] short newVal);
[propget, id(9)] HRESULT evacuateDeltaX([out, retval] short *pVal);
[propput, id(9)] HRESULT evacuateDeltaX([in] short newVal);
[propget, id(10)] HRESULT evacuateDeltaY([out, retval] short *pVal);
[propput, id(10)] HRESULT evacuateDeltaY([in] short newVal);
[propget, id(11)] HRESULT evacuateDeltaZ([out, retval] short *pVal);
[propput, id(11)] HRESULT evacuateDeltaZ([in] short newVal);
};
// ---- IDXTBlackHole Interface ----------------------------------
[
object,
uuid(C3853C21-3F2E-11D2-9900-0000F803FF7A),
dual,
helpstring("IDXTBlackHole Interface"),
pointer_default(unique)
]
interface IDXTBlackHole : IDXEffect
{
[propget, id(1)] HRESULT HoleX([out, retval] float *pVal);
[propput, id(1)] HRESULT HoleX([in] float newVal);
[propget, id(2)] HRESULT HoleY([out, retval] float *pVal);
[propput, id(2)] HRESULT HoleY([in] float newVal);
[propget, id(3)] HRESULT HoleZ([out, retval] float *pVal);
[propput, id(3)] HRESULT HoleZ([in] float newVal);
[propget, id(4)] HRESULT StretchPercent([out, retval] float *pVal);
[propput, id(4)] HRESULT StretchPercent([in] float newVal);
[propget, id(5)] HRESULT FallX([out, retval] float *pVal);
[propput, id(5)] HRESULT FallX([in] float newVal);
[propget, id(6)] HRESULT FallY([out, retval] float *pVal);
[propput, id(6)] HRESULT FallY([in] float newVal);
[propget, id(7)] HRESULT FallZ([out, retval] float *pVal);
[propput, id(7)] HRESULT FallZ([in] float newVal);
[propget, id(8)] HRESULT SpiralX([out, retval] float *pVal);
[propput, id(8)] HRESULT SpiralX([in] float newVal);
[propget, id(9)] HRESULT SpiralY([out, retval] float *pVal);
[propput, id(9)] HRESULT SpiralY([in] float newVal);
[propget, id(10)] HRESULT SpiralZ([out, retval] float *pVal);
[propput, id(10)] HRESULT SpiralZ([in] float newVal);
[propget, id(11)] HRESULT Rotations([out, retval] float *pVal);
[propput, id(11)] HRESULT Rotations([in] float newVal);
[propget, id(12)] HRESULT Movement([out, retval] BSTR *pVal);
[propput, id(12)] HRESULT Movement([in] BSTR newVal);
};
// ----- IDXTRoll Interface --------------------------------------------
[
object,
uuid(78F30B81-48AA-11D2-9900-0000F803FF7A),
dual,
helpstring("IDXTRoll Interface"),
pointer_default(unique)
]
interface IDXTRoll : IDXEffect
{
[propget, id(1)] HRESULT DirectionX([out, retval] float *pVal);
[propput, id(1)] HRESULT DirectionX([in] float newVal);
[propget, id(2)] HRESULT DirectionY([out, retval] float *pVal);
[propput, id(2)] HRESULT DirectionY([in] float newVal);
[propget, id(3)] HRESULT Radius([out, retval] float *pVal);
[propput, id(3)] HRESULT Radius([in] float newVal);
};
//--- IDXTSpin -------------------------------------------------
[
object,
uuid(3D2807C1-43DE-11D2-9900-0000F803FF7A),
dual,
helpstring("IDXTSpin Interface"),
pointer_default(unique)
]
interface IDXTSpin : IDXEffect
{
[propget, id(1)] HRESULT SpinX([out, retval] float *pVal);
[propput, id(1)] HRESULT SpinX([in] float newVal);
[propget, id(2)] HRESULT SpinY([out, retval] float *pVal);
[propput, id(2)] HRESULT SpinY([in] float newVal);
[propget, id(3)] HRESULT SpinZ([out, retval] float *pVal);
[propput, id(3)] HRESULT SpinZ([in] float newVal);
[propget, id(4)] HRESULT Flips([out, retval] long *pVal);
[propput, id(4)] HRESULT Flips([in] long newVal);
};
//--- IRipple -------------------------------------------------
[
object,
uuid(6DA4A05E-8E9E-11D1-904E-00C04FD9189D),
dual,
helpstring("IRipple Interface"),
pointer_default(unique)
]
interface IRipple : IDXEffect
{
[propget, id(11)] HRESULT XOrigin([out, retval] float *pVal);
[propput, id(11)] HRESULT XOrigin([in] float newVal);
[propget, id(12)] HRESULT YOrigin([out, retval] float *pVal);
[propput, id(12)] HRESULT YOrigin([in] float newVal);
[propget, id(13)] HRESULT Wavelength([out, retval] float *pVal);
[propput, id(13)] HRESULT Wavelength([in] float newVal);
[propget, id(14)] HRESULT Amplitude([out, retval] float *pVal);
[propput, id(14)] HRESULT Amplitude([in] float newVal);
[propget, id(15)] HRESULT NumberOfWaves([out, retval] long *pVal);
[propput, id(15)] HRESULT NumberOfWaves([in] long newVal);
[propget, id(16)] HRESULT MinSteps([out, retval] long *pVal);
[propput, id(16)] HRESULT MinSteps([in] long newVal);
[propget, id(17)] HRESULT MaxSteps([out, retval] long *pVal);
[propput, id(17)] HRESULT MaxSteps([in] long newVal);
};
//--- IHeightField -------------------------------------------------
typedef enum HeightFieldDISPID
{
DISPID_HeightField_Width = DISPID_DXE_NEXT_ID,
DISPID_HeightField_Height,
DISPID_HeightField_Depth,
DISPID_HeightField_Samples
} HeightFieldDISPID;
[
object,
uuid(0492170A-B159-11d1-9207-0000F8758E66),
dual,
helpstring("IHeightField Interface"),
pointer_default(unique)
]
interface IHeightField : IDXEffect
{
[propget, id(DISPID_HeightField_Width)] HRESULT Width([out, retval] float *pVal);
[propput, id(DISPID_HeightField_Width)] HRESULT Width([in] float newVal);
[propget, id(DISPID_HeightField_Height)] HRESULT Height([out, retval] float *pVal);
[propput, id(DISPID_HeightField_Height)] HRESULT Height([in] float newVal);
[propget, id(DISPID_HeightField_Depth)] HRESULT Depth([out, retval] float *pVal);
[propput, id(DISPID_HeightField_Depth)] HRESULT Depth([in] float newVal);
[propget, id(DISPID_HeightField_Samples)] HRESULT Samples([out, retval] long *pVal);
[propput, id(DISPID_HeightField_Samples)] HRESULT Samples([in] long newVal);
};
//--- IDXTMetaStream -------------------------------------------------
[
object,
uuid(48654BC0-E51F-11D1-AA1C-00600895FB99),
dual,
local,
helpstring("IDXTMetaStream Interface"),
pointer_default(unique)
]
interface IDXTMetaStream : IDispatch
{
[propget, id(11)] HRESULT DXTurl([out, retval] BSTR *pURL);
[propput, id(11)] HRESULT DXTurl([in] BSTR newURL);
[propput, id(12)] HRESULT DXTAutoScale([in]VARIANT_BOOL flag);
[propget, id(12)] HRESULT DXTAutoScale([out,retval]VARIANT_BOOL* flag);
[propput, id(13)] HRESULT DXTquality([in]float flag);
[propget, id(13)] HRESULT DXTquality([out,retval]float *flag);
};
//--- IDXTText3D -------------------------------------------------
typedef enum DXTText3DDISPID
{
//This is not an effect, but doesn't hurt to start at DISPID_DXE_NEXT_ID
DISPID_DXTText3D_String = DISPID_DXE_NEXT_ID,
DISPID_DXTText3D_FontFace,
DISPID_DXTText3D_FontWeight,
DISPID_DXTText3D_FontStyle,
DISPID_DXTText3D_Vertical,
DISPID_DXTText3D_ExtrusionType,
DISPID_DXTText3D_XAlign,
DISPID_DXTText3D_YAlign,
DISPID_DXTText3D_ZAlign,
DISPID_DXTText3D_LetterSpacing,
DISPID_DXTText3D_Quality
} DXTText3DDISPID;
[
object,
uuid(50C4B592-7E8D-11d2-9B4E-00A0C9697CD0),
dual,
local,
helpstring("IDXTText3D Interface"),
pointer_default(unique)
]
interface IDXTText3D : IDispatch
{
[propget, id(DISPID_DXTText3D_String)] HRESULT String([out, retval] BSTR *pbstr);
[propput, id(DISPID_DXTText3D_String)] HRESULT String([in] BSTR pbstr);
[propget, id(DISPID_DXTText3D_FontFace)] HRESULT FontFace([out, retval] BSTR *pbstr);
[propput, id(DISPID_DXTText3D_FontFace)] HRESULT FontFace([in] BSTR pbstr);
[propget, id(DISPID_DXTText3D_FontWeight)] HRESULT FontWeight([out, retval] BSTR *pbstr);
[propput, id(DISPID_DXTText3D_FontWeight)] HRESULT FontWeight([in] BSTR pbstr);
[propget, id(DISPID_DXTText3D_FontStyle)] HRESULT FontStyle([out, retval] BSTR *pbstr);
[propput, id(DISPID_DXTText3D_FontStyle)] HRESULT FontStyle([in] BSTR pbstr);
[propget, id(DISPID_DXTText3D_Vertical)] HRESULT Vertical([out,retval]VARIANT_BOOL* fVertical);
[propput, id(DISPID_DXTText3D_Vertical)] HRESULT Vertical([in] VARIANT_BOOL fVertical);
[propget, id(DISPID_DXTText3D_ExtrusionType)] HRESULT ExtrusionType([out, retval] BSTR *pbstr);
[propput, id(DISPID_DXTText3D_ExtrusionType)] HRESULT ExtrusionType([in] BSTR pbstr);
[propget, id(DISPID_DXTText3D_XAlign)] HRESULT XAlign([out, retval] BSTR *pbstr);
[propput, id(DISPID_DXTText3D_XAlign)] HRESULT XAlign([in] BSTR pbstr);
[propget, id(DISPID_DXTText3D_YAlign)] HRESULT YAlign([out, retval] BSTR *pbstr);
[propput, id(DISPID_DXTText3D_YAlign)] HRESULT YAlign([in] BSTR pbstr);
[propget, id(DISPID_DXTText3D_ZAlign)] HRESULT ZAlign([out, retval] BSTR *pbstr);
[propput, id(DISPID_DXTText3D_ZAlign)] HRESULT ZAlign([in] BSTR pbstr);
[propget, id(DISPID_DXTText3D_LetterSpacing)] HRESULT LetterSpacing([out, retval] VARIANT *pvarLetterSpacing);
[propput, id(DISPID_DXTText3D_LetterSpacing)] HRESULT LetterSpacing([in] VARIANT varLetterSpacing);
[propget, id(DISPID_DXTText3D_Quality)] HRESULT Quality([out, retval] float *pflQuality);
[propput, id(DISPID_DXTText3D_Quality)] HRESULT Quality([in] float flQuality);
};
//--- IDXTShapes -------------------------------------------------
[
object,
uuid(8241F013-84D3-11d2-97E6-0000F803FF7A),
dual,
helpstring("IDXTShapes Interface"),
pointer_default(unique)
]
interface IDXTShapes : IDispatch
{
[propget, id(1)] HRESULT Shape([out, retval] BSTR* pVal);
[propput, id(1)] HRESULT Shape([in] BSTR newVal);
[propget, id(2)] HRESULT XMinRes([out, retval] long* pVal);
[propput, id(2)] HRESULT XMinRes([in] long newVal);
[propget, id(3)] HRESULT XMaxRes([out, retval] long* pVal);
[propput, id(3)] HRESULT XMaxRes([in] long newVal);
[propget, id(4)] HRESULT YMinRes([out, retval] long* pVal);
[propput, id(4)] HRESULT YMinRes([in] long newVal);
[propget, id(5)] HRESULT YMaxRes([out, retval] long* pVal);
[propput, id(5)] HRESULT YMaxRes([in] long newVal);
[propget, id(6)] HRESULT Color([out, retval] BSTR *pVal);
[propput, id(6)] HRESULT Color([in] BSTR newVal);
[propget, id(7)] HRESULT DoubleSided([out, retval] VARIANT_BOOL *pVal);
[propput, id(7)] HRESULT DoubleSided([in] VARIANT_BOOL newVal);
[propget, id(8)] HRESULT KeepAspectRatio([out, retval] VARIANT_BOOL *pVal);
[propput, id(8)] HRESULT KeepAspectRatio([in] VARIANT_BOOL newVal);
};
//=== CoClass definitions =================================================
[
uuid(E4BBA4C0-69B7-11d2-832D-0000F81F5995),
version(1.0),
helpstring("DXTMsft3 1.0 Type Library")
]
library DXTMSFT3Lib
{
importlib("stdole2.tlb");
[
uuid(141DBAF1-55FB-11D1-B83E-00A0C933BE86),
helpstring("Explode Class")
]
coclass Explode
{
[default] interface IExplode;
};
////////////////////////////
[
uuid(C53059E1-E6E3-11d1-BA12-00C04FB6BD36),
helpstring("ExplodeProp Class")
]
coclass ExplodeProp
{
interface IUnknown;
};
////////////////////////////
[
uuid(945F5842-3A8D-11D1-9037-00C04FD9189D),
helpstring("Ripple Class")
]
coclass Ripple
{
[default] interface IRipple;
};
////////////////////////////
[
uuid(945F5843-3A8D-11D1-9037-00C04FD9189D),
helpstring("RipProp Class")
]
coclass RipProp
{
interface IUnknown;
};
////////////////////////////
[
uuid(04921709-B159-11d1-9207-0000F8758E66),
helpstring("HeightField Class")
]
coclass HeightField
{
[default] interface IHeightField;
};
////////////////////////////
[
uuid(7A8402E3-FBD6-11D1-B5E0-00AA003B6061),
helpstring("HtFieldProp Class")
]
coclass HtFieldProp
{
interface IUnknown;
};
////////////////////////////
[
uuid(60A0C080-E505-11D1-AA1C-00600895FB99),
helpstring("DXTMetaStream Class")
]
coclass DXTMetaStream
{
[default] interface IDXTMetaStream;
};
////////////////////////////
[
uuid(E3D77340-E505-11D1-AA1C-00600895FB99),
helpstring("DXTMetaStreamProp Class")
]
coclass DXTMetaStreamProp
{
interface IUnknown;
};
////////////////////////////
[
uuid(D56F34F2-7E89-11d2-9B4E-00A0C9697CD0),
helpstring("DXTText3D Class")
]
coclass DXTText3D
{
[default] interface IDXTText3D;
};
////////////////////////////
[
uuid(50C4B593-7E8D-11d2-9B4E-00A0C9697CD0),
helpstring("DXTText3DPP Class")
]
coclass DXTText3DPP
{
interface IUnknown;
};
////////////////////////////
[
uuid(63500AE2-0858-11D2-8CE4-00C04F8ECB10),
helpstring("CrShatter Class")
]
coclass CrShatter
{
[default] interface ICrShatter;
};
////////////////////////////
[
uuid(99275F01-102E-11d2-8B82-00A0C93C09B2),
helpstring("CrShatterPP Property Page")
]
coclass CrShatterPP
{
interface IUnknown;
};
////////////////////////////
[
uuid(C3853C22-3F2E-11D2-9900-0000F803FF7A),
helpstring("DXTBlackHole Class")
]
coclass DXTBlackHole
{
[default] interface IDXTBlackHole;
};
////////////////////////////
[
uuid(C3853C23-3F2E-11D2-9900-0000F803FF7A),
helpstring("DXTBlackHolePP Class")
]
coclass DXTBlackHolePP
{
interface IUnknown;
};
////////////////////////////
[
uuid(78F30B82-48AA-11D2-9900-0000F803FF7A),
helpstring("DXTRoll")
]
coclass DXTRoll
{
[default] interface IDXTRoll;
};
////////////////////////////
[
uuid(78F30B83-48AA-11D2-9900-0000F803FF7A),
helpstring("DXTRollPP")
]
coclass DXTRollPP
{
interface IUnknown;
};
////////////////////////////
[
uuid(3D2807C2-43DE-11D2-9900-0000F803FF7A),
helpstring("DXTSpin Class")
]
coclass DXTSpin
{
[default] interface IDXTSpin;
};
////////////////////////////
[
uuid(3D2807C3-43DE-11D2-9900-0000F803FF7A),
helpstring("DXTSpinPP Class")
]
coclass DXTSpinPP
{
interface IUnknown;
};
////////////////////////////
[
uuid(8241F015-84D3-11d2-97E6-0000F803FF7A),
helpstring("DXTShapes Class")
]
coclass DXTShapes
{
[default] interface IDXTShapes;
};
////////////////////////////
[
uuid(8241F016-84D3-11d2-97E6-0000F803FF7A),
helpstring("DXTShapesPP Class")
]
coclass DXTShapesPP
{
interface IUnknown;
};
};