1/* //device/libs/android_runtime/android_util_Binder.h 2** 3** Copyright 2006, The Android Open Source Project 4** 5** Licensed under the Apache License, Version 2.0 (the "License"); 6** you may not use this file except in compliance with the License. 7** You may obtain a copy of the License at 8** 9** http://www.apache.org/licenses/LICENSE-2.0 10** 11** Unless required by applicable law or agreed to in writing, software 12** distributed under the License is distributed on an "AS IS" BASIS, 13** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14** See the License for the specific language governing permissions and 15** limitations under the License. 16*/ 17 18#include <binder/IBinder.h> 19 20#include "jni.h" 21 22namespace android { 23 24// Converstion to/from Java IBinder Object and C++ IBinder instance. 25extern jobject javaObjectForIBinder(JNIEnv* env, const sp<IBinder>& val); 26extern sp<IBinder> ibinderForJavaObject(JNIEnv* env, jobject obj); 27 28// Conversion from Java Parcel Object to C++ Parcel instance. 29// Note: does not type checking; must guarantee jobject is a Java Parcel 30extern Parcel* parcelForJavaObject(JNIEnv* env, jobject obj); 31 32extern jobject newParcelFileDescriptor(JNIEnv* env, jobject fileDesc); 33 34} 35