35 #ifndef POLLED_CAMERA_PUBLICATION_SERVER_H 
   36 #define POLLED_CAMERA_PUBLICATION_SERVER_H 
   39 #include <sensor_msgs/Image.h> 
   40 #include <sensor_msgs/CameraInfo.h> 
   41 #include "polled_camera/GetPolledImage.h" 
   47 #ifdef ROS_BUILD_SHARED_LIBS // ros is being built around shared libraries 
   48   #ifdef polled_camera_EXPORTS // we are building a shared lib/dll 
   49     #define POLLED_CAMERA_DECL ROS_HELPER_EXPORT 
   50   #else // we are using shared lib/dll 
   51     #define POLLED_CAMERA_DECL ROS_HELPER_IMPORT 
   53 #else // ros is being built around static libraries 
   54   #define POLLED_CAMERA_DECL 
   83   typedef boost::function<void (polled_camera::GetPolledImage::Request&,
 
   84                                 polled_camera::GetPolledImage::Response&,
 
   95   std::string getService() 
const;
 
   97   operator void*() 
const;
 
  104                     const DriverCallback& cb, 
const ros::VoidPtr& tracked_object);
 
  127                             void(T::*fp)(polled_camera::GetPolledImage::Request&,
 
  128                                          polled_camera::GetPolledImage::Response&,
 
  129                                          sensor_msgs::Image&, sensor_msgs::CameraInfo&),
 
  132   return advertise(nh, service, boost::bind(fp, obj, boost::placeholders::_1, boost::placeholders::_2, boost::placeholders::_3, boost::placeholders::_4));
 
  140                             void(T::*fp)(polled_camera::GetPolledImage::Request&,
 
  141                                          polled_camera::GetPolledImage::Response&,
 
  142                                          sensor_msgs::Image&, sensor_msgs::CameraInfo&),
 
  145   return advertise(nh, service, boost::bind(fp, obj.get(), boost::placeholders::_1, boost::placeholders::_2, boost::placeholders::_3, boost::placeholders::_4), obj);