| Index: chrome/gpu/gpu_video_decoder.cc
|
| diff --git a/chrome/gpu/gpu_video_decoder.cc b/chrome/gpu/gpu_video_decoder.cc
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..fa478bf628d06f7deb5fb1866c6fe3eebece9bb6
|
| --- /dev/null
|
| +++ b/chrome/gpu/gpu_video_decoder.cc
|
| @@ -0,0 +1,108 @@
|
| +// Copyright (c) 2010 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.
|
| +
|
| +#include "chrome/common/gpu_messages.h"
|
| +#include "chrome/gpu/gpu_channel.h"
|
| +#include "chrome/gpu/gpu_video_decoder.h"
|
| +
|
| +void GpuVideoDecoder::OnChannelConnected(int32 peer_pid) {
|
| +}
|
| +
|
| +void GpuVideoDecoder::OnChannelError() {
|
| +}
|
| +
|
| +void GpuVideoDecoder::OnMessageReceived(const IPC::Message& msg) {
|
| + IPC_BEGIN_MESSAGE_MAP(GpuVideoDecoder, msg)
|
| + IPC_MESSAGE_HANDLER(GpuVideoDecoderMsg_Initialize,
|
| + OnInitialize)
|
| + IPC_MESSAGE_HANDLER(GpuVideoDecoderMsg_Destroy,
|
| + OnUninitialize)
|
| + IPC_MESSAGE_HANDLER(GpuVideoDecoderMsg_Flush,
|
| + OnFlush)
|
| + IPC_MESSAGE_HANDLER(GpuVideoDecoderMsg_EmptyThisBuffer,
|
| + OnEmptyThisBuffer)
|
| + IPC_MESSAGE_HANDLER(GpuVideoDecoderMsg_FillThisBuffer,
|
| + OnFillThisBuffer)
|
| + IPC_MESSAGE_HANDLER(GpuVideoDecoderMsg_FillThisBufferDoneACK,
|
| + OnFillThisBufferDoneACK)
|
| + IPC_MESSAGE_UNHANDLED_ERROR()
|
| + IPC_END_MESSAGE_MAP()
|
| +}
|
| +
|
| +GpuVideoDecoder::GpuVideoDecoder(
|
| + const GpuVideoDecoderInfoParam* param,
|
| + GpuChannel* channel,
|
| + base::ProcessHandle handle)
|
| + : decoder_host_route_id_(param->decoder_host_route_id_),
|
| + channel_(channel), renderer_handle_(handle) {
|
| +}
|
| +
|
| +void GpuVideoDecoder::OnInitialize(const GpuVideoDecoderInitParam& param) {
|
| + init_param_ = param;
|
| + done_param_.success_ = DoInitialize(init_param_, &done_param_);
|
| +}
|
| +
|
| +void GpuVideoDecoder::OnUninitialize() {
|
| + DoUninitialize();
|
| +}
|
| +
|
| +void GpuVideoDecoder::OnFlush() {
|
| + DoFlush();
|
| +}
|
| +
|
| +void GpuVideoDecoder::OnEmptyThisBuffer(
|
| + const GpuVideoDecoderInputBufferParam& buffer) {
|
| + DoEmptyThisBuffer(buffer);
|
| +}
|
| +void GpuVideoDecoder::OnFillThisBuffer(
|
| + const GpuVideoDecoderOutputBufferParam& frame) {
|
| + DoFillThisBuffer(frame);
|
| +}
|
| +
|
| +void GpuVideoDecoder::OnFillThisBufferDoneACK() {
|
| + DoFillThisBufferDoneACK();
|
| +}
|
| +
|
| +void GpuVideoDecoder::SendInitializeDone(
|
| + const GpuVideoDecoderInitDoneParam& param) {
|
| + if (!channel_->Send(
|
| + new GpuVideoDecoderHostMsg_InitializeACK(route_id(), param))) {
|
| + LOG(ERROR) << "GpuVideoDecoderMsg_InitializeACK failed";
|
| + }
|
| +}
|
| +
|
| +void GpuVideoDecoder::SendUninitializeDone() {
|
| + if (!channel_->Send(new GpuVideoDecoderHostMsg_DestroyACK(route_id()))) {
|
| + LOG(ERROR) << "GpuVideoDecoderMsg_DestroyACK failed";
|
| + }
|
| +}
|
| +
|
| +void GpuVideoDecoder::SendFlushDone() {
|
| + if (!channel_->Send(new GpuVideoDecoderHostMsg_FlushACK(route_id()))) {
|
| + LOG(ERROR) << "GpuVideoDecoderMsg_FlushACK failed";
|
| + }
|
| +}
|
| +
|
| +void GpuVideoDecoder::SendEmptyBufferDone() {
|
| + if (!channel_->Send(
|
| + new GpuVideoDecoderHostMsg_EmptyThisBufferDone(route_id()))) {
|
| + LOG(ERROR) << "GpuVideoDecoderMsg_EmptyThisBufferDone failed";
|
| + }
|
| +}
|
| +
|
| +void GpuVideoDecoder::SendEmptyBufferACK() {
|
| + if (!channel_->Send(
|
| + new GpuVideoDecoderHostMsg_EmptyThisBufferACK(route_id()))) {
|
| + LOG(ERROR) << "GpuVideoDecoderMsg_EmptyThisBufferACK failed";
|
| + }
|
| +}
|
| +
|
| +void GpuVideoDecoder::SendFillBufferDone(
|
| + const GpuVideoDecoderOutputBufferParam& frame) {
|
| + if (!channel_->Send(
|
| + new GpuVideoDecoderHostMsg_FillThisBufferDone(route_id(), frame))) {
|
| + LOG(ERROR) << "GpuVideoDecoderMsg_FillThisBufferDone failed";
|
| + }
|
| +}
|
| +
|
|
|