Open
Graph Drawing
Framework

 v.2007.11
 

ogdf::SListPure< E > Class Template Reference

The parameterized class SListPure<E> represents singly linked lists with content type E. More...

#include <SList.h>

Inheritance diagram for ogdf::SListPure< E >:

ogdf::QueuePure< E > ogdf::SList< E > ogdf::StackPure< E > ogdf::Queue< E > ogdf::Stack< E >

List of all members.

Public Types

typedef E value_type
typedef SListElement< E > element_type
typedef SListConstIterator< E > const_iterator
typedef SListIterator< E > iterator

Public Member Functions

 SListPure ()
 Constructs an empty singly linked list.
 SListPure (const SListPure< E > &L)
 Constructs a singly linked list that is a copy of L.
 ~SListPure ()
bool empty () const
 Returns true iff the list is empty.
int size () const
 Returns the length of the list.
SListConstIterator< E > begin () const
 Returns an iterator to the first element of the list.
SListIterator< E > begin ()
 Returns an iterator to the first element of the list.
SListConstIterator< E > end () const
 Returns an iterator to one-past-last element of the list.
SListIterator< E > end ()
 Returns an iterator to one-past-last element of the list.
SListConstIterator< E > rbegin () const
 Returns an iterator to the last element of the list.
SListIterator< E > rbegin ()
 Returns an iterator to the last element of the list.
SListConstIterator< E > get (int pos) const
 Returns an iterator pointing to the element at position pos.
SListIterator< E > get (int pos)
 Returns an iterator pointing to the element at position pos.
int pos (SListConstIterator< E > it) const
 Returns the position (starting with 0) of it in the list.
const E & front () const
 Returns a reference to the first element.
E & front ()
 Returns a reference to the first element.
const E & back () const
 Returns a reference to the last element.
E & back ()
 Returns a reference to the last element.
SListConstIterator< E > cyclicSucc (SListConstIterator< E > it) const
 Returns an iterator to the cyclic successor of it.
SListIterator< E > cyclicSucc (SListIterator< E > it)
 Returns an iterator to the cyclic successor of it.
SListPure< E > & operator= (const SListPure< E > &L)
 Assignment operator.
SListIterator< E > pushFront (const E &x)
 Adds element x at the begin of the list.
SListIterator< E > pushBack (const E &x)
 Adds element x at the end of the list.
SListIterator< E > insertAfter (const E &x, SListIterator< E > itBefore)
 Inserts element x after pBefore.
void popFront ()
 Removes the first element from the list.
popFrontRet ()
 Removes the first element from the list and returns it.
void delSucc (SListIterator< E > itBefore)
 Removes the succesor of pBefore.
void moveFrontToFront (SListPure< E > &L2)
 Moves the first element of this list to the begin of list L2.
void moveFrontToBack (SListPure< E > &L2)
 Moves the first element of this list to the end of list L2.
void moveFrontToSucc (SListPure< E > &L2, SListIterator< E > itBefore)
 Moves the first element of this list to list L2 inserted after itBefore.
void clear ()
 Removes all elements from the list.
void conc (SListPure< E > &L2)
 Appends L2 to this list and makes L2 empty.
void reverse ()
 Reverses the order of the list elements.
const SListPure< E > & getListPure () const
 Conversion to const SListPure.
void quicksort ()
 Sorts the list using Quicksort.
void quicksort (Comparer< E > &comp)
 Sorts the list using Quicksort and comparer comp.
template<class C>
void quicksortCT (C &comp)
 Sorts the list using Quicksort and parameterized comparer comp.
void bucketSort (int l, int h, BucketFunc< E > &f)
 Sorts the list using bucket sort.
void bucketSort (BucketFunc< E > &f)
 Sorts the list using bucket sort.
void permute ()
 Randomly permutes the elements in the list.
void * operator new (size_t nBytes)
void * operator new (size_t, void *p)
void operator delete (void *p, size_t nBytes)

Protected Member Functions

void copy (const SListPure< E > &L)
void permute (const int n)

Private Attributes

SListElement< E > * m_head
 Pointer to first element.
SListElement< E > * m_tail
 Pointer to last element.


Detailed Description

template<class E>
class ogdf::SListPure< E >

The parameterized class SListPure<E> represents singly linked lists with content type E.

Elements of the list are instances of type SListElement<E>. Use SListConstIterator<E> or SListIterator<E> in order to iterate over the list.

In contrast to SList<E>, instances of SListPure<E> do not store the length of the list.

Definition at line 245 of file SList.h.


Member Typedef Documentation

template<class E>
typedef E ogdf::SListPure< E >::value_type

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 261 of file SList.h.

template<class E>
typedef SListElement<E> ogdf::SListPure< E >::element_type

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 262 of file SList.h.

template<class E>
typedef SListConstIterator<E> ogdf::SListPure< E >::const_iterator

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 263 of file SList.h.

template<class E>
typedef SListIterator<E> ogdf::SListPure< E >::iterator

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 264 of file SList.h.


Constructor & Destructor Documentation

template<class E>
ogdf::SListPure< E >::SListPure (  )  [inline]

Constructs an empty singly linked list.

Definition at line 251 of file SList.h.

template<class E>
ogdf::SListPure< E >::SListPure ( const SListPure< E > &  L  )  [inline]

Constructs a singly linked list that is a copy of L.

Definition at line 254 of file SList.h.

template<class E>
ogdf::SListPure< E >::~SListPure (  )  [inline]

Definition at line 259 of file SList.h.


Member Function Documentation

template<class E>
bool ogdf::SListPure< E >::empty (  )  const [inline]

Returns true iff the list is empty.

Reimplemented in ogdf::QueuePure< E >, ogdf::Queue< E >, ogdf::SList< E >, ogdf::StackPure< E >, ogdf::Stack< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, ogdf::SList< char * >, ogdf::StackPure< ogdf::NodeElement >, ogdf::StackPure< ogdf::AdjElement >, ogdf::Stack< ogdf::ClusterElement >, and ogdf::Stack< ogdf::EdgeElement >.

Definition at line 267 of file SList.h.

template<class E>
int ogdf::SListPure< E >::size (  )  const [inline]

Returns the length of the list.

Notice that this method requires to run through the whole list and takes linear running time!

Reimplemented in ogdf::Queue< E >, ogdf::SList< E >, ogdf::Stack< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, ogdf::SList< char * >, ogdf::Stack< ogdf::ClusterElement >, and ogdf::Stack< ogdf::EdgeElement >.

Definition at line 273 of file SList.h.

template<class E>
SListConstIterator<E> ogdf::SListPure< E >::begin (  )  const [inline]

Returns an iterator to the first element of the list.

If the list is empty, a null pointer iterator is returned.

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 284 of file SList.h.

template<class E>
SListIterator<E> ogdf::SListPure< E >::begin (  )  [inline]

Returns an iterator to the first element of the list.

If the list is empty, a null pointer iterator is returned.

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 290 of file SList.h.

template<class E>
SListConstIterator<E> ogdf::SListPure< E >::end (  )  const [inline]

Returns an iterator to one-past-last element of the list.

This is always a null pointer iterator.

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 296 of file SList.h.

template<class E>
SListIterator<E> ogdf::SListPure< E >::end (  )  [inline]

Returns an iterator to one-past-last element of the list.

This is always a null pointer iterator.

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 302 of file SList.h.

template<class E>
SListConstIterator<E> ogdf::SListPure< E >::rbegin (  )  const [inline]

Returns an iterator to the last element of the list.

If the list is empty, a null pointer iterator is returned.

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 308 of file SList.h.

template<class E>
SListIterator<E> ogdf::SListPure< E >::rbegin (  )  [inline]

Returns an iterator to the last element of the list.

If the list is empty, a null pointer iterator is returned.

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 314 of file SList.h.

template<class E>
SListConstIterator<E> ogdf::SListPure< E >::get ( int  pos  )  const [inline]

Returns an iterator pointing to the element at position pos.

The running time of this method is linear in pos.

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 321 of file SList.h.

template<class E>
SListIterator<E> ogdf::SListPure< E >::get ( int  pos  )  [inline]

Returns an iterator pointing to the element at position pos.

The running time of this method is linear in pos.

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 332 of file SList.h.

template<class E>
int ogdf::SListPure< E >::pos ( SListConstIterator< E >  it  )  const [inline]

Returns the position (starting with 0) of it in the list.

Positions are numbered 0,1,...

Precondition:
it is an iterator pointing to an element in this list.

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 344 of file SList.h.

template<class E>
const E& ogdf::SListPure< E >::front (  )  const [inline]

Returns a reference to the first element.

Precondition:
The list is not empty!

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 357 of file SList.h.

template<class E>
E& ogdf::SListPure< E >::front (  )  [inline]

Returns a reference to the first element.

Precondition:
The list is not empty!

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 366 of file SList.h.

template<class E>
const E& ogdf::SListPure< E >::back (  )  const [inline]

Returns a reference to the last element.

Precondition:
The list is not empty!

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 375 of file SList.h.

template<class E>
E& ogdf::SListPure< E >::back (  )  [inline]

Returns a reference to the last element.

Precondition:
The list is not empty!

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 384 of file SList.h.

template<class E>
SListConstIterator<E> ogdf::SListPure< E >::cyclicSucc ( SListConstIterator< E >  it  )  const [inline]

Returns an iterator to the cyclic successor of it.

Precondition:
it points to an element in this list!

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 393 of file SList.h.

template<class E>
SListIterator<E> ogdf::SListPure< E >::cyclicSucc ( SListIterator< E >  it  )  [inline]

Returns an iterator to the cyclic successor of it.

Precondition:
it points to an element in this list!

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 402 of file SList.h.

template<class E>
SListPure<E>& ogdf::SListPure< E >::operator= ( const SListPure< E > &  L  )  [inline]

Assignment operator.

