YARP
Yet Another Robot Platform
yarp::os::TypedReaderThread< T > Class Template Reference

#include <yarp/os/TypedReaderThread.h>

+ Inheritance diagram for yarp::os::TypedReaderThread< T >:

Detailed Description

template<typename T>
class yarp::os::TypedReaderThread< T >

Definition at line 16 of file TypedReaderThread.h.

Public Member Functions

 TypedReaderThread ()
 
 TypedReaderThread (TypedReader< T > &reader, TypedReaderCallback< T > &callback)
 
virtual void run () override
 Main body of the new thread. More...
 
virtual void onStop () override
 Call-back, called while halting the thread (before join). More...
 
- Public Member Functions inherited from yarp::os::Thread
 Thread ()
 Constructor. More...
 
virtual ~Thread ()
 Destructor. More...
 
bool start ()
 Start the new thread running. More...
 
bool stop ()
 Stop the thread. More...
 
virtual void beforeStart ()
 Called just before a new thread starts. More...
 
virtual void afterStart (bool success)
 Called just after a new thread starts (or fails to start), this is executed by the same thread that calls start(). More...
 
virtual bool threadInit ()
 Initialization method. More...
 
virtual void threadRelease ()
 Release method. More...
 
bool isStopping ()
 Returns true if the thread is stopping (Thread::stop has been called). More...
 
bool isRunning ()
 Returns true if the thread is running (Thread::start has been called successfully and the thread has not stopped). More...
 
long int getKey ()
 Get a unique identifier for the thread. More...
 
int setPriority (int priority, int policy=-1)
 Set the priority and scheduling policy of the thread, if the OS supports that. More...
 
int getPriority ()
 Query the current priority of the thread, if the OS supports that. More...
 
int getPolicy ()
 Query the current scheduling policy of the thread, if the OS supports that. More...
 
bool join (double seconds=-1)
 The function returns when the thread execution has completed. More...
 
void setOptions (int stackSize=0)
 Set the stack size for the new thread. More...
 

Public Attributes

TypedReader< T > * reader
 
TypedReaderCallback< T > * callback
 

Additional Inherited Members

- Static Public Member Functions inherited from yarp::os::Thread
static int getCount ()
 Check how many threads are running. More...
 
static long int getKeyOfCaller ()
 Get a unique identifier for the calling thread. More...
 
static void yield ()
 Reschedule the execution of current thread, allowing other threads to run. More...
 
static void setDefaultStackSize (int stackSize)
 Set the default stack size for all threads created after this point. More...
 

Constructor & Destructor Documentation

◆ TypedReaderThread() [1/2]

template<class T >
yarp::os::TypedReaderThread< T >::TypedReaderThread ( )

Definition at line 11 of file TypedReaderThread-inl.h.

◆ TypedReaderThread() [2/2]

template<class T>
yarp::os::TypedReaderThread< T >::TypedReaderThread ( TypedReader< T > &  reader,
TypedReaderCallback< T > &  callback 
)

Definition at line 18 of file TypedReaderThread-inl.h.

Member Function Documentation

◆ onStop()

template<class T >
void yarp::os::TypedReaderThread< T >::onStop ( )
overridevirtual

Call-back, called while halting the thread (before join).

This callback is executed by the same thread that calls stop(). It should not be called directly. Override this method to do the right thing for your particular Thread::run.

Reimplemented from yarp::os::Thread.

Definition at line 40 of file TypedReaderThread-inl.h.

◆ run()

template<class T >
void yarp::os::TypedReaderThread< T >::run ( )
overridevirtual

Main body of the new thread.

Override this method to do what you want. After Thread::start is called, this method will start running in a separate thread. It is important that this method either keeps checking Thread::isStopping to see if it should stop, or you override the Thread::onStop method to interact with it in some way to shut the new thread down. There is no really reliable, portable way to stop a thread cleanly unless that thread cooperates.

Implements yarp::os::Thread.

Definition at line 27 of file TypedReaderThread-inl.h.

Member Data Documentation

◆ callback

template<typename T>
TypedReaderCallback<T>* yarp::os::TypedReaderThread< T >::callback

Definition at line 28 of file TypedReaderThread.h.

◆ reader

template<typename T>
TypedReader<T>* yarp::os::TypedReaderThread< T >::reader

Definition at line 27 of file TypedReaderThread.h.


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