A low-level streaming server. More...
#include <Server.h>
Public Types | |
using | protocol_type = typename underlying_server::protocol_type |
using | stream_id = carla::streaming::detail::stream_id_type |
using | token_type = carla::streaming::detail::token_type |
using | underlying_server = T |
Public Member Functions | |
void | CloseStream (carla::streaming::detail::stream_id_type id) |
void | DisableForROS (stream_id sensor_id) |
void | EnableForROS (stream_id sensor_id) |
underlying_server::endpoint | GetLocalEndpoint () const |
token_type | GetToken (stream_id sensor_id) |
bool | IsEnabledForROS (stream_id sensor_id) |
Stream | MakeStream () |
template<typename InternalEPType , typename ExternalEPType > | |
Server (boost::asio::io_context &io_context, detail::EndPoint< protocol_type, InternalEPType > internal_ep, detail::EndPoint< protocol_type, ExternalEPType > external_ep) | |
template<typename InternalEPType > | |
Server (boost::asio::io_context &io_context, detail::EndPoint< protocol_type, InternalEPType > internal_ep) | |
template<typename... EPArgs> | |
Server (boost::asio::io_context &io_context, EPArgs &&... args) | |
void | SetSynchronousMode (bool is_synchro) |
void | SetTimeout (time_duration timeout) |
Private Member Functions | |
void | StartServer () |
Private Attributes | |
detail::Dispatcher | _dispatcher |
underlying_server | _server |
A low-level streaming server.
Each new stream has a token associated, this token can be used by a client to subscribe to the stream. This server requires an external io_context running.
Definition at line 26 of file streaming/low_level/Server.h.
using carla::streaming::low_level::Server< T >::protocol_type = typename underlying_server::protocol_type |
Definition at line 31 of file streaming/low_level/Server.h.
using carla::streaming::low_level::Server< T >::stream_id = carla::streaming::detail::stream_id_type |
Definition at line 35 of file streaming/low_level/Server.h.
using carla::streaming::low_level::Server< T >::token_type = carla::streaming::detail::token_type |
Definition at line 33 of file streaming/low_level/Server.h.
using carla::streaming::low_level::Server< T >::underlying_server = T |
Definition at line 29 of file streaming/low_level/Server.h.
|
inlineexplicit |
Definition at line 38 of file streaming/low_level/Server.h.
|
inlineexplicit |
Definition at line 48 of file streaming/low_level/Server.h.
|
inlineexplicit |
Definition at line 57 of file streaming/low_level/Server.h.
|
inline |
Definition at line 72 of file streaming/low_level/Server.h.
Referenced by carla::streaming::Server::CloseStream().
|
inline |
Definition at line 88 of file streaming/low_level/Server.h.
Referenced by carla::streaming::Server::DisableForROS().
|
inline |
Definition at line 84 of file streaming/low_level/Server.h.
Referenced by carla::streaming::Server::EnableForROS().
|
inline |
Definition at line 60 of file streaming/low_level/Server.h.
Referenced by carla::streaming::Server::GetLocalEndpoint().
|
inline |
Definition at line 80 of file streaming/low_level/Server.h.
Referenced by carla::streaming::Server::GetToken().
|
inline |
Definition at line 92 of file streaming/low_level/Server.h.
Referenced by carla::streaming::Server::IsEnabledForROS().
|
inline |
Definition at line 68 of file streaming/low_level/Server.h.
Referenced by carla::streaming::Server::MakeStream(), and TEST().
|
inline |
Definition at line 76 of file streaming/low_level/Server.h.
Referenced by carla::streaming::Server::SetSynchronousMode().
|
inline |
Definition at line 64 of file streaming/low_level/Server.h.
Referenced by carla::streaming::Server::SetTimeout(), and TEST().
|
inlineprivate |
Definition at line 98 of file streaming/low_level/Server.h.
Referenced by carla::streaming::low_level::Server< detail::tcp::Server >::Server().
|
private |
Definition at line 113 of file streaming/low_level/Server.h.
Referenced by carla::streaming::low_level::Server< detail::tcp::Server >::CloseStream(), carla::streaming::low_level::Server< detail::tcp::Server >::DisableForROS(), carla::streaming::low_level::Server< detail::tcp::Server >::EnableForROS(), carla::streaming::low_level::Server< detail::tcp::Server >::GetToken(), carla::streaming::low_level::Server< detail::tcp::Server >::IsEnabledForROS(), carla::streaming::low_level::Server< detail::tcp::Server >::MakeStream(), and carla::streaming::low_level::Server< detail::tcp::Server >::StartServer().
|
private |
Definition at line 111 of file streaming/low_level/Server.h.
Referenced by carla::streaming::low_level::Server< detail::tcp::Server >::GetLocalEndpoint(), carla::streaming::low_level::Server< detail::tcp::Server >::SetSynchronousMode(), carla::streaming::low_level::Server< detail::tcp::Server >::SetTimeout(), and carla::streaming::low_level::Server< detail::tcp::Server >::StartServer().