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