Class DesertSubscriber
Defined in File DesertSubscriber.h
Class Documentation
-
class DesertSubscriber
Public Functions
-
DesertSubscriber(std::string topic_name, const rosidl_message_type_support_t *type_supports, rmw_gid_t gid)
Create a subscriber.
- Parameters:
topic_name – Name of the topic used for the registration
type_supports – Pointer to the message data structure coming from the ROS upper layers
gid – Global identifier of the entity
-
bool has_data()
Check if there is available data for the registered topic.
The has_data function calls the interpret_packets method in RxStream and then verifies if in the map of subscriber packets there is a correspondence with the topic name of the current instance.
- Returns:
True if data is present otherwise false
-
void read_data(void *msg)
Read a publication from the publisher.
The read_data function interprets a transmission with the topic name present in the current instance deserializing the message using the method from the MessageSerialization namespace. A discrimination is made between C members and C++ members based on the type support.
- Parameters:
msg – Pointer to the memory location used to store the message
-
rmw_gid_t get_gid()
Retreive the gid of the current entity.
This function returns the global identifier of the current entity in the rmw format.
- Returns:
Global identifier of the entity
-
std::string get_topic_name()
Retreive the topic name of the current entity.
This function returns a string containing the topic name of the current entity.
- Returns:
Name of the topic
-
std::string get_type_name()
Retreive the message type of the current entity.
This function returns a string containing the message type name of the current entity.
- Returns:
Type of the message
-
DesertSubscriber(std::string topic_name, const rosidl_message_type_support_t *type_supports, rmw_gid_t gid)