• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 // Interface of a client that receives commands from a Chromoting host.
6 //
7 // This interface is responsible for a subset of control messages sent to
8 // the Chromoting client.
9 
10 #ifndef REMOTING_PROTOCOL_CLIENT_STUB_H_
11 #define REMOTING_PROTOCOL_CLIENT_STUB_H_
12 
13 #include "base/basictypes.h"
14 #include "remoting/protocol/clipboard_stub.h"
15 #include "remoting/protocol/cursor_shape_stub.h"
16 
17 namespace remoting {
18 namespace protocol {
19 
20 class Capabilities;
21 class ExtensionMessage;
22 class PairingResponse;
23 
24 class ClientStub : public ClipboardStub,
25                    public CursorShapeStub {
26  public:
ClientStub()27   ClientStub() {}
~ClientStub()28   virtual ~ClientStub() {}
29 
30   // Passes the set of capabilities supported by the host to the client.
31   virtual void SetCapabilities(const Capabilities& capabilities) = 0;
32 
33   // Passes a pairing response message to the client.
34   virtual void SetPairingResponse(const PairingResponse& pairing_response) = 0;
35 
36   // Deliver an extension message from the host to the client.
37   virtual void DeliverHostMessage(const ExtensionMessage& message) = 0;
38 
39  private:
40   DISALLOW_COPY_AND_ASSIGN(ClientStub);
41 };
42 
43 }  // namespace protocol
44 }  // namespace remoting
45 
46 #endif  // REMOTING_PROTOCOL_CLIENT_STUB_H_
47