SNAP Library 2.3, User Reference  2014-06-16 11:58:46
SNAP, a general purpose, high performance system for analysis and manipulation of large networks
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
THashKeyDatI< TKey, TDat > Class Template Reference

#include <hash.h>

Public Types

typedef THashKeyDat< TKey, TDat > THKeyDat
 

Public Member Functions

 THashKeyDatI ()
 
 THashKeyDatI (const THashKeyDatI &_HashKeyDatI)
 
 THashKeyDatI (const THKeyDat *_KeyDatI, const THKeyDat *_EndI)
 
THashKeyDatIoperator= (const THashKeyDatI &HashKeyDatI)
 
bool operator== (const THashKeyDatI &HashKeyDatI) const
 
bool operator< (const THashKeyDatI &HashKeyDatI) const
 
THashKeyDatIoperator++ (int)
 
THashKeyDatIoperator-- (int)
 
THKeyDatoperator* () const
 
THKeyDatoperator() () const
 
THKeyDatoperator-> () const
 
THashKeyDatINext ()
 
bool IsEmpty () const
 Tests whether the iterator has been initialized. More...
 
bool IsEnd () const
 Tests whether the iterator is pointing to the past-end element. More...
 
const TKey & GetKey () const
 
const TDat & GetDat () const
 
TDat & GetDat ()
 

Private Attributes

THKeyDatKeyDatI
 
THKeyDatEndI
 

Detailed Description

template<class TKey, class TDat>
class THashKeyDatI< TKey, TDat >

Definition at line 40 of file hash.h.

Member Typedef Documentation

template<class TKey , class TDat >
typedef THashKeyDat<TKey, TDat> THashKeyDatI< TKey, TDat >::THKeyDat

Definition at line 42 of file hash.h.

Constructor & Destructor Documentation

template<class TKey , class TDat >
THashKeyDatI< TKey, TDat >::THashKeyDatI ( )
inline

Definition at line 47 of file hash.h.

47 : KeyDatI(NULL), EndI(NULL){}
THKeyDat * KeyDatI
Definition: hash.h:44
THKeyDat * EndI
Definition: hash.h:45
template<class TKey , class TDat >
THashKeyDatI< TKey, TDat >::THashKeyDatI ( const THashKeyDatI< TKey, TDat > &  _HashKeyDatI)
inline

Definition at line 48 of file hash.h.

48  :
49  KeyDatI(_HashKeyDatI.KeyDatI), EndI(_HashKeyDatI.EndI){}
THKeyDat * KeyDatI
Definition: hash.h:44
THKeyDat * EndI
Definition: hash.h:45
template<class TKey , class TDat >
THashKeyDatI< TKey, TDat >::THashKeyDatI ( const THKeyDat _KeyDatI,
const THKeyDat _EndI 
)
inline

Definition at line 50 of file hash.h.

50  :
51  KeyDatI((THKeyDat*)_KeyDatI), EndI((THKeyDat*)_EndI){}
THKeyDat * KeyDatI
Definition: hash.h:44
THashKeyDat< TKey, TDat > THKeyDat
Definition: hash.h:42
THKeyDat * EndI
Definition: hash.h:45

Member Function Documentation

template<class TKey , class TDat >
const TDat& THashKeyDatI< TKey, TDat >::GetDat ( ) const
inline

Definition at line 72 of file hash.h.

72 {Assert((KeyDatI!=NULL)&&(KeyDatI->HashCd!=-1)); return KeyDatI->Dat;}
TDat Dat
Definition: hash.h:12
THKeyDat * KeyDatI
Definition: hash.h:44
#define Assert(Cond)
Definition: bd.h:251
TInt HashCd
Definition: hash.h:10
template<class TKey , class TDat >
TDat& THashKeyDatI< TKey, TDat >::GetDat ( )
inline

Definition at line 73 of file hash.h.

73 {Assert((KeyDatI!=NULL)&&(KeyDatI->HashCd!=-1)); return KeyDatI->Dat;}
TDat Dat
Definition: hash.h:12
THKeyDat * KeyDatI
Definition: hash.h:44
#define Assert(Cond)
Definition: bd.h:251
TInt HashCd
Definition: hash.h:10
template<class TKey , class TDat >
const TKey& THashKeyDatI< TKey, TDat >::GetKey ( ) const
inline

Definition at line 71 of file hash.h.

