Tracks Topic objects See L{get_topic_manager()} for singleton access
Method | __init__ |
ctor. |
Method | acquire |
Acquire a L{_TopicImpl} for the specified topic (create one if it doesn't exist). Every L{Topic} instance has a _TopicImpl that actually controls the topic resources so that multiple Topic instances use the same underlying connections... |
Method | check |
Check all registered publication and subscriptions. |
Method | close |
Close all registered publication and subscriptions. Manager is no longer usable after close. |
Method | get |
Get the L{_TopicImpl} for the specified topic. This is mainly for testing purposes. Unlike acquire_impl, it does not alter the ref count. @param resolved_name: resolved topic name @type resolved_name: str @param reg_type: L{rospy... |
Method | get |
get topic publisher and subscriber connection info for getBusInfo() api @return: [bus info stats] |
Method | get |
get topic publisher and subscriber stats for getBusStats() api @return: [publisherStats, subscriberStats]. |
Method | get |
Undocumented |
Method | get |
@param resolved_name: resolved topic name @type resolved_name: str @return: list of L{_PublisherImpl}s @rtype: [L{_PublisherImpl}] |
Method | get |
@param resolved_name: topic name @type resolved_name: str @return: subscriber for the specified topic. @rtype: L{_SubscriberImpl} |
Method | get |
Undocumented |
Method | get |
@return: list of topic names this node subscribes to/publishes @rtype: [str] |
Method | has |
@param resolved_name: resolved topic name @type resolved_name: str @return: True if manager has publication for specified topic @rtype: bool |
Method | has |
@param resolved_name: resolved topic name @type resolved_name: str @return: True if manager has subscription for specified topic @rtype: bool |
Method | release |
Release a L_{TopicImpl} for the specified topic. |
Instance Variable | closed |
Undocumented |
Instance Variable | lock |
Undocumented |
Instance Variable | pubs |
Undocumented |
Instance Variable | subs |
Undocumented |
Instance Variable | topics |
Undocumented |
Method | _add |
Add L{_TopicImpl} instance to rmap @param ps: a pub/sub impl instance @type ps: L{_TopicImpl} @param rmap: { topic: _TopicImpl} rmap to record instance in @type rmap: dict @param reg_type: L{rospy.registration... |
Method | _get |
Undocumented |
Method | _recalculate |
recalculate self.topics. expensive |
Method | _remove |
Remove L{_TopicImpl} instance from rmap @param ps: a pub/sub impl instance @type ps: L{_TopicImpl} @param rmap: topic->_TopicImpl rmap to remove instance in @type rmap: dict @param reg_type: L{rospy. |
Acquire a L{_TopicImpl} for the specified topic (create one if it doesn't exist). Every L{Topic} instance has a _TopicImpl that actually controls the topic resources so that multiple Topic instances use the same underlying connections. 'Acquiring' a topic implementation marks that another Topic instance is using the TopicImpl.
@param resolved_name: resolved topic name @type resolved_name: str
@param reg_type: L{rospy.registration.Registration.PUB} or L{rospy.registration.Registration.SUB} @type reg_type: str
@param data_class: message class for topic @type data_class: L{Message} class
Get the L{_TopicImpl} for the specified topic. This is mainly for testing purposes. Unlike acquire_impl, it does not alter the ref count. @param resolved_name: resolved topic name @type resolved_name: str @param reg_type: L{rospy.registration.Registration.PUB} or L{rospy.registration.Registration.SUB} @type reg_type: str
get topic publisher and subscriber connection info for getBusInfo() api @return: [bus info stats]
See getBusInfo() API for more data structure details.
@rtype: list
get topic publisher and subscriber stats for getBusStats() api @return: [publisherStats, subscriberStats].
See getBusStats() API for more data structure details.
@rtype: list
@param resolved_name: resolved topic name @type resolved_name: str @return: list of L{_PublisherImpl}s @rtype: [L{_PublisherImpl}]
@param resolved_name: topic name @type resolved_name: str @return: subscriber for the specified topic. @rtype: L{_SubscriberImpl}
@param resolved_name: resolved topic name @type resolved_name: str @return: True if manager has publication for specified topic @rtype: bool
@param resolved_name: resolved topic name @type resolved_name: str @return: True if manager has subscription for specified topic @rtype: bool
Release a L_{TopicImpl} for the specified topic.
Every L{Topic} instance has a _TopicImpl that actually controls the topic resources so that multiple Topic instances use the same underlying connections. 'Acquiring' a topic implementation marks that another Topic instance is using the TopicImpl.
@param resolved_name: resolved topic name @type resolved_name: str @param reg_type: L{rospy.registration.Registration.PUB} or L{rospy.registration.Registration.SUB} @type reg_type: str
Add L{_TopicImpl} instance to rmap @param ps: a pub/sub impl instance @type ps: L{_TopicImpl} @param rmap: { topic: _TopicImpl} rmap to record instance in @type rmap: dict @param reg_type: L{rospy.registration.Registration.PUB} or L{rospy.registration.Registration.SUB} @type reg_type: str