Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(21)

Unified Diff: media/capture/video/fake_video_capture_device_unittest.cc

Issue 2613793007: Revert of [Mojo Video Capture] Simplify media::VideoCaptureDevice::Client:Buffer to a struct (Closed)
Patch Set: Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: media/capture/video/fake_video_capture_device_unittest.cc
diff --git a/media/capture/video/fake_video_capture_device_unittest.cc b/media/capture/video/fake_video_capture_device_unittest.cc
index 27149232e783954c69cd199bc9f8bf322e8a2a08..21563c0fd9301cbdab0289b45bd938a5fa792ba7 100644
--- a/media/capture/video/fake_video_capture_device_unittest.cc
+++ b/media/capture/video/fake_video_capture_device_unittest.cc
@@ -34,60 +34,34 @@
namespace {
-class StubBufferHandle : public VideoCaptureBufferHandle {
+// This class is a Client::Buffer that allocates and frees the requested |size|.
+class MockBuffer : public VideoCaptureDevice::Client::Buffer {
public:
- StubBufferHandle(size_t mapped_size, uint8_t* data)
- : mapped_size_(mapped_size), data_(data) {}
-
+ MockBuffer(int buffer_id, int frame_feedback_id, size_t mapped_size)
+ : id_(buffer_id),
+ frame_feedback_id_(frame_feedback_id),
+ mapped_size_(mapped_size),
+ data_(new uint8_t[mapped_size]) {}
+ ~MockBuffer() override { delete[] data_; }
+
+ int id() const override { return id_; }
+ int frame_feedback_id() const override { return frame_feedback_id_; }
+ gfx::Size dimensions() const override { return gfx::Size(); }
size_t mapped_size() const override { return mapped_size_; }
- uint8_t* data() override { return data_; }
- const uint8_t* data() const override { return data_; }
+ void* data(int plane) override { return data_; }
+#if defined(OS_POSIX) && !(defined(OS_MACOSX) && !defined(OS_IOS))
+ base::FileDescriptor AsPlatformFile() override {
+ return base::FileDescriptor();
+ }
+#endif
+ bool IsBackedByVideoFrame() const override { return false; };
+ scoped_refptr<VideoFrame> GetVideoFrame() override { return nullptr; }
private:
+ const int id_;
+ const int frame_feedback_id_;
const size_t mapped_size_;
uint8_t* const data_;
-};
-
-class StubBufferHandleProvider
- : public VideoCaptureDevice::Client::Buffer::HandleProvider {
- public:
- StubBufferHandleProvider(size_t mapped_size, uint8_t* data)
- : mapped_size_(mapped_size), data_(data) {}
-
- ~StubBufferHandleProvider() override {}
-
- mojo::ScopedSharedBufferHandle GetHandleForInterProcessTransit() override {
- return mojo::ScopedSharedBufferHandle();
- }
-
- std::unique_ptr<VideoCaptureBufferHandle> GetHandleForInProcessAccess()
- override {
- return base::MakeUnique<StubBufferHandle>(mapped_size_, data_);
- }
-
- private:
- const size_t mapped_size_;
- uint8_t* const data_;
-};
-
-class StubReadWritePermission
- : public VideoCaptureDevice::Client::Buffer::ScopedAccessPermission {
- public:
- StubReadWritePermission(uint8_t* data) : data_(data) {}
- ~StubReadWritePermission() override { delete[] data_; }
-
- private:
- uint8_t* const data_;
-};
-
-VideoCaptureDevice::Client::Buffer CreateStubBuffer(int buffer_id,
- size_t mapped_size) {
- auto buffer = new uint8_t[mapped_size];
- const int arbitrary_frame_feedback_id = 0;
- return VideoCaptureDevice::Client::Buffer(
- buffer_id, arbitrary_frame_feedback_id,
- base::MakeUnique<StubBufferHandleProvider>(mapped_size, buffer),
- base::MakeUnique<StubReadWritePermission>(buffer));
};
class MockClient : public VideoCaptureDevice::Client {
@@ -110,24 +84,25 @@
frame_cb_.Run(format);
}
// Virtual methods for capturing using Client's Buffers.
- Buffer ReserveOutputBuffer(const gfx::Size& dimensions,
- media::VideoPixelFormat format,
- media::VideoPixelStorage storage,
- int frame_feedback_id) override {
+ std::unique_ptr<Buffer> ReserveOutputBuffer(const gfx::Size& dimensions,
+ media::VideoPixelFormat format,
+ media::VideoPixelStorage storage,
+ int frame_feedback_id) override {
EXPECT_TRUE((format == media::PIXEL_FORMAT_ARGB &&
storage == media::PIXEL_STORAGE_CPU));
EXPECT_GT(dimensions.GetArea(), 0);
const VideoCaptureFormat frame_format(dimensions, 0.0, format);
- return CreateStubBuffer(0, frame_format.ImageAllocationSize());
- }
- void OnIncomingCapturedBuffer(Buffer buffer,
+ return base::MakeUnique<MockBuffer>(0, frame_feedback_id,
+ frame_format.ImageAllocationSize());
+ }
+ void OnIncomingCapturedBuffer(std::unique_ptr<Buffer> buffer,
const VideoCaptureFormat& format,
base::TimeTicks reference_time,
base::TimeDelta timestamp) override {
frame_cb_.Run(format);
}
void OnIncomingCapturedBufferExt(
- Buffer buffer,
+ std::unique_ptr<Buffer> buffer,
const VideoCaptureFormat& format,
base::TimeTicks reference_time,
base::TimeDelta timestamp,
@@ -135,11 +110,12 @@
const VideoFrameMetadata& additional_metadata) override {
frame_cb_.Run(format);
}
- Buffer ResurrectLastOutputBuffer(const gfx::Size& dimensions,
- media::VideoPixelFormat format,
- media::VideoPixelStorage storage,
- int frame_feedback_id) override {
- return Buffer();
+ std::unique_ptr<Buffer> ResurrectLastOutputBuffer(
+ const gfx::Size& dimensions,
+ media::VideoPixelFormat format,
+ media::VideoPixelStorage storage,
+ int frame_feedback_id) override {
+ return std::unique_ptr<Buffer>();
}
double GetBufferPoolUtilization() const override { return 0.0; }
« no previous file with comments | « media/capture/video/fake_video_capture_device.cc ('k') | media/capture/video/linux/v4l2_capture_delegate_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698