Index: trunk/src/lib/sound/ogg_player.cc
===================================================================
--- trunk/src/lib/sound/ogg_player.cc	(revision 7193)
+++ trunk/src/lib/sound/ogg_player.cc	(revision 7221)
@@ -31,5 +31,5 @@
  * @param fileName the file to load
  */
-OggPlayer::OggPlayer(const char* fileName)
+OggPlayer::OggPlayer(const std::string& fileName)
 {
   this->setClassID(CL_SOUND_OGG_PLAYER, "OggPlayer");
@@ -40,5 +40,5 @@
   this->buffers[1] = 0;
 
-  if (fileName != NULL)
+  if (!fileName.empty())
   {
     if (this->open(fileName))
@@ -56,5 +56,5 @@
  * @param fileName the file to open
  */
-bool OggPlayer::open(const char* fileName)
+bool OggPlayer::open(const std::string& fileName)
 {
   if (this->buffers[0] == 0)
@@ -72,5 +72,5 @@
   int result;
 
-  if(!(oggFile = fopen(fileName, "rb")))
+  if(!(oggFile = fopen(fileName.c_str(), "rb")))
   {
     PRINTF(2)("Could not open Ogg file.");
Index: trunk/src/lib/sound/ogg_player.h
===================================================================
--- trunk/src/lib/sound/ogg_player.h	(revision 7193)
+++ trunk/src/lib/sound/ogg_player.h	(revision 7221)
@@ -27,8 +27,8 @@
 {
 public:
-  OggPlayer(const char* fileName = NULL);
+  OggPlayer(const std::string& fileName = "");
   virtual ~OggPlayer();
 
-  bool open(const char* fileName);
+  bool open(const std::string& fileName);
   void release();
   void debug();
Index: trunk/src/lib/sound/sound_buffer.cc
===================================================================
--- trunk/src/lib/sound/sound_buffer.cc	(revision 7193)
+++ trunk/src/lib/sound/sound_buffer.cc	(revision 7221)
@@ -32,5 +32,5 @@
  * @param fileName The name of the File
  */
-SoundBuffer::SoundBuffer(const char* fileName)
+SoundBuffer::SoundBuffer(const std::string& fileName)
 {
   this->setClassID(CL_SOUND_BUFFER, "SoundBuffer");
@@ -54,5 +54,5 @@
  * @returns true on success.
  */
-bool SoundBuffer::loadWAV(const char* fileName)
+bool SoundBuffer::loadWAV(const std::string& fileName)
 {
   SDL_AudioSpec wavSpec;
@@ -61,7 +61,7 @@
 
   /* Load the WAV */
-  if( SDL_LoadWAV(fileName, &wavSpec, &wavBuffer, &wavLength) == NULL)
+  if( SDL_LoadWAV(fileName.c_str(), &wavSpec, &wavBuffer, &wavLength) == NULL)
   {
-    PRINTF(2)("Could not open %s: %s\n", fileName, SDL_GetError());
+    PRINTF(2)("Could not open %s: %s\n", fileName.c_str(), SDL_GetError());
     return false;
   }
Index: trunk/src/lib/sound/sound_buffer.h
===================================================================
--- trunk/src/lib/sound/sound_buffer.h	(revision 7193)
+++ trunk/src/lib/sound/sound_buffer.h	(revision 7221)
@@ -17,8 +17,8 @@
 {
   public:
-    SoundBuffer(const char* fileName);
+    SoundBuffer(const std::string& fileName);
     virtual ~SoundBuffer();
 
-    bool loadWAV(const char* fileName);
+    bool loadWAV(const std::string& fileName);
 
     /** @returns the ID of the buffer used in this SoundBuffer */
Index: trunk/src/lib/sound/sound_engine.cc
===================================================================
--- trunk/src/lib/sound/sound_engine.cc	(revision 7193)
+++ trunk/src/lib/sound/sound_engine.cc	(revision 7221)
@@ -99,12 +99,12 @@
 void SoundEngine::loadSettings(IniParser* iniParser)
 {
-  const char* channels = iniParser->getVar(CONFIG_NAME_AUDIO_CHANNELS, CONFIG_SECTION_AUDIO, "32");
-  this->maxSourceCount = atoi(channels);
-
-  const char* effectsVolume = iniParser->getVar(CONFIG_NAME_EFFECTS_VOLUME, CONFIG_SECTION_AUDIO, "80");
-  this->effectsVolume = atof(effectsVolume)/100.0;
-
-  const char* musicVolume = iniParser->getVar(CONFIG_NAME_MUSIC_VOLUME, CONFIG_SECTION_AUDIO, "75");
-  this->musicVolume = atof(musicVolume)/100.0;
+  MultiType channels = iniParser->getVar(CONFIG_NAME_AUDIO_CHANNELS, CONFIG_SECTION_AUDIO, "32");
+  this->maxSourceCount = channels.getInt();
+
+  MultiType effectsVolume = iniParser->getVar(CONFIG_NAME_EFFECTS_VOLUME, CONFIG_SECTION_AUDIO, "80");
+  this->effectsVolume = effectsVolume.getFloat()/100.0;
+
+  MultiType musicVolume = iniParser->getVar(CONFIG_NAME_MUSIC_VOLUME, CONFIG_SECTION_AUDIO, "75");
+  this->musicVolume = musicVolume.getFloat()/100.0;
 }
 
@@ -117,5 +117,5 @@
    acctualy this is nothing more than a wrapper around the ResourceManager.
 */
-SoundSource* SoundEngine::createSource(const char* fileName, PNode* sourceNode)
+SoundSource* SoundEngine::createSource(const std::string& fileName, PNode* sourceNode)
 {
   return new SoundSource(sourceNode, (SoundBuffer*)ResourceManager::getInstance()->load(fileName, WAV, RP_LEVEL));
Index: trunk/src/lib/sound/sound_engine.h
===================================================================
--- trunk/src/lib/sound/sound_engine.h	(revision 7193)
+++ trunk/src/lib/sound/sound_engine.h	(revision 7221)
@@ -33,5 +33,5 @@
     void loadSettings(IniParser* iniParser);
 
-    SoundSource* createSource(const char* fileName, PNode* sourceNode = NULL);
+    SoundSource* createSource(const std::string& fileName, PNode* sourceNode = NULL);
 
     /** @param listener the listener in the scene */
