wavfile(3)

NAME

WavFile

SYNOPSIS

#include <WavFile.h>
Inherits CvrStgFile.
Public Member Functions
WavFile (void)
WavFile (BinaryIO *io)
~WavFile (void)
void read (BinaryIO *io)
void write (void)
std::list< CvrStgFile::Property > getProperties (void) const
unsigned long getNumSamples (void) const
void replaceSample (const SamplePos pos, const SampleValue *s)
SampleValue * getSampleValue (SamplePos pos) const
std::vector< SampleValueAdjacencyList * > calcSVAdjacencyLists (const
    std::vector< SampleValue * > &svs) const
std::vector< MatchingAlgorithm * > getMatchingAlgorithms (Graph *g,
    Matching *m) const
unsigned short getBitsPerSample (void) const
Private Member Functions
void readheaders (void)
void readdata (void)
void writeheaders (void)
void writedata (void)
void calcpos (SamplePos n, unsigned long *bytepos, unsigned short
    *firstbitpos) const
unsigned short getFirstBitPosinSample (void)
unsigned short getBytesPerSample (void)
Private Attributes
WavChunkHeader * riffchhdr
char id_wave [4]
WavFormatChunk * FormatChunk
WavChunkHeader * datachhdr
std::vector< unsigned char > data_small
    this std::vector contains the wav data if BitsPerSample <= 8
std::vector< int > data_large
    this std::vector contains the wav data if BitsPerSample >8
std::vector< WavChunkUnused * > UnusedBeforeData
std::vector< BYTE > UnusedAfterData
Static Private Attributes
static const signed short FormatPCM = 1
static const unsigned short SamplesPerVertex = 2
static const UWORD32 Radius_small = 1
static const UWORD32 Radius_large = 20
static const EmbValue EmbValueModulus = 2

Constructor & Destructor Documentation

WavFile::WavFile (void)
WavFile::WavFile (BinaryIO * io) WavFile::~WavFile (void)

Member Function Documentation

void WavFile::read (BinaryIO * io) [virtual]
Reimplemented from CvrStgFile.
void WavFile::write (void) [virtual]
Reimplemented from CvrStgFile.
std::list< CvrStgFile::Property > WavFile::getProperties (void) const
[virtual]
Implements CvrStgFile.
unsigned long WavFile::getNumSamples (void) const [virtual]
get the number of samples in this CvrStgObject
Implements CvrStgObject.
void WavFile::replaceSample (const SamplePos pos, const SampleValue * s)
[virtual]
replace a sample thus (possibly) altering the value of the bit returned by SampleValue->getBit()
Parameters:
pos the position of the sample (must be in 0...getNumSamples()-1) s the sample value that should replace the current sample value
(must be of correct type for this CvrStgObject)
The derived class should check the condition(s) given above in its
Implementation of this function.
Implements CvrStgObject.
SampleValue * WavFile::getSampleValue (SamplePos pos) const [virtual]
get the sample at position pos
Parameters:
pos the position of a sample (must be in 0...getNumSamples()-1)
Returns:
the sample at the given position
The sample object is created in this function and should be deleted by the caller. The derived class should check the condition(s) given above in its Implementation of this function.
Implements CvrStgObject.
std::vector< SampleValueAdjacencyList * > WavFile::calcSVAdjacencyLists
(const std::vector< SampleValue * > & svs) const [virtual] calculate a vector a SampleValueAdjacencyLists
Parameters:
svs a vector of unique(!) sample values where svs[i]->getLabel() == i holds for all i
Returns:
a vector of SampleValueAdjacencyLists where retval[i] only contains sample values with getEmbValue() == i
Every row in the adjacency lists must be sorted in the following order: The first sample value has the least distance to the source sample
value, the last has the largest distance. If two sample values in one
row have the same distance to the source sample value, the order does
not matter.
May be overridden in derived class to provide a faster version.
Reimplemented from CvrStgFile.
std::vector< MatchingAlgorithm * > WavFile::getMatchingAlgorithms (Graph *
g, Matching * m) const [virtual] get recommended list of matching algorithms
Parameters:
m an empty matching - will be used in construction of
MatchingAlgorithm objects
The MatchingAlgorithm objects returned by this function should be deleted by the caller if they are no longer needed.
Reimplemented from CvrStgFile.
unsigned short WavFile::getBitsPerSample (void) const void WavFile::readheaders (void) [private] void WavFile::readdata (void) [private] void WavFile::writeheaders (void) [private] void WavFile::writedata (void) [private] void WavFile::calcpos (SamplePos n, unsigned long * bytepos, unsigned short
* firstbitpos) const [private]
unsigned short WavFile::getFirstBitPosinSample (void) [private]
get the position of the first bit (of the first byte) containing the
actual sample data
Returns:
the bit position (where 0 is the lsb and 7 the msb)
unsigned short WavFile::getBytesPerSample (void) [private]

Member Data Documentation

const signed short WavFile::FormatPCM = 1 [static, private] const unsigned short WavFile::SamplesPerVertex = 2 [static, private]
Reimplemented from CvrStgFile.
const UWORD32 WavFile::Radius_small = 1 [static, private] const UWORD32 WavFile::Radius_large = 20 [static, private] const EmbValue WavFile::EmbValueModulus = 2 [static, private]
Reimplemented from CvrStgFile.
WavChunkHeader* WavFile::riffchhdr [private] char WavFile::id_wave[4] [private] WavFormatChunk* WavFile::FormatChunk [private] WavChunkHeader* WavFile::datachhdr [private] std::vector<unsigned char> WavFile::data_small [private] std::vector<int> WavFile::data_large [private] std::vector<WavChunkUnused*> WavFile::UnusedBeforeData [private] std::vector<BYTE> WavFile::UnusedAfterData [private]

Author

Generated automatically by Doxygen for steghide from the source code.
Copyright © 2010-2025 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout