00001 00061 #ifndef __FACE_DETECTOR_NODE_H__ 00062 #define __FACE_DETECTOR_NODE_H__ 00063 00064 #ifdef __LINUX__ 00065 #include "cob_people_detection/face_detector.h" 00066 #else 00067 #endif 00068 00069 // ROS includes 00070 #include <ros/ros.h> 00071 #include <ros/package.h> // use as: directory_ = ros::package::getPath("cob_people_detection") + "/common/files/windows/"; 00072 // ROS message includes 00073 #include <sensor_msgs/Image.h> 00074 #include <cob_perception_msgs/ColorDepthImageArray.h> 00075 00076 namespace ipa_PeopleDetector 00077 { 00078 00079 class FaceDetectorNode 00080 { 00081 public: 00082 00085 FaceDetectorNode(ros::NodeHandle nh); 00086 ~FaceDetectorNode(void); 00087 00088 00089 protected: 00090 00092 void head_positions_callback(const cob_perception_msgs::ColorDepthImageArray::ConstPtr& head_positions); 00093 00094 ros::NodeHandle node_handle_; 00095 00096 ros::Subscriber head_position_subscriber_; 00097 00098 ros::Publisher face_position_publisher_; 00099 00100 FaceDetector face_detector_; 00101 00102 // parameters 00103 std::string data_directory_; 00104 bool display_timing_; 00105 }; 00106 00107 } // end namespace 00108 00109 #endif // __FACE_DETECTOR_NODE_H__