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

Side by Side Diff: blimp/client/session/blimp_client_session.h

Issue 1985863002: Incorporate BlobChannel into Blimp image encode/decode pipeline. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@blobchannel-helium
Patch Set: Decoupled BlobChannelSenderHost from mojom::BlobChannel Created 4 years, 7 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
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 BLIMP_CLIENT_SESSION_BLIMP_CLIENT_SESSION_H_ 5 #ifndef BLIMP_CLIENT_SESSION_BLIMP_CLIENT_SESSION_H_
6 #define BLIMP_CLIENT_SESSION_BLIMP_CLIENT_SESSION_H_ 6 #define BLIMP_CLIENT_SESSION_BLIMP_CLIENT_SESSION_H_
7 7
8 #include <memory> 8 #include <memory>
9 #include <string> 9 #include <string>
10 10
11 #include "base/macros.h" 11 #include "base/macros.h"
12 #include "base/memory/ref_counted.h" 12 #include "base/memory/ref_counted.h"
13 #include "base/threading/thread.h" 13 #include "base/threading/thread.h"
14 #include "blimp/client/session/assignment_source.h" 14 #include "blimp/client/session/assignment_source.h"
15 #include "blimp/common/proto/blimp_message.pb.h" 15 #include "blimp/common/proto/blimp_message.pb.h"
16 #include "blimp/net/blimp_message_processor.h" 16 #include "blimp/net/blimp_message_processor.h"
17 17
18 namespace net { 18 namespace net {
19 class IPEndPoint; 19 class IPEndPoint;
20 } 20 }
21 21
22 namespace blimp { 22 namespace blimp {
23 23
24 class BlimpMessageProcessor; 24 class BlimpMessageProcessor;
25 class BlimpMessageThreadPipe; 25 class BlimpMessageThreadPipe;
26 class BlobCache;
Wez 2016/05/21 01:08:04 You don't seem to use this below?
Kevin M 2016/05/27 22:35:30 Done.
27 class BlobChannelReceiver;
26 class BrowserConnectionHandler; 28 class BrowserConnectionHandler;
27 class ClientConnectionManager; 29 class ClientConnectionManager;
30 class HeliumBlobReceiverDelegate;
28 class ThreadPipeManager; 31 class ThreadPipeManager;
29 32
30 namespace client { 33 namespace client {
31 34
32 class ClientNetworkComponents; 35 class ClientNetworkComponents;
33 class NavigationFeature; 36 class NavigationFeature;
34 class ImeFeature; 37 class ImeFeature;
35 class RenderWidgetFeature; 38 class RenderWidgetFeature;
36 class SettingsFeature; 39 class SettingsFeature;
37 class TabControlFeature; 40 class TabControlFeature;
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
84 const Assignment& assignment); 87 const Assignment& assignment);
85 88
86 private: 89 private:
87 void RegisterFeatures(); 90 void RegisterFeatures();
88 91
89 // NetworkEventObserver implementation. 92 // NetworkEventObserver implementation.
90 void OnConnected() override; 93 void OnConnected() override;
91 void OnDisconnected(int result) override; 94 void OnDisconnected(int result) override;
92 95
93 base::Thread io_thread_; 96 base::Thread io_thread_;
97 HeliumBlobReceiverDelegate* blob_delegate_ = nullptr;
Wez 2016/05/21 01:08:04 nit: Need a comment to explain this member, and in
Kevin M 2016/05/27 22:35:30 Done.
98 std::unique_ptr<BlobChannelReceiver> blob_receiver_;
94 std::unique_ptr<TabControlFeature> tab_control_feature_; 99 std::unique_ptr<TabControlFeature> tab_control_feature_;
95 std::unique_ptr<NavigationFeature> navigation_feature_; 100 std::unique_ptr<NavigationFeature> navigation_feature_;
96 std::unique_ptr<ImeFeature> ime_feature_; 101 std::unique_ptr<ImeFeature> ime_feature_;
97 std::unique_ptr<RenderWidgetFeature> render_widget_feature_; 102 std::unique_ptr<RenderWidgetFeature> render_widget_feature_;
98 std::unique_ptr<SettingsFeature> settings_feature_; 103 std::unique_ptr<SettingsFeature> settings_feature_;
99 104
100 // The AssignmentSource is used when the user of BlimpClientSession calls 105 // The AssignmentSource is used when the user of BlimpClientSession calls
101 // Connect() to get a valid assignment and later connect to the engine. 106 // Connect() to get a valid assignment and later connect to the engine.
102 std::unique_ptr<AssignmentSource> assignment_source_; 107 std::unique_ptr<AssignmentSource> assignment_source_;
103 108
104 // Container struct for network components. 109 // Container struct for network components.
105 // Must be deleted on the IO thread. 110 // Must be deleted on the IO thread.
106 std::unique_ptr<ClientNetworkComponents> net_components_; 111 std::unique_ptr<ClientNetworkComponents> net_components_;
107 112
108 std::unique_ptr<ThreadPipeManager> thread_pipe_manager_; 113 std::unique_ptr<ThreadPipeManager> thread_pipe_manager_;
109 114
110 base::WeakPtrFactory<BlimpClientSession> weak_factory_; 115 base::WeakPtrFactory<BlimpClientSession> weak_factory_;
111 116
112 DISALLOW_COPY_AND_ASSIGN(BlimpClientSession); 117 DISALLOW_COPY_AND_ASSIGN(BlimpClientSession);
113 }; 118 };
114 119
115 } // namespace client 120 } // namespace client
116 } // namespace blimp 121 } // namespace blimp
117 122
118 #endif // BLIMP_CLIENT_SESSION_BLIMP_CLIENT_SESSION_H_ 123 #endif // BLIMP_CLIENT_SESSION_BLIMP_CLIENT_SESSION_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698