CARLA
 
载入中...
搜索中...
未找到
Public 成员函数 | Private 属性 | 所有成员列表
carla::streaming::detail::MultiStreamState类 参考final

A stream state that can hold any number of sessions. 更多...

#include <MultiStreamState.h>

+ 类 carla::streaming::detail::MultiStreamState 继承关系图:
+ carla::streaming::detail::MultiStreamState 的协作图:

Public 成员函数

bool AreClientsListening ()
 
void ClearSessions () final
 清除所有会话。
 
void ConnectSession (std::shared_ptr< Session > session) final
 连接到会话。
 
void DisableForROS ()
 
void DisconnectSession (std::shared_ptr< Session > session) final
 断开与会话的连接。
 
void EnableForROS ()
 
void ForceActive ()
 
bool IsEnabledForROS ()
 
 MultiStreamState (const token_type &token)
 
 StreamStateBase (const token_type &token)
 构造函数,使用给定的令牌初始化对象。
 
template<typename... Buffers>
void Write (Buffers... buffers)
 
- Public 成员函数 继承自 carla::streaming::detail::StreamStateBase
Buffer MakeBuffer ()
 创建一个缓冲区。
 
 StreamStateBase (const token_type &token)
 构造函数,使用给定的令牌初始化对象。
 
const token_typetoken () const
 获取用于初始化对象的令牌。
 
virtual ~StreamStateBase ()
 析构函数,清理资源。
 

Private 属性

bool _enabled_for_ros {false}
 
bool _force_active {false}
 
std::mutex _mutex
 
AtomicSharedPtr< Session_session
 
std::vector< std::shared_ptr< Session > > _sessions
 

详细描述

A stream state that can hold any number of sessions.

待办事项
Lacking some optimization.

在文件 MultiStreamState.h28 行定义.

构造及析构函数说明

◆ MultiStreamState()

carla::streaming::detail::MultiStreamState::MultiStreamState ( const token_type & token)
inline

在文件 MultiStreamState.h33 行定义.

成员函数说明

◆ AreClientsListening()

bool carla::streaming::detail::MultiStreamState::AreClientsListening ( )
inline

在文件 MultiStreamState.h82 行定义.

引用了 _enabled_for_ros, _force_active , 以及 _sessions.

◆ ClearSessions()

void carla::streaming::detail::MultiStreamState::ClearSessions ( )
inlinefinalvirtual

清除所有会话。

这是一个纯虚函数,需要在派生类中实现。

实现了 carla::streaming::detail::StreamStateBase.

在文件 MultiStreamState.h134 行定义.

引用了 _force_active, _mutex, _session, _sessions , 以及 carla::log_debug().

+ 函数调用图:

◆ ConnectSession()

void carla::streaming::detail::MultiStreamState::ConnectSession ( std::shared_ptr< Session > session)
inlinefinalvirtual

连接到会话。

这是一个纯虚函数,需要在派生类中实现。

参数
session要连接的会话的共享指针。

实现了 carla::streaming::detail::StreamStateBase.

在文件 MultiStreamState.h86 行定义.

引用了 _mutex, _session, _sessions, DEBUG_ASSERT , 以及 carla::log_debug().

+ 函数调用图:

◆ DisableForROS()

void carla::streaming::detail::MultiStreamState::DisableForROS ( )
inline

在文件 MultiStreamState.h74 行定义.

引用了 _enabled_for_ros.

◆ DisconnectSession()

void carla::streaming::detail::MultiStreamState::DisconnectSession ( std::shared_ptr< Session > session)
inlinefinalvirtual

断开与会话的连接。

这是一个纯虚函数,需要在派生类中实现。

参数
session要断开的会话的共享指针。

实现了 carla::streaming::detail::StreamStateBase.

在文件 MultiStreamState.h102 行定义.

引用了 _force_active, _mutex, _session, _sessions, DEBUG_ASSERT , 以及 carla::log_debug().

+ 函数调用图:

◆ EnableForROS()

void carla::streaming::detail::MultiStreamState::EnableForROS ( )
inline

在文件 MultiStreamState.h70 行定义.

引用了 _enabled_for_ros.

◆ ForceActive()

void carla::streaming::detail::MultiStreamState::ForceActive ( )
inline

在文件 MultiStreamState.h66 行定义.

引用了 _force_active.

◆ IsEnabledForROS()

bool carla::streaming::detail::MultiStreamState::IsEnabledForROS ( )
inline

在文件 MultiStreamState.h78 行定义.

引用了 _enabled_for_ros.

◆ StreamStateBase()

carla::streaming::detail::StreamStateBase::StreamStateBase ( const token_type & token)
explicit

构造函数,使用给定的令牌初始化对象。

参数
token用于初始化对象的令牌。

在文件 StreamStateBase.cpp41 行定义.

◆ Write()

template<typename... Buffers>
void carla::streaming::detail::MultiStreamState::Write ( Buffers... buffers)
inline

在文件 MultiStreamState.h39 行定义.

引用了 _mutex, _session, _sessions, carla::log_debug() , 以及 carla::streaming::detail::tcp::ServerSession::MakeMessage().

+ 函数调用图:

类成员变量说明

◆ _enabled_for_ros

bool carla::streaming::detail::MultiStreamState::_enabled_for_ros {false}
private

在文件 MultiStreamState.h170 行定义.

被这些函数引用 AreClientsListening(), DisableForROS(), EnableForROS() , 以及 IsEnabledForROS().

◆ _force_active

bool carla::streaming::detail::MultiStreamState::_force_active {false}
private

在文件 MultiStreamState.h167 行定义.

被这些函数引用 AreClientsListening(), ClearSessions(), DisconnectSession() , 以及 ForceActive().

◆ _mutex

std::mutex carla::streaming::detail::MultiStreamState::_mutex
private

在文件 MultiStreamState.h157 行定义.

被这些函数引用 ClearSessions(), ConnectSession(), DisconnectSession() , 以及 Write().

◆ _session

AtomicSharedPtr<Session> carla::streaming::detail::MultiStreamState::_session
private

在文件 MultiStreamState.h161 行定义.

被这些函数引用 ClearSessions(), ConnectSession(), DisconnectSession() , 以及 Write().

◆ _sessions

std::vector<std::shared_ptr<Session> > carla::streaming::detail::MultiStreamState::_sessions
private

在文件 MultiStreamState.h163 行定义.

被这些函数引用 AreClientsListening(), ClearSessions(), ConnectSession(), DisconnectSession() , 以及 Write().


该类的文档由以下文件生成: