summaryrefslogtreecommitdiffstats
path: root/dxsdk/Include/DShowIDL/mstve.idl
diff options
context:
space:
mode:
authorFire-Head <Fire-Head@users.noreply.github.com>2019-06-02 05:00:38 +0200
committerFire-Head <Fire-Head@users.noreply.github.com>2019-06-02 05:00:38 +0200
commitb1f9e28cd155459ab2843690c248ed9f4767bc3f (patch)
tree8e7d2a33d4c5109ea3c3562940268afc57d0915c /dxsdk/Include/DShowIDL/mstve.idl
parentrw skeleton (diff)
downloadre3-b1f9e28cd155459ab2843690c248ed9f4767bc3f.tar
re3-b1f9e28cd155459ab2843690c248ed9f4767bc3f.tar.gz
re3-b1f9e28cd155459ab2843690c248ed9f4767bc3f.tar.bz2
re3-b1f9e28cd155459ab2843690c248ed9f4767bc3f.tar.lz
re3-b1f9e28cd155459ab2843690c248ed9f4767bc3f.tar.xz
re3-b1f9e28cd155459ab2843690c248ed9f4767bc3f.tar.zst
re3-b1f9e28cd155459ab2843690c248ed9f4767bc3f.zip
Diffstat (limited to 'dxsdk/Include/DShowIDL/mstve.idl')
-rw-r--r--dxsdk/Include/DShowIDL/mstve.idl1450
1 files changed, 1450 insertions, 0 deletions
diff --git a/dxsdk/Include/DShowIDL/mstve.idl b/dxsdk/Include/DShowIDL/mstve.idl
new file mode 100644
index 00000000..07383041
--- /dev/null
+++ b/dxsdk/Include/DShowIDL/mstve.idl
@@ -0,0 +1,1450 @@
+// 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);
+ [propget, id(4), helpstring("property Description")] HRESULT Description([out, retval] BSTR *pVal);
+ [propput, id(4), helpstring("property Description")] HRESULT Description([in] BSTR newVal);
+
+ [propget, id(5), helpstring("property IsValid")] HRESULT IsValid([out, retval] VARIANT_BOOL *pVal);
+ [propget, id(6), helpstring("property MediaName")] HRESULT MediaName([out, retval] BSTR *newVal);
+ [propget, id(7), helpstring("property MediaTitle")] HRESULT MediaTitle([out, retval] BSTR *newVal);
+ [propget, id(8), helpstring("property FileIPAdapter")] HRESULT FileIPAdapter([out, retval] BSTR *newVal);
+ [propget, id(9), helpstring("property FileIPAddress")] HRESULT FileIPAddress([out, retval] BSTR *newVal);
+ [propget, id(10), helpstring("property FilePort")] HRESULT FilePort([out, retval] LONG *lPort);
+ [propget, id(11), helpstring("property TriggerIPAdapter")] HRESULT TriggerIPAdapter([out, retval] BSTR *newVal);
+ [propget, id(12), helpstring("property TriggerIPAddress")] HRESULT TriggerIPAddress([out, retval] BSTR *newVal);
+ [propget, id(13), helpstring("property TriggerPort")] HRESULT TriggerPort([out, retval] LONG *lPort);
+ [propget, id(14),helpstring("property Languages")] HRESULT Languages([out, retval] ITVEAttrMap* *ppVal);
+ [propget, id(15),helpstring("property SDPLanguages")] HRESULT SDPLanguages([out, retval] ITVEAttrMap* *ppVal);
+ [propget, id(16),helpstring("property Bandwidth")] HRESULT Bandwidth([out, retval] LONG *lVal);
+ [propget, id(17),helpstring("property BandwidthInfo")] HRESULT BandwidthInfo([out, retval] BSTR *newVal);
+ [propget, id(18),helpstring("property Attributes")] HRESULT Attributes([out, retval] ITVEAttrMap* *ppVal);
+
+ [propget, id(19),helpstring("property Rest")] HRESULT Rest([out, retval] ITVEAttrMap* *ppVal);
+ [ id(20),helpstring("method Initialize")] HRESULT Initialize([in] BSTR newVal);
+ };
+
+ [
+ object,
+ uuid(05500203-FAA5-4df9-8246-BFC23AC5CEA8),
+// dual,
+ hidden,
+ helpstring("ITVEVariation_Helper Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVEVariation_Helper : IUnknown
+ {
+ [ id(1), helpstring("method ConnectParent")] HRESULT ConnectParent([in] ITVEEnhancement *pEnhancement);
+ [ id(2), helpstring("method DefaultTo")] HRESULT DefaultTo([in] ITVEVariation *pVariationBase);
+ [ id(3), helpstring("method SetTriggerIPAdapter")] HRESULT SetTriggerIPAdapter([in] BSTR bstrBuff);
+ [ id(4), helpstring("method SetFileIPAdapter")] HRESULT SetFileIPAdapter([in] BSTR bstrBuff);
+ [ id(5), helpstring("method SubParseSDP")] HRESULT SubParseSDP(const BSTR *pbstrSDP, BOOL *pfMissingMedia);
+ [ id(6), helpstring("method ParseCBTrigger")] HRESULT ParseCBTrigger(BSTR bstrTrig);
+ [ id(7), helpstring("method FinalParseSDP")] HRESULT FinalParseSDP();
+ [ id(8), helpstring("method UpdateVariation")] HRESULT UpdateVariation(ITVEVariation *pVarNew, long *plNVAR_grfChanged);
+ [ id(9), helpstring("method InitAsXOver")] HRESULT InitAsXOver();
+ [ id(11), helpstring("method NewXOverLink")] HRESULT NewXOverLink([in] BSTR bstrLine21Trigger);
+ [ id(12), helpstring("method RemoveYourself")] HRESULT RemoveYourself();
+ [propput, id(13), helpstring("property MediaTitle")] HRESULT MediaTitle([in] BSTR bstrBuff);
+ [propput, id(14), helpstring("property IsValid")] HRESULT IsValid([in] VARIANT_BOOL fValid);
+ [ id(15), helpstring("method DumpToBSTR")] HRESULT DumpToBSTR([out] BSTR *bstrBuff);
+ };
+
+ [
+ object,
+ uuid(05500113-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVEVariations Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVEVariations : 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] ITVEVariation * *pVal);
+ [ id(COLLECTID_Add), helpstring("method Add")] HRESULT Add([in] ITVEVariation *pEnh);
+ [ 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] ITVEVariation *pEnh);
+ };
+// ---------------------------------------------------
+ [
+ object,
+ uuid(05500104-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVEEnhancement Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVEEnhancement : 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 Variations")] HRESULT Variations([out, retval] ITVEVariations* *pVal);
+
+ [propget, id(4), helpstring("property IsValid")] HRESULT IsValid([out, retval] VARIANT_BOOL *pVal);
+ [propget, id(5), helpstring("property ProtocolVersion")] HRESULT ProtocolVersion([out, retval] BSTR *pVal);
+ [propget, id(6), helpstring("property SessionUserName")] HRESULT SessionUserName([out, retval] BSTR *pVal);
+ [propget, id(7), helpstring("property SessionId")] HRESULT SessionId([out, retval] LONG *plVal);
+ [propget, id(8), helpstring("property SessionVersion")] HRESULT SessionVersion([out, retval] LONG *plVal);
+ [propget, id(9), helpstring("property SessionIPAddress")] HRESULT SessionIPAddress([out, retval] BSTR *pVal);
+ [propget, id(10), helpstring("property SessionName")] HRESULT SessionName([out, retval] BSTR *pVal);
+ [propget, id(11), helpstring("property EmailAddresses")] HRESULT EmailAddresses([out, retval] ITVEAttrMap* *pVal);
+ [propget, id(12), helpstring("property PhoneNumbers")] HRESULT PhoneNumbers([out, retval] ITVEAttrMap* *pVal);
+
+ [propget, id(13), helpstring("property Description")] HRESULT Description([out, retval] BSTR *pVal);
+ [propput, id(13), helpstring("property Description")] HRESULT Description([in] BSTR newVal);
+ [propget, id(14), helpstring("property DescriptionURI")] HRESULT DescriptionURI([out, retval] BSTR *pVal);
+
+ [propget, id(15), helpstring("property UUID")] HRESULT UUID([out, retval] BSTR *pVal);
+ [propget, id(16), helpstring("property StartTime")] HRESULT StartTime([out, retval] DATE *pVal);
+ [propget, id(17), helpstring("property StopTime")] HRESULT StopTime([out, retval] DATE *pVal);
+ [propget, id(18), helpstring("property IsPrimary")] HRESULT IsPrimary([out, retval] VARIANT_BOOL *pVal);
+
+ [propget, id(19), helpstring("property Type")] HRESULT Type([out, retval] BSTR *pVal);
+ [propget, id(20), helpstring("property TveType")] HRESULT TveType([out, retval] BSTR *pVal);
+ [propget, id(21), helpstring("property TveSize")] HRESULT TveSize([out, retval] LONG *plVal);
+ [propget, id(23), helpstring("property TveLevel")] HRESULT TveLevel([out, retval] double *pVal);
+
+ [propget, id(24), helpstring("property Attributes")] HRESULT Attributes([out, retval] ITVEAttrMap* *pVal);
+ [propget, id(25), helpstring("property Rest")] HRESULT Rest([out, retval] ITVEAttrMap* *pVal);
+
+ [propget, id(26), helpstring("property SAPHeaderBits")] HRESULT SAPHeaderBits([out, retval] short *pVal);
+ [propget, id(27), helpstring("property SAPAuthLength")] HRESULT SAPAuthLength([out, retval] short *pVal);
+ [propget, id(28), helpstring("property SAPMsgIDHash")] HRESULT SAPMsgIDHash([out, retval] LONG *pVal);
+ [propget, id(29), helpstring("property SAPSendingIP")] HRESULT SAPSendingIP([out, retval] BSTR *pVal);
+ [propget, id(30), helpstring("property SAPAuthData")] HRESULT SAPAuthData([out, retval] BSTR *pVal);
+
+ [ id(31), helpstring("method ParseAnnouncement")] HRESULT ParseAnnouncement([in] BSTR bstrAdapter, [in] const BSTR *pbstVal, [out] long *plgrfParseError, [out] long *plLineError);
+ };
+
+
+ [
+ object,
+ uuid(05500204-FAA5-4df9-8246-BFC23AC5CEA8),
+// dual,
+ hidden,
+ helpstring("ITVEEnhancement_Helper Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVEEnhancement_Helper : IUnknown
+ {
+ [id(0), helpstring("method ConnectParent")] HRESULT ConnectParent(ITVEService *pService);
+ [id(1), helpstring("method Activate")] HRESULT Activate();
+ [id(2), helpstring("method Deactivate")] HRESULT Deactivate();
+ [id(3), helpstring("method UpdateEnhancement")] HRESULT UpdateEnhancement([in] ITVEEnhancement *pEnhNew,[out] long *plNENH_grfChanged);
+ [id(4), helpstring("method InitAsXOver")] HRESULT InitAsXOver();
+ [id(5), helpstring("method NewXOverLink")] HRESULT NewXOverLink([in] BSTR bstrLine21Trigger);
+ [id(6), helpstring("method RemoveYourself")] HRESULT RemoveYourself();
+ [id(7), helpstring("method DumpToBSTR")] HRESULT DumpToBSTR([out] BSTR *pbstrBuff);
+ };
+
+
+ [
+ object,
+ uuid(05500114-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVEEnhancements Interface"),
+ pointer_default(unique)
+ ]
+
+ interface ITVEEnhancements : 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] ITVEEnhancement * *pVal);
+ [ id(COLLECTID_Add), helpstring("method Add")] HRESULT Add([in] ITVEEnhancement *pEnh);
+ [ 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] ITVEEnhancement *pEnh);
+ };
+// ---------------------------------------------------
+
+ [
+ object,
+ uuid(05500105-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVEService Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVEService : IDispatch
+ {
+ [propget, id(1), helpstring("property Parent")] HRESULT Parent([out, retval] IUnknown* *pVal);
+ [propget, id(2), helpstring("property Enhancements")] HRESULT Enhancements([out, retval] ITVEEnhancements* *pVal);
+ [propget, id(3), helpstring("property Description")] HRESULT Description([out, retval] BSTR *pVal);
+ [propput, id(3), helpstring("property Description")] HRESULT Description([in] BSTR newVal);
+ [ id(4), helpstring("method Activate")] HRESULT Activate(); // used in tuning, turns on announcement
+ [ id(5), helpstring("method Deactivate")] HRESULT Deactivate(); // used in tuning, turns off announcement
+ [propget, id(6), helpstring("property XOverLinks")] HRESULT XOverLinks([out, retval] ITVETracks* *pVal); // returns ITVETracks (Collection)
+ [propget, id(7),helpstring("property XOverEnhancement")] HRESULT XOverEnhancement([out, retval] ITVEEnhancement* *pVal); // special for tree view...
+ [ id(8), helpstring("method NewXOverLink")] HRESULT NewXOverLink([in] BSTR bstrLine21Trigger);
+ // Set date offset used added to dates before expiring.
+ // Used when doing playback recorded shows, offseting expire dates by this amount
+ [propget, id(9), helpstring("property ExpireOffset")] HRESULT ExpireOffset([out, retval] DATE *pVal);
+ [propput, id(9), helpstring("property ExpireOffset")] HRESULT ExpireOffset([in] DATE newVal);
+ // return the ITVEAttrTimeQ list giving dates of IUnknowns in this service are due to expire
+ [propget, id(10), helpstring("property ExpireQueue")] HRESULT ExpireQueue([out, retval] ITVEAttrTimeQ* *pVal);
+ // Expires any items earlier than the specified date + ExpireOffset
+ // If ezactly zero, Date defaults to <NOW>.
+ [ id(11),helpstring("method ExpireForDate")] HRESULT ExpireForDate([in] DATE dateExpireTime);
+ // Mark Service active, only one Active service currently allowed .. turns off all others.
+ [propget, id(12), helpstring("IsActive")] HRESULT IsActive([out, retval] VARIANT_BOOL *fIsActive);
+ // save and restore an arbitrary property on this service... (Useful with ITVENavAid::CacheState())
+ [propput, id(13), helpstring("Property")] HRESULT Property([in] BSTR bstrPropName, BSTR bstrPropVal);
+ [propget, id(13), helpstring("Property")] HRESULT Property([in] BSTR bstrPropName, [out, retval] BSTR *pbstrPropVal);
+ };
+
+ [
+ object,
+ uuid(05500205-FAA5-4df9-8246-BFC23AC5CEA8),
+// dual,
+ hidden,
+ helpstring("ITVEService_Helper Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVEService_Helper : IUnknown
+ {
+ [ id(1), helpstring("method ConnectParent")] HRESULT ConnectParent([in] ITVESupervisor *pSupervisor);
+ [ id(2), helpstring("method ParseCBAnnouncement")] HRESULT ParseCBAnnouncement([in] BSTR bstrFileTrigAdapter,[in] BSTR *pbstrBuff);
+ [ id(3), helpstring("method SetAnncIPValues")] HRESULT SetAnncIPValues([in] BSTR bstrAnncIPAdapter,[in] BSTR bstrAnncIPAddress,[in] LONG lAnncPort);
+ [ id(4), helpstring("method GetAnncIPValues")] HRESULT GetAnncIPValues([in] BSTR *pbstrAnncIPAdapter,[in] BSTR *pbstrAnncIPAddress,[in] LONG *plAnncPort);
+ [ id(5), helpstring("method InitXOverEnhancement")] HRESULT InitXOverEnhancement();
+ [ id(6), helpstring("method AddToExpireQueue")] HRESULT AddToExpireQueue([in] DATE dateExpires, [in] IUnknown *punkItem);
+ [ id(7), helpstring("method ChangeInExpireQueue")] HRESULT ChangeInExpireQueue([in] DATE dateExpires, [in] IUnknown *punkItem);
+ [ id(8), helpstring("method RemoveFromExpireQueue")] HRESULT RemoveFromExpireQueue([in] IUnknown *punkItem);
+ [ id(9), helpstring("method RemoveEnhFilesFromExpireQueue")] HRESULT RemoveEnhFilesFromExpireQueue([in] ITVEEnhancement *pEnhancement);
+ [propget, id(10), helpstring("method ExpireQueueChangeCount")] HRESULT ExpireQueueChangeCount([out, retval] long *pChangeCount);
+ [ id(11), helpstring("method RemoveYourself")] HRESULT RemoveYourself();
+ [ id(12), helpstring("method DumpToBSTR")] HRESULT DumpToBSTR([out] BSTR *pbstrBuff);
+ };
+
+
+ [
+ object,
+ uuid(05500305-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVEFeature Interface (Inherits ITVEService)"),
+ pointer_default(unique)
+ ]
+ interface ITVEFeature : ITVEService
+ {
+ // New methods just for the Feature
+ [id(101), helpstring("method TuneTo")] HRESULT TuneTo([in] BSTR bstrStation, [in] BSTR bstrIPAdapter);
+ [id(102), helpstring("method ReTune")] HRESULT ReTune([in] ITVEService *pService);
+ [id(103), helpstring("method BindToSupervisor")] HRESULT BindToSupervisor([in] ITVESupervisor *pTVESupervisor);
+ // these are incoming events called by Supervisor ((_ITVEvents).. Must match
+ [id(2101), helpstring("method NotifyTVETune")] HRESULT NotifyTVETune([in] NTUN_Mode tuneMode, [in] ITVEService *pService, [in] BSTR bstrDescription, [in] BSTR bstrIPAdapter);
+ [id(2102), helpstring("method NotifyTVEEnhancementNew")] HRESULT NotifyTVEEnhancementNew([in] ITVEEnhancement *pEnh);
+ [id(2103), helpstring("method NotifyTVEEnhancementUpdated")] HRESULT NotifyTVEEnhancementUpdated([in] ITVEEnhancement *pEnh, [in] long lChangedFlags); // changedFlags : NENH_grfDiff
+ [id(2104), helpstring("method NotifyTVEEnhancementStarting")] HRESULT NotifyTVEEnhancementStarting([in] ITVEEnhancement *pEnh);
+ [id(2105), helpstring("method NotifyTVEEnhancementExpired")] HRESULT NotifyTVEEnhancementExpired([in] ITVEEnhancement *pEnh);
+ [id(2106), helpstring("method NotifyTVETriggerNew")] HRESULT NotifyTVETriggerNew([in] ITVETrigger *pTrigger,[in] BOOL fActive);
+ [id(2107), helpstring("method NotifyTVETriggerUpdated")] HRESULT NotifyTVETriggerUpdated([in] ITVETrigger *pTrigger,[in] BOOL fActive, [in] long lChangedFlags); // changedFlags : NTRK_grfDiff
+ [id(2108), helpstring("method NotifyTVETriggerExpired")] HRESULT NotifyTVETriggerExpired([in] ITVETrigger *pTrigger,[in] BOOL fActive);
+ [id(2109), helpstring("method NotifyTVEPackage")] HRESULT NotifyTVEPackage([in] NPKG_Mode engPkgMode, [in] ITVEVariation *pVariation, [in] BSTR bstrUUID, [in] long cBytesTotal, [in] long cBytesReceived);
+ [id(2110), helpstring("method NotifyTVEFile")] HRESULT NotifyTVEFile([in] NFLE_Mode engFileMode, [in] ITVEVariation *pVariation, [in] BSTR bstrUrlName, [in] BSTR bstrFileName);
+ [id(2111), helpstring("method NotifyTVEAuxInfo")] HRESULT NotifyTVEAuxInfo([in] NWHAT_Mode engAuxInfoMode, [in] BSTR bstrAuxInfoString, [in] long lChangedFlags, [in] long lErrorLine); // WhatIsIt is NWHAT_Mode - lChangedFlags is NENH_grfDiff or NTRK_grfDiff treated as error bits
+
+ };
+
+ [
+ object,
+ uuid(05500115-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVEServices Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVEServices : 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] ITVEService * *pVal);
+ [ id(COLLECTID_Add), helpstring("method Add")] HRESULT Add([in] ITVEService *pService);
+ [ 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] ITVEService *pService);
+ };
+
+
+// ---------------------------------------------------
+
+ [
+ object,
+ uuid(05500106-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVESupervisor Interface"),
+ pointer_default(unique)
+ ]
+
+ interface ITVESupervisor : IDispatch
+ {
+ [propget, id(1), helpstring("property Services")] HRESULT Services([out, retval] ITVEServices* *pVal);
+ [propget, id(2), helpstring("property Description")] HRESULT Description([out, retval] BSTR *pVal);
+ [propput, id(2), helpstring("property Description")] HRESULT Description([in] BSTR newVal);
+ [ id(3), helpstring("method TuneTo")] HRESULT TuneTo([in] BSTR bstrDescription, [in] BSTR bstrIPAdapter);
+ [ id(4), helpstring("method ReTune")] HRESULT ReTune([in] ITVEService *pService);
+
+ [ id(5), helpstring("method NewXOverLink")] HRESULT NewXOverLink([in] BSTR bstrLine21Trigger);
+ // Expires any items earlier than the specified date + service.ExpireOffset
+ // If ezactly zero, Date defaults to <NOW>.
+ [ id(6), helpstring("method ExpireForDate")] HRESULT ExpireForDate([in] DATE dateExpireTime);
+
+ // need to be here rather than Helper, since called from Filter, and Supervisor_Helper
+ // not in the proxy-stub DLL
+ [ id(7), restricted, helpstring("method InitStats")] HRESULT InitStats();
+ [ id(8), restricted, helpstring("method GetStats")] HRESULT GetStats([out] BSTR *pbstrBuff); // CTVEStats
+ };
+
+ [
+ object,
+ uuid(05500206-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ hidden,
+ helpstring("ITVESupervisor_Helper Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVESupervisor_Helper : IUnknown
+ {
+ [id(1), helpstring("method ConnectParent")] HRESULT ConnectParent([in] IUnknown *pUnk);
+ [id(2), helpstring("method GetActiveService")] HRESULT GetActiveService([out] ITVEService **ppActiveService);
+ [id(3), helpstring("method GetMCastManager")] HRESULT GetMCastManager([out] ITVEMCastManager **pMCastManager);
+ [id(4), helpstring("method UnpackBuffer")] HRESULT UnpackBuffer([in] IUnknown *pTVEVariation, [in] unsigned char *m_rgbData, [in] int cBytes);
+
+ [id(5), helpstring("method NotifyEnhancement")] HRESULT NotifyEnhancement([in] NENH_Mode enhMode,[in] ITVEEnhancement *pEnhancement,[in] long lChangedFlags); // changedFlags NENH_grfDiff
+ [id(6), helpstring("method NotifyTrigger")] HRESULT NotifyTrigger([in] NTRK_Mode trgMode,[in] ITVETrack *pTrack,[in] long lChangedFlags); // changedFlags NTRK_grfDiff
+ [id(7), helpstring("method NotifyPackage")] HRESULT NotifyPackage([in] NPKG_Mode pkgMode, [in] ITVEVariation *pVariation, [in] BSTR bstrPackageUUID, [in] long cBytesTotal, [in] long cBytesReceived);
+ [id(8), helpstring("method NotifyFile")] HRESULT NotifyFile([in] NFLE_Mode fileMode, [in] ITVEVariation *pVariation, [in] BSTR bstrURLName, [in] BSTR bstrFileName);
+ [id(9), helpstring("method NotifyTune")] HRESULT NotifyTune([in] NTUN_Mode tuneMode, [in] ITVEService *pService, [in] BSTR bstrDescription, [in] BSTR bstrIPAdapter);
+ // WhatIsIt is NWHAT_Mode - lChangedFlags is NENH_grfDiff or NTRK_grfDiff treated as error bits
+ [id(10), helpstring("method NotifyAuxInfo")] HRESULT NotifyAuxInfo([in] NWHAT_Mode whatMode, [in] BSTR bstrAuxInfoString, [in] long lgrfWhatDiff, [in] long lLineError);
+
+ [id(11), helpstring("method NotifyEnhancement_XProxy")] HRESULT NotifyEnhancement_XProxy([in] NENH_Mode enhMode,[in] ITVEEnhancement *pEnhancement,[in] long lChangedFlags); // changedFlags NENH_grfDiff
+ [id(12), helpstring("method NotifyTrigger_XProxy")] HRESULT NotifyTrigger_XProxy([in] NTRK_Mode trgMode,[in] ITVETrack *pTrack,[in] long lChangedFlags); // changedFlags NTRK_grfDiff
+ [id(13), helpstring("method NotifyPackage_XProxy")] HRESULT NotifyPackage_XProxy( NPKG_Mode pkgMode, ITVEVariation *pVariation,BSTR bstrPackageUUID, long cBytesTotal,long cBytesReceived);
+ [id(14), helpstring("method NotifyFile_XProxy")] HRESULT NotifyFile_XProxy([in] NFLE_Mode fileMode, [in] ITVEVariation *pVariation, [in] BSTR bstrURLName, [in] BSTR bstrFileName);
+ [id(15), helpstring("method NotifyTune_XProxy")] HRESULT NotifyTune_XProxy([in] NTUN_Mode tuneMode, [in] ITVEService *pService, [in] BSTR bstrDescription, [in] BSTR bstrIPAdapter);
+ [id(16), helpstring("method NotifyAuxInfo_XProxy")] HRESULT NotifyAuxInfo_XProxy([in] NWHAT_Mode whatMode, [in] BSTR bstrAuxInfoString, [in] long lgrfWhatDiff,[in] long lLineError);
+
+ [propget, id(17), helpstring("property HaltFlags")] HRESULT HaltFlags([out, retval] LONG *plGrfHaltFlags);
+ [propput, id(17), helpstring("property HaltFlags")] HRESULT HaltFlags([in] LONG lGrfHaltFlags);
+
+ [ id(18), helpstring("method RemoveAllListenersOnAdapter")] HRESULT RemoveAllListenersOnAdapter([in] BSTR bstrAdapter);
+ [propget, id(19), helpstring("method PossibleIPAdapterAddress")] HRESULT PossibleIPAdapterAddress([in] int iAdapter, [out,retval] BSTR *pbstrIPAdapterAddr);
+ [ id(20), helpstring("method DumpToBSTR")] HRESULT DumpToBSTR([out] BSTR *pbstrBuff);
+
+ [propget, id(21), helpstring("property SupervisorGITProxy")] HRESULT SupervisorGITProxy([out] ITVESupervisorGITProxy **ppSupervisorGITProxy); // internal GIT refcounted pointer to supervisor
+ };
+
+ [
+ hidden,
+ object,
+ uuid(05500306-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVESupervisorGITProxy Interface"),
+ pointer_default(unique)
+ ]
+
+ interface ITVESupervisorGITProxy: IUnknown
+ {
+ [propget, id(1), helpstring("property Supervisor")] HRESULT Supervisor([out, retval] ITVESupervisor **ppVal);
+ [propput, id(1), helpstring("property Supervisor")] HRESULT Supervisor([in] ITVESupervisor *pVal);
+ };
+
+// ---------------------------------------------------
+
+ // ---------------------------------
+ [
+ object,
+ uuid(05500121-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVEAttrMap Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVEAttrMap : 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] BSTR *pVal);
+ [propget, id(COLLECTID_Key), helpstring("property Key")] HRESULT Key([in] VARIANT var, [out, retval] BSTR *pKey);
+ [ id(COLLECTID_Add), helpstring("method Add")] HRESULT Add([in] BSTR bstrKey, [in] BSTR bstrValue);
+ [ id(COLLECTID_Replace), helpstring("method Replace")] HRESULT Replace([in] BSTR bstrKey, [in] BSTR bstrValue);
+ [ id(COLLECTID_Remove), helpstring("method Remove")] HRESULT Remove([in] VARIANT var);
+ [ id(COLLECTID_RemoveAll), helpstring("method RemoveAll")] HRESULT RemoveAll();
+ [ id(7), helpstring("method Add1")] HRESULT Add1(BSTR bstrValue);
+ [ id(8), helpstring("method DumpToBSTR")] HRESULT DumpToBSTR([out] BSTR *pDump);
+ };
+
+// ---------------------------------------------------
+
+ // ---------------------------------
+ [
+ object,
+ uuid(05500122-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVEAttrTimeQ Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVEAttrTimeQ : 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] IUnknown **ppVal);
+ [propget, id(COLLECTID_Key), helpstring("property Key")] HRESULT Key([in] VARIANT var, [out, retval] DATE *pKey);
+ [ id(COLLECTID_Add), helpstring("method Add")] HRESULT Add([in] DATE dateKey, [in] IUnknown *pUnk);
+ [ id(COLLECTID_Remove), helpstring("method Remove")] HRESULT Remove([in] VARIANT var);
+ [ id(COLLECTID_RemoveAll), helpstring("method RemoveAll")] HRESULT RemoveAll();
+ [ id(COLLECTID_Update), helpstring("method Update")] HRESULT Update([in] DATE dateKey, [in] IUnknown *pUnk);
+ [ id(9), helpstring("method LockRead")] HRESULT LockRead();
+ [ id(10), helpstring("method LockWrite")] HRESULT LockWrite();
+ [ id(11), helpstring("method Unlock")] HRESULT Unlock();
+ [ id(12), helpstring("method RemoveSimple")] HRESULT RemoveSimple([in] VARIANT var); // remove without calling var->RemoveYourself()
+ [ id(13), helpstring("method DumpToBSTR")] HRESULT DumpToBSTR([out] BSTR *pDump);
+ };
+
+// ---------------------------------------------------
+ [
+ object,
+ uuid(05500130-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVEMCast Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVEMCast : IDispatch
+ {
+ [propget, id(1), helpstring("property IPAdapter")] HRESULT IPAdapter([out, retval] BSTR *pVal);
+ [propput, id(1), helpstring("property IPAdapter")] HRESULT IPAdapter([in] BSTR newVal);
+ [propget, id(2), helpstring("property IPAddress")] HRESULT IPAddress([out, retval] BSTR *pVal);
+ [propput, id(2), helpstring("property IPAddress")] HRESULT IPAddress([in] BSTR newVal);
+ [propget, id(3), helpstring("property IPPort")] HRESULT IPPort([out, retval] long *pVal);
+ [propput, id(3), helpstring("property IPPort")] HRESULT IPPort([in] long newVal);
+ [ id(4), helpstring("method Join")] HRESULT Join();
+ [ id(5), helpstring("method Leave")] HRESULT Leave();
+ [propget, id(6), helpstring("property IsJoined")] HRESULT IsJoined([out, retval] VARIANT_BOOL *pVal);
+ [propget, id(7), helpstring("property IsSuspended")] HRESULT IsSuspended([out, retval] VARIANT_BOOL *pVal);
+ [ id(8), helpstring("method Suspend")] HRESULT Suspend(VARIANT_BOOL fSuspend);
+ [propget, id(9), helpstring("property PacketCount")] HRESULT PacketCount([out, retval] long *pVal);
+ [propget, id(10), helpstring("property ByteCount")] HRESULT ByteCount([out, retval] long *pVal);
+ [ id(11), helpstring("method KeepStats")] HRESULT KeepStats(VARIANT_BOOL fKeepStats);
+ [ id(12), helpstring("method ResetStats")] HRESULT ResetStats();
+ [ id(13), helpstring("method SetReadCallback")] HRESULT SetReadCallback([in] int nBuffers, [in] int iPrioritySetback, [in] IUnknown *pVal);
+ [ id(14), helpstring("method ConnectManager")] HRESULT ConnectManager([in] ITVEMCastManager* pVal);
+ [propget, id(15), helpstring("property Manager")] HRESULT Manager([out, retval] IUnknown* *ppVal);
+ [propget, id(16), helpstring("property QueueThreadId")] HRESULT QueueThreadId([out, retval] long* pVal);
+ [propput, id(16), helpstring("property QueueThreadId")] HRESULT QueueThreadId([in] long pVal);
+ [propget, id(17), helpstring("property WhatType")] HRESULT WhatType([out, retval] NWHAT_Mode *pWhatType);
+ [propput, id(17), helpstring("property WhatType")] HRESULT WhatType([in] NWHAT_Mode whatType);
+ };
+
+ [
+ object,
+ uuid(05500131-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVEMCasts Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVEMCasts : 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] ITVEMCast * *pVal);
+ [ id(COLLECTID_Add), helpstring("method Add")] HRESULT Add([in] ITVEMCast *punk);
+ [ id(COLLECTID_Remove), helpstring("method Remove")] HRESULT Remove([in] VARIANT var);
+ [ id(COLLECTID_RemoveAll), helpstring("method RemoveAll")] HRESULT RemoveAll();
+ };
+ [
+ object,
+ uuid(05500132-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVEMCastManager Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVEMCastManager : IDispatch
+ {
+ [propget, id(1), helpstring("property MCasts")] HRESULT MCasts([out, retval] ITVEMCasts* *pVal);
+ [propget, id(2), helpstring("property Supervisor")] HRESULT Supervisor([out, retval] ITVESupervisor* *ppSupervisor);
+ [propput, id(2), helpstring("property Supervisor")] HRESULT Supervisor([in] ITVESupervisor *pSupervisor);
+ [ id(3), helpstring("method AddMulticast")] HRESULT AddMulticast([in] NWHAT_Mode whatType, [in] BSTR bsAdapter, [in] BSTR bsIPAddress, [in] LONG ulIPPort, [in] LONG cBuffers, [in] IUnknown *pICallback, [out] ITVEMCast **ppMCastAdded);
+ [ id(4), helpstring("method FindMulticast")] HRESULT FindMulticast([in] BSTR bstrIPAdapter, [in] BSTR bstrIPAddress, [in] LONG sPort, [out] ITVEMCast **ppMCast, [out] LONG *pcMatches);
+ [ id(5), helpstring("method RemoveMulticast")] HRESULT RemoveMulticast(ITVEMCast *pMCast);
+ [ id(6), helpstring("method JoinAll")] HRESULT JoinAll();
+ [ id(7), helpstring("method LeaveAll")] HRESULT LeaveAll();
+ [ id(8), helpstring("method SuspendAll")] HRESULT SuspendAll([in] VARIANT_BOOL fSuspend);
+ [ id(9), helpstring("method Lock_")] HRESULT Lock_();
+ [ id(10), helpstring("method Unlock_")] HRESULT Unlock_();
+ [ id(11), helpstring("method DumpStatsToBSTR")] HRESULT DumpStatsToBSTR(int iType, BSTR *pBSTR);
+ [propget, id(13), helpstring("property HaltFlags")] HRESULT HaltFlags([out, retval] LONG *plGrfHaltFlags);
+ [propput, id(13), helpstring("property HaltFlags")] HRESULT HaltFlags([in] LONG lGrfHaltFlags);
+ };
+
+ [
+ object,
+ uuid(05500232-FAA5-4df9-8246-BFC23AC5CEA8),
+// dual,
+ hidden,
+ helpstring("ITVEMCastManager_Helper Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVEMCastManager_Helper : IUnknown
+ {
+ [ id(1), helpstring("method DumpString")] HRESULT DumpString(BSTR bstrDump); // writes string to a Dump.txt
+ [ id(2), helpstring("method CreateQueueThread")] HRESULT CreateQueueThread();
+ [ id(3), helpstring("method KillQueueThread")] HRESULT KillQueueThread();
+ [ id(4), helpstring("method PostToQueueThread")] HRESULT PostToQueueThread(UINT uiMsg, WPARAM wParam, LPARAM lParam);
+ [ id(5), helpstring("method GetPacketCounts")] HRESULT GetPacketCounts([out] LONG *pCPackets, [out] LONG *pCPacketsDropped, [out] LONG *pCPacketsDroppedTotal);
+ };
+
+
+ [
+ object,
+ uuid(05500133-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVEMCastCallback Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVEMCastCallback : IDispatch
+ {
+ [id(1), helpstring("method SetMCast")] HRESULT SetMCast(ITVEMCast *pMCast);
+ [id(2), helpstring("method ProcessPacket")] HRESULT ProcessPacket(unsigned char *pchBuffer, long cBytes, long lPacketId);
+ [id(3), helpstring("method PostPacket")] HRESULT PostPacket(unsigned char *pchBuffer, long cBytes, long wPacketId);
+ };
+
+
+
+
+ // ................ specific callbacks ..............
+ [
+ object,
+ uuid(05500141-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVECBAnnc Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVECBAnnc : IDispatch
+ {
+ [id(1), helpstring("method Init")] HRESULT Init(BSTR bstrFileTrigAdapter, ITVEService *pService); // want ITVEService here
+ };
+ [
+ object,
+ uuid(05500142-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVECBTrig Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVECBTrig : IDispatch
+ {
+ [id(1), helpstring("method Init")] HRESULT Init(ITVEVariation *pIVariation);
+ };
+ [
+ object,
+ uuid(05500143-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVECBFile Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVECBFile : IDispatch
+ {
+ [id(1), helpstring("method Init")] HRESULT Init(ITVEVariation *pIVariation, ITVEService *pIService);
+ };
+ [
+ object,
+ uuid(05500144-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVECBDummy Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVECBDummy : IDispatch
+ {
+ [id(1), helpstring("method Init")] HRESULT Init(int i);
+ };
+
+
+// ----------------------------------------------------
+ [
+ object,
+ uuid(05500151-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVEFile Interface"),
+ pointer_default(unique)
+ ]
+ interface ITVEFile : IDispatch
+ {
+ [ id(1), helpstring("method InitializeFile")] HRESULT InitializeFile([in] ITVEVariation *pVaria, [in] BSTR bsName, [in] BSTR bsLoc, [in] DATE dateExpires);
+ [ id(2), helpstring("method InitializePackage")] HRESULT InitializePackage([in] ITVEVariation *pVaria, [in] BSTR bsName, [in] BSTR bsLoc, [in] DATE dateExpires);
+ [propget, id(3), helpstring("property Description")] HRESULT Description([out, retval] BSTR* pBstrDesc);
+ [propget, id(4), helpstring("property Location")] HRESULT Location([out, retval] BSTR* pBstrLoc);
+ [propget, id(5), helpstring("property ExpireTime")] HRESULT ExpireTime([out, retval] DATE* pDateExpires);
+ [propget, id(6), helpstring("property IsPackage")] HRESULT IsPackage([out, retval] BOOL* pfVal);
+ [propget, id(7), helpstring("property Variation")] HRESULT Variation([out, retval] ITVEVariation* *pVal);
+ [propget, id(8), helpstring("property Service")] HRESULT Service([out, retval] ITVEService* *pVal);
+ [ id(9), helpstring("method RemoveYourself")] HRESULT RemoveYourself();
+ [ id(10), helpstring("method DumpToBSTR")] HRESULT DumpToBSTR([out] BSTR *pBstrDump);
+ };
+
+
+// ----------------------------------------------------
+// ITVENavAid
+// ----------------------------------------------------
+
+[
+ object,
+ uuid (05500160-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVENavAid Interface"),
+ pointer_default(unique)
+]
+interface ITVENavAid : IDispatch
+{
+ [propput, id(1), helpstring("property WebBrowserApp")] HRESULT WebBrowserApp([in] IDispatch *pWebBrowser);
+ [propget, id(1), helpstring("property WebBrowserApp")] HRESULT WebBrowserApp([out, retval] IDispatch **ppWebBrowser);
+ [propget, id(2), helpstring("property TVETriggerCtrl")] HRESULT TVETriggerCtrl([out, retval] ITVETriggerCtrl **ppTriggerCtrl);
+ [propput, id(3), helpstring("property EnableAutoTriggering")] HRESULT EnableAutoTriggering([in] long lAutoTriggers);
+ [propget, id(3), helpstring("property EnableAutoTriggering")] HRESULT EnableAutoTriggering([out, retval] long *plAutoTriggers);
+ [propget, id(4), helpstring("property ActiveVariation")] HRESULT ActiveVariation([out, retval] ITVEVariation **ppActiveVariation);
+ [propput, id(4), helpstring("property ActiveVariation")] HRESULT ActiveVariation([in] ITVEVariation *pActiveVariation);
+ [propget, id(5), helpstring("property TVEFeature")] HRESULT TVEFeature([out, retval] ITVEFeature **ppTVEFeature);
+ [propget, id(6), helpstring("property CacheState")] HRESULT CacheState([out, retval] BSTR *pbstrBuff);
+ [propput, id(6), helpstring("property CacheState")] HRESULT CacheState([in] BSTR bstrBuff);
+ [ , id(7), helpstring("method NavUsingTVETrigger")] HRESULT NavUsingTVETrigger([in] ITVETrigger *pTrigger, [in] long lForceNav, [in] long lForceExec);
+ [ , id(8), helpstring("method ExecScript")] HRESULT ExecScript([in] BSTR bstrScript, [in] BSTR bstrLanguage);
+ [ , id(9), helpstring("method Navigate")] HRESULT Navigate([in] VARIANT *URL,[in] VARIANT *Flags,[in] VARIANT *TargetFrameName, [in] VARIANT *PostData, [in] VARIANT *Headers);
+ [propget, id(10), helpstring("property CurrTVEName")] HRESULT CurrTVEName([out, retval] BSTR *pbstrName);
+ [propget, id(11), helpstring("property CurrTVEURL")] HRESULT CurrTVEURL([out, retval] BSTR *pbstrURL);
+
+ // these are incoming sinkn events called by Supervisor ((_ITVEvents).. ID's Must match (I think)
+ // &DIID__ITVEEvents
+ [id(2101), helpstring("method NotifyTVETune")] HRESULT NotifyTVETune([in] NTUN_Mode tuneMode, [in] ITVEService *pService, [in] BSTR bstrDescription, [in] BSTR bstrIPAdapter);
+ [id(2102), helpstring("method NotifyTVEEnhancementNew")] HRESULT NotifyTVEEnhancementNew([in] ITVEEnhancement *pEnh);
+ [id(2103), helpstring("method NotifyTVEEnhancementUpdated")] HRESULT NotifyTVEEnhancementUpdated([in] ITVEEnhancement *pEnh, [in] long lChangedFlags); // changedFlags : NENH_grfDiff
+ [id(2104), helpstring("method NotifyTVEEnhancementStarting")] HRESULT NotifyTVEEnhancementStarting([in] ITVEEnhancement *pEnh);
+ [id(2105), helpstring("method NotifyTVEEnhancementExpired")] HRESULT NotifyTVEEnhancementExpired([in] ITVEEnhancement *pEnh);
+ [id(2106), helpstring("method NotifyTVETriggerNew")] HRESULT NotifyTVETriggerNew([in] ITVETrigger *pTrigger,[in] BOOL fActive);
+ [id(2107), helpstring("method NotifyTVETriggerUpdated")] HRESULT NotifyTVETriggerUpdated([in] ITVETrigger *pTrigger,[in] BOOL fActive, [in] long lChangedFlags); // changedFlags : NTRK_grfDiff
+ [id(2108), helpstring("method NotifyTVETriggerExpired")] HRESULT NotifyTVETriggerExpired([in] ITVETrigger *pTrigger,[in] BOOL fActive);
+ [id(2109), helpstring("method NotifyTVEPackage")] HRESULT NotifyTVEPackage([in] NPKG_Mode engPkgMode, [in] ITVEVariation *pVariation, [in] BSTR bstrUUID, [in] long cBytesTotal, [in] long cBytesReceived);
+ [id(2110), helpstring("method NotifyTVEFile")] HRESULT NotifyTVEFile([in] NFLE_Mode engFileMode, [in] ITVEVariation *pVariation, [in] BSTR bstrUrlName, [in] BSTR bstrFileName);
+ [id(2111), helpstring("method NotifyTVEAuxInfo")] HRESULT NotifyTVEAuxInfo([in] NWHAT_Mode engAuxInfoMode, [in] BSTR bstrAuxInfoString, [in] long lChangedFlags, [in] long lErrorLine); // WhatIsIt is NWHAT_Mode - lChangedFlags is NENH_grfDiff or NTRK_grfDiff treated as error bits
+
+
+ // &DIID_DWebBrowserEvents2,
+
+ [id(0x66), helpstring("method NotifyStatusTextChange")] HRESULT NotifyStatusTextChange(BSTR Text);
+ [id(0x6c), helpstring("method NotifyProgressChange")] HRESULT NotifyProgressChange(LONG Progress, LONG ProgressMax);
+ [id(0x69), helpstring("method NotifyCommandStateChange")] HRESULT NotifyCommandStateChange(LONG Command, VARIANT_BOOL Enable);
+ [id(0x6a), helpstring("method NotifyDownloadBegin")] HRESULT NotifyDownloadBegin();
+ [id(0x68), helpstring("method NotifyDownloadComplete")] HRESULT NotifyDownloadComplete();
+ [id(0x71), helpstring("method NotifyTitleChange")] HRESULT NotifyTitleChange(BSTR Text);
+ [id(0x70), helpstring("method NotifyPropertyChange")] HRESULT NotifyPropertyChange(BSTR szProperty);
+ [id(0xfa), helpstring("method NotifyBeforeNavigate2")] HRESULT NotifyBeforeNavigate2(IDispatch * pDisp, VARIANT * URL, VARIANT * Flags, VARIANT * TargetFrameName, VARIANT * PostData, VARIANT * Headers, VARIANT_BOOL * Cancel);
+ [id(0xfb), helpstring("method NotifyNewWindow2")] HRESULT NotifyNewWindow2(IDispatch * * ppDisp, VARIANT_BOOL * Cancel);
+ [id(0xfc), helpstring("method NotifyNavigateComplete2")] HRESULT NotifyNavigateComplete2(IDispatch * pDisp, VARIANT * URL);
+ [id(0x103), helpstring("method NotifyDocumentComplete")] HRESULT NotifyDocumentComplete(IDispatch * pDisp, VARIANT * URL);
+ [id(0xfd), helpstring("method NotifyOnQuit")] HRESULT NotifyOnQuit();
+ [id(0xfe), helpstring("method NotifyOnVisible")] HRESULT NotifyOnVisible(VARIANT_BOOL Visible);
+ [id(0xff), helpstring("method NotifyOnToolBar")] HRESULT NotifyOnToolBar(VARIANT_BOOL ToolBar);
+ [id(0x100), helpstring("method NotifyOnMenuBar")] HRESULT NotifyOnMenuBar(VARIANT_BOOL MenuBar);
+ [id(0x101), helpstring("method NotifyOnStatusBar")] HRESULT NotifyOnStatusBar(VARIANT_BOOL StatusBar);
+ [id(0x102), helpstring("method NotifyOnFullScreen")] HRESULT NotifyOnFullScreen(VARIANT_BOOL FullScreen);
+ [id(0x104), helpstring("method NotifyOnTheaterMode")] HRESULT NotifyOnTheaterMode(VARIANT_BOOL TheaterMode);
+
+} ;
+ // ------
+ // these interfaces for running without the VidControl
+ // - idea is to create CoCreate supervisor, and 'put' it here.
+[
+ object,
+ uuid (05500360-FAA5-4df9-8246-BFC23AC5CEA8),
+ hidden,
+// dual,
+ helpstring("ITVENavAid_NoVidCtl Interface"),
+ pointer_default(unique)
+]
+interface ITVENavAid_NoVidCtl : IUnknown
+{
+ [propput ,id(1), helpstring("property NoVidCtl_Supervisor")] HRESULT NoVidCtl_Supervisor([in] ITVESupervisor *pSuper);
+ [propget ,id(1), helpstring("property NoVidCtl_Supervisor")] HRESULT NoVidCtl_Supervisor([out,retval] ITVESupervisor **ppSuper);
+
+} ;
+
+ // ------
+[
+ object,
+ uuid (05500260-FAA5-4df9-8246-BFC23AC5CEA8),
+ hidden,
+ dual, // - used in proxying, must be marked Dual regardless of what .net says
+ helpstring("ITVENavAid_Helper Interface"),
+ pointer_default(unique)
+]
+interface ITVENavAid_Helper : IUnknown
+{
+ [ id(1), helpstring("method LocateVidAndTriggerCtrls")] HRESULT LocateVidAndTriggerCtrls([out] IDispatch **pVidCtrl, [out] IDispatch **pTrigCtrl);
+ [ id(2), helpstring("method NotifyTVETriggerUpdated_XProxy")] HRESULT NotifyTVETriggerUpdated_XProxy([in] ITVETrigger *pTrigger,[in] BOOL fActive, [in] long lChangedFlags); // changedFlags : NTRK_grfDiff
+ [ id(3), helpstring("method ReInitCurrNavState")] HRESULT ReInitCurrNavState([in] long lReserved);
+
+} ;
+// ----------------------------------------------------
+// Filter interfaces
+// -----------------------------------------------------
+[
+ object,
+ uuid (05500180-FAA5-4df9-8246-BFC23AC5CEA8),
+// dual,
+ helpstring("TVEFilter Interface"),
+ pointer_default(unique)
+]
+interface ITVEFilter : IUnknown
+{
+// [propget, id(2), helpstring("property Supervisor")] HRESULT Supervisor([out, retval] IDispatch **ppSuperDsp);
+ [propget, id(3), helpstring("property SupervisorPunk")] HRESULT SupervisorPunk([out, retval] IUnknown **ppSuperPunk);
+
+ [propget, id(4), helpstring("property IPAdapterAddress")] HRESULT IPAdapterAddress([out, retval] BSTR *pbstrIPAddr);
+ [propput, id(4), helpstring("property IPAdapterAddress")] HRESULT IPAdapterAddress([in] BSTR bstrIPAddr);
+
+ [propget, id(5), helpstring("property StationID")] HRESULT StationID([out, retval] BSTR *pbstrStationID);
+ [propput, id(5), helpstring("property StationID")] HRESULT StationID([in] BSTR bstrStationID);
+
+ [propget, id(6), helpstring("property MulticastList")] HRESULT MulticastList([out, retval] BSTR *pbstrMulticastList);
+ [propget, id(7), helpstring("property AdapterDescription")] HRESULT AdapterDescription([out, retval] BSTR *pbstrAdapterDescription);
+
+ [ id(8), helpstring("method ReTune")] HRESULT ReTune();
+
+ // should move to FilterHelper
+ [propget, id(9), helpstring("property HaltFlags")] HRESULT HaltFlags([out, retval] LONG *plGrfHaltFlags);
+ [propput, id(9), helpstring("property HaltFlags")] HRESULT HaltFlags([in] LONG lGrfHaltFlags);
+
+ [ id(10), helpstring("method ParseCCBytePair")] HRESULT ParseCCBytePair([in] LONG lByteType, [in] BYTE byte1, [in] BYTE byte2);
+
+ [propget, id(11), helpstring("property IPSinkAdapterAddress")] HRESULT IPSinkAdapterAddress([out, retval] BSTR *pbstrIPAddr);
+
+// [propput, id(12), helpstring("property SupervisorHelperPunk")] HRESULT get_SupervisorHelperPunk([out] IUnknown **ppSuperHelper);
+
+};
+
+// ------------------------------------------------------
+[
+ object,
+ uuid (05500280-FAA5-4df9-8246-BFC23AC5CEA8),
+ hidden,
+ helpstring("ITVEFilter_Helper Interface"),
+ pointer_default(unique)
+]
+interface ITVEFilter_Helper : IUnknown
+{
+// [id(1),helpstring("method ConnectParent")] HRESULT ConnectParent([in] ITVEEnhancement *pEnhancement);
+} ;
+
+
+[
+ object,
+ uuid (05500190-FAA5-4df9-8246-BFC23AC5CEA8),
+ dual,
+ helpstring("ITVETriggerCtrl Interface"),
+ pointer_default(unique)
+]
+interface ITVETriggerCtrl : IDispatch
+{
+ [propput, id(1)] HRESULT enabled([in] VARIANT_BOOL newVal);
+ [propget, id(1)] HRESULT enabled([out, retval] VARIANT_BOOL* pVal);
+ [propget, id(2)] HRESULT sourceID([out, retval] BSTR* pbstrID);
+ [propput, id(3)] HRESULT releasable([in] VARIANT_BOOL newVal);
+ [propget, id(3)] HRESULT releasable([out, retval] VARIANT_BOOL* pVal);
+ [propget, id(4)] HRESULT backChannel([out, retval] BSTR* pVal);
+ [propget, id(5)] HRESULT contentLevel([out, retval] double* pVal);
+} ;
+
+[
+ object,
+ uuid (05500191-FAA5-4df9-8246-BFC23AC5CEA8),
+ hidden,
+ helpstring("ITVETriggerCtrl_Helper Interface"),
+ pointer_default(unique)
+]
+interface ITVETriggerCtrl_Helper : IUnknown
+{
+ [propput, id(1)] HRESULT sourceID([in] BSTR pSourceUUID); // cache the SourceID
+ [propget, id(2)] HRESULT TopLevelPage([out, retval] BSTR *pURL); // return the cached URL (???) of the top web page
+
+} ;
+
+// ---------------------------------------------------------------------------------------
+// ***************************************************************************************
+// ----------------------------------------------------------------------------------------
+[
+ uuid(1700C001-6666-4f66-B1E2-BF3C9FBB9BA6), // new
+ version(1.0),
+ helpstring("Microsoft TVE Library and DShow Filter")
+]
+library MSTvELib
+{
+ importlib("stdole32.tlb");
+ importlib("stdole2.tlb");
+// -------------------------------------------------------
+typedef enum NENH_grfDiff // need to fill out..
+{
+ NENH_grfNone = 0x0000, // no flags
+ NENH_grfDescription = 0x00000001,
+ NENH_grfIsPrimary = 0x00000002,
+ NENH_grfProtocolVersion = 0x00000004,
+ NENH_grfSessionUserName = 0x00000008,
+ NENH_grfSessionId = 0x00000010,
+ NENH_grfSessionVersion = 0x00000020,
+ NENH_grfSessionIPAddress = 0x00000040,
+ NENH_grfSessionName = 0x00000080,
+ NENH_grfEmailAddresses = 0x00000100,
+ NENH_grfPhoneNumbers = 0x00000200,
+ NENH_grfUUID = 0x00000400,
+ NENH_grfStartTime = 0x00000800,
+ NENH_grfStopTime = 0x00001000,
+ NENH_grfType = 0x00002000,
+ NENH_grfTveType = 0x00004000,
+ NENH_grfTveSize = 0x00008000,
+ NENH_grfTveLevel = 0x00010000,
+ NENH_grfAttributes = 0x00020000,
+ NENH_grfRest = 0x00040000,
+ NENH_grfVariationAdded = 0x00080000,
+ NENH_grfVariationRemoved = 0x00100000,
+ NENH_grfDescriptionURI = 0x00200000,
+ NENH_grfSomeVarIP = 0x00400000,
+ NENH_grfSomeVarText = 0x00800000,
+ NENH_grfSomeVarBandwidth = 0x01000000,
+ NENH_grfSomeVarLanguages = 0x02000000,
+ NENH_grfSomeVarAttribute = 0x04000000,
+ NENH_grfUnused = 0x08000000,
+ NENH_grfSAPVersion = 0x10000000,
+ NENH_grfSAPAddressType = 0x20000000,
+ NENH_grfSAPOther = 0x40000000,
+ NENH_grfSAPEncryptComp = 0x80000000,
+ NENH_grfAnyIP = (NENH_grfSomeVarIP | NENH_grfVariationAdded | NENH_grfVariationRemoved),
+ NENH_grfAll = (NENH_grfSomeVarAttribute<<1) - 1 // all flags
+} NENH_grfDiff;
+
+typedef enum NVAR_grfDiff
+{
+ NVAR_grfNone = 0x0000,
+ NVAR_grfDescription = 0x0001,
+ NVAR_grfMediaName = 0x0002,
+ NVAR_grfMediaTitle = 0x0004,
+ NVAR_grfFilePort = 0x0008,
+ NVAR_grfFileIPAddress = 0x0010,
+ NVAR_grfFileIPAdapter = 0x0020,
+ NVAR_grfTriggerPort = 0x0040,
+ NVAR_grfTriggerIPAddress = 0x0080,
+ NVAR_grfTriggerIPAdapter = 0x0100,
+ NVAR_grfAttributes = 0x0200,
+ NVAR_grfLanguages = 0x0400,
+ NVAR_grfBandwidth = 0x0800,
+ NVAR_grfBandwidthInfo = 0x1000,
+ NVAR_grfRest = 0x2000,
+ NVAR_grfAnyIP = (NVAR_grfFilePort | NVAR_grfFileIPAddress | NVAR_grfFileIPAdapter |
+ NVAR_grfTriggerPort | NVAR_grfTriggerIPAddress | NVAR_grfTriggerIPAdapter),
+ NVAR_grfAnyText = (NVAR_grfDescription | NVAR_grfMediaName | NVAR_grfMediaTitle),
+ NVAR_grfAnyBandwidth = (NVAR_grfBandwidth | NVAR_grfBandwidthInfo),
+ NVAR_grfAnyAttribute = (NVAR_grfAttributes | NVAR_grfRest),
+
+ NVAR_grfAll = (NVAR_grfRest<<1) - 1 // all flags
+} NVAR_grfDiff;
+
+
+typedef enum NTRK_grfDiff // attempt at a bit-field flag
+{
+ NTRK_grfNone = 0x00,
+ NTRK_grfURL = 0x01,
+ NTRK_grfName = 0x02,
+ NTRK_grfScript = 0x04,
+ NTRK_grfDate = 0x08,
+ NTRK_grfTVELevel= 0x10,
+ NTRK_grfExpired = 0x20, // trigger arrived out of date
+ NTRK_grfRest = 0x40,
+ NTRK_grfAll = (NTRK_grfRest<<1) - 1 // all flags
+} NTRK_grfDiff;
+
+typedef enum NFLT_grfHaltFlags // flags to turn various processing bits off
+{
+ NFLT_grfNone = 0x00,
+
+ NFLT_grfTA_Listen = 0x01, // don't listen for CC (XOverLink) triggers
+ NFLT_grfTA_Decode = 0x02, // don't accumulate byte data for XOverLink triggers into strings
+ NFLT_grfTA_Parse = 0x04, // don't parse any XOverLink data
+
+ NFLT_grfTB_AnncListen = 0x10, // suspend listening for announcement packets if set
+ NFLT_grfTB_AnncDecode = 0x20, // suspend decoding and processing of announcement packets if set
+ NFLT_grfTB_AnncParse = 0x40, // don't parse any announcements
+
+ NFLT_grfTB_TrigListen = 0x100, // suspend listening for transport B triggers
+ NFLT_grfTB_TrigDecode = 0x200, // suspend listening for transport B triggers
+ NFLT_grfTB_TrigParse = 0x400, // don't parse any transport B triggers
+
+ NFLT_grfTB_DataListen = 0x1000, // suspend listening for transport B data (files)
+ NFLT_grfTB_DataDecode = 0x2000, // suspend listening for transport B data (files)
+ NFLT_grfTB_DataParse = 0x4000, // don't parse any transport B data (files)
+
+ NFLT_grf_ExpireQueue = 0x10000, // turn expire queue processing on and off
+ NFLT_grf_Extra1 = 0x100000, // extra flag
+ NFLT_grf_Extra2 = 0x200000, // extra flag
+ NFLT_grf_Extra3 = 0x400000, // extra flag
+ NFLT_grf_Extra4 = 0x800000 //extra flag
+
+} NFLT_grfHaltFlags;
+
+
+// -------------------------------------------------
+// ---------------------------------------------------
+// CAUTION - if Change events below, need to perform (after MIDL compiling this file):
+// CTVESupervisor->Implement Connection Point (_ITVEEvents)
+// AND
+// CTVEFeature->Implement Connection Point (_ITVEEvents)
+// to regenerate the CProxy_ITVEEvents<> code.
+//
+// Select Browse... button, goto filters\tve\mstve\objd\i386 directory, use mstve.tlb
+//
+// Note thefile MSTvECP.h must be checked out.
+//
+
+ [
+ uuid(05500000-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("_ITVEEvents Interface")
+ ]
+ dispinterface _ITVEEvents
+ {
+ properties:
+ methods:
+ [id(2101), helpstring("method NotifyTVETune")] HRESULT NotifyTVETune([in] NTUN_Mode tuneMode, [in] ITVEService *pService, [in] BSTR bstrDescription, [in] BSTR bstrIPAdapter);
+ [id(2102), helpstring("method NotifyTVEEnhancementNew")] HRESULT NotifyTVEEnhancementNew([in] ITVEEnhancement *pEnh);
+ [id(2103), helpstring("method NotifyTVEEnhancementUpdated")] HRESULT NotifyTVEEnhancementUpdated([in] ITVEEnhancement *pEnh, [in] long lChangedFlags); // changedFlags : NENH_grfDiff
+ [id(2104), helpstring("method NotifyTVEEnhancementStarting")] HRESULT NotifyTVEEnhancementStarting([in] ITVEEnhancement *pEnh);
+ [id(2105), helpstring("method NotifyTVEEnhancementExpired")] HRESULT NotifyTVEEnhancementExpired([in] ITVEEnhancement *pEnh);
+ [id(2106), helpstring("method NotifyTVETriggerNew")] HRESULT NotifyTVETriggerNew([in] ITVETrigger *pTrigger,[in] BOOL fActive);
+ [id(2107), helpstring("method NotifyTVETriggerUpdated")] HRESULT NotifyTVETriggerUpdated([in] ITVETrigger *pTrigger,[in] BOOL fActive, [in] long lChangedFlags); // changedFlags : NTRK_grfDiff
+ [id(2108), helpstring("method NotifyTVETriggerExpired")] HRESULT NotifyTVETriggerExpired([in] ITVETrigger *pTrigger,[in] BOOL fActive);
+ [id(2109), helpstring("method NotifyTVEPackage")] HRESULT NotifyTVEPackage([in] NPKG_Mode engPkgMode, [in] ITVEVariation *pVariation, [in] BSTR bstrUUID, [in] long cBytesTotal, [in] long cBytesReceived);
+ [id(2110), helpstring("method NotifyTVEFile")] HRESULT NotifyTVEFile([in] NFLE_Mode engFileMode, [in] ITVEVariation *pVariation, [in] BSTR bstrUrlName, [in] BSTR bstrFileName);
+ [id(2111), helpstring("method NotifyTVEAuxInfo")] HRESULT NotifyTVEAuxInfo([in] NWHAT_Mode engAuxInfoMode, [in] BSTR bstrAuxInfoString, [in] long lChangedFlags, [in] long lErrorLine); // WhatIsIt is NWHAT_Mode - lChangedFlags is NENH_grfDiff or NTRK_grfDiff treated as error bits
+ };
+
+ [
+ uuid(05500001-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVETrigger Class")
+ ]
+ coclass TVETrigger
+ {
+ [default] interface ITVETrigger;
+ interface ITVETrigger_Helper;
+ };
+// ----------------------------------------------------
+
+ [
+ uuid(05500002-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVETrack Class")
+ ]
+ coclass TVETrack
+ {
+ [default] interface ITVETrack;
+ interface ITVETrack_Helper;
+ };
+// ---------------------------------
+// [
+// uuid(05500012-FAA5-4df9-8246-BFC23AC5CEA8),
+// helpstring("TVETracks Class")
+// ]
+// coclass TVETracks
+// {
+// [default] interface ITVETracks;
+// };
+// ----------------------------------------------------
+
+ [
+ uuid(05500003-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVEVariation Class")
+ ]
+ coclass TVEVariation
+ {
+ [default] interface ITVEVariation;
+ interface ITVEVariation_Helper;
+ };
+// [
+// uuid(05500013-FAA5-4df9-8246-BFC23AC5CEA8),
+// helpstring("TVEVariations Class")
+// ]
+// coclass TVEVariations
+// {
+// [default] interface ITVEVariations;
+// };
+// ---------------------------------------------------
+ [
+ uuid(05500004-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVEEnhancement Class")
+ ]
+ coclass TVEEnhancement
+ {
+ [default] interface ITVEEnhancement;
+ interface ITVEEnhancement_Helper;
+ };
+
+ // --------------------------------
+
+ [
+ uuid(05500014-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVEEnhancements Class")
+ ]
+ coclass TVEEnhancements
+ {
+ [default] interface ITVEEnhancements;
+ };
+// ---------------------------------------------------
+
+
+ [
+ uuid(05500005-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVEService Class")
+ ]
+ coclass TVEService
+ {
+ [default] interface ITVEService;
+ interface ITVEService_Helper;
+ };
+
+ [
+ uuid(05500025-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVEFeature Class")
+ ]
+ coclass TVEFeature
+ {
+ [default] interface ITVEFeature;
+ [default, source] dispinterface _ITVEEvents; // out going event handler
+ interface _ITVEEvents; // incoming event interface
+// interface ITVEService_Helper;
+ };
+
+ // -------------------------------
+
+ [
+ uuid(05500015-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVEServices Class")
+ ]
+ coclass TVEServices
+ {
+ [default] interface ITVEServices;
+ };
+
+
+// ---------------------------------------------------
+ [
+ uuid(05500006-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVESupervisor Class")
+ ]
+ coclass TVESupervisor
+ {
+ [default] interface ITVESupervisor;
+ [default, source] dispinterface _ITVEEvents;
+ interface ITVESupervisor_Helper;
+ };
+/*
+ [
+ hidden,
+ uuid(05500406-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("ITVESupervisorGITProxy Class")
+ ]
+ coclass TVESupervisorGITProxy
+ {
+ [default] interface ITVESupervisorGITProxy;
+ };
+ */
+// ---------------------------------------------------
+
+ [
+ uuid(05500021-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVEAttrMap Class")
+ ]
+ coclass TVEAttrMap
+ {
+ [default] interface ITVEAttrMap;
+ };
+
+ [
+ uuid(05500022-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVEAttrTimeQ Class")
+ ]
+ coclass TVEAttrTimeQ
+ {
+ [default] interface ITVEAttrTimeQ;
+ };
+
+ [
+ uuid(05500030-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVEMCast Class")
+ ]
+ coclass TVEMCast
+ {
+ [default] interface ITVEMCast;
+ };
+
+ [
+ uuid(05500031-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVEMCasts Class")
+ ]
+ coclass TVEMCasts
+ {
+ [default] interface ITVEMCasts;
+ };
+
+ [
+ uuid(05500032-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVEMCastManager Class")
+ ]
+ coclass TVEMCastManager
+ {
+ [default] interface ITVEMCastManager;
+ interface ITVEMCastManager_Helper;
+ };
+
+
+ [
+ uuid(05500040-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVEMCastCallback Class")
+ ]
+ coclass TVEMCastCallback
+ {
+ [default] interface ITVEMCastCallback;
+ };
+ [
+ uuid(05500041-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVECBAnnc Class")
+ ]
+ // specific Multicast Callbacks
+ coclass TVECBAnnc
+ {
+ [default] interface ITVECBAnnc;
+ };
+ [
+ uuid(05500042-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVECBTrig Class")
+ ]
+ coclass TVECBTrig
+ {
+ [default] interface ITVECBTrig;
+ };
+ [
+ uuid(05500043-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVECBFile Class")
+ ]
+ coclass TVECBFile
+ {
+ [default] interface ITVECBFile;
+ };
+ [
+ uuid(05500049-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVECBDummy Class")
+ ]
+ coclass TVECBDummy
+ {
+ [default] interface ITVECBDummy;
+ };
+
+
+ [
+ uuid(05500050-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVEFile Class")
+ ]
+ coclass TVEFile
+ {
+ [default] interface ITVEFile;
+ }
+
+ // This control gets CoCreate'ed by an app to handle hooking things together
+ [
+ uuid(05500070-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVENavAid Class")
+ ]
+ coclass TVENavAid
+ {
+ [default] interface ITVENavAid; // controllable from HTML
+ interface ITVENavAid_Helper; // internal control methods
+ interface ITVENavAid_NoVidCtl; // to work without the VidControl
+ };
+
+ // this is the DShow TVE Receiver Filter that encapsulates a TVESupervisor
+ // object in a in a DShow graph
+ [
+ uuid(05500080-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVEFilter Class")
+ ]
+ coclass TVEFilter
+ {
+// [default, source] dispinterface _ITVEEvents;
+ [default] interface ITVEFilter;
+ interface ITVEFilter_Helper;
+ };
+
+ // This control gets CoCreated by HTML in <OBJECT TYPE="application\tve-trigger">
+ // Implements the tve-trigger receiver object properties as per Atvef Spec
+ [
+ uuid(05500091-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("_ITVETriggerCtrlEvents Interface")
+ ]
+ dispinterface _ITVETriggerCtrlEvents
+ {
+ properties:
+ methods:
+ };
+
+
+ [
+ uuid(05500090-FAA5-4df9-8246-BFC23AC5CEA8),
+ helpstring("TVETriggerCtrl Class")
+ ]
+ coclass TVETriggerCtrl
+ {
+ [default] interface ITVETriggerCtrl; // controllable from HTML
+ interface ITVETriggerCtrl_Helper; // internal control methods
+ [default, source] dispinterface _ITveTriggerCtrlEvents; // fire control events to HTML
+// interface _ITVEvents; // respond to slew of TVE events
+ };
+
+};