28 #ifndef ROSCPP_SERVICE_MANAGER_H 29 #define ROSCPP_SERVICE_MANAGER_H 36 #include <boost/thread/mutex.hpp> 37 #include <boost/thread/recursive_mutex.hpp> 51 class ConnectionManager;
57 static const ServiceManagerPtr& instance();
85 const std::string& request_md5sum,
const std::string& response_md5sum,
100 bool lookupService(
const std::string& name, std::string& serv_host, uint32_t& serv_port);
116 bool unadvertiseService(
const std::string& serv_name);
124 bool isServiceAdvertised(
const std::string& serv_name);
125 bool unregisterService(
const std::string& service);
145 #endif // ROSCPP_SERVICE_MANAGER_H
ConnectionManagerPtr connection_manager_
volatile bool shutting_down_
L_ServiceServerLink service_server_links_
ROSCPP_DECL void start()
Actually starts the internals of the node (spins up threads, starts the network polling and xmlrpc lo...
L_ServicePublication service_publications_
boost::shared_ptr< ServiceManager > ServiceManagerPtr
boost::shared_ptr< XMLRPCManager > XMLRPCManagerPtr
std::list< ServiceServerLinkPtr > L_ServiceServerLink
PollManagerPtr poll_manager_
std::list< ServicePublicationPtr > L_ServicePublication
boost::shared_ptr< ConnectionManager > ConnectionManagerPtr
Encapsulates all options available for creating a ServiceServer.
std::map< std::string, std::string > M_string
boost::mutex service_server_links_mutex_
ROSCPP_DECL void shutdown()
Disconnects everything and unregisters from the master. It is generally not necessary to call this fu...
boost::mutex service_publications_mutex_
boost::recursive_mutex shutting_down_mutex_
XMLRPCManagerPtr xmlrpc_manager_
boost::shared_ptr< PollManager > PollManagerPtr