Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenirot.idl
Go to the documentation of this file.
00001 /* 00002 * Copyright 2007 Robert Shearman for CodeWeavers 00003 * 00004 * This library is free software; you can redistribute it and/or 00005 * modify it under the terms of the GNU Lesser General Public 00006 * License as published by the Free Software Foundation; either 00007 * version 2.1 of the License, or (at your option) any later version. 00008 * 00009 * This library is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00012 * Lesser General Public License for more details. 00013 * 00014 * You should have received a copy of the GNU Lesser General Public 00015 * License along with this library; if not, write to the Free Software 00016 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA 00017 */ 00018 00019 import "wtypes.idl"; 00020 00021 cpp_quote("#define IROT_PROTSEQ {'n','c','a','l','r','p','c',0}") 00022 cpp_quote("#define IROT_ENDPOINT {'i','r','o','t',0}") 00023 00024 typedef struct tagMonikerComparisonData { 00025 ULONG ulCntData; 00026 [size_is(ulCntData)] BYTE abData[]; 00027 } MonikerComparisonData; 00028 00029 [ 00030 uuid(7a98c254-6808-11cf-b73b-00aa00b677a8), 00031 version(0.2), 00032 #ifndef _MSC_VER 00033 strict_context_handle 00034 #endif 00035 ] 00036 interface Irot 00037 { 00038 typedef struct tagInterfaceData 00039 { 00040 ULONG ulCntData; 00041 [size_is(ulCntData)] BYTE abData[]; 00042 } InterfaceData; 00043 00044 typedef [unique] InterfaceData *PInterfaceData; 00045 00046 typedef struct tagInterfaceList 00047 { 00048 ULONG size; 00049 [size_is(size)] PInterfaceData interfaces[]; 00050 } InterfaceList; 00051 00052 typedef [unique] InterfaceList *PInterfaceList; 00053 00054 typedef DWORD IrotCookie; 00055 00056 typedef handle_t IrotHandle; 00057 typedef [context_handle] void *IrotContextHandle; 00058 00059 HRESULT IrotRegister( 00060 [in] IrotHandle h, 00061 [in] const MonikerComparisonData *moniker_data, 00062 [in] const InterfaceData *object, 00063 [in] const InterfaceData *moniker, 00064 [in] const FILETIME *time, 00065 [in] DWORD grfFlags, 00066 [out] IrotCookie *cookie, 00067 [out] IrotContextHandle *ctxt_handle); 00068 00069 HRESULT IrotRevoke( 00070 [in] IrotHandle h, 00071 [in] IrotCookie cookie, 00072 [in, out] IrotContextHandle *ctxt_handle, 00073 [out] PInterfaceData *object, 00074 [out] PInterfaceData *moniker); 00075 00076 HRESULT IrotIsRunning( 00077 [in] IrotHandle h, 00078 [in] const MonikerComparisonData *moniker_data); 00079 00080 HRESULT IrotGetObject( 00081 [in] IrotHandle h, 00082 [in] const MonikerComparisonData *moniker_data, 00083 [out] PInterfaceData *obj, 00084 [out] IrotCookie *cookie); 00085 00086 HRESULT IrotNoteChangeTime( 00087 [in] IrotHandle h, 00088 [in] IrotCookie cookie, 00089 [in] const FILETIME *time); 00090 00091 HRESULT IrotGetTimeOfLastChange( 00092 [in] IrotHandle h, 00093 [in] const MonikerComparisonData *moniker_data, 00094 [out] FILETIME *time); 00095 00096 HRESULT IrotEnumRunning( 00097 [in] IrotHandle h, 00098 [out] PInterfaceList *list); 00099 } Generated on Sun May 27 2012 04:17:54 for ReactOS by
1.7.6.1
|