Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

ogdf::sync_plan::DoublePipeQueue< PipeCmp1, PipeCmp2 > Class Template Referenceabstract

Base class for PipeQueues providing a "priority lane" for some pipes and sorting with different functions in both lanes/queues. More...

#include <ogdf/cluster/sync_plan/PipeOrder.h>

+ Inheritance diagram for ogdf::sync_plan::DoublePipeQueue< PipeCmp1, PipeCmp2 >:

Public Types

using Base = SimplePipeQueue< PipeCmp1 >
 
using PipesHeap2 = PriorityQueue< Pipe *, PipeCmpPtr< PipeCmp2 > >
 
using PipesHeapHandle2 = typename PipesHeap2::handle
 
- Public Types inherited from ogdf::sync_plan::SimplePipeQueue< PipeCmp1 >
using PipesHeap = PriorityQueue< Pipe *, PipeCmpPtr< PipeCmp1 > >
 
using PipesHeapHandle = typename PipesHeap::handle
 

Public Member Functions

void addPipe (Pipe *p) override
 
void clear () override
 
bool empty () override
 
PipegetTop () override
 
void removePipe (Pipe *pipe) override
 
int size () override
 
- Public Member Functions inherited from ogdf::sync_plan::SimplePipeQueue< PipeCmp1 >
 SimplePipeQueue ()=default
 
 SimplePipeQueue (const SimplePipeQueue &copy)=delete
 
 SimplePipeQueue (SimplePipeQueue &&move)=delete
 
void addPipe (Pipe *p) override
 
void clear () override
 
bool empty () override
 
PipegetTop () override
 
SimplePipeQueueoperator= (const SimplePipeQueue &copy)=delete
 
SimplePipeQueueoperator= (SimplePipeQueue &&move)=delete
 
void rebuild (List< Pipe > &pipes_list) override
 
void removePipe (Pipe *pipe) override
 
int size () override
 
- Public Member Functions inherited from ogdf::sync_plan::PipeQueue
virtual ~PipeQueue ()=default
 

Protected Member Functions

virtual bool isQueue1 (Pipe *p) const =0
 

Protected Attributes

std::unique_ptr< PipesHeap2pipes_heap2
 
- Protected Attributes inherited from ogdf::sync_plan::SimplePipeQueue< PipeCmp1 >
std::unique_ptr< PipesHeappipes_heap
 

Detailed Description

template<typename PipeCmp1, typename PipeCmp2>
class ogdf::sync_plan::DoublePipeQueue< PipeCmp1, PipeCmp2 >

Base class for PipeQueues providing a "priority lane" for some pipes and sorting with different functions in both lanes/queues.

Definition at line 180 of file PipeOrder.h.

Member Typedef Documentation

◆ Base

template<typename PipeCmp1 , typename PipeCmp2 >
using ogdf::sync_plan::DoublePipeQueue< PipeCmp1, PipeCmp2 >::Base = SimplePipeQueue<PipeCmp1>

Definition at line 184 of file PipeOrder.h.

◆ PipesHeap2

template<typename PipeCmp1 , typename PipeCmp2 >
using ogdf::sync_plan::DoublePipeQueue< PipeCmp1, PipeCmp2 >::PipesHeap2 = PriorityQueue<Pipe*, PipeCmpPtr<PipeCmp2> >

Definition at line 182 of file PipeOrder.h.

◆ PipesHeapHandle2

template<typename PipeCmp1 , typename PipeCmp2 >
using ogdf::sync_plan::DoublePipeQueue< PipeCmp1, PipeCmp2 >::PipesHeapHandle2 = typename PipesHeap2::handle

Definition at line 183 of file PipeOrder.h.

Member Function Documentation

◆ addPipe()

template<typename PipeCmp1 , typename PipeCmp2 >
void ogdf::sync_plan::DoublePipeQueue< PipeCmp1, PipeCmp2 >::addPipe ( Pipe p)
inlineoverridevirtual

Implements ogdf::sync_plan::PipeQueue.

Definition at line 211 of file PipeOrder.h.

◆ clear()

template<typename PipeCmp1 , typename PipeCmp2 >
void ogdf::sync_plan::DoublePipeQueue< PipeCmp1, PipeCmp2 >::clear ( )
inlineoverridevirtual

Implements ogdf::sync_plan::PipeQueue.

Definition at line 237 of file PipeOrder.h.

◆ empty()

template<typename PipeCmp1 , typename PipeCmp2 >
bool ogdf::sync_plan::DoublePipeQueue< PipeCmp1, PipeCmp2 >::empty ( )
inlineoverridevirtual

Implements ogdf::sync_plan::PipeQueue.

Definition at line 193 of file PipeOrder.h.

◆ getTop()

template<typename PipeCmp1 , typename PipeCmp2 >
Pipe* ogdf::sync_plan::DoublePipeQueue< PipeCmp1, PipeCmp2 >::getTop ( )
inlineoverridevirtual

Implements ogdf::sync_plan::PipeQueue.

Definition at line 197 of file PipeOrder.h.

◆ isQueue1()

template<typename PipeCmp1 , typename PipeCmp2 >
virtual bool ogdf::sync_plan::DoublePipeQueue< PipeCmp1, PipeCmp2 >::isQueue1 ( Pipe p) const
protectedpure virtual

◆ removePipe()

template<typename PipeCmp1 , typename PipeCmp2 >
void ogdf::sync_plan::DoublePipeQueue< PipeCmp1, PipeCmp2 >::removePipe ( Pipe pipe)
inlineoverridevirtual

Implements ogdf::sync_plan::PipeQueue.

Definition at line 225 of file PipeOrder.h.

◆ size()

template<typename PipeCmp1 , typename PipeCmp2 >
int ogdf::sync_plan::DoublePipeQueue< PipeCmp1, PipeCmp2 >::size ( )
inlineoverridevirtual

Implements ogdf::sync_plan::PipeQueue.

Definition at line 195 of file PipeOrder.h.

Member Data Documentation

◆ pipes_heap2

template<typename PipeCmp1 , typename PipeCmp2 >
std::unique_ptr<PipesHeap2> ogdf::sync_plan::DoublePipeQueue< PipeCmp1, PipeCmp2 >::pipes_heap2
protected

Definition at line 188 of file PipeOrder.h.


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