23 #ifndef __FIREVISION_APPS_BASE_ACQUISITION_THREAD_H_
24 #define __FIREVISION_APPS_BASE_ACQUISITION_THREAD_H_
26 #include <core/threading/thread.h>
28 #include <fvcams/shmem.h>
29 #include <fvutils/color/colorspaces.h>
36 #ifdef FVBASE_TIMETRACKER
40 namespace firevision {
41 class SharedMemoryImageBuffer;
81 protected:
virtual void run() { Thread::run(); }
90 firevision::colorspace_t __colorspace;
92 unsigned int __height;
96 std::map<firevision::colorspace_t, firevision::SharedMemoryImageBuffer *> __shm;
97 std::map<firevision::colorspace_t, firevision::SharedMemoryImageBuffer *>::iterator __shmit;
99 #ifdef FVBASE_TIMETRACKER
101 unsigned int __loop_count;
102 unsigned int __ttc_capture;
103 unsigned int __ttc_lock;
104 unsigned int __ttc_convert;
105 unsigned int __ttc_unlock;
106 unsigned int __ttc_dispose;
void set_aqtmode(AqtMode mode)
Set acquisition thread mode.
AqtMode
Acquisition thread mode.
Camera interface for image aquiring devices in FireVision.
fawkes::Thread * raw_subscriber_thread
Vision thread registered for raw camera access on this camera.
This is supposed to be the central clock in Fawkes.
FvAqtVisionThreads * vision_threads
Vision threads assigned to this acquisition thread.
virtual void run()
Stub to see name in backtrace for easier debugging.
Aquisition-dependant threads.
Thread class encapsulation of pthreads.
FireVision base application acquisition thread.
virtual ~FvAcquisitionThread()
Destructor.
firevision::Camera * get_camera()
Get the Camera of this acquisition thread.
void set_vt_prepfin_hold(bool hold)
Set prepfin hold status for vision threads.
firevision::Camera * camera_instance(firevision::colorspace_t cspace, bool deep_copy)
Get a camera instance.
virtual void loop()
Code to execute in the thread.
cyclic mode, use if there is at least one cyclic thread for this acquisition thread.
void set_enabled(bool enabled)
Enable or disable image retrieval.
FvAcquisitionThread(const char *id, firevision::Camera *camera, fawkes::Logger *logger, fawkes::Clock *clock)
Constructor.
continuous mode, use if there are only continuous threads for this acquisition thread.
AqtMode aqtmode()
Get acquisition thread mode.