From 2751286e1504c18520b45fae63b3a88b59e7101c Mon Sep 17 00:00:00 2001
From: Tristan Matthews <tristan.matthews@savoirfairelinux.com>
Date: Fri, 10 Jun 2011 17:46:21 -0400
Subject: [PATCH] * #6104: AudioCodec moved to sfl namespace

---
 sflphone-common/src/audio/codecs/alaw.cpp           |  4 ++--
 sflphone-common/src/audio/codecs/audiocodec.cpp     |  4 ++++
 sflphone-common/src/audio/codecs/audiocodec.h       |  5 ++++-
 .../src/audio/codecs/audiocodecfactory.cpp          |  6 +++---
 sflphone-common/src/audio/codecs/celtcodec.cpp      |  4 ++--
 sflphone-common/src/audio/codecs/g722.cpp           |  4 ++--
 sflphone-common/src/audio/codecs/gsmcodec.cpp       |  4 ++--
 sflphone-common/src/audio/codecs/speexcodec_nb.cpp  |  4 ++--
 sflphone-common/src/audio/codecs/speexcodec_ub.cpp  |  4 ++--
 sflphone-common/src/audio/codecs/speexcodec_wb.cpp  |  4 ++--
 sflphone-common/src/audio/codecs/ulaw.cpp           |  4 ++--
 sflphone-common/src/audio/sound/audiofile.cpp       |  5 +++--
 sflphone-common/src/audio/sound/audiofile.h         | 13 +++++++------
 sflphone-common/src/iax/iaxvoiplink.cpp             | 12 ++++++------
 sflphone-common/src/managerimpl.cpp                 |  4 ++--
 sflphone-common/src/sip/sdp.cpp                     |  4 ++--
 sflphone-common/src/sip/sdp.h                       |  7 +++++--
 sflphone-common/src/sip/sipvoiplink.cpp             | 12 ++++++------
 18 files changed, 58 insertions(+), 46 deletions(-)

diff --git a/sflphone-common/src/audio/codecs/alaw.cpp b/sflphone-common/src/audio/codecs/alaw.cpp
index 44741d0f1d..f6826269eb 100644
--- a/sflphone-common/src/audio/codecs/alaw.cpp
+++ b/sflphone-common/src/audio/codecs/alaw.cpp
@@ -32,13 +32,13 @@
 #include "../common.h"
 #include "audiocodec.h"
 
