SNAP Library, User Reference  2012-10-02 12:56:23
SNAP, a general purpose network analysis and graph mining library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
TVec< TVal > Class Template Reference

List of all members.

Public Types

typedef TVal * TIter

Public Member Functions

 TVec ()
 TVec (const TVec &Vec)
 TVec (const int &_Vals)
 TVec (const int &_MxVals, const int &_Vals)
 TVec (TVal *_ValT, const int &_Vals)
 ~TVec ()
 TVec (TSIn &SIn)
void Load (TSIn &SIn)
void Save (TSOut &SOut) const
void LoadXml (const PXmlTok &XmlTok, const TStr &Nm="")
void SaveXml (TSOut &SOut, const TStr &Nm) const
TVec< TVal > & operator= (const TVec< TVal > &Vec)
TVec< TVal > & operator+ (const TVal &Val)
bool operator== (const TVec< TVal > &Vec) const
bool operator< (const TVec< TVal > &Vec) const
const TVal & operator[] (const int &ValN) const
TVal & operator[] (const int &ValN)
int GetMemUsed () const
int GetPrimHashCd () const
int GetSecHashCd () const
void Gen (const int &_Vals)
void Gen (const int &_MxVals, const int &_Vals)
void GenExt (TVal *_ValT, const int &_Vals)
bool IsExt () const
void Reserve (const int &_MxVals)
void Reserve (const int &_MxVals, const int &_Vals)
void Clr (const bool &DoDel=true, const int &NoDelLim=-1)
void Trunc (const int &_Vals=-1)
void Pack ()
void MoveFrom (TVec< TVal > &Vec)
void Swap (TVec< TVal > &Vec)
bool Empty () const
int Len () const
int Reserved () const
const TVal & Last () const
TVal & Last ()
int LastValN () const
const TVal & LastLast () const
TVal & LastLast ()
TIter BegI () const
TIter EndI () const
TIter GetI (const int &ValN) const
int Add ()
int Add (const TVal &Val)
int Add (const TVal &Val, const int &ResizeLen)
int AddV (const TVec< TVal > &ValV)
int AddSorted (const TVal &Val, const bool &Asc=true, const int &_MxVals=-1)
int AddBackSorted (const TVal &Val, const bool &Asc)
int AddMerged (const TVal &Val)
int AddVMerged (const TVec< TVal > &ValV)
int AddUnique (const TVal &Val)
const TVal & GetVal (const int &ValN) const
TVal & GetVal (const int &ValN)
void GetSubValV (const int &BValN, const int &EValN, TVec< TVal > &ValV) const
void Ins (const int &ValN, const TVal &Val)
void Del (const int &ValN)
void Del (const int &MnValN, const int &MxValN)
void DelLast ()
bool DelIfIn (const TVal &Val)
void DelAll (const TVal &Val)
void PutAll (const TVal &Val)
void Swap (const int &ValN1, const int &ValN2)
int GetPivotValN (const int &LValN, const int &RValN) const
void BSort (const int &MnLValN, const int &MxRValN, const bool &Asc)
void ISort (const int &MnLValN, const int &MxRValN, const bool &Asc)
int Partition (const int &MnLValN, const int &MxRValN, const bool &Asc)
void QSort (const int &MnLValN, const int &MxRValN, const bool &Asc)
void Sort (const bool &Asc=true)
bool IsSorted (const bool &Asc=true) const
void Shuffle (TRnd &Rnd)
void Reverse ()
void Reverse (int First, int Last)
void Merge ()
bool NextPerm ()
bool PrevPerm ()
void MakeHeap ()
void PushHeap (const TVal &Val)
const TVal & TopHeap () const
TVal PopHeap ()
template<class TCmp >
void MakeHeap (const TCmp &Cmp)
template<class TCmp >
void PushHeap (const TVal &Val, const TCmp &Cmp)
template<class TCmp >
TVal PopHeap (const TCmp &Cmp)
template<class TCmp >
void PushHeap (const int &First, int HoleIdx, const int &Top, TVal Val, const TCmp &Cmp)
template<class TCmp >
void AdjustHeap (const int &First, int HoleIdx, const int &Len, TVal Val, const TCmp &Cmp)
template<class TCmp >
void MakeHeap (const int &First, const int &Len, const TCmp &Cmp)
template<class TCmp >
void SortCmp (const TCmp &Cmp)
template<class TCmp >
bool IsSortedCmp (const TCmp &Cmp) const
void Intrs (const TVec< TVal > &ValV)
void Union (const TVec< TVal > &ValV)
void Diff (const TVec< TVal > &ValV)
void Minus (const TVec< TVal > &ValV)
void Intrs (const TVec< TVal > &ValV, TVec< TVal > &DstValV) const
void Union (const TVec< TVal > &ValV, TVec< TVal > &DstValV) const
void Diff (const TVec< TVal > &ValV, TVec< TVal > &DstValV) const
int IntrsLen (const TVec< TVal > &ValV) const
 Get the size of the intersection (number of common elements) of two vectors. Method assumes both vectors are sorted in ascending order!
void Minus (const TVec< TVal > &ValV, TVec< TVal > &DstValV) const
int Count (const TVal &Val) const
int SearchBin (const TVal &Val) const
int SearchBin (const TVal &Val, int &InsValN) const
int SearchForw (const TVal &Val, const int &BValN=0) const
int SearchBack (const TVal &Val) const
int SearchVForw (const TVec< TVal > &ValV, const int &BValN=0) const
bool IsIn (const TVal &Val) const
bool IsIn (const TVal &Val, int &ValN) const
bool IsInBin (const TVal &Val) const
int GetMxValN () const
TVal & GetDat (const TVal &Val) const
TVal & GetAddDat (const TVal &Val)

Static Public Member Functions

static void SwapI (TIter LVal, TIter RVal)
template<class TCmp >
static TIter GetPivotValNCmp (const TIter &BI, const TIter &EI, const TCmp &Cmp)
template<class TCmp >
static TIter PartitionCmp (TIter BI, TIter EI, const TVal Pivot, const TCmp &Cmp)
template<class TCmp >
static void BSortCmp (TIter BI, TIter EI, const TCmp &Cmp)
template<class TCmp >
static void ISortCmp (TIter BI, TIter EI, const TCmp &Cmp)
template<class TCmp >
static void QSortCmp (TIter BI, TIter EI, const TCmp &Cmp)
static TVec< TVal > GetV (const TVal &Val1)
static TVec< TVal > GetV (const TVal &Val1, const TVal &Val2)
static TVec< TVal > GetV (const TVal &Val1, const TVal &Val2, const TVal &Val3)
static TVec< TVal > GetV (const TVal &Val1, const TVal &Val2, const TVal &Val3, const TVal &Val4)
static TVec< TVal > GetV (const TVal &Val1, const TVal &Val2, const TVal &Val3, const TVal &Val4, const TVal &Val5)
static TVec< TVal > GetV (const TVal &Val1, const TVal &Val2, const TVal &Val3, const TVal &Val4, const TVal &Val5, const TVal &Val6)
static TVec< TVal > GetV (const TVal &Val1, const TVal &Val2, const TVal &Val3, const TVal &Val4, const TVal &Val5, const TVal &Val6, const TVal &Val7)
static TVec< TVal > GetV (const TVal &Val1, const TVal &Val2, const TVal &Val3, const TVal &Val4, const TVal &Val5, const TVal &Val6, const TVal &Val7, const TVal &Val8)
static TVec< TVal > GetV (const TVal &Val1, const TVal &Val2, const TVal &Val3, const TVal &Val4, const TVal &Val5, const TVal &Val6, const TVal &Val7, const TVal &Val8, const TVal &Val9)

Protected Member Functions

void Resize (const int &_MxVals=-1)
TStr GetXOutOfBoundsErrMsg (const int &ValN) const

Protected Attributes

int MxVals
int Vals
TVal * ValT

template<class TVal>
class TVec< TVal >


Member Typedef Documentation

template<class TVal>
typedef TVal* TVec< TVal >::TIter

Constructor & Destructor Documentation

template<class TVal>
TVec< TVal >::TVec ( ) [inline]
template<class TVal >
TVec< TVal >::TVec ( const TVec< TVal > &  Vec)
template<class TVal>
TVec< TVal >::TVec ( const int &  _Vals) [inline, explicit]
template<class TVal>
TVec< TVal >::TVec ( const int &  _MxVals,
const int &  _Vals 
) [inline]
template<class TVal>
TVec< TVal >::TVec ( TVal *  _ValT,
const int &  _Vals 
) [inline, explicit]
template<class TVal>
TVec< TVal >::~TVec ( ) [inline]
template<class TVal>
TVec< TVal >::TVec ( TSIn SIn) [inline, explicit]

Member Function Documentation

template<class TVal>
int TVec< TVal >::Add ( ) [inline]
template<class TVal>
int TVec< TVal >::Add ( const TVal &  Val) [inline]
template<class TVal>
int TVec< TVal >::Add ( const TVal &  Val,
const int &  ResizeLen 
) [inline]
template<class TVal>
int TVec< TVal >::AddBackSorted ( const TVal &  Val,
const bool &  Asc 
)
template<class TVal>
int TVec< TVal >::AddMerged ( const TVal &  Val)
template<class TVal>
int TVec< TVal >::AddSorted ( const TVal &  Val,
const bool &  Asc = true,
const int &  _MxVals = -1 
)
template<class TVal>
int TVec< TVal >::AddUnique ( const TVal &  Val)
template<class TVal>
int TVec< TVal >::AddV ( const TVec< TVal > &  ValV)
template<class TVal>
int TVec< TVal >::AddVMerged ( const TVec< TVal > &  ValV)
template<class TVal>
template<class TCmp >
void TVec< TVal >::AdjustHeap ( const int &  First,
int  HoleIdx,
const int &  Len,
TVal  Val,
const TCmp Cmp 
) [inline]
template<class TVal>
TIter TVec< TVal >::BegI ( ) const [inline]
template<class TVal >
void TVec< TVal >::BSort ( const int &  MnLValN,
const int &  MxRValN,
const bool &  Asc 
)
template<class TVal>
template<class TCmp >
static void TVec< TVal >::BSortCmp ( TIter  BI,
TIter  EI,
const TCmp Cmp 
) [inline, static]
template<class TVal >
void TVec< TVal >::Clr ( const bool &  DoDel = true,
const int &  NoDelLim = -1 
)
template<class TVal>
int TVec< TVal >::Count ( const TVal &  Val) const
template<class TVal >
void TVec< TVal >::Del ( const int &  ValN)
template<class TVal >
void TVec< TVal >::Del ( const int &  MnValN,
const int &  MxValN 
)
template<class TVal>
void TVec< TVal >::DelAll ( const TVal &  Val)
template<class TVal>
bool TVec< TVal >::DelIfIn ( const TVal &  Val)
template<class TVal>
void TVec< TVal >::DelLast ( ) [inline]
template<class TVal>
void TVec< TVal >::Diff ( const TVec< TVal > &  ValV)
template<class TVal>
void TVec< TVal >::Diff ( const TVec< TVal > &  ValV,
TVec< TVal > &  DstValV 
) const
template<class TVal>
bool TVec< TVal >::Empty ( ) const [inline]
template<class TVal>
TIter TVec< TVal >::EndI ( ) const [inline]
template<class TVal>
void TVec< TVal >::Gen ( const int &  _Vals) [inline]
template<class TVal>
void TVec< TVal >::Gen ( const int &  _MxVals,
const int &  _Vals 
) [inline]
template<class TVal>
void TVec< TVal >::GenExt ( TVal *  _ValT,
const int &  _Vals 
) [inline]
template<class TVal>
TVal& TVec< TVal >::GetAddDat ( const TVal &  Val) [inline]
template<class TVal>
TVal& TVec< TVal >::GetDat ( const TVal &  Val) const [inline]
template<class TVal>
TIter TVec< TVal >::GetI ( const int &  ValN) const [inline]
template<class TVal>
int TVec< TVal >::GetMemUsed ( ) const [inline]
template<class TVal >
int TVec< TVal >::GetMxValN ( ) const
template<class TVal >
int TVec< TVal >::GetPivotValN ( const int &  LValN,
const int &  RValN 
) const
template<class TVal>
template<class TCmp >
static TIter TVec< TVal >::GetPivotValNCmp ( const TIter BI,
const TIter EI,
const TCmp Cmp 
) [inline, static]
template<class TVal >
int TVec< TVal >::GetPrimHashCd ( ) const
template<class TVal >
int TVec< TVal >::GetSecHashCd ( ) const
template<class TVal>
void TVec< TVal >::GetSubValV ( const int &  BValN,
const int &  EValN,
TVec< TVal > &  ValV 
) const
template<class TVal>
static TVec<TVal> TVec< TVal >::GetV ( const TVal &  Val1) [inline, static]
template<class TVal>
static TVec<TVal> TVec< TVal >::GetV ( const TVal &  Val1,
const TVal &  Val2 
) [inline, static]
template<class TVal>
static TVec<TVal> TVec< TVal >::GetV ( const TVal &  Val1,
const TVal &  Val2,
const TVal &  Val3 
) [inline, static]
template<class TVal>
static TVec<TVal> TVec< TVal >::GetV ( const TVal &  Val1,
const TVal &  Val2,
const TVal &  Val3,
const TVal &  Val4 
) [inline, static]
template<class TVal>
static TVec<TVal> TVec< TVal >::GetV ( const TVal &  Val1,
const TVal &  Val2,
const TVal &  Val3,
const TVal &  Val4,
const TVal &  Val5 
) [inline, static]
template<class TVal>
static TVec<TVal> TVec< TVal >::GetV ( const TVal &  Val1,
const TVal &  Val2,
const TVal &  Val3,
const TVal &  Val4,
const TVal &  Val5,
const TVal &  Val6 
) [inline, static]
template<class TVal>
static TVec<TVal> TVec< TVal >::GetV ( const TVal &  Val1,
const TVal &  Val2,
const TVal &  Val3,
const TVal &  Val4,
const TVal &  Val5,
const TVal &  Val6,
const TVal &  Val7 
) [inline, static]
template<class TVal>
static TVec<TVal> TVec< TVal >::GetV ( const TVal &  Val1,
const TVal &  Val2,
const TVal &  Val3,
const TVal &  Val4,
const TVal &  Val5,
const TVal &  Val6,
const TVal &  Val7,
const TVal &  Val8 
) [inline, static]
template<class TVal>
static TVec<TVal> TVec< TVal >::GetV ( const TVal &  Val1,
const TVal &  Val2,
const TVal &  Val3,
const TVal &  Val4,
const TVal &  Val5,
const TVal &  Val6,
const TVal &  Val7,
const TVal &  Val8,
const TVal &  Val9 
) [inline, static]
template<class TVal>
const TVal& TVec< TVal >::GetVal ( const int &  ValN) const [inline]
template<class TVal>
TVal& TVec< TVal >::GetVal ( const int &  ValN) [inline]
template<class TVal >
TStr TVec< TVal >::GetXOutOfBoundsErrMsg ( const int &  ValN) const [protected]
template<class TVal>
void TVec< TVal >::Ins ( const int &  ValN,
const TVal &  Val 
)
template<class TVal>
void TVec< TVal >::Intrs ( const TVec< TVal > &  ValV)
template<class TVal>
void TVec< TVal >::Intrs ( const TVec< TVal > &  ValV,
TVec< TVal > &  DstValV 
) const
template<class TVal>
int TVec< TVal >::IntrsLen ( const TVec< TVal > &  ValV) const

Get the size of the intersection (number of common elements) of two vectors. Method assumes both vectors are sorted in ascending order!

template<class TVal>
bool TVec< TVal >::IsExt ( ) const [inline]
template<class TVal>
bool TVec< TVal >::IsIn ( const TVal &  Val) const [inline]
template<class TVal>
bool TVec< TVal >::IsIn ( const TVal &  Val,
int &  ValN 
) const [inline]
template<class TVal>
bool TVec< TVal >::IsInBin ( const TVal &  Val) const [inline]
template<class TVal >
void TVec< TVal >::ISort ( const int &  MnLValN,
const int &  MxRValN,
const bool &  Asc 
)
template<class TVal>
template<class TCmp >
static void TVec< TVal >::ISortCmp ( TIter  BI,
TIter  EI,
const TCmp Cmp 
) [inline, static]
template<class TVal >
bool TVec< TVal >::IsSorted ( const bool &  Asc = true) const
template<class TVal>
template<class TCmp >
bool TVec< TVal >::IsSortedCmp ( const TCmp Cmp) const [inline]
template<class TVal>
const TVal& TVec< TVal >::Last ( ) const [inline]
template<class TVal>
TVal& TVec< TVal >::Last ( ) [inline]
template<class TVal>
const TVal& TVec< TVal >::LastLast ( ) const [inline]
template<class TVal>
TVal& TVec< TVal >::LastLast ( ) [inline]
template<class TVal>
int TVec< TVal >::LastValN ( ) const [inline]
template<class TVal>
int TVec< TVal >::Len ( ) const [inline]
template<class TVal >
void TVec< TVal >::Load ( TSIn SIn)
template<class TVal >
void TVec< TVal >::LoadXml ( const PXmlTok &  XmlTok,
const TStr Nm = "" 
)
template<class TVal>
void TVec< TVal >::MakeHeap ( ) [inline]
template<class TVal>
template<class TCmp >
void TVec< TVal >::MakeHeap ( const TCmp Cmp) [inline]
template<class TVal>
template<class TCmp >
void TVec< TVal >::MakeHeap ( const int &  First,
const int &  Len,
const TCmp Cmp 
) [inline]
template<class TVal >
void TVec< TVal >::Merge ( )
template<class TVal>
void TVec< TVal >::Minus ( const TVec< TVal > &  ValV)
template<class TVal>
void TVec< TVal >::Minus ( const TVec< TVal > &  ValV,
TVec< TVal > &  DstValV 
) const
template<class TVal>
void TVec< TVal >::MoveFrom ( TVec< TVal > &  Vec)
template<class TVal >
bool TVec< TVal >::NextPerm ( )
template<class TVal>
TVec<TVal>& TVec< TVal >::operator+ ( const TVal &  Val) [inline]
template<class TVal>
bool TVec< TVal >::operator< ( const TVec< TVal > &  Vec) const
template<class TVal>
TVec< TVal > & TVec< TVal >::operator= ( const TVec< TVal > &  Vec)
template<class TVal>
bool TVec< TVal >::operator== ( const TVec< TVal > &  Vec) const
template<class TVal>
const TVal& TVec< TVal >::operator[] ( const int &  ValN) const [inline]
template<class TVal>
TVal& TVec< TVal >::operator[] ( const int &  ValN) [inline]
template<class TVal >
void TVec< TVal >::Pack ( )
template<class TVal >
int TVec< TVal >::Partition ( const int &  MnLValN,
const int &  MxRValN,
const bool &  Asc 
)
template<class TVal>
template<class TCmp >
static TIter TVec< TVal >::PartitionCmp ( TIter  BI,
TIter  EI,
const TVal  Pivot,
const TCmp Cmp 
) [inline, static]
template<class TVal>
TVal TVec< TVal >::PopHeap ( ) [inline]
template<class TVal>
template<class TCmp >
TVal TVec< TVal >::PopHeap ( const TCmp Cmp) [inline]
template<class TVal >
bool TVec< TVal >::PrevPerm ( )
template<class TVal>
void TVec< TVal >::PushHeap ( const TVal &  Val) [inline]
template<class TVal>
template<class TCmp >
void TVec< TVal >::PushHeap ( const TVal &  Val,
const TCmp Cmp 
) [inline]
template<class TVal>
template<class TCmp >
void TVec< TVal >::PushHeap ( const int &  First,
int  HoleIdx,
const int &  Top,
TVal  Val,
const TCmp Cmp 
) [inline]
template<class TVal>
void TVec< TVal >::PutAll ( const TVal &  Val)
template<class TVal >
void TVec< TVal >::QSort ( const int &  MnLValN,
const int &  MxRValN,
const bool &  Asc 
)
template<class TVal>
template<class TCmp >
static void TVec< TVal >::QSortCmp ( TIter  BI,
TIter  EI,
const TCmp Cmp 
) [inline, static]
template<class TVal>
void TVec< TVal >::Reserve ( const int &  _MxVals) [inline]
template<class TVal>
void TVec< TVal >::Reserve ( const int &  _MxVals,
const int &  _Vals 
) [inline]
template<class TVal>
int TVec< TVal >::Reserved ( ) const [inline]
template<class TVal >
void TVec< TVal >::Resize ( const int &  _MxVals = -1) [protected]
template<class TVal >
void TVec< TVal >::Reverse ( )
template<class TVal>
void TVec< TVal >::Reverse ( int  First,
int  Last 
) [inline]
template<class TVal >
void TVec< TVal >::Save ( TSOut SOut) const
template<class TVal >
void TVec< TVal >::SaveXml ( TSOut SOut,
const TStr Nm 
) const
template<class TVal>
int TVec< TVal >::SearchBack ( const TVal &  Val) const
template<class TVal>
int TVec< TVal >::SearchBin ( const TVal &  Val) const
template<class TVal>
int TVec< TVal >::SearchBin ( const TVal &  Val,
int &  InsValN 
) const
template<class TVal>
int TVec< TVal >::SearchForw ( const TVal &  Val,
const int &  BValN = 0 
) const
template<class TVal>
int TVec< TVal >::SearchVForw ( const TVec< TVal > &  ValV,
const int &  BValN = 0 
) const
template<class TVal >
void TVec< TVal >::Shuffle ( TRnd Rnd)
template<class TVal >
void TVec< TVal >::Sort ( const bool &  Asc = true)
template<class TVal>
template<class TCmp >
void TVec< TVal >::SortCmp ( const TCmp Cmp) [inline]
template<class TVal>
void TVec< TVal >::Swap ( TVec< TVal > &  Vec)
template<class TVal>
void TVec< TVal >::Swap ( const int &  ValN1,
const int &  ValN2 
) [inline]
template<class TVal>
static void TVec< TVal >::SwapI ( TIter  LVal,
TIter  RVal 
) [inline, static]
template<class TVal>
const TVal& TVec< TVal >::TopHeap ( ) const [inline]
template<class TVal >
void TVec< TVal >::Trunc ( const int &  _Vals = -1)
template<class TVal>
void TVec< TVal >::Union ( const TVec< TVal > &  ValV)
template<class TVal>
void TVec< TVal >::Union ( const TVec< TVal > &  ValV,
TVec< TVal > &  DstValV 
) const

Member Data Documentation

template<class TVal>
int TVec< TVal >::MxVals [protected]
template<class TVal>
int TVec< TVal >::Vals [protected]
template<class TVal>
TVal* TVec< TVal >::ValT [protected]

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