Fawkes API
Fawkes Development Version
|
23 #ifndef _FIREVISION_APPS_BASE_ACQUISITION_THREAD_H_
24 #define _FIREVISION_APPS_BASE_ACQUISITION_THREAD_H_
26 #include <aspect/blackboard.h>
27 #include <aspect/logging.h>
28 #include <blackboard/interface_listener.h>
29 #include <core/threading/thread.h>
30 #include <fvcams/shmem.h>
31 #include <fvutils/color/colorspaces.h>
40 class SwitchInterface;
41 #ifdef FVBASE_TIMETRACKER
45 namespace firevision {
46 class SharedMemoryImageBuffer;
112 firevision::colorspace_t colorspace_;
114 unsigned int height_;
118 std::map<firevision::colorspace_t, firevision::SharedMemoryImageBuffer *> shm_;
119 std::map<firevision::colorspace_t, firevision::SharedMemoryImageBuffer *>::iterator shmit_;
123 #ifdef FVBASE_TIMETRACKER
125 unsigned int loop_count_;
126 unsigned int ttc_capture_;
127 unsigned int ttc_lock_;
128 unsigned int ttc_convert_;
129 unsigned int ttc_unlock_;
130 unsigned int ttc_dispose_;
void set_enabled(bool enabled)
Enable or disable image retrieval.
Mutex mutual exclusion lock.
SwitchInterface Fawkes BlackBoard Interface.
Aquisition-dependant threads.
Wait until a given condition holds.
Base class for all messages passed through interfaces in Fawkes BlackBoard.
AqtMode
Acquisition thread mode.
AqtMode aqtmode()
Get acquisition thread mode.
FireVision base application acquisition thread.
virtual void run()
Stub to see name in backtrace for easier debugging.
BlackBoard interface listener.
firevision::Camera * camera_instance(firevision::colorspace_t cspace, bool deep_copy)
Get a camera instance.
virtual void finalize()
Finalize the thread.
Logger * logger
This is the Logger member used to access the logger.
fawkes::Thread * raw_subscriber_thread
Vision thread registered for raw camera access on this camera.
void set_vt_prepfin_hold(bool hold)
Set prepfin hold status for vision threads.
@ AqtContinuous
continuous mode, use if there are only continuous threads for this acquisition thread.
Thread aspect to access to BlackBoard.
Fawkes library namespace.
Thread aspect to log output.
virtual void loop()
Code to execute in the thread.
void set_aqtmode(AqtMode mode)
Set acquisition thread mode.
Base class for all Fawkes BlackBoard interfaces.
@ AqtCyclic
cyclic mode, use if there is at least one cyclic thread for this acquisition thread.
virtual ~FvAcquisitionThread()
Destructor.
FvAcquisitionThread(const char *id, firevision::Camera *camera, fawkes::Logger *logger, fawkes::Clock *clock)
Constructor.
FvAqtVisionThreads * vision_threads
Vision threads assigned to this acquisition thread.
Thread class encapsulation of pthreads.
Camera interface for image aquiring devices in FireVision.
firevision::Camera * get_camera()
Get the Camera of this acquisition thread.
virtual void init()
Initialize the thread.
This is supposed to be the central clock in Fawkes.