39 #include <pcl/pcl_config.h>
43 #include <pcl/pcl_exports.h>
45 #include "openni_exception.h"
46 #include <pcl/io/boost.h>
62 using Ptr = pcl::shared_ptr<Image>;
77 inline Image (pcl::shared_ptr<xn::ImageMetaData> image_meta_data) noexcept;
83 inline virtual ~
Image () noexcept;
93 virtual
bool isResizingSupported (
unsigned input_width,
unsigned input_height,
94 unsigned output_width,
unsigned output_height) const = 0;
104 virtual
void fillRGB (
unsigned width,
unsigned height,
unsigned char* rgb_buffer,
105 unsigned rgb_line_step = 0) const = 0;
120 fillRaw (
unsigned char* rgb_buffer) const throw ()
122 memcpy (rgb_buffer, image_md_->Data (), image_md_->DataSize ());
133 virtual void fillGrayscale (
unsigned width,
unsigned height,
unsigned char* gray_buffer,
134 unsigned gray_line_step = 0)
const = 0;
140 inline unsigned getWidth ()
const throw ();
146 inline
unsigned getHeight () const throw ();
153 inline
unsigned getFrameID () const throw ();
160 inline
unsigned long getTimeStamp () const throw ();
166 inline const xn::ImageMetaData& getMetaData () const throw ();
169 pcl::shared_ptr<xn::ImageMetaData> image_md_;
173 : image_md_ (std::move(image_meta_data))
182 return image_md_->XRes ();
188 return image_md_->YRes ();
194 return image_md_->FrameID ();
200 return static_cast<unsigned long> (image_md_->Timestamp ());
203 const xn::ImageMetaData&
Image class containing just a reference to image meta data.
pcl::shared_ptr< Image > Ptr
unsigned getWidth() const
unsigned getHeight() const
pcl::shared_ptr< const Image > ConstPtr
virtual ~Image() noexcept
virtual Destructor that never throws an exception.
const xn::ImageMetaData & getMetaData() const
unsigned getFrameID() const
unsigned long getTimeStamp() const
virtual void fillGrayscale(unsigned width, unsigned height, unsigned char *gray_buffer, unsigned gray_line_step=0) const =0
fills a user given buffer with the gray values, with an optional nearest-neighbor down sampling and a...
Defines functions, macros and traits for allocating and using memory.