Break video_engine/new_include/common.h into smaller parts.

BUG=
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4128 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/webrtc/video_engine/internal/video_call.cc b/webrtc/video_engine/internal/video_call.cc
index 3e4d7d7..4f864b4 100644
--- a/webrtc/video_engine/internal/video_call.cc
+++ b/webrtc/video_engine/internal/video_call.cc
@@ -22,7 +22,6 @@
 #include "webrtc/video_engine/include/vie_rtp_rtcp.h"
 #include "webrtc/video_engine/internal/video_receive_stream.h"
 #include "webrtc/video_engine/internal/video_send_stream.h"
-#include "webrtc/video_engine/new_include/common.h"
 #include "webrtc/video_engine/new_include/video_engine.h"
 
 namespace webrtc {
diff --git a/webrtc/video_engine/internal/video_call.h b/webrtc/video_engine/internal/video_call.h
index d8f3ec7..e9b0af2 100644
--- a/webrtc/video_engine/internal/video_call.h
+++ b/webrtc/video_engine/internal/video_call.h
@@ -17,7 +17,6 @@
 #include "webrtc/modules/rtp_rtcp/source/rtp_utility.h"
 #include "webrtc/video_engine/internal/video_receive_stream.h"
 #include "webrtc/video_engine/internal/video_send_stream.h"
-#include "webrtc/video_engine/new_include/common.h"
 #include "webrtc/video_engine/new_include/video_engine.h"
 
 namespace webrtc {
diff --git a/webrtc/video_engine/new_include/common.h b/webrtc/video_engine/new_include/config.h
similarity index 64%
rename from webrtc/video_engine/new_include/common.h
rename to webrtc/video_engine/new_include/config.h
index ca35ece..d28243d 100644
--- a/webrtc/video_engine/new_include/common.h
+++ b/webrtc/video_engine/new_include/config.h
@@ -8,60 +8,14 @@
  *  be found in the AUTHORS file in the root of the source tree.
  */
 
-#ifndef WEBRTC_VIDEO_ENGINE_NEW_INCLUDE_COMMON_H_
-#define WEBRTC_VIDEO_ENGINE_NEW_INCLUDE_COMMON_H_
+#ifndef WEBRTC_VIDEO_ENGINE_NEW_INCLUDE_CONFIG_H_
+#define WEBRTC_VIDEO_ENGINE_NEW_INCLUDE_CONFIG_H_
 
 #include <string>
 
-#include "webrtc/common_types.h"
-
 namespace webrtc {
-
-class I420VideoFrame;
-
 namespace newapi {
 
-struct EncodedFrame;
-
-class I420FrameCallback {
- public:
-  // This function is called with a I420 frame allowing the user to modify the
-  // frame content.
-  virtual void FrameCallback(I420VideoFrame* video_frame) = 0;
-
- protected:
-  virtual ~I420FrameCallback() {}
-};
-
-class EncodedFrameObserver {
- public:
-  virtual void EncodedFrameCallback(const EncodedFrame& encoded_frame) = 0;
-
- protected:
-  virtual ~EncodedFrameObserver() {}
-};
-
-class VideoRenderer {
- public:
-  // This function should return as soon as possible and not block until it's
-  // time to render the frame.
-  // TODO(mflodman) Remove time_to_render_ms when I420VideoFrame contains NTP.
-  virtual void RenderFrame(const I420VideoFrame& video_frame,
-                           int time_to_render_ms) = 0;
-
- protected:
-  virtual ~VideoRenderer() {}
-};
-
-class Transport {
- public:
-  virtual bool SendRTP(const void* packet, size_t length) = 0;
-  virtual bool SendRTCP(const void* packet, size_t length) = 0;
-
- protected:
-  virtual ~Transport() {}
-};
-
 struct RtpStatistics {
   RtpStatistics()
       : ssrc(0),
@@ -123,8 +77,7 @@
   std::string name;
   int id;
 };
-
 }  // namespace newapi
 }  // namespace webrtc
 
-#endif  // WEBRTC_VIDEO_ENGINE_NEW_INCLUDE_COMMON_H_
+#endif  // WEBRTC_VIDEO_ENGINE_NEW_INCLUDE_CONFIG_H_
diff --git a/webrtc/video_engine/new_include/frame_callback.h b/webrtc/video_engine/new_include/frame_callback.h
new file mode 100644
index 0000000..e8006fc
--- /dev/null
+++ b/webrtc/video_engine/new_include/frame_callback.h
@@ -0,0 +1,42 @@
+/*
+ *  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.
+ */
+
+#ifndef WEBRTC_VIDEO_ENGINE_NEW_INCLUDE_FRAME_CALLBACK_H_
+#define WEBRTC_VIDEO_ENGINE_NEW_INCLUDE_FRAME_CALLBACK_H_
+
+namespace webrtc {
+
+class I420VideoFrame;
+
+namespace newapi {
+
+struct EncodedFrame;
+
+class I420FrameCallback {
+ public:
+  // This function is called with a I420 frame allowing the user to modify the
+  // frame content.
+  virtual void FrameCallback(I420VideoFrame* video_frame) = 0;
+
+ protected:
+  virtual ~I420FrameCallback() {}
+};
+
+class EncodedFrameObserver {
+ public:
+  virtual void EncodedFrameCallback(const EncodedFrame& encoded_frame) = 0;
+
+ protected:
+  virtual ~EncodedFrameObserver() {}
+};
+}  // namespace newapi
+}  // namespace webrtc
+
+#endif  // WEBRTC_VIDEO_ENGINE_NEW_INCLUDE_FRAME_CALLBACK_H_
diff --git a/webrtc/video_engine/new_include/transport.h b/webrtc/video_engine/new_include/transport.h
new file mode 100644
index 0000000..6a2577d
--- /dev/null
+++ b/webrtc/video_engine/new_include/transport.h
@@ -0,0 +1,30 @@
+/*
+ *  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.
+ */
+
+#ifndef WEBRTC_VIDEO_ENGINE_NEW_INCLUDE_TRANSPORT_H_
+#define WEBRTC_VIDEO_ENGINE_NEW_INCLUDE_TRANSPORT_H_
+
+#include <stddef.h>
+
+namespace webrtc {
+namespace newapi {
+
+class Transport {
+ public:
+  virtual bool SendRTP(const void* packet, size_t length) = 0;
+  virtual bool SendRTCP(const void* packet, size_t length) = 0;
+
+ protected:
+  virtual ~Transport() {}
+};
+}  // namespace newapi
+}  // namespace webrtc
+
+#endif  // WEBRTC_VIDEO_ENGINE_NEW_INCLUDE_TRANSPORT_H_
diff --git a/webrtc/video_engine/new_include/video_engine.h b/webrtc/video_engine/new_include/video_engine.h
index 60a0a89..e4b9726 100644
--- a/webrtc/video_engine/new_include/video_engine.h
+++ b/webrtc/video_engine/new_include/video_engine.h
@@ -15,7 +15,6 @@
 #include <vector>
 
 #include "webrtc/common_types.h"
-#include "webrtc/video_engine/new_include/common.h"
 #include "webrtc/video_engine/new_include/video_receive_stream.h"
 #include "webrtc/video_engine/new_include/video_send_stream.h"
 
diff --git a/webrtc/video_engine/new_include/video_receive_stream.h b/webrtc/video_engine/new_include/video_receive_stream.h
index a23b6b6..c4b324d 100644
--- a/webrtc/video_engine/new_include/video_receive_stream.h
+++ b/webrtc/video_engine/new_include/video_receive_stream.h
@@ -15,7 +15,10 @@
 #include <vector>
 
 #include "webrtc/common_types.h"
-#include "webrtc/video_engine/new_include/common.h"
+#include "webrtc/video_engine/new_include/config.h"
+#include "webrtc/video_engine/new_include/frame_callback.h"
+#include "webrtc/video_engine/new_include/transport.h"
+#include "webrtc/video_engine/new_include/video_renderer.h"
 
 namespace webrtc {
 
diff --git a/webrtc/video_engine/new_include/video_renderer.h b/webrtc/video_engine/new_include/video_renderer.h
new file mode 100644
index 0000000..4bb14be
--- /dev/null
+++ b/webrtc/video_engine/new_include/video_renderer.h
@@ -0,0 +1,34 @@
+/*
+ *  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.
+ */
+
+#ifndef WEBRTC_VIDEO_ENGINE_NEW_INCLUDE_VIDEO_RENDERER_H_
+#define WEBRTC_VIDEO_ENGINE_NEW_INCLUDE_VIDEO_RENDERER_H_
+
+namespace webrtc {
+
+class I420VideoFrame;
+
+namespace newapi {
+
+class VideoRenderer {
+ public:
+  // This function should return as soon as possible and not block until it's
+  // time to render the frame.
+  // TODO(mflodman) Remove time_to_render_ms when I420VideoFrame contains NTP.
+  virtual void RenderFrame(const I420VideoFrame& video_frame,
+                           int time_to_render_ms) = 0;
+
+ protected:
+  virtual ~VideoRenderer() {}
+};
+}  // namespace newapi
+}  // namespace webrtc
+
+#endif  // WEBRTC_VIDEO_ENGINE_NEW_INCLUDE_VIDEO_RENDERER_H_
diff --git a/webrtc/video_engine/new_include/video_send_stream.h b/webrtc/video_engine/new_include/video_send_stream.h
index 7899e9c..c57a5df 100644
--- a/webrtc/video_engine/new_include/video_send_stream.h
+++ b/webrtc/video_engine/new_include/video_send_stream.h
@@ -15,7 +15,9 @@
 #include <vector>
 
 #include "webrtc/common_types.h"
-#include "webrtc/video_engine/new_include/common.h"
+#include "webrtc/video_engine/new_include/config.h"
+#include "webrtc/video_engine/new_include/frame_callback.h"
+#include "webrtc/video_engine/new_include/video_renderer.h"
 
 namespace webrtc {
 
diff --git a/webrtc/video_engine/test/common/direct_transport.h b/webrtc/video_engine/test/common/direct_transport.h
index 69de83e..5520153 100644
--- a/webrtc/video_engine/test/common/direct_transport.h
+++ b/webrtc/video_engine/test/common/direct_transport.h
@@ -10,7 +10,7 @@
 #ifndef WEBRTC_VIDEO_ENGINE_TEST_COMMON_DIRECT_TRANSPORT_H_
 #define WEBRTC_VIDEO_ENGINE_TEST_COMMON_DIRECT_TRANSPORT_H_
 
-#include "webrtc/video_engine/new_include/common.h"
+#include "webrtc/video_engine/new_include/transport.h"
 
 namespace webrtc {
 namespace test {
diff --git a/webrtc/video_engine/test/common/gl/gl_renderer.h b/webrtc/video_engine/test/common/gl/gl_renderer.h
index e56ac74..cd8ea44 100644
--- a/webrtc/video_engine/test/common/gl/gl_renderer.h
+++ b/webrtc/video_engine/test/common/gl/gl_renderer.h
@@ -18,6 +18,8 @@
 #endif
 
 #include "webrtc/video_engine/test/common/video_renderer.h"
+#include "webrtc/typedefs.h"
+
 
 namespace webrtc {
 namespace test {
diff --git a/webrtc/video_engine/test/common/linux/glx_renderer.h b/webrtc/video_engine/test/common/linux/glx_renderer.h
index 0eae9b5..eb12654 100644
--- a/webrtc/video_engine/test/common/linux/glx_renderer.h
+++ b/webrtc/video_engine/test/common/linux/glx_renderer.h
@@ -15,6 +15,7 @@
 #include <X11/Xlib.h>
 
 #include "webrtc/video_engine/test/common/gl/gl_renderer.h"
+#include "webrtc/typedefs.h"
 
 namespace webrtc {
 namespace test {
diff --git a/webrtc/video_engine/test/common/linux/xv_renderer.h b/webrtc/video_engine/test/common/linux/xv_renderer.h
index df6b050..6c485c2 100644
--- a/webrtc/video_engine/test/common/linux/xv_renderer.h
+++ b/webrtc/video_engine/test/common/linux/xv_renderer.h
@@ -15,8 +15,8 @@
 #include <X11/extensions/XShm.h>
 #include <X11/extensions/Xvlib.h>
 
-#include "webrtc/video_engine/new_include/common.h"
 #include "webrtc/video_engine/test/common/video_renderer.h"
+#include "webrtc/typedefs.h"
 
 namespace webrtc {
 namespace test {
diff --git a/webrtc/video_engine/test/common/video_renderer.cc b/webrtc/video_engine/test/common/video_renderer.cc
index 1abb35b..62ede39 100644
--- a/webrtc/video_engine/test/common/video_renderer.cc
+++ b/webrtc/video_engine/test/common/video_renderer.cc
@@ -13,6 +13,8 @@
 // TODO(pbos): Windows renderer
 // TODO(pbos): Android renderer
 
+#include "webrtc/typedefs.h"
+
 namespace webrtc {
 namespace test {
 
diff --git a/webrtc/video_engine/test/common/video_renderer.h b/webrtc/video_engine/test/common/video_renderer.h
index ef4168f..2d44103 100644
--- a/webrtc/video_engine/test/common/video_renderer.h
+++ b/webrtc/video_engine/test/common/video_renderer.h
@@ -10,7 +10,9 @@
 #ifndef WEBRTC_VIDEO_ENGINE_TEST_COMMON_VIDEO_RENDERER_H_
 #define WEBRTC_VIDEO_ENGINE_TEST_COMMON_VIDEO_RENDERER_H_
 
-#include "webrtc/video_engine/new_include/common.h"
+#include <stddef.h>
+
+#include "webrtc/video_engine/new_include/video_renderer.h"
 
 namespace webrtc {
 namespace test {
diff --git a/webrtc/video_engine/video_engine_core.gypi b/webrtc/video_engine/video_engine_core.gypi
index 3f19a46..d653300 100644
--- a/webrtc/video_engine/video_engine_core.gypi
+++ b/webrtc/video_engine/video_engine_core.gypi
@@ -120,17 +120,20 @@
         'vie_sync_module.cc',
 
         # New VideoEngine API
-        'new_include/common.h',
-        'new_include/video_engine.h',
-        'new_include/video_receive_stream.h',
-        'new_include/video_send_stream.h',
-        'internal/video_engine.cc',
         'internal/video_call.cc',
         'internal/video_call.h',
+        'internal/video_engine.cc',
         'internal/video_receive_stream.cc',
         'internal/video_receive_stream.h',
         'internal/video_send_stream.cc',
         'internal/video_send_stream.h',
+        'new_include/config.h',
+        'new_include/frame_callback.h',
+        'new_include/transport.h',
+        'new_include/video_engine.h',
+        'new_include/video_receive_stream.h',
+        'new_include/video_renderer.h',
+        'new_include/video_send_stream.h',
       ], # source
       # TODO(jschuh): Bug 1348: fix size_t to int truncations.
       'msvs_disabled_warnings': [ 4267, ],