// MSTvCA.idl : IDL source for MSTvCA.dll // // This file will be processed by the MIDL tool to // produce the type library (CA.tlb) and marshalling code. import "oaidl.idl"; import "ocidl.idl"; #include "olectl.h" /* [ object, dual, uuid(49a32d3c-7d85-11d2-8895-00c04f794967), helpstring("ITuneRequest Interface"), pointer_default(unique) ] interface ITuneRequest : IDispatch { }; */ import "tuner.idl"; // includes the whole BDA world! Yecko! interface ICAManager; interface ICARequest; interface ICAPolicy; interface ICAPolicies; interface ICAPoliciesInternal; interface ICAToll; interface ICATolls; interface ICATollsInternal; interface ICADenial; interface ICADenials; interface ICAOffer; interface ICAOffers; interface ICAComponent; interface ICAComponents; #define COLLECTID_Item 0 #define COLLECTID_Count 1 #define COLLECTID_Add 2 #define COLLECTID_Remove 3 #define COLLECTID_AddNew 4 #define COLLECTID_CountDenied 5 // ICADenials #define COLLECTID_CountSelected 6 // ICADenials #define COLLECTID_PaySelectedTolls 7 // ICADenials typedef enum { Unselected = 0, Selected = 1 } CATollState; typedef enum { Denied = 0, Transient = 1, // Allowed = 2, DescriptionShort = 10, // one of the description fields changed DescriptionLong = 11, // via a ICADenial::put_Description() DescriptionHTML = 12, // DescriptionXML = 13 // (keep these current+10 with list below...) } CADenialState; typedef enum { Short = 0, // must be numeric, starting at 0. (Used as array index). Long = 1, // in approximatly order of length in bytes URL = 2, HTML = 3, XML = 4, kDescEnd = 5 // invalid format, 1+ last real one (Used as array length). } CADescFormat; typedef enum { Request = 1, ComponentX = 2, Offers = 4, PaidTolls = 8, Policies = 16, Standard = 15, // all put the policies All = 31 // all } CAUIDisplayFields; // --------------------------------------------------------------- // if add methods to ICAManagerInternal, be sure to add MAGICCALL in CAManagerProxy too.. // --------------------------------------------------------------- [ object, uuid(11166301-DF8A-463a-B620-7BEC23542010), dual, // Helpers are Dual, IUnknown... so see from VB hidden, restricted, helpstring("ICAManagerInternal Interface"), pointer_default(unique) ] interface ICAManagerInternal : IUnknown { [ id(1), helpstring("method Save")] HRESULT Save(); [ id(2), helpstring("method Load")] HRESULT Load(); [propput, id(3), helpstring("property MarkDirty")] HRESULT MarkDirty([in] BOOL fDirty); [propget, id(3), helpstring("property MarkDirty")] HRESULT MarkDirty([out, retval] BOOL *pfDirty); [propput, id(4), helpstring("property TuneRequest")] HRESULT TuneRequest([in] ITuneRequest *ptunereq); [ id(5), helpstring("method GetDefaultUI")] HRESULT GetDefaultUI([out] HWND *phwnd); [ id(6), helpstring("method SetDefaultUI")] HRESULT SetDefaultUI([in] HWND hwnd); // return the main CAManager object, not the proxy one. [propget, id(7), helpstring("property CAManagerMain")] HRESULT CAManagerMain([out,retval] ICAManager **ppManagerMain); [propput, id(8), helpstring("property BroadcastEventService")] HRESULT BroadcastEventService([in] IBroadcastEvent *pBroadcastEventService); [propget, id(8), helpstring("property BroadcastEventService")] HRESULT BroadcastEventService([out, retval] IBroadcastEvent **ppBroadcastEventService); [ id(9), helpstring("method DisplayDefaultUI")] HRESULT DisplayDefaultUI([in] VARIANT_BOOL fDisplay); [ id(10), helpstring("method EnableDefaultUIPayTollsButton")] HRESULT EnableDefaultUIPayTollsButton([in] VARIANT_BOOL fEnabled); [ id(11), helpstring("method UpdateDefaultUIForToll")] HRESULT UpdateDefaultUIForToll([in] ICAToll *pToll,[in] CATollState enState); [propput, id(12), helpstring("property TuneRequestInt")] HRESULT TuneRequestInt([in] ITuneRequest *ptunereq); [ id(13), helpstring("method AddDenialsFor")] HRESULT AddDenialsFor([in] IUnknown *pUnk); // see also ICAManager::get_DenialsFor() [ id(14), helpstring("method RemoveDenialsFor")] HRESULT RemoveDenialsFor([in] IUnknown *pUnk); [ id(2201),helpstring("method NotifyRequestActivated")] HRESULT NotifyRequestActivated([in] ICARequest *pReq); [ id(2202),helpstring("method NotifyRequestDeactivated")] HRESULT NotifyRequestDeactivated([in] ICARequest *pReq); [ id(2203),helpstring("method NotifyOfferAdded")] HRESULT NotifyOfferAdded([in] ICAOffer *pOffer,[in] long cOffers); [ id(2204),helpstring("method NotifyOfferRemoved")] HRESULT NotifyOfferRemoved([in] ICAOffer *pOffer,[in] long cOffers); [ id(2205),helpstring("method NotifyPolicyAdded")] HRESULT NotifyPolicyAdded([in] ICAPolicy *pPolicy,[in] long cPolicies); [ id(2206),helpstring("method NotifyPolicyRemoved")] HRESULT NotifyPolicyRemoved([in] ICAPolicy *pPolicy,[in] long cPolicies); [ id(2207),helpstring("method NotifyRequestDenialAdded")] HRESULT NotifyRequestDenialAdded([in] ICARequest *pReq, [in] ICADenial *pDenial,[in] long cDenials); [ id(2208),helpstring("method NotifyRequestDenialRemoved")] HRESULT NotifyRequestDenialRemoved([in] ICARequest *pReq, [in] ICADenial *pDenial,[in] long cDenials); [ id(2209),helpstring("method NotifyDenialTollAdded")] HRESULT NotifyDenialTollAdded([in] ICADenial *pDenial, [in] ICAToll *pToll, [in] long cTolls); [ id(2210),helpstring("method NotifyDenialTollRemoved")] HRESULT NotifyDenialTollRemoved([in] ICADenial *pDenial, [in] ICAToll *pToll, [in] long cTolls); [ id(2211),helpstring("method NotifyTollDenialAdded")] HRESULT NotifyTollDenialAdded([in] ICAToll *pToll, [in] ICADenial *pDenial,[in] long cDenials); [ id(2212),helpstring("method NotifyTollDenialRemoved")] HRESULT NotifyTollDenialRemoved([in] ICAToll *pToll, [in] ICADenial *pDenial,[in] long cDenials); [ id(2213),helpstring("method NotifyOfferTollAdded")] HRESULT NotifyOfferTollAdded([in] ICAOffer *pOffer, [in] ICAToll *pToll, [in] long cTolls); [ id(2214),helpstring("method NotifyOfferTollRemoved")] HRESULT NotifyOfferTollRemoved([in] ICAOffer *pOffer, [in] ICAToll *pToll, [in] long cTolls); [ id(2215),helpstring("method NotifyTollStateChanged")] HRESULT NotifyTollStateChanged([in] ICAToll *pToll, [in] CATollState enStateLast); [ id(2216),helpstring("method NotifyDenialStateChanged")] HRESULT NotifyDenialStateChanged([in] ICADenial *pDenial, [in] CADenialState enStateLast); [ id(2217),helpstring("method NotifyComponentDenialAdded")] HRESULT NotifyComponentDenialAdded([in] ICAComponent *pReq, [in] ICADenial *pDenial,[in] long cDenials); [ id(2218),helpstring("method NotifyComponentDenialRemoved")] HRESULT NotifyComponentDenialRemoved([in] ICAComponent *pReq, [in] ICADenial *pDenial,[in] long cDenials); }; [ object, uuid(11166302-DF8A-463a-B620-7BEC23542010), dual, // Helpers are Dual, IUnknown... so see from VB hidden, restricted, helpstring("ICAManagerXProxy Interface"), pointer_default(unique) ] interface ICAManagerXProxy : IUnknown { [propget, id(1), helpstring("property PunkCAManagerProxy")] HRESULT PunkCAManagerProxy([out,retval] IUnknown **ppUnkCAManagerProxy); [ id(2201),helpstring("method NotifyRequestActivated_XProxy")] HRESULT NotifyRequestActivated_XProxy([in] ICARequest *pReq); [ id(2202),helpstring("method NotifyRequestDeactivated_XProxy")] HRESULT NotifyRequestDeactivated_XProxy([in] ICARequest *pReq); [ id(2203),helpstring("method NotifyOfferAdded_XProxy")] HRESULT NotifyOfferAdded_XProxy([in] ICAOffer *pOffer,[in] long cOffers); [ id(2204),helpstring("method NotifyOfferRemoved_XProxy")] HRESULT NotifyOfferRemoved_XProxy([in] ICAOffer *pOffer,[in] long cOffers); [ id(2205),helpstring("method NotifyPolicyAdded_XProxy")] HRESULT NotifyPolicyAdded_XProxy([in] ICAPolicy *pPolicy,[in] long cPolicies); [ id(2206),helpstring("method NotifyPolicyRemoved_XProxy")] HRESULT NotifyPolicyRemoved_XProxy([in] ICAPolicy *pPolicy,[in] long cPolicies); [ id(2207),helpstring("method NotifyRequestDenialAdded_XProxy")] HRESULT NotifyRequestDenialAdded_XProxy([in] ICARequest *pReq, [in] ICADenial *pDenial,[in] long cDenials); [ id(2208),helpstring("method NotifyRequestDenialRemoved_XProxy")] HRESULT NotifyRequestDenialRemoved_XProxy([in] ICARequest *pReq, [in] ICADenial *pDenial,[in] long cDenials); [ id(2209),helpstring("method NotifyDenialTollAdded_XProxy")] HRESULT NotifyDenialTollAdded_XProxy([in] ICADenial *pDenial, [in] ICAToll *pToll, [in] long cTolls); [ id(2210),helpstring("method NotifyDenialTollRemoved_XProxy")] HRESULT NotifyDenialTollRemoved_XProxy([in] ICADenial *pDenial, [in] ICAToll *pToll, [in] long cTolls); [ id(2211),helpstring("method NotifyTollDenialAdded_XProxy")] HRESULT NotifyTollDenialAdded_XProxy([in] ICAToll *pToll, [in] ICADenial *pDenial,[in] long cDenials); [ id(2212),helpstring("method NotifyTollDenialRemoved_XProxy")] HRESULT NotifyTollDenialRemoved_XProxy([in] ICAToll *pToll, [in] ICADenial *pDenial,[in] long cDenials); [ id(2213),helpstring("method NotifyOfferTollAdded_XProxy")] HRESULT NotifyOfferTollAdded_XProxy([in] ICAOffer *pOffer, [in] ICAToll *pToll, [in] long cTolls); [ id(2214),helpstring("method NotifyOfferTollRemoved_XProxy")] HRESULT NotifyOfferTollRemoved_XProxy([in] ICAOffer *pOffer, [in] ICAToll *pToll, [in] long cTolls); [ id(2215),helpstring("method NotifyTollStateChanged_XProxy")] HRESULT NotifyTollStateChanged_XProxy([in] ICAToll *pToll, [in] CATollState enStateLast); [ id(2216),helpstring("method NotifyDenialStateChanged_XProxy")] HRESULT NotifyDenialStateChanged_XProxy([in] ICADenial *pDenial, [in] CADenialState enStateLast); [ id(2217),helpstring("method NotifyComponentDenialAdded_XProxy")] HRESULT NotifyComponentDenialAdded_XProxy([in] ICAComponent *pReq, [in] ICADenial *pDenial,[in] long cDenials); [ id(2218),helpstring("method NotifyComponentDenialRemoved_XProxy")] HRESULT NotifyComponentDenialRemoved_XProxy([in] ICAComponent *pReq, [in] ICADenial *pDenial,[in] long cDenials); }; // --------------------------------------------------------------- // --------------------------------------------------------------- [ object, uuid(11166420-DF8A-463a-B620-7BEC23542010), dual, helpstring("ICAPolicies Interface"), pointer_default(unique) ] interface ICAPolicies : IDispatch { [propget, id(DISPID_NEWENUM), restricted] HRESULT _NewEnum([out, retval] IUnknown **ppCollection); [propget, id(COLLECTID_Count)] HRESULT Count([out, retval] long *Count); [propget, id(COLLECTID_Item)] HRESULT Item([in] VARIANT Index, [out, retval] ICAPolicy **ppPolicy); [ id(COLLECTID_Add)] HRESULT Add([in] ICAPolicy *pPolicy); [ id(COLLECTID_Remove)] HRESULT Remove([in] VARIANT Index); }; [ object, uuid(11166421-DF8A-463a-B620-7BEC23542010), dual, hidden, restricted, helpstring("ICAPoliciesInternal Interface"), pointer_default(unique) ] interface ICAPoliciesInternal : IUnknown { [id(1),helpstring("method SetCAManager")] HRESULT SetCAManager([in] ICAManager *pManager); [id(2),helpstring("method CheckRequest")] HRESULT CheckRequest([in] ICARequest *pReq); }; // --------------------------------------------------------------- [ object, uuid(11166430-DF8A-463a-B620-7BEC23542010), dual, helpstring("ICATolls Interface"), pointer_default(unique) ] interface ICATolls : IDispatch { [propget, id(DISPID_NEWENUM), restricted] HRESULT _NewEnum([out, retval] IUnknown **ppCollection); [propget, id(COLLECTID_Count)] HRESULT Count([out, retval] long *Count); [propget, id(COLLECTID_Item)] HRESULT Item([in] VARIANT Index, [out, retval] ICAToll **ppToll); [ id(COLLECTID_Add)] HRESULT Add([in] ICAToll *pToll); [ id(COLLECTID_Remove)] HRESULT Remove([in] VARIANT Index); }; [ object, uuid(11166431-DF8A-463a-B620-7BEC23542010), dual, hidden, restricted, helpstring("ICATolls Internal Interface"), pointer_default(unique) ] interface ICATollsInternal : IUnknown // workaround for not being able to get _ICAResDenialEvents to work { [ id(1),helpstring("method SetCAManager")] HRESULT SetCAManager([in] ICAManager *pManager); [ id(2),helpstring("method GetCAManager")] HRESULT GetCAManager([out] ICAManager **ppManager); [ id(3),helpstring("method SetMustPersist")] HRESULT SetMustPersist([in] BOOL fMustPersist); [ id(4),helpstring("method Save")] HRESULT Save([in] IStorage *pstore,[in] BSTR bstrPrefix); [ id(5),helpstring("method Load")] HRESULT Load([in] IStorage *pstore,[in] BSTR bstrPrefix); [ id(6),helpstring("method NotifyStateChanged")] HRESULT NotifyStateChanged([in] ICAToll *pToll, [in] CATollState enStateFrom); [ id(7),helpstring("method NotifyTollSelectionChanged")] HRESULT NotifyTollSelectionChanged([in] ICAToll *pToll, [in] BOOL fSelected); }; // --------------------------------------------------------------- [ object, uuid(11166440-DF8A-463a-B620-7BEC23542010), dual, helpstring("ICADenials Interface"), pointer_default(unique) ] interface ICADenials : IDispatch { [propget, id(DISPID_NEWENUM), restricted] HRESULT _NewEnum([out, retval] IUnknown **ppCollection); [propget, id(COLLECTID_Count) ] HRESULT Count([out, retval] long *Count); [propget, id(COLLECTID_Item)] HRESULT Item([in] VARIANT Index, [out, retval] ICADenial **ppDenial); [propget, id(COLLECTID_AddNew), helpstring("property AddNew")] HRESULT AddNew([in] ICAPolicy *ppolicy, [in] BSTR bstrShortDesc, [in] IUnknown *pUnkDeniedObject, [in] long enDenialState, [out, retval] ICADenial **ppDenial); [ id(COLLECTID_Remove)] HRESULT Remove([in] VARIANT Index); [propget, id(COLLECTID_CountDenied)] HRESULT CountDenied([out, retval] long *Count); [propget, id(COLLECTID_CountSelected)] HRESULT CountSelected([out, retval] long *Count); [ id(COLLECTID_PaySelectedTolls)] HRESULT PaySelectedTolls(); }; [ object, uuid(11166441-DF8A-463a-B620-7BEC23542010), dual, hidden, restricted, helpstring("ICADenialsInternal Interface"), pointer_default(unique) ] interface ICADenialsInternal : IUnknown { [ id(1),helpstring("method SetCAManager")] HRESULT SetCAManager([in] ICAManager *pManager); [ id(2),helpstring("method NotifyDenialStateChanged")] HRESULT NotifyDenialStateChanged([in] ICADenial *pDenial, [in] CADenialState enStateLast); }; // --------------------------------------------------------------- [ object, uuid(11166450-DF8A-463a-B620-7BEC23542010), dual, helpstring("ICAOffers Interface"), pointer_default(unique) ] interface ICAOffers : IDispatch { [propget, id(DISPID_NEWENUM) , restricted] HRESULT _NewEnum([out, retval] IUnknown **ppCollection); [propget, id(COLLECTID_Count)] HRESULT Count([out, retval] long *Count); [propget, id(COLLECTID_Item)] HRESULT Item([in] VARIANT Index, [out, retval] ICAOffer **ppOffer); [propget, id(COLLECTID_AddNew), helpstring("property AddNew")] HRESULT AddNew([in] ICAPolicy *pPolicy, [in] BSTR bstrName, [in] DATE dateStart, [in] DATE dateEnd, [out, retval] ICAOffer **ppOffer); [ id(COLLECTID_Remove)] HRESULT Remove([in] VARIANT Index); }; [ object, uuid(11166470-DF8A-463a-B620-7BEC23542010), dual, helpstring("ICAComponents Interface"), pointer_default(unique) ] interface ICAComponents : IDispatch { [propget, id(DISPID_NEWENUM) , restricted] HRESULT _NewEnum([out, retval] IUnknown **ppCollection); [propget, id(COLLECTID_Count)] HRESULT Count([out, retval] long *Count); [propget, id(COLLECTID_Item)] HRESULT Item([in] VARIANT Index, [out, retval] ICAComponent **ppComponent); // [ id(COLLECTID_Add)] HRESULT Add([in] ICAComponent *pComponent); // [ id(COLLECTID_Remove)] HRESULT Remove([in] VARIANT Index); }; [ object, uuid(11166361-DF8A-463a-B620-7BEC23542010), dual, hidden, helpstring("ICAComponentInternal Interface"), pointer_default(unique) ] interface ICAComponentInternal : IUnknown { [ id(1), helpstring("method RemoveAllDenials")] HRESULT RemoveAllDenials(); [propget, id(2), helpstring("property Description")] HRESULT Description([in] CADescFormat enFormat, [out, retval] BSTR *pbstrDescription); }; // --------------------------------------------------------------- [ object, uuid(860A3FE2-DED1-40E2-896C-057681A8A1A8), dual, helpstring("ICADefaultDlg Interface"), pointer_default(unique) ] interface ICADefaultDlg : IDispatch { [propput, id(DISPID_AUTOSIZE)] HRESULT AutoSize([in]VARIANT_BOOL vbool); [propget, id(DISPID_AUTOSIZE)] HRESULT AutoSize([out,retval]VARIANT_BOOL* pbool); [propput, id(DISPID_BACKCOLOR)] HRESULT BackColor([in]OLE_COLOR clr); [propget, id(DISPID_BACKCOLOR)] HRESULT BackColor([out,retval]OLE_COLOR* pclr); [propput, id(DISPID_BACKSTYLE)] HRESULT BackStyle([in]long style); [propget, id(DISPID_BACKSTYLE)] HRESULT BackStyle([out,retval]long* pstyle); [propput, id(DISPID_BORDERCOLOR)] HRESULT BorderColor([in]OLE_COLOR clr); [propget, id(DISPID_BORDERCOLOR)] HRESULT BorderColor([out, retval]OLE_COLOR* pclr); [propput, id(DISPID_BORDERSTYLE)] HRESULT BorderStyle([in]long style); [propget, id(DISPID_BORDERSTYLE)] HRESULT BorderStyle([out, retval]long* pstyle); [propput, id(DISPID_BORDERWIDTH)] HRESULT BorderWidth([in]long width); [propget, id(DISPID_BORDERWIDTH)] HRESULT BorderWidth([out, retval]long* width); [propput, id(DISPID_DRAWMODE)] HRESULT DrawMode([in]long mode); [propget, id(DISPID_DRAWMODE)] HRESULT DrawMode([out, retval]long* pmode); [propput, id(DISPID_DRAWSTYLE)] HRESULT DrawStyle([in]long style); [propget, id(DISPID_DRAWSTYLE)] HRESULT DrawStyle([out, retval]long* pstyle); [propput, id(DISPID_DRAWWIDTH)] HRESULT DrawWidth([in]long width); [propget, id(DISPID_DRAWWIDTH)] HRESULT DrawWidth([out, retval]long* pwidth); [propput, id(DISPID_FILLCOLOR)] HRESULT FillColor([in]OLE_COLOR clr); [propget, id(DISPID_FILLCOLOR)] HRESULT FillColor([out, retval]OLE_COLOR* pclr); [propput, id(DISPID_FILLSTYLE)] HRESULT FillStyle([in]long style); [propget, id(DISPID_FILLSTYLE)] HRESULT FillStyle([out, retval]long* pstyle); [propputref, id(DISPID_FONT)] HRESULT Font([in]IFontDisp* pFont); [propput, id(DISPID_FONT)] HRESULT Font([in]IFontDisp* pFont); [propget, id(DISPID_FONT)] HRESULT Font([out, retval]IFontDisp** ppFont); [propput, id(DISPID_FORECOLOR)] HRESULT ForeColor([in]OLE_COLOR clr); [propget, id(DISPID_FORECOLOR)] HRESULT ForeColor([out,retval]OLE_COLOR* pclr); [propput, id(DISPID_ENABLED)] HRESULT Enabled([in]VARIANT_BOOL vbool); [propget, id(DISPID_ENABLED)] HRESULT Enabled([out,retval]VARIANT_BOOL* pbool); [propget, id(DISPID_HWND)] HRESULT Window([out, retval]LONG_PTR* phwnd); // was long* via the wizard, but doesn't compile Win64 [propput, id(DISPID_TABSTOP)] HRESULT TabStop([in]VARIANT_BOOL vbool); [propget, id(DISPID_TABSTOP)] HRESULT TabStop([out, retval]VARIANT_BOOL* pbool); [propput, id(DISPID_TEXT)] HRESULT Text([in]BSTR strText); [propget, id(DISPID_TEXT)] HRESULT Text([out, retval]BSTR* pstrText); [propput, id(DISPID_CAPTION)] HRESULT Caption([in]BSTR strCaption); [propget, id(DISPID_CAPTION)] HRESULT Caption([out,retval]BSTR* pstrCaption); [propput, id(DISPID_BORDERVISIBLE)] HRESULT BorderVisible([in]VARIANT_BOOL vbool); [propget, id(DISPID_BORDERVISIBLE)] HRESULT BorderVisible([out, retval]VARIANT_BOOL* pbool); [propput, id(DISPID_APPEARANCE)] HRESULT Appearance([in]short appearance); [propget, id(DISPID_APPEARANCE)] HRESULT Appearance([out, retval]short* pappearance); [propput, id(DISPID_MOUSEPOINTER)] HRESULT MousePointer([in]long pointer); [propget, id(DISPID_MOUSEPOINTER)] HRESULT MousePointer([out, retval]long* ppointer); [propputref, id(DISPID_MOUSEICON)] HRESULT MouseIcon([in]IPictureDisp* pMouseIcon); [propput, id(DISPID_MOUSEICON)] HRESULT MouseIcon([in]IPictureDisp* pMouseIcon); [propget, id(DISPID_MOUSEICON)] HRESULT MouseIcon([out, retval]IPictureDisp** ppMouseIcon); [propputref, id(DISPID_PICTURE)] HRESULT Picture([in]IPictureDisp* pPicture); [propput, id(DISPID_PICTURE)] HRESULT Picture([in]IPictureDisp* pPicture); [propget, id(DISPID_PICTURE)] HRESULT Picture([out, retval]IPictureDisp** ppPicture); [propput, id(DISPID_VALID)] HRESULT Valid([in]VARIANT_BOOL vbool); [propget, id(DISPID_VALID)] HRESULT Valid([out, retval]VARIANT_BOOL* pbool); }; // --------------------------------------------------------------- [ uuid(11166000-DF8A-463a-B620-7BEC23542010), version(1.0), helpstring("Microsoft TV CA Type Library") ] library MSTvCALib { importlib("stdole32.tlb"); importlib("stdole2.tlb"); // --------------------------------------------------- // CAUTION - if Change events below, need to perform: // 1) compile the MIDL file to generate the typelib // 2) In VCC class view, ->Implement Connection Point (_ICAEvents) // to regenerate the CProxy_ICAEvents<> code. // Need to browse to objd\i386 directory and select MSTvCA.tlb // (The file MSTvCACP.h must be checked out.) // Where is Denials, Manager, Offers, Policies, Request, and Tolls [ uuid(11166298-DF8A-463A-B620-7BEC23542010), helpstring("_ICAResDenialTreeEvents Interface") ] dispinterface _ICAResDenialTreeEvents { properties: methods: [id(1),helpstring("method PaidTollSelected")] HRESULT PaidTollSelected([in] ICAToll *pToll, [in] long fSelected); }; [ uuid(11166200-DF8A-463A-B620-7BEC23542010), helpstring("ICAManagerEvents Interface") ] dispinterface _ICAManagerEvents { properties: methods: [id(2201),helpstring("method RequestActivated")] HRESULT RequestActivated([in] ICARequest *pReq); [id(2202),helpstring("method RequestDeactivated")] HRESULT RequestDeactivated([in] ICARequest *pReq); [id(2203),helpstring("method OfferAdded")] HRESULT OfferAdded([in] ICAOffer *pOffer,[in] long cOffers); [id(2204),helpstring("method OfferRemoved")] HRESULT OfferRemoved([in] ICAOffer *pOffer,[in] long cOffers); [id(2205),helpstring("method PolicyAdded")] HRESULT PolicyAdded([in] ICAPolicy *pPolicy,[in] long cPolicies); [id(2206),helpstring("method PolicyRemoved")] HRESULT PolicyRemoved([in] ICAPolicy *pPolicy,[in] long cPolicies); [id(2207),helpstring("method RequestDenialAdded")] HRESULT RequestDenialAdded([in] ICARequest *pReq, [in] ICADenial *pDenial,[in] long cDenials); [id(2208),helpstring("method RequestDenialRemoved")] HRESULT RequestDenialRemoved([in] ICARequest *pReq, [in] ICADenial *pDenial,[in] long cDenials); [id(2209),helpstring("method DenialTollAdded")] HRESULT DenialTollAdded([in] ICADenial *pDenial, [in] ICAToll *pToll, [in] long cTolls); [id(2210),helpstring("method DenialTollRemoved")] HRESULT DenialTollRemoved([in] ICADenial *pDenial, [in] ICAToll *pToll, [in] long cTolls); [id(2211),helpstring("method TollDenialAdded")] HRESULT TollDenialAdded([in] ICAToll *pToll, [in] ICADenial *pDenial,[in] long cDenials); [id(2212),helpstring("method TollDenialRemoved")] HRESULT TollDenialRemoved([in] ICAToll *pToll, [in] ICADenial *pDenial,[in] long cDenials); [id(2213),helpstring("method OfferTollAdded")] HRESULT OfferTollAdded([in] ICAOffer *pOffer, [in] ICAToll *pToll, [in] long cTolls); [id(2214),helpstring("method OfferTollRemoved")] HRESULT OfferTollRemoved([in] ICAOffer *pOffer, [in] ICAToll *pToll, [in] long cTolls); [id(2215),helpstring("method TollStateChanged")] HRESULT TollStateChanged([in] ICAToll *pToll, [in] CATollState enState); [id(2216),helpstring("method DenialStateChanged")] HRESULT DenialStateChanged([in] ICADenial *pDenial, [in] CADenialState enState); [id(2217),helpstring("method ComponentDenialAdded")] HRESULT ComponentDenialAdded([in] ICAComponent *pComp, [in] ICADenial *pDenial,[in] long cDenials); [id(2218),helpstring("method ComponentDenialRemoved")] HRESULT ComponentDenialRemoved([in] ICAComponent *pComp, [in] ICADenial *pDenial,[in] long cDenials); }; [ uuid(11166210-DF8A-463A-B620-7BEC23542010), helpstring("ICARequestEvents Interface") ] dispinterface _ICARequestEvents { properties: methods: [id(1), helpstring("method CheckStarted")] HRESULT CheckStarted([in] ICARequest *pRequest); [id(2), helpstring("method CheckComplete")] HRESULT CheckComplete([in] ICARequest *pRequest,[in] long cDenials); }; [ uuid(11166220-DF8A-463A-B620-7BEC23542010), helpstring("_ICAPoliciesEvents Interface") ] dispinterface _ICAPoliciesEvents { properties: methods: [id(1), helpstring("method ItemAdded")] HRESULT ItemAdded([in] ICAPolicy *pPolicy, long cPolicies); [id(2), helpstring("method ItemRemoved")] HRESULT ItemRemoved([in] ICAPolicy *pPolicy, long cPolicies); }; [ uuid(11166230-DF8A-463A-B620-7BEC23542010), helpstring("ICATollsEvents Interface") ] dispinterface _ICATollsEvents { properties: methods: [id(1), helpstring("method ItemAdded")] HRESULT ItemAdded([in] ICAToll *pToll, [in] long cTolls); [id(2), helpstring("method ItemRemoved")] HRESULT ItemRemoved([in] ICAToll *pToll, [in] long cTolls); [id(3), helpstring("method StateChanged")] HRESULT StateChanged([in] ICAToll *pToll, [in] CATollState enStateFrom); }; [ uuid(11166240-DF8A-463A-B620-7BEC23542010), helpstring("ICADenialsEvents Interface") ] dispinterface _ICADenialsEvents { properties: methods: [id(1), helpstring("method ItemAdded")] HRESULT ItemAdded([in] ICADenial *pDenial, [in] long cDenials); [id(2), helpstring("method ItemRemoved")] HRESULT ItemRemoved([in] ICADenial *pDenial, [in] long cDenials); [id(3), helpstring("method StateChanged")] HRESULT StateChanged([in] ICADenial *pDenial, [in] CADenialState enStateFrom); }; [ uuid(11166250-DF8A-463A-B620-7BEC23542010), helpstring("ICAOffersEvents Interface") ] dispinterface _ICAOffersEvents { properties: methods: [id(1), helpstring("method ItemAdded")] HRESULT ItemAdded([in] ICAOffer *pOffer, [in] long cOffers); [id(2), helpstring("method ItemRemoved")] HRESULT ItemRemoved([in] ICAOffer *pOffer, [in] long cOffers); }; [ uuid(11166260-DF8A-463A-B620-7BEC23542010), helpstring("_ICAComponentsEvents Interface") ] dispinterface _ICAComponentsEvents { properties: methods: [id(1), helpstring("method ItemAdded")] HRESULT ItemAdded([in] ICAComponent *pComponent, [in] long cComponent); [id(2), helpstring("method ItemRemoved")] HRESULT ItemRemoved([in] ICAComponent *pComponent, [in] long cComponent); }; // -------------------------------- [ object, dual, uuid(11166300-DF8A-463a-B620-7BEC23542010), helpstring("ICAManager Interface"), pointer_default(unique) ] interface ICAManager : IDispatch { [propget, id(1), helpstring("property Policies")] HRESULT Policies([out, retval] ICAPolicies **ppPolicies); [propget, id(2), helpstring("property ActiveRequest")] HRESULT ActiveRequest([out, retval] ICARequest **ppRequest); [propget, id(3), helpstring("property Offers")] HRESULT Offers([out, retval] ICAOffers **ppOffers); [propget, id(4), helpstring("property PaidTolls")] HRESULT PaidTolls([out, retval] ICATolls **ppTolls); [propput, id(5), helpstring("property UseDefaultUI")] HRESULT UseDefaultUI([in] long fUseDefaultUI); [propget, id(5), helpstring("property UseDefaultUI")] HRESULT UseDefaultUI([out, retval] long *pfUseDefaultUI); [propget, id(6), helpstring("property DenialsFor")] HRESULT DenialsFor([in] IUnknown *pUnk, [out, retval] ICADenials **ppDenials); }; [ object, uuid(11166310-DF8A-463a-B620-7BEC23542010), dual, helpstring("ICARequest Interface"), pointer_default(unique) ] interface ICARequest : IDispatch { [propget, id(1), helpstring("property RequestedItem")] HRESULT RequestedItem([out, retval] IUnknown **ppTunereq); [propget, id(2), helpstring("property CAManager")] HRESULT CAManager([out, retval] ICAManager **ppManager); [propget, id(3), helpstring("property ScheduleEntry")] HRESULT ScheduleEntry([out, retval] IUnknown **ppUnkScheduleEntry); // IScheduleEntry? [propget, id(4), helpstring("property Denials")] HRESULT Denials([out, retval] ICADenials **ppDenials); [propget, id(5), helpstring("property Components")] HRESULT Components([out, retval] ICAComponents **pComponents); [propget, id(6), helpstring("property Check")] HRESULT Check([out, retval] long *pcDenials); [propget, id(7), helpstring("property ResolveDenials")] HRESULT ResolveDenials([out, retval] long *pcDenials); [propget, id(8), helpstring("property CountDeniedComponents")] HRESULT CountDeniedComponents([out, retval] long *pcDeniedComponents); }; [ object, uuid(11166320-DF8A-463a-B620-7BEC23542010), helpstring("ICAPolicy Interface"), // client written pointer_default(unique) ] interface ICAPolicy : IUnknown // -- not IDispatch, let the client side implement that interface { [propget, id(0), helpstring("property Name")] HRESULT Name([out, retval] BSTR *pbstr); [ id(1), helpstring("method CheckRequest")] HRESULT CheckRequest([in] ICARequest *pReq); // [propget, id(2), helpstring("property CAManager")] HRESULT CAManager([out, retval] ICAManager **ppManager); [propput, id(2), helpstring("property CAManager")] HRESULT CAManager([in] ICAManager *pManager); [propget, id(3), helpstring("property OkToPersist")] HRESULT OkToPersist([out, retval] BOOL *pfOkToPersist); [propget, id(4), helpstring("property OkToRemove")] HRESULT OkToRemove([out, retval] BOOL *pfOkToRemove); [propget, id(5), helpstring("property OkToRemoveDenial")] HRESULT OkToRemoveDenial(ICADenial *pDenial, [out, retval] BOOL *pfOk); [propget, id(6), helpstring("property OkToRemoveOffer")] HRESULT OkToRemoveOffer(ICAOffer *pOffer, [out, retval] BOOL *pfOk); } [ object, uuid(11166330-DF8A-463a-B620-7BEC23542010), dual, helpstring("ICAToll Interface"), // also client written pointer_default(unique) ] interface ICAToll : IUnknown // -- also not IDispatch - client side implements that interface { // [propget, id(1), helpstring("property CAManager")] HRESULT CAManager([out, retval] ICAManager **ppManager); [propput, id(1), helpstring("property CAManager")] HRESULT CAManager([in] ICAManager *pManager); [ id(2), helpstring("method Select")] HRESULT Select([in] BOOL fSelect); [ id(3), helpstring("method PayToll")] HRESULT PayToll(); [propget, id(4), helpstring("property Refundable")] HRESULT Refundable([out, retval] BOOL *pfRefundable); [ id(5), helpstring("method RefundToll")] HRESULT RefundToll(); [propget, id(6), helpstring("property TolledObject")] HRESULT TolledObject([out, retval] IUnknown **ppUnkTolled); [propget, id(7), helpstring("property Denials")] HRESULT Denials([out, retval] ICADenials **ppDenials); [propget, id(8), helpstring("property Policy")] HRESULT Policy([out, retval] ICAPolicy **ppPolicy); [propget, id(9), helpstring("property Description")] HRESULT Description([in] CADescFormat enFormat, [out, retval] BSTR *pbstr); [propget, id(10),helpstring("property TimePaid")] HRESULT TimePaid([out, retval] DATE *pdtPaid); [propget, id(11),helpstring("property State")] HRESULT State([out, retval] CATollState *penState); }; [ object, uuid(11166340-DF8A-463a-B620-7BEC23542010), dual, helpstring("ICADenial Interface"), pointer_default(unique) ] interface ICADenial : IDispatch { [propget, id(1), helpstring("property DeniedObject")] HRESULT DeniedObject([out, retval] IUnknown **ppUnkDenied); [propget, id(2), helpstring("property Policy")] HRESULT Policy([out, retval] ICAPolicy **ppPolicy); [propget, id(3), helpstring("property Description")] HRESULT Description([in] CADescFormat enFormat, [out, retval] BSTR *pbstr); [propput, id(3), helpstring("property Description")] HRESULT Description([in] CADescFormat enFormat, [in] BSTR bstr); [propget, id(4), helpstring("property State")] HRESULT State([out, retval] CADenialState *penState); [propput, id(4), helpstring("property State")] HRESULT State([in] CADenialState enState); [propget, id(5), helpstring("property Tolls")] HRESULT Tolls([out, retval] ICATolls **ppTolls); [ id(6), helpstring("method NotifyTollStateChanged")] HRESULT NotifyTollStateChanged([in] ICAToll *pToll, [in] CATollState enStateFrom); }; [ object, uuid(11166350-DF8A-463a-B620-7BEC23542010), dual, helpstring("ICAOffer Interface"), pointer_default(unique) ] interface ICAOffer : IDispatch { [propget, id(1), helpstring("property CAManager")] HRESULT CAManager([out, retval] ICAManager **ppManager); [propput, id(1), helpstring("property CAManager")] HRESULT CAManager([in] ICAManager *pManager); [propget, id(2), helpstring("property Policy")] HRESULT Policy([out, retval] ICAPolicy **pppolicy); [propget, id(3), helpstring("property Description")] HRESULT Description([in] CADescFormat enFormat, [out, retval] BSTR *pbstr); [propput, id(3), helpstring("property Description")] HRESULT Description([in] CADescFormat enFormat, [in] BSTR bstr); [propget, id(4), helpstring("property StartTime")] HRESULT StartTime([out, retval] DATE *pdtStart); [propget, id(5), helpstring("property EndTime")] HRESULT EndTime([out, retval] DATE *pdtEnd); [propget, id(6), helpstring("property Tolls")] HRESULT Tolls([out, retval] ICATolls **ppTolls); [ id(7), helpstring("method NotifyTollStateChanged")] HRESULT NotifyTollStateChanged([in] ICAToll *pToll, [in] CATollState enStateFrom); }; [ object, uuid(11166360-DF8A-463a-B620-7BEC23542010), dual, helpstring("ICAComponent Interface"), pointer_default(unique) ] interface ICAComponent : IDispatch { [propget, id(1), helpstring("property Component")] HRESULT Component([out, retval] IComponent **ppComponent); [propget, id(2), helpstring("property Denials")] HRESULT Denials([out, retval] ICADenials **ppDenials); [propget, id(3), helpstring("property Request")] HRESULT Request([out, retval] ICARequest **ppComponent); }; // -------------------------------- [ uuid(11166100-DF8A-463a-B620-7BEC23542010), helpstring("CAManager Class") ] coclass CAManager { [default] interface ICAManager; interface ICAManagerInternal; // interface ICAManagerXProxy; // this is the actual outgoing 'event' interface [default, source] dispinterface _ICAManagerEvents; }; [ // magic class used to avoid circular references through the CAManager. hidden, uuid(11166101-DF8A-463a-B620-7BEC23542010), helpstring("CAManagerProxy Class") ] coclass CAManagerProxy { [default] interface ICAManager; interface ICAManagerInternal; // [default, source] dispinterface _ICAManagerEvents; /// QUESTION ??? DO I want these just here, or in the true Manager, or both? }; [ uuid(11166540-DF8A-463a-B620-7BEC23542010), // needed for user's tolls. helpstring("CADenials Class") ] coclass CADenials { [default] interface ICADenials; interface ICADenialsInternal; [default, source] dispinterface _ICADenialsEvents; }; // TODO - mark this as hidden... [ uuid(11166550-DF8A-463a-B620-7BEC23542010), helpstring("CAOffer Class") ] coclass CAOffer { [default] interface ICAOffer; }; /* [ uuid(11166999-DF8A-463a-B620-7BEC23542010), helpstring("CATempEvent_TempBuilder Class - used so we can build events the first time") ] coclass CATempEvent_TempBuilder { [source] dispinterface _ICAResDenialTreeEvents; [source] dispinterface _ICAManagerEvents; [source] dispinterface _ICARequestEvents; [source] dispinterface _ICATollsEvents; [source] dispinterface _ICADenialsEvents; [source] dispinterface _ICAPoliciesEvents; [source] dispinterface _ICAOffersEvents; [source] dispinterface _ICAComponentsEvents; }; */ // ----------------------------------- [ object, uuid(11166898-DF8A-463a-B620-7BEC23542010), dual, helpstring("ICAResDenialTree Interface"), pointer_default(unique) ] interface ICAResDenialTree : IDispatch { [propget, id(1), helpstring("property CAManager")] HRESULT CAManager([out, retval] ICAManager **ppCAManager); [propput, id(1), helpstring("property CAManager")] HRESULT CAManager([in] ICAManager *pCAManager); [propget, id(2), helpstring("property DisplayFields")] HRESULT DisplayFields([out, retval] long *penFields); // fields to display in default ResDenial UI [propput, id(2), helpstring("property DisplayFields")] HRESULT DisplayFields([in] long enFields); // fields to display in default ResDenial UI [ id(3), helpstring("method UpdateView")] HRESULT UpdateView([in] IUnknown *pUnk); // if object is being viewed, updates it. // ResDenial control listens to these incoming sink events sent by Manager ((_ICAManagerEvents).. ID's Must match [ id(2201),helpstring("method NotifyRequestActivated")] HRESULT NotifyRequestActivated([in] ICARequest *preq); [ id(2202),helpstring("method NotifyRequestDeactivated")] HRESULT NotifyRequestDeactivated([in] ICARequest *preq); [ id(2203),helpstring("method NotifyOfferAdded")] HRESULT NotifyOfferAdded([in] ICAOffer *pOffer,[in] long cOffers); [ id(2204),helpstring("method NotifyOfferRemoved")] HRESULT NotifyOfferRemoved([in] ICAOffer *pOffer,[in] long cOffers); [ id(2205),helpstring("method NotifyPolicyAdded")] HRESULT NotifyPolicyAdded([in] ICAPolicy *pPolicy,[in] long cPolicies); [ id(2206),helpstring("method NotifyPolicyRemoved")] HRESULT NotifyPolicyRemoved([in] ICAPolicy *pPolicy,[in] long cPolicies); [ id(2207),helpstring("method NotifyRequestDenialAdded")] HRESULT NotifyRequestDenialAdded([in] ICARequest *preq, [in] ICADenial *pDenial,[in] long cDenials); [ id(2208),helpstring("method NotifyRequestDenialRemoved")] HRESULT NotifyRequestDenialRemoved([in] ICARequest *preq, [in] ICADenial *pDenial,[in] long cDenials); [ id(2209),helpstring("method NotifyDenialTollAdded")] HRESULT NotifyDenialTollAdded([in] ICADenial *pDenial, [in] ICAToll *pToll, [in] long cTolls); [ id(2210),helpstring("method NotifyDenialTollRemoved")] HRESULT NotifyDenialTollRemoved([in] ICADenial *pDenial, [in] ICAToll *pToll, [in] long cTolls); [ id(2211),helpstring("method NotifyTollDenialAdded")] HRESULT NotifyTollDenialAdded([in] ICAToll *pToll, [in] ICADenial *pDenial,[in] long cDenials); [ id(2212),helpstring("method NotifyTollDenialRemoved")] HRESULT NotifyTollDenialRemoved([in] ICAToll *pToll, [in] ICADenial *pDenial,[in] long cDenials); [ id(2213),helpstring("method NotifyOfferTollAdded")] HRESULT NotifyOfferTollAdded([in] ICAOffer *pOffer, [in] ICAToll *pToll, [in] long cTolls); [ id(2214),helpstring("method NotifyOfferTollRemoved")] HRESULT NotifyOfferTollRemoved([in] ICAOffer *pOffer, [in] ICAToll *pToll, [in] long cTolls); [ id(2215),helpstring("method NotifyTollStateChanged")] HRESULT NotifyTollStateChanged([in] ICAToll *pToll, [in] CATollState enStateLast); [ id(2216),helpstring("method NotifyDenialStateChanged")] HRESULT NotifyDenialStateChanged([in] ICADenial *pDenial, [in] CADenialState enStateLast); [ id(2217),helpstring("method NotifyComponentDenialAdded")] HRESULT NotifyComponentDenialAdded([in] ICAComponent *preq, [in] ICADenial *pDenial,[in] long cDenials); [ id(2218),helpstring("method NotifyComponentDenialRemoved")] HRESULT NotifyComponentDenialRemoved([in] ICAComponent *preq, [in] ICADenial *pDenial,[in] long cDenials); }; [ uuid(11166998-DF8A-463a-B620-7BEC23542010), helpstring("CA Default RequestDenial Control") ] coclass CAResDenialTree { [default] interface ICAResDenialTree; [default, source] dispinterface _ICAResDenialTreeEvents; }; // ----------------------------- [ uuid(11166991-DF8A-463a-B620-7BEC23542010), helpstring("_ICADefaultDlgEvents Interface") ] dispinterface _ICADefaultDlgEvents { properties: methods: }; [ uuid(11166990-DF8A-463a-B620-7BEC23542010), helpstring("CADefaultDlg Class") ] coclass CADefaultDlg { [default] interface ICADefaultDlg; [default, source] dispinterface _ICADefaultDlgEvents; }; // ------------------------------------- // Magic way to define the SID_ ... cpp_quote("#define SID_CAManager CLSID_CAManager") };