# Ogre::StringConverter Class Reference

Class for converting the core Ogre data types to/from Strings. More...

`#include <OgreStringConverter.h>`

List of all members.

## Static Public Member Functions

static String | toString (Real val, unsigned short precision=6, unsigned short width=0, char fill= ' ', std::ios::fmtflags flags=std::ios::fmtflags(0))
| Converts a Real to a String.
static String | toString (Radian val, unsigned short precision=6, unsigned short width=0, char fill= ' ', std::ios::fmtflags flags=std::ios::fmtflags(0))
| Converts a Radian to a String.
static String | toString (Degree val, unsigned short precision=6, unsigned short width=0, char fill= ' ', std::ios::fmtflags flags=std::ios::fmtflags(0))
| Converts a Degree to a String.
static String | toString (int val, unsigned short width=0, char fill= ' ', std::ios::fmtflags flags=std::ios::fmtflags(0))
| Converts an int to a String.
static String | toString (size_t val, unsigned short width=0, char fill= ' ', std::ios::fmtflags flags=std::ios::fmtflags(0))
| Converts a size_t to a String.
static String | toString (unsigned long val, unsigned short width=0, char fill= ' ', std::ios::fmtflags flags=std::ios::fmtflags(0))
| Converts an unsigned long to a String.
static String | toString (long val, unsigned short width=0, char fill= ' ', std::ios::fmtflags flags=std::ios::fmtflags(0))
| Converts a long to a String.
static String | toString (bool val, bool yesNo=false)
| Converts a boolean to a String.
static String | toString (const Vector2 &val)
| Converts a Vector2 to a String.
static String | toString (const Vector3 &val)
| Converts a Vector3 to a String.
static String | toString (const Vector4 &val)
| Converts a Vector4 to a String.
static String | toString (const Matrix3 &val)
| Converts a Matrix3 to a String.
static String | toString (const Matrix4 &val)
| Converts a Matrix4 to a String.
static String | toString (const Quaternion &val)
| Converts a Quaternion to a String.
static String | toString (const ColourValue &val)
| Converts a ColourValue to a String.
static String | toString (const StringVector &val)
| Converts a StringVector to a string.
static Real | parseReal (const String &val)
| Converts a String to a Real.
static Radian | parseAngle (const String &val)
| Converts a String to a Angle.
static int | parseInt (const String &val)
| Converts a String to a whole number.
static unsigned int | parseUnsignedInt (const String &val)
| Converts a String to a whole number.
static long | parseLong (const String &val)
| Converts a String to a whole number.
static unsigned long | parseUnsignedLong (const String &val)
| Converts a String to a whole number.
static bool | parseBool (const String &val)
| Converts a String to a boolean.
static Vector2 | parseVector2 (const String &val)
| Parses a Vector2 out of a String.
static Vector3 | parseVector3 (const String &val)
| Parses a Vector3 out of a String.
static Vector4 | parseVector4 (const String &val)
| Parses a Vector4 out of a String.
static Matrix3 | parseMatrix3 (const String &val)
| Parses a Matrix3 out of a String.
static Matrix4 | parseMatrix4 (const String &val)
| Parses a Matrix4 out of a String.
static Quaternion | parseQuaternion (const String &val)
| Parses a Quaternion out of a String.
static ColourValue | parseColourValue (const String &val)
| Parses a ColourValue out of a String.
static StringVector | parseStringVector (const String &val)
| Pareses a StringVector from a string.
static bool | isNumber (const String &val)
| Checks the String is a valid number value.

## Detailed Description

Class for converting the core Ogre data types to/from Strings.

Remarks:
  The code for converting values to and from strings is here as a separate class to avoid coupling String to other datatypes (and vice-versa) which reduces compilation dependency: important given how often the core types are used.

  This class is mainly used for parsing settings in text files. External applications can also use it to interface with classes which use the StringInterface template class.

  The String formats of each of the major types is listed with the methods. The basic types like int and Real just use the underlying C runtime library atof and atoi family methods, however custom types like Vector3, ColourValue and Matrix4 are also supported by this class using custom formats.

Author:
  Steve Streeting

Definition at line 57 of file OgreStringConverter.h.

## Member Function Documentation

