#include <objectbase.h>
Public Types | |
using | PrivateSuper = typename ComponentHelper< BASE, INTERFACE, INTERFACES... >::type |
using | PrivateComponentWithBase = ComponentWithBase |
using | Interface = INTERFACE |
using | PrivateInterface = INTERFACE |
using | Ref = typename INTERFACE::Hxx1::ReferenceClass |
using | ComponentClass = C |
using | _Wrapper = typename ComponentWithBase::template Wrapper< maxon::ComponentWrapper< C > > |
using | PrivateSuperMTable = typename ComponentWithBase::template CombinedMTable< maxon::CombinedMTableRoot > |
using | InterfacesBlock = maxon::InterfacesBlock< INTERFACE, INTERFACES... > |
Public Member Functions | |
ComponentWithBase & | operator= (const typename std::conditional< STD_IS_REPLACEMENT(copy_assignable, PrivateSuper), ComponentWithBase, DummyParamType >::type &src) |
Static Public Member Functions | |
static C * | Get (maxon::ObjectInterface *object) |
static const C * | Get (const ObjectInterface *object) |
static C * | GetNonNull (maxon::ObjectInterface *object) |
static const C * | GetNonNull (const ObjectInterface *object) |
static C * | GetOrNull (ObjectInterface *object) |
static const C * | GetOrNull (const ObjectInterface *object) |
template<typename... ARGS> | |
static Result< typename Ref::NonConst > | CreateInit (ARGS &&... args) |
static Int | PrivateGetSelfPtrOffset () |
static const Class< typename INTERFACE::Hxx1::ReferenceClass > & | GetClass () |
static const ComponentDescriptor & | GetDescriptor () |
static Bool | PrivateConstructMTable (ClassInfo *info, Int offset, void *supervtable) |
template<typename CLS > | |
static Result< CLS > | PrivateConstructClass (MAXON_SOURCE_LOCATION_DECLARATION, Id &cid) |
template<typename T > | |
static Result< T > | PrivateCreateInstance (MAXON_SOURCE_LOCATION_DECLARATION, Id &cid) |
Public Attributes | |
union { | |
std::conditional< ComponentWithBase::ADAPTER, const ObjectInterface *, typename ComponentWithBase::SelfPtr >::type self | |
SelfPtrBase< typename std::conditional< ComponentWithBase::ADAPTER, INTERFACE, ComponentWithBase >::type::template ReferenceFunctions< RefBaseFn< DirectRef< INTERFACE, SuperPointerHandler, SuperPtrComponentInfo< C, ComponentWithBase > > > > > super | |
}; | |
using PrivateSuper = typename ComponentHelper<BASE, INTERFACE, INTERFACES...>::type |
using Interface = INTERFACE |
using PrivateInterface = INTERFACE |
using Ref = typename INTERFACE::Hxx1::ReferenceClass |
using ComponentClass = C |
using _Wrapper = typename ComponentWithBase::template Wrapper<maxon::ComponentWrapper<C> > |
using PrivateSuperMTable = typename ComponentWithBase::template CombinedMTable<maxon::CombinedMTableRoot> |
using InterfacesBlock = maxon::InterfacesBlock<INTERFACE, INTERFACES...> |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
ComponentWithBase& operator= | ( | const typename std::conditional< STD_IS_REPLACEMENT(copy_assignable, PrivateSuper), ComponentWithBase< C, BASE, INTERFACE, INTERFACES >, DummyParamType >::type & | src | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
std::conditional<ComponentWithBase::ADAPTER, const ObjectInterface*, typename ComponentWithBase::SelfPtr>::type self |
SelfPtrBase<typename std::conditional<ComponentWithBase::ADAPTER, INTERFACE, ComponentWithBase>::type::template ReferenceFunctions<RefBaseFn<DirectRef<INTERFACE, SuperPointerHandler, SuperPtrComponentInfo<C, ComponentWithBase> > > > > super |
union { ... } |