Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

Ogre::ConfigFile Class Reference

Class for quickly loading settings from a text file. More...

#include <OgreConfigFile.h>

List of all members.

Public Types

typedef std::multimap< String,
String
SettingsMultiMap
typedef MapIterator< SettingsMultiMapSettingsIterator
typedef std::map< String,
SettingsMultiMap * > 
SettingsBySection
 Gets an iterator for stepping through all the keys / values in the file.

typedef MapIterator< SettingsBySectionSectionIterator

Public Member Functions

 ConfigFile ()
virtual ~ConfigFile ()
void load (const String &filename, const String &separators="\t:=", bool trimWhitespace=true)
 load from a filename (not using resource group locations)

void load (const String &filename, const String &resourceGroup, const String &separators="\t:=", bool trimWhitespace=true)
 load from a filename (using resource group locations)

void load (const DataStreamPtr &stream, const String &separators="\t:=", bool trimWhitespace=true)
 load from a data stream

void loadDirect (const String &filename, const String &separators="\t:=", bool trimWhitespace=true)
 load from a filename (not using resource group locations)

void loadFromResourceSystem (const String &filename, const String &resourceGroup, const String &separators="\t:=", bool trimWhitespace=true)
 load from a filename (using resource group locations)

String getSetting (const String &key, const String &section=StringUtil::BLANK) const
 Gets the first setting from the file with the named key.

StringVector getMultiSetting (const String &key, const String &section=StringUtil::BLANK) const
 Gets all settings from the file with the named key.

SectionIterator getSectionIterator (void)
 Get an iterator over all the available sections in the config file.

SettingsIterator getSettingsIterator (const String &section=StringUtil::BLANK)
 Get an iterator over all the available settings in a section.

void clear (void)
 Clear the settings.


Protected Attributes

SettingsBySection mSettings


Detailed Description

Class for quickly loading settings from a text file.

Remarks:
This class is designed to quickly parse a simple file containing key/value pairs, mainly for use in configuration settings.
This is a very simplified approach, no multiple values per key are allowed, no grouping or context is being kept etc.
By default the key/values pairs are tokenised based on a separator of Tab, the colon (:) or equals (=) character. Each key - value pair must end in a carriage return.
Settings can be optionally grouped in sections, using a header beforehand of the form [SectionName].

Definition at line 52 of file OgreConfigFile.h.


Member Typedef Documentation

typedef MapIterator<SettingsBySection> Ogre::ConfigFile::SectionIterator
 

Definition at line 81 of file OgreConfigFile.h.

typedef std::map<String, SettingsMultiMap*> Ogre::ConfigFile::SettingsBySection
 

Gets an iterator for stepping through all the keys / values in the file.

Definition at line 80 of file OgreConfigFile.h.

typedef MapIterator<SettingsMultiMap> Ogre::ConfigFile::SettingsIterator
 

Definition at line 78 of file OgreConfigFile.h.

typedef std::multimap<String, String> Ogre::ConfigFile::SettingsMultiMap
 

Definition at line 77 of file OgreConfigFile.h.


Constructor & Destructor Documentation

Ogre::ConfigFile::ConfigFile  ) 
 

virtual Ogre::ConfigFile::~ConfigFile  )  [virtual]
 


Member Function Documentation

void Ogre::ConfigFile::clear void   ) 
 

Clear the settings.

StringVector Ogre::ConfigFile::getMultiSetting const String key,
const String section = StringUtil::BLANK
const
 

Gets all settings from the file with the named key.

SectionIterator Ogre::ConfigFile::getSectionIterator void   ) 
 

Get an iterator over all the available sections in the config file.

String Ogre::ConfigFile::getSetting const String key,
const String section = StringUtil::BLANK
const
 

Gets the first setting from the file with the named key.

Parameters:
key The name of the setting
section The name of the section it must be in (if any)

SettingsIterator Ogre::ConfigFile::getSettingsIterator const String section = StringUtil::BLANK  ) 
 

Get an iterator over all the available settings in a section.

void Ogre::ConfigFile::load const DataStreamPtr stream,
const String separators = "\t:=",
bool  trimWhitespace = true
 

load from a data stream

void Ogre::ConfigFile::load const String filename,
const String resourceGroup,
const String separators = "\t:=",
bool  trimWhitespace = true
 

load from a filename (using resource group locations)

void Ogre::ConfigFile::load const String filename,
const String separators = "\t:=",
bool  trimWhitespace = true
 

load from a filename (not using resource group locations)

void Ogre::ConfigFile::loadDirect const String filename,
const String separators = "\t:=",
bool  trimWhitespace = true
 

load from a filename (not using resource group locations)

void Ogre::ConfigFile::loadFromResourceSystem const String filename,
const String resourceGroup,
const String separators = "\t:=",
bool  trimWhitespace = true
 

load from a filename (using resource group locations)


Member Data Documentation

SettingsBySection Ogre::ConfigFile::mSettings [protected]
 

Definition at line 92 of file OgreConfigFile.h.


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

Copyright © 2000-2005 by The OGRE Team
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Feb 12 13:00:17 2006