23#ifndef INCLUDED_CPPUHELPER_IMPLBASE8_HXX 
   24#define INCLUDED_CPPUHELPER_IMPLBASE8_HXX 
   30#include "com/sun/star/lang/XTypeProvider.hpp" 
   42        type_entry m_typeEntries[ 8 + 1 ];
 
   45    template< 
typename Ifc1, 
typename Ifc2, 
typename Ifc3, 
typename Ifc4, 
typename Ifc5, 
typename Ifc6, 
typename Ifc7, 
typename Ifc8, 
typename Impl >
 
   48        class_data* operator ()()
 
   50            static class_data8 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(css::lang::XTypeProvider)
 
   66            return reinterpret_cast< class_data * 
>(&s_cd);
 
   80    template< 
class Ifc1, 
class Ifc2, 
class Ifc3, 
class Ifc4, 
class Ifc5, 
class Ifc6, 
class Ifc7, 
class Ifc8 >
 
   82        : 
public css::lang::XTypeProvider
 
   83        , 
public Ifc1, 
public Ifc2, 
public Ifc3, 
public Ifc4, 
public Ifc5, 
public Ifc6, 
public Ifc7, 
public Ifc8
 
   85        struct cd : 
public rtl::StaticAggregate< class_data, ImplClassData8< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, ImplHelper8<Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8> > > {};
 
   87#if defined LIBO_INTERNAL_ONLY 
   96            { 
return ImplHelper_query( rType, 
cd::get(), 
this ); }
 
 
   98            { 
return ImplHelper_getTypes( 
cd::get() ); }
 
 
  100            { 
return ImplHelper_getImplementationId( 
cd::get() ); }
 
 
 
  115    template< 
class Ifc1, 
class Ifc2, 
class Ifc3, 
class Ifc4, 
class Ifc5, 
class Ifc6, 
class Ifc7, 
class Ifc8 >
 
  118        , 
public css::lang::XTypeProvider
 
  119        , 
public Ifc1, 
public Ifc2, 
public Ifc3, 
public Ifc4, 
public Ifc5, 
public Ifc6, 
public Ifc7, 
public Ifc8
 
  121        struct cd : 
public rtl::StaticAggregate< class_data, ImplClassData8< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, WeakImplHelper8<Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8> > > {};
 
  124            { 
return WeakImplHelper_query( rType, 
cd::get(), 
this, 
static_cast<OWeakObject *
>(
this) ); }
 
 
  130            { 
return WeakImplHelper_getTypes( 
cd::get() ); }
 
 
  132            { 
return ImplHelper_getImplementationId( 
cd::get() ); }
 
 
 
  147    template< 
class Ifc1, 
class Ifc2, 
class Ifc3, 
class Ifc4, 
class Ifc5, 
class Ifc6, 
class Ifc7, 
class Ifc8 >
 
  150        , 
public css::lang::XTypeProvider
 
  151        , 
public Ifc1, 
public Ifc2, 
public Ifc3, 
public Ifc4, 
public Ifc5, 
public Ifc6, 
public Ifc7, 
public Ifc8
 
  153        struct cd : 
public rtl::StaticAggregate< class_data, ImplClassData8< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, WeakAggImplHelper8<Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8> > > {};
 
  158            { 
return WeakAggImplHelper_queryAgg( rType, 
cd::get(), 
this, 
static_cast<OWeakAggObject *
>(
this) ); }
 
 
  164            { 
return WeakAggImplHelper_getTypes( 
cd::get() ); }
 
 
  166            { 
return ImplHelper_getImplementationId( 
cd::get() ); }
 
 
 
  184    template< 
class BaseClass, 
class Ifc1, 
class Ifc2, 
class Ifc3, 
class Ifc4, 
class Ifc5, 
class Ifc6, 
class Ifc7, 
class Ifc8 >
 
  187        , 
public Ifc1, 
public Ifc2, 
public Ifc3, 
public Ifc4, 
public Ifc5, 
public Ifc6, 
public Ifc7, 
public Ifc8
 
  189        struct cd : 
public rtl::StaticAggregate< class_data, ImplClassData8< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, ImplInheritanceHelper8<BaseClass, Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8> > > {};
 
  191        template< 
typename T1 >
 
  193        template< 
