xref: /aoo41x/main/udkapi/com/sun/star/lang/XUnoTunnel.idl (revision 408a4873)
1*408a4873SAndrew Rist/**************************************************************
2cdf0e10cSrcweir *
3*408a4873SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4*408a4873SAndrew Rist * or more contributor license agreements.  See the NOTICE file
5*408a4873SAndrew Rist * distributed with this work for additional information
6*408a4873SAndrew Rist * regarding copyright ownership.  The ASF licenses this file
7*408a4873SAndrew Rist * to you under the Apache License, Version 2.0 (the
8*408a4873SAndrew Rist * "License"); you may not use this file except in compliance
9*408a4873SAndrew Rist * with the License.  You may obtain a copy of the License at
10*408a4873SAndrew Rist *
11*408a4873SAndrew Rist *   http://www.apache.org/licenses/LICENSE-2.0
12*408a4873SAndrew Rist *
13*408a4873SAndrew Rist * Unless required by applicable law or agreed to in writing,
14*408a4873SAndrew Rist * software distributed under the License is distributed on an
15*408a4873SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*408a4873SAndrew Rist * KIND, either express or implied.  See the License for the
17*408a4873SAndrew Rist * specific language governing permissions and limitations
18*408a4873SAndrew Rist * under the License.
19*408a4873SAndrew Rist *
20*408a4873SAndrew Rist *************************************************************/
21*408a4873SAndrew Rist
22*408a4873SAndrew Rist
23cdf0e10cSrcweir#ifndef __com_sun_star_lang_XUnoTunnel_idl__
24cdf0e10cSrcweir#define __com_sun_star_lang_XUnoTunnel_idl__
25cdf0e10cSrcweir
26cdf0e10cSrcweir#ifndef __com_sun_star_uno_XInterface_idl__
27cdf0e10cSrcweir#include <com/sun/star/uno/XInterface.idl>
28cdf0e10cSrcweir#endif
29cdf0e10cSrcweir
30cdf0e10cSrcweir
31cdf0e10cSrcweir
32cdf0e10cSrcweir//=============================================================================
33cdf0e10cSrcweir
34cdf0e10cSrcweirmodule com {  module sun {  module star {  module lang {
35cdf0e10cSrcweir
36cdf0e10cSrcweir//=============================================================================
37cdf0e10cSrcweir
38cdf0e10cSrcweir/** An interface to tunnel UNO. This means providing access to data or
39cdf0e10cSrcweir    something else, which is not specified by UNO-IDL.
40cdf0e10cSrcweir
41cdf0e10cSrcweir    @attention
42cdf0e10cSrcweir    Restrictive useage.  Use only, if there is no better possibility left.
43cdf0e10cSrcweir    It is definitely a hack.
44cdf0e10cSrcweir
45cdf0e10cSrcweir    <p>
46cdf0e10cSrcweir    Common usage:
47cdf0e10cSrcweir    Getting a C++ object pointer in the same process, thus to use an
48cdf0e10cSrcweir    implementation directly, most often because of a design flaw.
49cdf0e10cSrcweir    </p>
50cdf0e10cSrcweir*/
51cdf0e10cSrcweirpublished interface XUnoTunnel: com::sun::star::uno::XInterface
52cdf0e10cSrcweir{
53cdf0e10cSrcweir	/** Call this method to get something which is not specified in UNO, e.g.
54cdf0e10cSrcweir        an address to some C++ object.
55cdf0e10cSrcweir
56cdf0e10cSrcweir        @attention
57cdf0e10cSrcweir		The identifier specifies how the return value is to be reinterpreted.
58cdf0e10cSrcweir        The identifier must be globally unique, because it is unknown where
59cdf0e10cSrcweir        the implementation resides.
60cdf0e10cSrcweir
61cdf0e10cSrcweir        @param aIdentifier
62cdf0e10cSrcweir               identifier
63cdf0e10cSrcweir        @return
64cdf0e10cSrcweir                something
65cdf0e10cSrcweir    */
66cdf0e10cSrcweir	hyper getSomething( [in] sequence< byte > aIdentifier );
67cdf0e10cSrcweir};
68cdf0e10cSrcweir
69cdf0e10cSrcweir//=============================================================================
70cdf0e10cSrcweir
71cdf0e10cSrcweir}; }; }; };
72cdf0e10cSrcweir
73cdf0e10cSrcweir/*=============================================================================
74cdf0e10cSrcweir
75cdf0e10cSrcweir=============================================================================*/
76cdf0e10cSrcweir#endif
77