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#ifndef CONTENT_BROWSER_ANDROID_SURFACE_TEXTURE_PEER_BROWSER_IMPL_H_ 6#define CONTENT_BROWSER_ANDROID_SURFACE_TEXTURE_PEER_BROWSER_IMPL_H_ 7 8#include "base/compiler_specific.h" 9#include "content/common/android/surface_texture_peer.h" 10 11namespace content { 12 13// The SurfaceTexturePeer implementation for browser process. 14class SurfaceTexturePeerBrowserImpl : public SurfaceTexturePeer { 15 public: 16 // Construct a SurfaceTexturePeerBrowserImpl object. If 17 // |player_in_render_process| is true, calling EstablishSurfaceTexturePeer() 18 // will send the java surface texture object to the render process through 19 // ChildProcessService. Otherwise, it will pass the surface texture 20 // to the MediaPlayerBridge object in the browser process. 21 SurfaceTexturePeerBrowserImpl(); 22 virtual ~SurfaceTexturePeerBrowserImpl(); 23 24 // SurfaceTexturePeer implementation. 25 virtual void EstablishSurfaceTexturePeer( 26 base::ProcessHandle render_process_handle, 27 scoped_refptr<gfx::SurfaceTexture> surface_texture, 28 int render_frame_id, 29 int player_id) OVERRIDE; 30 31 private: 32 DISALLOW_COPY_AND_ASSIGN(SurfaceTexturePeerBrowserImpl); 33}; 34 35} // namespace content 36 37#endif // CONTENT_BROWSER_ANDROID_SURFACE_TEXTURE_PEER_BROWSER_IMPL_H_ 38