Camargue
Public Types | Public Member Functions | Private Attributes | List of all members
CMR::Sep::CutQueue< cut_rep > Class Template Reference

Class template for queue of cuts in some form. More...

#include <process_cuts.hpp>

Public Types

using Itr = typename std::list< cut_rep >::iterator
 
using ConstItr = typename std::list< cut_rep >::const_iterator
 

Public Member Functions

 CutQueue ()
 Construct a CutQueue with unlimited capacity.
 
 CutQueue (const int cap)
 Construct a CutQueue with capacity cap.
 
int q_capacity () const
 
const cut_rep & peek_front () const
 A reference to the most recently added cut.
 
cut_rep & peek_front ()
 
void push_front (const cut_rep &H)
 Push a new cut to the front, popping from the back if at capacity.
 
template<typename... Args>
void emplace_front (Args &&...args)
 
void push_back (const cut_rep &H)
 Push to the back, popping from back first if at capacity.
 
template<typename... Args>
void emplace_back (Args &&...args)
 
void pop_front ()
 Pop the front cut.
 
void splice (CutQueue< cut_rep > &Q)
 Add the cuts in Q to this list, emptying Q.
 
bool empty () const
 
int size () const
 
void clear ()
 Clear the queue.
 
Itr begin ()
 
Itr end ()
 
ConstItr begin () const
 
ConstItr end () const
 

Private Attributes

std::list< cut_rep > cut_q
 
int q_cap
 

Detailed Description

template<typename cut_rep>
class CMR::Sep::CutQueue< cut_rep >

Class template for queue of cuts in some form.


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