23#ifndef INCLUDED_CPPUHELPER_IMPLBASE12_HXX 
   24#define INCLUDED_CPPUHELPER_IMPLBASE12_HXX 
   30#include "com/sun/star/lang/XTypeProvider.hpp" 
   42        type_entry m_typeEntries[ 12 + 1 ];
 
   45    template< 
typename Ifc1, 
typename Ifc2, 
typename Ifc3, 
typename Ifc4, 
typename Ifc5, 
typename Ifc6, 
typename Ifc7, 
typename Ifc8, 
typename Ifc9, 
typename Ifc10, 
typename Ifc11, 
typename Ifc12, 
typename Impl >
 
   48        class_data* operator ()()
 
   50            static class_data12 s_cd =
 
   53                { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
 
   55                    CPPUHELPER_DETAIL_TYPEENTRY(Ifc1),
 
   56                    CPPUHELPER_DETAIL_TYPEENTRY(Ifc2),
 
   57                    CPPUHELPER_DETAIL_TYPEENTRY(Ifc3),
 
   58                    CPPUHELPER_DETAIL_TYPEENTRY(Ifc4),
 
   59                    CPPUHELPER_DETAIL_TYPEENTRY(Ifc5),
 
   60                    CPPUHELPER_DETAIL_TYPEENTRY(Ifc6),
 
   61                    CPPUHELPER_DETAIL_TYPEENTRY(Ifc7),
 
   62                    CPPUHELPER_DETAIL_TYPEENTRY(Ifc8),
 
   63                    CPPUHELPER_DETAIL_TYPEENTRY(Ifc9),
 
   64                    CPPUHELPER_DETAIL_TYPEENTRY(Ifc10),
 
   65                    CPPUHELPER_DETAIL_TYPEENTRY(Ifc11),
 
   66                    CPPUHELPER_DETAIL_TYPEENTRY(Ifc12),
 
   67                    CPPUHELPER_DETAIL_TYPEENTRY(css::lang::XTypeProvider)
 
   70            return reinterpret_cast< class_data * 
>(&s_cd);
 
   84    template< 
class Ifc1, 
class Ifc2, 
class Ifc3, 
class Ifc4, 
class Ifc5, 
class Ifc6, 
class Ifc7, 
class Ifc8, 
class Ifc9, 
class Ifc10, 
class Ifc11, 
class Ifc12 >
 
   86        : 
public css::lang::XTypeProvider
 
   87        , 
public Ifc1, 
public Ifc2, 
public Ifc3, 
public Ifc4, 
public Ifc5, 
public Ifc6, 
public Ifc7, 
public Ifc8, 
public Ifc9, 
public Ifc10, 
public Ifc11, 
public Ifc12
 
   89        struct cd : 
public rtl::StaticAggregate< class_data, ImplClassData12< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12, ImplHelper12<Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12> > > {};
 
   91#if defined LIBO_INTERNAL_ONLY 
  100            { 
return ImplHelper_query( rType, 
cd::get(), 
this ); }
 
 
  102            { 
return ImplHelper_getTypes( 
cd::get() ); }
 
 
  104            { 
return ImplHelper_getImplementationId( 
cd::get() ); }
 
 
 
  119    template< 
class Ifc1, 
class Ifc2, 
class Ifc3, 
class Ifc4, 
class Ifc5, 
class Ifc6, 
class Ifc7, 
class Ifc8, 
class Ifc9, 
class Ifc10, 
class Ifc11, 
class Ifc12 >
 
  122        , 
public css::lang::XTypeProvider
 
  123        , 
public Ifc1, 
public Ifc2, 
public Ifc3, 
public Ifc4, 
public Ifc5, 
public Ifc6, 
public Ifc7, 
public Ifc8, 
public Ifc9, 
public Ifc10, 
public Ifc11, 
public Ifc12
 
  125        struct cd : 
public rtl::StaticAggregate< class_data, ImplClassData12< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12, WeakImplHelper12<Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12> > > {};
 
  128            { 
return WeakImplHelper_query( rType, 
cd::get(), 
this, 
static_cast<OWeakObject *
>(
this) ); }
 
 
  134            { 
return WeakImplHelper_getTypes( 
cd::get() ); }
 
 
  136            { 
return ImplHelper_getImplementationId( 
cd::get() ); }
 
 
 
  151    template< 
class Ifc1, 
class Ifc2, 
class Ifc3, 
class Ifc4, 
class Ifc5, 
class Ifc6, 
class Ifc7, 
class Ifc8, 
class Ifc9, 
class Ifc10, 
class Ifc11, 
class Ifc12 >
 
  154        , 
public css::lang::XTypeProvider
 
  155        , 
public Ifc1, 
public Ifc2, 
public Ifc3, 
public Ifc4, 
public Ifc5, 
public Ifc6, 
public Ifc7, 
public Ifc8, 
public Ifc9, 
public Ifc10, 
public Ifc11, 
public Ifc12
 
  157        struct cd : 
public rtl::StaticAggregate< class_data, ImplClassData12< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12, WeakAggImplHelper12<Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12> > > {};
 
  162            { 
return WeakAggImplHelper_queryAgg( rType, 
cd::get(), 
this, 
static_cast<OWeakAggObject *
>(
this) ); }
 
 
  168            { 
return WeakAggImplHelper_getTypes( 
cd::get() ); }
 
 
  170            { 
return ImplHelper_getImplementationId( 
cd::get() ); }
 
 
 
  188    template< 
class BaseClass, 
class Ifc1, 
class Ifc2, 
class Ifc3, 
class Ifc4, 
class Ifc5, 
class Ifc6, 
class Ifc7, 
class Ifc8, 
class Ifc9, 
class Ifc10, 
class Ifc11, 
class Ifc12 >
 
  191        , 
public Ifc1, 
public Ifc2, 
public Ifc3, 
public Ifc4, 
public Ifc5, 
public Ifc6, 
public Ifc7, 
public Ifc8, 
public Ifc9, 
public Ifc10, 
public Ifc11, 
public Ifc12
 
  193        struct cd : 
public rtl::StaticAggregate< class_data, ImplClassData12< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12, ImplInheritanceHelper12<BaseClass, Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12> > > {};
 
  195        template< 
typename T1 >
 
  197        template< 
typename T1, 
typename T2 >
 
  199            BaseClass(arg1, arg2) {}
 
 
  200        template< 
typename T1, 
typename T2, 
typename T3 >
 
  202            T1 
const & arg1, T2 
const & arg2, T3 
const & arg3):
 
  203            BaseClass(arg1, arg2, arg3) {}
 
 
  204        template< 
