# Configuration Class Reference

Configuration file handling. More...

`#include <yatengine.h>`

Inheritance diagram for Configuration:

List of all members.

## Public Member Functions

| Configuration ()
| Configuration (const char *filename)
Configuration & | operator= (const String &value)
unsigned int | sections () const
NamedList * | getSection (unsigned int index) const
NamedList * | getSection (const String &sect) const
NamedString * | getKey (const String &sect, const String &key) const
const char * | getValue (const String &sect, const String &key, const char *defvalue=0) const
int | getIntValue (const String &sect, const String &key, int defvalue=0) const
int | getIntValue (const String &sect, const String &key, const TokenDict *tokens, int defvalue=0) const
double | getDoubleValue (const String &sect, const String &key, double defvalue=0.0) const
bool | getBoolValue (const String &sect, const String &key, bool defvalue=false) const
void | clearSection (const char *sect=0)
void | createSection (const String &sect)
void | clearKey (const String &sect, const String &key)
void | addValue (const String &sect, const char *key, const char *value=0)
void | setValue (const String &sect, const char *key, const char *value=0)
void | setValue (const String &sect, const char *key, int value)
void | setValue (const String &sect, const char *key, bool value)
bool | load ()
bool | save () const

## Detailed Description

Configuration file handling.

A class for parsing and quickly accessing INI style configuration files

## Constructor & Destructor Documentation

Configuration | ( |  | ) |

Create an empty configuration

Configuration | ( | const char * | filename | ) |

Create a configuration from a file

Parameters:

  | filename | Name of file to initialize from

## Member Function Documentation

Configuration& operator= | ( | const String & | value | ) | `[inline]`

Assignment from string operator

Reimplemented from String.

unsigned int sections | ( |  | ) | const`[inline]`

Get the number of sections

Returns:
  Count of sections

NamedList* getSection | ( | unsigned int | index | ) | const

Retrive an entire section

Parameters:

  | index | Index of the section

Returns:
  The section's content or NULL if no such section

NamedList* getSection | ( | const String & | sect | ) | const

Retrive an entire section

Parameters:

  | sect | Name of the section

Returns:
  The section's content or NULL if no such section

NamedString* getKey | ( | const String & | sect,
|  | const String & | key |
| ) |  |  | const

Locate a key/value pair in the section.

Parameters:

  | sect | Name of the section
  | key | Name of the key in section

Returns:
  A pointer to the key/value pair or NULL.

const char* getValue | ( | const String & | sect,
|  | const String & | key,
|  | const char * | defvalue = `0` |
| ) |  |  | const

Retrive the value of a key in a section.

Parameters:

  | sect | Name of the section
  | key | Name of the key in section
  | defvalue | Default value to return if not found

Returns:
  The string contained in the key or the default

int getIntValue | ( | const String & | sect,
|  | const String & | key,
|  | int | defvalue = `0` |
| ) |  |  | const

Retrive the numeric value of a key in a section.

Parameters:

  | sect | Name of the section
  | key | Name of the key in section
  | defvalue | Default value to return if not found

Returns:
  The number contained in the key or the default

int getIntValue | ( | const String & | sect,
|  | const String & | key,
|  | const TokenDict * | tokens,
|  | int | defvalue = `0` |
| ) |  |  | const

Retrive the numeric value of a key in a section trying first a table lookup.

Parameters:

  | sect | Name of the section
  | key | Name of the key in section
  | tokens | A pointer to an array of tokens to try to lookup
  | defvalue | Default value to return if not found

Returns:
  The number contained in the key or the default

double getDoubleValue | ( | const String & | sect,
|  | const String & | key,
|  | double | defvalue = `0.0` |
| ) |  |  | const

Retrive the floating point value of a key in a section.

Parameters:

  | sect | Name of the section
  | key | Name of the key in section
  | defvalue | Default value to return if not found

Returns:
  The numeric value contained in the key or the default

bool getBoolValue | ( | const String & | sect,
|  | const String & | key,
|  | bool | defvalue = `false` |
| ) |  |  | const

Retrive the boolean value of a key in a section.

Parameters:

  | sect | Name of the section
  | key | Name of the key in section
  | defvalue | Default value to return if not found

Returns:
  The boolean value contained in the key or the default

void clearSection | ( | const char * | sect = `0` | ) |

Deletes an entire section

Parameters:

  | sect | Name of section to delete, NULL to delete all

void createSection | ( | const String & | sect | ) | `[inline]`

Makes sure a section with a given name exists, creates if required

Parameters:

  | sect | Name of section to check or create

void clearKey | ( | const String & | sect,
|  | const String & | key |
| ) |  |  |

Deletes a key/value pair

Parameters:

  | sect | Name of section
  | key | Name of the key to delete

void addValue | ( | const String & | sect,
|  | const char * | key,
|  | const char * | value = `0` |
| ) |  |  |

Add the value of a key in a section.

Parameters:

  | sect | Name of the section, will be created if missing
  | key | Name of the key to add in the section
  | value | Value to set in the key

void setValue | ( | const String & | sect,
|  | const char * | key,
|  | const char * | value = `0` |
| ) |  |  |

Set the value of a key in a section.

Parameters:

  | sect | Name of the section, will be created if missing
  | key | Name of the key in section, will be created if missing
  | value | Value to set in the key

void setValue | ( | const String & | sect,
|  | const char * | key,
|  | int | value |
| ) |  |  |

Set the numeric value of a key in a section.

Parameters:

  | sect | Name of the section, will be created if missing
  | key | Name of the key in section, will be created if missing
  | value | Value to set in the key

void setValue | ( | const String & | sect,
|  | const char * | key,
|  | bool | value |
| ) |  |  |

Set the boolean value of a key in a section.

Parameters:

  | sect | Name of the section, will be created if missing
  | key | Name of the key in section, will be created if missing
  | value | Value to set in the key

bool load | ( |  | ) |

Load the configuration from file

Returns:
  True if successfull, false for failure

bool save | ( |  | ) | const

Save the configuration to file

Returns:
  True if successfull, false for failure

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

- yatengine.h