iceoryx2
C++ Language Bindings
Loading...
Searching...
No Matches
iox2::Subscriber< S, Payload, UserHeader > Class Template Reference

The receiving endpoint of a publish-subscribe communication. More...

#include <subscriber.hpp>

Public Member Functions

 Subscriber (Subscriber &&rhs) noexcept
 
auto operator= (Subscriber &&rhs) noexcept -> Subscriber &
 
 ~Subscriber ()
 
 Subscriber (const Subscriber &)=delete
 
auto operator= (const Subscriber &) -> Subscriber &=delete
 
auto id () const -> UniqueSubscriberId
 Returns the [UniqueSubscriberId] of the [Subscriber].
 
auto buffer_size () const -> uint64_t
 Returns the internal buffer size of the [Subscriber].
 
auto receive () const -> bb::Expected< bb::Optional< Sample< S, Payload, UserHeader > >, ReceiveError >
 
auto has_samples () const -> bb::Expected< bool, ConnectionFailure >
 

Friends

template<ServiceType , typename , typename >
class PortFactorySubscriber
 

Detailed Description

template<ServiceType S, typename Payload, typename UserHeader>
class iox2::Subscriber< S, Payload, UserHeader >

The receiving endpoint of a publish-subscribe communication.

Definition at line 29 of file subscriber.hpp.

Constructor & Destructor Documentation

◆ Subscriber() [1/2]

template<ServiceType S, typename Payload , typename UserHeader >
iox2::Subscriber< S, Payload, UserHeader >::Subscriber ( Subscriber< S, Payload, UserHeader > &&  rhs)
inlinenoexcept

Definition at line 67 of file subscriber.hpp.

◆ ~Subscriber()

template<ServiceType S, typename Payload , typename UserHeader >
iox2::Subscriber< S, Payload, UserHeader >::~Subscriber ( )
inline

Definition at line 83 of file subscriber.hpp.

◆ Subscriber() [2/2]

template<ServiceType S, typename Payload , typename UserHeader >
iox2::Subscriber< S, Payload, UserHeader >::Subscriber ( const Subscriber< S, Payload, UserHeader > &  )
delete

Member Function Documentation

◆ buffer_size()

template<ServiceType S, typename Payload , typename UserHeader >
auto iox2::Subscriber< S, Payload, UserHeader >::buffer_size ( ) const -> uint64_t
inline

Returns the internal buffer size of the [Subscriber].

Definition at line 116 of file subscriber.hpp.

◆ has_samples()

template<ServiceType S, typename Payload , typename UserHeader >
auto iox2::Subscriber< S, Payload, UserHeader >::has_samples ( ) const -> bb::Expected<bool, ConnectionFailure>
inline

Returns true when the [Subscriber] has [Sample]s that can be acquired via [Subscriber::receive()], otherwise false.

Definition at line 96 of file subscriber.hpp.

References iox2::bb::err().

◆ id()

template<ServiceType S, typename Payload , typename UserHeader >
auto iox2::Subscriber< S, Payload, UserHeader >::id ( ) const -> UniqueSubscriberId
inline

Returns the [UniqueSubscriberId] of the [Subscriber].

Definition at line 108 of file subscriber.hpp.

◆ operator=() [1/2]

template<ServiceType S, typename Payload , typename UserHeader >
auto iox2::Subscriber< S, Payload, UserHeader >::operator= ( const Subscriber< S, Payload, UserHeader > &  ) -> Subscriber &=delete
delete

◆ operator=() [2/2]

template<ServiceType S, typename Payload , typename UserHeader >
auto iox2::Subscriber< S, Payload, UserHeader >::operator= ( Subscriber< S, Payload, UserHeader > &&  rhs) -> Subscriber&
inlinenoexcept

Definition at line 72 of file subscriber.hpp.

◆ receive()

template<ServiceType S, typename Payload , typename UserHeader >
auto iox2::Subscriber< S, Payload, UserHeader >::receive ( ) const -> bb::Expected<bb::Optional<Sample<S, Payload, UserHeader>>, ReceiveError>
inline

Receives a [Sample] from [Publisher]. If no sample could be received [None] is returned. If a failure occurs [ReceiveError] is returned.

Definition at line 121 of file subscriber.hpp.

References iox2::bb::err(), and iox2::bb::NULLOPT.

Friends And Related Symbol Documentation

◆ PortFactorySubscriber

template<ServiceType S, typename Payload , typename UserHeader >
template<ServiceType , typename , typename >
friend class PortFactorySubscriber
friend

Definition at line 54 of file subscriber.hpp.


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