template<typename RESULTVALUETYPE>
class maxon::ThreadResultRef< RESULTVALUETYPE >
Reference to a thread that returns more than void/Result<void>. 
 | 
|   | ThreadResultRef (const ThreadRef &src) | 
|   | 
|   | ThreadResultRef (ThreadRef &&src) | 
|   | 
| Result< RESULTVALUETYPE >  | GetResult (TimeValue timeout=TIMEVALUE_INFINITE, WAITMODE mode=WAITMODE::DEFAULT) const | 
|   | 
|   | MAXON_DEFAULT_REFERENCE_CONSTRUCTORS (ThreadRefTemplate, Ptr) | 
|   | 
| MAXON_IMPLICIT  | ThreadRefTemplate (const Ptr &src) | 
|   | 
| MAXON_IMPLICIT  | ThreadRefTemplate (Ptr &&src) | 
|   | 
| Bool  | IsRunning () const | 
|   | 
| Bool  | Wait (TimeValue timeout=TIMEVALUE_INFINITE, WAITMODE mode=WAITMODE::DEFAULT) const | 
|   | 
| Result< void >  | GetResult (TimeValue timeout=TIMEVALUE_INFINITE, WAITMODE mode=WAITMODE::DEFAULT) const | 
|   | 
| void  | Cancel () | 
|   | 
| Bool  | IsCancelled () const | 
|   | 
| void  | CancelAndWait (WAITMODE mode=WAITMODE::DEFAULT) | 
|   | 
| Result< void >  | Start (THREADPRIORITY priority=THREADPRIORITY::NORMAL) | 
|   | 
| ObservableFinishedBase< INTERFACE >  | ObservableFinished () | 
|   | 
| String  | ToString (const FormatStatement *formatStatement) const | 
|   | 
| Bool  | operator== (const ThreadRefTemplate &other) const | 
|   | 
| Bool  | operator!= (const ThreadRefTemplate &other) const | 
|   | 
| T *  | GetPointer () | 
|   | 
| ConstReferencedType *  | GetPointer () const | 
|   | 
| T *  | operator-> () | 
|   | 
| ConstReferencedType *  | operator-> () const | 
|   | 
| T &  | operator* () | 
|   | 
| ConstReferencedType &  | operator* () const | 
|   | 
|   | operator T* () | 
|   | 
|   | operator ConstReferencedType * () const | 
|   | 
|   | operator Bool () const | 
|   | 
|   | operator Bool () | 
|   | 
| ResultRef< typename std::remove_const< T >::type >  | MakeWritable (Bool resetOnError=true) | 
|   | 
| T &  | GetOrNull () const | 
|   | 
|   | BaseRef () | 
|   | 
| MAXON_IMPLICIT  | BaseRef (std::nullptr_t)=delete | 
|   | 
| MAXON_IMPLICIT  | BaseRef (T *o) | 
|   | 
| template<typename PTR >  | 
|   | BaseRef (ForwardResultPtr< PTR > o) | 
|   | 
|   | BaseRef (ResultPtr< T > o, Int) | 
|   | 
|   | BaseRef (const BaseRef &src) | 
|   | 
| template<typename REF , typename  = typename std::enable_if<!std::is_base_of<BaseRef, REF>::value && maxon::HasErasedBase<typename REF::ReferencedType, ReferencedType>::value>::type>  | 
| MAXON_IMPLICIT  | BaseRef (const REF &src) | 
|   | 
| template<typename REF , typename  = typename std::enable_if<!std::is_base_of<BaseRef, REF>::value && maxon::HasErasedBase<typename REF::ReferencedType, ReferencedType>::value>::type>  | 
| MAXON_IMPLICIT  | BaseRef (REF &src) | 
|   | 
| BaseRef &  | operator= (T *src) | 
|   | 
| BaseRef &  | operator= (std::nullptr_t src) | 
|   | 
| BaseRef &  | operator= (const BaseRef &src) | 
|   | 
| template<typename REF , typename  = typename std::enable_if<!std::is_base_of<BaseRef, REF>::value && maxon::HasErasedBase<typename REF::ReferencedType, ReferencedType>::value>::type>  | 
| BaseRef &  | operator= (const REF &src) | 
|   | 
| template<typename REF , typename  = typename std::enable_if<!std::is_base_of<BaseRef, REF>::value && maxon::HasErasedBase<typename REF::ReferencedType, ReferencedType>::value>::type>  | 
| BaseRef &  | operator= (REF &src) | 
|   | 
|   | BaseRef (BaseRef &&src) | 
|   | 
| template<typename REF , typename  = typename std::enable_if<!std::is_const<REF>::value && !std::is_base_of<BaseRef, REF>::value && maxon::HasErasedBase<typename REF::ReferencedType, ReferencedType>::value>::type>  | 
| MAXON_IMPLICIT  | BaseRef (REF &&src) | 
|   | 
| BaseRef &  | operator= (BaseRef &&src) | 
|   | 
| template<typename REF , typename  = typename std::enable_if<!std::is_const<REF>::value && !std::is_base_of<BaseRef, REF>::value && maxon::HasErasedBase<typename REF::ReferencedType, ReferencedType>::value>::type>  | 
| BaseRef &  | operator= (REF &&src) | 
|   | 
|   | ~BaseRef () | 
|   | 
| Bool  | operator== (const BaseRef &b) const | 
|   | 
| Bool  | operator!= (const BaseRef &b) const | 
|   | 
| Bool  | operator== (const T *b) const | 
|   | 
| Bool  | operator!= (const T *b) const | 
|   | 
| Bool  | operator== (typename std::remove_const< T >::type *b) const | 
|   | 
| Bool  | operator!= (typename std::remove_const< T >::type *b) const | 
|   | 
| Bool  | operator== (std::nullptr_t) const | 
|   | 
| Bool  | operator!= (std::nullptr_t) const | 
|   | 
| UInt  | GetHashCode () const | 
|   | 
| T *  | Disconnect () | 
|   | 
| void  | PrivateSetTarget (ResultPtr< T > src) | 
|   | 
 | 
