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_aqtmode(AqtMode mode)
Set acquisition thread mode.
Thread aspect to access to BlackBoard.
Wait until a given condition holds.
Base class for all messages passed through interfaces in Fawkes BlackBoard.
AqtMode
Acquisition thread mode.
Camera interface for image aquiring devices in FireVision.
Fawkes library namespace.
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.
Base class for all Fawkes BlackBoard interfaces.
FireVision base application acquisition thread.
Logger * logger
This is the Logger member used to access the logger.
virtual ~FvAcquisitionThread()
Destructor.
virtual void finalize()
Finalize the thread.
SwitchInterface Fawkes BlackBoard Interface.
virtual void init()
Initialize the thread.
firevision::Camera * get_camera()
Get the Camera of this acquisition thread.
Thread aspect to log output.
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.
Mutex mutual exclusion lock.
continuous mode, use if there are only continuous threads for this acquisition thread.
BlackBoard interface listener.
AqtMode aqtmode()
Get acquisition thread mode.