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 
00037 #ifndef _texturize_polygon_primitives_H_
00038 #define _texturize_polygon_primitives_H_
00039 
00040 
00042 
00044 
00046 #include <ros/ros.h>
00047 #include <sensor_msgs/PointCloud2.h>
00048 #include <tf/transform_listener.h>
00049 #include <image_transport/image_transport.h>
00050 #include <cv_bridge/cv_bridge.h>
00051 #include <sensor_msgs/image_encodings.h>
00052 
00054 #include <pcl/ros/conversions.h>
00055 #include <pcl/point_cloud.h>
00056 #include <pcl/point_types.h>
00057 #include <pcl/segmentation/sac_segmentation.h>
00058 
00060 #include <visualization_msgs/Marker.h>
00061 #include <visualization_msgs/MarkerArray.h>
00062 
00064 #include <wrapper_collada.h>
00065 
00067 #include "polygon_primitive_with_texture.h"
00068 
00069 
00071 
00073 #define PFLN {printf("DEBUG PRINT FILE %s LINE %d\n",__FILE__,__LINE__);}
00074 #define _MAX_NUM_POLYGONS_ 99
00075 
00076 
00078 typedef struct
00079 {
00080         cv::Mat image;
00081         cv_bridge::CvImagePtr cv_ptr;
00082         ros::Time image_ts;
00083         bool msg_received;
00084         tf::StampedTransform tf;
00085                 
00086 }t_cam;
00087 
00089 
00091 
00092 
00094 
00096 #ifdef _texturize_polygon_primitives_CPP_
00097 
00098 #define _EXTERN_ 
00099 
00100 #else
00101 
00102 #define _EXTERN_ extern
00103 
00104 #endif
00105 
00106 _EXTERN_ std::map<std::string, c_polygon_primitive_with_texture> pmap; 
00107 _EXTERN_ t_cam cam_roof_fc;
00108 _EXTERN_ t_cam cam_roof_fl;
00109 _EXTERN_ t_cam cam_roof_fr;
00110 _EXTERN_ t_cam cam_roof_rc;
00111 _EXTERN_ t_cam cam_roof_fc_6mm;
00112 _EXTERN_ tf::TransformListener* p_listener;
00113 _EXTERN_ ros::NodeHandle* p_node;
00114 _EXTERN_ ros::Publisher* p_markerarray_pub;
00115 _EXTERN_ ros::Time mission_start;
00116 
00117 #endif
00118