| Index: remoting/ios/bridge/host_proxy.h
|
| diff --git a/remoting/ios/bridge/host_proxy.h b/remoting/ios/bridge/host_proxy.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..3c0f129701abc8c63653c362f7782384ad0d25ad
|
| --- /dev/null
|
| +++ b/remoting/ios/bridge/host_proxy.h
|
| @@ -0,0 +1,67 @@
|
| +// Copyright 2014 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#ifndef REMOTING_IOS_BRIDGE_CLIENT_PROXY_H_
|
| +#define REMOTING_IOS_BRIDGE_CLIENT_PROXY_H_
|
| +
|
| +#import <Foundation/Foundation.h>
|
| +#import <UIKit/UIKit.h>
|
| +
|
| +#include "base/memory/ref_counted.h"
|
| +#include "base/memory/scoped_ptr.h"
|
| +#include "third_party/webrtc/modules/desktop_capture/desktop_geometry.h"
|
| +
|
| +#import "remoting/ios/bridge/client_proxy_delegate_wrapper.h"
|
| +
|
| +namespace remoting {
|
| +class ClientInstance;
|
| +class ClientProxy;
|
| +} // namespace remoting
|
| +
|
| +// HostProxy is one channel of a bridge from the UI Application (CLIENT) and the
|
| +// common Chromoting protocol (HOST). HostProxy proxies message from the UI
|
| +// application to the host. The reverse channel, ClientProxy, is owned by the
|
| +// HostProxy to control deconstruction order, but is shared with the
|
| +// ClientInstance to perform work.
|
| +
|
| +@interface HostProxy : NSObject {
|
| + @private
|
| + // Host to Client channel
|
| + scoped_ptr<remoting::ClientProxy> _hostToClientChannel;
|
| + // Client to Host channel, must be released before |_hostToClientChannel|
|
| + scoped_refptr<remoting::ClientInstance> _clientToHostChannel;
|
| + // Connection state
|
| + BOOL _isConnected;
|
| +}
|
| +
|
| +// TRUE when a connection has been established successfully.
|
| +- (BOOL)isConnected;
|
| +
|
| +// Forwards credentials from CLIENT and to HOST and begins establishing a
|
| +// connection.
|
| +- (void)connectToHost:(NSString*)username
|
| + authToken:(NSString*)token
|
| + jabberId:(NSString*)jid
|
| + hostId:(NSString*)hostId
|
| + publicKey:(NSString*)hostPublicKey
|
| + delegate:(id<ClientProxyDelegate>)delegate;
|
| +
|
| +// Report from CLIENT with the user's PIN.
|
| +- (void)authenticationResponse:(NSString*)pin createPair:(BOOL)createPair;
|
| +
|
| +// CLIENT initiated disconnection
|
| +- (void)disconnectFromHost;
|
| +
|
| +// Report from CLIENT of mouse input
|
| +- (void)mouseAction:(const webrtc::DesktopVector&)position
|
| + wheelDelta:(const webrtc::DesktopVector&)wheelDelta
|
| + whichButton:(NSInteger)buttonPressed
|
| + buttonDown:(BOOL)buttonIsDown;
|
| +
|
| +// Report from CLIENT of keyboard input
|
| +- (void)keyboardAction:(NSInteger)keyCode keyDown:(BOOL)keyIsDown;
|
| +
|
| +@end
|
| +
|
| +#endif // REMOTING_IOS_BRIDGE_CLIENT_PROXY_H_
|
|
|