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

Unified Diff: content/renderer/media/video_capture_impl_manager.cc

Issue 7071002: Revert "Add VideoCaptureImpl and VideoCaptureImplManager" (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 7 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: content/renderer/media/video_capture_impl_manager.cc
diff --git a/content/renderer/media/video_capture_impl_manager.cc b/content/renderer/media/video_capture_impl_manager.cc
deleted file mode 100644
index b8611a6b8039066801e896d72c31490ef30195db..0000000000000000000000000000000000000000
--- a/content/renderer/media/video_capture_impl_manager.cc
+++ /dev/null
@@ -1,118 +0,0 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "content/renderer/media/video_capture_impl_manager.h"
-
-#include "base/memory/singleton.h"
-#include "content/common/child_process.h"
-#include "content/common/child_thread.h"
-#include "content/common/video_capture_messages.h"
-#include "content/common/view_messages.h"
-#include "media/base/message_loop_factory_impl.h"
-
-namespace {
-
-// VideoCaptureMessageFilterCreator is to be used as a singleton so we can get
-// access to a shared VideoCaptureMessageFilter.
-// Example usage:
-// VideoCaptureMessageFilter* filter =
-// VideoCaptureMessageFilterCreator::SharedFilter();
-
-class VideoCaptureMessageFilterCreator {
- public:
- VideoCaptureMessageFilterCreator() {
- int routing_id;
- ChildThread::current()->Send(
- new ViewHostMsg_GenerateRoutingID(&routing_id));
- filter_ = new VideoCaptureMessageFilter(routing_id);
- filter_->AddFilter();
- }
-
- static VideoCaptureMessageFilter* SharedFilter() {
- return GetInstance()->filter_.get();
- }
-
- static VideoCaptureMessageFilterCreator* GetInstance() {
- return Singleton<VideoCaptureMessageFilterCreator>::get();
- }
-
- private:
- scoped_refptr<VideoCaptureMessageFilter> filter_;
-};
-
-} // namespace
-
-VideoCaptureImplManager::VideoCaptureImplManager() {
- ml_factory_.reset(new media::MessageLoopFactoryImpl());
- ml_proxy_ = ml_factory_->GetMessageLoopProxy("VC manager");
-}
-
-VideoCaptureImplManager::~VideoCaptureImplManager() {}
-
-// static
-media::VideoCapture* VideoCaptureImplManager::AddDevice(
- media::VideoCaptureSessionId id,
- media::VideoCapture::EventHandler* handler) {
- DCHECK(handler);
- VideoCaptureImplManager* manager = GetInstance();
-
- base::AutoLock auto_lock(manager->lock_);
- Devices::iterator it = manager->devices_.find(id);
- if (it == manager->devices_.end()) {
- VideoCaptureImpl* vc =
- new VideoCaptureImpl(id, manager->ml_proxy_,
- VideoCaptureMessageFilterCreator::SharedFilter());
- manager->devices_[id] = Device(vc, handler);
- vc->Init();
- return vc;
- }
-
- manager->devices_[id].clients.push_front(handler);
- return it->second.vc;
-}
-
-// static
-void VideoCaptureImplManager::RemoveDevice(
- media::VideoCaptureSessionId id,
- media::VideoCapture::EventHandler* handler) {
- DCHECK(handler);
- VideoCaptureImplManager* manager = GetInstance();
-
- base::AutoLock auto_lock(manager->lock_);
- Devices::iterator it = manager->devices_.find(id);
- if (it == manager->devices_.end())
- return;
-
- size_t size = it->second.clients.size();
- it->second.clients.remove(handler);
-
- if (size == it->second.clients.size() || size > 1)
- return;
-
- manager->devices_[id].vc->DeInit(NewRunnableMethod(manager,
- &VideoCaptureImplManager::FreeDevice, manager->devices_[id].vc));
- manager->devices_.erase(id);
- return;
-}
-
-// static
-VideoCaptureImplManager* VideoCaptureImplManager::GetInstance() {
- return Singleton<VideoCaptureImplManager>::get();
-}
-
-void VideoCaptureImplManager::FreeDevice(VideoCaptureImpl* vc) {
- delete vc;
-}
-
-VideoCaptureImplManager::Device::Device() : vc(NULL) {}
-
-VideoCaptureImplManager::Device::Device(
- VideoCaptureImpl* device,
- media::VideoCapture::EventHandler* handler)
- : vc(device) {
- clients.push_front(handler);
-}
-
-VideoCaptureImplManager::Device::~Device() {}
-
« no previous file with comments | « content/renderer/media/video_capture_impl_manager.h ('k') | content/renderer/media/video_capture_impl_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698