23#ifndef INCLUDED_CPPUHELPER_COMPBASE2_HXX
24#define INCLUDED_CPPUHELPER_COMPBASE2_HXX
46 template<
class Ifc1,
class Ifc2 >
48 :
public WeakComponentImplHelperBase
49 ,
public css::lang::XTypeProvider
50 ,
public Ifc1,
public Ifc2
52 struct cd :
public rtl::StaticAggregate< class_data, ImplClassData2 < Ifc1, Ifc2, WeakComponentImplHelper2<Ifc1, Ifc2> > > {};
55 : WeakComponentImplHelperBase( rMutex )
58 {
return WeakComponentImplHelper_query( rType,
cd::get(),
this,
static_cast<WeakComponentImplHelperBase *
>(
this) ); }
60 { WeakComponentImplHelperBase::acquire(); }
62 { WeakComponentImplHelperBase::release(); }
64 { WeakComponentImplHelperBase::dispose(); }
66 { WeakComponentImplHelperBase::addEventListener(xListener); }
68 { WeakComponentImplHelperBase::removeEventListener(xListener); }
70 {
return WeakComponentImplHelper_getTypes(
cd::get() ); }
72 {
return ImplHelper_getImplementationId(
cd::get() ); }
84 template<
class Ifc1,
class Ifc2 >
86 :
public WeakComponentImplHelperBase
87 ,
public css::lang::XTypeProvider
88 ,
public Ifc1,
public Ifc2
90 struct cd :
public rtl::StaticAggregate< class_data, ImplClassData2 < Ifc1, Ifc2, PartialWeakComponentImplHelper2<Ifc1, Ifc2> > > {};
93 : WeakComponentImplHelperBase( rMutex )
96 {
return WeakComponentImplHelper_query( rType,
cd::get(),
this,
static_cast<WeakComponentImplHelperBase *
>(
this) ); }
98 { WeakComponentImplHelperBase::acquire(); }
100 { WeakComponentImplHelperBase::release(); }
102 {
return WeakComponentImplHelper_getTypes(
cd::get() ); }
104 {
return ImplHelper_getImplementationId(
cd::get() ); }
125 template<
class Ifc1,
class Ifc2 >
127 :
public WeakAggComponentImplHelperBase
128 ,
public css::lang::XTypeProvider
129 ,
public Ifc1,
public Ifc2
131 struct cd :
public rtl::StaticAggregate< class_data, ImplClassData2 < Ifc1, Ifc2, WeakAggComponentImplHelper2<Ifc1, Ifc2> > > {};
134 : WeakAggComponentImplHelperBase( rMutex )
137 {
return WeakAggComponentImplHelperBase::queryInterface( rType ); }
139 {
return WeakAggComponentImplHelper_queryAgg( rType,
cd::get(),
this,
static_cast<WeakAggComponentImplHelperBase *
>(
this) ); }
141 { WeakAggComponentImplHelperBase::acquire(); }
143 { WeakAggComponentImplHelperBase::release(); }
145 {
return WeakAggComponentImplHelper_getTypes(
cd::get() ); }
147 {
return ImplHelper_getImplementationId(
cd::get() ); }
#define SAL_NOEXCEPT
Macro for C++11 "noexcept" vs.
Definition types.h:434
#define SAL_NO_VTABLE
Use this for pure virtual classes, e.g.
Definition types.h:312
#define SAL_OVERRIDE
C++11 "override" feature.
Definition types.h:409
Definition Enterable.hxx:31
Helper class for a late-initialized static aggregate, e.g.
Definition instance.hxx:548
static class_data * get()
Definition instance.hxx:556
A mutual exclusion synchronization object.
Definition mutex.hxx:35
Template reference class for interface type derived from BaseReference.
Definition Reference.h:184
Template C++ class representing an IDL sequence.
Definition Sequence.h:61
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition compbase2.hxx:69
virtual void addEventListener(const css::uno::Reference< css::lang::XEventListener > &xListener) SAL_OVERRIDE
Definition compbase2.hxx:65
virtual void removeEventListener(const css::uno::Reference< css::lang::XEventListener > &xListener) SAL_OVERRIDE
Definition compbase2.hxx:67
virtual void acquire() SAL_NOEXCEPT SAL_OVERRIDE
Definition compbase2.hxx:59
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition compbase2.hxx:71
virtual void dispose() SAL_OVERRIDE
Definition compbase2.hxx:63
virtual css::uno::Any queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
Definition compbase2.hxx:57
virtual void release() SAL_NOEXCEPT SAL_OVERRIDE
Definition compbase2.hxx:61
WeakComponentImplHelper2(::osl::Mutex &rMutex) SAL_NOEXCEPT
Definition compbase2.hxx:54
virtual void release() SAL_NOEXCEPT SAL_OVERRIDE
Definition compbase2.hxx:99
virtual css::uno::Any queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
Definition compbase2.hxx:95
PartialWeakComponentImplHelper2(::osl::Mutex &rMutex) SAL_NOEXCEPT
Definition compbase2.hxx:92
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition compbase2.hxx:103
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition compbase2.hxx:101
virtual void acquire() SAL_NOEXCEPT SAL_OVERRIDE
Definition compbase2.hxx:97
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition compbase2.hxx:144
WeakAggComponentImplHelper2(::osl::Mutex &rMutex) SAL_NOEXCEPT
Definition compbase2.hxx:133
virtual css::uno::Any queryAggregation(css::uno::Type const &rType) SAL_OVERRIDE
Definition compbase2.hxx:138
virtual void acquire() SAL_NOEXCEPT SAL_OVERRIDE
Definition compbase2.hxx:140
virtual void release() SAL_NOEXCEPT SAL_OVERRIDE
Definition compbase2.hxx:142
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition compbase2.hxx:146
virtual css::uno::Any queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
Definition compbase2.hxx:136
C++ class representing an IDL any.
Definition Any.h:58
C++ class representing an IDL meta type.
Definition Type.h:59