Definition at line 408 of file SList.h.

template<class E>
SListIterator<E> ogdf::SListPure< E >::pushFront ( const E &  x  )  [inline]

Adds element x at the begin of the list.

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 414 of file SList.h.

template<class E>
SListIterator<E> ogdf::SListPure< E >::pushBack ( const E &  x  )  [inline]

Adds element x at the end of the list.

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 421 of file SList.h.

template<class E>
SListIterator<E> ogdf::SListPure< E >::insertAfter ( const E &  x,
SListIterator< E >  itBefore 
) [inline]

Inserts element x after pBefore.

Precondition:
pBefore points to an element in this list.

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 434 of file SList.h.

template<class E>
void ogdf::SListPure< E >::popFront (  )  [inline]

Removes the first element from the list.

Precondition:
The list is not empty!

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 446 of file SList.h.

template<class E>
E ogdf::SListPure< E >::popFrontRet (  )  [inline]

Removes the first element from the list and returns it.

Precondition:
The list is not empty!

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 457 of file SList.h.

template<class E>
void ogdf::SListPure< E >::delSucc ( SListIterator< E >  itBefore  )  [inline]

Removes the succesor of pBefore.

Precondition:
pBefore points to an element in this list.

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 467 of file SList.h.

template<class E>
void ogdf::SListPure< E >::moveFrontToFront ( SListPure< E > &  L2  )  [inline]

Moves the first element of this list to the begin of list L2.

Definition at line 477 of file SList.h.

template<class E>
void ogdf::SListPure< E >::moveFrontToBack ( SListPure< E > &  L2  )  [inline]

Moves the first element of this list to the end of list L2.

Definition at line 488 of file SList.h.

template<class E>
void ogdf::SListPure< E >::moveFrontToSucc ( SListPure< E > &  L2,
SListIterator< E >  itBefore 
) [inline]

Moves the first element of this list to list L2 inserted after itBefore.

Precondition:
itBefore points to an element in L2.

Definition at line 504 of file SList.h.

template<class E>
void ogdf::SListPure< E >::clear (  )  [inline]

Removes all elements from the list.

Reimplemented in ogdf::QueuePure< E >, ogdf::Queue< E >, ogdf::SList< E >, ogdf::StackPure< E >, ogdf::Stack< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, ogdf::SList< char * >, ogdf::StackPure< ogdf::NodeElement >, ogdf::StackPure< ogdf::AdjElement >, ogdf::Stack< ogdf::ClusterElement >, and ogdf::Stack< ogdf::EdgeElement >.

Definition at line 516 of file SList.h.

template<class E>
void ogdf::SListPure< E >::conc ( SListPure< E > &  L2  )  [inline]

Appends L2 to this list and makes L2 empty.

Definition at line 539 of file SList.h.

template<class E>
void ogdf::SListPure< E >::reverse (  )  [inline]

Reverses the order of the list elements.

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 549 of file SList.h.

template<class E>
const SListPure<E>& ogdf::SListPure< E >::getListPure (  )  const [inline]

Conversion to const SListPure.

Reimplemented in ogdf::QueuePure< E >, ogdf::Queue< E >, ogdf::SList< E >, ogdf::StackPure< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, ogdf::SList< char * >, ogdf::StackPure< ogdf::NodeElement >, and ogdf::StackPure< ogdf::AdjElement >.

Definition at line 560 of file SList.h.

template<class E>
void ogdf::SListPure< E >::quicksort (  )  [inline]

Sorts the list using Quicksort.

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 563 of file SList.h.

template<class E>
void ogdf::SListPure< E >::quicksort ( Comparer< E > &  comp  )  [inline]

Sorts the list using Quicksort and comparer comp.

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 568 of file SList.h.

template<class E>
template<class C>
void ogdf::SListPure< E >::quicksortCT ( C &  comp  )  [inline]

Sorts the list using Quicksort and parameterized comparer comp.

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 574 of file SList.h.

template<class E>
void ogdf::SListPure< E >::bucketSort ( int  l,
int  h,
BucketFunc< E > &  f 
) [inline]

Sorts the list using bucket sort.

Parameters:
l is the lowest bucket that will occur.
h is the highest bucket that will occur.
f returns the bucket for each element.
Precondition:
The bucket function f will only return bucket values between l and h for this list.

Reimplemented in ogdf::SList< E >, ogdf::SList< ogdf::DinoUmlDiagramGraph * >, ogdf::SList< ogdf::UMLGraph * >, ogdf::SList< double >, ogdf::SList< int >, ogdf::SList< ogdf::SimpleCluster * >, ogdf::SList< ogdf::NodeElement * >, ogdf::SList< ogdf::NodeElement >, ogdf::SList< ogdf::ClusterElement >, ogdf::SList< ogdf::EdgeElement * >, ogdf::SList< ogdf::EdgeElement >, ogdf::SList< ogdf::AdjElement >, and ogdf::SList< char * >.

Definition at line 913 of file SList.h.

template<class E>
void ogdf::SListPure&l