| using  | ReferencedType = T | 
|   | 
| using  | ConstReferencedType = typename ConstIf< T, Bool(HANDLER::KIND &VALUEKIND::DEEP_CONSTNESS)>::type | 
|   | 
| using  | DirectlyReferencedType = T | 
|   | 
| using  | SelfType = BaseRef< T, HANDLER > | 
|   | 
| template<typename D >  | 
| using  | IsGenericBaseOf = std::true_type | 
|   | 
| using  | Handler = HANDLER | 
|   | 
| using  | RefCompareType = RefCompare< MAXON_IS_COW_KIND(HANDLER::KIND), IsInterfaceType< T >::value > | 
|   | 
| template<THREADCANCELLATION B = THREADCANCELLATION::AUTOMATIC, typename FN , typename... ARGS>  | 
| static auto  | Create (FN &&src, ARGS &&... args) -> ResultMemT< ThreadResultRef< decltype(src(std::forward< ARGS >(args)...))>> | 
|   | 
| static StrongRef< const INTERFACE >  | GetCurrentThread () | 
|   | 
| static Int  | GetCurrentThreadCount () | 
|   | 
| static Bool  | IsMainThread () | 
|   | 
| static THREADTYPE  | GetCurrentThreadType () | 
|   | 
| static Result< void >  | AssimilateAlienThread () | 
|   | 
| static Bool  | IsCurrentThreadCancelled (const ThreadInterface *optionalThread=nullptr) | 
|   | 
| static Bool  | IsCurrentThreadCancelled (const ThreadRefTemplate< INTERFACE > &optionalThread) | 
|   | 
| template<THREADCANCELLATION B = THREADCANCELLATION::AUTOMATIC, typename FN >  | 
| static MAXON_WARN_UNUSED auto  | Run (FN &&src, THREADPRIORITY priority=THREADPRIORITY::NORMAL) -> ResultMemT< ThreadResultRef< decltype(src())>> | 
|   | 
| template<THREADCANCELLATION B = THREADCANCELLATION::AUTOMATIC, typename FN , typename... ARGS>  | 
| static auto  | Run (FN &&src, THREADPRIORITY priority, ARGS &&... args) -> ResultMemT< ThreadResultRef< decltype(src(std::forward< ARGS >(args)...))>> | 
|   | 
| static const ThreadRefTemplate &  | NullValue () | 
|   | 
| static std::false_type  | GenericVarianceCheck (const void *) | 
|   | 
| template<typename... ARGS>  | 
| static MAXON_ATTRIBUTE_FORCE_INLINE ResultMemT< BaseRef >  | Create (ARGS &&... args) | 
|   | 
| static const BaseRef &  | NullValue () | 
|   | 
| static const Bool  | DIRECT_REF | 
|   | 
| T *  | _object | 
|   |