23 #ifndef _PLUGINS_OPENNI_IMAGE_THREAD_H_
24 #define _PLUGINS_OPENNI_IMAGE_THREAD_H_
26 #include <aspect/blocked_timing.h>
27 #include <aspect/clock.h>
28 #include <aspect/configurable.h>
29 #include <aspect/logging.h>
30 #include <core/threading/thread.h>
31 #include <core/utils/lockptr.h>
32 #include <plugins/openni/aspect/openni.h>
35 #if defined(__linux__) && not defined(linux)
38 #if defined(__i386__) && not defined(i386)
41 #include <XnCppWrapper.h>
43 namespace firevision {
44 class SharedMemoryImageBuffer;
71 xn::ImageGenerator *image_gen_;
72 xn::ImageMetaData * image_md_;
77 typedef enum { DEBAYER_BILINEAR, DEBAYER_NEAREST_NEIGHBOR, CONVERT_YUV, CONVERT_RGB } CopyMode;
78 CopyMode cfg_copy_mode_;
80 unsigned short int usb_vendor_;
81 unsigned short int usb_product_;
82 unsigned int image_width_;
83 unsigned int image_height_;
OpenNI Image Provider Thread.
virtual void loop()
Code to execute in the thread.
virtual void run()
Stub to see name in backtrace for easier debugging.
virtual void finalize()
Finalize the thread.
virtual void init()
Initialize the thread.
virtual ~OpenNiImageThread()
Destructor.
OpenNiImageThread()
Constructor.
Thread aspect to use blocked timing.
Thread aspect that allows to obtain the current time from the clock.
Thread aspect to access configuration data.
Thread aspect to log output.
Thread aspect to get access to the OpenNI context.
Thread class encapsulation of pthreads.
A class for handling time.
Shared memory image buffer.