OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 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 // This class is an implementation of the ChromotingView for Pepper. It is | 5 // This class is an implementation of the ChromotingView for Pepper. It is |
6 // callable only on the Pepper thread. | 6 // callable only on the Pepper thread. |
7 | 7 |
8 #ifndef REMOTING_CLIENT_PLUGIN_PEPPER_VIEW_H_ | 8 #ifndef REMOTING_CLIENT_PLUGIN_PEPPER_VIEW_H_ |
9 #define REMOTING_CLIENT_PLUGIN_PEPPER_VIEW_H_ | 9 #define REMOTING_CLIENT_PLUGIN_PEPPER_VIEW_H_ |
10 | 10 |
11 #include <list> | 11 #include <list> |
12 | 12 |
13 #include "base/memory/scoped_ptr.h" | |
14 #include "base/memory/weak_ptr.h" | 13 #include "base/memory/weak_ptr.h" |
15 #include "ppapi/cpp/graphics_2d.h" | 14 #include "ppapi/cpp/graphics_2d.h" |
16 #include "ppapi/cpp/point.h" | 15 #include "ppapi/cpp/point.h" |
17 #include "remoting/client/chromoting_view.h" | 16 #include "remoting/client/chromoting_view.h" |
18 #include "remoting/client/frame_consumer.h" | 17 #include "remoting/client/frame_consumer.h" |
19 | 18 |
20 namespace remoting { | 19 namespace remoting { |
21 | 20 |
22 class ChromotingInstance; | 21 class ChromotingInstance; |
23 class ClientContext; | 22 class ClientContext; |
24 class FrameProducer; | 23 class FrameProducer; |
25 | 24 |
26 class PepperView : public ChromotingView, | 25 class PepperView : public ChromotingView, |
27 public FrameConsumer, | 26 public FrameConsumer, |
28 public base::SupportsWeakPtr<PepperView> | 27 public base::SupportsWeakPtr<PepperView> { |
29 { | |
30 public: | 28 public: |
31 // Constructs a PepperView for the |instance|. The |instance|, |context| | 29 // Constructs a PepperView for the |instance|. The |instance|, |context| |
32 // and |producer| must outlive this class. | 30 // and |producer| must outlive this class. |
33 PepperView(ChromotingInstance* instance, | 31 PepperView(ChromotingInstance* instance, |
34 ClientContext* context, | 32 ClientContext* context, |
35 FrameProducer* producer); | 33 FrameProducer* producer); |
36 virtual ~PepperView(); | 34 virtual ~PepperView(); |
37 | 35 |
38 // ChromotingView implementation. | 36 // ChromotingView implementation. |
39 virtual bool Initialize() OVERRIDE; | 37 virtual bool Initialize() OVERRIDE; |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
116 | 114 |
117 // True after Initialize() has been called, until TearDown(). | 115 // True after Initialize() has been called, until TearDown(). |
118 bool is_initialized_; | 116 bool is_initialized_; |
119 | 117 |
120 DISALLOW_COPY_AND_ASSIGN(PepperView); | 118 DISALLOW_COPY_AND_ASSIGN(PepperView); |
121 }; | 119 }; |
122 | 120 |
123 } // namespace remoting | 121 } // namespace remoting |
124 | 122 |
125 #endif // REMOTING_CLIENT_PLUGIN_PEPPER_VIEW_H_ | 123 #endif // REMOTING_CLIENT_PLUGIN_PEPPER_VIEW_H_ |
OLD | NEW |