3 #ifndef INCLUDED_CPPUHELPER_COMPBASE5_HXX
4 #define INCLUDED_CPPUHELPER_COMPBASE5_HXX
26 template<
class Ifc1,
class Ifc2,
class Ifc3,
class Ifc4,
class Ifc5 >
28 :
public WeakComponentImplHelperBase
29 ,
public css::lang::XTypeProvider
30 ,
public Ifc1,
public Ifc2,
public Ifc3,
public Ifc4,
public Ifc5
32 struct cd :
public rtl::StaticAggregate< class_data, ImplClassData5 < Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, WeakComponentImplHelper5<Ifc1, Ifc2, Ifc3, Ifc4, Ifc5> > > {};
35 : WeakComponentImplHelperBase( rMutex )
38 {
return WeakComponentImplHelper_query( rType, cd::get(),
this, static_cast<WeakComponentImplHelperBase *>(
this) ); }
40 { WeakComponentImplHelperBase::acquire(); }
42 { WeakComponentImplHelperBase::release(); }
44 { WeakComponentImplHelperBase::dispose(); }
46 { WeakComponentImplHelperBase::addEventListener(xListener); }
48 { WeakComponentImplHelperBase::removeEventListener(xListener); }
50 {
return WeakComponentImplHelper_getTypes( cd::get() ); }
52 {
return ImplHelper_getImplementationId( cd::get() ); }
64 template<
class Ifc1,
class Ifc2,
class Ifc3,
class Ifc4,
class Ifc5 >
66 :
public WeakComponentImplHelperBase
67 ,
public css::lang::XTypeProvider
68 ,
public Ifc1,
public Ifc2,
public Ifc3,
public Ifc4,
public Ifc5
70 struct cd :
public rtl::StaticAggregate< class_data, ImplClassData5 < Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, PartialWeakComponentImplHelper5<Ifc1, Ifc2, Ifc3, Ifc4, Ifc5> > > {};
73 : WeakComponentImplHelperBase( rMutex )
76 {
return WeakComponentImplHelper_query( rType, cd::get(),
this, static_cast<WeakComponentImplHelperBase *>(
this) ); }
78 { WeakComponentImplHelperBase::acquire(); }
80 { WeakComponentImplHelperBase::release(); }
82 {
return WeakComponentImplHelper_getTypes( cd::get() ); }
84 {
return ImplHelper_getImplementationId( cd::get() ); }
104 template<
class Ifc1,
class Ifc2,
class Ifc3,
class Ifc4,
class Ifc5 >
106 :
public WeakAggComponentImplHelperBase
107 ,
public css::lang::XTypeProvider
108 ,
public Ifc1,
public Ifc2,
public Ifc3,
public Ifc4,
public Ifc5
110 struct cd :
public rtl::StaticAggregate< class_data, ImplClassData5 < Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, WeakAggComponentImplHelper5<Ifc1, Ifc2, Ifc3, Ifc4, Ifc5> > > {};
113 : WeakAggComponentImplHelperBase( rMutex )
118 {
return WeakAggComponentImplHelper_queryAgg( rType, cd::get(),
this, static_cast<WeakAggComponentImplHelperBase *>(
this) ); }
120 { WeakAggComponentImplHelperBase::acquire(); }
122 { WeakAggComponentImplHelperBase::release(); }
124 {
return WeakAggComponentImplHelper_getTypes( cd::get() ); }
126 {
return ImplHelper_getImplementationId( cd::get() ); }
virtual void release() SAL_NOEXCEPT SAL_OVERRIDE
Definition: compbase5.hxx:41
virtual css::uno::Any queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
Definition: compbase5.hxx:75
virtual void removeEventListener(const css::uno::Reference< css::lang::XEventListener > &xListener) SAL_OVERRIDE
Definition: compbase5.hxx:47
Same as WeakComponentImplHelper5, except doesn't implement addEventListener, removeEventListener and ...
Definition: compbase5.hxx:65
WeakAggComponentImplHelper5(::osl::Mutex &rMutex) SAL_NOEXCEPT
Definition: compbase5.hxx:112
virtual void acquire() SAL_NOEXCEPT SAL_OVERRIDE
Definition: compbase5.hxx:119
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition: compbase5.hxx:81
virtual void addEventListener(const css::uno::Reference< css::lang::XEventListener > &xListener) SAL_OVERRIDE
Definition: compbase5.hxx:45
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition: compbase5.hxx:49
virtual void release() SAL_NOEXCEPT SAL_OVERRIDE
Definition: compbase5.hxx:79
virtual void dispose() SAL_OVERRIDE
Definition: compbase5.hxx:43
WeakComponentImplHelper5(::osl::Mutex &rMutex) SAL_NOEXCEPT
Definition: compbase5.hxx:34
Implementation helper supporting css::lang::XTypeProvider and css::lang::XComponent.
Definition: compbase5.hxx:105
Helper class for a late-initialized static aggregate, e.g.
Definition: instance.hxx:528
css::uno::Any queryInterface(const css::uno::Type &rType, Interface1 *p1)
Compares demanded type to given template argument types.
Definition: queryinterface.hxx:23
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition: compbase5.hxx:123
#define SAL_NOEXCEPT
Macro for C++11 "noexcept" vs.
Definition: types.h:396
Implementation helper supporting css::lang::XTypeProvider and css::lang::XComponent.
Definition: compbase5.hxx:27
PartialWeakComponentImplHelper5(::osl::Mutex &rMutex) SAL_NOEXCEPT
Definition: compbase5.hxx:72
#define SAL_NO_VTABLE
Use this for pure virtual classes, e.g.
Definition: types.h:274
A mutual exclusion synchronization object.
Definition: mutex.hxx:15
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition: compbase5.hxx:125
virtual void acquire() SAL_NOEXCEPT SAL_OVERRIDE
Definition: compbase5.hxx:77
virtual void acquire() SAL_NOEXCEPT SAL_OVERRIDE
Definition: compbase5.hxx:39
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition: compbase5.hxx:83
virtual void release() SAL_NOEXCEPT SAL_OVERRIDE
Definition: compbase5.hxx:121
virtual css::uno::Any queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
Definition: compbase5.hxx:37
#define SAL_OVERRIDE
C++11 "override" feature.
Definition: types.h:371
virtual css::uno::Any queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
Definition: compbase5.hxx:115
virtual css::uno::Any queryAggregation(css::uno::Type const &rType) SAL_OVERRIDE
Definition: compbase5.hxx:117
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition: compbase5.hxx:51