static String Ogre::StringConverter::toString | ( | Real | val,
|  | unsigned short | precision = `6`,
|  | unsigned short | width = `0`,
|  | char | fill = `' '`,
|  | std::ios::fmtflags | flags = `std::ios::fmtflags(0)` |
| ) |  |  | `[static]`

Converts a Real to a String.

static String Ogre::StringConverter::toString | ( | Radian | val,
|  | unsigned short | precision = `6`,
|  | unsigned short | width = `0`,
|  | char | fill = `' '`,
|  | std::ios::fmtflags | flags = `std::ios::fmtflags(0)` |
| ) |  |  | `[static]`

Converts a Radian to a String.

Definition at line 66 of file OgreStringConverter.h.

References Ogre::Radian::valueAngleUnits().

static String Ogre::StringConverter::toString | ( | Degree | val,
|  | unsigned short | precision = `6`,
|  | unsigned short | width = `0`,
|  | char | fill = `' '`,
|  | std::ios::fmtflags | flags = `std::ios::fmtflags(0)` |
| ) |  |  | `[static]`

Converts a Degree to a String.

Definition at line 73 of file OgreStringConverter.h.

References Ogre::Degree::valueAngleUnits().

static String Ogre::StringConverter::toString | ( | int | val,
|  | unsigned short | width = `0`,
|  | char | fill = `' '`,
|  | std::ios::fmtflags | flags = `std::ios::fmtflags(0)` |
| ) |  |  | `[static]`

Converts an int to a String.

static String Ogre::StringConverter::toString | ( | size_t | val,
|  | unsigned short | width = `0`,
|  | char | fill = `' '`,
|  | std::ios::fmtflags | flags = `std::ios::fmtflags(0)` |
| ) |  |  | `[static]`

Converts a size_t to a String.

static String Ogre::StringConverter::toString | ( | unsigned long | val,
|  | unsigned short | width = `0`,
|  | char | fill = `' '`,
|  | std::ios::fmtflags | flags = `std::ios::fmtflags(0)` |
| ) |  |  | `[static]`

Converts an unsigned long to a String.

static String Ogre::StringConverter::toString | ( | long | val,
|  | unsigned short | width = `0`,
|  | char | fill = `' '`,
|  | std::ios::fmtflags | flags = `std::ios::fmtflags(0)` |
| ) |  |  | `[static]`

Converts a long to a String.

static String Ogre::StringConverter::toString | ( | bool | val,
|  | bool | yesNo = `false` |
| ) |  |  | `[static]`

Converts a boolean to a String.

Parameters:

  | yesNo | If set to true, result is 'yes' or 'no' instead of 'true' or 'false'

static String Ogre::StringConverter::toString | ( | const Vector2 & | val | ) | `[static]`

Converts a Vector2 to a String.

Remarks:
  Format is "x y" (i.e. 2x Real values, space delimited)

static String Ogre::StringConverter::toString | ( | const Vector3 & | val | ) | `[static]`

Converts a Vector3 to a String.

Remarks:
  Format is "x y z" (i.e. 3x Real values, space delimited)

static String Ogre::StringConverter::toString | ( | const Vector4 & | val | ) | `[static]`

Converts a Vector4 to a String.

Remarks:
  Format is "x y z w" (i.e. 4x Real values, space delimited)

static String Ogre::StringConverter::toString | ( | const Matrix3 & | val | ) | `[static]`

Converts a Matrix3 to a String.

Remarks:
  Format is "00 01 02 10 11 12 20 21 22" where '01' means row 0 column 1 etc.

static String Ogre::StringConverter::toString | ( | const Matrix4 & | val | ) | `[static]`

Converts a Matrix4 to a String.

Remarks:
  Format is "00 01 02 03 10 11 12 13 20 21 22 23 30 31 32 33" where '01' means row 0 column 1 etc.

static String Ogre::StringConverter::toString | ( | const Quaternion & | val | ) | `[static]`

Converts a Quaternion to a String.

Remarks:
  Format is "w x y z" (i.e. 4x Real values, space delimited)

static String Ogre::StringConverter::toString | ( | const ColourValue & | val | ) | `[static]`

Converts a ColourValue to a String.

Remarks:
  Format is "r g b a" (i.e. 4x Real values, space delimited).

static String Ogre::StringConverter::toString | ( | const StringVector & | val | ) | `[static]`

Converts a StringVector to a string.

Remarks:
  Strings must not contain spaces since space is used as a delimiter in the output.

static Real Ogre::StringConverter::parseReal | ( | const String & | val | ) | `[static]`

Converts a String to a Real.

Returns:
  0.0 if the value could not be parsed, otherwise the Real version of the String.

static Radian Ogre::StringConverter::parseAngle | ( | const String & | val | ) | `[static]`

Converts a String to a Angle.

Returns:
  0.0 if the value could not be parsed, otherwise the Angle version of the String.

Definition at line 169 of file OgreStringConverter.h.

static int Ogre::StringConverter::parseInt | ( | const String & | val | ) | `[static]`

Converts a String to a whole number.

Returns:
  0.0 if the value could not be parsed, otherwise the numeric version of the String.

Referenced by Ogre::DriverVersion::fromString().

static unsigned int Ogre::StringConverter::parseUnsignedInt | ( | const String & | val | ) | `[static]`

Converts a String to a whole number.

Returns:
  0.0 if the value could not be parsed, otherwise the numeric version of the String.

static long Ogre::StringConverter::parseLong | ( | const String & | val | ) | `[static]`

Converts a String to a whole number.

Returns:
  0.0 if the value could not be parsed, otherwise the numeric version of the String.

static unsigned long Ogre::StringConverter::parseUnsignedLong | ( | const String & | val | ) | `[static]`

Converts a String to a whole number.

Returns:
  0.0 if the value could not be parsed, otherwise the numeric version of the String.

static bool Ogre::StringConverter::parseBool | ( | const String & | val | ) | `[static]`

Converts a String to a boolean.

Remarks:
  Returns true if case-insensitive match of the start of the string matches "true", "yes" or "1", false otherwise.

static Vector2 Ogre::StringConverter::parseVector2 | ( | const String & | val | ) | `[static]`

Parses a Vector2 out of a String.

Remarks:
  Format is "x y" ie. 2 Real components, space delimited. Failure to parse returns Vector2::ZERO.

static Vector3 Ogre::StringConverter::parseVector3 | ( | const String & | val | ) | `[static]`

Parses a Vector3 out of a String.

Remarks:
  Format is "x y z" ie. 3 Real components, space delimited. Failure to parse returns Vector3::ZERO.

static Vector4 Ogre::StringConverter::parseVector4 | ( | const String & | val | ) | `[static]`

Parses a Vector4 out of a String.

Remarks:
  Format is "x y z w" ie. 4 Real components, space delimited. Failure to parse returns Vector4::ZERO.

static Matrix3 Ogre::StringConverter::parseMatrix3 | ( | const String & | val | ) | `[static]`

Parses a Matrix3 out of a String.

Remarks:
  Format is "00 01 02 10 11 12 20 21 22" where '01' means row 0 column 1 etc. Failure to parse returns Matrix3::IDENTITY.

static Matrix4 Ogre::StringConverter::parseMatrix4 | ( | const String & | val | ) | `[static]`

Parses a Matrix4 out of a String.

Remarks:
  Format is "00 01 02 03 10 11 12 13 20 21 22 23 30 31 32 33" where '01' means row 0 column 1 etc. Failure to parse returns Matrix4::IDENTITY.

static Quaternion Ogre::StringConverter::parseQuaternion | ( | const String & | val | ) | `[static]`

Parses a Quaternion out of a String.

Remarks:
  Format is "w x y z" (i.e. 4x Real values, space delimited). Failure to parse returns Quaternion::IDENTITY.

static ColourValue Ogre::StringConverter::parseColourValue | ( | const String & | val | ) | `[static]`

Parses a ColourValue out of a String.

Remarks:
  Format is "r g b a" (i.e. 4x Real values, space delimited), or "r g b" which implies an alpha value of 1.0 (opaque). Failure to parse returns ColourValue::Black.

static StringVector Ogre::StringConverter::parseStringVector | ( | const String & | val | ) | `[static]`

Pareses a StringVector from a string.

Remarks:
  Strings must not contain spaces since space is used as a delimiter in the output.

static bool Ogre::StringConverter::isNumber | ( | const String & | val | ) | `[static]`

Checks the String is a valid number value.

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

- OgreStringConverter.h

Copyright © 2008 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Dec 27 17:36:21 2009