71 {Assert((KeyDatI!=NULL)&&(KeyDatI->HashCd!=-1)); return KeyDatI->Key;}
THKeyDat * KeyDatI
Definition: hash.h:44
#define Assert(Cond)
Definition: bd.h:251
TKey Key
Definition: hash.h:11
TInt HashCd
Definition: hash.h:10
template<class TKey , class TDat >
bool THashKeyDatI< TKey, TDat >::IsEmpty ( ) const
inline

Tests whether the iterator has been initialized.

Definition at line 67 of file hash.h.

67 { return KeyDatI == NULL; }
THKeyDat * KeyDatI
Definition: hash.h:44
template<class TKey , class TDat >
bool THashKeyDatI< TKey, TDat >::IsEnd ( ) const
inline

Tests whether the iterator is pointing to the past-end element.

Definition at line 69 of file hash.h.

69 { return EndI == KeyDatI; }
THKeyDat * KeyDatI
Definition: hash.h:44
THKeyDat * EndI
Definition: hash.h:45
template<class TKey , class TDat >
THashKeyDatI& THashKeyDatI< TKey, TDat >::Next ( )
inline

Definition at line 64 of file hash.h.

64 { operator++(1); return *this; }
THashKeyDatI & operator++(int)
Definition: hash.h:59
template<class TKey , class TDat >
THKeyDat& THashKeyDatI< TKey, TDat >::operator() ( ) const
inline

Definition at line 62 of file hash.h.

62 { return *KeyDatI; }
THKeyDat * KeyDatI
Definition: hash.h:44
template<class TKey , class TDat >
THKeyDat& THashKeyDatI< TKey, TDat >::operator* ( ) const
inline

Definition at line 61 of file hash.h.

61 { return *KeyDatI; }
THKeyDat * KeyDatI
Definition: hash.h:44
template<class TKey , class TDat >
THashKeyDatI& THashKeyDatI< TKey, TDat >::operator++ ( int  )
inline

Definition at line 59 of file hash.h.

59 { KeyDatI++; while (KeyDatI < EndI && KeyDatI->HashCd==-1) { KeyDatI++; } return *this; }
THKeyDat * KeyDatI
Definition: hash.h:44
template<class TKey , class TDat >
THashKeyDatI& THashKeyDatI< TKey, TDat >::operator-- ( int  )
inline

Definition at line 60 of file hash.h.

60 { do { KeyDatI--; } while (KeyDatI->HashCd==-1); return *this;}
THKeyDat * KeyDatI
Definition: hash.h:44
TInt HashCd
Definition: hash.h:10
template<class TKey , class TDat >
THKeyDat* THashKeyDatI< TKey, TDat >::operator-> ( ) const
inline

Definition at line 63 of file hash.h.

63 { return KeyDatI; }
THKeyDat * KeyDatI
Definition: hash.h:44
template<class TKey , class TDat >
bool THashKeyDatI< TKey, TDat >::operator< ( const THashKeyDatI< TKey, TDat > &  HashKeyDatI) const
inline

Definition at line 57 of file hash.h.

57  {
58  return KeyDatI<HashKeyDatI.KeyDatI;}
THKeyDat * KeyDatI
Definition: hash.h:44
template<class TKey , class TDat >
THashKeyDatI& THashKeyDatI< TKey, TDat >::operator= ( const THashKeyDatI< TKey, TDat > &  HashKeyDatI)
inline

Definition at line 53 of file hash.h.

53  {
54  KeyDatI=HashKeyDatI.KeyDatI; EndI=HashKeyDatI.EndI; return *this;}
THKeyDat * KeyDatI
Definition: hash.h:44
THKeyDat * EndI
Definition: hash.h:45
template<class TKey , class TDat >
bool THashKeyDatI< TKey, TDat >::operator== ( const THashKeyDatI< TKey, TDat > &  HashKeyDatI) const
inline

Definition at line 55 of file hash.h.

55  {
56  return KeyDatI==HashKeyDatI.KeyDatI;}
THKeyDat * KeyDatI
Definition: hash.h:44

Member Data Documentation

template<class TKey , class TDat >
THKeyDat* THashKeyDatI< TKey, TDat >::EndI
private

Definition at line 45 of file hash.h.

template<class TKey , class TDat >
THKeyDat* THashKeyDatI< TKey, TDat >::KeyDatI
private

Definition at line 44 of file hash.h.


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