| 
    SNAP Library 2.0, Developer Reference
    2013-05-13 16:33:57
    
   SNAP, a general purpose, high performance system for analysis and manipulation of large networks 
   | 
  
  
  
 
#include <shash.h>

Public Member Functions | |
| TKeyDatFl (const TStr &FNm) | |
| int | Len () const | 
| bool | Next () | 
| const TKey & | GetKey () const | 
| TKey & | GetKey () | 
| const TDat & | GetDat () const | 
| TDat & | GetDat () | 
Static Public Member Functions | |
| static void | Save (const TStr &OutFNm, const THash< TKey, TDat, THashFunc > &Hash) | 
| static void | Save (TSOut &SOut, const THash< TKey, TDat, THashFunc > &Hash) | 
| static void | LoadHash (const TStr &InFNm, THash< TKey, TDat, THashFunc > &Hash, const int &LoadN=-1) | 
| static void | LoadHash (TSIn &SIn, THash< TKey, TDat, THashFunc > &Hash, int LoadN=-1) | 
| static void | LoadKeyV (TSIn &SIn, TVec< TKey > &KeyV, int LoadN=-1) | 
| static void | LoadDatV (TSIn &SIn, TVec< TDat > &DatV, int LoadN=-1) | 
Private Attributes | |
| TInt | ElemCnt | 
| TFIn | FIn | 
| TKey | Key | 
| TDat | Dat | 
| TKeyDatFl< TKey, TDat, THashFunc >::TKeyDatFl | ( | const TStr & | FNm | ) |  [inline] | 
        
Definition at line 17 of file shash.h.
References TKeyDatFl< TKey, TDat, THashFunc >::ElemCnt, TKeyDatFl< TKey, TDat, THashFunc >::FIn, and TInt::Load().

| const TDat& TKeyDatFl< TKey, TDat, THashFunc >::GetDat | ( | ) |  const [inline] | 
        
Definition at line 23 of file shash.h.
References TKeyDatFl< TKey, TDat, THashFunc >::Dat.
{ return Dat; }
| TDat& TKeyDatFl< TKey, TDat, THashFunc >::GetDat | ( | ) |  [inline] | 
        
Definition at line 24 of file shash.h.
References TKeyDatFl< TKey, TDat, THashFunc >::Dat.
{ return Dat; }
| const TKey& TKeyDatFl< TKey, TDat, THashFunc >::GetKey | ( | ) |  const [inline] | 
        
Definition at line 21 of file shash.h.
References TKeyDatFl< TKey, TDat, THashFunc >::Key.
{ return Key; }
| TKey& TKeyDatFl< TKey, TDat, THashFunc >::GetKey | ( | ) |  [inline] | 
        
Definition at line 22 of file shash.h.
References TKeyDatFl< TKey, TDat, THashFunc >::Key.
{ return Key; }
| int TKeyDatFl< TKey, TDat, THashFunc >::Len | ( | ) |  const [inline] | 
        
Definition at line 18 of file shash.h.
References TKeyDatFl< TKey, TDat, THashFunc >::ElemCnt.
{ return ElemCnt; }
| static void TKeyDatFl< TKey, TDat, THashFunc >::LoadDatV | ( | TSIn & | SIn, | 
| TVec< TDat > & | DatV, | ||
| int | LoadN = -1  | 
        ||
| ) |  [inline, static] | 
        
Definition at line 49 of file shash.h.
References TVec< TVal, TSizeTy >::Add(), TStr::CStr(), TKeyDatFl< TKey, TDat, THashFunc >::ElemCnt, TVec< TVal, TSizeTy >::Gen(), and TSBase::GetSNm().
                                                                  {
    TInt ElemCnt(SIn);  const int Start=clock();
    if (ElemCnt < LoadN || LoadN == -1) { LoadN = ElemCnt; }
    printf("Loading %s: %d elements ... ", SIn.GetSNm().CStr(), LoadN);  DatV.Gen(LoadN, 0);
    for (int i = 0; i < LoadN; i++) { TKey(SIn);  DatV.Add(TDat(SIn)); }
    printf(" [%ds]\n", int((clock()-Start)/CLOCKS_PER_SEC));
  }

