HDK
|
#include "UT_API.h"
#include "UT_Functor.h"
#include "UT_Lock.h"
#include <SYS/SYS_AtomicInt.h>
#include <SYS/SYS_Compiler.h>
#include <SYS/SYS_Types.h>
Go to the source code of this file.
Classes | |
class | UT_ThreadedAlgorithm |
class | UT_JobInfo |
class | UT_AutoJobInfoLock |
Macros | |
#define | FOR_INFOTASKS(info, i, n, blocksize) |
#define | FOR_INFOTASKS_BOSS(info, i, n, blocksize, boss) |
#define | THREADED_METHOD_INTERNAL(ISCONST, CLASSNAME, DOMULTI, METHOD) |
#define | THREADED_METHOD1_INTERNAL(ISCONST, CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1) |
#define | THREADED_METHOD2_INTERNAL(ISCONST, CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2) |
#define | THREADED_METHOD3_INTERNAL(ISCONST, CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3) |
#define | THREADED_METHOD4_INTERNAL(ISCONST, CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4) |
#define | THREADED_METHOD5_INTERNAL(ISCONST, CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5) |
#define | THREADED_METHOD6_INTERNAL(ISCONST, CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6) |
#define | THREADED_METHOD7_INTERNAL(ISCONST, CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7) |
#define | THREADED_METHOD8_INTERNAL(ISCONST, CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8) |
#define | THREADED_METHOD9_INTERNAL(ISCONST, CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8, PARMTYPE9, PARMNAME9) |
#define | THREADED_METHOD10_INTERNAL(ISCONST, CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8, PARMTYPE9, PARMNAME9, PARMTYPE10, PARMNAME10) |
#define | THREADED_METHOD(CLASSNAME, DOMULTI, METHOD) THREADED_METHOD_INTERNAL( , CLASSNAME, DOMULTI, METHOD) |
#define | THREADED_METHOD_CONST(CLASSNAME, DOMULTI, METHOD) THREADED_METHOD_INTERNAL(const , CLASSNAME, DOMULTI, METHOD) |
#define | THREADED_METHOD1(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1) THREADED_METHOD1_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1) |
#define | THREADED_METHOD1_CONST(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1) THREADED_METHOD1_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1) |
#define | THREADED_METHOD2(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2) THREADED_METHOD2_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2) |
#define | THREADED_METHOD2_CONST(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2) THREADED_METHOD2_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2) |
#define | THREADED_METHOD3(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3) THREADED_METHOD3_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3) |
#define | THREADED_METHOD3_CONST(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3) THREADED_METHOD3_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3) |
#define | THREADED_METHOD4(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4) THREADED_METHOD4_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4) |
#define | THREADED_METHOD4_CONST(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4) THREADED_METHOD4_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4) |
#define | THREADED_METHOD5(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5) THREADED_METHOD5_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5) |
#define | THREADED_METHOD5_CONST(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5) THREADED_METHOD5_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5) |
#define | THREADED_METHOD6(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6) THREADED_METHOD6_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6) |
#define | THREADED_METHOD6_CONST(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6) THREADED_METHOD6_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6) |
#define | THREADED_METHOD7(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7) THREADED_METHOD7_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7) |
#define | THREADED_METHOD7_CONST(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7) THREADED_METHOD7_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7) |
#define | THREADED_METHOD8(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8) THREADED_METHOD8_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8) |
#define | THREADED_METHOD8_CONST(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8) THREADED_METHOD8_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8) |
#define | THREADED_METHOD9(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8, PARMTYPE9, PARMNAME9) THREADED_METHOD9_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8, PARMTYPE9, PARMNAME9) |
#define | THREADED_METHOD9_CONST(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8, PARMTYPE9, PARMNAME9) THREADED_METHOD9_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8, PARMTYPE9, PARMNAME9) |
#define | THREADED_METHOD10(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8, PARMTYPE9, PARMNAME9, PARMTYPE10, PARMNAME10) THREADED_METHOD10_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8, PARMTYPE9, PARMNAME9, PARMTYPE10, PARMNAME10) |
#define | THREADED_METHOD10_CONST(CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8, PARMTYPE9, PARMNAME9, PARMTYPE10, PARMNAME10) THREADED_METHOD10_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8, PARMTYPE9, PARMNAME9, PARMTYPE10, PARMNAME10) |
This macro is equivalent to
It will, however break it into BLOCK sized chunks for each thread, allowing for load balancing NB: Because it relies on the info.nextTask() starting at zero, you can only loop once in this manner. NB: This is a double loop, so break; does not work as you expect. NB: The iterator, i, does not have to be defined. An example of use:
If you want opInterrupt() triggered for every block completed,
These macros automatically create all the wrapper functions required to set up a multithreaded function call that can be invoked transparently.
An example of use:
The suffix number is the number of parameters the function should take - THREADED_METHOD#(). The parameters to the macro are:
The DOMULTI is a boolean value (which may be a function returning such) which determines if multithreading should be performed. This lets you disable the multithreading for small batches. Note it executes inside of METHOD, so has access to the parameters in the CLASS. For threaded methods with parameters, you need to specify both the PARMTYPE and the PARMNAME for each parameter.
The user must both prototype & implement a
which does all the real work (see above).
Automatically created by the THREADED_METHOD macro are:
Definition in file UT_ThreadedAlgorithm.h.
#define FOR_INFOTASKS | ( | info, | |
i, | |||
n, | |||
blocksize | |||
) |
Definition at line 198 of file UT_ThreadedAlgorithm.h.
#define FOR_INFOTASKS_BOSS | ( | info, | |
i, | |||
n, | |||
blocksize, | |||
boss | |||
) |
Definition at line 202 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD | |||
) | THREADED_METHOD_INTERNAL( , CLASSNAME, DOMULTI, METHOD) |
Definition at line 500 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD1 | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1 | |||
) | THREADED_METHOD1_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1) |
Definition at line 505 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD10 | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4, | |||
PARMTYPE5, | |||
PARMNAME5, | |||
PARMTYPE6, | |||
PARMNAME6, | |||
PARMTYPE7, | |||
PARMNAME7, | |||
PARMTYPE8, | |||
PARMNAME8, | |||
PARMTYPE9, | |||
PARMNAME9, | |||
PARMTYPE10, | |||
PARMNAME10 | |||
) | THREADED_METHOD10_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8, PARMTYPE9, PARMNAME9, PARMTYPE10, PARMNAME10) |
Definition at line 550 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD10_CONST | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4, | |||
PARMTYPE5, | |||
PARMNAME5, | |||
PARMTYPE6, | |||
PARMNAME6, | |||
PARMTYPE7, | |||
PARMNAME7, | |||
PARMTYPE8, | |||
PARMNAME8, | |||
PARMTYPE9, | |||
PARMNAME9, | |||
PARMTYPE10, | |||
PARMNAME10 | |||
) | THREADED_METHOD10_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8, PARMTYPE9, PARMNAME9, PARMTYPE10, PARMNAME10) |
Definition at line 552 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD10_INTERNAL | ( | ISCONST, | |
CLASSNAME, | |||
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4, | |||
PARMTYPE5, | |||
PARMNAME5, | |||
PARMTYPE6, | |||
PARMNAME6, | |||
PARMTYPE7, | |||
PARMNAME7, | |||
PARMTYPE8, | |||
PARMNAME8, | |||
PARMTYPE9, | |||
PARMNAME9, | |||
PARMTYPE10, | |||
PARMNAME10 | |||
) |
Definition at line 479 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD1_CONST | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1 | |||
) | THREADED_METHOD1_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1) |
Definition at line 507 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD1_INTERNAL | ( | ISCONST, | |
CLASSNAME, | |||
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1 | |||
) |
Definition at line 290 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD2 | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2 | |||
) | THREADED_METHOD2_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2) |
Definition at line 510 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD2_CONST | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2 | |||
) | THREADED_METHOD2_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2) |
Definition at line 512 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD2_INTERNAL | ( | ISCONST, | |
CLASSNAME, | |||
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2 | |||
) |
Definition at line 311 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD3 | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3 | |||
) | THREADED_METHOD3_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3) |
Definition at line 515 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD3_CONST | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3 | |||
) | THREADED_METHOD3_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3) |
Definition at line 517 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD3_INTERNAL | ( | ISCONST, | |
CLASSNAME, | |||
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3 | |||
) |
Definition at line 332 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD4 | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4 | |||
) | THREADED_METHOD4_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4) |
Definition at line 520 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD4_CONST | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4 | |||
) | THREADED_METHOD4_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4) |
Definition at line 522 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD4_INTERNAL | ( | ISCONST, | |
CLASSNAME, | |||
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4 | |||
) |
Definition at line 353 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD5 | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4, | |||
PARMTYPE5, | |||
PARMNAME5 | |||
) | THREADED_METHOD5_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5) |
Definition at line 525 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD5_CONST | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4, | |||
PARMTYPE5, | |||
PARMNAME5 | |||
) | THREADED_METHOD5_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5) |
Definition at line 527 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD5_INTERNAL | ( | ISCONST, | |
CLASSNAME, | |||
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4, | |||
PARMTYPE5, | |||
PARMNAME5 | |||
) |
Definition at line 374 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD6 | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4, | |||
PARMTYPE5, | |||
PARMNAME5, | |||
PARMTYPE6, | |||
PARMNAME6 | |||
) | THREADED_METHOD6_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6) |
Definition at line 530 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD6_CONST | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4, | |||
PARMTYPE5, | |||
PARMNAME5, | |||
PARMTYPE6, | |||
PARMNAME6 | |||
) | THREADED_METHOD6_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6) |
Definition at line 532 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD6_INTERNAL | ( | ISCONST, | |
CLASSNAME, | |||
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4, | |||
PARMTYPE5, | |||
PARMNAME5, | |||
PARMTYPE6, | |||
PARMNAME6 | |||
) |
Definition at line 395 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD7 | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4, | |||
PARMTYPE5, | |||
PARMNAME5, | |||
PARMTYPE6, | |||
PARMNAME6, | |||
PARMTYPE7, | |||
PARMNAME7 | |||
) | THREADED_METHOD7_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7) |
Definition at line 535 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD7_CONST | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4, | |||
PARMTYPE5, | |||
PARMNAME5, | |||
PARMTYPE6, | |||
PARMNAME6, | |||
PARMTYPE7, | |||
PARMNAME7 | |||
) | THREADED_METHOD7_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7) |
Definition at line 537 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD7_INTERNAL | ( | ISCONST, | |
CLASSNAME, | |||
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4, | |||
PARMTYPE5, | |||
PARMNAME5, | |||
PARMTYPE6, | |||
PARMNAME6, | |||
PARMTYPE7, | |||
PARMNAME7 | |||
) |
Definition at line 416 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD8 | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4, | |||
PARMTYPE5, | |||
PARMNAME5, | |||
PARMTYPE6, | |||
PARMNAME6, | |||
PARMTYPE7, | |||
PARMNAME7, | |||
PARMTYPE8, | |||
PARMNAME8 | |||
) | THREADED_METHOD8_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8) |
Definition at line 540 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD8_CONST | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4, | |||
PARMTYPE5, | |||
PARMNAME5, | |||
PARMTYPE6, | |||
PARMNAME6, | |||
PARMTYPE7, | |||
PARMNAME7, | |||
PARMTYPE8, | |||
PARMNAME8 | |||
) | THREADED_METHOD8_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8) |
Definition at line 542 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD8_INTERNAL | ( | ISCONST, | |
CLASSNAME, | |||
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4, | |||
PARMTYPE5, | |||
PARMNAME5, | |||
PARMTYPE6, | |||
PARMNAME6, | |||
PARMTYPE7, | |||
PARMNAME7, | |||
PARMTYPE8, | |||
PARMNAME8 | |||
) |
Definition at line 437 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD9 | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4, | |||
PARMTYPE5, | |||
PARMNAME5, | |||
PARMTYPE6, | |||
PARMNAME6, | |||
PARMTYPE7, | |||
PARMNAME7, | |||
PARMTYPE8, | |||
PARMNAME8, | |||
PARMTYPE9, | |||
PARMNAME9 | |||
) | THREADED_METHOD9_INTERNAL( , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8, PARMTYPE9, PARMNAME9) |
Definition at line 545 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD9_CONST | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4, | |||
PARMTYPE5, | |||
PARMNAME5, | |||
PARMTYPE6, | |||
PARMNAME6, | |||
PARMTYPE7, | |||
PARMNAME7, | |||
PARMTYPE8, | |||
PARMNAME8, | |||
PARMTYPE9, | |||
PARMNAME9 | |||
) | THREADED_METHOD9_INTERNAL(const , CLASSNAME, DOMULTI, METHOD, PARMTYPE1, PARMNAME1, PARMTYPE2, PARMNAME2, PARMTYPE3, PARMNAME3, PARMTYPE4, PARMNAME4, PARMTYPE5, PARMNAME5, PARMTYPE6, PARMNAME6, PARMTYPE7, PARMNAME7, PARMTYPE8, PARMNAME8, PARMTYPE9, PARMNAME9) |
Definition at line 547 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD9_INTERNAL | ( | ISCONST, | |
CLASSNAME, | |||
DOMULTI, | |||
METHOD, | |||
PARMTYPE1, | |||
PARMNAME1, | |||
PARMTYPE2, | |||
PARMNAME2, | |||
PARMTYPE3, | |||
PARMNAME3, | |||
PARMTYPE4, | |||
PARMNAME4, | |||
PARMTYPE5, | |||
PARMNAME5, | |||
PARMTYPE6, | |||
PARMNAME6, | |||
PARMTYPE7, | |||
PARMNAME7, | |||
PARMTYPE8, | |||
PARMNAME8, | |||
PARMTYPE9, | |||
PARMNAME9 | |||
) |
Definition at line 458 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD_CONST | ( | CLASSNAME, | |
DOMULTI, | |||
METHOD | |||
) | THREADED_METHOD_INTERNAL(const , CLASSNAME, DOMULTI, METHOD) |
Definition at line 502 of file UT_ThreadedAlgorithm.h.
#define THREADED_METHOD_INTERNAL | ( | ISCONST, | |
CLASSNAME, | |||
DOMULTI, | |||
METHOD | |||
) |
Definition at line 269 of file UT_ThreadedAlgorithm.h.