#include <SampleValueAdjacencyList.h>
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 |
SampleValueAdjacencyList::SampleValueAdjacencyList | ( | SampleValueLabel | numsvs | ) |
construct a SampleValueAdjacencyList with numsvs rows
std::vector<SampleValue*>& SampleValueAdjacencyList::operator[] | ( | const SampleValueLabel | lbl | ) | [inline] |
std::vector<SampleValue*>& SampleValueAdjacencyList::operator[] | ( | const SampleValue * | sv | ) | [inline] |
unsigned long SampleValueAdjacencyList::getNumRows | ( | void | ) | const [inline] |
bool SampleValueAdjacencyList::operator== | ( | const SampleValueAdjacencyList & | sval | ) |
check if every row contains the same set of sample values
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::quicksort | ( | std::vector< SampleValue * > & | oppneighs, | |
UWORD32 * | distances, | |||
unsigned int | l, | |||
unsigned int | r | |||
) | [private] |
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
void SampleValueAdjacencyList::swap | ( | std::vector< SampleValue * > & | oppneighs, | |
UWORD32 * | distances, | |||
unsigned int | i, | |||
unsigned int | j | |||
) | [private] |
std::vector<std::vector<SampleValue*> > SampleValueAdjacencyList::AdjacencyList [private] |