OGRE  13.6
Object-Oriented Graphics Rendering Engine
Ogre::ConfigFile Class Reference

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

#include <OgreConfigFile.h>

+ Inheritance diagram for Ogre::ConfigFile:

Public Types

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

Public Member Functions

 ConfigFile ()
 
void clear (void)
 Clear the settings. More...
 
StringVector getMultiSetting (const String &key, const String &section=BLANKSTRING) const
 Gets all settings from the file with the named key. More...
 
SectionIterator getSectionIterator (void)
 
String getSetting (const String &key, const String &section=BLANKSTRING, const String &defaultValue=BLANKSTRING) const
 Gets the first setting from the file with the named key. More...
 
const SettingsMultiMapgetSettings (const String &section=BLANKSTRING) const
 Get all the available settings in a section. More...
 
const SettingsBySection_getSettingsBySection () const
 Get all the available settings grouped by sections. More...
 
SettingsIterator getSettingsIterator (const String &section=BLANKSTRING)
 
void load (const DataStreamPtr &stream, const String &separators="\t:=", bool trimWhitespace=true)
 load from a data stream 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 String &filename, const String &separators="\t:=", bool trimWhitespace=true)
 load from a filename (not using resource group locations) 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...
 

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

Member Typedef Documentation

◆ SettingsMultiMap

◆ SettingsIterator

◆ SettingsBySection

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

◆ SettingsBySection_

◆ SectionIterator

Constructor & Destructor Documentation

◆ ConfigFile()

Ogre::ConfigFile::ConfigFile ( )

Member Function Documentation

◆ load() [1/3]

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

load from a filename (not using resource group locations)

◆ load() [2/3]

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)

◆ load() [3/3]

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

load from a data stream

◆ loadDirect()

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

load from a filename (not using resource group locations)

◆ loadFromResourceSystem()

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)

◆ getSetting()

String Ogre::ConfigFile::getSetting ( const String key,
const String section = BLANKSTRING,
const String defaultValue = BLANKSTRING 
) 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

◆ getMultiSetting()

StringVector Ogre::ConfigFile::getMultiSetting ( const String key,
const String section = BLANKSTRING 
) const

Gets all settings from the file with the named key.

◆ getSectionIterator()

SectionIterator Ogre::ConfigFile::getSectionIterator ( void  )

◆ getSettingsBySection()

const SettingsBySection_& Ogre::ConfigFile::getSettingsBySection ( ) const
inline

Get all the available settings grouped by sections.

◆ getSettingsIterator()

SettingsIterator Ogre::ConfigFile::getSettingsIterator ( const String section = BLANKSTRING)

◆ getSettings()

const SettingsMultiMap& Ogre::ConfigFile::getSettings ( const String section = BLANKSTRING) const

Get all the available settings in a section.

◆ clear()

void Ogre::ConfigFile::clear ( void  )

Clear the settings.


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