BALL  1.4.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines
Public Types | Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes
BALL::ResourceFile Class Reference

#include <BALL/FORMAT/resourceFile.h>

Inheritance diagram for BALL::ResourceFile:
BALL::File

List of all members.

Public Types

typedef Entry::Iterator Iterator
typedef Entry::ConstIterator ConstIterator
Type Definition
typedef ResourceEntry Entry

Public Member Functions

Iterator begin ()
Iterator end ()
ConstIterator begin () const
ConstIterator end () const
Constructors and Destructors
 ResourceFile ()
 ResourceFile (const String &name)
virtual ~ResourceFile ()
void destroy ()
virtual void clear ()
Accessors
Size getSize () const
Entry & getRoot ()
const Entry & getRoot () const
Entry * getEntry (const String &key_path)
const Entry * getEntry (const String &key_path) const
String * getValue (const String &key_path)
const String * getValue (const String &key_path) const
Entry * insert (const String &key_path, const String &name)
bool removeKey (const String &key_path)
Attributes
bool operator== (const ResourceFile &entry) const
bool operator!= (const ResourceFile &entry) const
bool hasKey (const String &key_path) const
bool isEmpty () const
Debugging and Diagnostics
bool isValid () const
void dump (std::ostream &s=std::cout, Size depth=0) const

Static Public Attributes

Constants
static char ENTRY_BEGIN
static char ENTRY_END
static char SEPARATOR

Private Member Functions

const ResourceFile & operator= (const ResourceFile &file)
bool validateSyntax_ ()
void skipWhitespaces_ ()

Static Private Member Functions

static void save_ (File &file, const Entry *entry, Size &depth)

Private Attributes

Entry root_

Friends

Storers
std::istream & operator>> (std::istream &s, ResourceFile &resource_file)

File-related methods.

bool open (const String &name)
void close ()
void saveAs (const String &name)
void save (const Entry &entry)
void save ()
static void saveAs (const Entry &entry, const String &name)

Processor and Visitor related methods

void host (Visitor< ResourceFile > &visitor)
bool apply (UnaryProcessor< Entry > &processor)
static bool applyChildren (Entry &entry, UnaryProcessor< Entry > &processor)

Detailed Description

Resource file class

Definition at line 581 of file resourceFile.h.


Member Typedef Documentation

Definition at line 786 of file resourceFile.h.

Definition at line 609 of file resourceFile.h.

Definition at line 773 of file resourceFile.h.


Constructor & Destructor Documentation

Default constructor

Detailed constructor.

Exceptions:
Exception::FileNotFoundif the file could not be opened
virtual BALL::ResourceFile::~ResourceFile ( ) [virtual]

Destructor


Member Function Documentation

static bool BALL::ResourceFile::applyChildren ( Entry &  entry,
UnaryProcessor< Entry > &  processor 
) [static]

Definition at line 775 of file resourceFile.h.

Definition at line 788 of file resourceFile.h.

virtual void BALL::ResourceFile::clear ( ) [virtual]

Clear method

Reimplemented from BALL::File.

Close the file.

Reimplemented from BALL::File.

Destroy method

void BALL::ResourceFile::dump ( std::ostream &  s = std::cout,
Size  depth = 0 
) const

Definition at line 780 of file resourceFile.h.

Definition at line 793 of file resourceFile.h.

Entry* BALL::ResourceFile::getEntry ( const String &  key_path)
const Entry* BALL::ResourceFile::getEntry ( const String &  key_path) const
String* BALL::ResourceFile::getValue ( const String &  key_path)
const String* BALL::ResourceFile::getValue ( const String &  key_path) const
bool BALL::ResourceFile::hasKey ( const String &  key_path) const
Entry* BALL::ResourceFile::insert ( const String &  key_path,
const String &  name 
)

Test if the file is valid. If the filename was not set, false is returned. This function uses std::fstream::good().

Returns:
bool true if the file is valid

Reimplemented from BALL::File.

bool BALL::ResourceFile::operator!= ( const ResourceFile &  entry) const

Inequality operator

const ResourceFile& BALL::ResourceFile::operator= ( const ResourceFile &  file) [private]
bool BALL::ResourceFile::operator== ( const ResourceFile &  entry) const

Equality operator

bool BALL::ResourceFile::removeKey ( const String &  key_path)
void BALL::ResourceFile::save ( const Entry &  entry)
static void BALL::ResourceFile::save_ ( File &  file,
const Entry *  entry,
Size &  depth 
) [static, private]
static void BALL::ResourceFile::saveAs ( const Entry &  entry,
const String &  name 
) [static]
void BALL::ResourceFile::saveAs ( const String &  name)

Friends And Related Function Documentation

std::istream& operator>> ( std::istream &  s,
ResourceFile &  resource_file 
) [friend]

Member Data Documentation

Definition at line 592 of file resourceFile.h.

Definition at line 596 of file resourceFile.h.

Definition at line 809 of file resourceFile.h.

Definition at line 600 of file resourceFile.h.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines