Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037 #include <pcl/pcl_config.h>
00038 #ifdef HAVE_OPENNI
00039
00040 #ifndef __OPENNI_DEVICE_KINECT__
00041 #define __OPENNI_DEVICE_KINECT__
00042
00043 #include "openni_device.h"
00044 #include "openni_driver.h"
00045 #include "openni_image_bayer_grbg.h"
00046
00047 namespace openni_wrapper
00048 {
00049
00056 class DeviceKinect : public OpenNIDevice
00057 {
00058 friend class OpenNIDriver;
00059 public:
00060 DeviceKinect (xn::Context& context, const xn::NodeInfo& device_node, const xn::NodeInfo& image_node, const xn::NodeInfo& depth_node, const xn::NodeInfo& ir_node);
00061 virtual ~DeviceKinect () throw ();
00062
00063 inline void setDebayeringMethod (const ImageBayerGRBG::DebayeringMethod& debayering_method) throw ();
00064 inline const ImageBayerGRBG::DebayeringMethod& getDebayeringMethod () const throw ();
00065
00066 protected:
00067 virtual boost::shared_ptr<Image> getCurrentImage (boost::shared_ptr<xn::ImageMetaData> image_meta_data) const throw ();
00068 void enumAvailableModes () throw ();
00069 virtual bool isImageResizeSupported (unsigned input_width, unsigned input_height, unsigned output_width, unsigned output_height) const throw ();
00070 ImageBayerGRBG::DebayeringMethod debayering_method_;
00071 } ;
00072
00073 void
00074 DeviceKinect::setDebayeringMethod (const ImageBayerGRBG::DebayeringMethod& debayering_method) throw ()
00075 {
00076 debayering_method_ = debayering_method;
00077 }
00078
00079 const ImageBayerGRBG::DebayeringMethod&
00080 DeviceKinect::getDebayeringMethod () const throw ()
00081 {
00082 return debayering_method_;
00083 }
00084 }
00085
00086 #endif
00087 #endif // __OPENNI_DEVICE_KINECT__