Main MRPT website > C++ reference for MRPT 1.5.6
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
rp::hal::Thread Class Reference

Detailed Description

Definition at line 43 of file thread.h.

#include <rplidar/src/hal/thread.h>

Public Types

enum  priority_val_t {
  PRIORITY_REALTIME = 0, PRIORITY_HIGH = 1, PRIORITY_NORMAL = 2, PRIORITY_LOW = 3,
  PRIORITY_IDLE = 4
}
 

Public Member Functions

 ~Thread ()
 
 Thread ()
 
_word_size_t getHandle ()
 
u_result terminate ()
 
voidgetData ()
 
u_result join (unsigned long timeout=-1)
 
u_result setPriority (priority_val_t p)
 
priority_val_t getPriority ()
 
bool operator== (const Thread &right)
 

Static Public Member Functions

template<class T , u_result(T::*)(void) PROC>
static Thread create_member (T *pthis)
 
template<class T , u_result(T::*)(void) PROC>
static _word_size_t THREAD_PROC _thread_thunk (void *data)
 
static Thread create (thread_proc_t proc, void *data=NULL)
 

Protected Member Functions

 Thread (thread_proc_t proc, void *data)
 

Protected Attributes

void_data
 
thread_proc_t _func
 
_word_size_t _handle
 

Member Enumeration Documentation

◆ priority_val_t

Enumerator
PRIORITY_REALTIME 
PRIORITY_HIGH 
PRIORITY_NORMAL 
PRIORITY_LOW 
PRIORITY_IDLE 

Definition at line 46 of file thread.h.

Constructor & Destructor Documentation

◆ ~Thread()

rp::hal::Thread::~Thread ( )
inline

Definition at line 69 of file thread.h.

◆ Thread() [1/2]

rp::hal::Thread::Thread ( )
inline

Definition at line 70 of file thread.h.

◆ Thread() [2/2]

rp::hal::Thread::Thread ( thread_proc_t  proc,
void data 
)
inlineprotected

Definition at line 80 of file thread.h.

Member Function Documentation

◆ _thread_thunk()

template<class T , u_result(T::*)(void) PROC>
static _word_size_t THREAD_PROC rp::hal::Thread::_thread_thunk ( void data)
inlinestatic

Definition at line 62 of file thread.h.

◆ create()

Thread rp::hal::Thread::create ( thread_proc_t  proc,
void data = NULL 
)
static

Definition at line 41 of file linux/thread.hpp.

References _handle.

Referenced by create_member().

◆ create_member()

template<class T , u_result(T::*)(void) PROC>
static Thread rp::hal::Thread::create_member ( T *  pthis)
inlinestatic

Definition at line 56 of file thread.h.

References create().

◆ getData()

void* rp::hal::Thread::getData ( )
inline

Definition at line 73 of file thread.h.

References _data.

◆ getHandle()

_word_size_t rp::hal::Thread::getHandle ( )
inline

◆ getPriority()

Thread::priority_val_t rp::hal::Thread::getPriority ( )

Definition at line 103 of file linux/thread.hpp.

References _handle, PRIORITY_HIGH, PRIORITY_NORMAL, and PRIORITY_REALTIME.

◆ join()

u_result rp::hal::Thread::join ( unsigned long  timeout = -1)

◆ operator==()

bool rp::hal::Thread::operator== ( const Thread right)
inline

Definition at line 78 of file thread.h.

References _handle.

◆ setPriority()

u_result rp::hal::Thread::setPriority ( priority_val_t  p)

◆ terminate()

u_result rp::hal::Thread::terminate ( )

Definition at line 53 of file linux/thread.hpp.

References _handle, RESULT_OK, and RESULT_OPERATION_FAIL.

Member Data Documentation

◆ _data

void* rp::hal::Thread::_data
protected

Definition at line 81 of file thread.h.

Referenced by getData().

◆ _func

thread_proc_t rp::hal::Thread::_func
protected

Definition at line 82 of file thread.h.

◆ _handle

_word_size_t rp::hal::Thread::_handle
protected

Definition at line 83 of file thread.h.

Referenced by create(), getHandle(), getPriority(), join(), operator==(), setPriority(), and terminate().




Page generated by Doxygen 1.8.14 for MRPT 1.5.6 Git: 4c65e8431 Tue Apr 24 08:18:17 2018 +0200 at lun oct 28 01:35:26 CET 2019