Main Page   Packages   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Search  

Link Class Reference

#include <Link.hpp>

List of all members.

Public Methods

 Link ()
 Link (Link &link)
 Link (Link *nextp)
 Link (DBase *Elemval)
 Link (DBase *Elemval, Link *nextp)
void * operator new (size_t)
void operator delete (void *)
 Link (const Elem Elemval, Link *nextp=NULL, Link *prevp=NULL)
 Link (Link *nextp=NULL, Link *prevp=NULL)
void * operator new (size_t)
void operator delete (void *)
 Link (const Elem elemval, Link *nextval=NULL)
 Link (Link *nextval=NULL)
 ~Link ()
void * operator new (size_t)
void operator delete (void *)
 Link (const Elem elemval, Link *nextval=NULL)
 Link (Link *nextval=NULL)
 Link (const Elem elemval, Link *nextval=NULL)
 Link (Link *nextval=NULL)
void * operator new (size_t)
void operator delete (void *)

Public Attributes

DBaseelement
Link * next
Elem element
Link * next
Link * prev
Link * next
Link * next
Link * next

Static Public Attributes

Link * freelist = NULL
Link * freelist
Link * freelist
Link * freelist


Constructor & Destructor Documentation

Link::Link  
 

Definition at line 7 of file Link.cpp.

00007                {
00008          next = NULL;
00009    }

Link::Link Link &    link
 

Definition at line 11 of file Link.cpp.

00011                            {                // Copy Constructor
00012         element = new DBase( *link.element );
00013         next = NULL;  
00014    }

Link::Link Link *    nextp
 

Definition at line 16 of file Link.cpp.

00016                            {                // Default Empty Constructor
00017         next = nextp;  
00018    }

Link::Link DBase   Elemval
 

Definition at line 20 of file Link.cpp.

00020                              {              // With an element and no ptr
00021         element = Elemval;  
00022         next = NULL;
00023    }

Link::Link DBase   Elemval,
Link *    nextp
 

Definition at line 25 of file Link.cpp.

00025                                           { // With an element and next ptr
00026         element = Elemval;  
00027         next = nextp;  
00028    }

Link::Link const Elem    Elemval,
Link *    nextp = NULL,
Link *    prevp = NULL
[inline]
 

Definition at line 7 of file DLINKF.H.

00008     { element = Elemval;  next = nextp;  prev = prevp;}

Link::Link Link *    nextp = NULL,
Link *    prevp = NULL
[inline]
 

Definition at line 9 of file DLINKF.H.

00010     { next = nextp;  prev = prevp; }

Link::Link const Elem    elemval,
Link *    nextval = NULL
[inline]
 

Definition at line 6 of file FREE.C.

00007     { element = elemval;  next = nextval; }

Link::Link Link *    nextval = NULL [inline]
 

Definition at line 8 of file FREE.C.

00008 { next = nextval; }

Link::~Link   [inline]
 

Definition at line 9 of file FREE.C.

00009 { }                  // Destructor: take no action

Link::Link const Elem    elemval,
Link *    nextval = NULL
[inline]
 

Definition at line 5 of file LINK.X.

00006     { element = elemval;  next = nextval; }     // Given Elem value

Link::Link Link *    nextval = NULL [inline]
 

Definition at line 7 of file LINK.X.

00007 { next = nextval; } // Constructor 2

Link::Link const Elem    elemval,
Link *    nextval = NULL
[inline]
 

Definition at line 6 of file LINKF.H.

00007     { element = elemval;  next = nextval; }     // Given Elem value

Link::Link Link *    nextval = NULL [inline]
 

Definition at line 8 of file LINKF.H.

00008 { next = nextval; } // Constructor 2


Member Function Documentation

void Link::operator delete void *   
 

void Link::operator delete void *   
 

void Link::operator delete void *   
 

void Link::operator delete void *    ptr
 

Definition at line 40 of file Link.cpp.

00040                                     {       // Overload delete
00041   ((Link*)ptr)->next = freelist;         // Put on freelist
00042   freelist = (Link*)ptr;
00043 }

void* Link::operator new size_t   
 

void* Link::operator new size_t   
 

void* Link::operator new size_t   
 

void * Link::operator new size_t   
 

Definition at line 31 of file Link.cpp.

00031                                {         // Overload new
00032   if (freelist == NULL)                  // Create new space
00033     return ::new Link; 
00034 
00035   Link* temp = freelist;                  // Otherwise, get from freelist
00036   freelist = freelist->next;
00037   return temp;                        // Return the link node
00038 }


Member Data Documentation

Elem Link::element
 

Definition at line 3 of file LINKF.H.

Elem Link::element
 

Definition at line 3 of file LINKF.H.

Referenced by Link(), Stack::display(), Stack::pop(), and Stack::topValue().

Link* Link::freelist [static]
 

Definition at line 5 of file LINKF.H.

Link* Link::freelist [static]
 

Definition at line 5 of file FREE.C.

Link* Link::freelist [static]
 

Definition at line 6 of file DLINKF.H.

Link * Link::freelist = NULL [static]
 

Definition at line 2 of file LINKFUNC.X.

Link* Link::next
 

Definition at line 4 of file LINKF.H.

Link* Link::next
 

Definition at line 4 of file LINK.X.

Link* Link::next
 

Definition at line 4 of file FREE.C.

Link* Link::next
 

Definition at line 4 of file DLINKF.H.

Link* Link::next
 

Definition at line 29 of file Link.hpp.

Referenced by Stack::Stack(), Stack::clear(), Stack::display(), freelist(), operator new(), and Stack::pop().

Link* Link::prev
 

Definition at line 5 of file DLINKF.H.


The documentation for this class was generated from the following files:
Generated on Sun Oct 14 18:49:12 2001 for Standard J2K Library by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001