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

Side by Side Diff: remoting/host/fake_desktop_environment.h

Issue 2615113005: [Chromoting] Use HostExperimentSessionPlugin in host (Closed)
Patch Set: Resolve review comments Created 3 years, 10 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 unified diff | Download patch
« no previous file with comments | « remoting/host/desktop_environment_options.cc ('k') | remoting/host/fake_desktop_environment.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef REMOTING_HOST_FAKE_DESKTOP_ENVIRONMENT_H_ 5 #ifndef REMOTING_HOST_FAKE_DESKTOP_ENVIRONMENT_H_
6 #define REMOTING_HOST_FAKE_DESKTOP_ENVIRONMENT_H_ 6 #define REMOTING_HOST_FAKE_DESKTOP_ENVIRONMENT_H_
7 7
8 #include <cstdint> 8 #include <cstdint>
9 #include <memory> 9 #include <memory>
10 #include <string> 10 #include <string>
11 #include <vector> 11 #include <vector>
12 12
13 #include "base/macros.h" 13 #include "base/macros.h"
14 #include "base/single_thread_task_runner.h" 14 #include "base/single_thread_task_runner.h"
15 #include "remoting/host/desktop_environment.h" 15 #include "remoting/host/desktop_environment.h"
16 #include "remoting/host/desktop_environment_options.h"
16 #include "remoting/host/fake_mouse_cursor_monitor.h" 17 #include "remoting/host/fake_mouse_cursor_monitor.h"
17 #include "remoting/host/input_injector.h" 18 #include "remoting/host/input_injector.h"
18 #include "remoting/host/screen_controls.h" 19 #include "remoting/host/screen_controls.h"
19 #include "remoting/protocol/fake_desktop_capturer.h" 20 #include "remoting/protocol/fake_desktop_capturer.h"
20 21
21 namespace remoting { 22 namespace remoting {
22 23
23 class FakeInputInjector : public InputInjector, 24 class FakeInputInjector : public InputInjector,
24 public base::SupportsWeakPtr<FakeInputInjector> { 25 public base::SupportsWeakPtr<FakeInputInjector> {
25 public: 26 public:
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
66 67
67 // ScreenControls implementation. 68 // ScreenControls implementation.
68 void SetScreenResolution(const ScreenResolution& resolution) override; 69 void SetScreenResolution(const ScreenResolution& resolution) override;
69 }; 70 };
70 71
71 class FakeDesktopEnvironment 72 class FakeDesktopEnvironment
72 : public DesktopEnvironment, 73 : public DesktopEnvironment,
73 public base::SupportsWeakPtr<FakeDesktopEnvironment> { 74 public base::SupportsWeakPtr<FakeDesktopEnvironment> {
74 public: 75 public:
75 explicit FakeDesktopEnvironment( 76 explicit FakeDesktopEnvironment(
76 scoped_refptr<base::SingleThreadTaskRunner> capture_thread); 77 scoped_refptr<base::SingleThreadTaskRunner> capture_thread,
78 const DesktopEnvironmentOptions& options);
77 ~FakeDesktopEnvironment() override; 79 ~FakeDesktopEnvironment() override;
78 80
79 // Sets frame generator to be used for protocol::FakeDesktopCapturer created 81 // Sets frame generator to be used for protocol::FakeDesktopCapturer created
80 // by FakeDesktopEnvironment. 82 // by FakeDesktopEnvironment.
81 void set_frame_generator( 83 void set_frame_generator(
82 protocol::FakeDesktopCapturer::FrameGenerator frame_generator) { 84 protocol::FakeDesktopCapturer::FrameGenerator frame_generator) {
83 frame_generator_ = frame_generator; 85 frame_generator_ = frame_generator;
84 } 86 }
85 87
88 const DesktopEnvironmentOptions& options() const;
89
86 // DesktopEnvironment implementation. 90 // DesktopEnvironment implementation.
87 std::unique_ptr<AudioCapturer> CreateAudioCapturer() override; 91 std::unique_ptr<AudioCapturer> CreateAudioCapturer() override;
88 std::unique_ptr<InputInjector> CreateInputInjector() override; 92 std::unique_ptr<InputInjector> CreateInputInjector() override;
89 std::unique_ptr<ScreenControls> CreateScreenControls() override; 93 std::unique_ptr<ScreenControls> CreateScreenControls() override;
90 std::unique_ptr<webrtc::DesktopCapturer> CreateVideoCapturer() override; 94 std::unique_ptr<webrtc::DesktopCapturer> CreateVideoCapturer() override;
91 std::unique_ptr<webrtc::MouseCursorMonitor> CreateMouseCursorMonitor() 95 std::unique_ptr<webrtc::MouseCursorMonitor> CreateMouseCursorMonitor()
92 override; 96 override;
93 std::string GetCapabilities() const override; 97 std::string GetCapabilities() const override;
94 void SetCapabilities(const std::string& capabilities) override; 98 void SetCapabilities(const std::string& capabilities) override;
95 uint32_t GetDesktopSessionId() const override; 99 uint32_t GetDesktopSessionId() const override;
96 100
97 base::WeakPtr<FakeInputInjector> last_input_injector() { 101 base::WeakPtr<FakeInputInjector> last_input_injector() {
98 return last_input_injector_; 102 return last_input_injector_;
99 } 103 }
100 104
101 private: 105 private:
102 scoped_refptr<base::SingleThreadTaskRunner> capture_thread_; 106 scoped_refptr<base::SingleThreadTaskRunner> capture_thread_;
103 protocol::FakeDesktopCapturer::FrameGenerator frame_generator_; 107 protocol::FakeDesktopCapturer::FrameGenerator frame_generator_;
104 108
105 base::WeakPtr<FakeInputInjector> last_input_injector_; 109 base::WeakPtr<FakeInputInjector> last_input_injector_;
106 110
111 const DesktopEnvironmentOptions options_;
112
107 DISALLOW_COPY_AND_ASSIGN(FakeDesktopEnvironment); 113 DISALLOW_COPY_AND_ASSIGN(FakeDesktopEnvironment);
108 }; 114 };
109 115
110 class FakeDesktopEnvironmentFactory : public DesktopEnvironmentFactory { 116 class FakeDesktopEnvironmentFactory : public DesktopEnvironmentFactory {
111 public: 117 public:
112 explicit FakeDesktopEnvironmentFactory( 118 explicit FakeDesktopEnvironmentFactory(
113 scoped_refptr<base::SingleThreadTaskRunner> capture_thread); 119 scoped_refptr<base::SingleThreadTaskRunner> capture_thread);
114 ~FakeDesktopEnvironmentFactory() override; 120 ~FakeDesktopEnvironmentFactory() override;
115 121
116 // Sets frame generator to be used for protocol::FakeDesktopCapturer created 122 // Sets frame generator to be used for protocol::FakeDesktopCapturer created
(...skipping 18 matching lines...) Expand all
135 protocol::FakeDesktopCapturer::FrameGenerator frame_generator_; 141 protocol::FakeDesktopCapturer::FrameGenerator frame_generator_;
136 142
137 base::WeakPtr<FakeDesktopEnvironment> last_desktop_environment_; 143 base::WeakPtr<FakeDesktopEnvironment> last_desktop_environment_;
138 144
139 DISALLOW_COPY_AND_ASSIGN(FakeDesktopEnvironmentFactory); 145 DISALLOW_COPY_AND_ASSIGN(FakeDesktopEnvironmentFactory);
140 }; 146 };
141 147
142 } // namespace remoting 148 } // namespace remoting
143 149
144 #endif // REMOTING_HOST_FAKE_DESKTOP_ENVIRONMENT_H_ 150 #endif // REMOTING_HOST_FAKE_DESKTOP_ENVIRONMENT_H_
OLDNEW
« no previous file with comments | « remoting/host/desktop_environment_options.cc ('k') | remoting/host/fake_desktop_environment.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698