my_database_publ_alg_node.h
Go to the documentation of this file.
00001 // Copyright (C) 2010-2011 Institut de Robotica i Informatica Industrial, CSIC-UPC.
00002 // Author 
00003 // All rights reserved.
00004 //
00005 // This file is part of iri-ros-pkg
00006 // iri-ros-pkg is free software: you can redistribute it and/or modify
00007 // it under the terms of the GNU Lesser General Public License as published by
00008 // the Free Software Foundation, either version 3 of the License, or
00009 // at your option) any later version.
00010 //
00011 // This program is distributed in the hope that it will be useful,
00012 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00013 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014 // GNU Lesser General Public License for more details.
00015 //
00016 // You should have received a copy of the GNU Lesser General Public License
00017 // along with this program.  If not, see <http://www.gnu.org/licenses/>.
00018 // 
00019 // IMPORTANT NOTE: This code has been generated through a script from the 
00020 // iri_ros_scripts. Please do NOT delete any comments to guarantee the correctness
00021 // of the scripts. ROS topics can be easly add by using those scripts. Please
00022 // refer to the IRI wiki page for more information:
00023 // http://wikiri.upc.es/index.php/Robotics_Lab
00024 
00025 #ifndef _my_database_publ_alg_node_h_
00026 #define _my_database_publ_alg_node_h_
00027 
00028 //IRI external library
00029 #include "camera_people_detector.h"
00030 
00031 #include <iri_base_algorithm/iri_base_algorithm.h>
00032 #include "my_database_publ_alg.h"
00033 
00034 // [publisher subscriber headers]
00035 #include <geometry_msgs/PoseArray.h>
00036 #include <sensor_msgs/CameraInfo.h>
00037 #include <sensor_msgs/LaserScan.h>
00038 #include <image_transport/image_transport.h>
00039 #include <cv_bridge/cv_bridge.h>
00040 #include <opencv/cv.h>
00041 #include <opencv/highgui.h>
00042 //#include <iostream>
00043 #include <fstream>
00044 
00045 //other ros stuff
00046 #include <tf/tfMessage.h>
00047 #include <tf/transform_broadcaster.h>
00048 #include <tf/transform_listener.h>
00049 #include <image_geometry/pinhole_camera_model.h>
00050 
00051 
00052 // [service client headers]
00053 
00054 // [action server client headers]
00055 
00060 class MyDatabasePublAlgNode : public algorithm_base::IriBaseAlgorithm<MyDatabasePublAlgorithm>
00061 {
00062   private:
00063 
00064     // [publisher attributes]
00065     ros::Publisher goal_publisher_;
00066     geometry_msgs::PoseArray PoseArray_msg_;
00067 //     ros::Publisher camera_info_publisher_;
00068     sensor_msgs::CameraInfo CameraInfo_msg_;
00069         
00070         image_transport::ImageTransport it_;
00071 //      image_transport::Publisher image_pub_;
00072     image_transport::CameraPublisher image_pub_;
00073 
00074     //cv_bridge::CvImagePtr cv_ptr;
00075         cv_bridge::CvImage img_msg_;
00076 
00077     ros::Publisher scan_publisher_;
00078     sensor_msgs::LaserScan LaserScan_msg_;
00079 
00080     ros::Publisher scan_proc_publisher_;
00081     sensor_msgs::LaserScan LaserScan_proc_msg_;
00082 
00083         std_msgs::Header header_;
00084         unsigned int iit_database;
00085 
00086     // [subscriber attributes]
00087 
00088     // [service attributes]
00089 
00090     // [client attributes]
00091 
00092     // [action server attributes]
00093 
00094     // [action client attributes]
00095 
00096 
00097         void update_msgs();
00098         void init_sensor_info();
00099     CCamera_People_Detector cam_detector_;
00100     image_geometry::PinholeCameraModel cam_model_;
00101     tf::TransformListener tf_listener_;
00102         std::vector<std::vector<cv::Rect> > box_detections;
00103 
00104   public:
00111     MyDatabasePublAlgNode(void);
00112 
00119     ~MyDatabasePublAlgNode(void);
00120 
00121   protected:
00134     void mainNodeThread(void);
00135 
00148     void node_config_update(Config &config, uint32_t level);
00149 
00156     void addNodeDiagnostics(void);
00157 
00158     // [diagnostic functions]
00159     
00160     // [test functions]
00161 };
00162 
00163 #endif


iri_my_database_publ
Author(s): Gonzalo Ferrer
autogenerated on Fri Dec 6 2013 23:31:04