Updating trunk VERSION from 2139.0 to 2140.0
[chromium-blink-merge.git] / content / gpu / in_process_gpu_thread.cc
blob8a7818d6e195fd229b4d908ccdcf614f8aba55f5
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "content/gpu/in_process_gpu_thread.h"
7 #include "content/gpu/gpu_child_thread.h"
8 #include "content/gpu/gpu_process.h"
10 namespace content {
12 InProcessGpuThread::InProcessGpuThread(const std::string& channel_id)
13 : base::Thread("Chrome_InProcGpuThread"),
14 channel_id_(channel_id),
15 gpu_process_(NULL) {
18 InProcessGpuThread::~InProcessGpuThread() {
19 Stop();
22 void InProcessGpuThread::Init() {
23 gpu_process_ = new GpuProcess();
24 // The process object takes ownership of the thread object, so do not
25 // save and delete the pointer.
26 gpu_process_->set_main_thread(new GpuChildThread(channel_id_));
29 void InProcessGpuThread::CleanUp() {
30 SetThreadWasQuitProperly(true);
31 delete gpu_process_;
34 base::Thread* CreateInProcessGpuThread(const std::string& channel_id) {
35 return new InProcessGpuThread(channel_id);
38 } // namespace content