VLink 2.0.0
A high-performance communication middleware
Loading...
Searching...
No Matches
subscriber_impl.h File Reference

Abstract base class for all transport-specific subscriber implementations. More...

#include "./node_impl.h"
Include dependency graph for subscriber_impl.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

 Transport-agnostic base for subscriber node implementations. More...

Namespaces

Detailed Description

Abstract base class for all transport-specific subscriber implementations.

SubscriberImpl is the intermediate layer between the generic Subscriber<T> template and a concrete transport backend (e.g. DdsSubscriberImpl, ShmSubscriberImpl). It inherits from NodeImpl and adds receive-side semantics:

  • Two listen overloads: a serialised MsgCallback for network transports and a zero-copy IntraMsgCallback for the intra:// backend.
  • Optional latency and sample-loss tracking via CalculateSample.
  • A public is_listened flag indicating whether a listener has been installed.
Note
Concrete subclasses must implement listen(MsgCallback&&). listen(IntraMsgCallback&&) is only overridden by IntraSubscriberImpl; all other transports inherit the base no-op that logs a warning and returns false.