19 #ifndef INCLUDED_CPPUHELPER_COMPBASE4_HXX 20 #define INCLUDED_CPPUHELPER_COMPBASE4_HXX 42 template<
class Ifc1,
class Ifc2,
class Ifc3,
class Ifc4 >
44 :
public WeakComponentImplHelperBase
45 ,
public css::lang::XTypeProvider
46 ,
public Ifc1,
public Ifc2,
public Ifc3,
public Ifc4
48 struct cd :
public rtl::StaticAggregate< class_data, ImplClassData4 < Ifc1, Ifc2, Ifc3, Ifc4, WeakComponentImplHelper4<Ifc1, Ifc2, Ifc3, Ifc4> > > {};
51 : WeakComponentImplHelperBase( rMutex )
53 virtual css::uno::Any SAL_CALL
queryInterface( css::uno::Type
const & rType )
throw (css::uno::RuntimeException, std::exception)
SAL_OVERRIDE 54 {
return WeakComponentImplHelper_query( rType, cd::get(),
this, static_cast<WeakComponentImplHelperBase *>(
this) ); }
56 { WeakComponentImplHelperBase::acquire(); }
58 { WeakComponentImplHelperBase::release(); }
60 { WeakComponentImplHelperBase::dispose(); }
61 virtual void SAL_CALL
addEventListener(
const css::uno::Reference< css::lang::XEventListener > & xListener)
throw (css::uno::RuntimeException, std::exception)
SAL_OVERRIDE 62 { WeakComponentImplHelperBase::addEventListener(xListener); }
63 virtual void SAL_CALL
removeEventListener(
const css::uno::Reference< css::lang::XEventListener > & xListener)
throw (css::uno::RuntimeException, std::exception)
SAL_OVERRIDE 64 { WeakComponentImplHelperBase::removeEventListener(xListener); }
65 virtual css::uno::Sequence< css::uno::Type > SAL_CALL
getTypes() throw (
css::uno::RuntimeException, std::exception)
SAL_OVERRIDE 66 {
return WeakComponentImplHelper_getTypes( cd::get() ); }
68 {
return ImplHelper_getImplementationId( cd::get() ); }
80 template<
class Ifc1,
class Ifc2,
class Ifc3,
class Ifc4 >
82 :
public WeakComponentImplHelperBase
83 ,
public css::lang::XTypeProvider
84 ,
public Ifc1,
public Ifc2,
public Ifc3,
public Ifc4
86 struct cd :
public rtl::StaticAggregate< class_data, ImplClassData4 < Ifc1, Ifc2, Ifc3, Ifc4, PartialWeakComponentImplHelper4<Ifc1, Ifc2, Ifc3, Ifc4> > > {};
89 : WeakComponentImplHelperBase( rMutex )
91 virtual css::uno::Any SAL_CALL
queryInterface( css::uno::Type
const & rType )
throw (css::uno::RuntimeException, std::exception)
SAL_OVERRIDE 92 {
return WeakComponentImplHelper_query( rType, cd::get(),
this, static_cast<WeakComponentImplHelperBase *>(
this) ); }
94 { WeakComponentImplHelperBase::acquire(); }
96 { WeakComponentImplHelperBase::release(); }
97 virtual css::uno::Sequence< css::uno::Type > SAL_CALL
getTypes() throw (
css::uno::RuntimeException, std::exception)
SAL_OVERRIDE 98 {
return WeakComponentImplHelper_getTypes( cd::get() ); }
100 {
return ImplHelper_getImplementationId( cd::get() ); }
120 template<
class Ifc1,
class Ifc2,
class Ifc3,
class Ifc4 >
122 :
public WeakAggComponentImplHelperBase
123 ,
public css::lang::XTypeProvider
124 ,
public Ifc1,
public Ifc2,
public Ifc3,
public Ifc4
126 struct cd :
public rtl::StaticAggregate< class_data, ImplClassData4 < Ifc1, Ifc2, Ifc3, Ifc4, WeakAggComponentImplHelper4<Ifc1, Ifc2, Ifc3, Ifc4> > > {};
129 : WeakAggComponentImplHelperBase( rMutex )
131 virtual css::uno::Any SAL_CALL
queryInterface( css::uno::Type
const & rType )
throw (css::uno::RuntimeException, std::exception)
SAL_OVERRIDE 134 {
return WeakAggComponentImplHelper_queryAgg( rType, cd::get(),
this, static_cast<WeakAggComponentImplHelperBase *>(
this) ); }
136 { WeakAggComponentImplHelperBase::acquire(); }
138 { WeakAggComponentImplHelperBase::release(); }
139 virtual css::uno::Sequence< css::uno::Type > SAL_CALL
getTypes() throw (
css::uno::RuntimeException, std::exception)
SAL_OVERRIDE 140 {
return WeakAggComponentImplHelper_getTypes( cd::get() ); }
142 {
return ImplHelper_getImplementationId( cd::get() ); }
css::uno::Any queryInterface(const css::uno::Type &rType, Interface1 *p1)
Compares demanded type to given template argument types.
Definition: queryinterface.hxx:39
#define SAL_OVERRIDE
C++11 "override" feature.
Definition: types.h:423
#define SAL_NO_VTABLE
Use this for pure virtual classes, e.g.
Definition: types.h:335
virtual void acquire() SAL_OVERRIDE
Definition: compbase4.hxx:135
virtual void dispose() SAL_OVERRIDE
Definition: compbase4.hxx:59
virtual void addEventListener(const css::uno::Reference< css::lang::XEventListener > &xListener) SAL_OVERRIDE
Definition: compbase4.hxx:61
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition: compbase4.hxx:65
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition: compbase4.hxx:67
WeakComponentImplHelper4(::osl::Mutex &rMutex)
Definition: compbase4.hxx:50
Implementation helper supporting css::lang::XTypeProvider and css::lang::XComponent.
Definition: compbase4.hxx:43
virtual void removeEventListener(const css::uno::Reference< css::lang::XEventListener > &xListener) SAL_OVERRIDE
Definition: compbase4.hxx:63
virtual css::uno::Any queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
Definition: compbase4.hxx:53
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition: compbase4.hxx:97
Same as WeakComponentImplHelper4, except doesn't implement addEventListener, removeEventListener and ...
Definition: compbase4.hxx:81
virtual css::uno::Any queryAggregation(css::uno::Type const &rType) SAL_OVERRIDE
Definition: compbase4.hxx:133
virtual void acquire() SAL_OVERRIDE
Definition: compbase4.hxx:55
PartialWeakComponentImplHelper4(::osl::Mutex &rMutex)
Definition: compbase4.hxx:88
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition: compbase4.hxx:139
virtual css::uno::Any queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
Definition: compbase4.hxx:131
A mutual exclusion synchronization object.
Definition: mutex.hxx:30
virtual void release() SAL_OVERRIDE
Definition: compbase4.hxx:137
Implementation helper supporting css::lang::XTypeProvider and css::lang::XComponent.
Definition: compbase4.hxx:121
Definition: Enterable.hxx:26
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition: compbase4.hxx:141
virtual void acquire() SAL_OVERRIDE
Definition: compbase4.hxx:93
Helper class for a late-initialized static aggregate, e.g.
Definition: instance.hxx:546
virtual void release() SAL_OVERRIDE
Definition: compbase4.hxx:57
virtual css::uno::Any queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
Definition: compbase4.hxx:91
virtual void release() SAL_OVERRIDE
Definition: compbase4.hxx:95
WeakAggComponentImplHelper4(::osl::Mutex &rMutex)
Definition: compbase4.hxx:128
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition: compbase4.hxx:99