Firmware
Classes | Public Member Functions | Static Public Member Functions | List of all members
uORB::FastRpcChannel Class Reference
Inheritance diagram for uORB::FastRpcChannel:
uORBCommunicator::IChannel

Public Member Functions

virtual int16_t topic_advertised (const char *messageName)
 Interface to notify the remote entity of a topic being advertised. More...
 
virtual int16_t topic_unadvertised (const char *messageName)
 Interface to notify the remote entity of a topic being unadvertised and is no longer publishing messages. More...
 
virtual int16_t add_subscription (const char *messageName, int32_t msgRateInHz)
 Interface to notify the remote entity of interest of a subscription for a message. More...
 
virtual int16_t remove_subscription (const char *messageName)
 Interface to notify the remote entity of removal of a subscription. More...
 
virtual int16_t register_handler (uORBCommunicator::IChannelRxHandler *handler)
 Register Message Handler. More...
 
virtual int16_t send_message (const char *messageName, int32_t length, uint8_t *data)
 Sends the data message over the communication link. More...
 
int16_t get_data (int32_t *msg_type, char *topic_name, int32_t topic_name_len, uint8_t *data, int32_t data_len_in_bytes, int32_t *bytes_returned)
 
int16_t get_bulk_data (uint8_t *buffer, int32_t max_size_in_bytes, int32_t *returned_bytes, int32_t *topic_count)
 
int16_t is_subscriber_present (const char *messageName, int32_t *status)
 
int16_t unblock_get_data_method ()
 
uORBCommunicator::IChannelRxHandlerGetRxHandler ()
 
void AddRemoteSubscriber (const std::string &messageName)
 
void RemoveRemoteSubscriber (const std::string &messageName)
 

Static Public Member Functions

static uORB::FastRpcChannelGetInstance ()
 static method to get the IChannel Implementor.
 

Member Function Documentation

§ add_subscription()

int16_t uORB::FastRpcChannel::add_subscription ( const char *  messageName,
int32_t  msgRateInHz 
)
virtual

Interface to notify the remote entity of interest of a subscription for a message.

Parameters
messageNameThis represents the uORB message name; This message name should be globally unique.
msgRateThe max rate at which the subscriber can accept the messages.
Returns
0 = success; This means the messages is successfully sent to the receiver Note: This does not mean that the receiver as received it. otherwise = failure.

Implements uORBCommunicator::IChannel.

§ register_handler()

int16_t uORB::FastRpcChannel::register_handler ( uORBCommunicator::IChannelRxHandler handler)
virtual

Register Message Handler.

This is internal for the IChannel implementer*

Implements uORBCommunicator::IChannel.

§ remove_subscription()

int16_t uORB::FastRpcChannel::remove_subscription ( const char *  messageName)
virtual

Interface to notify the remote entity of removal of a subscription.

Parameters
messageNameThis represents the uORB message name; This message name should be globally unique.
Returns
0 = success; This means the messages is successfully sent to the receiver Note: This does not necessarily mean that the receiver as received it. otherwise = failure.

Implements uORBCommunicator::IChannel.

§ send_message()

int16_t uORB::FastRpcChannel::send_message ( const char *  messageName,
int32_t  length,
uint8_t *  data 
)
virtual

Sends the data message over the communication link.

Parameters
messageNameThis represents the uORB message name; This message name should be globally unique.
lengthThe length of the data buffer to be sent.
dataThe actual data to be sent.
Returns
0 = success; This means the messages is successfully sent to the receiver Note: This does not mean that the receiver as received it. otherwise = failure.

Implements uORBCommunicator::IChannel.

§ topic_advertised()

int16_t uORB::FastRpcChannel::topic_advertised ( const char *  messageName)
virtual

Interface to notify the remote entity of a topic being advertised.

Parameters
messageNameThis represents the uORB message name(aka topic); This message name should be globally unique.
Returns
0 = success; This means the messages is successfully sent to the receiver Note: This does not mean that the receiver as received it. otherwise = failure.

Implements uORBCommunicator::IChannel.

§ topic_unadvertised()

int16_t uORB::FastRpcChannel::topic_unadvertised ( const char *  messageName)
virtual

Interface to notify the remote entity of a topic being unadvertised and is no longer publishing messages.

Parameters
messageNameThis represents the uORB message name(aka topic); This message name should be globally unique.
Returns
0 = success; This means the messages is successfully sent to the receiver Note: This does not mean that the receiver as received it. otherwise = failure.

The documentation for this class was generated from the following files: