heap< C > Class Template Reference

#include <heap.hpp>

List of all members.

Public Types

Public Member Functions

Protected Attributes

Friends


Detailed Description

template<typename C>
class mmx::heap< C >

Definition at line 73 of file heap.hpp.


Member Typedef Documentation

typedef bool(* comparison)(const C &, const C &)

Definition at line 75 of file heap.hpp.

typedef C value_type

Definition at line 74 of file heap.hpp.


Constructor & Destructor Documentation

heap ( heap_rep< C > *  rep2  )  [inline]

Definition at line 96 of file heap.hpp.

heap ( const heap_rep< C > *  rep2,
bool  with_inc 
) [inline]

Definition at line 96 of file heap.hpp.

heap ( const heap< C > &  x  )  [inline]

Definition at line 96 of file heap.hpp.

~heap (  )  [inline]

Definition at line 96 of file heap.hpp.

heap ( C a,
nat  n,
nat  l,
comparison  compare 
) [inline]

Definition at line 76 of file heap.hpp.

00076                                                       :
00077     rep (new Heap_rep (a, n, l, compare)) {}

heap ( comparison  compare  )  [inline]

Definition at line 80 of file heap.hpp.

00080                                   :
00081     rep (new Heap_rep (compare)) {}
  heap (const iterator<C>& it, comparison compare):

heap ( const iterator< C > &  it,
comparison  compare 
) [inline]

Definition at line 82 of file heap.hpp.

References mmx::busy(), and heap< C >::rep.

00082                                                   :
00083     rep (new Heap_rep (compare)) {
00084       while (busy (it)) { rep->Push (*it); ++it; } }
  inline C operator [] (nat i) const {


Member Function Documentation

void operator delete ( void *  ptr,
size_t  sz 
) [inline]

Definition at line 74 of file heap.hpp.

00076 :
    rep (new Heap_rep (a, n, l, compare)) {}

void operator delete[] ( void *  ptr,
size_t  sz 
) [inline]

Definition at line 74 of file heap.hpp.

00076 :
    rep (new Heap_rep (a, n, l, compare)) {}

void* operator new ( size_t  sz,
void *  where 
) [inline]

Definition at line 74 of file heap.hpp.

00076 :
    rep (new Heap_rep (a, n, l, compare)) {}

void* operator new ( size_t  sz  )  [inline]

Definition at line 74 of file heap.hpp.

00076 :
    rep (new Heap_rep (a, n, l, compare)) {}

void* operator new[] ( size_t  sz,
void *  where 
) [inline]

Definition at line 74 of file heap.hpp.

00076 :
    rep (new Heap_rep (a, n, l, compare)) {}

void* operator new[] ( size_t  sz  )  [inline]

Definition at line 74 of file heap.hpp.

00076 :
    rep (new Heap_rep (a, n, l, compare)) {}

heap_rep< C > * operator-> (  )  [inline]

Definition at line 96 of file heap.hpp.

const heap_rep< C > * operator-> (  )  const [inline]

Definition at line 96 of file heap.hpp.

heap< C > & operator= ( const heap< C > &  x  )  [inline]

Definition at line 96 of file heap.hpp.

C operator[] ( nat  i  )  const [inline]

Definition at line 85 of file heap.hpp.

References ASSERT, n, and heap< C >::rep.

00085                                      {
00086     ASSERT (i < rep->n, "out of range");
00087     return rep->a[i]; }

void secure (  )  [inline]

Definition at line 96 of file heap.hpp.


Friends And Related Function Documentation

heap<C> copy ( const heap< C > &  h  )  [friend]
C get_top ( const heap< C > &  h  )  [friend]
nat N ( const heap< C > &  h  )  [friend]
C pull ( heap< C > &  h  )  [friend]
void push ( heap< C > &  h,
const C x 
) [friend]
void set_top ( heap< C > &  h,
const C x 
) [friend]

Member Data Documentation

heap_rep< C >* rep [protected]

Definition at line 74 of file heap.hpp.

Referenced by heap< C >::heap(), and heap< C >::operator[]().


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

Generated on 6 Dec 2012 for basix by  doxygen 1.6.1