7 #ifndef _A_UTILS_THREAD_LOOPER_HEADER_
8 #define _A_UTILS_THREAD_LOOPER_HEADER_
22 template<
typename ...Args>
24 cLooper(std::forward<Args>(args)...)
26 *
static_cast<std::thread*
>(
this) = std::thread(GetCallable());
30 thread(
static_cast<thread&&
>(oOther)),
38 cLooper::Swap(oOther);
59 template<
typename ...Args>
63 *
static_cast<cLooper*
>(
this) =
cLooper(std::forward<Args>(args)...);
72 tBool m_bSelfDestruct;
char tChar
The tChar defines the type for platform character set (platform and compiler dependent type).
void tVoid
The tVoid is always the definition for the void (non-type).
bool tBool
The tBool defines the type for the Values tTrue and tFalse (platform and compiler dependent).
The looper helper class is a managed endless loop, which can be suspended.
@ Destroyed
loop is finished or only constructed
A common result class usable as return value throughout.
#define tFalse
Value for tBool.
#define tTrue
Value for tBool.
ADTF A_UTIL Namespace - Within adtf this is used as adtf::util or adtf_util.
tResult create_thread_with_scheduling(std::thread &oThread, const tSchedulingParameters &sScheduling, Callable &&pFunc, Args &&... args)
Creates a new thread that has the given scheduling parameters.
std::string join(const std::vector< std::string > &strings, const std::string &delimiter)
Joins all strings from the vector into one string, separated by the specified delimiter string.
Compound class, that groups scheduling parameters.