Branch data Line data Source code
1 : : #ifndef INCLUDED_COM_SUN_STAR_LANG_XTYPEPROVIDER_HDL
2 : : #define INCLUDED_COM_SUN_STAR_LANG_XTYPEPROVIDER_HDL
3 : :
4 : : #include "sal/config.h"
5 : :
6 : : #include "com/sun/star/uno/XInterface.hdl"
7 : : #include "com/sun/star/uno/RuntimeException.hdl"
8 : : #include "com/sun/star/uno/Reference.h"
9 : : #include "com/sun/star/uno/Sequence.h"
10 : : #include "com/sun/star/uno/Type.h"
11 : : #include "cppu/macros.hxx"
12 : : #include "sal/types.h"
13 : :
14 : : namespace com { namespace sun { namespace star { namespace uno { class Type; } } } }
15 : :
16 : : namespace com { namespace sun { namespace star { namespace lang {
17 : :
18 : 1212518 : class SAL_NO_VTABLE XTypeProvider : public ::com::sun::star::uno::XInterface
19 : : {
20 : : public:
21 : :
22 : : // Methods
23 : : virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes( ) throw (::com::sun::star::uno::RuntimeException) = 0;
24 : : virtual ::com::sun::star::uno::Sequence< ::sal_Int8 > SAL_CALL getImplementationId( ) throw (::com::sun::star::uno::RuntimeException) = 0;
25 : :
26 : : static inline ::com::sun::star::uno::Type const & SAL_CALL static_type(void * = 0);
27 : :
28 : : protected:
29 : 1197038 : ~XTypeProvider() throw () {} // avoid warnings about virtual members and non-virtual dtor
30 : : };
31 : :
32 : :
33 : : inline ::com::sun::star::uno::Type const & cppu_detail_getUnoType(SAL_UNUSED_PARAMETER ::com::sun::star::lang::XTypeProvider const *);
34 : : } } } }
35 : :
36 : : inline ::com::sun::star::uno::Type const & SAL_CALL getCppuType(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XTypeProvider > *) SAL_THROW(());
37 : :
38 : : #endif
|