sprint 1-alpha
Namespaces | Functions
sprint/thread/bind.h File Reference

method to create function pointer for thread call More...

#include <sprint/thread/detail/function.h>
#include <sprint/function/detail/invoker.h>

Go to the source code of this file.

Namespaces

namespace  sprint
 

Sprint is a lightweight c++ library to handle different task with crossplatform attention (trying to compile both on MSVC and Mingw on WIn32 and GCC on Linux.


Functions

template<typename T , typename R , R(T::*)(void) F>
thread_function sprint::thread_bind (T *obj)
template<class R >
thread_function sprint::thread_bind (R(*Proc)())
 instantiate a 0 parameters thread callback
template<>
thread_function sprint::thread_bind (void(*Proc)())
template<class R , class A1 , class P1 >
thread_function sprint::thread_bind (R(*Proc)(A1), P1 p1)
 instantiate a 1 parameters thread callback
template<class A1 , class P1 >
thread_function sprint::thread_bind (void(*Proc)(A1), P1 p1)
template<class R , class A1 , class A2 , class P1 , class P2 >
thread_function sprint::thread_bind (R(*Proc)(A1, A2), P1 p1, P2 p2)
 instantiate a 2 parameters thread callback
template<class A1 , class A2 , class P1 , class P2 >
thread_function sprint::thread_bind (void(*Proc)(A1, A2), P1 p1, P2 p2)
template<class R , class A1 , class A2 , class A3 , class P1 , class P2 , class P3 >
thread_function sprint::thread_bind (R(*Proc)(A1, A2, A3), P1 p1, P2 p2, P3 p3)
 instantiate a 3 parameters thread callback
template<class A1 , class A2 , class A3 , class P1 , class P2 , class P3 >
thread_function sprint::thread_bind (void(*Proc)(A1, A2, A3), P1 p1, P2 p2, P3 p3)
template<class R , class A1 , class A2 , class A3 , class A4 , class P1 , class P2 , class P3 , class P4 >
thread_function sprint::thread_bind (R(*Proc)(A1, A2, A3, A4), P1 p1, P2 p2, P3 p3, P4 p4)
 instantiate a 4 parameters thread callback
template<class A1 , class A2 , class A3 , class A4 , class P1 , class P2 , class P3 , class P4 >
thread_function sprint::thread_bind (void(*Proc)(A1, A2, A3, A4), P1 p1, P2 p2, P3 p3, P4 p4)
template<class R , class A1 , class A2 , class A3 , class A4 , class A5 , class P1 , class P2 , class P3 , class P4 , class P5 >
thread_function sprint::thread_bind (R(*Proc)(A1, A2, A3, A4, A5), P1 p1, P2 p2, P3 p3, P4 p4, P5 p5)
 instantiate a 5 parameters thread callback
template<class A1 , class A2 , class A3 , class A4 , class A5 , class P1 , class P2 , class P3 , class P4 , class P5 >
thread_function sprint::thread_bind (void(*Proc)(A1, A2, A3, A4, A5), P1 p1, P2 p2, P3 p3, P4 p4, P5 p5)
template<class R , class A1 , class A2 , class A3 , class A4 , class A5 , class A6 , class P1 , class P2 , class P3 , class P4 , class P5 , class P6 >
thread_function sprint::thread_bind (R(*Proc)(A1, A2, A3, A4, A5, A6), P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6)
 instantiate a 6 parameters thread callback
template<class A1 , class A2 , class A3 , class A4 , class A5 , class A6 , class P1 , class P2 , class P3 , class P4 , class P5 , class P6 >
thread_function sprint::thread_bind (void(*Proc)(A1, A2, A3, A4, A5, A6), P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6)
template<class R , class A1 , class A2 , class A3 , class A4 , class A5 , class A6 , class A7 , class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 >
thread_function sprint::thread_bind (R(*Proc)(A1, A2, A3, A4, A5, A6, A7), P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7)
 instantiate a 7 parameters thread callback
template<class A1 , class A2 , class A3 , class A4 , class A5 , class A6 , class A7 , class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 >
thread_function sprint::thread_bind (void(*Proc)(A1, A2, A3, A4, A5, A6, A7), P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7)
template<class R , class A1 , class A2 , class A3 , class A4 , class A5 , class A6 , class A7 , class A8 , class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 >
thread_function sprint::thread_bind (R(*Proc)(A1, A2, A3, A4, A5, A6, A7, A8), P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8)
 instantiate a 8 parameters thread callback
template<class A1 , class A2 , class A3 , class A4 , class A5 , class A6 , class A7 , class A8 , class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 >
thread_function sprint::thread_bind (void(*Proc)(A1, A2, A3, A4, A5, A6, A7, A8), P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8)
template<class R , class A1 , class A2 , class A3 , class A4 , class A5 , class A6 , class A7 , class A8 , class A9 , class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 >
thread_function sprint::thread_bind (R(*Proc)(A1, A2, A3, A4, A5, A6, A7, A8, A9), P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9)
 instantiate a 9 parameters thread callback
template<class A1 , class A2 , class A3 , class A4 , class A5 , class A6 , class A7 , class A8 , class A9 , class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 >
thread_function sprint::thread_bind (void(*Proc)(A1, A2, A3, A4, A5, A6, A7, A8, A9), P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9)
template<class R , class A1 , class A2 , class A3 , class A4 , class A5 , class A6 , class A7 , class A8 , class A9 , class A10 , class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 , class P10 >
thread_function sprint::thread_bind (R(*Proc)(A1, A2, A3, A4, A5, A6, A7, A8, A9, A10), P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9, P10 p10)
 instantiate a 10 parameters thread callback
template<class A1 , class A2 , class A3 , class A4 , class A5 , class A6 , class A7 , class A8 , class A9 , class A10 , class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 , class P10 >
thread_function sprint::thread_bind (void(*Proc)(A1, A2, A3, A4, A5, A6, A7, A8, A9, A10), P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9, P10 p10)
template<class R , class A1 , class A2 , class A3 , class A4 , class A5 , class A6 , class A7 , class A8 , class A9 , class A10 , class A11 , class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 , class P10 , class P11 >
thread_function sprint::thread_bind (R(*Proc)(A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11), P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9, P10 p10, P11 p11)
 instantiate a 11 parameters thread callback
template<class A1 , class A2 , class A3 , class A4 , class A5 , class A6 , class A7 , class A8 , class A9 , class A10 , class A11 , class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 , class P10 , class P11 >
thread_function sprint::thread_bind (void(*Proc)(A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11), P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9, P10 p10, P11 p11)
template<class T , class R >
thread_function sprint::thread_bind (R(T::*Proc)(), T *_this)
 instantiate a 0 parameters thread callback
template<class T , class R , class A1 , class P1 >
thread_function sprint::thread_bind (R(T::*Proc)(A1), T *_this, P1 p1)
 instantiate a 1 parameters thread callback
template<class T , class R , class A1 , class A2 , class P1 , class P2 >
thread_function sprint::thread_bind (R(T::*Proc)(A1, A2), T *_this, P1 p1, P2 p2)
 instantiate a 2 parameters thread callback
template<class T , class R , class A1 , class A2 , class A3 , class P1 , class P2 , class P3 >
thread_function sprint::thread_bind (R(T::*Proc)(A1, A2, A3), T *_this, P1 p1, P2 p2, P3 p3)
 instantiate a 3 parameters thread callback
template<class T , class R , class A1 , class A2 , class A3 , class A4 , class P1 , class P2 , class P3 , class P4 >
thread_function sprint::thread_bind (R(T::*Proc)(A1, A2, A3, A4), T *_this, P1 p1, P2 p2, P3 p3, P4 p4)
 instantiate a 4 parameters thread callback
template<class T , class R , class A1 , class A2 , class A3 , class A4 , class A5 , class P1 , class P2 , class P3 , class P4 , class P5 >
thread_function sprint::thread_bind (R(T::*Proc)(A1, A2, A3, A4, A5), T *_this, P1 p1, P2 p2, P3 p3, P4 p4, P5 p5)
 instantiate a 5 parameters thread callback
template<class T , class R , class A1 , class A2 , class A3 , class A4 , class A5 , class A6 , class P1 , class P2 , class P3 , class P4 , class P5 , class P6 >
thread_function sprint::thread_bind (R(T::*Proc)(A1, A2, A3, A4, A5, A6), T *_this, P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6)
 instantiate a 6 parameters thread callback
template<class T , class R , class A1 , class A2 , class A3 , class A4 , class A5 , class A6 , class A7 , class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 >
thread_function sprint::thread_bind (R(T::*Proc)(A1, A2, A3, A4, A5, A6, A7), T *_this, P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7)
 instantiate a 7 parameters thread callback
template<class T , class R , class A1 , class A2 , class A3 , class A4 , class A5 , class A6 , class A7 , class A8 , class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 >
thread_function sprint::thread_bind (R(T::*Proc)(A1, A2, A3, A4, A5, A6, A7, A8), T *_this, P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8)
 instantiate a 8 parameters thread callback
template<class T , class R , class A1 , class A2 , class A3 , class A4 , class A5 , class A6 , class A7 , class A8 , class A9 , class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 >
thread_function sprint::thread_bind (R(T::*Proc)(A1, A2, A3, A4, A5, A6, A7, A8, A9), T *_this, P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9)
 instantiate a 9 parameters thread callback

Detailed Description

method to create function pointer for thread call

Note:
Attenzione che questi bind vanno bene solo i thread e non per le funzioni in genere run a thread using a Ptr Fun or a Mem Fun
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines