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

Side by Side Diff: ui/gfx/android/java_bitmap.h

Issue 1136053003: Check whether Java bitmap memory size is same to one of SkBitmap (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Use static_cast<int> Created 5 years, 7 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef UI_GFX_ANDROID_JAVA_BITMAP_H_ 5 #ifndef UI_GFX_ANDROID_JAVA_BITMAP_H_
6 #define UI_GFX_ANDROID_JAVA_BITMAP_H_ 6 #define UI_GFX_ANDROID_JAVA_BITMAP_H_
7 7
8 #include <jni.h> 8 #include <jni.h>
9 9
10 #include "base/android/scoped_java_ref.h" 10 #include "base/android/scoped_java_ref.h"
(...skipping 19 matching lines...) Expand all
30 public: 30 public:
31 explicit JavaBitmap(jobject bitmap); 31 explicit JavaBitmap(jobject bitmap);
32 ~JavaBitmap(); 32 ~JavaBitmap();
33 33
34 inline void* pixels() { return pixels_; } 34 inline void* pixels() { return pixels_; }
35 inline const void* pixels() const { return pixels_; } 35 inline const void* pixels() const { return pixels_; }
36 inline const gfx::Size& size() const { return size_; } 36 inline const gfx::Size& size() const { return size_; }
37 // Formats are in android/bitmap.h; e.g. ANDROID_BITMAP_FORMAT_RGBA_8888 37 // Formats are in android/bitmap.h; e.g. ANDROID_BITMAP_FORMAT_RGBA_8888
38 inline int format() const { return format_; } 38 inline int format() const { return format_; }
39 inline uint32_t stride() const { return stride_; } 39 inline uint32_t stride() const { return stride_; }
40 inline int byte_count() const { return byte_count_; }
40 41
41 // Registers methods with JNI and returns true if succeeded. 42 // Registers methods with JNI and returns true if succeeded.
42 static bool RegisterJavaBitmap(JNIEnv* env); 43 static bool RegisterJavaBitmap(JNIEnv* env);
43 44
44 private: 45 private:
45 jobject bitmap_; 46 jobject bitmap_;
46 void* pixels_; 47 void* pixels_;
47 gfx::Size size_; 48 gfx::Size size_;
48 int format_; 49 int format_;
49 uint32_t stride_; 50 uint32_t stride_;
51 int byte_count_;
50 52
51 DISALLOW_COPY_AND_ASSIGN(JavaBitmap); 53 DISALLOW_COPY_AND_ASSIGN(JavaBitmap);
52 }; 54 };
53 55
54 // Allocates a Java-backed bitmap (android.graphics.Bitmap) with the given 56 // Allocates a Java-backed bitmap (android.graphics.Bitmap) with the given
55 // (non-empty!) size and color type. 57 // (non-empty!) size and color type.
56 GFX_EXPORT base::android::ScopedJavaLocalRef<jobject> CreateJavaBitmap( 58 GFX_EXPORT base::android::ScopedJavaLocalRef<jobject> CreateJavaBitmap(
57 int width, 59 int width,
58 int height, 60 int height,
59 SkColorType color_type); 61 SkColorType color_type);
60 62
61 // Converts |skbitmap| to a Java-backed bitmap (android.graphics.Bitmap). 63 // Converts |skbitmap| to a Java-backed bitmap (android.graphics.Bitmap).
62 // Note: |skbitmap| is assumed to be non-null, non-empty and one of RGBA_8888 or 64 // Note: |skbitmap| is assumed to be non-null, non-empty and one of RGBA_8888 or
63 // RGB_565 formats. 65 // RGB_565 formats.
64 GFX_EXPORT base::android::ScopedJavaLocalRef<jobject> ConvertToJavaBitmap( 66 GFX_EXPORT base::android::ScopedJavaLocalRef<jobject> ConvertToJavaBitmap(
65 const SkBitmap* skbitmap); 67 const SkBitmap* skbitmap);
66 68
67 // Converts |bitmap| to an SkBitmap of the same size and format. 69 // Converts |bitmap| to an SkBitmap of the same size and format.
68 // Note: |jbitmap| is assumed to be non-null, non-empty and of format RGBA_8888. 70 // Note: |jbitmap| is assumed to be non-null, non-empty and of format RGBA_8888.
69 GFX_EXPORT SkBitmap CreateSkBitmapFromJavaBitmap(const JavaBitmap& jbitmap); 71 GFX_EXPORT SkBitmap CreateSkBitmapFromJavaBitmap(const JavaBitmap& jbitmap);
70 72
71 // Returns a Skia color type value for the requested input java Bitmap.Config. 73 // Returns a Skia color type value for the requested input java Bitmap.Config.
72 GFX_EXPORT SkColorType ConvertToSkiaColorType(jobject jbitmap_config); 74 GFX_EXPORT SkColorType ConvertToSkiaColorType(jobject jbitmap_config);
73 75
74 } // namespace gfx 76 } // namespace gfx
75 77
76 #endif // UI_GFX_ANDROID_JAVA_BITMAP_H_ 78 #endif // UI_GFX_ANDROID_JAVA_BITMAP_H_
OLDNEW
« no previous file with comments | « ui/android/java/src/org/chromium/ui/gfx/BitmapHelper.java ('k') | ui/gfx/android/java_bitmap.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698