VTK  9.3.20241007
Public Types | Public Member Functions | Friends | List of all members
vtkThreadedCallbackQueue::vtkSharedFuture< ReturnT > Class Template Reference

A vtkSharedFuture is an object returned by the methods Push and PushDependent. More...

#include <vtkThreadedCallbackQueue.h>

Inheritance diagram for vtkThreadedCallbackQueue::vtkSharedFuture< ReturnT >:
[legend]
Collaboration diagram for vtkThreadedCallbackQueue::vtkSharedFuture< ReturnT >:
[legend]

Public Types

using ReturnLValueRef = typename ReturnValueWrapper< ReturnT >::ReturnLValueRef
 
using ReturnConstLValueRef = typename ReturnValueWrapper< ReturnT >::ReturnConstLValueRef
 

Public Member Functions

 vtkAbstractTypeMacro (vtkSharedFuture< ReturnT >, vtkSharedFutureBase)
 
 vtkSharedFuture ()=default
 
ReturnLValueRef Get ()
 This returns the return value of the pushed function.
 
ReturnConstLValueRef Get () const
 This returns the return value of the pushed function.
 
- Public Member Functions inherited from vtkThreadedCallbackQueue::vtkSharedFutureBase
 vtkBaseTypeMacro (vtkSharedFutureBase, vtkObjectBase)
 
 vtkSharedFutureBase ()
 
virtual void Wait () const
 Blocks current thread until the task associated with this future has terminated.
 
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 Return the class name as a string.
 
virtual std::string GetObjectDescription () const
 The object description printed in messages and PrintSelf output.
 
virtual vtkTypeBool IsA (const char *name)
 Return 1 if this class is the same type of (or a subclass of) the named class.
 
virtual vtkIdType GetNumberOfGenerationsFromBase (const char *name)
 Given the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class).
 
virtual void Delete ()
 Delete a VTK object.
 
virtual void FastDelete ()
 Delete a reference to this object.
 
void InitializeObjectBase ()
 
void Print (ostream &os)
 Print an object to an ostream.
 
void Register (vtkObjectBase *o)
 Increase the reference count (mark as used by another object).
 
virtual void UnRegister (vtkObjectBase *o)
 Decrease the reference count (release by another object).
 
int GetReferenceCount ()
 Return the current reference count of this object.
 
void SetReferenceCount (int)
 Sets the reference count.
 
bool GetIsInMemkind () const
 A local state flag that remembers whether this object lives in the normal or extended memory space.
 
virtual void PrintSelf (ostream &os, vtkIndent indent)
 Methods invoked by print to print information about the object including superclasses.
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 Methods invoked by print to print information about the object including superclasses.
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 Methods invoked by print to print information about the object including superclasses.
 
virtual bool UsesGarbageCollector () const
 Indicate whether the class uses vtkGarbageCollector or not.
 

Friends

class vtkThreadedCallbackQueue
 

Additional Inherited Members

- Static Public Member Functions inherited from vtkObjectBase
static vtkTypeBool IsTypeOf (const char *name)
 Return 1 if this class type is the same type of (or a subclass of) the named class.
 
static vtkIdType GetNumberOfGenerationsFromBaseType (const char *name)
 Given a the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class).
 
static vtkObjectBaseNew ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
 
static void SetMemkindDirectory (const char *directoryname)
 The name of a directory, ideally mounted -o dax, to memory map an extended memory space within.
 
static bool GetUsingMemkind ()
 A global state flag that controls whether vtkObjects are constructed in the usual way (the default) or within the extended memory space.
 
- Protected Member Functions inherited from vtkObjectBase
 vtkObjectBase ()
 
virtual ~vtkObjectBase ()
 
virtual void RegisterInternal (vtkObjectBase *, vtkTypeBool check)
 
virtual void UnRegisterInternal (vtkObjectBase *, vtkTypeBool check)
 
virtual void ReportReferences (vtkGarbageCollector *)
 
virtual void ObjectFinalize ()
 
 vtkObjectBase (const vtkObjectBase &)
 
void operator= (const vtkObjectBase &)
 
- Static Protected Member Functions inherited from vtkObjectBase
static vtkMallocingFunction GetCurrentMallocFunction ()
 
static vtkReallocingFunction GetCurrentReallocFunction ()
 
static vtkFreeingFunction GetCurrentFreeFunction ()
 
static vtkFreeingFunction GetAlternateFreeFunction ()
 
- Protected Attributes inherited from vtkObjectBase
std::atomic< int32_t > ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

Detailed Description

template<class ReturnT>
class vtkThreadedCallbackQueue::vtkSharedFuture< ReturnT >

A vtkSharedFuture is an object returned by the methods Push and PushDependent.

Definition at line 179 of file vtkThreadedCallbackQueue.h.

Member Typedef Documentation

◆ ReturnLValueRef

template<class ReturnT >
using vtkThreadedCallbackQueue::vtkSharedFuture< ReturnT >::ReturnLValueRef = typename ReturnValueWrapper<ReturnT>::ReturnLValueRef

Definition at line 184 of file vtkThreadedCallbackQueue.h.

◆ ReturnConstLValueRef

template<class ReturnT >
using vtkThreadedCallbackQueue::vtkSharedFuture< ReturnT >::ReturnConstLValueRef = typename ReturnValueWrapper<ReturnT>::ReturnConstLValueRef

Definition at line 185 of file vtkThreadedCallbackQueue.h.

Constructor & Destructor Documentation

◆ vtkSharedFuture()

template<class ReturnT >
vtkThreadedCallbackQueue::vtkSharedFuture< ReturnT >::vtkSharedFuture ( )
default

Member Function Documentation

◆ vtkAbstractTypeMacro()

template<class ReturnT >
vtkThreadedCallbackQueue::vtkSharedFuture< ReturnT >::vtkAbstractTypeMacro ( vtkSharedFuture< ReturnT >  ,
vtkSharedFutureBase   
)

◆ Get() [1/2]

template<class ReturnT >
ReturnLValueRef vtkThreadedCallbackQueue::vtkSharedFuture< ReturnT >::Get ( )

This returns the return value of the pushed function.

It returns a ReturnT& if ReturnT is not void. Returns void otherwise.

◆ Get() [2/2]

template<class ReturnT >
ReturnConstLValueRef vtkThreadedCallbackQueue::vtkSharedFuture< ReturnT >::Get ( ) const

This returns the return value of the pushed function.

It returns a const ReturnT& if ReturnT is not void. Returns void otherwise.

Friends And Related Symbol Documentation

◆ vtkThreadedCallbackQueue

template<class ReturnT >
friend class vtkThreadedCallbackQueue
friend

Definition at line 201 of file vtkThreadedCallbackQueue.h.


The documentation for this class was generated from the following file: