Fix clang style warnings in webrtc/modules/audio_coding

Mostly this consists of marking functions with override when
applicable, and moving function bodies from .h to .cc files.

BUG=163
R=henrik.lundin@webrtc.org, tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/44979004

Cr-Commit-Position: refs/heads/master@{#8938}
diff --git a/webrtc/modules/audio_coding/main/acm2/acm_generic_codec.cc b/webrtc/modules/audio_coding/main/acm2/acm_generic_codec.cc
index 6d7b095..6b04081 100644
--- a/webrtc/modules/audio_coding/main/acm2/acm_generic_codec.cc
+++ b/webrtc/modules/audio_coding/main/acm2/acm_generic_codec.cc
@@ -118,6 +118,8 @@
       decoder_(nullptr) {
 }
 
+AudioDecoderProxy::~AudioDecoderProxy() = default;
+
 void AudioDecoderProxy::SetDecoder(AudioDecoder* decoder) {
   CriticalSectionScoped decoder_lock(decoder_lock_.get());
   decoder_ = decoder;
diff --git a/webrtc/modules/audio_coding/main/acm2/acm_generic_codec.h b/webrtc/modules/audio_coding/main/acm2/acm_generic_codec.h
index d491dfd..d775434 100644
--- a/webrtc/modules/audio_coding/main/acm2/acm_generic_codec.h
+++ b/webrtc/modules/audio_coding/main/acm2/acm_generic_codec.h
@@ -45,6 +45,7 @@
 class AudioDecoderProxy final : public AudioDecoder {
  public:
   AudioDecoderProxy();
+  ~AudioDecoderProxy() override;
   void SetDecoder(AudioDecoder* decoder);
   bool IsSet() const;
   int Decode(const uint8_t* encoded,
diff --git a/webrtc/modules/audio_coding/main/acm2/audio_coding_module.cc b/webrtc/modules/audio_coding/main/acm2/audio_coding_module.cc
index 9b61d33..f1d7a5d 100644
--- a/webrtc/modules/audio_coding/main/acm2/audio_coding_module.cc
+++ b/webrtc/modules/audio_coding/main/acm2/audio_coding_module.cc
@@ -94,6 +94,17 @@
   }
 }
 
+AudioCoding::Config::Config()
+    : neteq_config(),
+      clock(Clock::GetRealTimeClock()),
+      transport(nullptr),
+      vad_callback(nullptr),
+      play_dtmf(true),
+      initial_playout_delay_ms(0),
+      playout_channels(1),
+      playout_frequency_hz(32000) {
+}
+
 AudioCoding* AudioCoding::Create(const Config& config) {
   return new AudioCodingImpl(config);
 }
diff --git a/webrtc/modules/audio_coding/main/acm2/audio_coding_module_impl.cc b/webrtc/modules/audio_coding/main/acm2/audio_coding_module_impl.cc
index d78af65..4918d21 100644
--- a/webrtc/modules/audio_coding/main/acm2/audio_coding_module_impl.cc
+++ b/webrtc/modules/audio_coding/main/acm2/audio_coding_module_impl.cc
@@ -909,6 +909,14 @@
   return receiver_.SetInitialDelay(delay_ms);
 }
 
+int AudioCodingModuleImpl::SetDtmfPlayoutStatus(bool enable) {
+  return 0;
+}
+
+bool AudioCodingModuleImpl::DtmfPlayoutStatus() const {
+  return true;
+}
+
 int AudioCodingModuleImpl::EnableNack(size_t max_nack_list_size) {
   return receiver_.EnableNack(max_nack_list_size);
 }
@@ -933,6 +941,20 @@
 
 }  // namespace acm2
 
