fawkes::VisionAspect Class Reference
[Fawkes Thread Aspects]

Thread aspect to use in FireVision apps. More...

#include <aspect/vision.h>

Inheritance diagram for fawkes::VisionAspect:

[legend]
List of all members.

Public Types

 CYCLIC
 cyclic mode
 CONTINUOUS
 continuous mode
enum  VisionThreadMode { CYCLIC, CONTINUOUS }
 The operation mode of this vision thread. More...

Public Member Functions

 VisionAspect (VisionThreadMode mode)
 Constructor.
virtual ~VisionAspect ()
 Virtual empty Destructor.
void init_VisionAspect (firevision::VisionMaster *vision_master)
 Set vision master.
VisionThreadMode vision_thread_mode ()
 Get the vision thread mode of this thread.

Protected Attributes

firevision::VisionMastervision_master
 Vision master.

Detailed Description

Thread aspect to use in FireVision apps.

It is guaranteed that if used properly from within plugins that initVisionAspect() is called before the thread is started and that you can access the vision master via the vision_master member.

A vision thread can be called either cyclic, which means that in every loop the vision master will wait for this vision thread to finish before the next loop. This also means that the thread has to operate in wait-for-wakeup mode. The thread is woken up when a new camera image is available. In general the vision thread should be very fast and under no conditions it should take longer to process an image than to aquire it. The thread can also operate in continuous mode, in this case also the thread has to operate in continuous mode. In this mode the vision application should keep running and the processing is independent from the camera speed. Make sure that you use strict logging on the shared memory camera to ensure healthy pictures.

Author:
Tim Niemueller

Definition at line 31 of file vision.h.


Member Enumeration Documentation

enum fawkes::VisionAspect::VisionThreadMode

The operation mode of this vision thread.

See also:
Thread
Enumerator:
CYCLIC  cyclic mode
CONTINUOUS  continuous mode

Definition at line 37 of file vision.h.


Constructor & Destructor Documentation

fawkes::VisionAspect::VisionAspect ( VisionThreadMode  mode  ) 

Constructor.

Parameters:
mode mode to operate in

Definition at line 55 of file vision.cpp.

fawkes::VisionAspect::~VisionAspect (  )  [virtual]

Virtual empty Destructor.

Definition at line 62 of file vision.cpp.


Member Function Documentation

void fawkes::VisionAspect::init_VisionAspect ( firevision::VisionMaster vision_master  ) 

Set vision master.

Parameters:
vision_master vision master It is guaranteed that this is called for a logging thread before Thread::start() is called (when running regularly inside Fawkes).
See also:
VisionMaster

Definition at line 74 of file vision.cpp.

References vision_master.

Referenced by fawkes::AspectIniFin::init().

VisionAspect::VisionThreadMode fawkes::VisionAspect::vision_thread_mode (  ) 

Get the vision thread mode of this thread.

Returns:
vision thread mode

Definition at line 84 of file vision.cpp.

Referenced by fawkes::AspectIniFin::init(), FvBaseThread::register_for_camera(), and FvAqtVisionThreads::set_thread_running().


Member Data Documentation

firevision::VisionMaster* fawkes::VisionAspect::vision_master [protected]

Vision master.

Definition at line 49 of file vision.h.

Referenced by FvSrSavePipelineThread::finalize(), FvRetrieverThread::finalize(), FvSrSavePipelineThread::init(), FvRetrieverThread::init(), and init_VisionAspect().


The documentation for this class was generated from the following files:
Generated on Tue Feb 22 13:31:37 2011 for Fawkes API by  doxygen 1.4.7