Line data Source code
1 : #ifndef INCLUDED_COM_SUN_STAR_LOADER_XIMPLEMENTATIONLOADER_HDL
2 : #define INCLUDED_COM_SUN_STAR_LOADER_XIMPLEMENTATIONLOADER_HDL
3 :
4 : #include "sal/config.h"
5 :
6 : #include "com/sun/star/uno/RuntimeException.hdl"
7 : #include "com/sun/star/registry/CannotRegisterImplementationException.hdl"
8 : #include "com/sun/star/loader/CannotActivateFactoryException.hdl"
9 : namespace com { namespace sun { namespace star { namespace registry { class XRegistryKey; } } } }
10 : #include "com/sun/star/uno/XInterface.hdl"
11 : #include "com/sun/star/uno/Reference.h"
12 : #include "cppu/macros.hxx"
13 : #include "rtl/ustring.hxx"
14 : #include "sal/types.h"
15 :
16 : namespace com { namespace sun { namespace star { namespace uno { class Type; } } } }
17 :
18 : namespace com { namespace sun { namespace star { namespace loader {
19 :
20 0 : class SAL_NO_VTABLE XImplementationLoader : public css::uno::XInterface
21 : {
22 : public:
23 :
24 : // Methods
25 : virtual ::com::sun::star::uno::Reference< css::uno::XInterface > SAL_CALL activate( const ::rtl::OUString& implementationName, const ::rtl::OUString& implementationLoaderUrl, const ::rtl::OUString& locationUrl, const ::com::sun::star::uno::Reference< css::registry::XRegistryKey >& xKey ) = 0;
26 : virtual ::sal_Bool SAL_CALL writeRegistryInfo( const ::com::sun::star::uno::Reference< css::registry::XRegistryKey >& xKey, const ::rtl::OUString& implementationLoaderUrl, const ::rtl::OUString& locationUrl ) = 0;
27 :
28 : static inline ::com::sun::star::uno::Type const & SAL_CALL static_type(void * = 0);
29 :
30 : protected:
31 0 : ~XImplementationLoader() throw () {} // avoid warnings about virtual members and non-virtual dtor
32 : };
33 :
34 :
35 : inline ::com::sun::star::uno::Type const & cppu_detail_getUnoType(SAL_UNUSED_PARAMETER css::loader::XImplementationLoader const *);
36 : } } } }
37 :
38 : inline ::com::sun::star::uno::Type const & SAL_CALL getCppuType(const ::com::sun::star::uno::Reference< css::loader::XImplementationLoader > *) SAL_THROW(());
39 :
40 : #endif
|