PorterDuff.cpp revision 54b6cfa9a9e5b861a9930af873580d6dc20f773c
127c174483a8ae9688d5d4897c19074f62c7f1701James Dong/* libs/android_runtime/android/graphics/PorterDuff.cpp
227c174483a8ae9688d5d4897c19074f62c7f1701James Dong**
327c174483a8ae9688d5d4897c19074f62c7f1701James Dong** Copyright 2006, The Android Open Source Project
427c174483a8ae9688d5d4897c19074f62c7f1701James Dong**
527c174483a8ae9688d5d4897c19074f62c7f1701James Dong** Licensed under the Apache License, Version 2.0 (the "License");
627c174483a8ae9688d5d4897c19074f62c7f1701James Dong** you may not use this file except in compliance with the License.
727c174483a8ae9688d5d4897c19074f62c7f1701James Dong** You may obtain a copy of the License at
827c174483a8ae9688d5d4897c19074f62c7f1701James Dong**
927c174483a8ae9688d5d4897c19074f62c7f1701James Dong**     http://www.apache.org/licenses/LICENSE-2.0
1027c174483a8ae9688d5d4897c19074f62c7f1701James Dong**
1127c174483a8ae9688d5d4897c19074f62c7f1701James Dong** Unless required by applicable law or agreed to in writing, software
1227c174483a8ae9688d5d4897c19074f62c7f1701James Dong** distributed under the License is distributed on an "AS IS" BASIS,
1327c174483a8ae9688d5d4897c19074f62c7f1701James Dong** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1427c174483a8ae9688d5d4897c19074f62c7f1701James Dong** See the License for the specific language governing permissions and
1527c174483a8ae9688d5d4897c19074f62c7f1701James Dong** limitations under the License.
1627c174483a8ae9688d5d4897c19074f62c7f1701James Dong*/
17f933441648ef6a71dee783d733aac17b9508b452Andreas Huber
18f933441648ef6a71dee783d733aac17b9508b452Andreas Huber// This file was generated from the C++ include file: SkPorterDuff.h
19f933441648ef6a71dee783d733aac17b9508b452Andreas Huber// Any changes made to this file will be discarded by the build.
20f87e30fe71752dc431d8e8d5682c38271c03265aAndy Hung// To change this file, either edit the include, or device/tools/gluemaker/main.cpp,
21f87e30fe71752dc431d8e8d5682c38271c03265aAndy Hung// or one of the auxilary file specifications in device/tools/gluemaker.
22f87e30fe71752dc431d8e8d5682c38271c03265aAndy Hung
23f87e30fe71752dc431d8e8d5682c38271c03265aAndy Hung#include "jni.h"
24609b815a3131d22da38b2f452faa9f89daad4039Andy Hung#include "GraphicsJNI.h"
256fbc1afd36f514f8b8d36ce67f5e69776c690bd2Lajos Molnar#include <android_runtime/AndroidRuntime.h>
266fbc1afd36f514f8b8d36ce67f5e69776c690bd2Lajos Molnar
271de1e25cba872bd4c077c2e394f8ca9c70b65856Lajos Molnar#include "SkPorterDuff.h"
281de1e25cba872bd4c077c2e394f8ca9c70b65856Lajos Molnar
29f933441648ef6a71dee783d733aac17b9508b452Andreas Hubernamespace android {
30f933441648ef6a71dee783d733aac17b9508b452Andreas Huber
31f933441648ef6a71dee783d733aac17b9508b452Andreas Huberclass SkPorterDuffGlue {
32f933441648ef6a71dee783d733aac17b9508b452Andreas Huberpublic:
33f933441648ef6a71dee783d733aac17b9508b452Andreas Huber
34f933441648ef6a71dee783d733aac17b9508b452Andreas Huber    static SkXfermode* CreateXfermode(JNIEnv* env, jobject,
35f933441648ef6a71dee783d733aac17b9508b452Andreas Huber                                      SkPorterDuff::Mode mode) {
36f933441648ef6a71dee783d733aac17b9508b452Andreas Huber        return SkPorterDuff::CreateXfermode(mode);
37a147b4f91143d9f2fb608e22f9fca14bbd029573Lajos Molnar    }
38f933441648ef6a71dee783d733aac17b9508b452Andreas Huber
397cd58537932ef6f481f68be0b9c597a89cebdfecAndy McFadden};
40afc16d667afa23f5aa00154ccad62f8c45cf5419Andreas Huber
41f933441648ef6a71dee783d733aac17b9508b452Andreas Huberstatic JNINativeMethod methods[] = {
42f933441648ef6a71dee783d733aac17b9508b452Andreas Huber    {"nativeCreateXfermode","(I)I", (void*) SkPorterDuffGlue::CreateXfermode},
431065b3f17d3048948e7d522049d1980b90df3dc1Andreas Huber};
44d291c222357303b9611cab89d0c3b047584ef377Chong Zhang
453a0ef0dc71f3776d115f30d87f1d8867daefea88Andreas Huberint register_android_graphics_PorterDuff(JNIEnv* env) {
463a0ef0dc71f3776d115f30d87f1d8867daefea88Andreas Huber    int result = AndroidRuntime::registerNativeMethods(env,
4797358c3e1adaf4a744cad78891a16d12e3e9c88eChangwan Ryu                                "android/graphics/PorterDuffXfermode", methods,
484154795d5526750b7aec5f774831a9e1ba0a3f15Alex Glaznev                                        sizeof(methods) / sizeof(methods[0]));
49f933441648ef6a71dee783d733aac17b9508b452Andreas Huber    return result;
5097358c3e1adaf4a744cad78891a16d12e3e9c88eChangwan Ryu}
51f933441648ef6a71dee783d733aac17b9508b452Andreas Huber
52496238cc7551d414067dcbbb4fe3bd801f205f95Andreas Huber}
53496238cc7551d414067dcbbb4fe3bd801f205f95Andreas Huber