Remove default impl of Attach/DetachAecDump.

The default implementations of AudioProcessing::{AttachAecDump,
DetachAecDump} are removed and audio_processing.cc is decoupled from
aec_dump.h. After this CL, the two methods are pure virtual. The
default implementations were added because doing otherwise would break
internal projects.

Bug: webrtc:7404
Change-Id: If94f60aeefe4ad1eefed3744f857692cc645bdf4
Reviewed-on: https://chromium-review.googlesource.com/528132
Commit-Queue: Alex Loiko <aleloi@google.com>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#18517}
diff --git a/webrtc/modules/audio_processing/include/audio_processing.h b/webrtc/modules/audio_processing/include/audio_processing.h
index 33fdff2..6a5a81d 100644
--- a/webrtc/modules/audio_processing/include/audio_processing.h
+++ b/webrtc/modules/audio_processing/include/audio_processing.h
@@ -463,18 +463,12 @@
   // with a new one. This causes the d-tor of the earlier AecDump to
   // be called. The d-tor call may block until all pending logging
   // tasks are completed.
-  //
-  // TODO(aleloi): make pure virtual when internal projects have
-  // updated. See https://bugs.webrtc.org/7404
-  virtual void AttachAecDump(std::unique_ptr<AecDump> aec_dump);
+  virtual void AttachAecDump(std::unique_ptr<AecDump> aec_dump) = 0;
 
   // If no AecDump is attached, this has no effect. If an AecDump is
   // attached, it's destructor is called. The d-tor may block until
   // all pending logging tasks are completed.
-  //
-  // TODO(aleloi): make pure virtual when internal projects have
-  // updated. See https://bugs.webrtc.org/7404
-  virtual void DetachAecDump();
+  virtual void DetachAecDump() = 0;
 
   // Starts recording debugging information to a file specified by |filename|,
   // a NULL-terminated string. If there is an ongoing recording, the old file