-class Alaw : public AudioCodec
+class Alaw : public sfl::AudioCodec
 {
 
     public:
         // 8 PCMA A 8000 1 [RFC3551]
         Alaw (int payload=8)
-            : AudioCodec (payload, "PCMA") {
+            : sfl::AudioCodec (payload, "PCMA") {
             _clockRate = 8000;
             _frameSize = 160; // samples, 20 ms at 8kHz
             _channel   = 1;
diff --git a/sflphone-common/src/audio/codecs/audiocodec.cpp b/sflphone-common/src/audio/codecs/audiocodec.cpp
index 05db9abda7..df7a692419 100644
--- a/sflphone-common/src/audio/codecs/audiocodec.cpp
+++ b/sflphone-common/src/audio/codecs/audiocodec.cpp
@@ -32,6 +32,8 @@
 
 #include "audiocodec.h"
 
+namespace sfl {
+
 AudioCodec::AudioCodec (uint8 payload, const std::string &codecName) :
         _codecName (codecName), _clockRate (8000), _channel (1), _bitrate (0.0),
         _bandwidth (0), _hasDynamicPayload (false), _payload(payload)
@@ -110,3 +112,5 @@ double AudioCodec::getBandwidth (void) const
 {
     return _bandwidth;
 }
+
+} // end namespace sfl
diff --git a/sflphone-common/src/audio/codecs/audiocodec.h b/sflphone-common/src/audio/codecs/audiocodec.h
index 44b630a939..20558f0527 100644
--- a/sflphone-common/src/audio/codecs/audiocodec.h
+++ b/sflphone-common/src/audio/codecs/audiocodec.h
@@ -38,7 +38,9 @@
 
 #include "Codec.h"
 
-class AudioCodec : public sfl::Codec   // TODO Move into the "sfl" namespace
+namespace sfl {
+
+class AudioCodec : public Codec
 {
     public:
         AudioCodec (uint8 payload, const std::string &codecName);
@@ -187,5 +189,6 @@ class AudioCodec : public sfl::Codec   // TODO Move into the "sfl" namespace
 
         void init (uint8 payloadType, uint32 clockRate);
 };
+} // end namespace sfl
 
 #endif
diff --git a/sflphone-common/src/audio/codecs/audiocodecfactory.cpp b/sflphone-common/src/audio/codecs/audiocodecfactory.cpp
index 595e7fbadb..e751d1cab5 100644
--- a/sflphone-common/src/audio/codecs/audiocodecfactory.cpp
+++ b/sflphone-common/src/audio/codecs/audiocodecfactory.cpp
@@ -108,9 +108,9 @@ AudioCodecFactory::getCodec (AudioCodecType payload)
 {
     CodecsMap::iterator iter = _CodecsMap.find (payload);
 
-    if (iter!=_CodecsMap.end()) {
-        return static_cast<AudioCodec *>(iter->second);
-    }
+    // FIXME: isn't this static cast pointless?
+    if (iter != _CodecsMap.end())
+        return static_cast<sfl::AudioCodec *>(iter->second);
 
     _error ("CodecDescriptor: Error cannont found codec %i in _CodecsMap from codec descriptor", payload);
 
diff --git a/sflphone-common/src/audio/codecs/celtcodec.cpp b/sflphone-common/src/audio/codecs/celtcodec.cpp
index 6db7d29fb6..4ce2b45f20 100644
--- a/sflphone-common/src/audio/codecs/celtcodec.cpp
+++ b/sflphone-common/src/audio/codecs/celtcodec.cpp
@@ -33,11 +33,11 @@
 #include <celt/celt.h>
 
 
-class Celt : public AudioCodec
+class Celt : public sfl::AudioCodec
 {
 
     public:
-        Celt (int payload=115)	: AudioCodec (payload, "celt") {
+        Celt (int payload=115)	: sfl::AudioCodec (payload, "celt") {
 
             _clockRate = 32000;
             _frameSize = 320;  // fixed frameSize, TODO: support variable size from 64 to 512
diff --git a/sflphone-common/src/audio/codecs/g722.cpp b/sflphone-common/src/audio/codecs/g722.cpp
index 0335aea92a..41ec89a9e1 100644
--- a/sflphone-common/src/audio/codecs/g722.cpp
+++ b/sflphone-common/src/audio/codecs/g722.cpp
@@ -43,13 +43,13 @@
 #define FALSE 0
 
 
-class G722 : public AudioCodec
+class G722 : public sfl::AudioCodec
 {
 
     public:
 
         G722 (int payload=9)
-            : AudioCodec (payload, "G722") {
+            : sfl::AudioCodec (payload, "G722") {
             _clockRate = 16000;
             _frameSize = 320; // samples, 20 ms at 16kHz
             _channel   = 1;
diff --git a/sflphone-common/src/audio/codecs/gsmcodec.cpp b/sflphone-common/src/audio/codecs/gsmcodec.cpp
index 8ab18aa418..8be02bc61c 100644
--- a/sflphone-common/src/audio/codecs/gsmcodec.cpp
+++ b/sflphone-common/src/audio/codecs/gsmcodec.cpp
@@ -39,12 +39,12 @@ extern "C" {
  * GSM audio codec C++ class (over gsm/gsm.h)
  */
 
-class Gsm : public AudioCodec
+class Gsm : public sfl::AudioCodec
 {
 
     public:
         // _payload should be 3
-        Gsm (int payload=3) : AudioCodec (payload, "GSM"), _decode_gsmhandle (NULL), _encode_gsmhandle (NULL) {
+        Gsm (int payload=3) : sfl::AudioCodec (payload, "GSM"), _decode_gsmhandle (NULL), _encode_gsmhandle (NULL) {
             _clockRate = 8000;
             _frameSize = 160; // samples, 20 ms at 8kHz
             _channel = 1;
diff --git a/sflphone-common/src/audio/codecs/speexcodec_nb.cpp b/sflphone-common/src/audio/codecs/speexcodec_nb.cpp
index 8a22ab9d5a..e0fcd2a815 100644
--- a/sflphone-common/src/audio/codecs/speexcodec_nb.cpp
+++ b/sflphone-common/src/audio/codecs/speexcodec_nb.cpp
@@ -34,12 +34,12 @@
 #include <speex/speex.h>
 #include <speex/speex_preprocess.h>
 
-class Speex : public AudioCodec
+class Speex : public sfl::AudioCodec
 {
 
     public:
         Speex (int payload=110)
-            : AudioCodec (payload, "speex"),
+            : sfl::AudioCodec (payload, "speex"),
               _speexModePtr (NULL),
               _speex_dec_bits(),
               _speex_enc_bits(),
diff --git a/sflphone-common/src/audio/codecs/speexcodec_ub.cpp b/sflphone-common/src/audio/codecs/speexcodec_ub.cpp
index 3a9cebee7a..36a8cd1f42 100644
--- a/sflphone-common/src/audio/codecs/speexcodec_ub.cpp
+++ b/sflphone-common/src/audio/codecs/speexcodec_ub.cpp
@@ -33,12 +33,12 @@
 #include <cstdio>
 #include <speex/speex.h>
 
-class Speex : public AudioCodec
+class Speex : public sfl::AudioCodec
 {
 
     public:
         Speex (int payload=112)
-            : AudioCodec (payload, "speex"),
+            : sfl::AudioCodec (payload, "speex"),
               _speexModePtr (NULL),
               _speex_dec_bits(),
               _speex_enc_bits(),
diff --git a/sflphone-common/src/audio/codecs/speexcodec_wb.cpp b/sflphone-common/src/audio/codecs/speexcodec_wb.cpp
index 3969ee94a3..e4fcd41462 100644
--- a/sflphone-common/src/audio/codecs/speexcodec_wb.cpp
+++ b/sflphone-common/src/audio/codecs/speexcodec_wb.cpp
@@ -33,12 +33,12 @@
 #include <cstdio>
 #include <speex/speex.h>
 
-class Speex : public AudioCodec
+class Speex : public sfl::AudioCodec
 {
 
     public:
         Speex (int payload=111)
-            : AudioCodec (payload, "speex"),
+            : sfl::AudioCodec (payload, "speex"),
               _speexModePtr (NULL),
               _speex_dec_bits(),
               _speex_enc_bits(),
diff --git a/sflphone-common/src/audio/codecs/ulaw.cpp b/sflphone-common/src/audio/codecs/ulaw.cpp
index 3e40b8b8a9..56d6571742 100644
--- a/sflphone-common/src/audio/codecs/ulaw.cpp
+++ b/sflphone-common/src/audio/codecs/ulaw.cpp
@@ -34,13 +34,13 @@
 #include "../common.h"
 #include "audiocodec.h"
 
-class Ulaw : public AudioCodec
+class Ulaw : public sfl::AudioCodec
 {
 
     public:
         // 0 PCMU A 8000 1 [RFC3551]
         Ulaw (int payload=0)
-            : AudioCodec (payload, "PCMU") {
+            : sfl::AudioCodec (payload, "PCMU") {
             _clockRate = 8000;
             _frameSize = 160; // samples, 20 ms at 8kHz
             _channel   = 1;
diff --git a/sflphone-common/src/audio/sound/audiofile.cpp b/sflphone-common/src/audio/sound/audiofile.cpp
index 101cc56e3a..2c5f48eb2c 100644
--- a/sflphone-common/src/audio/sound/audiofile.cpp
+++ b/sflphone-common/src/audio/sound/audiofile.cpp
@@ -39,6 +39,7 @@
 
 #include "audiofile.h"
 #include "audio/codecs/audiocodecfactory.h"
+#include "audio/codecs/audiocodec.h"
 #include "audio/samplerateconverter.h"
 
 #include "manager.h"
@@ -55,7 +56,7 @@ RawFile::~RawFile()
 
 // load file in mono format
 bool
-RawFile::loadFile (const std::string& filename, AudioCodec* codec , unsigned int sampleRate=8000)
+RawFile::loadFile (const std::string& filename, sfl::AudioCodec* codec , unsigned int sampleRate=8000)
 {
     _codec = codec;
 
@@ -453,7 +454,7 @@ bool WaveFile::openExistingWaveFile (const std::string& fileName, int audioSampl
 }
 
 
-bool WaveFile::loadFile (const std::string& filename, AudioCodec * /*codec*/, unsigned int sampleRate)
+bool WaveFile::loadFile (const std::string& filename, sfl::AudioCodec * /*codec*/, unsigned int sampleRate)
 {
     openFile (filename, sampleRate);
 
diff --git a/sflphone-common/src/audio/sound/audiofile.h b/sflphone-common/src/audio/sound/audiofile.h
index 857de3aaf5..f0d0ff701e 100644
--- a/sflphone-common/src/audio/sound/audiofile.h
+++ b/sflphone-common/src/audio/sound/audiofile.h
@@ -37,9 +37,10 @@
 #include <fstream>
 
 #include "audio/audioloop.h"
-#include "audio/codecs/audiocodec.h"
-#include "audio/codecs/audiocodecfactory.h"
 
+namespace sfl {
+class AudioCodec;
+}
 
 /**
  * @brief Abstract interface for file readers
@@ -55,7 +56,7 @@ class AudioFile : public AudioLoop
         * @param sampleRate	The sample rate to read it
         * @return bool   True on success
         */
-        virtual bool loadFile (const std::string& filename, AudioCodec *codec , unsigned int sampleRate) = 0;
+        virtual bool loadFile (const std::string& filename, sfl::AudioCodec *codec , unsigned int sampleRate) = 0;
 
         /**
          * Start the sound file
@@ -114,7 +115,7 @@ class RawFile : public AudioFile
          * @param sampleRate	The sample rate to read it
          * @return bool   True on success
          */
-        virtual bool loadFile (const std::string& filename, AudioCodec *codec , unsigned int sampleRate);
+        virtual bool loadFile (const std::string& filename, sfl::AudioCodec *codec , unsigned int sampleRate);
 
     private:
         // Copy Constructor
@@ -127,7 +128,7 @@ class RawFile : public AudioFile
         std::string _filename;
 
         /** Your preferred codec */
-        AudioCodec* _codec;
+        sfl::AudioCodec* _codec;
 };
 
 
@@ -155,7 +156,7 @@ class WaveFile : public AudioFile
              * @param sampleRate	The sample rate to read it
              * @return bool   True on success
              */
-        virtual bool loadFile (const std::string& filename, AudioCodec *codec , unsigned int sampleRate);
+        virtual bool loadFile (const std::string& filename, sfl::AudioCodec *codec , unsigned int sampleRate);
 
     private:
 
diff --git a/sflphone-common/src/iax/iaxvoiplink.cpp b/sflphone-common/src/iax/iaxvoiplink.cpp
index 47a73c936d..9d14d0eec6 100644
--- a/sflphone-common/src/iax/iaxvoiplink.cpp
+++ b/sflphone-common/src/iax/iaxvoiplink.cpp
@@ -302,7 +302,7 @@ IAXVoIPLink::sendAudioFromMic (void)
 {
 
     int maxBytesToGet, availBytesFromMic, bytesAvail, compSize;
-    AudioCodec *audioCodec = NULL;
+    sfl::AudioCodec *audioCodec = NULL;
     IAXCall *currentCall;
 
     // We have to update the audio layer type in case we switched
@@ -330,7 +330,7 @@ IAXVoIPLink::sendAudioFromMic (void)
             if (callIsActive) {
 
 		AudioCodecType codecType = currentCall->getAudioCodec();
-                audioCodec = static_cast<AudioCodec *>(currentCall->getAudioCodecFactory().getCodec (codecType));
+                audioCodec = static_cast<sfl::AudioCodec *>(currentCall->getAudioCodecFactory().getCodec (codecType));
 
                 // Send sound here
 
@@ -708,7 +708,7 @@ std::string
 IAXVoIPLink::getCurrentCodecName(const CallID& /*id*/)
 {
     IAXCall *call = NULL;
-    AudioCodec *audioCodec = NULL;
+    sfl::AudioCodec *audioCodec = NULL;
     std::string name = "";
 
     call = getIAXCall (Manager::instance().getCurrentCallId());
@@ -719,7 +719,7 @@ IAXVoIPLink::getCurrentCodecName(const CallID& /*id*/)
     }
 
     AudioCodecType audioCodecType = call->getAudioCodec();
-    audioCodec= static_cast<AudioCodec *>(call->getAudioCodecFactory().getCodec (audioCodecType));
+    audioCodec= static_cast<sfl::AudioCodec *>(call->getAudioCodecFactory().getCodec (audioCodecType));
 
     if(audioCodec == NULL) {
         _error("IAX: Error: Could not load audio codec");
@@ -975,7 +975,7 @@ IAXVoIPLink::iaxHandleVoiceEvent (iax_event* event, IAXCall* call)
     unsigned char *data;
     unsigned int size, max, nbInt16;
     int expandedSize, nbSample_;
-    AudioCodec *audioCodec;
+    sfl::AudioCodec *audioCodec;
 
     if (!call) {
         return;
@@ -988,7 +988,7 @@ IAXVoIPLink::iaxHandleVoiceEvent (iax_event* event, IAXCall* call)
     }
 
     AudioCodecType audioCodecType = call->getAudioCodec();
-    audioCodec = static_cast<AudioCodec *>(call->getAudioCodecFactory().getCodec (audioCodecType));
+    audioCodec = static_cast<sfl::AudioCodec *>(call->getAudioCodecFactory().getCodec (audioCodecType));
 
     if (!audioCodec)
         return;
diff --git a/sflphone-common/src/managerimpl.cpp b/sflphone-common/src/managerimpl.cpp
index 84fc65dc92..23a2fd5ba1 100644
--- a/sflphone-common/src/managerimpl.cpp
+++ b/sflphone-common/src/managerimpl.cpp
@@ -2304,7 +2304,7 @@ void ManagerImpl::ringback ()
 void ManagerImpl::ringtone (const AccountID& accountID)
 {
     std::string ringchoice;
-    AudioCodec *codecForTone;
+    sfl::AudioCodec *codecForTone;
     int layer, samplerate;
     bool loadFile;
 
@@ -2344,7 +2344,7 @@ void ManagerImpl::ringtone (const AccountID& accountID)
         layer = _audiodriver->getLayerType();
 
         samplerate = _audiodriver->getSampleRate();
-        codecForTone = static_cast<AudioCodec *>(_audioCodecFactory.getFirstCodecAvailable());
+        codecForTone = static_cast<sfl::AudioCodec *>(_audioCodecFactory.getFirstCodecAvailable());
 
         audioLayerMutexUnlock();
 
diff --git a/sflphone-common/src/sip/sdp.cpp b/sflphone-common/src/sip/sdp.cpp
index affb01d965..7e66c344e7 100644
--- a/sflphone-common/src/sip/sdp.cpp
+++ b/sflphone-common/src/sip/sdp.cpp
@@ -151,7 +151,7 @@ bool Sdp::hasSessionMedia(void)
     return listNotEmpty;
 }
 
-AudioCodec* Sdp::getSessionMedia (void) throw(SdpException)
+sfl::AudioCodec* Sdp::getSessionMedia (void) throw(SdpException)
 {
 
     int nbMedia;
@@ -178,7 +178,7 @@ AudioCodec* Sdp::getSessionMedia (void) throw(SdpException)
 
     codec = mediaList[0]->get_media_codec_list() [0];
 
-    return static_cast<AudioCodec *>(codec);
+    return static_cast<sfl::AudioCodec *>(codec);
 }
 
 void Sdp::setMediaDescriptorLine (sdpMedia *media, pjmedia_sdp_media** p_med)
diff --git a/sflphone-common/src/sip/sdp.h b/sflphone-common/src/sip/sdp.h
index 4afeda51ef..2f2bdc7e4c 100644
--- a/sflphone-common/src/sip/sdp.h
+++ b/sflphone-common/src/sip/sdp.h
@@ -42,11 +42,14 @@
 #include <pj/assert.h>
 #include <vector>
 
-#include "audio/codecs/audiocodecfactory.h"
 #include "sdpmedia.h"
 
 #include <exception>
 
+namespace sfl {
+    class AudioCodec;
+}
+
 class SdpException : public std::exception
 {
     public:
@@ -157,7 +160,7 @@ class Sdp
         /**
          * Return the codec of the first media after negociation
          */
-        AudioCodec* getSessionMedia (void) throw(SdpException);
+        sfl::AudioCodec* getSessionMedia (void) throw(SdpException);
 
         /*
          * On building an invite outside a dialog, build the local offer and create the
diff --git a/sflphone-common/src/sip/sipvoiplink.cpp b/sflphone-common/src/sip/sipvoiplink.cpp
index 98a8befca3..69ca116a37 100644
--- a/sflphone-common/src/sip/sipvoiplink.cpp
+++ b/sflphone-common/src/sip/sipvoiplink.cpp
@@ -715,7 +715,7 @@ Call *SIPVoIPLink::newOutgoingCall (const CallID& id, const std::string& toUrl)
 		call->getAudioRtp()->initAudioRtpSession (call);
 		call->getAudioRtp()->initLocalCryptoInfo (call);
 		_info ("UserAgent: Start audio rtp session");
-		call->getAudioRtp()->start (static_cast<AudioCodec *>(audiocodec));
+		call->getAudioRtp()->start (static_cast<sfl::AudioCodec *>(audiocodec));
 	} catch (...) {
 		throw VoipLinkException ("Could not start rtp session for early media");
 	}
@@ -1018,7 +1018,7 @@ SIPVoIPLink::offhold (const CallID& id) throw (VoipLinkException)
 
         call->getAudioRtp()->initAudioRtpConfig (call);
         call->getAudioRtp()->initAudioRtpSession (call);
-        call->getAudioRtp()->start (static_cast<AudioCodec *>(audiocodec));
+        call->getAudioRtp()->start (static_cast<sfl::AudioCodec *>(audiocodec));
 
     }
     catch (SdpException &e) {
@@ -1793,7 +1793,7 @@ bool SIPVoIPLink::SIPNewIpToIpCall (const CallID& id, const std::string& to)
             call->getAudioRtp()->initAudioRtpConfig (call);
             call->getAudioRtp()->initAudioRtpSession (call);
             call->getAudioRtp()->initLocalCryptoInfo (call);
-            call->getAudioRtp()->start (static_cast<AudioCodec *>(audiocodec));
+            call->getAudioRtp()->start (static_cast<sfl::AudioCodec *>(audiocodec));
         } catch (...) {
             _debug ("UserAgent: Unable to create RTP Session in new IP2IP call (%s:%d)", __FILE__, __LINE__);
         }
@@ -3509,7 +3509,7 @@ void sdp_media_update_cb (pjsip_inv_session *inv, pj_status_t status)
     if (!sdpSession)
         return;
 
-    AudioCodec *sessionMedia = sdpSession->getSessionMedia();
+    sfl::AudioCodec *sessionMedia = sdpSession->getSessionMedia();
 
     if (!sessionMedia)
         return;
@@ -3530,7 +3530,7 @@ void sdp_media_update_cb (pjsip_inv_session *inv, pj_status_t status)
             if (audiocodec == NULL)
                 _error ("UserAgent: No audiocodec found");
 
-            call->getAudioRtp()->updateSessionMedia (static_cast<AudioCodec *>(audiocodec));
+            call->getAudioRtp()->updateSessionMedia (static_cast<sfl::AudioCodec *>(audiocodec));
         }
     }  // FIXME: should this really be std::exception? If so, it should be caught last
     catch (const SdpException &e) {
@@ -4052,7 +4052,7 @@ transaction_request_cb (pjsip_rx_data *rdata)
     // Init audio rtp session
     try {
         _debug ("UserAgent: Create RTP session for this call");
-        call->getAudioRtp()->start (static_cast<AudioCodec *>(audiocodec));
+        call->getAudioRtp()->start (static_cast<sfl::AudioCodec *>(audiocodec));
     } catch (...) {
         _warn ("UserAgent: Error: Failed to create rtp thread from answer");
     }
-- 
GitLab