SharedRefBase< WRAPPER, REFCLASS > Class Template Reference

#include <sharedref.h>

Inheritance diagram for SharedRefBase< WRAPPER, REFCLASS >:

Public Types

using Ref = REFCLASS
 
using ReferenceClass = typename Ref::ReferenceClass
 
using Handler = typename Ref::Handler
 
using ReferencedType = typename Ref::ReferencedType
 

Public Member Functions

const ThreadReferencedErrorGetErrorStorage () const
 
WRAPPER * GetWrapper () const
 
ReferencedTypeGetPointer () const
 
ResultRef< typename std::remove_const< ReferencedType >::type > MakeWritable (Bool resetOnError=true)
 

Static Public Attributes

static const Bool HAS_ERROR
 
static const Bool DIRECT_REF
 

Protected Attributes

StrongRef< WRAPPER > _ref
 

Member Typedef Documentation

◆ Ref

using Ref = REFCLASS

◆ ReferenceClass

using ReferenceClass = typename Ref::ReferenceClass

◆ Handler

using Handler = typename Ref::Handler

◆ ReferencedType

using ReferencedType = typename Ref::ReferencedType

Member Function Documentation

◆ GetErrorStorage()

const ThreadReferencedError& GetErrorStorage ( ) const

◆ GetWrapper()

WRAPPER* GetWrapper ( ) const

◆ GetPointer()

ReferencedType* GetPointer ( ) const

◆ MakeWritable()

ResultRef<typename std::remove_const<ReferencedType>::type> MakeWritable ( Bool  resetOnError = true)

Member Data Documentation

◆ HAS_ERROR

const Bool HAS_ERROR
static

◆ DIRECT_REF

const Bool DIRECT_REF
static

◆ _ref

StrongRef<WRAPPER> _ref
protected