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

保留参与者描述列表,以避免每次都向服务器请求描述。 更多...

#include <CachedActorList.h>

+ 类 carla::client::detail::CachedActorList 继承关系图:
+ carla::client::detail::CachedActorList 的协作图:

Public 成员函数

void Clear ()
 
boost::optional< rpc::ActorGetActorById (ActorId id) const
 检索与 id 匹配的参与者,如果参与者未被缓存,则为空(可选)。
 
template<typename RangeT >
std::vector< rpc::ActorGetActorsById (const RangeT &range) const
 检索与 范围内的 ID 匹配的参与者。
 
template<typename RangeT >
std::vector< ActorIdGetMissingIds (const RangeT &range) const
 返回 范围内尚未添加到此列表的参与者 ID。
 
void Insert (rpc::Actor actor)
 将参与者插入到列表中。
 
template<typename RangeT >
void InsertRange (RangeT range)
 插入包含参与者的 范围。
 

Private 属性

std::unordered_map< ActorId, rpc::Actor_actors
 
std::mutex _mutex
 

额外继承的成员函数

- Private 成员函数 继承自 carla::MovableNonCopyable
 MovableNonCopyable ()=default
 
 MovableNonCopyable (const MovableNonCopyable &)=delete
 
 MovableNonCopyable (MovableNonCopyable &&)=default
 
MovableNonCopyableoperator= (const MovableNonCopyable &)=delete
 
MovableNonCopyableoperator= (MovableNonCopyable &&)=default
 

详细描述

保留参与者描述列表,以避免每次都向服务器请求描述。

待办事项
Dead actors are never removed from the list.

在文件 CachedActorList.h29 行定义.

成员函数说明

◆ Clear()

void carla::client::detail::CachedActorList::Clear ( )
inline

在文件 CachedActorList.h116 行定义.

引用了 _actors , 以及 _mutex.

被这些函数引用 carla::client::detail::Episode::OnEpisodeStarted().

+ 这是这个函数的调用关系图:

◆ GetActorById()

boost::optional< rpc::Actor > carla::client::detail::CachedActorList::GetActorById ( ActorId id) const
inline

检索与 id 匹配的参与者,如果参与者未被缓存,则为空(可选)。

在文件 CachedActorList.h93 行定义.

引用了 _actors , 以及 _mutex.

◆ GetActorsById()

template<typename RangeT >
std::vector< rpc::Actor > carla::client::detail::CachedActorList::GetActorsById ( const RangeT & range) const
inline

检索与 范围内的 ID 匹配的参与者。

在文件 CachedActorList.h103 行定义.

引用了 _actors , 以及 _mutex.

被这些函数引用 carla::client::detail::GetActorsById_Impl().

+ 这是这个函数的调用关系图:

◆ GetMissingIds()

template<typename RangeT >
std::vector< ActorId > carla::client::detail::CachedActorList::GetMissingIds ( const RangeT & range) const
inline

返回 范围内尚未添加到此列表的参与者 ID。

在文件 CachedActorList.h83 行定义.

引用了 _actors , 以及 _mutex.

被这些函数引用 carla::client::detail::GetActorsById_Impl().

+ 这是这个函数的调用关系图:

◆ Insert()

void carla::client::detail::CachedActorList::Insert ( rpc::Actor actor)
inline

将参与者插入到列表中。

在文件 CachedActorList.h63 行定义.

引用了 _actors, _mutex , 以及 carla::rpc::Actor::id.

被这些函数引用 carla::client::detail::Episode::RegisterParticipant().

+ 这是这个函数的调用关系图:

◆ InsertRange()

template<typename RangeT >
void carla::client::detail::CachedActorList::InsertRange ( RangeT range)
inline

插入包含参与者的 范围。

在文件 CachedActorList.h70 行定义.

引用了 _actors , 以及 _mutex.

被这些函数引用 carla::client::detail::GetActorsById_Impl().

+ 这是这个函数的调用关系图:

类成员变量说明

◆ _actors

std::unordered_map<ActorId, rpc::Actor> carla::client::detail::CachedActorList::_actors
private

在文件 CachedActorList.h56 行定义.

被这些函数引用 Clear(), GetActorById(), GetActorsById(), GetMissingIds(), Insert() , 以及 InsertRange().

◆ _mutex

std::mutex carla::client::detail::CachedActorList::_mutex
mutableprivate

在文件 CachedActorList.h54 行定义.

被这些函数引用 Clear(), GetActorById(), GetActorsById(), GetMissingIds(), Insert() , 以及 InsertRange().


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