1// Copyright (c) 2012 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 "remoting/client/client_context.h" 6 7namespace remoting { 8 9ClientContext::ClientContext(base::SingleThreadTaskRunner* main_task_runner) 10 : main_task_runner_(main_task_runner), 11 decode_thread_("ChromotingClientDecodeThread"), 12 audio_decode_thread_("ChromotingClientAudioDecodeThread") { 13} 14 15ClientContext::~ClientContext() { 16} 17 18void ClientContext::Start() { 19 // Start all the threads. 20 decode_thread_.Start(); 21 audio_decode_thread_.Start(); 22} 23 24void ClientContext::Stop() { 25 // Stop all the threads. 26 decode_thread_.Stop(); 27 audio_decode_thread_.Stop(); 28} 29 30base::SingleThreadTaskRunner* ClientContext::main_task_runner() { 31 return main_task_runner_.get(); 32} 33 34base::SingleThreadTaskRunner* ClientContext::decode_task_runner() { 35 return decode_thread_.message_loop_proxy().get(); 36} 37 38base::SingleThreadTaskRunner* ClientContext::audio_decode_task_runner() { 39 return audio_decode_thread_.message_loop_proxy().get(); 40} 41 42} // namespace remoting 43