1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
19 #ifndef INCLUDED_CPPUHELPER_SHLIB_HXX
20 #define INCLUDED_CPPUHELPER_SHLIB_HXX
22 #include <com/sun/star/lang/XMultiServiceFactory.hpp>
23 #include <com/sun/star/registry/XRegistryKey.hpp>
24 #include <cppuhelper/cppuhelperdllapi.h>
30 /** Loads a shared library component and gets the factory out of it. You can give either a
31 fully qualified libname or single lib name. The libname need not be pre/postfixed
35 This should never have been put into the URE interface. Do not call it from
38 @param uri URI of the library
39 @param rPath deprecated, must be empty
40 @param rImplName implementation to be retrieved from the library
41 @param xMgr service manager to be provided to the component
42 @param xKey deprecated, must be null
44 factory instance (com::sun::star::lang::XSingleComponentFactory or legacy
45 com::sun::star::lang::XSingleServiceFactory)
47 CPPUHELPER_DLLPUBLIC ::com::sun::star::uno::Reference
< ::com::sun::star::uno::XInterface
>
48 SAL_CALL
loadSharedLibComponentFactory(
49 ::rtl::OUString
const & uri
, ::rtl::OUString
const & rPath
,
50 ::rtl::OUString
const & rImplName
,
51 ::com::sun::star::uno::Reference
< ::com::sun::star::lang::XMultiServiceFactory
> const & xMgr
,
52 ::com::sun::star::uno::Reference
< ::com::sun::star::registry::XRegistryKey
> const & xKey
);
54 /** Invokes component_writeInfo() function of specified component library. You can give either
55 a fully qualified libname or single lib name. The libname need not be pre/postfixed
59 This should never have been put into the URE interface. Do not call it from
60 client code. Also, this functionality is not needed for passively
61 registered components, only for actively registered legacy ones.
63 @param uri URI of the library
64 @param rPath deprecated, must be empty
65 @param xMgr service manager to be provided to the component
66 @param xKey registry key to be provided to the component
68 CPPUHELPER_DLLPUBLIC
void
69 SAL_CALL
writeSharedLibComponentInfo(
70 ::rtl::OUString
const & uri
, ::rtl::OUString
const & rPath
,
71 ::com::sun::star::uno::Reference
< ::com::sun::star::lang::XMultiServiceFactory
> const & xMgr
,
72 ::com::sun::star::uno::Reference
< ::com::sun::star::registry::XRegistryKey
> const & xKey
);
74 } // end namespace cppu
78 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */