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