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

Keeps a list of actor descriptions to avoid requesting each time the descriptions to the server. 更多...

#include <CachedActorList.h>

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

Public 成员函数

void Clear ()
 
boost::optional< rpc::ActorGetActorById (ActorId id) const
 Retrieve the actor matching id, or empty optional if actor is not cached.
 
template<typename RangeT >
std::vector< rpc::ActorGetActorsById (const RangeT &range) const
 Retrieve the actors matching the ids in range.
 
template<typename RangeT >
std::vector< ActorIdGetMissingIds (const RangeT &range) const
 Return the actor ids present in range that haven't been added to this list.
 
void Insert (rpc::Actor actor)
 Inserts an actor into the list.
 
template<typename RangeT >
void InsertRange (RangeT range)
 Inserts a range containing actors.
 

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
 

详细描述

Keeps a list of actor descriptions to avoid requesting each time the descriptions to the server.

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

在文件 CachedActorList.h30 行定义.

成员函数说明

◆ Clear()

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

在文件 CachedActorList.h119 行定义.

引用了 _actors , 以及 _mutex.

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

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

◆ GetActorById()

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

Retrieve the actor matching id, or empty optional if actor is not cached.

在文件 CachedActorList.h96 行定义.

引用了 _actors , 以及 _mutex.

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

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

◆ GetActorsById()

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

Retrieve the actors matching the ids in range.

在文件 CachedActorList.h106 行定义.

引用了 _actors , 以及 _mutex.

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

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

◆ GetMissingIds()

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

Return the actor ids present in range that haven't been added to this list.

在文件 CachedActorList.h86 行定义.

引用了 _actors , 以及 _mutex.

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

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

◆ Insert()

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

Inserts an actor into the list.

在文件 CachedActorList.h66 行定义.

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

被这些函数引用 carla::client::detail::Episode::GetActorById() , 以及 carla::client::detail::Episode::RegisterActor().

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

◆ InsertRange()

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

Inserts a range containing actors.

在文件 CachedActorList.h73 行定义.

引用了 _actors , 以及 _mutex.

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

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

类成员变量说明

◆ _actors

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

在文件 CachedActorList.h59 行定义.

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

◆ _mutex

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

在文件 CachedActorList.h57 行定义.

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


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