Move implementation files out of the webrtc/ root.

Leaves the root for public headers. Also fixes the issue of requiring
root OWNERS approval for changes in the Call implementation and adding
end-to-end tests.

BUG=
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5223 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/webrtc/config.cc b/webrtc/config.cc
deleted file mode 100644
index 021bbbf..0000000
--- a/webrtc/config.cc
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
- *  Copyright (c) 2013 The WebRTC project authors. All Rights Reserved.
- *
- *  Use of this source code is governed by a BSD-style license
- *  that can be found in the LICENSE file in the root of the source
- *  tree. An additional intellectual property rights grant can be found
- *  in the file PATENTS.  All contributing project authors may
- *  be found in the AUTHORS file in the root of the source tree.
- */
-
-#include "webrtc/config.h"
-
-namespace webrtc {
-const char* RtpExtension::kTOffset = "urn:ietf:params:rtp-hdrext:toffset";
-const char* RtpExtension::kAbsSendTime =
-    "http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time";
-}  // namespace webrtc
diff --git a/webrtc/system_wrappers/source/system_wrappers_tests.gyp b/webrtc/system_wrappers/source/system_wrappers_tests.gyp
index b8587eb..5686105 100644
--- a/webrtc/system_wrappers/source/system_wrappers_tests.gyp
+++ b/webrtc/system_wrappers/source/system_wrappers_tests.gyp
@@ -18,7 +18,6 @@
         '<(webrtc_root)/test/test.gyp:test_support_main',
       ],
       'sources': [
-        '../../common_unittest.cc',
         'aligned_malloc_unittest.cc',
         'clock_unittest.cc',
         'condition_variable_unittest.cc',
diff --git a/webrtc/common_unittest.cc b/webrtc/test/common_unittest.cc
similarity index 100%
rename from webrtc/common_unittest.cc
rename to webrtc/test/common_unittest.cc
diff --git a/webrtc/call.cc b/webrtc/video/call.cc
similarity index 97%
rename from webrtc/call.cc
rename to webrtc/video/call.cc
index ff184cd..e0df6fe 100644
--- a/webrtc/call.cc
+++ b/webrtc/video/call.cc
@@ -16,6 +16,7 @@
 
 #include "webrtc/call.h"
 #include "webrtc/common.h"
+#include "webrtc/config.h"
 #include "webrtc/modules/rtp_rtcp/interface/rtp_header_parser.h"
 #include "webrtc/system_wrappers/interface/critical_section_wrapper.h"
 #include "webrtc/system_wrappers/interface/rw_lock_wrapper.h"
@@ -28,6 +29,9 @@
 #include "webrtc/video_engine/include/vie_rtp_rtcp.h"
 
 namespace webrtc {
+const char* RtpExtension::kTOffset = "urn:ietf:params:rtp-hdrext:toffset";
+const char* RtpExtension::kAbsSendTime =
+    "http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time";
 namespace internal {
 class Call : public webrtc::Call, public PacketReceiver {
  public:
@@ -80,7 +84,7 @@
 
   DISALLOW_COPY_AND_ASSIGN(Call);
 };
-}  // internal
+}  // namespace internal
 
 class TraceDispatcher : public TraceCallback {
  public:
diff --git a/webrtc/call_tests.cc b/webrtc/video/call_tests.cc
similarity index 99%
rename from webrtc/call_tests.cc
rename to webrtc/video/call_tests.cc
index ec7d4cc..67e0113 100644
--- a/webrtc/call_tests.cc
+++ b/webrtc/video/call_tests.cc
@@ -255,7 +255,7 @@
   const unsigned int kReceiverTraceFilter = kTraceDefault & (~kTraceDebug);
   class TraceObserver : public TraceCallback {
    public:
-    TraceObserver(unsigned int filter)
+    explicit TraceObserver(unsigned int filter)
         : filter_(filter), messages_left_(50), done_(EventWrapper::Create()) {}
 
     virtual void Print(TraceLevel level,
@@ -685,7 +685,7 @@
   static const int kNumCompoundRtcpPacketsToObserve = 10;
   class RtcpModeObserver : public test::RtpRtcpObserver {
    public:
-    RtcpModeObserver(newapi::RtcpMode rtcp_mode)
+    explicit RtcpModeObserver(newapi::RtcpMode rtcp_mode)
         : test::RtpRtcpObserver(kDefaultTimeoutMs),
           rtcp_mode_(rtcp_mode),
           sent_rtp_(0),
@@ -865,7 +865,7 @@
 
 class SyncRtcpObserver : public test::RtpRtcpObserver {
  public:
-  SyncRtcpObserver(int delay_ms)
+  explicit SyncRtcpObserver(int delay_ms)
       : test::RtpRtcpObserver(kLongTimeoutMs, delay_ms),
         critical_section_(CriticalSectionWrapper::CreateCriticalSection()) {}
 
diff --git a/webrtc/loopback.cc b/webrtc/video/loopback.cc
similarity index 98%
rename from webrtc/loopback.cc
rename to webrtc/video/loopback.cc
index dc5afce..e9b0893 100644
--- a/webrtc/loopback.cc
+++ b/webrtc/video/loopback.cc
@@ -99,4 +99,4 @@
 
   transport.StopSending();
 }
-}  // webrtc
+}  // namespace webrtc
diff --git a/webrtc/video/webrtc_video.gypi b/webrtc/video/webrtc_video.gypi
index 82e17f4..5f7784d 100644
--- a/webrtc/video/webrtc_video.gypi
+++ b/webrtc/video/webrtc_video.gypi
@@ -11,6 +11,7 @@
       '<(webrtc_root)/video_engine/video_engine.gyp:video_engine_core',
     ],
     'webrtc_video_sources': [
+      'video/call.cc',
       'video/encoded_frame_callback_adapter.cc',
       'video/encoded_frame_callback_adapter.h',
       'video/transport_adapter.cc',
diff --git a/webrtc/webrtc.gyp b/webrtc/webrtc.gyp
index 03a7b69..7da4433 100644
--- a/webrtc/webrtc.gyp
+++ b/webrtc/webrtc.gyp
@@ -59,9 +59,7 @@
       'target_name': 'webrtc',
       'type': 'static_library',
       'sources': [
-        'call.cc',
         'call.h',
-        'config.cc',
         'config.h',
         'experiments.h',
         'frame_callback.h',
diff --git a/webrtc/webrtc_tests.gypi b/webrtc/webrtc_tests.gypi
index 6ea74f4..6827fd5 100644
--- a/webrtc/webrtc_tests.gypi
+++ b/webrtc/webrtc_tests.gypi
@@ -19,7 +19,7 @@
       'target_name': 'video_loopback',
       'type': 'executable',
       'sources': [
-        'loopback.cc',
+        'video/loopback.cc',
         'test/test_main.cc',
       ],
       'dependencies': [
@@ -32,12 +32,13 @@
       'target_name': 'video_engine_tests',
       'type': '<(gtest_target_type)',
       'sources': [
-        'call_tests.cc',
+        'video/call_tests.cc',
         'video/full_stack.cc',
         'video/rampup_tests.cc',
         'video/video_send_stream_tests.cc',
         'voice_engine/test/auto_test/resource_manager.cc',
         'voice_engine/test/auto_test/resource_manager.h',
+        'test/common_unittest.cc',
         'test/test_main.cc',
       ],
       'dependencies': [