ConfigFile Class Reference

#include <ConfigFile.h>

Collaboration diagram for ConfigFile:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 ConfigFile (string filename, bool isList=false, string delimiter="=", string comment="##", string sentry="EndConfigFile")
 ConfigFile ()
template<class T>
read (const string &key) const
template<class T>
read (const string &key, const T &value) const
template<class T>
bool readInto (T &var, const string &key) const
template<class T>
bool readInto (T &var, const string &key, const T &value) const
template<class T>
void add (string key, const T &value, bool store=false)
template<class T>
void add (const T &key, bool store=false)
void remove (const string &key)
template<class T>
void remove (const T &key)
bool keyExists (const string &key) const
template<class T>
bool keyExists (const T &key) const
string getDelimiter () const
string getComment () const
string getSentry () const
string setDelimiter (const string &s)
string setComment (const string &s)
void load (string filename, bool isList=false)
void save ()

Protected Types

typedef std::map< string,
string >::iterator 
mapi
typedef std::map< string,
string >::const_iterator 
mapci

Static Protected Member Functions

template<class T>
static string T_as_string (const T &t)
template<class T>
static T string_as_T (const string &s)
static void trim (string &s)

Protected Attributes

string myDelimiter
string myComment
string mySentry
std::map< string, string > myContents
std::string file
bool listmode

Friends

std::ostream & operator<< (std::ostream &os, const ConfigFile &cf)
std::istream & operator>> (std::istream &is, ConfigFile &cf)

Classes

struct  file_not_found
struct  key_not_found


Detailed Description

Definition at line 54 of file ConfigFile.h.


Member Typedef Documentation

typedef std::map<string,string>::iterator ConfigFile::mapi [protected]

Definition at line 62 of file ConfigFile.h.

typedef std::map<string,string>::const_iterator ConfigFile::mapci [protected]

Definition at line 63 of file ConfigFile.h.


Constructor & Destructor Documentation

ConfigFile::ConfigFile ( string  filename,
bool  isList = false,
string  delimiter = "=",
string  comment = "##",
string  sentry = "EndConfigFile" 
)

Definition at line 7 of file ConfigFile.cpp.

ConfigFile::ConfigFile (  ) 

Definition at line 21 of file ConfigFile.cpp.


Member Function Documentation

template<class T>
T ConfigFile::read ( const string &  key  )  const [inline]

Definition at line 184 of file ConfigFile.h.

References myContents.

template<class T>
T ConfigFile::read ( const string &  key,
const T &  value 
) const [inline]

Definition at line 194 of file ConfigFile.h.

References myContents.

template<class T>
bool ConfigFile::readInto ( T &  var,
const string &  key 
) const [inline]

Definition at line 205 of file ConfigFile.h.

References myContents.

template<class T>
bool ConfigFile::readInto ( T &  var,
const string &  key,
const T &  value 
) const [inline]

Definition at line 218 of file ConfigFile.h.

References myContents.

template<class T>
void ConfigFile::add ( string  key,
const T &  value,
bool  store = false 
) [inline]

Definition at line 234 of file ConfigFile.h.

References file, myContents, myDelimiter, T_as_string(), and trim().

template<class T>
void ConfigFile::add ( const T &  key,
bool  store = false 
) [inline]

Definition at line 253 of file ConfigFile.h.

References file, keyExists(), myContents, T_as_string(), and trim().

void ConfigFile::remove ( const string &  key  ) 

Definition at line 47 of file ConfigFile.cpp.

References myContents.

template<class T>
void ConfigFile::remove ( const T &  key  )  [inline]

Definition at line 270 of file ConfigFile.h.

References keyExists(), myContents, save(), T_as_string(), and trim().

bool ConfigFile::keyExists ( const string &  key  )  const

Definition at line 55 of file ConfigFile.cpp.

References myContents.

Referenced by add(), and remove().

template<class T>
bool ConfigFile::keyExists ( const T &  key  )  const [inline]

Definition at line 281 of file ConfigFile.h.

References myContents, and T_as_string().

string ConfigFile::getDelimiter (  )  const [inline]

Definition at line 95 of file ConfigFile.h.

References myDelimiter.

string ConfigFile::getComment (  )  const [inline]

Definition at line 96 of file ConfigFile.h.

References myComment.

string ConfigFile::getSentry (  )  const [inline]

Definition at line 97 of file ConfigFile.h.

References mySentry.

string ConfigFile::setDelimiter ( const string &  s  )  [inline]

Definition at line 98 of file ConfigFile.h.

References myDelimiter.

string ConfigFile::setComment ( const string &  s  )  [inline]

Definition at line 100 of file ConfigFile.h.

References myComment.

void ConfigFile::load ( string  filename,
bool  isList = false 
)

Definition at line 28 of file ConfigFile.cpp.

References file, and listmode.

void ConfigFile::save (  ) 

Definition at line 39 of file ConfigFile.cpp.

References file.

Referenced by remove().

template<class T>
string ConfigFile::T_as_string ( const T &  t  )  [inline, static, protected]

Definition at line 131 of file ConfigFile.h.

Referenced by add(), keyExists(), and remove().

bool ConfigFile::string_as_T< bool > ( const string &  s  )  [inline, static, protected]

Definition at line 143 of file ConfigFile.h.

void ConfigFile::trim ( string &  s  )  [static, protected]

Definition at line 64 of file ConfigFile.cpp.

Referenced by add(), operator>>(), and remove().


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const ConfigFile cf 
) [friend]

Definition at line 73 of file ConfigFile.cpp.

std::istream& operator>> ( std::istream &  is,
ConfigFile cf 
) [friend]

Definition at line 92 of file ConfigFile.cpp.


Member Data Documentation

string ConfigFile::myDelimiter [protected]

Definition at line 57 of file ConfigFile.h.

Referenced by add(), getDelimiter(), operator<<(), operator>>(), and setDelimiter().

string ConfigFile::myComment [protected]

Definition at line 58 of file ConfigFile.h.

Referenced by getComment(), operator>>(), and setComment().

string ConfigFile::mySentry [protected]

Definition at line 59 of file ConfigFile.h.

Referenced by getSentry(), and operator>>().

std::map<string,string> ConfigFile::myContents [protected]

Definition at line 60 of file ConfigFile.h.

Referenced by add(), keyExists(), operator<<(), operator>>(), read(), readInto(), and remove().

std::string ConfigFile::file [protected]

Definition at line 64 of file ConfigFile.h.

Referenced by add(), load(), and save().

bool ConfigFile::listmode [protected]

Definition at line 65 of file ConfigFile.h.

Referenced by load(), operator<<(), and operator>>().


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

Generated on Sat Jan 10 19:07:11 2009 for wsdlpull by  doxygen 1.5.5