]> git.mxchange.org Git - flightgear.git/blobdiff - src/ATC/ATCVoice.cxx
Daniyar ATADJANOV:
[flightgear.git] / src / ATC / ATCVoice.cxx
index 71d9f5fc8248545c2b94c9b053892266fed87ad9..682cd24a4ed72b4f70e321f26c05a8ef191686df 100644 (file)
@@ -16,7 +16,7 @@
 //
 // You should have received a copy of the GNU General Public License
 // along with this program; if not, write to the Free Software
-// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 
 
 #ifdef HAVE_CONFIG_H
 #include <stdlib.h>
 
 FGATCVoice::FGATCVoice() {
+  SoundData = 0;
+  rawSoundData = 0;
 }
 
 FGATCVoice::~FGATCVoice() {
-       delete SoundData;
+    if (rawSoundData)
+        free( rawSoundData );
+    delete SoundData;
 }
 
 // Load the two voice files - one containing the raw sound data (.wav) and one containing the word positions (.vce).
 // Return true if successful.
-bool FGATCVoice::LoadVoice(string voice) {
+bool FGATCVoice::LoadVoice(const string& voice) {
+    // FIXME CLO: disabled to try to see if this is causign problemcs
+    // return false;
+
        ifstream fin;
 
        SGPath path = globals->get_fg_root();
-       string soundPath = "ATC/" + voice + ".wav";
-       path.append(soundPath);
+       path.append( "ATC" );
+
+        string file = voice + ".wav";
        
-       SoundData = new slSample( (char*)path.c_str() );
-       rawDataSize = SoundData->getLength();
-       rawSoundData = (char*)SoundData->getBuffer();
+       SoundData = new SGSoundSample();
+        rawSoundData = (char *)SoundData->load_file(path.c_str(), file.c_str());
+       rawDataSize = SoundData->get_size();
        
        path = globals->get_fg_root();
        string wordPath = "ATC/" + voice + ".vce";