Apollo 10.0
自动驾驶开放平台
apollo::cyber::record::PlayTaskBuffer类 参考

#include <play_task_buffer.h>

apollo::cyber::record::PlayTaskBuffer 的协作图:

Public 类型

using TaskPtr = std::shared_ptr< PlayTask >
 
using TaskMap = std::multimap< uint64_t, TaskPtr >
 

Public 成员函数

 PlayTaskBuffer ()
 
virtual ~PlayTaskBuffer ()
 
size_t Size () const
 
bool Empty () const
 
void Push (const TaskPtr &task)
 
TaskPtr Front ()
 
void PopFront ()
 
void Clear ()
 

详细描述

在文件 play_task_buffer.h31 行定义.

成员类型定义说明

◆ TaskMap

using apollo::cyber::record::PlayTaskBuffer::TaskMap = std::multimap<uint64_t, TaskPtr>

在文件 play_task_buffer.h35 行定义.

◆ TaskPtr

在文件 play_task_buffer.h33 行定义.

构造及析构函数说明

◆ PlayTaskBuffer()

apollo::cyber::record::PlayTaskBuffer::PlayTaskBuffer ( )

在文件 play_task_buffer.cc25 行定义.

25{}

◆ ~PlayTaskBuffer()

apollo::cyber::record::PlayTaskBuffer::~PlayTaskBuffer ( )
virtual

在文件 play_task_buffer.cc27 行定义.

27{ tasks_.clear(); }

成员函数说明

◆ Clear()

void apollo::cyber::record::PlayTaskBuffer::Clear ( )

在文件 play_task_buffer.cc63 行定义.

63 {
64 std::lock_guard<std::mutex> lck(mutex_);
65 while (!tasks_.empty()) {
66 tasks_.erase(tasks_.begin());
67 }
68}

◆ Empty()

bool apollo::cyber::record::PlayTaskBuffer::Empty ( ) const

在文件 play_task_buffer.cc34 行定义.

34 {
35 std::lock_guard<std::mutex> lck(mutex_);
36 return tasks_.empty();
37}

◆ Front()

PlayTaskBuffer::TaskPtr apollo::cyber::record::PlayTaskBuffer::Front ( )

在文件 play_task_buffer.cc47 行定义.

47 {
48 std::lock_guard<std::mutex> lck(mutex_);
49 if (tasks_.empty()) {
50 return nullptr;
51 }
52 auto res = tasks_.begin()->second;
53 return res;
54}

◆ PopFront()

void apollo::cyber::record::PlayTaskBuffer::PopFront ( )

在文件 play_task_buffer.cc56 行定义.

56 {
57 std::lock_guard<std::mutex> lck(mutex_);
58 if (!tasks_.empty()) {
59 tasks_.erase(tasks_.begin());
60 }
61}

◆ Push()

void apollo::cyber::record::PlayTaskBuffer::Push ( const TaskPtr task)

在文件 play_task_buffer.cc39 行定义.

39 {
40 if (task == nullptr) {
41 return;
42 }
43 std::lock_guard<std::mutex> lck(mutex_);
44 tasks_.insert(std::make_pair(task->msg_play_time_ns(), task));
45}

◆ Size()

size_t apollo::cyber::record::PlayTaskBuffer::Size ( ) const

在文件 play_task_buffer.cc29 行定义.

29 {
30 std::lock_guard<std::mutex> lck(mutex_);
31 return tasks_.size();
32}

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