/*! \file \ingroup CommonTypes Program interfaces and types */ // VideoSurvDll.idl : IDL source for VideoSurvDll.dll // // This file will be processed by the MIDL tool to // produce the type library (VideoSurvDll.tlb) and marshalling code. import "oaidl.idl"; import "ocidl.idl"; //{77E1468F-B803-4b3f-A020-E5B472569161} cpp_quote("DEFINE_GUID(GUID_SystemResources, 0x77e1468f, 0xb803, 0x4b3f, 0xa0, 0x20, 0xe5, 0xb4, 0x72, 0x56, 0x91, 0x61);") //\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\ // Objects groups //\_ //{28A503B0-01F1-4705-AD6E-17AA8C8FA2C3} cpp_quote("DEFINE_GUID(CLSID_RootObjectsGroup, 0x28A503B0, 0x01F1, 0x4705, 0xAD, 0x6E, 0x17, 0xAA, 0x8C, 0x8F, 0xA2, 0xC3);") //{50FCFA34-54FF-404c-9575-05501E5A7164} cpp_quote("DEFINE_GUID(CLSID_DriversGroup, 0x50fcfa34, 0x54ff, 0x404c, 0x95, 0x75, 0x5, 0x50, 0x1e, 0x5a, 0x71, 0x64);") //{2A52B93B-69B4-4042-AEF2-2B95FCE9B5D8} cpp_quote("DEFINE_GUID(CLSID_ScreenShotActions, 0x2a52b93b, 0x69b4, 0x4042, 0xae, 0xf2, 0x2b, 0x95, 0xfc, 0xe9, 0xb5, 0xd8);") //\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\ // Channel objects Groups //\_ // Channel object groups // {933D9560-0B7E-469e-AF09-37C38B5AEBDD} cpp_quote("DEFINE_GUID(CLSID_ChannelObjectsGroup, 0x933d9560, 0xb7e, 0x469e, 0xaf, 0x9, 0x37, 0xc3, 0x8b, 0x5a, 0xeb, 0xdd);") // Data Sources = {BD30948C-8DE2-4c7a-A862-6F9C7B297B66} // {BD30948C-8DE2-4c7a-A862-6F9C7B297B66} cpp_quote("DEFINE_GUID(CLSID_DataSourceGroup, 0xbd30948c, 0x8de2, 0x4c7a, 0xa8, 0x62, 0x6f, 0x9c, 0x7b, 0x29, 0x7b, 0x66);") // Targets = {35BDBE0C-6F43-4723-97CF-458749E8601F} // {35BDBE0C-6F43-4723-97CF-458749E8601F} cpp_quote("DEFINE_GUID(CLSID_TargetsGroup, 0x35bdbe0c, 0x6f43, 0x4723, 0x97, 0xcf, 0x45, 0x87, 0x49, 0xe8, 0x60, 0x1f);") // Filters = {4416CD69-2ACE-4258-8FEA-12D7B0588B72} // {4416CD69-2ACE-4258-8FEA-12D7B0588B72} cpp_quote("DEFINE_GUID(CLSID_FiltersGroup, 0x4416cd69, 0x2ace, 0x4258, 0x8f, 0xea, 0x12, 0xd7, 0xb0, 0x58, 0x8b, 0x72);") // Switchers = {799A6BA5-C3D7-49f7-8203-25C1BEEDC231} // {799A6BA5-C3D7-49f7-8203-25C1BEEDC231} cpp_quote("DEFINE_GUID(CLSID_SwitchersGroup, 0x799a6ba5, 0xc3d7, 0x49f7, 0x82, 0x3, 0x25, 0xc1, 0xbe, 0xed, 0xc2, 0x31);") // TextPlotters = {7AE1B0B0-5F5C-45de-B5E4-F52214221F12} // {7AE1B0B0-5F5C-45de-B5E4-F52214221F12} cpp_quote("DEFINE_GUID(CLSID_TextPlotters, 0x7ae1b0b0, 0x5f5c, 0x45de, 0xb5, 0xe4, 0xf5, 0x22, 0x14, 0x22, 0x1f, 0x12);") // Data Processors = {3B6C4E16-3E1B-4aa8-BDAF-C7C9382685CD} // {3B6C4E16-3E1B-4aa8-BDAF-C7C9382685CD} cpp_quote("DEFINE_GUID(CLSID_DataProcessorsGroup, 0x3b6c4e16, 0x3e1b, 0x4aa8, 0xbd, 0xaf, 0xc7, 0xc9, 0x38, 0x26, 0x85, 0xcd);") // Alarm Actions = {8578D781-2027-411a-B75F-84E9866409A8} // {8578D781-2027-411a-B75F-84E9866409A8} cpp_quote("DEFINE_GUID(CLSID_AlarmActionsGroup, 0x8578d781, 0x2027, 0x411a, 0xb7, 0x5f, 0x84, 0xe9, 0x86, 0x64, 0x9, 0xa8);") // Maskers = {564BF189-F01E-4444-8166-2A5EC914D114} // {564BF189-F01E-4444-8166-2A5EC914D114} cpp_quote("DEFINE_GUID(CLSID_MaskersGroup, 0x564bf189, 0xf01e, 0x4444, 0x81, 0x66, 0x2a, 0x5e, 0xc9, 0x14, 0xd1, 0x14);") // Other = {6DFE24A5-33B1-4aaa-A201-ED1EF19A686E} // {6DFE24A5-33B1-4aaa-A201-ED1EF19A686E} cpp_quote("DEFINE_GUID(CLSID_OtherGroup, 0x6dfe24a5, 0x33b1, 0x4aaa, 0xa2, 0x1, 0xed, 0x1e, 0xf1, 0x9a, 0x68, 0x6e);") //\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\ // DATA TYPES //\_ // VideoDataType = {E87C67B0-39D6-4530-94E1-A701F3A9206E} cpp_quote("DEFINE_GUID(GUID_VideoDataType, 0xe87c67b0, 0x39d6, 0x4530, 0x94, 0xe1, 0xa7, 0x1, 0xf3, 0xa9, 0x20, 0x6e);") // StateDataType = {D1C54593-A355-473a-83A3-3E955BAB9F03} cpp_quote("DEFINE_GUID(GUID_BooleanDataType, 0xd1c54593, 0xa355, 0x473a, 0x83, 0xa3, 0x3e, 0x95, 0x5b, 0xab, 0x9f, 0x3);") //\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\ // Predefining interfaces //\_ interface IApplication; interface IChannel; interface IAppWindow; interface IChannelContainerRegistrar; interface IConnector; interface IChannelObject; interface IGroupData; interface ILocalization; interface IMainBarNotifyListener; interface IInputConnector; interface IOutputConnector; /*!\defgroup Structure Application structure */ [ object, uuid(74BF1511-EE76-4633-8A7D-BD63AFEA4703), helpstring("IAppObject Interface"), pointer_default(unique) ] /*!\brief Base object interface \ingroup Structure */ interface IAppObject : IUnknown { [helpstring("method InitAppObject")] /*!\brief Init AppObject */ HRESULT InitAppObject( [in] IApplication* newVal ); [propget, helpstring("property Application")] /*!\brief Get Application property */ HRESULT Application( [out, retval] IApplication* *pVal ); [propget, helpstring("property Parent")] /*!\brief Get Parent property */ HRESULT Parent( [out, retval] IUnknown* *pVal ); [propput, helpstring("property Parent")] /*!\brief Set Parent property */ HRESULT Parent( [in] IUnknown* newVal ); }; /*!\defgroup WinControl Windows managing */ [ object, uuid(4E7771E5-4E82-4c70-BDC9-F0C9E7C04D59), helpstring("IChildWindow Interface"), pointer_default(unique) ] /*!\brief interface for controlling child window \ingroup WinControl \see _IChildWindowEvents */ interface IChildWindow : IUnknown { [helpstring("method CreateChildWindow")] /*!\brief Create child window */ HRESULT CreateChildWindow( [in] HWND hParentWnd, [in] RECT rcWnd ); [helpstring("method DestroyChildWindow")] /*!\brief Destroy child window */ HRESULT DestroyChildWindow( ); [propget, helpstring("property rcWnd")] /*!\brief Get child window rect */ HRESULT WindowRect( [out, retval] RECT *pVal ); [propput, helpstring("property rcWnd")] /*!\brief Set child window rect */ HRESULT WindowRect( [in] RECT newVal ); [propget, helpstring("property WindowVisibled")] /*!\brief Get child window visibility */ HRESULT WindowVisibled( [out, retval] BOOL *pVal ); [propput, helpstring("property WindowVisibled")] /*!\brief Set child window visibility */ HRESULT WindowVisibled( [in] BOOL newVal ); [propget, helpstring("property FloatingState")] /*!\brief Get child window floating state */ HRESULT FloatingState( [out, retval] BOOL *pVal ); [propput, helpstring("property FloatingState")] /*!\brief Set child window floating state */ HRESULT FloatingState( [in] BOOL newVal ); }; [ local, uuid(841DD9F1-5B2B-4f8e-B33B-4DB3C3927A02), helpstring("_IChildWindowEvents Interface") ] /*!\brief Child window events */ interface _IChildWindowEvents : IUnknown { [helpstring("method OnChildWindowCreated")] /*!\brief Child window created */ void OnChildWindowCreated( [in] IChildWindow* pIChildWindow ); [helpstring("method BeforeWindowDestroy")] /*!\brief Child window will be destroy now */ void BeforeChildWindowDestroy( [in] IChildWindow* pIChildWindow ); [helpstring("method AfterChildWindowDestroy")] /*!\brief Child window has been destroyed */ void AfterChildWindowDestroy( [in] IChildWindow* pIChildWindow ); [helpstring("method OnChildWindowRectChanged")] /*!\brief Child window rectangle has been changed */ void OnChildWindowRectChanged( [in] IChildWindow* pIChildWindow, [in] RECT WindowRect ); [helpstring("method OnChildWindowVisibilityChanged")] /*!\brief Child window visibility has been changed */ void OnChildWindowVisibilityChanged( [in] IChildWindow* pIChildWindow, [in] BOOL Visibled ); [helpstring("method OnChildWindowFloatingStateChanged")] /*!\brief Child window float state has been changed */ void OnChildWindowFloatingStateChanged( [in] IChildWindow* pIChildWindow, [in] BOOL Float ); }; [ object, uuid(729000DE-0CC2-4b85-9369-70DE851394A7), helpstring("IChildWindowRegistrar Interface"), pointer_default(unique) ] /*!\brief interface for registering a list of child windows \ingroup WinControl */ interface IChildWindowRegistrar : IUnknown { [helpstring("method RegisterChildWindow")] /*!\brief Register child window in window manager */ HRESULT RegisterChildWindow( [in] IUnknown* pChildWindowUnk ); [helpstring("method UnregisterChildWindow")] /*!\brief Unregister child window in window manager */ HRESULT UnregisterChildWindow( [in] IUnknown* pChildWindowUnk ); } [ object, uuid(42162824-DF28-4a28-917E-97AE784F93F4), helpstring("IChildWindowManager Interface"), pointer_default(unique) ] /*!\brief interface for managing a list of child windows \ingroup WinControl \see _IChildWindowManagerEvents */ interface IChildWindowManager : IUnknown { [propget, helpstring("property FloatEnabled")] /*!\brief Get float mode */ HRESULT FloatEnabled( [out, retval] BOOL *pVal ); [propput, helpstring("property FloatEnabled")] /*!\brief Set float mode */ HRESULT FloatEnabled( [in] BOOL newVal ); [propget, helpstring("property CoveringForm")] /*!\brief Get covering form */ HRESULT CoveringForm( [out, retval] SIZE *pVal ); [propput, helpstring("property CoveringForm")] /*!\brief Set covering form */ HRESULT CoveringForm( [in] SIZE newVal ); } [ local, uuid(A899BCF1-A782-4b07-AA83-DADA55C03A16), helpstring("_IChildWindowManagerEvents Interface") ] /*!\brief Child window manager events */ interface _IChildWindowManagerEvents : IUnknown { [helpstring("method OnFloatStateChanged")] /*!\brief Float state changed */ void OnFloatStateChanged( [in] BOOL bNewState ); [helpstring("method OnCoveringFormChanged")] /*!\brief Covering form changed */ void OnCoveringFormChanged( [in] SIZE szNewCoveringForm ); }; /*!\defgroup AppStructure Application structure */ [ object, uuid(09C665E7-033E-4286-8ADA-7D3BCD772E17), helpstring("IApplication Interface"), pointer_default(unique) ] /*!\brief Main interface of application object \ingroup AppStructure \see _IApplicationStateEvents */ interface IApplication : IUnknown { [helpstring("method CanCloseApplication")] /*!\brief Check for closing application */ HRESULT CanCloseApplication( ); [helpstring("method CloseApplication")] /*!\brief Close application */ HRESULT CloseApplication( [in] BOOL bSaveState ); [helpstring("method IsRunning")] /*!\brief Check for application already running */ HRESULT IsRunning( ); [helpstring("method Run")] /*!\brief Run application object */ HRESULT Run( [in] long hInstance, [in] long hPrevInstance, [in] BSTR bsCmdLine, [in] int nCmdShow ); [propget, helpstring("property AppWindow")] /*!\brief Get application main window */ HRESULT AppWindow( [out, retval] IAppWindow* *pVal ); [helpstring("method LoadWorkspace")] /*!\brief Load workspace from */ HRESULT LoadWorkspace( [in] BSTR bsFName ); [helpstring("method SaveWorkspace")] /*!\brief Save workspace to */ HRESULT SaveWorkspace( [in] BSTR bsFName ); }; [ local, uuid(A4DE9F85-1B14-48fb-8F2F-8EA3AF7985D4), helpstring("_IApplicationStateEvents Interface") ] /*!\brief Application object events */ interface _IApplicationStateEvents : IUnknown { [helpstring("method OnInitComplete")] /*!\brief Init phase complete successfully */ HRESULT OnInitComplete( ); [helpstring("method OnAppLoadComplete")] /*!\brief Load workspace phase complete successfully */ HRESULT OnAppLoadComplete( ); [helpstring("method OnShowAppWindow")] /*!\brief Show App window event */ void OnShowAppWindow( ); [helpstring("method OnGUIReady")] /*!\brief Program GUI ready */ HRESULT OnGUIReady( ); }; [ object, uuid(A75D0E6C-0634-4078-BE05-271BCD391691), helpstring("IAppWindow Interface"), pointer_default(unique) ] /*!\brief Application window \ingroup AppStructure \see _IAppWindowEvents */ interface IAppWindow : IUnknown { [helpstring("method RegisterMainBarButton")] /*!\brief Register bar button */ HRESULT RegisterMainBarButton( [in] long nTopOffsetFactor, [in] BSTR bsTitle, [in] HBITMAP hBmp, [in] IMainBarNotifyListener* pClickListener, [out] DWORD *pdwCookie ); [helpstring("method UnregisterMainBarButton")] /*!\brief Unregister bar button */ HRESULT UnregisterMainBarButton( [in] DWORD dwCookie ); [helpstring("method SetMainBarButtonTitle")] /*!\brief Set bar button title */ HRESULT SetMainBarButtonTitle( [in] DWORD dwCookie, [in] BSTR bsTitle ); [propget, helpstring("property hWnd")] /*!\brief Get HWND of bar window */ HRESULT hWnd( [out, retval] HWND *pVal ); [propget, helpstring("property FullScreen")] /*!\brief Get full screen mode */ HRESULT FullScreen( [out, retval] BOOL *pVal ); [propput, helpstring("property FullScreen")] /*!\brief Set full screen mode */ HRESULT FullScreen( [in] BOOL newVal ); }; [ local, object, uuid(96E6BE48-8DDB-4ddb-A8D4-47374400EB8F), helpstring("_IAppWindowEvents Interface") ] /*!\brief Application window events */ interface _IAppWindowEvents : IUnknown { [helpstring("method OnScreenModeChanged")] /*!\brief Screen mode changed event */ void OnScreenModeChanged( [in] BOOL bFullScreen ); }; [ object, uuid(BA3763C0-75D4-4737-8020-661799F60992), helpstring("IChannelDirector Interface"), pointer_default(unique) ] /*!\brief Channel director interface */ interface IChannelDirector : IUnknown { }; [ object, uuid(6017E4F7-4D17-4905-9DB6-F217AA1E958C), helpstring("IStructureItem Interface"), pointer_default(unique) ] /*!\brief Structure support \ingroup Structure \see _IStructureItemEvents */ interface IStructureItem : IUnknown { [propget, helpstring("property bsSIName")] /*!\brief Get structure item name */ HRESULT SIName( [out, retval] BSTR *pVal ); [propput, helpstring("property bsSIName")] /*!\brief Set structure item name */ HRESULT SIName( [in] BSTR newVal ); [propget, helpstring("property SIDescription")] /*!\brief Get structure item description */ HRESULT SIDescription( [out, retval] BSTR *pVal ); [propput, helpstring("property SIDescription")] /*!\brief Set structure item description */ HRESULT SIDescription( [in] BSTR newVal ); [propget, helpstring("property ClsID")] /*!\brief Get structure item CLSID */ HRESULT ClsID( [out, retval] CLSID *pVal ); [propget, helpstring("property ObjectID")] /*!\brief Get structure item object ID */ HRESULT ObjectID( [out, retval] long *pVal ); [propput, helpstring("property ObjectID")] /*!\brief Set structure item object ID */ HRESULT ObjectID( [in] long newVal ); [helpstring("method CanClose")] /*!\brief Can close structure item object? */ HRESULT CanClose( ); [helpstring("method Init")] /*!\brief Init structure item object */ HRESULT Init( ); [helpstring("method PostInit")] /*!\brief Post init structure item object */ HRESULT PostInit( ); [helpstring("method PreClose"),local] /*!\brief Pre close structure item object */ void PreClose( ); [helpstring("method Close"),local] /*!\brief Close structure item object */ void Close( ); [helpstring("method LoadItem")] /*!\brief Load structure item object from storage */ HRESULT LoadItem( [in] IStorage* pIParentStorage, [in] BOOL bGlobalWorkspace ); [helpstring("method SaveItem")] /*!\brief Save structure item object to storage */ HRESULT SaveItem( [in] IStorage* pIParentStorage, [in] BOOL bGlobalWorkspace ); }; [ local, uuid(8F2844B9-9854-4fb5-9314-C0383E8AFF40), helpstring("_IStructureItemEvents Interface") ] /*!\brief Structure item object events */ interface _IStructureItemEvents : IUnknown { [helpstring("method OnStructureItemNameChanged")] /*!\brief Structure item name changed */ void OnStructureItemNameChanged( [in] IStructureItem* pIStructureItem ); [helpstring("method OnStructureItemDescriptionChanged")] /*!\brief Structure item description changed */ void OnStructureItemDescriptionChanged( [in] IStructureItem* pIStructureItem ); }; [ object, uuid(A402CC49-BE3F-426b-80BE-BE6FDAF2CF92), helpstring("IEnumStructureItem Interface"), pointer_default(unique) ] /*!\brief Enumerator of structure item objects \ingroup Structure */ interface IEnumStructureItem : IUnknown { [helpstring("method Next")] /*!\brief Get next structure item object */ HRESULT Next( [in] ULONG celt, [out,size_is(celt),length_is(*pCeltFetched)] IStructureItem* *rgVar, [out] ULONG *pCeltFetched ); [helpstring("method Skip")] /*!\brief Skip next structure item object */ HRESULT Skip( [in] ULONG celt ); [helpstring("method Reset")] /*!\brief Reset objects iterating */ HRESULT Reset( ); [helpstring("method Clone")] /*!\brief Clone objects iterator */ HRESULT Clone( [out] IEnumStructureItem* *ppEnum ); }; [ object, uuid(49CE4625-180B-4b84-B03C-A96870FCDFE4), helpstring("IStructureLevel Interface"), pointer_default(unique) ] /*!\brief Structure level \ingroup Structure \see _IStructureLevelEvents */ interface IStructureLevel : IUnknown { [propget, helpstring("property SubItems")] /*!\brief Get subitems iterator */ HRESULT SubItems( [out] IEnumStructureItem* *ppEnum ); [propget, helpstring("property SubItemByClsID")] /*!\brief Get specified subitems iterator */ HRESULT SubItemByClsID( [in] REFIID clsid, [out] IEnumStructureItem* *ppEnum ); [propget, helpstring("property SubItemByID")] /*!\brief Get specified subitem */ HRESULT SubItemByID( [in] long ObjectID, [out, retval] IStructureItem* *pVal ); }; [ local, uuid(1482C7F9-F68F-4afe-87E0-658C18022278), helpstring("_IStructureLevelEvents Interface") ] /*!\brief Structure level object events */ interface _IStructureLevelEvents : IUnknown { [helpstring("method AfterAddItemToLevel")] /*!\brief Structure item was added to level */ void AfterAddItemToLevel( [in] IStructureItem* pIStructureItem ); [helpstring("method BeforeRemoveItemFromLevel")] /*!\brief Structure item will be removed from level */ void BeforeRemoveItemFromLevel( [in] IStructureItem* pIStructureItem ); [helpstring("method AfterRemoveItemFromLevel")] /*!\brief Structure item was removed from level */ void AfterRemoveItemFromLevel( ); }; [ object, uuid(F8CAEEA1-0D7A-45F8-81F5-96F90F42AD43), helpstring("IChannelManager Interface"), pointer_default(unique) ] /*!\brief Channel manager \ingroup AppStructure */ interface IChannelManager : IUnknown { [helpstring("method CreateNewChannel")] /*!\brief Create new channel object */ HRESULT CreateNewChannel( [out, retval] IChannel* *Channel ); [helpstring("method EraseChannel")] /*!\brief Erase channel object */ HRESULT EraseChannel( [in] IChannel* pIChannel ); [helpstring("method CloneChannel")] /*!\brief Clone channel object */ HRESULT CloneChannel( [in] IChannel* pIChannel, [out, retval] IChannel* *ppINewChannel ); }; /*!\defgroup Localizations Program localization */ [ object, uuid(3EEBE39D-D772-44b1-B792-E0A89C86888B), helpstring("IEnumLanguageCodes Interface"), pointer_default(unique) ] /*!\brief Language codes enumerator \ingroup Localizations */ interface IEnumLanguageCodes : IUnknown { [helpstring("method Next")] /*!\brief Get next language codes */ HRESULT Next( [in] ULONG celt, [out,size_is(celt),length_is(*pCeltFetched)] BSTR *rgVar, [out] ULONG *pCeltFetched ); [helpstring("method Skip")] /*!\brief Skip next language codes */ HRESULT Skip( [in] ULONG celt ); [helpstring("method Reset")] /*!\brief Reset enumerator */ HRESULT Reset( ); [helpstring("method Clone")] /*!\brief Clone enumerator */ HRESULT Clone( [out] IEnumLanguageCodes* *ppEnum ); }; [ object, uuid(55A97F7D-A50B-4D56-B36B-DA9D4CBD8659), helpstring("ILocalizationManager Interface"), pointer_default(unique) ] /*!\brief Localization Manager \ingroup AppStructure,Localizations \see _ILocalizationEvents */ interface ILocalizationManager : IUnknown { [helpstring("method SetLocalization")] /*!\brief Set language code */ HRESULT SetLocalization( [in] BSTR Language ); [helpstring("method GetLocalization")] /*!\brief Get default language code */ HRESULT GetLocalization( [out] BSTR *pLanguage ); [propget, helpstring("property Languages")] /*!\brief Get language codes enumerator */ HRESULT Languages( [out, retval] IEnumLanguageCodes* *pVal ); [propget, helpstring("property LanguageName")] /*!\brief Get language name for specified code */ HRESULT LanguageName( [in] BSTR bsLangCode, [out, retval] BSTR *pVal ); [propput, helpstring("property LanguageName")] /*!\brief Set language name for specified code */ HRESULT LanguageName( [in] BSTR bsLangCode, [in] BSTR newVal ); [helpstring("method AddLanguage")] /*!\brief Add new localization language */ HRESULT AddLanguage( [in] BSTR bsLangCode, [in] BSTR bsLangName ); [helpstring("method RemoveLanguage")] /*!\brief remove localization language */ HRESULT RemoveLanguage( [in] BSTR bsLangCode ); }; [ local, object, uuid(5988D48A-1249-4B6B-9C2D-B9E0B5CB1905), helpstring("_ILocalizationEvents Interface") ] /*!\brief Localization events */ interface _ILocalizationEvents : IUnknown { [helpstring("method LanguageChaged")] /*!\brief Default language changed */ void OnLanguageChanged( ); }; [ object, uuid(4546CA7D-7768-40D8-9E07-97C51B67FE66), helpstring("ILocalization Interface"), pointer_default(unique) ] /*!\brief Localization storage interface \ingroup Localizations */ interface ILocalization : IUnknown { [helpstring("property LoadString")] /*!\brief Load string from storage */ HRESULT LoadString( [in] REFGUID refguid, [in] long resId, [out, retval] BSTR *pVal ); }; [ object, uuid(4556BA8D-7768-42E7-9B17-97C51C45FF66), helpstring("ILocalizationSetup Interface"), pointer_default(unique) ] /*!\brief Manage localization for localization storage \ingroup AppStructure */ interface ILocalizationSetup : IUnknown { [helpstring("method RebuildStorageForLanguage")] /*!\brief Rebuild storage for new language code */ HRESULT RebuildStorageForLanguage( [in] BSTR bsLang ); }; /*!\defgroup Loggers Program events logging */ /*!\brief type of log manager record */ typedef enum LM_RECTYPE { rctInfo = 0, //!< Some info rctWarning = 1, //!< Non critical error rctError = 2, //!< Critical error } LM_RECTYPE; /*!\brief log manager record */ typedef struct LM_RECORD { LM_RECTYPE nRecType; //!< log manager type DATE tTime; //!< time BSTR bsExciter; //!< log record exciter, i.e. hoo write this action BSTR bsUser; //!< user loged at the same time when record writen BSTR bsText; //!< log record text } LM_RECORD; [ object, uuid(201E2EEA-532A-420F-99A9-1A3EAA309C36), helpstring("IEnumLogRecords Interface"), pointer_default(unique) ] /*!\brief interface for acessing log records \ingroup Loggers */ interface IEnumLogRecords : IUnknown { [helpstring("method Next")] /** iterate throw records \retval S_OK - if all items successfuly retrieved \retval S_FALSE - if not all (or non) items retrieved \retval E_ -if any critical errror */ HRESULT Next( [in] ULONG celt, //!< how many items to retieve [out,size_is(celt),length_is(*pCeltFetched)] LM_RECORD *rgVar, //!< pointer to array of retrieved items [out] ULONG *pCeltFetched //!< how many retrived ); /** skip some items in sequence \retval S_OK - if all items successfuly skiped \retval E_ -if any critical errror */ [helpstring("method Skip")] HRESULT Skip( [in] ULONG celt //!< how many items to skip ); /** reset or reinit iterator to sequence start \retval S_OK - if all items successfuly skiped \retval E_ -if any critical errror */ [helpstring("method Reset")] HRESULT Reset( ); /** make the identical enumerator \retval S_OK - if all items successfuly skiped \retval E_ -if any critical errror */ [helpstring("method Clone")] HRESULT Clone( [out] IEnumLogRecords* *ppEnum ); }; [ object, uuid(D86765FD-0F80-45ED-BE39-F9993688A822), helpstring("ILogManager Interface"), pointer_default(unique) ] /*!\brief Log manager \ingroup AppStructure,Loggers */ interface ILogManager : IUnknown { [propget, helpstring("property AllRecords")] /** get enumerator for all records \retval S_OK - if all ok \retval E_ -if any critical errror */ HRESULT AllRecords( [out, retval] IEnumLogRecords* *ppEnum ); /** Show log records view dlg */ [helpstring("method ShowLogWindow")] HRESULT ShowLogWindow( [in] HWND hOwner //!< parent window ); [helpstring("method InsertRecord")] /** insert new log record \retval S_OK - if all ok \retval E_ -if any critical errror */ HRESULT InsertRecord( [in] LM_RECORD* pRecord //!< reference to LM_RECORD structure ); }; [ object, uuid(C3F88877-C2EE-4e08-90AB-5EB8E013C723), helpstring("ILogManagerClient Interface"), pointer_default(unique) ] /*!\brief Interface that recomended to support for any objects that acces log manager \ingroup Loggers */ interface ILogManagerClient : IUnknown { [propget, helpstring("LogManager")] /** \retval S_OK - if all ok \retval E_ -if any critical errror \retval Currently used pointer to log manager */ HRESULT LogManager( [out, retval] ILogManager* *ppVal ); [propget, helpstring("LogManager")] /** Enable or disable logging for object \retval S_OK - if all ok \retval E_ -if any critical errror */ HRESULT EnableLoging( [in] BOOL bEnable ); }; [ object, uuid(610C09BC-6D23-46A3-809D-9DB6CEF1C04F), helpstring("IDriverManager Interface"), pointer_default(unique) ] /*!\brief Driver manager \ingroup AppStructure */ interface IDriverManager : IUnknown { }; /*!\defgroup Channels Channel support */ /*!\brief Type of channel process mode */ typedef enum CHANNEL_MODE { ctmParallel = 0, //!< all objects work parallel ctmInterleave = 1, //!< objects work in interleave mode ctmWaitComplete = 2, //!< only one object can work in channel } CHANNEL_MODE; [ object, uuid(469F30A8-C193-4102-A53B-00B2A5242601), helpstring("IChannel Interface"), pointer_default(unique) ] /*!\brief Channel interface \ingroup Channels \see _IChannelEvents */ interface IChannel : IUnknown { [propget, helpstring("property TransferMode")] /*!\brief Get channel process mode */ HRESULT TransferMode( [out, retval] CHANNEL_MODE *pVal ); [propput, helpstring("property TransferMode")] /*!\brief Set channel process mode */ HRESULT TransferMode( [in] CHANNEL_MODE newVal ); }; [ local, uuid(D19BB349-8915-4d6a-A50D-53544FE8D1CA), helpstring("_IChannelEvents Interface") ] /*!\brief Channel Object Events */ interface _IChannelEvents : IUnknown { [helpstring("method OnTransferModeChanged")] /*!\brief Channel transfer mode changed */ void OnTransferModeChanged( [in] CHANNEL_MODE newMode ); }; /*!\brief Structure with info about connection between two channel objects */ typedef struct CONNECT_INFO { long nSourceObjectID, //!< Source object ID nOutConnectorID, //!< Out connector ID nTargetObjectID, //!< Target object ID nInConnectorID; //!< In connector ID } CONNECT_INFO; [ object, uuid(1CDAAB13-479E-4a0e-A291-F1683FD4A105), helpstring("IEnumConnectInfo Interface"), pointer_default(unique) ] /*!\brief Connect info enumerator */ interface IEnumConnectInfo : IUnknown { [helpstring("method Next")] /*!\brief Get next connect info structure */ HRESULT Next( [in] ULONG celt, [out,size_is(celt),length_is(*pCeltFetched)] CONNECT_INFO *rgVar, [out] ULONG *pCeltFetched ); [helpstring("method Skip")] /*!\brief Skip next connect info structure */ HRESULT Skip( [in] ULONG celt ); [helpstring("method Reset")] /*!\brief Reset enumerator */ HRESULT Reset( ); [helpstring("method Clone")] /*!\brief Clone enumerator */ HRESULT Clone( [out] IEnumConnectInfo* *ppEnum ); }; [ object, uuid(D0426AD9-692F-4c0e-8430-801B5B96C0B6), helpstring("IChannelStructure Interface"), pointer_default(unique) ] /*!\brief Interface manage channel structure \ingroup Channels */ interface IChannelStructure : IUnknown { [propget, helpstring("property Container")] /*!\brief Get container registrar object */ HRESULT ContainerRegistrar( [out, retval] IChannelContainerRegistrar* *pVal ); [helpstring("method AddObjectToChannel")] /*!\brief Add object to channel */ HRESULT AddObjectToChannel( [in] IUnknown* ObjectUnk, [out] long *ObjectID ); [helpstring("method RemoveObjectFromChannel")] /*!\brief Remove object from channel */ HRESULT RemoveObjectFromChannel( [in] IUnknown* pObjectUnk ); [helpstring("method FreeObjectConnector")] /*!\brief Free object connector */ HRESULT FreeObjectConnector( [in] IUnknown* pObjectUnk, [in] long nConnectorID ); [helpstring("method ConnectObjects")] /*!\brief Connect two channel objects */ HRESULT ConnectObjects( [in] CONNECT_INFO* pci ); [helpstring("method DisconnectObjects")] /*!\brief Disconnect two channel objects */ HRESULT DisconnectObjects( [in] CONNECT_INFO* pci ); [propget,helpstring("property ConnectionPairs")] /*!\brief Get connect pairs enumerator */ HRESULT ConnectionPairs( [out,retval] IEnumConnectInfo* *ppEnum ); }; [ object, uuid(85D84B36-FA9D-46e0-BCB1-603910DA13F6), helpstring("IChannelContainerRegistrar Interface"), pointer_default(unique) ] /*!\brief Channel container registrar interface \ingroup Channels */ interface IChannelContainerRegistrar : IUnknown { [helpstring("method RegisterCustomControl")] /*!\brief Register custom control */ HRESULT RegisterCustomControl( [in] BSTR sProgID, [in] long nWidth, [in] long nHeight, [in] REFIID iid, [out] IUnknown* *ppCtrlUnk, [out] DWORD *pdwCookie ); [helpstring("method UnregisterCustomControl")] /*!\brief Unregister custom control */ HRESULT UnregisterCustomControl( [in] DWORD dwCookie ); } [ object, uuid(EC1326CE-7A83-4E63-BDEB-C22248A930EB), helpstring("IChannelContainer Interface"), pointer_default(unique) ] /*!\brief Channel container interface \ingroup Channels */ interface IChannelContainer : IUnknown { [propput, helpstring("property Channel")] HRESULT Channel( [in] IChannel* newVal ); }; [ object, uuid(0BC1B8B4-77FD-4431-9B34-1CDEA6F62E8A), helpstring("IEnumConnectors Interface"), pointer_default(unique) ] /*!\brief Channel connectors enumerator \ingroup Channels */ interface IEnumConnectors : IUnknown { [helpstring("method Next")] /*!\brief Get next input connectors */ HRESULT Next( [in] ULONG celt, [out,size_is(celt),length_is(*pCeltFetched)] IConnector* *rgVar, [out] ULONG *pCeltFetched ); [helpstring("method Skip")] /*!\brief Skip next input connectors */ HRESULT Skip( [in] ULONG celt ); [helpstring("method Reset")] /*!\brief Reset enumerator */ HRESULT Reset( ); [helpstring("method Clone")] /*!\brief Clone enumerator */ HRESULT Clone( [out] IEnumConnectors* *ppEnum ); }; [ object, uuid(E895C703-20FA-41e2-9F5D-143AB0CAB57C), helpstring("IChannelObject Interface"), pointer_default(unique) ] /*!\brief Channel object interface \ingroup Channels */ interface IChannelObject : IUnknown { [propget, helpstring("property Channel")] /*!\brief Get channel object */ HRESULT Channel( [out, retval] IChannel* *pVal ); [propput, helpstring("property Channel")] /*!\brief Set channel object */ HRESULT Channel( [in] IChannel* newVal ); [propget, helpstring("property InputConnectors")] /*!\brief Get input connectors enumerator */ HRESULT InputConnectors( [out,retval] IEnumConnectors* *ppEnum ); [propget, helpstring("property InputConnectors")] /*!\brief Get output connectors enumerator */ HRESULT OutputConnectors( [out,retval] IEnumConnectors* *ppEnum ); }; /*!\brief Hit test value type */ typedef enum GCO_HTENUM { gohtNone, //!< not a object point gohtBody, //!< body point gohtInputConnector, //!< input connector point gohtOutputConnector, //!< output connector point } GCO_HTENUM; /*!\brief Hit test flags */ typedef enum GCO_HTFLAGS { gofNone = 0, //!< Object is not linked to another gofLinked = 1, //!< Object is linked to another } GCO_HTFLAGS; /*!\brief Hit test info */ typedef struct GCO_HT_INFO { GCO_HTENUM htCode; //!< hit test code long nObjectID, //!< object id, if exist nConnectorID; //!< connector id, if exist GUID DataType; //!< Connector datatype, if exist UINT dwFlags; //!< object flags } GCO_HT_INFO; [ object, uuid(716DFFD3-F5A9-4e7c-ABF9-77C13CCA4405), helpstring("IGraphicsChannelObject Interface"), pointer_default(unique) ] /*!\brief Graphics channel object interface (GUI) \ingroup AppStructure */ interface IGraphicsChannelObject : IUnknown { [propget, helpstring("property Position")] /*!\brief Get object position in editor */ HRESULT Position( [out, retval] POINT *pVal ); [propput, helpstring("property Position")] /*!\brief Set object position in editor */ HRESULT Position( [in] POINT newVal ); [helpstring("method DrawChannelItem")] /*!\brief Draw channel object */ HRESULT DrawChannelItem( [in] HDC hDC, [in] long nXShift, [in] long nYShift ); [helpstring("method HitTest")] /*!\brief Hit test area of editor */ HRESULT HitTest( [in] POINT pt, [out] GCO_HT_INFO *pHitTestInfo ); [helpstring("method GetBoundsRect")] /*!\brief Get bounds rect of object */ HRESULT GetBoundsRect( [out] RECT *prcBounds ); [helpstring("method GetWholeBoundsRect")] /*!\brief Get whole bounds rect of object */ HRESULT GetWholeBoundsRect( [in] HDC hDC, [out] RECT *prcBounds ); [helpstring("method GetToolTipInfo")] /*! \brief Get ToolTipInfo */ HRESULT GetToolTipInfo( [in] IConnector *pIConnector, [out] BSTR *pTitle, [out] BSTR *pText ); }; [ local, uuid(DE7E438E-CB96-4fb7-9EF1-22B0D8290E4B), helpstring("_IGraphicsChannelObject Interface") ] /*!\brief Graphics Channel Object Events */ interface _IGraphicsChannelObject : IUnknown { [helpstring("method ViewChanged")] void ViewChanged( [in] IUnknown* pIObjectUnk ); }; [ local, uuid(AF6F831B-8B11-4734-8FBE-D20A80D91C41), helpstring("_IChannelDataFlowEvents Interface") ] /*!\brief Events of data flowing */ interface _IChannelDataFlowEvents : IUnknown { [helpstring("method OnDataReceived")] //! Data received by object void OnDataReceived( [in] REFGUID guidDataType, [in] IUnknown* pIDataUnk ); [helpstring("method OnDataSending")] //! Processed data sending to next object void OnDataSending( [in] REFGUID guidDataType, [in] IUnknown* pIDataUnk ); }; [ object, uuid(E945F7E6-3367-4698-A412-8C1C9C7B1484), helpstring("IImageData Interface"), pointer_default(unique) ] /*!\brief Image data interface \ingroup ChannelData */ interface IImageData : IUnknown { [propget, helpstring("property Width")] /*!\brief Get width of image */ HRESULT Width( [out, retval] long *pVal ); [propput, helpstring("property Width")] /*!\brief Set width of image */ HRESULT Width( [in] long newVal ); [propget, helpstring("property Height")] /*!\brief Get height of image */ HRESULT Height( [out, retval] long *pVal ); [propput, helpstring("property Height")] /*!\brief Set height of image */ HRESULT Height( [in] long newVal ); [propget, helpstring("property BPP")] /*!\brief Get BPP of image */ HRESULT BPP( [out, retval] long *pVal ); [propput, helpstring("property BPP")] /*!\brief Set BPP of image */ HRESULT BPP( [in] long newVal ); [helpstring("method LockBuffer"),local] /*!\brief Lock buffer in memory and return it's address */ HRESULT LockBuffer( [out] void* *ppBuffer ); [helpstring("method UnlockBuffer")] /*!\brief Unlock buffer */ HRESULT UnlockBuffer( ); [propget, helpstring("property BPL")] /*!\brief Get BPL of image */ HRESULT BPL( [out, retval] long *pVal ); [propput, helpstring("property BPL")] /*!\brief Set BPL of image */ HRESULT BPL( [in] long newVal ); }; [ object, uuid(937E726C-992A-4ed6-9167-6215F23B2FAA), helpstring("IEnumObjects Interface"), pointer_default(unique) ] /*!\brief Object enumerator \ingroup ChannelData */ interface IEnumObjects : IUnknown { [helpstring("method Next")] /*!\brief Get next object */ HRESULT Next( [in] ULONG celt, [out,size_is(celt),length_is(*pCeltFetched)] IUnknown* *rgVar, [out] ULONG *pCeltFetched ); [helpstring("method Skip")] /*!\brief Skip next object */ HRESULT Skip( [in] ULONG celt ); [helpstring("method Reset")] /*!\brief Reset enumerator */ HRESULT Reset( ); [helpstring("method Clone")] /*!\brief Clone enumerator */ HRESULT Clone( [out] IEnumObjects* *ppEnum ); }; [ object, uuid(1295EF15-3802-45B2-9D99-C774ACB6754B), helpstring("IGroupData Interface"), pointer_default(unique) ] /*!\brief Group data interface \ingroup ChannelData */ interface IGroupData : IUnknown { [helpstring("method GetDataEnum")] /*!\brief Get channel data enumerator */ HRESULT GetDataEnum( [out] IEnumObjects* *ppEnum ); [helpstring("method AddData")] /*!\brief Add data to group */ HRESULT AddData( [in] IUnknown* Data ); [helpstring("method RemoveData")] /*!\brief Remove data from group */ HRESULT RemoveData( [in] IUnknown* Data ); [helpstring("method RemoveAllData")] /*!\brief Remove all data from group */ HRESULT RemoveAllData( ); }; [ object, uuid(46E51BC5-C98D-4BFD-8984-3C7506AC480B), helpstring("ICustomControlsPopupWindow Interface"), pointer_default(unique) ] /*!\brief Custom controls popup window \ingroup Channels */ interface ICustomControlsPopupWindow : IUnknown { [helpstring("method RegisterCustomControl")] /*!\brief Register custom control */ HRESULT RegisterCustomControl( [in] BSTR sProgID, [in] long nWidth, [in] long nHeight, [in] REFIID iid, [out] IUnknown* *ppCtrlUnk, [out] DWORD *pdwCookie ); [helpstring("method UnregisterCustomControl")] /*!\brief Unregister custom control */ HRESULT UnregisterCustomControl( [in] DWORD dwCookie ); [helpstring("method UpdateWindowPos")] /*!\brief Update custom controls popup window position */ HRESULT UpdateWindowPos( ); }; [ object, uuid(4F2B2295-C9F2-461e-8182-6BD4EDFC6FDB), helpstring("IMainBarNotifyListener Interface"), pointer_default(unique) ] /*!\brief Main bar notifications */ interface IMainBarNotifyListener : IUnknown { [helpstring("method OnMainBarButtonClicked")] /*!\brief Clicked on bar button */ HRESULT OnMainBarButtonClicked( [in] DWORD dwCookie ); }; [ object, uuid(455F8C54-5986-4A60-863D-9B6F122DBB97), helpstring("IMainBar Interface"), pointer_default(unique) ] /*!\brief Main bar interface */ interface IMainBar : IUnknown { [helpstring("method RegisterMainBarButton")] /*!\brief Register bar button */ HRESULT RegisterMainBarButton( [in] long nTopOffsetFactor, [in] BSTR bsTitle, [in] HBITMAP hBmp, [in] IMainBarNotifyListener* pClickListener, [out] DWORD *pdwCookie ); [helpstring("method UnregisterMainBarButton")] /*!\brief Unregister bar button */ HRESULT UnregisterMainBarButton( [in] DWORD dwCookie ); [helpstring("method SetMainBarButtonTitle")] /*!\brief Set bar button title */ HRESULT SetMainBarButtonTitle( [in] DWORD dwCookie, [in] BSTR bsTitle ); }; [ object, uuid(E678C78A-2711-4693-A2A6-812BA5F25A28), helpstring("IAppConfigDlg Interface"), pointer_default(unique) ] /*!\brief Application config dialog interface */ interface IAppConfigDlg : IUnknown { [helpstring("method ExecuteDialog")] /*!\brief Start configurate program objects */ HRESULT ExecuteDialog( ); }; /*!\brief Security user type */ typedef enum ALIGN_TYPE { alignFree = 0, //!< No align alignLeft = 1, //!< Left align alignRight = 2, //!< Right align alignTop = 3, //!< Top align alignBottom = 4, //!< Bottom align } ALIGN_TYPE; /*!\defgroup Connectors Connectors group This classes and interfaces are used for object connectiong and data transferring between objects \brief Classes and interfaces for data transfer */ [ object, uuid(7B8D1940-713C-4138-8CE3-9D383BA74883), helpstring("IInputConnector Interface"), pointer_default(unique) ] /*! \brief Connector base interface \ingroup Connectors */ interface IConnector : IUnknown { [propget, helpstring("property DataType")] /*! \brief Retrieve connector data type */ HRESULT DataType( [out, retval] GUID *pVal ); [propput, helpstring("property DataType")] /*! \brief Set connector data type */ HRESULT DataType( [in] REFGUID newVal ); [propget, helpstring("property ClassType")] /*! \brief Retrieve connector class type */ HRESULT ClassType( [out, retval] CLSID *pVal ); [helpstring("property IsConnectorInput")] /*! \brief Ask for connector kind \retval S_OK Input connector \retval S_FALSE Output connector */ HRESULT IsConnectorInput( ); [helpstring("method Connect")] /*! \brief Connect to another connector */ HRESULT Connect( [in] IConnector* pIConnector ); [helpstring("method Disconnect")] /*! \brief Disconnect from another connector */ HRESULT Disconnect( ); [helpstring("method IsConnected")] /*! \brief Check for connect existing */ HRESULT IsConnected( ); [propget, helpstring("property Offset")] /*! \brief Retrieve GUI connector offset */ HRESULT Offset( [out, retval] POINT *pVal ); [propput, helpstring("property Offset")] /*! \brief Set GUI connector offset */ HRESULT Offset( [in] POINT newVal ); [propget, helpstring("property ID")] /*! \brief Get connector identifier */ HRESULT ID( [out, retval] long *pVal ); [propput, helpstring("property ID")] /*! \brief Set connector identifier */ HRESULT ID( [in] long newVal ); [propget, helpstring("property ID")] /*! \brief Get connector align */ HRESULT Align( [out, retval] ALIGN_TYPE *pVal ); [propput, helpstring("property ID")] /*! \brief Set connector align */ HRESULT Align( [in] ALIGN_TYPE newVal ); }; [ local, uuid(B1F46F39-11E1-4b9b-A3EB-B6695AC71F30), helpstring("_IInputConnectorEvents Interface") ] /*!\brief Connector events */ interface _IConnectorEvents : IUnknown { [helpstring("method OnConnected")] /*!\brief Connector has been connected to another connector */ void OnConnected( [in] IConnector* pIConnector ); /*!\brief Connector has been disconnected from another connector */ void OnDisconnected( [in] IConnector* pIConnector ); /*!\brief Connector offset has been changed */ void OnOffsetChanged( [in] IConnector* pIConnector, [in] POINT newVal ); /*!\brief Connector align has been changed */ void OnAlignChanged( [in] IConnector* pIConnector, [in] ALIGN_TYPE newVal ); }; [ object, uuid(A8E587FC-7949-4C9E-81E8-CE445AB15B1B), helpstring("IInputConnector Interface"), pointer_default(unique) ] /*! \brief Connector input interface \ingroup Connectors \see _IInputConnectorEvents */ interface IInputConnector : IConnector { [propput,helpstring("property Ready")] HRESULT Ready( [in] BOOL newVal ); [propget,helpstring("property Ready")] HRESULT Ready( [out,retval] BOOL *pVal ); [propput,helpstring("property Request")] HRESULT Request( [in] BOOL newVal ); [propget,helpstring("property Request")] HRESULT Request( [out,retval] BOOL *pVal ); }; [ object, uuid(9CA31FB4-E610-434e-A304-E789E9AD4850), helpstring("IChannelInput Interface"), pointer_default(unique) ] /*!\brief Internal interface for input connector object \ingroup Connectors */ interface IChannelInput : IUnknown { [helpstring("method Ready")] HRESULT IsReady( ); [helpstring("method Request")] HRESULT IsRequest( ); [propput,helpstring("property Data")] HRESULT Data( [in] IUnknown* pDataUnk ); }; [ local, uuid(863B2FD2-9F63-4123-B95A-525DAFBAB671), helpstring("_IInputConnectorEvents Interface") ] /*!\brief Input video connector events */ interface _IInputConnectorEvents : IUnknown { [helpstring("method OnDataReceived")] /*!\brief Data has been received */ void OnDataReceived( [in] IInputConnector* pIConnector, [in] IUnknown* pDataUnk ); }; [ object, uuid(4D90C97F-3DFE-4F52-8187-D0DF9CC2D44B), helpstring("IOutputConnector Interface"), pointer_default(unique) ] /*! \brief Connector output interface \ingroup Connectors \see _IOutputConnectorEvents */ interface IOutputConnector : IChannelInput { }; [ object, uuid(2DC5A28D-BB09-491c-9D65-78BE4214E2F0), helpstring("IChannelOutput Interface"), pointer_default(unique) ] /*!\brief Internal interface for video output connector object \ingroup Connectors */ interface IChannelOutput : IUnknown { [helpstring("method StateChanged")] HRESULT StateChanged( ); }; [ local, uuid(72AEA0E5-D769-4C80-ADFD-310B4B37F503), helpstring("_IOutputConnectorEvents Interface") ] /*!\brief Output Video connector events */ interface _IOutputConnectorEvents : IUnknown { [helpstring("method OnStateChanged")] /*!\brief Input connector state changed */ void OnStateChanged( [in] IOutputConnector* pIConnector ); }; /*!\defgroup Clonning Clonning objects */ [ object, uuid(544288A0-64F2-4310-BF1D-C19A0D34C3F2), helpstring("Interface for cloning objects"), pointer_default(unique) ] /*!\brief Clone object interface \ingroup Clonning */ interface ICloneObject : IUnknown { [helpstring("method Clone")] /*!\brief Clone object */ HRESULT Clone( [in] REFIID riid, [out, iid_is(riid)] void **pClone ); [helpstring("method Assign")] /*!\brief Assign object */ HRESULT Assign( [in] IUnknown* pSourseObj ); [propget, helpstring("property ObjectCLSID")] /*!\brief Get object CLSID */ HRESULT ObjectCLSID( [out, retval] CLSID *pVal ); [propget, helpstring("property CloneID")] /*!\brief Get clone ID */ HRESULT CloneID( [out, retval] GUID *pVal ); [propput, helpstring("property CloneID")] /*!\brief Set clone ID */ HRESULT CloneID( [in] REFGUID newVal ); [helpstring("method EraseCloneHistory")] /*!\brief Erase clone history for object */ HRESULT EraseCloneHistory( ); [helpstring("method IsEqual")] /*!\brief Is equal objects */ HRESULT IsEqual( [in] IUnknown* pUnk, [out, retval] BOOL *bEqual ); [helpstring("method AssignPart")] /*!\brief Assign part of object */ HRESULT AssignPart( [in] REFIID riid, [in] IUnknown* pSource ); [propget, helpstring("property ClonePrototype")] /*!\brief Get clone prototype object */ HRESULT ClonePrototype( [out, retval] IUnknown* *pVal ); [propput, helpstring("property ClonePrototype")] /*!\brief Set clone prototype object */ HRESULT ClonePrototype( [in] IUnknown* newVal ); } /*!\defgroup Security Security subsystem */ /*!\brief Security user type */ typedef enum SECURITY_USER_TYPE { sutUser = 0, //!< User identifier sutGroup = 1, //!< Group identifier } SECURITY_USER_TYPE; /*!\brief Default security level type */ typedef enum SECURITY_DEFAULT_LEVEL { sdlFullAccess = 0, //!< Allow full access for object resources sdlNormalAccess = 1, //!< Allow normal access for object resources sdlMinAccess = 2, //!< Allow minimal access for object resources } SECURITY_DEFAULT_LEVEL; [ object, uuid(94E98C12-2680-4F71-8BA0-13C0214C0FDF), helpstring("ISecurityUser Interface"), pointer_default(unique) ] /*!\brief Security user interface \ingroup Security */ interface ISecurityUser : IUnknown { [propget, helpstring("property Login")] HRESULT Login([out, retval] BSTR *pVal); [propput, helpstring("property Login")] HRESULT Login([in] BSTR newVal); [propget, helpstring("property Name")] HRESULT Name([out, retval] BSTR *pVal); [propput, helpstring("property Name")] HRESULT Name([in] BSTR newVal); [propget, helpstring("property Description")] HRESULT Description([out, retval] BSTR *pVal); [propput, helpstring("property Description")] HRESULT Description([in] BSTR newVal); [propget, helpstring("property UserType")] HRESULT UserType([out, retval] SECURITY_USER_TYPE *pVal); [propget, helpstring("property SecurityID")] HRESULT SecurityID([out, retval] BSTR *pVal); [propput, helpstring("property SecurityID")] HRESULT SecurityID([in] BSTR newVal); [propget, helpstring("property Password")] HRESULT Password([out, retval] BSTR *pVal); [propput, helpstring("property Password")] HRESULT Password([in] BSTR newVal); [propget, helpstring("property DefaultPermissions")] HRESULT DefaultPermissions([out, retval] SECURITY_DEFAULT_LEVEL *pVal); [propput, helpstring("property DefaultPermissions")] HRESULT DefaultPermissions([in] SECURITY_DEFAULT_LEVEL newVal); }; [ object, uuid(3B47A56F-430A-4512-B2A1-6CE2758FCC32), helpstring("IEnumSecurityUsers Interface"), pointer_default(unique) ] /*!\brief Security users enumerator \ingroup Security */ interface IEnumSecurityUsers : IUnknown { [helpstring("method Next")] /*!\brief Get next user */ HRESULT Next( [in] ULONG celt, [out,size_is(celt),length_is(*pCeltFetched)] ISecurityUser* *rgVar, [out] ULONG *pCeltFetched ); [helpstring("method Skip")] /*!\brief Skip next user */ HRESULT Skip( [in] ULONG celt ); [helpstring("method Reset")] /*!\brief Reset enumerator */ HRESULT Reset( ); [helpstring("method Clone")] /*!\brief Clone enumerator */ HRESULT Clone( [out] IEnumSecurityUsers* *ppEnum ); }; [ object, uuid(235D4933-ABFB-4E95-9B4F-9E904A0F2D9C), helpstring("ISecurityGroup Interface"), pointer_default(unique) ] /*!\brief Security group interface \ingroup Security */ interface ISecurityGroup : IUnknown { [propget, helpstring("property Users")] HRESULT Users([out, retval] IEnumSecurityUsers* *pVal); [helpstring("method AddUser")] HRESULT AddUser([in] ISecurityUser* pUser); [helpstring("method DeleteUser")] HRESULT DeleteUser([in] ISecurityUser* pUser); [helpstring("method GetUser")] HRESULT GetUser([in] BSTR bsSecurityID, [out,retval] ISecurityUser* *ppUser); [propget, helpstring("property UserCount")] HRESULT UserCount([out, retval] long *pVal); }; [ object, uuid(391D2C5A-4755-4E32-93F8-E983FC752395), helpstring("ISecurityManager Interface"), pointer_default(unique) ] /*!\brief Security manager \ingroup AppStructure,Security */ interface ISecurityManager : IUnknown { [helpstring("method Login")] HRESULT Login([in] BSTR bsName, [in] BSTR bsPass); [helpstring("method UILogin")] HRESULT UILogin([in] HWND hWndParent); [propget, helpstring("property LoggedUser")] HRESULT LoggedUser([out, retval] ISecurityUser* *pVal); [helpstring("method CheckPermission")] HRESULT CheckPermission([in] IUnknown* pObj, [in] long nPropID, [out,retval] BOOL *bPermit); }; // Enum BSTR sequence [ object, uuid(D2D07CF7-C2D7-492b-8CE4-052E8856A88C), helpstring("IEnumBSTR Interface"), pointer_default(unique) ] /*!\brief BSTR enumarator */ interface IEnumBSTR : IUnknown { [helpstring("method Next")] /*!\brief Get next BSTR */ HRESULT Next( [in] ULONG celt, [out,size_is(celt),length_is(*pCeltFetched)] BSTR *bsVar, [out] ULONG *pCeltFetched ); [helpstring("method Skip")] /*!\brief Skip next BSTR */ HRESULT Skip( [in] ULONG celt ); [helpstring("method Reset")] /*!\brief Reset enumerator */ HRESULT Reset( ); [helpstring("method Clone")] /*!\brief Clone enumerator */ HRESULT Clone( [out] IEnumBSTR* *ppEnum ); }; [ object, uuid(F7621493-3D1C-4931-AEA0-8C86C3E6EBE6), helpstring("IEnumLONG Interface"), pointer_default(unique) ] /*!\brief LONG enumarator */ interface IEnumLONG : IUnknown { [helpstring("method Next")] /*!\brief Get next LONG */ HRESULT Next( [in] ULONG celt, [out,size_is(celt),length_is(*pCeltFetched)] long *nVar, [out] ULONG *pCeltFetched ); [helpstring("method Skip")] /*!\brief Skip next LONG */ HRESULT Skip( [in] ULONG celt ); [helpstring("method Reset")] /*!\brief Reset enumerator */ HRESULT Reset( ); [helpstring("method Clone")] /*!\brief Clone enumerator */ HRESULT Clone( [out] IEnumLONG* *ppEnum ); }; [ object, uuid(38016D9E-1097-4025-8157-3D902A5BBB35), helpstring("ISecurityItem Interface"), pointer_default(unique) ] /*!\brief Security item \ingroup Security */ interface ISecurityItem : IUnknown { [propget, helpstring("property SecProperty")] HRESULT SecProperty( [in] BSTR bsSecurityID, [in] long nPropID, [out, retval] BOOL *pVal ); [propput, helpstring("property SecProperty")] HRESULT SecProperty([in] BSTR bsSecurityID, [in] long nPropID, [in] BOOL newVal); [propget, helpstring("property DefSecProperty")] HRESULT DefSecProperty([in] SECURITY_DEFAULT_LEVEL DefID, [in] long nPropID, [out, retval] BOOL *pVal); [propget, helpstring("property PropertyIDS")] HRESULT PropertyIDS([out, retval] IEnumLONG* *pVal); [propget, helpstring("property UsersIDS")] HRESULT UsersIDS([out, retval] IEnumBSTR* *pVal); [helpstring("method DeleteUserID")] HRESULT DeleteUserID([in] BSTR bsSecurityID); [helpstring("method AddUserID")] HRESULT AddUserID([in] BSTR bsSecurityID, [in] SECURITY_DEFAULT_LEVEL DefID); [propget, helpstring("property PropertyName")] HRESULT PropertyName([in] long nPropID, [out, retval] BSTR *pVal); }; [ object, uuid(C2C511B9-1B7F-4800-AA71-990F7BF71C1E), helpstring("IColorSettings Interface"), pointer_default(unique) ] /*!\brief Color manager */ interface IColorSettings : IUnknown { [propget, helpstring("property Brightness")] /*!\brief Get Brightness value 0..1000 */ HRESULT Brightness( [out, retval] double *pVal ); [propput, helpstring("property Brightness")] /*!\brief Set Brightness value 0..1000 */ HRESULT Brightness( [in] double newVal ); [propget, helpstring("property Contrast")] /*!\brief Get Contrast value 0..1000 */ HRESULT Contrast( [out, retval] double *pVal ); [propput, helpstring("property Contrast")] /*!\brief Set Contrast value 0..1000 */ HRESULT Contrast( [in] double newVal ); [propget, helpstring("property Hue")] /*!\brief Get Hue value 0..1000 */ HRESULT Hue( [out, retval] double *pVal ); [propput, helpstring("property Hue")] /*!\brief Set Hue value 0..1000 */ HRESULT Hue( [in] double newVal ); [propget, helpstring("property Saturation")] /*!\brief Get Saturation value 0..1000 */ HRESULT Saturation( [out, retval] double *pVal ); [propput, helpstring("property Saturation")] /*!\brief Set Saturation value 0..1000 */ HRESULT Saturation( [in] double newVal ); }; [ local, uuid(369F4481-201F-4cbe-BA17-2770EC41401F), helpstring("_IColorSettingsEvents Interface") ] /*!\brief Color settings interface events */ interface _IColorSettingsEvents : IUnknown { [helpstring("method OnBrightnessChanged")] /*!\brief Brightness has been changed */ void OnBrightnessChanged( [in] IColorSettings* pIColorSettings, [in] double newVal ); [helpstring("method OnContrastChanged")] /*!\brief Contrast has been changed */ void OnContrastChanged( [in] IColorSettings* pIColorSettings, [in] double newVal ); [helpstring("method OnHueChanged")] /*!\brief Hue has been changed */ void OnHueChanged( [in] IColorSettings* pIColorSettings, [in] double newVal ); [helpstring("method OnSaturationChanged")] /*!\brief Saturation has been changed */ void OnSaturationChanged( [in] IColorSettings* pIColorSettings, [in] double newVal ); }; [ object, uuid(14D248A7-49DC-4d7a-AF00-A5C21A5F4AD4), helpstring("IColorSettingsMiniDlg Interface"), pointer_default(unique) ] /*!\brief Color manager mini dialog */ interface IColorSettingsMiniDlg : IUnknown { [helpstring("method ShowDlg")] /*!\brief Show window */ HRESULT ShowDlg( [in] HWND hParent, [in] IUnknown* pColorSettingsUnk ); }; /*!\defgroup ObjectStates Object state supporting */ [ object, uuid(12D04AB7-621E-4105-8641-2D7E96C30B63), helpstring("IObjectState Interface"), pointer_default(unique) ] /*!\brief Object state \ingroup ObjectStates */ interface IObjectState : IUnknown { [propget, helpstring("property StateName")] /*!\brief Get state name */ HRESULT StateName( [out, retval] BSTR *pVal ); [propput, helpstring("property StateName")] /*!\brief Set state name */ HRESULT StateName( [in] BSTR newVal ); [propget, helpstring("property ObjectActivity")] HRESULT ObjectActivity( [out, retval] BOOL *pVal ); [propput, helpstring("property ObjectActivity")] HRESULT ObjectActivity( [in] BOOL newVal ); }; [ local, uuid(EC441FF5-64D3-4f3d-90DA-B2E669A21A9E), helpstring("_IObjectStateEvents Interface") ] /*!\brief Multi state events \ingroup ObjectStates */ interface _IObjectStateEvents : IUnknown { [helpstring("method StateNameChanged")] /*!\brief State name has been changed */ void OnStateNameChanged( [in] IObjectState* pIObjectState, [in] BSTR bsNewStateName ); [helpstring("method ObjectActivityChanged")] /*!\brief Activity state has been changed */ void OnObjectActivityChanged( [in] IObjectState* pIObjectState, [in] BOOL bNewVal ); }; [ object, uuid(9EA19177-ABEA-4a2e-8816-86F2A4DB185F), helpstring("IEnumStructureItem Interface"), pointer_default(unique) ] /*!\brief Enumerator of object states \ingroup ObjectStates */ interface IEnumObjectState : IUnknown { [helpstring("method Next")] /*!\brief Get next state object */ HRESULT Next( [in] ULONG celt, [out,size_is(celt),length_is(*pCeltFetched)] IUnknown* *rgVar, [out] ULONG *pCeltFetched ); [helpstring("method Skip")] /*!\brief Skip next state object */ HRESULT Skip( [in] ULONG celt ); [helpstring("method Reset")] /*!\brief Reset objects iterating */ HRESULT Reset( ); [helpstring("method Clone")] /*!\brief Clone objects iterator */ HRESULT Clone( [out] IEnumObjectState* *ppEnum ); }; [ object, uuid(52D78E16-B842-4cae-AE53-C6A413F30035), helpstring("IMultiStateManager Interface"), pointer_default(unique) ] /*!\brief Multi state manager \ingroup ObjectStates */ interface IMultiStateManager : IUnknown { [helpstring("method AddState")] /*!\brief Add object state */ HRESULT AddState( [in] IUnknown* pStateUnk ); [helpstring("method RemoveState")] /*!\brief Remove object state */ HRESULT RemoveState( [in] IUnknown* pStateUnk ); [propget, helpstring("property DefaultState")] /*!\brief Get default object state */ HRESULT DefaultState( [out, retval] IUnknown* *pVal ); [propput, helpstring("property DefaultState")] /*!\brief Set default object state */ HRESULT DefaultState( [in] IUnknown* newVal ); [propget, helpstring("property ActiveState")] /*!\brief Get active object state */ HRESULT ActiveState( [out, retval] IUnknown* *pVal ); [propput, helpstring("property ActiveState")] /*!\brief Set active object state */ HRESULT ActiveState( [in] IUnknown* newVal ); [propget, helpstring("property States")] /*!\brief Get object states enumerator */ HRESULT States( [out, retval] IEnumObjectState* *pVal ); [helpstring("method SwapStates")] /*!\brief Swap two states */ HRESULT SwapStates( [in] IUnknown* pIStateUnk1, [in] IUnknown* pIStateUnk2 ); }; [ local, uuid(4E189BCC-5AFC-42ab-9184-E2621A5B061A), helpstring("_IMultiStateEvents Interface") ] /*!\brief Multi state events \ingroup ObjectStates */ interface _IMultiStateEvents : IUnknown { [helpstring("method OnStateAdded")] /*!\brief State object has been added */ void OnStateAdded( [in] IUnknown* pStateUnk ); [helpstring("method OnStateRemoved")] /*!\brief State has been removed */ void OnStateRemoved( [in] IUnknown* pStateUnk ); [helpstring("method OnDefaultStateChanged")] /*!\brief State object has been selected as default */ void OnDefaultStateChanged( [in] IUnknown* pStateUnk ); [helpstring("method OnActiveStateChanged")] /*!\brief State object has been selected as active */ void OnActiveStateChanged( [in] IUnknown* pStateUnk ); [helpstring("method OnSwapStates")] /*!\brief States swapped */ void OnSwapStates( [in] IUnknown* pIStateUnk1, [in] IUnknown* pIStateUnk2 ); }; /*!\defgroup Config Configurating application objects */ [ object, uuid(2334093B-9941-416F-8820-AA3298032A10), helpstring("IAppPropertySheet Interface"), pointer_default(unique) ] /*!\brief Application property sheet interface \ingroup Config */ interface IAppPropertySheet : IUnknown { [helpstring("method AddObject")] /*!\brief Add object for configurating */ HRESULT AddObject( [in] IUnknown* pObjectUnk ); [helpstring("method ExecuteDialog")] /*!\brief Config objects */ HRESULT ExecuteDialog( ); }; //\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\ // Scheduler //\_ [ object, uuid(14C67A6E-ADE5-4e93-8AF9-59DD3F80871F), helpstring("IAction Interface"), pointer_default(unique) ] interface IAction : IUnknown { [propget, helpstring("property ActionName")] /*!\brief Get Action name */ HRESULT ActionName( [out, retval] BSTR *pVal ); [propput, helpstring("property ActionName")] /*!\brief Set Action name */ HRESULT ActionName( [in] BSTR newVal ); [propget, helpstring("property ActionEnabled")] /*!\brief Get Action enabled flag */ HRESULT ActionEnabled( [out, retval] BOOL *pVal ); [propput, helpstring("property ActionEnabled")] /*!\brief set Action enabled flag */ HRESULT ActionEnabled( [in] BOOL newVal ); [propget, helpstring("property Description")] /*!\brief Get Action description */ HRESULT ActionDescription( [out, retval] BSTR *pVal ); [propput, helpstring("property Description")] /*!\brief Set Action description */ HRESULT ActionDescription( [in] BSTR newVal ); [helpstring("method IsActive")] /*!\brief Check for Action active state (action will be in future) */ HRESULT IsActive( ); [helpstring("method LockAction")] /*!\brief Lock Action object while schedule parameters changing */ HRESULT LockAction( ); [helpstring("method UnlockAction")] /*!\brief Unlock Action object after schedule parameters has been changed */ HRESULT UnlockAction( ); }; [ local, uuid(0475DAAA-6C2A-4601-9FC8-09AC0A58FCDA), helpstring("_IScheduledActionEvents Interface") ] interface _IActionEvents : IUnknown { [helpstring("method ActionNameChanged")] /*!\brief Action name has been changed */ void OnActionNameChanged( [in] IAction* pIAction, [in] BSTR bsNewVal ); [helpstring("method ActionDescriptionChanged")] /*!\brief Action description has been changed */ void OnActionDescriptionChanged( [in] IAction* pIAction, [in] BSTR bsNewVal ); [helpstring("method OnActionEnabledChanged")] /*!\brief State enabled value has been changed */ void OnActionEnabledChanged( [in] IAction* pIAction, [in] BOOL bNewVal ); [helpstring("method OnActionActiveChanged")] /*!\brief State enabled value has been changed */ void OnActionActiveChanged( [in] IAction* pIAction, [in] BOOL bNewVal ); }; [ object, uuid(BABB412A-1A97-461C-8D12-6E3BBA0D6E67), helpstring("IScheduler Interface"), pointer_default(unique) ] interface IScheduler : IUnknown { }; [ local, uuid(50AF92D5-0831-4449-A497-4295EEB3735F), helpstring("_ISchedulerEvents Interface") ] interface _ISchedulerEvents : IUnknown { }; [ object, uuid(10572DEE-9E52-4c0b-89C6-16FE6862CD9B), helpstring("IEnumStructureItem Interface"), pointer_default(unique) ] /*!\brief Enumerator of object actions */ interface IEnumActions : IUnknown { [helpstring("method Next")] /*!\brief Get next action object */ HRESULT Next( [in] ULONG celt, [out,size_is(celt),length_is(*pCeltFetched)] IAction* *rgVar, [out] ULONG *pCeltFetched ); [helpstring("method Skip")] /*!\brief Skip next action object */ HRESULT Skip( [in] ULONG celt ); [helpstring("method Reset")] /*!\brief Reset objects iterating */ HRESULT Reset( ); [helpstring("method Clone")] /*!\brief Clone objects iterator */ HRESULT Clone( [out] IEnumActions* *ppEnum ); }; [ object, uuid(A6AD049D-7F4F-4d44-8CF7-717FDD679E2D), helpstring("IScheduler Interface"), pointer_default(unique) ] interface IActionsManager : IUnknown { [helpstring("method AddAction")] HRESULT AddAction( [in] IAction* pIAction ); [helpstring("method RemoveAction")] HRESULT RemoveAction( [in] IAction* pIAction ); [propget, helpstring("property Actions")] HRESULT Actions( [out, retval] IEnumActions* *pVal ); }; [ local, uuid(9D7730EA-1591-4795-AF1C-8E23E27E0553), helpstring("_IActionsManagerEvents Interface") ] interface _IActionsManagerEvents : IUnknown { [helpstring("method OnActionAdded")] /*!\brief Action object has been added */ void OnActionAdded( [in] IAction* pIAction ); [helpstring("method OnActionRemoved")] /*!\brief Action has been removed */ void OnActionRemoved( [in] IAction* pIAction ); }; [ object, uuid(F8CB5664-5CDD-4c3f-8AC5-FB8016662FBE), helpstring("IEnumGUIDs Interface"), pointer_default(unique) ] /*!\brief GUIDs enumerator */ interface IEnumGUIDs : IUnknown { [helpstring("method Next")] /*!\brief Get next GUIDs */ HRESULT Next( [in] ULONG celt, [out,size_is(celt),length_is(*pCeltFetched)] GUID *rgVar, [out] ULONG *pCeltFetched ); [helpstring("method Skip")] /*!\brief Skip next GUIDs */ HRESULT Skip( [in] ULONG celt ); [helpstring("method Reset")] /*!\brief Reset enumerator */ HRESULT Reset( ); [helpstring("method Clone")] /*!\brief Clone enumerator */ HRESULT Clone( [out] IEnumGUIDs* *ppEnum ); }; [ object, uuid(96F4BC6C-D082-4C71-866A-32C4DB425BFA), helpstring("ISchedulerProxy Interface"), pointer_default(unique) ] interface ISchedulerProxy : IUnknown { [propget, helpstring("property ActionMasks")] HRESULT ActionsMask( [out, retval] IEnumActions* *pVal ); [propput, helpstring("property ActionMasks")] HRESULT ActionsMask( [in] IEnumActions* newVal ); [helpstring("method RemoveMask")] HRESULT RemoveMask( ); [helpstring("method IsMasked")] HRESULT IsMasked( ); }; [ local, uuid(4EBD11F5-3861-456D-83FF-5A075E1729DF), helpstring("_ISchedulerProxyEvents Interface") ] interface _ISchedulerProxyEvents : IUnknown { }; typedef enum TWeekEnum { weSunday = 1, weMonday = 2, weTuesday = 4, weWednesday = 8, weThursday = 16, weFriday = 32, weSaturday = 64, } TWeekEnum; typedef struct VSSTIME { short Hours, Minutes; } VSSTIME; [ object, uuid(D15266B0-5FF4-4602-AEF4-E095E43207BB), helpstring("IScheduledAction Interface"), pointer_default(unique) ] interface IScheduledAction : IUnknown { [propget, helpstring("property WeekDays")] HRESULT WeekDays( [out, retval] DWORD *pVal ); [propput, helpstring("property WeekDays")] HRESULT WeekDays( [in] DWORD newVal ); [propget, helpstring("property StartTime")] HRESULT StartTime( [out, retval] VSSTIME *pVal ); [propput, helpstring("property StartTime")] HRESULT StartTime( [in] VSSTIME newVal ); [propget, helpstring("property Duration")] HRESULT Duration( [out, retval] VSSTIME *pVal ); [propput, helpstring("property Duration")] HRESULT Duration( [in] VSSTIME newVal ); }; [ local, uuid(0300B428-777B-493B-B496-FFDC0B0501A2), helpstring("_IScheduledActionEvents Interface") ] interface _IScheduledActionEvents : IUnknown { }; typedef enum TRepeatUnitEnum { ruMin = 0, ruHour = 1, } TRepeatUnitEnum; [ object, uuid(4810BA43-DFF0-4e44-BCC2-EB5C4CBED6B3), helpstring("IAdvancedAction Interface"), pointer_default(unique) ] interface IAdvancedAction : IUnknown { [propget, helpstring("property StartDate")] HRESULT StartDate( [out, retval] DATE *pVal ); [propput, helpstring("property StartDate")] HRESULT StartDate( [in] DATE newVal ); [propget, helpstring("property FinishDateEnabled")] HRESULT FinishDateEnabled( [out, retval] BOOL *pVal ); [propput, helpstring("property FinishDateEnabled")] HRESULT FinishDateEnabled( [in] BOOL newVal ); [propget, helpstring("property FinishDate")] HRESULT FinishDate( [out, retval] DATE *pVal ); [propput, helpstring("property FinishDate")] HRESULT FinishDate( [in] DATE newVal ); [propget, helpstring("property RepeatActionEnabled")] HRESULT RepeatActionEnabled( [out, retval] BOOL *pVal ); [propput, helpstring("property RepeatActionEnabled")] HRESULT RepeatActionEnabled( [in] BOOL newVal ); [propget, helpstring("property RepeatStep")] HRESULT RepeatStep( [out, retval] long *pVal ); [propput, helpstring("property RepeatStep")] HRESULT RepeatStep( [in] long newVal ); [propget, helpstring("property RepeatUnit")] HRESULT RepeatUnit( [out, retval] TRepeatUnitEnum *pVal ); [propput, helpstring("property RepeatUnit")] HRESULT RepeatUnit( [in] TRepeatUnitEnum newVal ); [propget, helpstring("property RepeatDuration")] HRESULT RepeatDuration( [out, retval] VSSTIME *pVal ); [propput, helpstring("property RepeatDuration")] HRESULT RepeatDuration( [in] VSSTIME newVal ); }; [ local, uuid(2CDE6CDA-6653-4af5-AEF6-72169AF66F7A), helpstring("_IAdvancedActionEvents Interface") ] interface _IAdvancedActionEvents : IUnknown { }; /*!\brief Group var interface \ingroup ChannelData */ [ object, uuid(0EE26D8B-3CCC-4D38-9438-1CB7FDFBEFBA), helpstring("IGroupVar Interface"), pointer_default(unique) ] interface IGroupVar : IUnknown { [propget, helpstring("property Value")] /*!\brief Get Value */ HRESULT Value( [in] BSTR bsVar, [out, retval] BSTR *pVal ); [propput, helpstring("property Value")] /*!\brief Set Value */ HRESULT Value( [in] BSTR bsVar, [in] BSTR bsVal ); [propget, helpstring("property Values")] HRESULT Values( [out, retval] IEnumBSTR* *pVal); [helpstring("method Add")] /*!\brief Add to var list */ HRESULT Add( [in] BSTR bsVarName, [in] BSTR bsValue ); [helpstring("method Remove")] /*!\brief Remove from var list */ HRESULT Remove( [in] BSTR bsVar ); [helpstring("method RemoveAllData")] /*!\brief Remove all data from var list */ HRESULT RemoveAll( ); }; [ object, uuid(DA1FF10A-8C89-486C-BC56-BFC8E069381A), helpstring("IBooleanData Interface"), pointer_default(unique) ] interface IBooleanData : IUnknown { [propget, helpstring("property Value")] /*!\brief Get value from object */ HRESULT Value( [out, retval] BOOL *pVal ); [propput, helpstring("property Value")] /*!\brief set value to newVal */ HRESULT Value( [in] BOOL newVal ); [helpstring("method IsTrue")] /*!\brief Value is true */ HRESULT IsTrue( ); [helpstring("method IsFalse")] /*!\brief Value is false */ HRESULT IsFalse( ); [helpstring("method IsValid")] /*!\brief Boolean value is not initialized */ HRESULT IsValid( ); }; /*!\brief Activator listener interface \ingroup AppStructure */ [ object, uuid(958EDE54-44BF-4833-B7E1-A4F5E9B87F5A), helpstring("IActivatorListener Interface"), pointer_default(unique) ] interface IActivatorListener : IUnknown { [helpstring("method ActivateObject")] /*!\brief Activate object - show necessary controls */ HRESULT ActivateObject( ); [helpstring("method DeactivateObject")] /*!\brief Deactivate object - hide necessary controls */ HRESULT DeactivateObject( ); }; /*!\brief Activator listener interface \ingroup AppStructure */ [ object, uuid(693E80B7-F980-40E2-9DD0-AAAF698DDD61), helpstring("IHoverActivator Interface"), pointer_default(unique) ] interface IHoverActivator : IUnknown { [helpstring("method RegisterWindow")] /*!\brief Register window - add to a list */ HRESULT RegisterWindow( [in] HWND hWnd, [in] IActivatorListener* pVal ); [helpstring("method UnregisterWindow")] /*!\brief Unregister window - remove window from a list */ HRESULT UnregisterWindow( [in] HWND hWnd ); [helpstring("method UnregisterAllWindows")] /*!\brief Unregister all windows */ HRESULT UnregisterAllWindows( ); [helpstring("method Enable")] /*!\brief Enable registered windows activation */ HRESULT Enable( ); [helpstring("method Disable")] /*!\brief Disable registered windows activation */ HRESULT Disable( ); }; interface IVssContextMenuHook; [ object, uuid(A2CB8F89-EC59-4259-9A22-8FFDF7E96C19), helpstring("IVssContextMenu Interface"), pointer_default(unique) ] interface IVssContextMenu : IUnknown { [helpstring("method CreateSubMenu")] HRESULT CreateSubMenu( [in] BSTR bsName, [in] REFGUID guidParentMenu, [out,retval] GUID *pguidMenu ); [helpstring("method CreateCommonSubMenu")] HRESULT CreateCommonSubMenu( [in] BSTR bsName, [in] REFGUID guidMenu, [in] REFGUID guidParentMenu ); [helpstring("method AppendMenu")] HRESULT AppendMenu( [in] REFGUID guidMenu, [in] BSTR bsName, [in] UINT nID, [in] IVssContextMenuHook* pIVssMenuHook ); [helpstring("method AppendSeparator")] HRESULT AppendSeparator( [in] REFGUID guidMenu ); [helpstring("method TrackMenu")] HRESULT TrackMenu( [in] UINT Flags, [in] POINT pt, [in] HWND hWnd ); }; /* \brief Channel objects menu handlers \ingroup Channels */ [ object, uuid(8C7230EF-8B13-480e-A5E2-6A00C9C3F6A3), helpstring("IChannelMenuHandler Interface"), pointer_default(unique) ] interface IChannelMenuHandler : IUnknown { [helpstring("method ProcessDisplayContextMenu")] /* \brief Channel objects display context menu */ HRESULT ProcessDisplayContextMenu( [in] IVssContextMenu* pIVssContextMenu ); [helpstring("method ProcessChannelEditorContextMenu")] /* \brief Channel objects channel editor context menu */ HRESULT ProcessChannelEditorContextMenu( [in] IVssContextMenu* pIVssContextMenu ); }; /* \brief Context menu hook \ingroup Channels */ [ object, uuid(1CB66F12-1F19-46f9-BDCC-A3E6C8B8D88A), helpstring("IVssContextMenu Interface"), pointer_default(unique) ] interface IVssContextMenuHook : IUnknown { [helpstring("method ExecuteCommand")] /* \brief Execute command for context menu item */ HRESULT ExecuteCommand( [in] UINT nID ); }; /* \brief Screen shot action interface \ingroup Channels */ [ object, uuid(932F6E61-FC4C-44ac-AD9B-A4F3B7E55153), helpstring("IScreenShotAction Interface"), pointer_default(unique) ] interface IScreenShotAction : IUnknown { [helpstring("method ProcessImage")] /* \brief Process display image */ HRESULT ProcessImage( [in] IImageData* pIImageData ); }; /* \brief Splash window interface */ [ object, uuid(B1B162BC-6351-4700-8987-0C8A5252911C), helpstring("ISplashWnd Interface"), pointer_default(unique) ] interface ISplashWnd : IUnknown { [helpstring("method Show")] /* \brief Show splash window with animate GIF image */ HRESULT Show( [in] long hInstance, [in] UINT nAnimID ); }; [ object, uuid(37E86D01-CEC0-47DB-A906-24208DF2F656), helpstring("IMaskerData Interface"), pointer_default(unique) ] interface IMaskerData : IUnknown { [propget, helpstring("property Zone")] /*!\brief Get Zone */ HRESULT Zone( [out, retval] long *pVal ); [propput, helpstring("property Zone")] /*!\brief Put Zone */ HRESULT Zone( [in] long newVal ); [propget, helpstring("property PointsCnt")] /*!\brief Get PointsCnt */ HRESULT PointsCnt( [out, retval] long *pVal ); [helpstring("method GetPoints")] /*!\brief Get Points */ HRESULT GetPoints( [in, out] long *pSize, [in, out, size_is(*pSize)] POINT *pPoints ); [helpstring("method PutPoints")] /*!\brief Put Points */ HRESULT PutPoints( [in] long newSize, [size_is( newSize )] POINT *pPoints ); }; [ local, uuid(73D82B34-6657-40a3-BF5D-BEB56B08F09D), helpstring("_IMaskerDataEvents Interface") ] /*!\brief MaskerData events interface */ interface _IMaskerDataEvents : IUnknown { [helpstring("method OnZoneChanged")] /*!\brief Zone has been changed */ void OnZoneChanged( [in] long newVal ); [helpstring("method OnPointsChanged")] /*!\brief Points has been changed */ void OnPointsChanged( ); }; /* \brief Registered message description \ingroup Channels */ typedef struct TMessageInfo { GUID guidLocMsg, //!< Localization GUID for Message guidLocTitle; //!< Localization GUID for Title long nMsgId, //!< string id for Message nTitleId; //!< string id for Title UINT nFlags; //!< messagebox flags long nExpertAnswer, //!< expert answer nSavedAnswer; //!< saved answer } TMessageInfo; /* \brief Registered message description \ingroup Channels */ typedef struct TRegisteredMessage { GUID guidMessage; //!< Message id TMessageInfo msgInfo; //!< message description } TRegisteredMessage; [ object, uuid(9A87646A-3BBF-41eb-B626-153863F88C2C), helpstring("IEnumRegisteredMessage Interface"), pointer_default(unique) ] /*!\brief Enumerator of Registered Message structures \ingroup Structure */ interface IEnumRegisteredMessage : IUnknown { [helpstring("method Next")] /*!\brief Get next object */ HRESULT Next( [in] ULONG celt, [out,size_is(celt),length_is(*pCeltFetched)] TRegisteredMessage *rgVar, [out] ULONG *pCeltFetched ); [helpstring("method Skip")] /*!\brief Skip next object */ HRESULT Skip( [in] ULONG celt ); [helpstring("method Reset")] /*!\brief Reset objects iterating */ HRESULT Reset( ); [helpstring("method Clone")] /*!\brief Clone objects iterator */ HRESULT Clone( [out] IEnumRegisteredMessage* *ppEnum ); }; /* \brief Message manager interface \ingroup Channels */ [ object, uuid(8F36D7D9-4262-4B34-AE22-29FE4194A0D0), helpstring("IMessageManager Interface"), pointer_default(unique) ] interface IMessageManager : IUnknown { /* \brief Register message */ [helpstring("method RegisterMessage")] HRESULT RegisterMessage( [in] REFGUID guidMessage, [in] REFGUID guidLocMsg, [in] long nMsgId, [in] REFGUID guidLocTitle, [in] long nTitleId, [in] UINT nFlags, [in] long nExpertAnswer ); /* \brief Show registered message */ [helpstring("method ShowMessage")] HRESULT ShowMessage( [in] HWND hParentWnd, [in] REFGUID guidMessage, [in] BSTR bsReplaceMessage ); [propget, helpstring("property Messages")] HRESULT Messages( [out, retval] IEnumRegisteredMessage* *pVal ); [helpstring("method EmptyHistory")] HRESULT EmptyHistory( [in] REFGUID guidMessage ); [helpstring("method SetAutoAnswer")] HRESULT SetAutoAnswer( [in] REFGUID guidMessage, [in] long nAnswer ); [propget, helpstring("property ExpertMode")] HRESULT ExpertMode( [out, retval] BOOL *pVal ); [propput, helpstring("property ExpertMode")] HRESULT ExpertMode( [in] BOOL newVal ); }; [ local, uuid(57FD2B08-A134-4aaf-8221-292F591B7597), helpstring("_IMessageManagerEvents Interface") ] /*!\brief Message manager events */ interface _IMessageManagerEvents : IUnknown { [helpstring("method OnChildWindowCreated")] /*!\brief Registered messages list changed */ void OnMessageListChanged( [in] IMessageManager* pIMessageManager ); }; [ object, uuid(AC89BF8E-D4A5-4389-AD19-733A57B016A3), helpstring("IMathFactory Interface"), pointer_default(unique) ] /*!\brief Math functions interface */ interface IMathFactory : IUnknown { [helpstring("Check if point is in polygon")] /*!\brief Check if function lies in polygon \retval if S_OK, bInPoly is a result, else reports error */ HRESULT PtInPoly( [in] long nCount, //!< Number of points in polygon [in,size_is(nCount)] POINT *pPoints,//!< Polygon points [in] POINT *pPtHit, //!< Point to check [out,retval] BOOL *bInPoly ); }; [ uuid(DEB734D2-AD94-49DA-BFDF-B145D68F2141), version(1.0), helpstring("VideoSurvDll 1.0 Type Library") ] library VIDEOSURVDLLLib { importlib("stdole32.tlb"); importlib("stdole2.tlb"); [source] interface _IMultiStateEvents; [source] interface _IObjectStateEvents; [source] interface _IColorSettingsEvents; [source] interface _IMaskerDataEvents; //\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\ // Class objects //\_ [ uuid(E8179C88-26DC-4431-A49C-0166EE56DA9D), helpstring("Application Class") ] coclass Application { [default] interface IApplication; interface IStructureLevel; interface IStructureItem; interface IMainBarNotifyListener; [source] interface _IStructureLevelEvents; [source] interface _IApplicationStateEvents; }; [ uuid(3CA50827-B8EE-46EA-86DA-6EBF62AF4288), helpstring("AppWindow Class") ] coclass AppWindow { [default] interface IAppWindow; interface IChildWindowRegistrar; interface IChildWindowManager; [source] interface _IChildWindowManagerEvents; [source] interface _IAppWindowEvents; }; [ uuid(B13AD807-4DC9-421E-A698-B4ED53EBD4C7), helpstring("ChannelManager Class") ] coclass ChannelManager { [default] interface IChannelManager; interface IStructureLevel; interface IStructureItem; [source] interface _IStructureLevelEvents; }; [ uuid(05F079F1-199F-4A45-ABAF-EB9EACE3C9AA), helpstring("SecurityManager Class") ] coclass SecurityManager { [default] interface ISecurityManager; interface IStructureLevel; interface IStructureItem; interface ICloneObject; }; [ uuid(D3AED1F0-8EF2-4085-8C10-1C0ECF7030E3), helpstring("LocalizationManager Class") ] coclass LocalizationManager { [default] interface ILocalizationManager; interface IStructureItem; interface ILocalization; [source] interface _ILocalizationEvents; }; [ uuid(1A2C08AC-3D5D-4B30-A146-C5E3E325E905), helpstring("LogManager Class") ] coclass LogManager { [default] interface ILogManager; interface IStructureItem; }; [ uuid(E65BD519-7C0F-43CA-B866-8C8ED797ECCE), helpstring("DriverManager Class") ] coclass DriverManager { [default] interface IDriverManager; interface IStructureLevel; interface IStructureItem; [source] interface _IStructureLevelEvents; }; [ uuid(CDFCD4B6-D991-42CF-9F4B-87A639EB022A), helpstring("Channel Class") ] coclass Channel { [default] interface IChannel; interface IStructureLevel; interface IStructureItem; [source] interface _IStructureLevelEvents; [source] interface _IChannelEvents; }; [ uuid(FBA89398-6FF9-4263-810E-1FA72622DDFD), helpstring("ChannelContainer Class") ] coclass ChannelContainer { [default] interface IChannelContainer; interface IChannelContainerRegistrar; interface IChildWindow; [source] interface _IChildWindowEvents; }; [ uuid(E90940DE-74BA-46B1-AE64-DD291A51C408), helpstring("GroupData Class") ] coclass GroupData { [default] interface IGroupData; }; [ uuid(F96BE840-CE31-4268-819C-BE270957A9AB), helpstring("ImageData Class") ] coclass ImageData { [default] interface IImageData; }; [ uuid(BA73096C-0F6B-41AA-857B-A3C0ADF3CC57), helpstring("CustomControlsPopupWindow Class") ] coclass CustomControlsPopupWindow { [default] interface ICustomControlsPopupWindow; }; [ uuid(EE2A4868-E8F2-485F-B822-F590D488B3D0), helpstring("MainBar Class") ] coclass MainBar { [default] interface IMainBar; }; [ uuid(73B5FD73-3680-423B-A6AD-45E86B84F8E3), helpstring("LocalizationStorage Class") ] coclass LocalizationStorage { [default] interface ILocalization; }; [ uuid(84930BFB-BCD7-4A9F-ABD5-2CA1BF854D64), helpstring("AppConfigDlg Class") ] coclass AppConfigDlg { [default] interface IAppConfigDlg; }; [ uuid(82DB1423-FA61-4F44-AD06-25F3B025F56A), helpstring("ApplicationPropPage Class") ] coclass ApplicationPropPage { interface IUnknown; }; [ uuid(56F8D6F8-AC79-4EAB-9950-AF5909F51F1A), helpstring("AppWindowPropPage Class") ] coclass AppWindowPropPage { interface IUnknown; }; [ uuid(9449A811-9DB6-4E7D-9974-2494E2AD976C), helpstring("ChannelPropPage Class") ] coclass ChannelPropPage { interface IUnknown; }; [ uuid(05BD93B8-5CB7-4B24-A18E-8933090B4D30), helpstring("ChannelManagerPropPage Class") ] coclass ChannelManagerPropPage { interface IUnknown; }; [ uuid(FF378D5F-5C11-4126-813C-8973375FB62B), helpstring("LocalizationManagerPropPage Class") ] coclass LocalizationManagerPropPage { interface IUnknown; }; [ uuid(D81B735D-B6ED-4AA8-BE75-06FF8B1C8B49), helpstring("LogManagerPropPage Class") ] coclass LogManagerPropPage { interface IUnknown; }; [ uuid(9FF3E6EA-E861-4D5B-B82B-E000F6AF95AA), helpstring("SecurityManagerPropPage Class") ] coclass SecurityManagerPropPage { interface IUnknown; }; [ uuid(40B1300A-78D8-4A1C-B2DA-AD07B897DC58), helpstring("ChannelInputConnector Class") ] coclass ChannelInputConnector { [default] interface IInputConnector; interface IConnector; interface IChannelInput; [default, source] interface _IInputConnectorEvents; [source] interface _IConnectorEvents; }; [ uuid(885791EE-EA8B-4BB9-9DBD-2BECB0A536EF), helpstring("ChannelOutputConnector Class") ] coclass ChannelOutputConnector { [default] interface IOutputConnector; interface IConnector; interface IChannelOutput; [default, source] interface _IOutputConnectorEvents; [source] interface _IConnectorEvents; }; [ uuid(E2BC79A2-0260-440C-B3EA-08A335AB6769), helpstring("StructureItemPage Class") ] coclass StructureItemPage { interface IUnknown; }; [ uuid(C0022C9B-E1D6-4C23-888F-3CF4673D1F8C), helpstring("SecurityUser Class") ] coclass SecurityUser { [default] interface ISecurityUser; }; [ uuid(D64DBEEB-1F5D-4AC7-AEF7-D063EA00D8DD), helpstring("SecurityGroup Class") ] coclass SecurityGroup { [default] interface ISecurityGroup; }; [ uuid(D7164A03-6CF9-41FA-A3BC-E12F049CCC27), helpstring("ColorSettingsPropPage Class") ] coclass ColorSettingsPropPage { interface IUnknown; }; [ uuid(92DDFAC4-F9AE-4C51-9916-1063892BF6DB), helpstring("SecurityItemPropPage Class") ] coclass SecurityItemPropPage { interface IUnknown; }; [ uuid(07A53D28-6B7D-4527-8DE8-B624308A4C07), helpstring("AppPropertySheet Class") ] coclass AppPropertySheet { [default] interface IAppPropertySheet; }; [ uuid(E5C87B26-289D-49F4-99F3-BBE6ADAE1CA2), helpstring("ChannelDirector Class") ] coclass ChannelDirector { [default] interface IChannelDirector; }; [ uuid(395EAC6F-5A33-423E-AA1C-8C5143D96D24), helpstring("MultiStatePropPage Class") ] coclass MultiStatePropPage { interface IUnknown; }; [ uuid(D05AC224-4E34-430D-8C76-B71D2D2A5117), helpstring("StateCommonPropPage Class") ] coclass StateCommonPropPage { interface IUnknown; }; [ uuid(A463B25A-DEBD-4D73-A6BF-7E247C6D368F), helpstring("SchedulerPropPage Class") ] coclass SchedulerPropPage { interface IUnknown; }; [ uuid(D274608B-3596-44C0-A37B-D2927108DDFD), helpstring("Scheduler Class") ] coclass Scheduler { [default] interface IScheduler; interface IActionsManager; [default, source] interface _ISchedulerEvents; [source] interface _IActionsManagerEvents; }; [ uuid(B04CAED3-2129-4587-BC72-F2CDBD271CF4), helpstring("ScheduledAction Class") ] coclass ScheduledAction { [default] interface IAction; interface IScheduledAction; interface IAdvancedAction; [default, source] interface _IActionEvents; [source] interface _IScheduledActionEvents; [source] interface _IAdvancedActionEvents; }; [ uuid(EF5C1907-52C8-49E6-BF58-58AE86AA7D9C), helpstring("ScheduledActionPropPage Class") ] coclass ScheduledActionPropPage { interface IUnknown; }; [ uuid(C74AA6D8-DEA9-417A-96D9-CD284C09EE9B), helpstring("SchedulerProxy Class") ] coclass SchedulerProxy { [default] interface ISchedulerProxy; [default, source] interface _ISchedulerProxyEvents; }; [ uuid(122D2E28-CE94-41EE-A733-EB67C3E918E5), helpstring("SchedulerProxyPropPage Class") ] coclass SchedulerProxyPropPage { interface IUnknown; }; [ uuid(D6A7F4F1-3CC9-4D6D-A638-760A5FA23E27), helpstring("ActionCommonPropPage Class") ] coclass ActionCommonPropPage { interface IUnknown; }; [ uuid(14F8DA98-D595-4DB0-8B54-FBE47819958D), helpstring("ActionAdvancedPropPage Class") ] coclass ActionAdvancedPropPage { interface IUnknown; }; [ uuid(621315D2-CF22-4CDC-9677-F194CF91FA96), helpstring("GroupVar Class") ] coclass GroupVar { [default] interface IGroupVar; }; [ uuid(7E2CD1B8-E914-4F86-9D31-6036C0C0B192), helpstring("BooleanData Class") ] coclass BooleanData { [default] interface IBooleanData; }; [ uuid(7352AD89-F062-4BBB-A5A2-2257E6E0EBAB), helpstring("HoverActivator Class") ] coclass HoverActivator { [default] interface IHoverActivator; }; [ uuid(E36825F1-9CFC-48EF-93D0-A5B685B2880D), helpstring("VssContextMenu Class") ] coclass VssContextMenu { [default] interface IVssContextMenu; }; [ uuid(A9C2992C-43D7-45B9-8B2E-CC2E4D9C8BC2), helpstring("SplashWnd Class") ] coclass SplashWnd { [default] interface ISplashWnd; }; [ uuid(55038013-3F53-448A-A455-77C70113A492), helpstring("MaskerData Class") ] coclass MaskerData { [default] interface IMaskerData; }; [ uuid(C5227C94-5CE8-4818-8DEC-396BC67EEECB), helpstring("MessageManager Class") ] coclass MessageManager { [default] interface IMessageManager; [default, source] interface _IMessageManagerEvents; }; [ uuid(ACC3ED3D-95AE-409E-8D69-602B9460EFE0), helpstring("MessageManagerPropPage Class") ] coclass MessageManagerPropPage { interface IUnknown; }; [ uuid(0FBD441F-1034-4855-A263-CD5D24672A80), helpstring("MathFactory Class") ] coclass MathFactory { [default] interface IMathFactory; }; };