SampleValueAdjacencyList Class Reference

an adjacency list-like data structur for sample values

#include <SampleValueAdjacencyList.h>

List of all members.

Public Member Functions

 SampleValueAdjacencyList (SampleValueLabel numsvs)
std::vector< SampleValue * > & operator[] (const SampleValueLabel lbl)
std::vector< SampleValue * > & operator[] (const SampleValue *sv)
unsigned long getNumRows (void) const
bool operator== (const SampleValueAdjacencyList &sval)
void sort (void)

Private Member Functions

void quicksort (std::vector< SampleValue * > &oppneighs, UWORD32 *distances, unsigned int l, unsigned int r)
unsigned int partition (std::vector< SampleValue * > &oppneighs, UWORD32 *distances, unsigned int l, unsigned int r, UWORD32 x)
void swap (std::vector< SampleValue * > &oppneighs, UWORD32 *distances, unsigned int i, unsigned int j)

Private Attributes

std::vector< std::vector
< SampleValue * > > 
AdjacencyList


Constructor & Destructor Documentation

SampleValueAdjacencyList::SampleValueAdjacencyList ( SampleValueLabel  numsvs  ) 

construct a SampleValueAdjacencyList with numsvs rows


Member Function Documentation

unsigned long SampleValueAdjacencyList::getNumRows ( void   )  const [inline]

bool SampleValueAdjacencyList::operator== ( const SampleValueAdjacencyList sval  ) 

check if every row contains the same set of sample values

std::vector<SampleValue*>& SampleValueAdjacencyList::operator[] ( const SampleValue sv  )  [inline]

std::vector<SampleValue*>& SampleValueAdjacencyList::operator[] ( const SampleValueLabel  lbl  )  [inline]

unsigned int SampleValueAdjacencyList::partition ( std::vector< SampleValue * > &  oppneighs,
UWORD32 distances,
unsigned int  l,
unsigned int  r,
UWORD32  x 
) [private]

partition oppneighs/distances into those with distances less than and those with distances greater than and equal to x

Returns:
the index in oppneighs/distances that separates the two

void SampleValueAdjacencyList::quicksort ( std::vector< SampleValue * > &  oppneighs,
UWORD32 distances,
unsigned int  l,
unsigned int  r 
) [private]

void SampleValueAdjacencyList::sort ( void   ) 

sort the list in a way that the first entry of a row has the least distance to source sample value

void SampleValueAdjacencyList::swap ( std::vector< SampleValue * > &  oppneighs,
UWORD32 distances,
unsigned int  i,
unsigned int  j 
) [private]


Member Data Documentation

std::vector<std::vector<SampleValue*> > SampleValueAdjacencyList::AdjacencyList [private]


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

Generated on Mon Aug 17 10:58:32 2009 for steghide by  doxygen 1.5.9