Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
cartographer::sensor::OrderedMultiQueue Class Reference

#include <ordered_multi_queue.h>

Classes

struct  Queue
 

Public Types

using Callback = std::function< void(std::unique_ptr< Data >)>
 

Public Member Functions

void Add (const QueueKey &queue_key, std::unique_ptr< Data > data)
 
void AddQueue (const QueueKey &queue_key, Callback callback)
 
void Flush ()
 
QueueKey GetBlocker () const
 
void MarkQueueAsFinished (const QueueKey &queue_key)
 
 OrderedMultiQueue ()
 
 ~OrderedMultiQueue ()
 

Private Member Functions

void CannotMakeProgress (const QueueKey &queue_key)
 
void Dispatch ()
 
common::Time GetCommonStartTime (int trajectory_id)
 

Private Attributes

QueueKey blocker_
 
std::map< int, common::Timecommon_start_time_per_trajectory_
 
common::Time last_dispatched_time_ = common::Time::min()
 
std::map< QueueKey, Queuequeues_
 

Detailed Description

Definition at line 49 of file ordered_multi_queue.h.

Member Typedef Documentation

◆ Callback

using cartographer::sensor::OrderedMultiQueue::Callback = std::function<void(std::unique_ptr<Data>)>

Definition at line 51 of file ordered_multi_queue.h.

Constructor & Destructor Documentation

◆ OrderedMultiQueue()

cartographer::sensor::OrderedMultiQueue::OrderedMultiQueue ( )

Definition at line 41 of file ordered_multi_queue.cc.

◆ ~OrderedMultiQueue()

cartographer::sensor::OrderedMultiQueue::~OrderedMultiQueue ( )

Definition at line 43 of file ordered_multi_queue.cc.

Member Function Documentation

◆ Add()

void cartographer::sensor::OrderedMultiQueue::Add ( const QueueKey queue_key,
std::unique_ptr< Data data 
)

Definition at line 63 of file ordered_multi_queue.cc.

◆ AddQueue()

void cartographer::sensor::OrderedMultiQueue::AddQueue ( const QueueKey queue_key,
Callback  callback 
)

Definition at line 49 of file ordered_multi_queue.cc.

◆ CannotMakeProgress()

void cartographer::sensor::OrderedMultiQueue::CannotMakeProgress ( const QueueKey queue_key)
private

Definition at line 151 of file ordered_multi_queue.cc.

◆ Dispatch()

void cartographer::sensor::OrderedMultiQueue::Dispatch ( )
private

Definition at line 92 of file ordered_multi_queue.cc.

◆ Flush()

void cartographer::sensor::OrderedMultiQueue::Flush ( )

Definition at line 75 of file ordered_multi_queue.cc.

◆ GetBlocker()

QueueKey cartographer::sensor::OrderedMultiQueue::GetBlocker ( ) const

Definition at line 87 of file ordered_multi_queue.cc.

◆ GetCommonStartTime()

common::Time cartographer::sensor::OrderedMultiQueue::GetCommonStartTime ( int  trajectory_id)
private

Definition at line 161 of file ordered_multi_queue.cc.

◆ MarkQueueAsFinished()

void cartographer::sensor::OrderedMultiQueue::MarkQueueAsFinished ( const QueueKey queue_key)

Definition at line 54 of file ordered_multi_queue.cc.

Member Data Documentation

◆ blocker_

QueueKey cartographer::sensor::OrderedMultiQueue::blocker_
private

Definition at line 93 of file ordered_multi_queue.h.

◆ common_start_time_per_trajectory_

std::map<int, common::Time> cartographer::sensor::OrderedMultiQueue::common_start_time_per_trajectory_
private

Definition at line 91 of file ordered_multi_queue.h.

◆ last_dispatched_time_

common::Time cartographer::sensor::OrderedMultiQueue::last_dispatched_time_ = common::Time::min()
private

Definition at line 89 of file ordered_multi_queue.h.

◆ queues_

std::map<QueueKey, Queue> cartographer::sensor::OrderedMultiQueue::queues_
private

Definition at line 92 of file ordered_multi_queue.h.


The documentation for this class was generated from the following files:


cartographer
Author(s): The Cartographer Authors
autogenerated on Mon Feb 28 2022 22:00:59