00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef _CPPUHELPER_WEAKAGG_HXX_
00020 #define _CPPUHELPER_WEAKAGG_HXX_
00021
00022 #include <cppuhelper/weak.hxx>
00023 #include <com/sun/star/uno/XAggregation.hpp>
00024 #include "cppuhelperdllapi.h"
00025
00026
00027 namespace cppu
00028 {
00029
00040 class CPPUHELPER_DLLPUBLIC OWeakAggObject
00041 : public ::cppu::OWeakObject
00042 , public ::com::sun::star::uno::XAggregation
00043 {
00044 public:
00047 inline OWeakAggObject() SAL_THROW(())
00048 {}
00049
00053 virtual void SAL_CALL acquire() throw();
00057 virtual void SAL_CALL release() throw();
00066 virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type & rType )
00067 throw(::com::sun::star::uno::RuntimeException);
00068
00073 virtual void SAL_CALL setDelegator( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > & Delegator )
00074 throw(::com::sun::star::uno::RuntimeException);
00080 virtual ::com::sun::star::uno::Any SAL_CALL queryAggregation( const ::com::sun::star::uno::Type & rType )
00081 throw(::com::sun::star::uno::RuntimeException);
00082
00083 protected:
00090 virtual ~OWeakAggObject() SAL_THROW( (::com::sun::star::uno::RuntimeException) );
00091
00094 ::com::sun::star::uno::WeakReferenceHelper xDelegator;
00095 private:
00096 OWeakAggObject( const OWeakAggObject & rObj ) SAL_THROW(());
00097 OWeakAggObject & operator = ( const OWeakAggObject & rObj ) SAL_THROW(());
00098 };
00099
00100 }
00101
00102 #endif
00103
00104