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

VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType > Class Template Reference

#include <ThreadedFunctions.h>

Inheritance diagram for VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >:

VCF::Runnable List of all members.

Public Types

typedef NullReturnClassType4<
ReturnType, ParamType1, ParamType2,
ParamType3, ParamType4 > 
NullClassType
typedef ReturnType(* FuncPtr )(ParamType1, ParamType2, ParamType3, ParamType4)
typedef ReturnType(* FuncThreadPtr )(Thread *, ParamType1, ParamType2, ParamType3, ParamType4)
typedef ReturnType(ClassType::* ClassFuncPtr )(ParamType1, ParamType2, ParamType3, ParamType4)
typedef ReturnType(ClassType::* ClassThreadFuncPtr )(Thread *, ParamType1, ParamType2, ParamType3, ParamType4)
typedef ThreadedFunction4<
ReturnType, ParamType1, ParamType2,
ParamType3, ParamType4, ClassType > 
BaseClass

Public Member Functions

 ThreadedFunction4 (ParamType1 p1, ParamType2 p2, ParamType3 p3, ParamType4 p4, FuncPtr funcPtr)
 ThreadedFunction4 (ParamType1 p1, ParamType2 p2, ParamType3 p3, ParamType4 p4, FuncThreadPtr funcPtr)
 ThreadedFunction4 (ClassType *src, ParamType1 p1, ParamType2 p2, ParamType3 p3, ParamType4 p4, ClassFuncPtr funcPtr)
 ThreadedFunction4 (ClassType *src, ParamType1 p1, ParamType2 p2, ParamType3 p3, ParamType4 p4, ClassThreadFuncPtr funcPtr)
virtual bool run ()
 Executes the runnable code.
virtual void stop ()
 stops the task from running.
RunnablegetParams ()
Threadinvoke ()
ReturnType returnValue ()

Protected Member Functions

 ThreadedFunction4 (ParamType1 p1, ParamType2 p2, ParamType3 p3, ParamType4 p4)

Protected Attributes

ReturnType returnVal_
ParamType1 param1_
ParamType2 param2_
ParamType3 param3_
ParamType4 param4_
RunnableinternalParams_
ThreadrunningThread_
FuncPtr funcPtr_
FuncThreadPtr threadFuncPtr_
ClassFuncPtr classFuncPtr_
ClassThreadFuncPtr classThreadFuncPtr_
ClassType * instancePtr_

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
class VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >


Member Typedef Documentation

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
typedef ThreadedFunction4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4,ClassType> VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::BaseClass
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
typedef ReturnType(ClassType::* VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::ClassFuncPtr)(ParamType1, ParamType2, ParamType3, ParamType4)
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
typedef ReturnType(ClassType::* VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::ClassThreadFuncPtr)(Thread *, ParamType1, ParamType2, ParamType3, ParamType4)
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
typedef ReturnType(* VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::FuncPtr)(ParamType1, ParamType2, ParamType3, ParamType4)
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
typedef ReturnType(* VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::FuncThreadPtr)(Thread *, ParamType1, ParamType2, ParamType3, ParamType4)
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
typedef NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4> VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::NullClassType
 


Constructor & Destructor Documentation

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::ThreadedFunction4 ParamType1  p1,
ParamType2  p2,
ParamType3  p3,
ParamType4  p4,
FuncPtr  funcPtr
[inline]
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::ThreadedFunction4 ParamType1  p1,
ParamType2  p2,
ParamType3  p3,
ParamType4  p4,
FuncThreadPtr  funcPtr
[inline]
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::ThreadedFunction4 ClassType *  src,
ParamType1  p1,
ParamType2  p2,
ParamType3  p3,
ParamType4  p4,
ClassFuncPtr  funcPtr
[inline]
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::ThreadedFunction4 ClassType *  src,
ParamType1  p1,
ParamType2  p2,
ParamType3  p3,
ParamType4  p4,
ClassThreadFuncPtr  funcPtr
[inline]
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::ThreadedFunction4 ParamType1  p1,
ParamType2  p2,
ParamType3  p3,
ParamType4  p4
[inline, protected]
 


Member Function Documentation

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
Runnable* VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::getParams  )  [inline]
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
Thread* VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::invoke  )  [inline]
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
ReturnType VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::returnValue  )  [inline]
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
virtual bool VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, 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 ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
virtual void VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, 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 ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
ClassFuncPtr VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::classFuncPtr_ [protected]
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
ClassThreadFuncPtr VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::classThreadFuncPtr_ [protected]
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
FuncPtr VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::funcPtr_ [protected]
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
ClassType* VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::instancePtr_ [protected]
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
Runnable* VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::internalParams_ [protected]
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
ParamType1 VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::param1_ [protected]
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
ParamType2 VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::param2_ [protected]
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
ParamType3 VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::param3_ [protected]
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
ParamType4 VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::param4_ [protected]
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
ReturnType VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::returnVal_ [protected]
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
Thread* VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::runningThread_ [protected]
 

template<typename ReturnType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4, typename ClassType = NullReturnClassType4<ReturnType,ParamType1,ParamType2,ParamType3,ParamType4>>
FuncThreadPtr VCF::ThreadedFunction4< ReturnType, ParamType1, ParamType2, ParamType3, ParamType4, ClassType >::threadFuncPtr_ [protected]
 


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