OGRE  1.8
Object-Oriented Graphics Rendering Engine
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Ogre::ConfigFile Class Reference

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

#include <OgreConfigFile.h>

+ Inheritance diagram for Ogre::ConfigFile:
+ Collaboration diagram for Ogre::ConfigFile:

Public Types

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

Public Member Functions

 ConfigFile ()
 
virtual ~ConfigFile ()
 
void clear (void)
 Clear the settings. More...
 
StringVector getMultiSetting (const String &key, const String &section=StringUtil::BLANK) const
 Gets all settings from the file with the named key. More...
 
SectionIterator getSectionIterator (void)
 Get an iterator over all the available sections in the config file. More...
 
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. More...
 
SettingsIterator getSettingsIterator (const String &section=StringUtil::BLANK)
 Get an iterator over all the available settings in a section. More...
 
void load (const String &filename, const String &separators="\t:=", bool trimWhitespace=true)
 load from a filename (not using resource group locations) More...
 
void load (const String &filename, const String &resourceGroup, const String &separators="\t:=", bool trimWhitespace=true)
 load from a filename (using resource group locations) More...
 
void load (const DataStreamPtr &stream, const String &separators="\t:=", bool trimWhitespace=true)
 load from a data stream More...
 
void loadDirect (const String &filename, const String &separators="\t:=", bool trimWhitespace=true)
 load from a filename (not using resource group locations) More...
 
void loadFromResourceSystem (const String &filename, const String &resourceGroup, const String &separators="\t:=", bool trimWhitespace=true)
 load from a filename (using resource group locations) More...
 
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 *)
 
void * operator new (size_t sz, const char *file, int line, const char *func)
 operator new, with debug line info More...
 
void * operator new (size_t sz)
 
void * operator new (size_t sz, void *ptr)
 placement operator new More...
 
void * operator new[] (size_t sz, const char *file, int line, const char *func)
 array operator new, with debug line info More...
 
void * operator new[] (size_t sz)
 

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

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

Definition at line 90 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 separators = "\t:=",
bool  trimWhitespace = true 
)

load from a filename (not using resource group locations)

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::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)
inlineinherited

Definition at line 95 of file OgreMemoryAllocatedObject.h.

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

Definition at line 101 of file OgreMemoryAllocatedObject.h.

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

Definition at line 107 of file OgreMemoryAllocatedObject.h.

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

Definition at line 112 of file OgreMemoryAllocatedObject.h.

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

Definition at line 118 of file OgreMemoryAllocatedObject.h.

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

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)
inlineinherited

Definition at line 72 of file OgreMemoryAllocatedObject.h.

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

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 
)
inlineinherited

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)
inlineinherited

Definition at line 90 of file OgreMemoryAllocatedObject.h.

Member Data Documentation

SettingsBySection Ogre::ConfigFile::mSettings
protected

Definition at line 102 of file OgreConfigFile.h.


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