Loading...
Searching...
No Matches
ParallelThread Class Reference

`#include <ParallelThread.h>`

Inheritance diagram for ParallelThread:

## Public Member Functions

| ParallelThread ()
| ~ParallelThread ()
void | start () noexcept
bool | isRunning () const noexcept
void | setThreadName (std::string name) noexcept
void | setPriority (int32_t rt_prio, int32_t rt_policy) noexcept
void | setTimeOut (uint32_t timeout) noexcept
bool | getProcess () noexcept
void | runProcess () noexcept
void | processWait () noexcept
void | stop () noexcept
Public Member Functions inherited from ProcessPtr
| ProcessPtr ()
template<class C, void(C::*)() Function>
void | set (C *instance)
template<uint32_t s, class C, void(C::*)() Function>
void | set (C *instance)
void | setProcessor (uint32_t i_)
void | process () const
void | dummyFunc ()

## Private Member Functions

void | init () noexcept
void | run () noexcept
bool | getState () const noexcept
void | setThreadPolicy (int32_t rt_prio, int32_t rt_policy) noexcept
struct timespec * | getTimeOut () noexcept

## Private Attributes

std::atomic< bool > | pRun
std::atomic< bool > | pWait
std::atomic< bool > | isWaiting
std::mutex | pWaitWork
std::condition_variable | pWorkCond
std::thread | pThd
std::string | threadName
uint32_t | timeoutPeriod
pthread_mutex_t | pWaitProc
pthread_cond_t | pProcCond
struct timespec | timeOut

## Detailed Description

Definition at line 129 of file ParallelThread.h.

## Constructor & Destructor Documentation

## ParallelThread()

ParallelThread::ParallelThread | ( |  | ) |

inline

Definition at line 133 of file ParallelThread.h.

## ~ParallelThread()

ParallelThread::~ParallelThread | ( |  | ) |

inline

Definition at line 147 of file ParallelThread.h.

## Member Function Documentation

## getProcess()

bool ParallelThread::getProcess | ( |  | ) |

inline noexcept

Definition at line 181 of file ParallelThread.h.

## getState()

bool ParallelThread::getState | ( |  | ) | const

inline private noexcept

Definition at line 312 of file ParallelThread.h.

Referenced by getProcess().

## getTimeOut()

struct timespec * ParallelThread::getTimeOut | ( |  | ) |

inline private noexcept

Definition at line 339 of file ParallelThread.h.

Referenced by getProcess(), and processWait().

## init()

void ParallelThread::init | ( |  | ) |

inline private noexcept

Definition at line 273 of file ParallelThread.h.

Referenced by ParallelThread().

## isRunning()

bool ParallelThread::isRunning | ( |  | ) | const

inline noexcept

Definition at line 159 of file ParallelThread.h.

Referenced by getProcess(), processWait(), setPriority(), start(), and stop().

## processWait()

void ParallelThread::processWait | ( |  | ) |

inline noexcept

Definition at line 215 of file ParallelThread.h.

## run()

void ParallelThread::run | ( |  | ) |

inline private noexcept

Definition at line 283 of file ParallelThread.h.

Referenced by start().

## runProcess()

void ParallelThread::runProcess | ( |  | ) |

inline noexcept

Definition at line 204 of file ParallelThread.h.

## setPriority()

void ParallelThread::setPriority | ( | int32_t | rt_prio,
|  | int32_t | rt_policy )

inline noexcept

Definition at line 170 of file ParallelThread.h.

## setThreadName()

void ParallelThread::setThreadName | ( | std::string | name | ) |

inline noexcept

Definition at line 165 of file ParallelThread.h.

## setThreadPolicy()

void ParallelThread::setThreadPolicy | ( | int32_t | rt_prio,
|  | int32_t | rt_policy )

inline private noexcept

Definition at line 317 of file ParallelThread.h.

Referenced by setPriority().

## setTimeOut()

void ParallelThread::setTimeOut | ( | uint32_t | timeout | ) |

inline noexcept

Definition at line 176 of file ParallelThread.h.

## start()

void ParallelThread::start | ( |  | ) |

inline noexcept

Definition at line 154 of file ParallelThread.h.

## stop()

void ParallelThread::stop | ( |  | ) |

inline noexcept

Definition at line 237 of file ParallelThread.h.

Referenced by run(), and ~ParallelThread().

## Member Data Documentation

## isWaiting

std::atomic<bool> ParallelThread::isWaiting

private

Definition at line 255 of file ParallelThread.h.

Referenced by getState(), ParallelThread(), and run().

## pProcCond

pthread_cond_t ParallelThread::pProcCond

private

Definition at line 269 of file ParallelThread.h.

Referenced by getProcess(), init(), processWait(), and run().

## pRun

std::atomic<bool> ParallelThread::pRun

private

Definition at line 253 of file ParallelThread.h.

Referenced by isRunning(), ParallelThread(), run(), stop(), and ~ParallelThread().

## pThd

std::thread ParallelThread::pThd

private

Definition at line 264 of file ParallelThread.h.

Referenced by isRunning(), run(), setThreadPolicy(), and stop().

## pWait

std::atomic<bool> ParallelThread::pWait

private

Definition at line 254 of file ParallelThread.h.

Referenced by getProcess(), ParallelThread(), processWait(), and run().

## pWaitProc

pthread_mutex_t ParallelThread::pWaitProc

private

Definition at line 268 of file ParallelThread.h.

Referenced by getProcess(), init(), and processWait().

## pWaitWork

std::mutex ParallelThread::pWaitWork

private

Definition at line 260 of file ParallelThread.h.

Referenced by run().

## pWorkCond

std::condition_variable ParallelThread::pWorkCond

private

Definition at line 261 of file ParallelThread.h.

Referenced by ParallelThread(), run(), runProcess(), and stop().

## threadName

std::string ParallelThread::threadName

private

Definition at line 265 of file ParallelThread.h.

Referenced by ParallelThread(), setThreadName(), and setThreadPolicy().

## timeOut

struct timespec ParallelThread::timeOut

private

Definition at line 270 of file ParallelThread.h.

Referenced by getTimeOut().

## timeoutPeriod

uint32_t ParallelThread::timeoutPeriod

private

Definition at line 266 of file ParallelThread.h.

Referenced by getTimeOut(), ParallelThread(), and setTimeOut().

The documentation for this class was generated from the following file:

- src/headers/ParallelThread.h