My Project
UDK 3.2.7 C/C++ API Reference
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
mapping.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*************************************************************************
3  *
4  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5  *
6  * Copyright 2000, 2010 Oracle and/or its affiliates.
7  *
8  * OpenOffice.org - a multi-platform office productivity suite
9  *
10  * This file is part of OpenOffice.org.
11  *
12  * OpenOffice.org is free software: you can redistribute it and/or modify
13  * it under the terms of the GNU Lesser General Public License version 3
14  * only, as published by the Free Software Foundation.
15  *
16  * OpenOffice.org is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  * GNU Lesser General Public License version 3 for more details
20  * (a copy is included in the LICENSE file that accompanied this code).
21  *
22  * You should have received a copy of the GNU Lesser General Public License
23  * version 3 along with OpenOffice.org. If not, see
24  * <http://www.openoffice.org/license.html>
25  * for a copy of the LGPLv3 License.
26  *
27  ************************************************************************/
28 #ifndef _UNO_MAPPING_H_
29 #define _UNO_MAPPING_H_
30 
31 #include <cppu/cppudllapi.h>
32 #include <rtl/ustring.h>
33 
34 
35 #ifdef __cplusplus
36 extern "C"
37 {
38 #endif
39 
41 struct _uno_Mapping;
42 struct _uno_Environment;
43 
47 typedef void (SAL_CALL * uno_AcquireMappingFunc)(struct _uno_Mapping *);
48 
52 typedef void (SAL_CALL * uno_ReleaseMappingFunc)(struct _uno_Mapping *);
53 
61 typedef void (SAL_CALL * uno_MapInterfaceFunc)(
62  struct _uno_Mapping * pMapping,
63  void ** ppOut, void * pInterface,
64  struct _typelib_InterfaceTypeDescription * pInterfaceTypeDescr );
65 
66 
67 #if defined( SAL_W32)
68 #pragma pack(push, 8)
69 #endif
70 
73 typedef struct _uno_Mapping
74 {
78 
82 
86 } uno_Mapping;
87 
88 #if defined( SAL_W32)
89 #pragma pack(pop)
90 #endif
91 
101 CPPU_DLLPUBLIC void SAL_CALL uno_getMapping(
102  struct _uno_Mapping ** ppMapping,
103  struct _uno_Environment * pFrom,
104  struct _uno_Environment * pTo,
105  rtl_uString * pAddPurpose )
107 
115 typedef void (SAL_CALL * uno_getMappingFunc)(
116  struct _uno_Mapping ** ppMapping,
117  struct _uno_Environment * pFrom,
118  struct _uno_Environment * pTo,
119  rtl_uString * pAddPurpose );
120 
126  uno_getMappingFunc pCallback )
128 
134  uno_getMappingFunc pCallback )
136 
141 typedef void (SAL_CALL * uno_freeMappingFunc)( struct _uno_Mapping * pMapping );
142 
152 CPPU_DLLPUBLIC void SAL_CALL uno_registerMapping(
153  struct _uno_Mapping ** ppMapping, uno_freeMappingFunc freeMapping,
154  struct _uno_Environment * pFrom, struct _uno_Environment * pTo, rtl_uString * pAddPurpose )
156 
162 CPPU_DLLPUBLIC void SAL_CALL uno_revokeMapping(
163  struct _uno_Mapping * pMapping )
165 
177  struct _uno_Mapping ** ppMapping,
178  rtl_uString * pFrom,
179  rtl_uString * pTo,
180  rtl_uString * pAddPurpose )
182 
183 /* symbol exported by each language binding library */
184 #define UNO_EXT_GETMAPPING "uno_ext_getMapping"
185 
193 typedef void (SAL_CALL * uno_ext_getMappingFunc)(
194  struct _uno_Mapping ** ppMapping,
195  struct _uno_Environment * pFrom,
196  struct _uno_Environment * pTo );
197 
198 #ifdef DISABLE_DYNLOADING
199 /* Static linking, this is the uno_ext_getMapping function in the C++/UNO bridge */
200 void SAL_CALL CPPU_ENV_uno_ext_getMapping(
201  struct _uno_Mapping ** ppMapping,
202  struct _uno_Environment * pFrom,
203  struct _uno_Environment * pTo )
205 #endif
206 
207 #ifdef __cplusplus
208 }
209 #endif
210 
211 #endif
212 
213 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */