00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef _CPPUHELPER_IMPLBASE_EX_HXX_
00020 #define _CPPUHELPER_IMPLBASE_EX_HXX_
00021
00022 #include <cppuhelper/weak.hxx>
00023 #include <cppuhelper/weakagg.hxx>
00024 #include <com/sun/star/lang/XTypeProvider.hpp>
00025
00026
00027
00028
00029 #include <com/sun/star/lang/XMultiServiceFactory.hpp>
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00043
00044 namespace cppu
00045 {
00046
00049 typedef ::com::sun::star::uno::Type const & (SAL_CALL * fptr_getCppuType)( void * ) SAL_THROW(());
00050
00053 struct type_entry
00054 {
00059 union
00060 {
00061 fptr_getCppuType getCppuType;
00062 typelib_TypeDescriptionReference * typeRef;
00063 } m_type;
00066 sal_IntPtr m_offset;
00067 };
00068
00071 struct class_data
00072 {
00075 sal_Int16 m_nTypes;
00076
00079 sal_Bool m_storedTypeRefs;
00080
00083 sal_Bool m_createdId;
00084
00087 sal_Int8 m_id[ 16 ];
00088
00091 type_entry m_typeEntries[ 1 ];
00092 };
00093
00096 CPPUHELPER_DLLPUBLIC ::com::sun::star::uno::Any SAL_CALL ImplHelper_query(
00097 ::com::sun::star::uno::Type const & rType,
00098 class_data * cd,
00099 void * that )
00100 SAL_THROW( (::com::sun::star::uno::RuntimeException) );
00103 CPPUHELPER_DLLPUBLIC ::com::sun::star::uno::Any SAL_CALL ImplHelper_queryNoXInterface(
00104 ::com::sun::star::uno::Type const & rType,
00105 class_data * cd,
00106 void * that )
00107 SAL_THROW( (::com::sun::star::uno::RuntimeException) );
00110 CPPUHELPER_DLLPUBLIC ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type >
00111 SAL_CALL ImplHelper_getTypes(
00112 class_data * cd )
00113 SAL_THROW( (::com::sun::star::uno::RuntimeException) );
00116 CPPUHELPER_DLLPUBLIC ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type >
00117 SAL_CALL ImplInhHelper_getTypes(
00118 class_data * cd,
00119 ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > const & rAddTypes )
00120 SAL_THROW( (::com::sun::star::uno::RuntimeException) );
00123 CPPUHELPER_DLLPUBLIC ::com::sun::star::uno::Sequence< sal_Int8 >
00124 SAL_CALL ImplHelper_getImplementationId(
00125 class_data * cd )
00126 SAL_THROW( (::com::sun::star::uno::RuntimeException) );
00127
00130 CPPUHELPER_DLLPUBLIC ::com::sun::star::uno::Any SAL_CALL WeakImplHelper_query(
00131 ::com::sun::star::uno::Type const & rType,
00132 class_data * cd,
00133 void * that,
00134 ::cppu::OWeakObject * pBase )
00135 SAL_THROW( (::com::sun::star::uno::RuntimeException) );
00138 CPPUHELPER_DLLPUBLIC ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type >
00139 SAL_CALL WeakImplHelper_getTypes(
00140 class_data * cd )
00141 SAL_THROW( (::com::sun::star::uno::RuntimeException) );
00142
00145 CPPUHELPER_DLLPUBLIC ::com::sun::star::uno::Any
00146 SAL_CALL WeakAggImplHelper_queryAgg(
00147 ::com::sun::star::uno::Type const & rType,
00148 class_data * cd,
00149 void * that,
00150 ::cppu::OWeakAggObject * pBase )
00151 SAL_THROW( (::com::sun::star::uno::RuntimeException) );
00154 CPPUHELPER_DLLPUBLIC ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type >
00155 SAL_CALL WeakAggImplHelper_getTypes(
00156 class_data * cd )
00157 SAL_THROW( (::com::sun::star::uno::RuntimeException) );
00158
00159 }
00160
00162
00163 #endif
00164
00165