Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(114)

Unified Diff: services/image_decoder/image_decoder_impl.h

Issue 1028543002: Turn the utility process image decoder into a Mojo service. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Clean up and add test. Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: services/image_decoder/image_decoder_impl.h
diff --git a/services/image_decoder/image_decoder_impl.h b/services/image_decoder/image_decoder_impl.h
new file mode 100644
index 0000000000000000000000000000000000000000..e2d28f92164f600f332b1ccbff262ca09ab46e93
--- /dev/null
+++ b/services/image_decoder/image_decoder_impl.h
@@ -0,0 +1,37 @@
+// Copyright 2015 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 SERVICES_IMAGE_DECODER_IMAGE_DECODER_IMPL_H_
+#define SERVICES_IMAGE_DECODER_IMAGE_DECODER_IMPL_H_
+
+#include "base/macros.h"
+#include "services/image_decoder/public/interfaces/image_decoder.mojom.h"
+#include "third_party/mojo/src/mojo/public/cpp/bindings/strong_binding.h"
+
+namespace services {
+
+class ImageDecoderImpl : public ImageDecoder {
+ public:
+ ImageDecoderImpl(int64_t max_message_size);
+ explicit ImageDecoderImpl(mojo::InterfaceRequest<ImageDecoder> request);
+ ~ImageDecoderImpl() override;
+
+ // Public for testing.
+ // Overridden from services::ImageDecoder:
+ void DecodeImage(
+ mojo::Array<uint8_t> encoded_data,
+ ImageCodec codec,
+ bool shrink_to_fit,
+ const mojo::Callback<void(bool, skia::BitmapPtr)>& callback) override;
+
+ private:
+ int64_t max_message_size_;
+ mojo::StrongBinding<ImageDecoder> binding_;
+
+ DISALLOW_COPY_AND_ASSIGN(ImageDecoderImpl);
+};
+
+} // namespace services
+
+#endif // SERVICES_IMAGE_DECODER_IMAGE_DECODER_IMPL_H_

Powered by Google App Engine
This is Rietveld 408576698