Ogre::ConfigFile Class Reference
[General]

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:
key The name of the setting
section The name of the section it must be in (if any)
defaultValue The 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 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)

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,
void *   
) [inherited]

Definition at line 101 of file OgreMemoryAllocatedObject.h.

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,
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  )  [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]

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 90 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.


Member Data Documentation

Definition at line 102 of file OgreConfigFile.h.


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

Copyright © 2012 Torus Knot Software Ltd
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Fri May 25 23:37:17 2012