Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages | Examples

ArRangeDeviceThreaded Class Reference

#include <ArRangeDeviceThreaded.h>

Inheritance diagram for ArRangeDeviceThreaded:

ArRangeDevice ArLaser ArLaserFilter ArLMS1XX ArLMS2xx ArSimulatedLaser ArUrg List of all members.

Detailed Description

A range device which can run in its own thread.

This is a range device thats threaded, it doesn't do multipleInheritance from both ArASyncTask and ArRangeDevice any more since JAVA doesn't support this and the wrapper software can't deal with it. Its still functionally the same however.


Public Member Functions

 ArRangeDeviceThreaded (size_t currentBufferSize, size_t cumulativeBufferSize, const char *name, unsigned int maxRange, int maxSecondsTokeepCurrent=0, int maxSecondsToKeepCumulative=0, double maxDistToKeepCumulative=0, bool locationDependent=false)
 Constructor.
virtual bool getRunning (void)
 Get the running status of the thread.
virtual bool getRunningWithLock (void)
 Get the running status of the thread, locking around the variable.
virtual int lockDevice (void)
virtual void run (void)
 Run in this thread.
virtual void runAsync (void)
 Run in its own thread.
virtual void * runThread (void *arg)=0
 The functor you need to implement that will be the one executed by the thread.
virtual void stopRunning (void)
 Stop the thread.
virtual int tryLockDevice (void)
virtual int unlockDevice (void)
virtual ~ArRangeDeviceThreaded ()
 Destructor.

Protected Attributes

ArRetFunctor1C< void *, ArRangeDeviceThreaded,
void * > 
myRunThreadCB
ArFunctorASyncTask myTask


The documentation for this class was generated from the following files:
Generated on Thu Jan 7 10:34:43 2010 for Aria by  doxygen 1.4.2