typename T1, 
typename T2 >
 
  195            BaseClass(arg1, arg2) {}
 
 
  196        template< 
typename T1, 
typename T2, 
typename T3 >
 
  198            T1 
const & arg1, T2 
const & arg2, T3 
const & arg3):
 
  199            BaseClass(arg1, arg2, arg3) {}
 
 
  200        template< 
typename T1, 
typename T2, 
typename T3, 
typename T4 >
 
  202            T1 
const & arg1, T2 
const & arg2, T3 
const & arg3, T4 
const & arg4):
 
  203            BaseClass(arg1, arg2, arg3, arg4) {}
 
 
  205            typename T1, 
typename T2, 
typename T3, 
typename T4, 
typename T5 >
 
  207            T1 
const & arg1, T2 
const & arg2, T3 
const & arg3, T4 
const & arg4,
 
  209            BaseClass(arg1, arg2, arg3, arg4, arg5) {}
 
 
  211            typename T1, 
typename T2, 
typename T3, 
typename T4, 
typename T5,
 
  214            T1 
const & arg1, T2 
const & arg2, T3 
const & arg3, T4 
const & arg4,
 
  215            T5 
const & arg5, T6 
const & arg6):
 
  216            BaseClass(arg1, arg2, arg3, arg4, arg5, arg6) {}
 
 
  224                return BaseClass::queryInterface( rType );
 
 
  227            { BaseClass::acquire(); }
 
 
  229            { BaseClass::release(); }
 
 
  231            { 
return ImplInhHelper_getTypes( 
cd::get(), BaseClass::getTypes() ); }
 
 
  233            { 
return ImplHelper_getImplementationId( 
cd::get() ); }
 
 
 
  252    template< 
class BaseClass, 
class Ifc1, 
class Ifc2, 
class Ifc3, 
class Ifc4, 
class Ifc5, 
class Ifc6, 
class Ifc7, 
class Ifc8 >
 
  255        , 
public Ifc1, 
public Ifc2, 
public Ifc3, 
public Ifc4, 
public Ifc5, 
public Ifc6, 
public Ifc7, 
public Ifc8
 
  257        struct cd : 
public rtl::StaticAggregate< class_data, ImplClassData8< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, AggImplInheritanceHelper8<BaseClass, Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8> > > {};
 
  259        template< 
typename T1 >
 
  261        template< 
typename T1, 
typename T2 >
 
  263            BaseClass(arg1, arg2) {}
 
 
  264        template< 
typename T1, 
typename T2, 
typename T3 >
 
  266            T1 
const & arg1, T2 
const & arg2, T3 
const & arg3):
 
  267            BaseClass(arg1, arg2, arg3) {}
 
 
  268        template< 
typename T1, 
typename T2, 
typename T3, 
typename T4 >
 
  270            T1 
const & arg1, T2 
const & arg2, T3 
const & arg3, T4 
const & arg4):
 
  271            BaseClass(arg1, arg2, arg3, arg4) {}
 
 
  273            typename T1, 
typename T2, 
typename T3, 
typename T4, 
typename T5 >
 
  275            T1 
const & arg1, T2 
const & arg2, T3 
const & arg3, T4 
const & arg4,
 
  277            BaseClass(arg1, arg2, arg3, arg4, arg5) {}
 
 
  279            typename T1, 
typename T2, 
typename T3, 
typename T4, 
typename T5,
 
  282            T1 
const & arg1, T2 
const & arg2, T3 
const & arg3, T4 
const & arg4,
 
  283            T5 
