module documentation

rospy implementation of topics.

Client API

L{Publisher} and L{Subscriber} are the client API for topics.

Internal Implementation

Internally, L{_TopicImpl} instances (_PublisherImpl/_SubscriberImpl) are used to manage actual transport connections. The L{_TopicManager} is responsible for tracking the system-wide state of publications and subscriptions as well as the L{_TopicImpl} instances. More info is below.

L{_TopicManager}

The L{_TopicManager} does the backend topic bookkeeping for the local node. Use L{get_topic_manager()} to access singleton. Actual topic implementations are done through the L{_TopicImpl}/L{_PublisherImpl}/L{_SubscriberImpl} hierarchy. Client code generates instances of type L{Publisher}/L{Subscriber}, which enable to client to create multiple publishers/subscribers of that topic that get controlled access to the underlying share connections.

Common parent classes for all rospy topics. The rospy topic autogenerators create classes that are children of these implementations.

Class Poller select.poll/kqueue abstraction to handle socket failure detection on multiple platforms. NOT thread-safe.
Class Topic Base class of L{Publisher} and L{Subscriber}
Function isstring Undocumented
Variable python3 Undocumented
Class _PublisherImpl Underlying L{_TopicImpl} implementation for publishers.
Class _SubscriberImpl Underlying L{_TopicImpl} implementation for subscriptions.
Class _TopicImpl Base class of internal topic implementations. Each topic has a singleton _TopicImpl implementation for managing the underlying connections.
Class _TopicManager Tracks Topic objects See L{get_topic_manager()} for singleton access
Variable _logger Undocumented
def isstring(s):

Undocumented

python3: int =

Undocumented

_logger =

Undocumented