1 /************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23 24 #ifndef INCLUDED_cppu_helper_purpenv_Mapping_hxx 25 #define INCLUDED_cppu_helper_purpenv_Mapping_hxx 26 27 #include "com/sun/star/uno/Any.h" 28 29 #include "uno/environment.h" 30 #include "uno/mapping.h" 31 32 33 namespace cppu { namespace helper { namespace purpenv { 34 35 /** C++ helper for implementing Purpose Environments. 36 (https://wiki.openoffice.org/wiki/Uno/Cpp/Spec/Purpose_Bridge_Implementation_Helper) 37 38 @since UDK 3.2.7 39 */ 40 41 typedef void ProbeFun( 42 bool pre, 43 void * pThis, 44 void * pContext, 45 typelib_TypeDescriptionReference * pReturnTypeRef, 46 typelib_MethodParameter * pParams, 47 sal_Int32 nParams, 48 typelib_TypeDescription const * pMemberType, 49 void * pReturn, 50 void * pArgs[], 51 uno_Any ** ppException ); 52 53 54 55 void createMapping(uno_Mapping ** ppMapping, 56 uno_Environment * pFrom, 57 uno_Environment * pTo, 58 ProbeFun * probeFun = NULL, 59 void * pContext = NULL 60 ); 61 62 }}} 63 64 #endif 65