holoscan::SessionDiscoveryFrontend

Beta
View as Markdown

PubSubDiscovery frontend that delegates to a shared InMemoryPubSubSession.

Each instance maintains its own per-participant callbacks while forwarding endpoint operations to the shared InMemoryDiscovery backend.

#include <holoscan/in_memory_pubsub_session.hpp>

Inherits from: nvidia::gxf::PubSubDiscovery (public)

This class is marked final.


Constructors

SessionDiscoveryFrontend

holoscan::SessionDiscoveryFrontend::SessionDiscoveryFrontend(holoscan::SessionDiscoveryFrontend::SessionDiscoveryFrontend(
std::shared_ptr<InMemoryPubSubSession> session,
std::shared_ptr<InMemorySessionParticipant> participant
)

Methods

initialize

nvidia::gxf::Expected<void> holoscan::SessionDiscoveryFrontend::initialize() override

shutdown

nvidia::gxf::Expected<void> holoscan::SessionDiscoveryFrontend::shutdown() override

is_initialized

bool holoscan::SessionDiscoveryFrontend::is_initialized() const override

discovery_model

nvidia::gxf::DiscoveryModel holoscan::SessionDiscoveryFrontend::discovery_model() const override

announce_publisher

nvidia::gxf::Expected<void> holoscan::SessionDiscoveryFrontend::announce_publisher(
const nvidia::gxf::PublisherInfo &info
) override

announce_subscriber

nvidia::gxf::Expected<void> holoscan::SessionDiscoveryFrontend::announce_subscriber(
const nvidia::gxf::SubscriberInfo &info
) override

remove_publisher

nvidia::gxf::Expected<void> holoscan::SessionDiscoveryFrontend::remove_publisher(
const nvidia::gxf::PublisherGid &gid
) override

remove_subscriber

nvidia::gxf::Expected<void> holoscan::SessionDiscoveryFrontend::remove_subscriber(
const nvidia::gxf::SubscriberGid &gid
) override

query_publishers

nvidia::gxf::Expected<std::vector<nvidia::gxf::PublisherInfo>> holoscan::SessionDiscoveryFrontend::query_publishers(
const std::string &topic_name
) override

query_subscribers

nvidia::gxf::Expected<std::vector<nvidia::gxf::SubscriberInfo>> holoscan::SessionDiscoveryFrontend::query_subscribers(
const std::string &topic_name
) override

get_all_topics

nvidia::gxf::Expected<std::vector<std::string>> holoscan::SessionDiscoveryFrontend::get_all_topics() override

set_on_publisher_discovered

void holoscan::SessionDiscoveryFrontend::set_on_publisher_discovered(
nvidia::gxf::PubSubDiscovery::PublisherDiscoveredCallback callback
) override

set_on_subscriber_discovered

void holoscan::SessionDiscoveryFrontend::set_on_subscriber_discovered(
nvidia::gxf::PubSubDiscovery::SubscriberDiscoveredCallback callback
) override

set_on_publisher_lost

void holoscan::SessionDiscoveryFrontend::set_on_publisher_lost(
nvidia::gxf::PubSubDiscovery::PublisherLostCallback callback
) override

set_on_subscriber_lost

void holoscan::SessionDiscoveryFrontend::set_on_subscriber_lost(
nvidia::gxf::PubSubDiscovery::SubscriberLostCallback callback
) override

replay_registered_endpoints

nvidia::gxf::Expected<void> holoscan::SessionDiscoveryFrontend::replay_registered_endpoints()

Member variables

NameTypeDescription
session_std::shared_ptr< InMemoryPubSubSession >
participant_std::shared_ptr< InMemorySessionParticipant >
initialized_std::atomic< bool >