const & arg5, T6 
const & arg6):
 
  284            BaseClass(arg1, arg2, arg3, arg4, arg5, arg6) {}
 
 
  288            { 
return BaseClass::queryInterface( rType ); }
 
 
  294                return BaseClass::queryAggregation( rType );
 
 
  297            { BaseClass::acquire(); }
 
 
  299            { BaseClass::release(); }
 
 
  301            { 
return ImplInhHelper_getTypes( 
cd::get(), BaseClass::getTypes() ); }
 
 
  303            { 
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, ImplClassData8< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, ImplHelper8< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8 > > >::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 implbase8.hxx:84
~ImplHelper8() SAL_NOEXCEPT
Definition implbase8.hxx:105
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition implbase8.hxx:99
virtual css::uno::Any queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
Definition implbase8.hxx:95
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition implbase8.hxx:97
Implementation helper implementing interfaces css::lang::XTypeProvider and css::uno::XInterface which...
Definition implbase8.hxx:120
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition implbase8.hxx:129
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition implbase8.hxx:131
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 implbase8.hxx:123
virtual void acquire() SAL_NOEXCEPT SAL_OVERRIDE
increasing m_refCount
Definition implbase8.hxx:125
virtual void release() SAL_NOEXCEPT SAL_OVERRIDE
decreasing m_refCount
Definition implbase8.hxx:127
Implementation helper implementing interfaces css::lang::XTypeProvider and css::uno::XInterface which...
Definition implbase8.hxx:152
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition implbase8.hxx:165
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition implbase8.hxx:163
virtual void release() SAL_NOEXCEPT SAL_OVERRIDE
If a delegator is set, then the delegators gets released.
Definition implbase8.hxx:161
virtual css::uno::Any queryAggregation(css::uno::Type const &rType) SAL_OVERRIDE
Called by the delegator or queryInterface.
Definition implbase8.hxx:157
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 implbase8.hxx:155
virtual void acquire() SAL_NOEXCEPT SAL_OVERRIDE
If a delegator is set, then the delegators gets acquired.
Definition implbase8.hxx:159
ImplInheritanceHelper8(T1 const &arg1)
Definition implbase8.hxx:192
ImplInheritanceHelper8(T1 const &arg1, T2 const &arg2)
Definition implbase8.hxx:194
ImplInheritanceHelper8(T1 const &arg1, T2 const &arg2, T3 const &arg3, T4 const &arg4, T5 const &arg5)
Definition implbase8.hxx:206
virtual void acquire() SAL_NOEXCEPT SAL_OVERRIDE
Definition implbase8.hxx:226
ImplInheritanceHelper8(T1 const &arg1, T2 const &arg2, T3 const &arg3, T4 const &arg4)
Definition implbase8.hxx:201
ImplInheritanceHelper8(T1 const &arg1, T2 const &arg2, T3 const &arg3)
Definition implbase8.hxx:197
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition implbase8.hxx:230
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition implbase8.hxx:232
ImplInheritanceHelper8()
Definition implbase8.hxx:218
ImplInheritanceHelper8(T1 const &arg1, T2 const &arg2, T3 const &arg3, T4 const &arg4, T5 const &arg5, T6 const &arg6)
Definition implbase8.hxx:213
virtual void release() SAL_NOEXCEPT SAL_OVERRIDE
Definition implbase8.hxx:228
virtual css::uno::Any queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
Definition implbase8.hxx:219
AggImplInheritanceHelper8(T1 const &arg1, T2 const &arg2, T3 const &arg3, T4 const &arg4, T5 const &arg5, T6 const &arg6)
Definition implbase8.hxx:281
AggImplInheritanceHelper8(T1 const &arg1, T2 const &arg2, T3 const &arg3, T4 const &arg4, T5 const &arg5)
Definition implbase8.hxx:274
virtual css::uno::Any queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
Definition implbase8.hxx:287
AggImplInheritanceHelper8()
Definition implbase8.hxx:286
virtual css::uno::Sequence< css::uno::Type > getTypes() SAL_OVERRIDE
Definition implbase8.hxx:300
AggImplInheritanceHelper8(T1 const &arg1, T2 const &arg2, T3 const &arg3)
Definition implbase8.hxx:265
AggImplInheritanceHelper8(T1 const &arg1, T2 const &arg2, T3 const &arg3, T4 const &arg4)
Definition implbase8.hxx:269
virtual void release() SAL_NOEXCEPT SAL_OVERRIDE
Definition implbase8.hxx:298
AggImplInheritanceHelper8(T1 const &arg1, T2 const &arg2)
Definition implbase8.hxx:262
AggImplInheritanceHelper8(T1 const &arg1)
Definition implbase8.hxx:260
virtual css::uno::Sequence< sal_Int8 > getImplementationId() SAL_OVERRIDE
Definition implbase8.hxx:302
virtual css::uno::Any queryAggregation(css::uno::Type const &rType) SAL_OVERRIDE
Definition implbase8.hxx:289
virtual void acquire() SAL_NOEXCEPT SAL_OVERRIDE
Definition implbase8.hxx:296
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