Index: experimental/c_salt/graphics_2d_context.cc |
diff --git a/experimental/c_salt/graphics_2d_context.cc b/experimental/c_salt/graphics_2d_context.cc |
deleted file mode 100644 |
index e88ba4a0caa5e800b00e0b5db2b733cecb31d28a..0000000000000000000000000000000000000000 |
--- a/experimental/c_salt/graphics_2d_context.cc |
+++ /dev/null |
@@ -1,79 +0,0 @@ |
-// Copyright 2010 The Native Client 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 "c_salt/graphics_2d_context.h" |
- |
-#include <nacl/nacl_npapi.h> |
-#include <nacl/npapi_extensions.h> |
- |
-#include <algorithm> |
- |
-#include "c_salt/image.h" |
-#include "c_salt/instance.h" |
- |
-extern NPDevice* NPN_AcquireDevice(NPP instance, NPDeviceID device); |
- |
-namespace c_salt { |
-class Graphics2DContextImpl { |
- public: |
- Graphics2DContextImpl() |
- : npp_instance_(0), device2d_(NULL) { |
- memset(&context2d_, 0, sizeof(context2d_)); |
- } |
- ~Graphics2DContextImpl() { |
- if (NULL != device2d_) { |
- device2d_->destroyContext(npp_instance_, &context2d_); |
- device2d_ = NULL; |
- } |
- } |
- NPP npp_instance_; // Instance ID. |
- NPDevice* device2d_; // The Pepper1 2D device. |
- NPDeviceContext2D context2d_; // The Pepper1 2D drawing context. |
-}; |
- |
-Graphics2DContext::Graphics2DContext() : impl_(new Graphics2DContextImpl) { |
-} |
- |
-Graphics2DContext::~Graphics2DContext() { |
-} |
- |
-bool Graphics2DContext::Init(const c_salt::Instance& instance) { |
- impl_->npp_instance_ = instance.npp_instance(); |
- impl_->device2d_ = NPN_AcquireDevice(impl_->npp_instance_, NPPepper2DDevice); |
- |
- NPDeviceContext2DConfig config; |
- NPError init_err = |
- impl_->device2d_->initializeContext(impl_->npp_instance_, |
- &config, |
- &impl_->context2d_); |
- if (NPERR_NO_ERROR != init_err) |
- return false; |
- |
- size_ = Size(impl_->context2d_.dirty.right, impl_->context2d_.dirty.bottom); |
- return true; |
-} |
- |
-void Graphics2DContext::Update(const Image& img) { |
- if (NULL == impl_->device2d_) |
- return; |
- |
- int w = std::min(size_.width(), img.width()); |
- int h = std::min(size_.height(), img.height()); |
- |
- const uint32_t* img_pixels = img.PixelAddress(0, 0); |
- uint32_t* window_pixels = static_cast<uint32_t*>(impl_->context2d_.region); |
- int window_stride = impl_->context2d_.stride / sizeof(*window_pixels); |
- |
- for (int y = 0; y < h; ++y) { |
- memcpy(window_pixels, img_pixels, w * sizeof(*window_pixels)); |
- window_pixels += window_stride; |
- img_pixels += img.width(); |
- } |
- impl_->device2d_->flushContext(impl_->npp_instance_, |
- &impl_->context2d_, |
- NULL, |
- NULL); |
-} |
-} // namespace c_salt |
- |