Public Types | Public Member Functions | Protected Attributes
Ogre::ConfigFile Class Reference

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

#include <OgreConfigFile.h>

Inheritance diagram for Ogre::ConfigFile:
Inheritance graph
[legend]

List of all members.

Public Types

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

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 String &defaultValue=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.
void * operator new (size_t sz, const char *file, int line, const char *func)
 operator new, with debug line info
void * operator new (size_t sz)
void * operator new (size_t sz, void *ptr)
 placement operator new
void * operator new[] (size_t sz, const char *file, int line, const char *func)
 array operator new, with debug line info
void * operator new[] (size_t sz)
void operator delete (void *ptr)
void operator delete (void *ptr, void *)
void operator delete (void *ptr, const char *, int, const char *)
void operator delete[] (void *ptr)
void operator delete[] (void *ptr, const char *, int, const char *)

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 61 of file OgreConfigFile.h.


Member Typedef Documentation

Definition at line 91 of file OgreConfigFile.h.

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

Definition at line 90 of file OgreConfigFile.h.

Definition at line 88 of file OgreConfigFile.h.

Definition at line 87 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 String defaultValue = StringUtil::BLANK 
) const

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

Parameters:
keyThe name of the setting
sectionThe name of the section it must be in (if any)
defaultValueThe value to return if the setting is not found
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 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 DataStreamPtr stream,
const String separators = "\t:=",
bool  trimWhitespace = true 
)

load from a data stream

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)

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr) [inherited]

Definition at line 95 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr,
void *   
) [inherited]

Definition at line 101 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr,
const char *  ,
int  ,
const char *   
) [inherited]

Definition at line 107 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete[] ( void *  ptr,
const char *  ,
int  ,
const char *   
) [inherited]

Definition at line 118 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete[] ( void *  ptr) [inherited]

Definition at line 112 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void* Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz,
void *  ptr 
) [inherited]

placement operator new

Definition at line 78 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void* Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz,
const char *  file,
int  line,
const char *  func 
) [inherited]

operator new, with debug line info

Definition at line 67 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void* Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz) [inherited]

Definition at line 72 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void* Ogre::AllocatedObject< Alloc >::operator new[] ( size_t  sz,
const char *  file,
int  line,
const char *  func 
) [inherited]

array operator new, with debug line info

Definition at line 85 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void* Ogre::AllocatedObject< Alloc >::operator new[] ( size_t  sz) [inherited]

Definition at line 90 of file OgreMemoryAllocatedObject.h.


Member Data Documentation

Definition at line 102 of file OgreConfigFile.h.


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

Copyright © 2008 Torus Knot Software Ltd
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Sat Jan 14 2012 18:40:46