📄 mstve.idl
字号:
// Copyright (c) 1999,2000,2001 Microsoft Corporation. All Rights Reserved.
// MSTvE.idl : IDL source for MSTvE.dll
//
// This file will be processed by the MIDL tool to
// produce the type library (TveContr.tlb) and marshalling code.
//
// Need to put MIDL attributes of:
// 'noncreatable' on
// 'hidden' on
// 'nonbrowsable' on
//
// -- _Helper interfaces need to be in the library section or else
// can't seen them in the client
//
// -- None of the _Helper interfaces are marked dual. Hence they
// won't work up on the client... (???)
//
// ---------------------------------------------------
// CAUTION - if Change methods below, need to regen the proxy-stub file
// nmake -f MSTvEps.mk
// regsvr32 /s MSTvEps.dll
//
//
// Also - if change any of the IID's, need to rebuild ..\uuid\[]\strmiids.lib
cpp_quote("//+-------------------------------------------------------------------------")
cpp_quote("//")
cpp_quote("// Microsoft Windows")
cpp_quote("// Copyright (C) Microsoft Corporation, 1999, 2000.")
cpp_quote("//")
cpp_quote("//--------------------------------------------------------------------------")
cpp_quote("#pragma once")
import "oaidl.idl";
import "ocidl.idl";
// forward declarations
interface ITVETrigger;
interface ITVETrack;
interface ITVEVariation;
interface ITVEEnhancement;
interface ITVEService;
interface ITVEActiveService;
interface ITVESupervisor;
interface ITVEAttrMap;
interface ITVEAttrTimeQ;
interface ITVETracks;
interface ITVEVariations;
interface ITVEEnhancements;
interface ITVEServices;
interface ITVEFile;
interface ITVESupervisor_Helper;
// Listener..
interface ITVEMCast;
interface ITVEMCasts;
interface ITVEMCastManager;
interface ITVEMCastCallback;
// interfaces to configure the filter and get events from,
interface ITVEFilter ;
interface ITVEFilter_Helper;
// glue stuff
interface ITVENavAid;
interface ITVENavAid_Helper;
interface ITVENavAid_NoVidCtl;
interface ITVETriggerCtrl;
interface ITVETriggerCtrl_Helper;
interface ITVEFeature;
interface ITVESupervisorGITProxy;
// ----------------------------------------------------------------------------------
#define COLLECTID_Item DISPID_VALUE // (0)
#define COLLECTID_Count 1 // standard set of collection interfaces
#define COLLECTID_Add 2
#define COLLECTID_Remove 3
#define COLLECTID_RemoveAll 4 // extra for maps
#define COLLECTID_Key 5
#define COLLECTID_Replace 6
#define COLLECTID_Insert 7
#define COLLECTID_Update 8
typedef enum NENH_Mode
{
NENH_New,
NENH_Duplicate,
NENH_Updated,
NENH_Starting,
NENH_Expired
} NENH_Mode;
typedef enum NPKG_Mode
{
NPKG_Starting, // brand new packet (never seen this UUID before)
NPKG_Received, // correctly received and decoded a package
NPKG_Duplicate, // duplicate send of a one already successfully received (packet 0 only)
NPKG_Resend, // resend of one that wasn't received correctly before (packet 0 only)
NPKG_Expired
} NPKG_Mode;
typedef enum NTRK_Mode
{
NTRK_New,
NTRK_Duplicate, // exact duplicate of existing one
NTRK_Updated, // updated version of existing one
NTRK_Starting, // (not used???)
NTRK_Expired
} NTRK_Mode;
typedef enum NFLE_Mode
{
NFLE_Received, // correctly received and decoded a package
NFLE_Expired
} NFLE_Mode;
typedef enum NTUN_Mode
{
NTUN_New, // new station (service) never seen before
NTUN_Retune, // tuning back to an existing station
NTUN_Reactivate, // retuning to the current station
NTUN_Turnoff, // turning atvef off
NTUN_Fail // failed to tune for some reason
} NTUN_Mode;
typedef enum NWHAT_Mode // used in NotifyAuxInfo
{
NWHAT_Announcement,
NWHAT_Trigger,
NWHAT_Data,
NWHAT_Other,
NWHAT_Extra
} NWHAT_Mode;
// ---------------------------------------------------------------------
[
object,
uuid(05500101-FAA5-4df9-8246-BFC23AC5CEA8),
dual,
helpstring("ITVETrigger Interface"),
pointer_default(unique)
]
interface ITVETrigger : IDispatch
{
[propget, id(1), helpstring("property Parent")] HRESULT Parent([out, retval] IUnknown* *pVal);
[propget, id(2), helpstring("property Service")] HRESULT Service([out, retval] ITVEService* *pVal);
[propget, id(3), helpstring("property IsValid")] HRESULT IsValid([out, retval] VARIANT_BOOL *pVal);
[propget, id(4), helpstring("property URL")] HRESULT URL([out, retval] BSTR *pVal);
[propget, id(5), helpstring("property Name")] HRESULT Name([out, retval] BSTR *pVal);
[propget, id(6), helpstring("property Expires")] HRESULT Expires([out, retval] DATE *pVal);
[propget, id(7), helpstring("property Executes")] HRESULT Executes([out, retval] DATE *pVal);
[propget, id(8), helpstring("property Script")] HRESULT Script([out, retval] BSTR *pVal);
[propget, id(9), helpstring("property TVELevel")] HRESULT TVELevel([out, retval] float *pVal);
[propget, id(10), helpstring("property Rest")] HRESULT Rest([out, retval] BSTR *pVal);
[ id(11), helpstring("method ParseTrigger")] HRESULT ParseTrigger([in] const BSTR rVal);
};
[
object,
uuid(05500201-FAA5-4df9-8246-BFC23AC5CEA8),
// dual,
hidden,
helpstring("ITVETrigger_Helper Interface"),
pointer_default(unique)
]
interface ITVETrigger_Helper : IUnknown
{
[ id(1), helpstring("method ConnectParent")] HRESULT ConnectParent([in] ITVETrack *pTrack);
[propget, id(2), helpstring("property CRC")] HRESULT CRC([in] const BSTR rVal, [out, retval] BSTR *pbstrCRC);
[ id(3), helpstring("method UpdateFrom")] HRESULT UpdateFrom([in] ITVETrigger *pTrigger, [out] long *plgrfTRKChanged);
[ id(4), helpstring("method RemoveYourself")] HRESULT RemoveYourself();
[ id(5), helpstring("method DumpToBSTR")] HRESULT DumpToBSTR([out] BSTR *pbstrBuff);
};
// ---------------------------------------------------
[
object,
uuid(05500102-FAA5-4df9-8246-BFC23AC5CEA8),
dual,
helpstring("ITVETrack Interface"),
pointer_default(unique)
]
interface ITVETrack : IDispatch
{
[propget, id(1), helpstring("property Parent")] HRESULT Parent([out, retval] IUnknown* *pVal);
[propget, id(2), helpstring("property Service")] HRESULT Service([out, retval] ITVEService* *pVal);
[propget, id(3), helpstring("property Trigger")] HRESULT Trigger([out, retval] ITVETrigger* *pVal);
[propget, id(4), helpstring("property Description")] HRESULT Description([out, retval] BSTR *pVal);
[propput, id(4), helpstring("property Description")] HRESULT Description([in] BSTR newVal);
[ id(5), helpstring("method AttachTrigger")] HRESULT AttachTrigger([in] ITVETrigger *pTrigger);
[ id(6), helpstring("method ReleaseTrigger")] HRESULT ReleaseTrigger();
[ id(7), helpstring("method CreateTrigger")] HRESULT CreateTrigger([in] const BSTR bstrDescription);
};
[
object,
uuid(05500202-FAA5-4df9-8246-BFC23AC5CEA8),
// dual,
hidden,
helpstring("ITVETrack_Helper Interface"),
pointer_default(unique)
]
interface ITVETrack_Helper : IUnknown
{
[id(1), helpstring("method ConnectParent")] HRESULT ConnectParent(ITVEVariation *pVariation);
[id(2), helpstring("method RemoveYourself")] HRESULT RemoveYourself();
[id(3), helpstring("method DumpToBSTR")] HRESULT DumpToBSTR([out] BSTR *pbstrBuff);
};
[
object,
uuid(05500112-FAA5-4df9-8246-BFC23AC5CEA8),
dual,
helpstring("ITVETracks Interface"),
pointer_default(unique)
]
interface ITVETracks : IDispatch
{
[propget, id(DISPID_NEWENUM), restricted, helpstring("property _NewEnum")] HRESULT _NewEnum([out, retval] IUnknown **pCollection);
[propget, id(COLLECTID_Count), helpstring("property Count")] HRESULT Count([out, retval] long *pVal);
[propget, id(COLLECTID_Item), helpstring("property Item")] HRESULT Item([in] VARIANT var, [out, retval] ITVETrack * *pVal);
[ id(COLLECTID_Add), helpstring("method Add")] HRESULT Add([in] ITVETrack *pTrack);
[ id(COLLECTID_Remove), helpstring("method Remove")] HRESULT Remove([in] VARIANT var);
[ id(COLLECTID_RemoveAll), helpstring("method RemoveAll")] HRESULT RemoveAll();
[ id(COLLECTID_Insert), helpstring("method Insert")] HRESULT Insert([in] int iLoc, [in] ITVETrack *pTrack);
};
// ---------------------------------------------------
[
object,
uuid(05500103-FAA5-4df9-8246-BFC23AC5CEA8),
dual,
helpstring("ITVEVariation Interface"),
pointer_default(unique)
]
interface ITVEVariation : IDispatch
{
[propget, id(1), helpstring("property Parent")] HRESULT Parent([out, retval] IUnknown* *pVal);
[propget, id(2), helpstring("property Service")] HRESULT Service([out, retval] ITVEService* *pVal);
[propget, id(3), helpstring("property Tracks")] HRESULT Tracks([out, retval] ITVETracks* *pVal);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -