g2o
Loading...
Searching...
No Matches
Public Member Functions | List of all members
g2o::EstimatePropagator::PriorityQueue Class Reference

priority queue for AdjacencyMapEntry More...

#include <estimate_propagator.h>

Inheritance diagram for g2o::EstimatePropagator::PriorityQueue:
Inheritance graph
[legend]
Collaboration diagram for g2o::EstimatePropagator::PriorityQueue:
Collaboration graph
[legend]

Public Member Functions

void push (AdjacencyMapEntry *entry)
 
AdjacencyMapEntrypop ()
 

Detailed Description

priority queue for AdjacencyMapEntry

Definition at line 101 of file estimate_propagator.h.

Member Function Documentation

◆ pop()

EstimatePropagator::AdjacencyMapEntry * g2o::EstimatePropagator::PriorityQueue::pop ( )

Definition at line 222 of file estimate_propagator.cpp.

222 {
223 assert(!empty());
224 iterator it = begin();
225 AdjacencyMapEntry* entry = it->second;
226 erase(it);
227
228 assert(entry != NULL);
229 entry->queueIt = end();
230 entry->inQueue = false;
231 return entry;
232}

References g2o::EstimatePropagator::AdjacencyMapEntry::inQueue, and g2o::EstimatePropagator::AdjacencyMapEntry::queueIt.

Referenced by g2o::EstimatePropagator::propagate().

◆ push()

void g2o::EstimatePropagator::PriorityQueue::push ( AdjacencyMapEntry entry)

Definition at line 209 of file estimate_propagator.cpp.

209 {
210 assert(entry != NULL);
211 if (entry->inQueue) {
212 assert(entry->queueIt->second == entry);
213 erase(entry->queueIt);
214 }
215
216 entry->queueIt = insert(std::make_pair(entry->distance(), entry));
217 assert(entry->queueIt != end());
218 entry->inQueue = true;
219}

References g2o::EstimatePropagator::AdjacencyMapEntry::distance(), g2o::EstimatePropagator::AdjacencyMapEntry::inQueue, and g2o::EstimatePropagator::AdjacencyMapEntry::queueIt.

Referenced by g2o::EstimatePropagator::propagate().


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