⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mstve.idl

📁 vc6.0完整版
💻 IDL
📖 第 1 页 / 共 5 页
字号:
// 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 + -