Skip to content

Class ILLIXR::network::network_backend

ClassList > ILLIXR > network > network_backend

Inherits the following classes: ILLIXR::phonebook::service

Inherited by the following classes: ILLIXR::tcp_network_backend

Public Functions

Type Name
virtual bool is_topic_networked (std::string topic_name) = 0
virtual void topic_create (std::string topic_name, topic_config & config) = 0
virtual void topic_send (std::string topic_name, std::string && message) = 0

Public Functions inherited from ILLIXR::phonebook::service

See ILLIXR::phonebook::service

Type Name
virtual ~service () = default

Public Functions Documentation

function is_topic_networked

virtual bool ILLIXR::network::network_backend::is_topic_networked (
    std::string topic_name
) = 0

Used to query if a topic is networked.

The backend should coordinate with the other endpoints to determine if a topic is networked. There are two cases where this should return true: * topic_create has been called with the same topic_name * topic_create has not been called with the same topic_name, but the topic is networked by another endpoint The backend implementation should coordinate with the other endpoints to determine if a topic is networked.

Parameters:

  • topic_name The name of the topic.

function topic_create

virtual void ILLIXR::network::network_backend::topic_create (
    std::string topic_name,
    topic_config & config
) = 0

Called when a topic is created.

The backend must maintain a list of networked topics. This adds a topic to that list.

Parameters:

  • topic_name The name of the topic.
  • config The configuration of the topic.

function topic_send

virtual void ILLIXR::network::network_backend::topic_send (
    std::string topic_name,
    std::string && message
) = 0

Called when a message is requested to be sent on a topic by a plugin.

Parameters:

  • topic_name The name of the topic.
  • message The message to send.


The documentation for this class was generated from the following file /home/friedel/devel/ILLIXR/include/illixr/network/network_backend.hpp