steghide 0.5.1
DummyFile.h
Go to the documentation of this file.
1/*
2 * steghide 0.5.1 - a steganography program
3 * Copyright (C) 1999-2003 Stefan Hetzl <shetzl@chello.at>
4 *
5 * This program is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU General Public License
7 * as published by the Free Software Foundation; either version 2
8 * of the License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 *
19 */
20
21#ifndef SH_DUMMYFILE_H
22#define SH_DUMMYFILE_H
23
24#include <vector>
25#include <list>
26
27class BitString ;
28#include "CvrStgFile.h"
29class Selector ;
30#include "common.h"
31
36class DummyFile : public CvrStgFile {
37 public:
43 DummyFile (UWORD16 s, std::vector<std::vector<bool> >* svam) ;
44
45 std::list<CvrStgFile::Property> getProperties (void) const ;
46
47 unsigned long getNumSamples (void) const ;
48
49 void replaceSample (const SamplePos pos, const SampleValue* s) ;
50
51 SampleValue* getSampleValue (const SamplePos pos) const ;
52
53 std::vector<std::vector<bool> >* getSampleValueAdjacencyMatrix() const
54 { return SampleValueAdjacencyMatrix ; } ;
55
73 static void createGraph (std::vector<std::list<UWORD16> >& adjlist, BitString** bs, CvrStgFile** f, Selector** s) ;
74
75 private:
76 static const unsigned short SamplesPerVertex = 2 ;
77 static const EmbValue EmbValueModulus = 2 ;
78
79 std::vector<UWORD16> Samples ;
80 std::vector<std::vector<bool> >* SampleValueAdjacencyMatrix ;
81} ;
82
83#endif // ndef SH_DUMMYFILE_H
a string of bits
Definition BitString.h:42
a cover-/stego-file
Definition CvrStgFile.h:46
a dummy CvrStgFile implementation to facilitate testing and debugging
Definition DummyFile.h:36
static void createGraph(std::vector< std::list< UWORD16 > > &adjlist, BitString **bs, CvrStgFile **f, Selector **s)
Definition DummyFile.cc:63
std::list< CvrStgFile::Property > getProperties(void) const
Definition DummyFile.cc:39
SampleValue * getSampleValue(const SamplePos pos) const
Definition DummyFile.cc:51
std::vector< std::vector< bool > > * getSampleValueAdjacencyMatrix() const
Definition DummyFile.h:53
void replaceSample(const SamplePos pos, const SampleValue *s)
Definition DummyFile.cc:56
std::vector< UWORD16 > Samples
Definition DummyFile.h:79
unsigned long getNumSamples(void) const
Definition DummyFile.cc:46
static const EmbValue EmbValueModulus
Definition DummyFile.h:77
std::vector< std::vector< bool > > * SampleValueAdjacencyMatrix
Definition DummyFile.h:80
static const unsigned short SamplesPerVertex
Definition DummyFile.h:76
the value of a sample in a CvrStgFile
Definition SampleValue.h:61
a random permutation of a random combination
Definition Selector.h:36
UWORD32 SamplePos
Definition common.h:67
unsigned short UWORD16
Definition common.h:46
BYTE EmbValue
Definition common.h:66