typename T1, 
typename T2, 
typename T3, 
typename T4 >
 
  206            T1 
const & arg1, T2 
const & arg2, T3 
const & arg3, T4 
const & arg4):
 
  207            BaseClass(arg1, arg2, arg3, arg4) {}
 
 
  209            typename T1, 
typename T2, 
typename T3, 
typename T4, 
typename T5 >
 
  211            T1 
const & arg1, T2 
const & arg2, T3 
const & arg3, T4 
const & arg4,
 
  213            BaseClass(arg1, arg2, arg3, arg4, arg5) {}
 
 
  215            typename T1, 
typename T2, 
typename T3, 
typename T4, 
typename T5,
 
  218            T1 
const & arg1, T2 
const & arg2, T3 
const & arg3, T4 
const & arg4,
 
  219            T5 
const & arg5, T6 
const & arg6):
 
  220            BaseClass(arg1, arg2, arg3, arg4, arg5, arg6) {}
 
 
  228                return BaseClass::queryInterface( rType );
 
 
  231            { BaseClass::acquire(); }
 
 
  233            { BaseClass::release(); }
 
 
  235            { 
return ImplInhHelper_getTypes( 
cd::get(), BaseClass::getTypes() ); }
 
 
  237            { 
return ImplHelper_getImplementationId( 
cd::get() ); }
 
 
 
  256    template< 
class BaseClass, 
class Ifc1, 
class Ifc2, 
class Ifc3, 
class Ifc4, 
class Ifc5, 
class Ifc6, 
class Ifc7, 
class Ifc8, 
class Ifc9, 
class Ifc10, 
class Ifc11, 
class Ifc12 >
 
  259        , 
public Ifc1, 
public Ifc2, 
public Ifc3, 
public Ifc4, 
public Ifc5, 
public Ifc6, 
public Ifc7, 
public Ifc8, 
public Ifc9, 
public Ifc10, 
public Ifc11, 
public Ifc12
 
  261        struct cd : 
public rtl::StaticAggregate< class_data, ImplClassData12< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12, AggImplInheritanceHelper12<BaseClass, Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12> > > {};
 
  263        template< 
typename T1 >
 
  265        template< 
typename T1, 
typename T2 >
 
  267            BaseClass(arg1, arg2) {}
 
 
  268        template< 
typename T1, 
typename T2, 
typename T3 >
 
  270            T1 
const & arg1, T2 
const & arg2, T3 
const & arg3):
 
  271            BaseClass(arg1, arg2, arg3) {}
 
 
  272        template< 
typename T1, 
typename T2, 
typename T3, 
typename T4 >
 
  274            T1 
const & arg1, T2 
const & arg2, T3 
const & arg3, T4 
const & arg4):
 
  275            BaseClass(arg1, arg2, arg3, arg4) {}
 
 
  277            typename T1, 
typename T2, 
typename T3, 
typename T4, 
typename T5 >
 
  279            T1 
const & arg1, T2 
const & arg2, T3 
const & arg3, T4 
const & arg4,
 
  281            BaseClass(arg1, arg2, arg3, arg4, arg5) {}
 
 
  283            typename T1, 
typename T2, 
typename T3, 
typename T4, 
typename T5,
 
  286            T1 
const & arg1, T2 
const & arg2, T3 
const & arg3, T4 
const & arg4,
 
  287            T5 
const & arg5, T6 
const & arg6):
 
  288            BaseClass(arg1, arg2, arg3, arg4, arg5, arg6) {}
 
 
  292            { 
return BaseClass::queryInterface( rType ); }
 
 
  298                return BaseClass::queryAggregation( rType );
 
 
  301            { BaseClass::acquire(); }
 
 
  303            { BaseClass::release(); }
 
 
  305            { 
return ImplInhHelper_getTypes( 
cd::get(), BaseClass::getTypes() ); }
 
 
  307            { 
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
unsigned char sal_Bool
Definition types.h:38
#define SAL_OVERRIDE
C++11 "override" feature.
Definition types.h:409
signed char sal_Int8
Definition types.h:43
#define SAL_WARN_UNUSED
Annotate classes where a compiler should warn if an instance is unused.
Definition types.h:611
Definition Enterable.hxx:31
Helper class for a late-initialized static aggregate, e.g.
Definition instance.hxx:548
rtl::StaticAggregate< class_data, ImplClassData12< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12, ImplHelper12< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12 > > >::get static class_data * get()
Definition instance.hxx:556
Template C++ class representing an IDL sequence.
Definition Sequence.h:61
Implementation helper implementing interface css::lang::XTypeProvider and method XInterface::queryInt...
Definition implbase12.hxx:88
virtual css::uno::Any queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
Definition implbase12.hxx:99
~ImplHelper12() SAL_NOEXCEPT
Definition implbase12.hxx:109
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition implbase12.hxx:101
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition implbase12.hxx:103
Implementation helper implementing interfaces css::lang::XTypeProvider and css::uno::XInterface which...
Definition implbase12.hxx:124
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition implbase12.hxx:133
virtual void acquire() SAL_NOEXCEPT SAL_OVERRIDE
increasing m_refCount
Definition implbase12.hxx:129
virtual css::uno::Any queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
Basic queryInterface() implementation supporting com::sun::star::uno::XWeak and com::sun::star::uno::...
Definition implbase12.hxx:127
virtual void release() SAL_NOEXCEPT SAL_OVERRIDE
decreasing m_refCount
Definition implbase12.hxx:131
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition implbase12.hxx:135
Implementation helper implementing interfaces css::lang::XTypeProvider and css::uno::XInterface which...
Definition implbase12.hxx:156
virtual void release() SAL_NOEXCEPT SAL_OVERRIDE
If a delegator is set, then the delegators gets released.
Definition implbase12.hxx:165
virtual void acquire() SAL_NOEXCEPT SAL_OVERRIDE
If a delegator is set, then the delegators gets acquired.
Definition implbase12.hxx:163
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition implbase12.hxx:169
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition implbase12.hxx:167
virtual css::uno::Any queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
If a delegator is set, then the delegator is queried for the demanded interface.
Definition implbase12.hxx:159
virtual css::uno::Any queryAggregation(css::uno::Type const &rType) SAL_OVERRIDE
Called by the delegator or queryInterface.
Definition implbase12.hxx:161
ImplInheritanceHelper12(T1 const &arg1, T2 const &arg2, T3 const &arg3)
Definition implbase12.hxx:201
ImplInheritanceHelper12(T1 const &arg1, T2 const &arg2, T3 const &arg3, T4 const &arg4)
Definition implbase12.hxx:205
ImplInheritanceHelper12(T1 const &arg1, T2 const &arg2, T3 const &arg3, T4 const &arg4, T5 const &arg5, T6 const &arg6)
Definition implbase12.hxx:217
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition implbase12.hxx:236
virtual css::uno::Any queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
Definition implbase12.hxx:223
ImplInheritanceHelper12()
Definition implbase12.hxx:222
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition implbase12.hxx:234
virtual void acquire() SAL_NOEXCEPT SAL_OVERRIDE
Definition implbase12.hxx:230
ImplInheritanceHelper12(T1 const &arg1, T2 const &arg2, T3 const &arg3, T4 const &arg4, T5 const &arg5)
Definition implbase12.hxx:210
ImplInheritanceHelper12(T1 const &arg1)
Definition implbase12.hxx:196
ImplInheritanceHelper12(T1 const &arg1, T2 const &arg2)
Definition implbase12.hxx:198
virtual void release() SAL_NOEXCEPT SAL_OVERRIDE
Definition implbase12.hxx:232
AggImplInheritanceHelper12(T1 const &arg1)
Definition implbase12.hxx:264
AggImplInheritanceHelper12(T1 const &arg1, T2 const &arg2, T3 const &arg3)
Definition implbase12.hxx:269
virtual css::uno::Any queryAggregation(css::uno::Type const &rType) SAL_OVERRIDE
Definition implbase12.hxx:293
AggImplInheritanceHelper12(T1 const &arg1, T2 const &arg2, T3 const &arg3, T4 const &arg4, T5 const &arg5, T6 const &arg6)
Definition implbase12.hxx:285
virtual css::uno::Any queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
Definition implbase12.hxx:291
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition implbase12.hxx:306
AggImplInheritanceHelper12()
Definition implbase12.hxx:290
AggImplInheritanceHelper12(T1 const &arg1, T2 const &arg2, T3 const &arg3, T4 const &arg4, T5 const &arg5)
Definition implbase12.hxx:278
virtual void release() SAL_NOEXCEPT SAL_OVERRIDE
Definition implbase12.hxx:302
virtual void acquire() SAL_NOEXCEPT SAL_OVERRIDE
Definition implbase12.hxx:300
AggImplInheritanceHelper12(T1 const &arg1, T2 const &arg2)
Definition implbase12.hxx:266
AggImplInheritanceHelper12(T1 const &arg1, T2 const &arg2, T3 const &arg3, T4 const &arg4)
Definition implbase12.hxx:273
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition implbase12.hxx:304
OWeakObject()
Default Constructor.
Definition weak.hxx:100
virtual void acquire() SAL_NOEXCEPT SAL_OVERRIDE
increasing m_refCount
virtual void release() SAL_NOEXCEPT SAL_OVERRIDE
decreasing m_refCount
virtual void acquire() SAL_NOEXCEPT SAL_OVERRIDE
If a delegator is set, then the delegators gets acquired.
OWeakAggObject()
Constructor.
Definition weakagg.hxx:52
virtual css::uno::Any queryInterface(const css::uno::Type &rType) SAL_OVERRIDE
If a delegator is set, then the delegator is queried for the demanded interface.
virtual void release() SAL_NOEXCEPT SAL_OVERRIDE
If a delegator is set, then the delegators gets released.
C++ class representing an IDL any.
Definition Any.h:58
bool hasValue() const
Tests if any contains a value.
Definition Any.h:193
C++ class representing an IDL meta type.
Definition Type.h:59