Developer Documentation
RAVL, Recognition And Vision Library
USER HOME PAGE CLASS LIST CONTENTS
Ravl - Core - Hash Tables - HashElemC<class K,class T>
 

  PUBLIC
HashElemC::HashElemC(void)
HashElemC::HashElemC(istream &)
HashElemC::HashElemC(BinIStreamC &)
HashElemC::HashElemC(const K &,const T &)
HashElemC::HashElemC(const K &,UIntT,const T &)
HashElemC::Data(void) const
HashElemC::Data(void)
HashElemC::GetData(void)
HashElemC::GetKey(void) const
HashElemC::operator ==(const K &) const
HashElemC::GetHashVal(void) const
DLinkC::SetSelfPointing(void)
DLinkC::IsSelfPointing(void) const
DLinkC::Next(void) const
DLinkC::Prev(void) const
DLinkC::Next(void)
DLinkC::Prev(void)
DLinkC::Reverse(void)
DLinkC::LinkBef(DLinkC &)
DLinkC::LinkAft(DLinkC &)
DLinkC::Unlink(void)
DLinkC::CutPaste(DLinkC &,DLinkC &)

   HashElemC<class K,class T>   
 
include "Ravl/Hash.hh"
Created:1/9/1996 
Source file:Ravl/Core/Container/Hash/Hash.hh
User Level:Develop
Library:RavlCore
Example:WordFreq.cc exHash.cc
In Scope:RavlN

Comments:
///////////////////////////////////// Element in hash table. K - Key class. T - Data class.

Parent Classes: Variables:
UIntT hashVal;

K Key;

T Hold;

Methods:
HashElemC()
Default constructor.
To keep the compiler happy.

HashElemC(istream & in)
Load from stream.

HashElemC(BinIStreamC & in)
Load from stream.

HashElemC(const K & nKey,const T & Data)
Constructor.

HashElemC(const K & nKey,UIntT nHashVal,const T & Data)
Constructor.

const T & Data() const
Get constant reference to data.

T & Data()
Get reference to data.

T GetData()
Get copy of data.

const K & GetKey() const
Get value key.

bool operator ==(const K & Another) const
Does key equal that of this element ?

UIntT GetHashVal() const
Get hash value.

#include "Ravl/DLink.hh"
void SetSelfPointing()
Set both links to point to this object.

bool IsSelfPointing() const
Returns TRUE if the next element is this element.

const DLinkC & Next() const
Returns the next element in a constant list.

const DLinkC & Prev() const
Returns the previous element in a constant list.

DLinkC & Next()
Returns the next element in a list.

DLinkC & Prev()
Returns the previous element in a list.

void Reverse()
Swap links.
Swaps the links in all chain elements exchanging meaning of "successor" and "predecessor".

DLinkC & LinkBef(DLinkC & elm)
Links 'elm' before the element.
The links of 'elm' need not to be proper links.

DLinkC & LinkAft(DLinkC & elm)
Links 'elm' after this element.
The links of 'elm' need not to be proper links.

DLinkC & Unlink()
Unlinks the list element from the list.
The predecessor and the successor of this element will be linked to each other. However, the links of this element stay unchanged. Returns this list element.

void CutPaste(DLinkC & firstCut,DLinkC & firstNotCut)
Splice list elements between firstCut, and firstNotCut into this list.
Cuts the chain of double links elements starting at 'firstCut' and ending at the element previous of 'firstNotCut' from a chain. The rest of the chain is linked together again. The cut part is linked in after this element.


Maintainer:Charles Galambos, Created: 1/9/1996, Documentation by CxxDoc: Tue Aug 13 09:59:30 2002