| static void TKeyDatFl< TKey, TDat, THashFunc >::LoadHash | ( | TSIn & | SIn, | 
| THash< TKey, TDat, THashFunc > & | Hash, | ||
| int | LoadN = -1  | 
        ||
| ) |  [inline, static] | 
        
Definition at line 35 of file shash.h.
References THash< TKey, TDat, THashFunc >::AddDat(), TStr::CStr(), TKeyDatFl< TKey, TDat, THashFunc >::ElemCnt, THash< TKey, TDat, THashFunc >::Gen(), and TSBase::GetSNm().
                                                                                    {
    TInt ElemCnt(SIn);  const int Start=clock();
    if (ElemCnt < LoadN || LoadN == -1) { LoadN = ElemCnt; }
    printf("Loading %s: %d elements ... ", SIn.GetSNm().CStr(), LoadN);  Hash.Gen(LoadN);
    for (int i = 0; i < LoadN; i++) { Hash.AddDat(TKey(SIn)).Load(SIn); }
    printf(" [%ds]\n", int((clock()-Start)/CLOCKS_PER_SEC));
  }

| static void TKeyDatFl< TKey, TDat, THashFunc >::LoadKeyV | ( | TSIn & | SIn, | 
| TVec< TKey > & | KeyV, | ||
| int | LoadN = -1  | 
        ||
| ) |  [inline, static] | 
        
Definition at line 42 of file shash.h.
References TVec< TVal, TSizeTy >::Add(), TStr::CStr(), TKeyDatFl< TKey, TDat, THashFunc >::ElemCnt, TVec< TVal, TSizeTy >::Gen(), and TSBase::GetSNm().
                                                                  {
    TInt ElemCnt(SIn);  const int Start=clock();
    if (ElemCnt < LoadN || LoadN == -1) { LoadN = ElemCnt; }
    printf("Loading %s: %d elements ... ", SIn.GetSNm().CStr(), LoadN);  KeyV.Gen(LoadN, 0);
    for (int i = 0; i < LoadN; i++) { KeyV.Add(TKey(SIn));  TDat D(SIn); }
    printf(" [%ds]\n", int((clock()-Start)/CLOCKS_PER_SEC));
  }

| bool TKeyDatFl< TKey, TDat, THashFunc >::Next | ( | ) |  [inline] | 
        
Definition at line 19 of file shash.h.
References TKeyDatFl< TKey, TDat, THashFunc >::Dat, TFIn::Eof(), TKeyDatFl< TKey, TDat, THashFunc >::FIn, and TKeyDatFl< TKey, TDat, THashFunc >::Key.

| static void TKeyDatFl< TKey, TDat, THashFunc >::Save | ( | TSOut & | SOut, | 
| const THash< TKey, TDat, THashFunc > & | Hash | ||
| ) |  [inline, static] | 
        
Definition at line 28 of file shash.h.
References THash< TKey, TDat, THashFunc >::FFirstKeyId(), THash< TKey, TDat, THashFunc >::FNextKeyId(), THash< TKey, TDat, THashFunc >::GetKey(), THash< TKey, TDat, THashFunc >::Len(), THash< TKey, TDat, THashFunc >::Save(), and TSOut::Save().
                                                                          {
    SOut.Save(Hash.Len());
    for (int k = Hash.FFirstKeyId(); Hash.FNextKeyId(k); ) {
      Hash.GetKey(k).Save(SOut);  Hash[k].Save(SOut); }
  }

TDat TKeyDatFl< TKey, TDat, THashFunc >::Dat [private] | 
        
Definition at line 15 of file shash.h.
Referenced by TKeyDatFl< TKey, TDat, THashFunc >::GetDat(), and TKeyDatFl< TKey, TDat, THashFunc >::Next().
TFIn TKeyDatFl< TKey, TDat, THashFunc >::FIn [private] | 
        
Definition at line 13 of file shash.h.
Referenced by TKeyDatFl< TKey, TDat, THashFunc >::LoadHash(), TKeyDatFl< TKey, TDat, THashFunc >::Next(), and TKeyDatFl< TKey, TDat, THashFunc >::TKeyDatFl().
TKey TKeyDatFl< TKey, TDat, THashFunc >::Key [private] | 
        
Definition at line 14 of file shash.h.
Referenced by TKeyDatFl< TKey, TDat, THashFunc >::GetKey(), and TKeyDatFl< TKey, TDat, THashFunc >::Next().