28 #ifndef ROSCPP_SERVICE_PUBLICATION_H 29 #define ROSCPP_SERVICE_PUBLICATION_H 35 #include <boost/thread/mutex.hpp> 37 #include <boost/shared_ptr.hpp> 38 #include <boost/shared_array.hpp> 39 #include <boost/thread.hpp> 40 #include <boost/enable_shared_from_this.hpp> 48 class ServiceClientLink;
64 ServicePublication(
const std::string& name,
const std::string &
md5sum,
const std::string& data_type,
const std::string& request_data_type,
77 void addServiceClientLink(
const ServiceClientLinkPtr& link);
81 void removeServiceClientLink(
const ServiceClientLinkPtr& link);
96 const std::string&
getName() {
return name_; }
99 void dropAllConnections();
121 #endif // ROSCPP_SERVICE_PUBLICATION_H const std::string & getMD5Sum()
const std::string & getName()
boost::mutex client_links_mutex_
Abstract interface for a queue used to handle all callbacks within roscpp.
std::vector< ServiceClientLinkPtr > V_ServiceClientLink
const std::string & getResponseDataType()
CallbackQueueInterface * callback_queue_
Manages an advertised service.
boost::weak_ptr< void const > VoidConstWPtr
ServiceCallbackHelperPtr helper_
bool isDropped()
Returns whether or not this service server is valid.
const std::string & getRequestDataType()
VoidConstWPtr tracked_object_
const std::string & getDataType()
std::string response_data_type_
V_ServiceClientLink client_links_
boost::shared_ptr< ServicePublication > ServicePublicationPtr
boost::shared_ptr< ServiceClientLink > ServiceClientLinkPtr
std::string request_data_type_