Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / third_party / webrtc / common_video / interface / i420_video_frame.h
index 5f7a572..ba23c87 100644 (file)
 #ifndef COMMON_VIDEO_INTERFACE_I420_VIDEO_FRAME_H
 #define COMMON_VIDEO_INTERFACE_I420_VIDEO_FRAME_H
 
-// I420VideoFrame class
-//
-// Storing and handling of YUV (I420) video frames.
-
-#include <assert.h>
-
-#include "webrtc/common_video/plane.h"
-#include "webrtc/system_wrappers/interface/scoped_refptr.h"
-#include "webrtc/typedefs.h"
-
-/*
- *  I420VideoFrame includes support for a reference counted impl.
- */
-
-namespace webrtc {
-
-enum PlaneType {
-  kYPlane = 0,
-  kUPlane = 1,
-  kVPlane = 2,
-  kNumOfPlanes = 3
-};
-
-class I420VideoFrame {
- public:
-  I420VideoFrame();
-  virtual ~I420VideoFrame();
-  // Infrastructure for refCount implementation.
-  // Implements dummy functions for reference counting so that non reference
-  // counted instantiation can be done. These functions should not be called
-  // when creating the frame with new I420VideoFrame().
-  // Note: do not pass a I420VideoFrame created with new I420VideoFrame() or
-  // equivalent to a scoped_refptr or memory leak will occur.
-  virtual int32_t AddRef() {assert(false); return -1;}
-  virtual int32_t Release() {assert(false); return -1;}
-
-  // CreateEmptyFrame: Sets frame dimensions and allocates buffers based
-  // on set dimensions - height and plane stride.
-  // If required size is bigger than the allocated one, new buffers of adequate
-  // size will be allocated.
-  // Return value: 0 on success, -1 on error.
-  virtual int CreateEmptyFrame(int width, int height,
-                               int stride_y, int stride_u, int stride_v);
-
-  // CreateFrame: Sets the frame's members and buffers. If required size is
-  // bigger than allocated one, new buffers of adequate size will be allocated.
-  // Return value: 0 on success, -1 on error.
-  virtual int CreateFrame(int size_y, const uint8_t* buffer_y,
-                          int size_u, const uint8_t* buffer_u,
-                          int size_v, const uint8_t* buffer_v,
-                          int width, int height,
-                          int stride_y, int stride_u, int stride_v);
-
-  // Copy frame: If required size is bigger than allocated one, new buffers of
-  // adequate size will be allocated.
-  // Return value: 0 on success, -1 on error.
-  virtual int CopyFrame(const I420VideoFrame& videoFrame);
-
-  // Make a copy of |this|. The caller owns the returned frame.
-  // Return value: a new frame on success, NULL on error.
-  virtual I420VideoFrame* CloneFrame() const;
-
-  // Swap Frame.
-  virtual void SwapFrame(I420VideoFrame* videoFrame);
-
-  // Get pointer to buffer per plane.
-  virtual uint8_t* buffer(PlaneType type);
-  // Overloading with const.
-  virtual const uint8_t* buffer(PlaneType type) const;
-
-  // Get allocated size per plane.
-  virtual int allocated_size(PlaneType type) const;
-
-  // Get allocated stride per plane.
-  virtual int stride(PlaneType type) const;
-
-  // Set frame width.
-  virtual int set_width(int width);
-
-  // Set frame height.
-  virtual int set_height(int height);
-
-  // Get frame width.
-  virtual int width() const {return width_;}
-
-  // Get frame height.
-  virtual int height() const {return height_;}
-
-  // Set frame timestamp (90kHz).
-  virtual void set_timestamp(uint32_t timestamp) {timestamp_ = timestamp;}
-
-  // Get frame timestamp (90kHz).
-  virtual uint32_t timestamp() const {return timestamp_;}
-
-  // Set capture ntp time in miliseconds.
-  virtual void set_ntp_time_ms(int64_t ntp_time_ms) {
-    ntp_time_ms_ = ntp_time_ms;
-  }
-
-  // Get capture ntp time in miliseconds.
-  virtual int64_t ntp_time_ms() const {return ntp_time_ms_;}
-
-  // Set render time in miliseconds.
-  virtual void set_render_time_ms(int64_t render_time_ms) {render_time_ms_ =
-                                                   render_time_ms;}
-
-  // Get render time in miliseconds.
-  virtual int64_t render_time_ms() const {return render_time_ms_;}
-
-  // Return true if underlying plane buffers are of zero size, false if not.
-  virtual bool IsZeroSize() const;
-
-  // Reset underlying plane buffers sizes to 0. This function doesn't
-  // clear memory.
-  virtual void ResetSize();
-
-  // Return the handle of the underlying video frame. This is used when the
-  // frame is backed by a texture. The object should be destroyed when it is no
-  // longer in use, so the underlying resource can be freed.
-  virtual void* native_handle() const;
-
- protected:
-  // Verifies legality of parameters.
-  // Return value: 0 on success, -1 on error.
-  virtual int CheckDimensions(int width, int height,
-                              int stride_y, int stride_u, int stride_v);
-
- private:
-  // Get the pointer to a specific plane.
-  const Plane* GetPlane(PlaneType type) const;
-  // Overloading with non-const.
-  Plane* GetPlane(PlaneType type);
-
-  Plane y_plane_;
-  Plane u_plane_;
-  Plane v_plane_;
-  int width_;
-  int height_;
-  uint32_t timestamp_;
-  int64_t ntp_time_ms_;
-  int64_t render_time_ms_;
-};  // I420VideoFrame
-
-}  // namespace webrtc
+// TODO(pbos): Remove this file and include webrtc/video_frame.h instead.
+#include "webrtc/video_frame.h"
 
 #endif  // COMMON_VIDEO_INTERFACE_I420_VIDEO_FRAME_H