Sourceforge.net - The VCF's Project Host
   The VCF Website Home   |   Online Discussion Forums   |   Sourceforge.net Project Page   

VCF::ThreadedFunction< ReturnType, ClassType > Class Template Reference

#include <ThreadedFunctions.h>

Inheritance diagram for VCF::ThreadedFunction< ReturnType, ClassType >:

VCF::Runnable List of all members.

Public Types

typedef ReturnType(* FuncPtr )()
typedef ReturnType(* FuncThreadPtr )(Thread *thread)
typedef ReturnType(ClassType::* ClassFuncPtr )()
typedef ReturnType(ClassType::* ClassThreadFuncPtr )(Thread *thread)
typedef ThreadedFunction<
ReturnType, ClassType > 
BaseClass
typedef NullReturnClassType0<
ReturnType > 
NullClassType

Public Member Functions

 ThreadedFunction (FuncPtr funcPtr)
 ThreadedFunction (FuncThreadPtr funcPtr)
 ThreadedFunction (ClassType *src, ClassFuncPtr funcPtr)
 ThreadedFunction (ClassType *src, ClassThreadFuncPtr funcPtr)
virtual bool run ()
 Executes the runnable code.
virtual void stop ()
 stops the task from running.
RunnablegetParams ()
Threadinvoke ()
ReturnType returnValue ()

Protected Member Functions

 ThreadedFunction (bool)

Protected Attributes

ReturnType returnVal_
RunnableinternalParams_
ThreadrunningThread_
FuncPtr funcPtr_
FuncThreadPtr threadFuncPtr_
ClassFuncPtr classFuncPtr_
ClassThreadFuncPtr classThreadFuncPtr_
ClassType * instancePtr_

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
class VCF::ThreadedFunction< ReturnType, ClassType >


Member Typedef Documentation

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
typedef ThreadedFunction<ReturnType,ClassType> VCF::ThreadedFunction< ReturnType, ClassType >::BaseClass
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
typedef ReturnType(ClassType::* VCF::ThreadedFunction< ReturnType, ClassType >::ClassFuncPtr)()
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
typedef ReturnType(ClassType::* VCF::ThreadedFunction< ReturnType, ClassType >::ClassThreadFuncPtr)(Thread *thread)
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
typedef ReturnType(* VCF::ThreadedFunction< ReturnType, ClassType >::FuncPtr)()
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
typedef ReturnType(* VCF::ThreadedFunction< ReturnType, ClassType >::FuncThreadPtr)(Thread *thread)
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
typedef NullReturnClassType0<ReturnType> VCF::ThreadedFunction< ReturnType, ClassType >::NullClassType
 


Constructor & Destructor Documentation

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
VCF::ThreadedFunction< ReturnType, ClassType >::ThreadedFunction FuncPtr  funcPtr  )  [inline]
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
VCF::ThreadedFunction< ReturnType, ClassType >::ThreadedFunction FuncThreadPtr  funcPtr  )  [inline]
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
VCF::ThreadedFunction< ReturnType, ClassType >::ThreadedFunction ClassType *  src,
ClassFuncPtr  funcPtr
[inline]
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
VCF::ThreadedFunction< ReturnType, ClassType >::ThreadedFunction ClassType *  src,
ClassThreadFuncPtr  funcPtr
[inline]
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
VCF::ThreadedFunction< ReturnType, ClassType >::ThreadedFunction bool   )  [inline, protected]
 


Member Function Documentation

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
Runnable* VCF::ThreadedFunction< ReturnType, ClassType >::getParams  )  [inline]
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
Thread* VCF::ThreadedFunction< ReturnType, ClassType >::invoke  )  [inline]
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
ReturnType VCF::ThreadedFunction< ReturnType, ClassType >::returnValue  )  [inline]
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
virtual bool VCF::ThreadedFunction< ReturnType, ClassType >::run  )  [inline, virtual]
 

Executes the runnable code.

Returns:
returns true is the execution was suvvessful, or false if not.

Implements VCF::Runnable.

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
virtual void VCF::ThreadedFunction< ReturnType, ClassType >::stop  )  [inline, virtual]
 

stops the task from running.

Should allow the implementer to gracefully finish whatever they were doing and exit the run() method as soon as possible.

Implements VCF::Runnable.


Member Data Documentation

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
ClassFuncPtr VCF::ThreadedFunction< ReturnType, ClassType >::classFuncPtr_ [protected]
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
ClassThreadFuncPtr VCF::ThreadedFunction< ReturnType, ClassType >::classThreadFuncPtr_ [protected]
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
FuncPtr VCF::ThreadedFunction< ReturnType, ClassType >::funcPtr_ [protected]
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
ClassType* VCF::ThreadedFunction< ReturnType, ClassType >::instancePtr_ [protected]
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
Runnable* VCF::ThreadedFunction< ReturnType, ClassType >::internalParams_ [protected]
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
ReturnType VCF::ThreadedFunction< ReturnType, ClassType >::returnVal_ [protected]
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
Thread* VCF::ThreadedFunction< ReturnType, ClassType >::runningThread_ [protected]
 

template<typename ReturnType, typename ClassType = NullReturnClassType0<ReturnType>>
FuncThreadPtr VCF::ThreadedFunction< ReturnType, ClassType >::threadFuncPtr_ [protected]
 


The documentation for this class was generated from the following file:
   Comments or Suggestions?    License Information