steghide 0.5.1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
SampleValueAdjacencyList Class Reference

an adjacency list-like data structur for sample values

#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
 

Constructor & Destructor Documentation

◆ SampleValueAdjacencyList()

SampleValueAdjacencyList::SampleValueAdjacencyList ( SampleValueLabel numsvs)

construct a SampleValueAdjacencyList with numsvs rows

Member Function Documentation

◆ getNumRows()

unsigned long SampleValueAdjacencyList::getNumRows ( void ) const
inline

◆ operator==()

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

check if every row contains the same set of sample values

◆ operator[]() [1/2]

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

◆ operator[]() [2/2]

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

◆ partition()

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

◆ quicksort()

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

◆ sort()

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

◆ swap()

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

Member Data Documentation

◆ AdjacencyList

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

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