Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenepm.idl
Go to the documentation of this file.
00001 /* 00002 * Endpoint Mapper 00003 * 00004 * Copyright 2006 Robert Shearman (for CodeWeavers) 00005 * 00006 * This library is free software; you can redistribute it and/or 00007 * modify it under the terms of the GNU Lesser General Public 00008 * License as published by the Free Software Foundation; either 00009 * version 2.1 of the License, or (at your option) any later version. 00010 * 00011 * This library is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 * Lesser General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU Lesser General Public 00017 * License along with this library; if not, write to the Free Software 00018 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA 00019 */ 00020 00021 /* FIXME: should be import */ 00022 #include "dcetypes.idl" 00023 00024 cpp_quote("RPC_STATUS WINAPI TowerExplode(") 00025 cpp_quote(" const twr_t *tower, PRPC_SYNTAX_IDENTIFIER object, PRPC_SYNTAX_IDENTIFIER syntax,") 00026 cpp_quote(" char **protseq, char **endpoint, char **address);") 00027 cpp_quote("RPC_STATUS WINAPI TowerConstruct(") 00028 cpp_quote(" const RPC_SYNTAX_IDENTIFIER *object, const RPC_SYNTAX_IDENTIFIER *syntax,") 00029 cpp_quote(" const char *protseq, const char *endpoint, const char *address,") 00030 cpp_quote(" twr_t **tower);") 00031 00032 [ 00033 uuid(e1af8308-5d1f-11c9-91a4-08002b14a0fa), 00034 version(3.0), 00035 pointer_default(ref) 00036 ] 00037 interface epm 00038 { 00039 const long ept_max_annotation_size = 64; 00040 00041 typedef struct 00042 { 00043 GUID object; 00044 twr_t *tower; 00045 [string] char annotation[ept_max_annotation_size]; 00046 } ept_entry_t, *ept_entry_p_t; 00047 00048 typedef [context_handle] void *ept_lookup_handle_t; 00049 00050 /* Adds entries to an endpoint map */ 00051 void ept_insert( 00052 [in] handle_t h, 00053 [in] unsigned32 num_ents, 00054 [in, size_is(num_ents)] 00055 ept_entry_t entries[], 00056 [in] boolean32 replace, 00057 [out] error_status_t *status 00058 ); 00059 00060 /* Removes entries from an endpoint map */ 00061 void ept_delete( 00062 [in] handle_t h, 00063 [in] unsigned32 num_ents, 00064 [in, size_is(num_ents)] 00065 ept_entry_t entries[], 00066 [out] error_status_t *status 00067 ); 00068 00069 /* Lookup entries in an endpoint map */ 00070 [idempotent] 00071 void ept_lookup( 00072 [in] handle_t h, 00073 [in] unsigned32 inquiry_type, 00074 [in] uuid_p_t object, 00075 [in] rpc_if_id_p_t interface_id, 00076 [in] unsigned32 vers_option, 00077 [in, out] ept_lookup_handle_t *entry_handle, 00078 [in] unsigned32 max_ents, 00079 [out] unsigned32 *num_ents, 00080 [out, length_is(*num_ents), size_is(max_ents)] 00081 ept_entry_t entries[], 00082 [out] error_status_t *status 00083 ); 00084 00085 /* Lookup entries in an endpoint map using the given input pattern */ 00086 [idempotent] 00087 void ept_map( 00088 [in] handle_t h, 00089 [in] uuid_p_t object, 00090 [in] twr_p_t map_tower, 00091 [in, out] ept_lookup_handle_t *entry_handle, 00092 [in] unsigned32 max_towers, 00093 [out] unsigned32 *num_towers, 00094 [out, length_is(*num_towers), size_is(max_towers)] 00095 twr_p_t *towers, 00096 [out] error_status_t *status 00097 ); 00098 00099 /* Free the context handle returned by ept_lookup or ept_map */ 00100 void ept_lookup_handle_free( 00101 [in] handle_t h, 00102 [in, out] ept_lookup_handle_t *entry_handle, 00103 [out] error_status_t *status 00104 ); 00105 00106 /* Inquires as to the endpoint map's object identifier */ 00107 [idempotent] 00108 void ept_inq_object( 00109 [in] handle_t h, 00110 [out] GUID *ept_object, 00111 [out] error_status_t *status 00112 ); 00113 00114 /* Deletes matching entries in the endpoint map */ 00115 void ept_mgmt_delete( 00116 [in] handle_t h, 00117 [in] boolean32 object_speced, 00118 [in] uuid_p_t object, 00119 [in] twr_p_t tower, 00120 [out] error_status_t *status 00121 ); 00122 } Generated on Sat May 26 2012 04:16:37 for ReactOS by
1.7.6.1
|