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. 4 5 #include "content/gpu/in_process_gpu_thread.h" 6 7 #include "content/gpu/gpu_child_thread.h" 8 #include "content/gpu/gpu_process.h" 9 10 namespace content { 11 InProcessGpuThread(const std::string & channel_id)12InProcessGpuThread::InProcessGpuThread(const std::string& channel_id) 13 : base::Thread("Chrome_InProcGpuThread"), 14 channel_id_(channel_id), 15 gpu_process_(NULL) { 16 } 17 ~InProcessGpuThread()18InProcessGpuThread::~InProcessGpuThread() { 19 Stop(); 20 } 21 Init()22void 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_)); 27 } 28 CleanUp()29void InProcessGpuThread::CleanUp() { 30 delete gpu_process_; 31 } 32 CreateInProcessGpuThread(const std::string & channel_id)33base::Thread* CreateInProcessGpuThread(const std::string& channel_id) { 34 return new InProcessGpuThread(channel_id); 35 } 36 37 } // namespace content 38