Point Cloud Library (PCL)
1.7.0
|
00001 #ifndef PCL_MESSAGE_IMAGE_H 00002 #define PCL_MESSAGE_IMAGE_H 00003 #include <string> 00004 #include <vector> 00005 #include <ostream> 00006 00007 #ifdef USE_ROS 00008 #error USE_ROS setup requires PCL to compile against ROS message headers, which is now deprecated 00009 #endif 00010 00011 // Include the correct Header path here 00012 #include <pcl/PCLHeader.h> 00013 00014 namespace pcl 00015 { 00016 struct PCLImage 00017 { 00018 PCLImage () : header (), height (0), width (0), encoding (), 00019 is_bigendian (0), step (0), data () 00020 {} 00021 00022 ::pcl::PCLHeader header; 00023 00024 pcl::uint32_t height; 00025 pcl::uint32_t width; 00026 std::string encoding; 00027 00028 pcl::uint8_t is_bigendian; 00029 pcl::uint32_t step; 00030 00031 std::vector<pcl::uint8_t> data; 00032 00033 typedef boost::shared_ptr< ::pcl::PCLImage> Ptr; 00034 typedef boost::shared_ptr< ::pcl::PCLImage const> ConstPtr; 00035 }; // struct PCLImage 00036 00037 typedef boost::shared_ptr< ::pcl::PCLImage> PCLImagePtr; 00038 typedef boost::shared_ptr< ::pcl::PCLImage const> PCLImageConstPtr; 00039 00040 inline std::ostream& operator<<(std::ostream& s, const ::pcl::PCLImage & v) 00041 { 00042 s << "header: " << std::endl; 00043 s << v.header; 00044 s << "height: "; 00045 s << " " << v.height << std::endl; 00046 s << "width: "; 00047 s << " " << v.width << std::endl; 00048 s << "encoding: "; 00049 s << " " << v.encoding << std::endl; 00050 s << "is_bigendian: "; 00051 s << " " << v.is_bigendian << std::endl; 00052 s << "step: "; 00053 s << " " << v.step << std::endl; 00054 s << "data[]" << std::endl; 00055 for (size_t i = 0; i < v.data.size (); ++i) 00056 { 00057 s << " data[" << i << "]: "; 00058 s << " " << v.data[i] << std::endl; 00059 } 00060 return (s); 00061 } 00062 } // namespace pcl 00063 00064 #endif // PCL_MESSAGE_IMAGE_H 00065