steghide  0.5.1
Public Member Functions | Public Attributes | Private Types | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
Arguments Class Reference

parsing and data representation of command-line arguments

#include <Arguments.h>

Public Member Functions

 Arguments (void)
 
 Arguments (int argc, char *argv[])
 
void parse (void)
 
bool stdin_isused (void) const
 
std::string getPassphrase (bool doublecheck=false)
 

Public Attributes

ArgCommand Command
 the command to be executed in this session More...
 
std::string CommandString
 the name of the command to be executed in this session (as supplied by the user) More...
 
ArgString EmbFn
 the embed file name, "" if stdin More...
 
ArgString ExtFn
 the extract file name, "" if stdout More...
 
ArgString CvrFn
 the cover file name, "" if stdin More...
 
ArgString StgFn
 the stego file name, "" if stdout/stdin More...
 
ArgString Passphrase
 
ArgBool Checksum
 
ArgInt Compression
 
ArgBool EmbedEmbFn
 
ArgEncAlgo EncAlgo
 
ArgEncMode EncMode
 
ArgULong Radius
 
ArgFloat Goal
 
ArgBool Force
 
ArgVerbosity Verbosity
 
ArgDebugCommand DebugCommand
 
ArgBool Check
 
ArgStringList FileList
 
ArgUInt DebugLevel
 
ArgUInt GmlGraphRecDepth
 
ArgUInt GmlStartVertex
 

Private Types

typedef std::vector< std::string >::const_iterator ArgIt
 

Private Member Functions

void parse_Command (ArgIt &curarg)
 
bool parse_EmbFn (ArgIt &curarg)
 
bool parse_ExtFn (ArgIt &curarg)
 
bool parse_CvrFn (ArgIt &curarg)
 
bool parse_StgFn (ArgIt &curarg)
 
bool parse_Passphrase (ArgIt &curarg)
 
bool parse_Checksum (ArgIt &curarg)
 
bool parse_Compression (ArgIt &curarg)
 
bool parse_EmbedEmbFn (ArgIt &curarg)
 
bool parse_Encryption (ArgIt &curarg)
 
bool parse_Radius (ArgIt &curarg)
 
bool parse_Goal (ArgIt &curarg)
 
bool parse_Force (ArgIt &curarg)
 
bool parse_Verbosity (ArgIt &curarg)
 
bool parse_Debug (ArgIt &curarg)
 
void setDefaults (void)
 

Private Attributes

std::vector< std::string > TheArguments
 

Static Private Attributes

static const int NoCompression = 0
 
static const EncryptionAlgorithm Default_EncAlgo = EncryptionAlgorithm (EncryptionAlgorithm::NONE)
 
static const EncryptionMode Default_EncMode = EncryptionMode (EncryptionMode::ECB)
 
static const bool Default_Checksum = true
 
static const int Default_Compression = 9
 
static const bool Default_EmbedEmbFn = true
 
static const bool Default_Force = false
 
static const VERBOSITY Default_Verbosity = NORMAL
 
static const unsigned long Default_Radius = 0
 
static const unsigned int Max_Algorithm = 3
 
static float Default_Goal = 100.0
 
static const DEBUGCOMMAND Default_DebugCommand = NONE
 
static const bool Default_Check = false
 
static const unsigned int Default_DebugLevel = 0
 
static const unsigned int Default_GmlGraphRecDepth = 0
 
static const unsigned int Default_GmlStartVertex = 0
 

Member Typedef Documentation

typedef std::vector<std::string>::const_iterator Arguments::ArgIt
private

Constructor & Destructor Documentation

Arguments::Arguments ( void  )
inline
Arguments::Arguments ( int  argc,
char *  argv[] 
)

initialize this Arguments object with argc and argv

Member Function Documentation

std::string Arguments::getPassphrase ( bool  doublecheck = false)
void Arguments::parse ( void  )

parse Argc and Argv filling the Arg* member variable for later access

bool Arguments::parse_Checksum ( ArgIt curarg)
private
void Arguments::parse_Command ( ArgIt curarg)
private

parse the command

Note: parse_Command is the only parse_* function that requires curarg to be a command. (because the command is the only argument with a fixed position).

bool Arguments::parse_Compression ( ArgIt curarg)
private
bool Arguments::parse_CvrFn ( ArgIt curarg)
private
bool Arguments::parse_Debug ( ArgIt curarg)
private
bool Arguments::parse_EmbedEmbFn ( ArgIt curarg)
private
bool Arguments::parse_EmbFn ( ArgIt curarg)
private

test if curarg points to an emb filename argument and if yes: parse it

Returns
true iff one or more arguments have been parsed
bool Arguments::parse_Encryption ( ArgIt curarg)
private
bool Arguments::parse_ExtFn ( ArgIt curarg)
private
bool Arguments::parse_Force ( ArgIt curarg)
private
bool Arguments::parse_Goal ( ArgIt curarg)
private
bool Arguments::parse_Passphrase ( ArgIt curarg)
private
bool Arguments::parse_Radius ( ArgIt curarg)
private
bool Arguments::parse_StgFn ( ArgIt curarg)
private
bool Arguments::parse_Verbosity ( ArgIt curarg)
private
void Arguments::setDefaults ( void  )
private
bool Arguments::stdin_isused ( void  ) const

is standard input used ? - according to the given arguments

Member Data Documentation

ArgBool Arguments::Check
ArgBool Arguments::Checksum
ArgCommand Arguments::Command
std::string Arguments::CommandString
ArgInt Arguments::Compression
ArgString Arguments::CvrFn
ArgDebugCommand Arguments::DebugCommand
ArgUInt Arguments::DebugLevel
const bool Arguments::Default_Check = false
staticprivate
const bool Arguments::Default_Checksum = true
staticprivate
const int Arguments::Default_Compression = 9
staticprivate
const DEBUGCOMMAND Arguments::Default_DebugCommand = NONE
staticprivate
const unsigned int Arguments::Default_DebugLevel = 0
staticprivate
const bool Arguments::Default_EmbedEmbFn = true
staticprivate
const EncryptionAlgorithm Arguments::Default_EncAlgo = EncryptionAlgorithm (EncryptionAlgorithm::NONE)
staticprivate
const EncryptionMode Arguments::Default_EncMode = EncryptionMode (EncryptionMode::ECB)
staticprivate
const bool Arguments::Default_Force = false
staticprivate
const unsigned int Arguments::Default_GmlGraphRecDepth = 0
staticprivate
const unsigned int Arguments::Default_GmlStartVertex = 0
staticprivate
float Arguments::Default_Goal = 100.0
staticprivate
const unsigned long Arguments::Default_Radius = 0
staticprivate
const VERBOSITY Arguments::Default_Verbosity = NORMAL
staticprivate
ArgBool Arguments::EmbedEmbFn
ArgString Arguments::EmbFn
ArgEncAlgo Arguments::EncAlgo
ArgEncMode Arguments::EncMode
ArgString Arguments::ExtFn
ArgStringList Arguments::FileList
ArgBool Arguments::Force
ArgUInt Arguments::GmlGraphRecDepth
ArgUInt Arguments::GmlStartVertex
ArgFloat Arguments::Goal
const unsigned int Arguments::Max_Algorithm = 3
staticprivate
const int Arguments::NoCompression = 0
staticprivate
ArgString Arguments::Passphrase
ArgULong Arguments::Radius
ArgString Arguments::StgFn
std::vector<std::string> Arguments::TheArguments
private
ArgVerbosity Arguments::Verbosity

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