+AudioCodingImpl::AudioCodingImpl(const Config& config) {
+  AudioCodingModule::Config config_old = config.ToOldConfig();
+  acm_old_.reset(new acm2::AudioCodingModuleImpl(config_old));
+  acm_old_->RegisterTransportCallback(config.transport);
+  acm_old_->RegisterVADCallback(config.vad_callback);
+  acm_old_->SetDtmfPlayoutStatus(config.play_dtmf);
+  if (config.initial_playout_delay_ms > 0) {
+    acm_old_->SetInitialPlayoutDelay(config.initial_playout_delay_ms);
+  }
+  playout_frequency_hz_ = config.playout_frequency_hz;
+}
+
+AudioCodingImpl::~AudioCodingImpl() = default;
+
 bool AudioCodingImpl::RegisterSendCodec(AudioEncoder* send_codec) {
   FATAL() << "Not implemented yet.";
   return false;
diff --git a/webrtc/modules/audio_coding/main/acm2/audio_coding_module_impl.h b/webrtc/modules/audio_coding/main/acm2/audio_coding_module_impl.h
index 1e9cbb9..d307cda 100644
--- a/webrtc/modules/audio_coding/main/acm2/audio_coding_module_impl.h
+++ b/webrtc/modules/audio_coding/main/acm2/audio_coding_module_impl.h
@@ -37,7 +37,7 @@
   friend webrtc::AudioCodingImpl;
 
   explicit AudioCodingModuleImpl(const AudioCodingModule::Config& config);
-  ~AudioCodingModuleImpl();
+  ~AudioCodingModuleImpl() override;
 
   /////////////////////////////////////////
   //   Sender
@@ -168,10 +168,10 @@
   //
   // Configure Dtmf playout status i.e on/off playout the incoming outband Dtmf
   // tone.
-  int SetDtmfPlayoutStatus(bool enable) override { return 0; }
+  int SetDtmfPlayoutStatus(bool enable) override;
 
   // Get Dtmf playout status.
-  bool DtmfPlayoutStatus() const override { return true; }
+  bool DtmfPlayoutStatus() const override;
 
   // Estimate the Bandwidth based on the incoming stream, needed
   // for one way audio where the RTCP send the BW estimate.
@@ -314,19 +314,8 @@
 
 class AudioCodingImpl : public AudioCoding {
  public:
-  AudioCodingImpl(const Config& config) {
-    AudioCodingModule::Config config_old = config.ToOldConfig();
-    acm_old_.reset(new acm2::AudioCodingModuleImpl(config_old));
-    acm_old_->RegisterTransportCallback(config.transport);
-    acm_old_->RegisterVADCallback(config.vad_callback);
-    acm_old_->SetDtmfPlayoutStatus(config.play_dtmf);
-    if (config.initial_playout_delay_ms > 0) {
-      acm_old_->SetInitialPlayoutDelay(config.initial_playout_delay_ms);
-    }
-    playout_frequency_hz_ = config.playout_frequency_hz;
-  }
-
-  ~AudioCodingImpl() override{};
+  AudioCodingImpl(const Config& config);
+  ~AudioCodingImpl() override;
 
   bool RegisterSendCodec(AudioEncoder* send_codec) override;
 
diff --git a/webrtc/modules/audio_coding/main/acm2/nack.cc b/webrtc/modules/audio_coding/main/acm2/nack.cc
index 4324cd2..525b1ea 100644
--- a/webrtc/modules/audio_coding/main/acm2/nack.cc
+++ b/webrtc/modules/audio_coding/main/acm2/nack.cc
@@ -40,6 +40,8 @@
       samples_per_packet_(sample_rate_khz_ * kDefaultPacketSizeMs),
       max_nack_list_size_(kNackListSizeLimit) {}
 
+Nack::~Nack() = default;
+
 Nack* Nack::Create(int nack_threshold_packets) {
   return new Nack(nack_threshold_packets);
 }
diff --git a/webrtc/modules/audio_coding/main/acm2/nack.h b/webrtc/modules/audio_coding/main/acm2/nack.h
index 4224c99..1fb3e9b 100644
--- a/webrtc/modules/audio_coding/main/acm2/nack.h
+++ b/webrtc/modules/audio_coding/main/acm2/nack.h
@@ -59,7 +59,7 @@
   // Factory method.
   static Nack* Create(int nack_threshold_packets);
 
-  ~Nack() {}
+  ~Nack();
 
   // Set a maximum for the size of the NACK list. If the last received packet
   // has sequence number of N, then NACK list will not contain any element