~ubuntu-branches/ubuntu/oneiric/openjdk-7/oneiric-security

« back to all changes in this revision

Viewing changes to pulseaudio/src/native/jni-common.h

  • Committer: Package Import Robot
  • Author(s): Matthias Klose
  • Date: 2012-10-17 16:22:48 UTC
  • mfrom: (1.3.11) (8.1.25 quantal)
  • Revision ID: package-import@ubuntu.com-20121017162248-steblyv2lnk2t951
Tags: 7u9-2.3.3-0ubuntu1~11.10.1
Build IcedTea7 2.3.3 for oneiric.

Show diffs side-by-side

added added

removed removed

Lines of Context:
39
39
#define _JNI_COMMON_H
40
40
 
41
41
#include <jni.h>
 
42
 
42
43
/*
43
 
 * This file contains some commonly used functions 
44
 
 * 
 
44
 * This file contains some commonly used functions
 
45
 *
45
46
 */
46
47
 
 
48
// Sets the field with name field_name from jclass clz to pa_prefix_field_name.
 
49
#define SET_JAVA_STATIC_LONG_FIELD_TO_PA_ENUM(env, clz, java_prefix, pa_prefix, name) \
 
50
    do { \
 
51
        char *java_full_name = #java_prefix #name; \
 
52
        jfieldID fid = (*env)->GetStaticFieldID(env, clz, java_full_name, "J"); \
 
53
        assert(fid); \
 
54
        (*env)->SetStaticLongField(env, clz, fid, PA_##pa_prefix##_##name); \
 
55
    } while(0);
 
56
 
47
57
typedef struct java_context_t {
48
 
        JNIEnv* env;
49
 
        jobject obj;
 
58
    JNIEnv* env;
 
59
    jobject obj;
50
60
} java_context_t;
51
61
 
52
62
/* Exception Handling */
53
63
 
54
64
void throwByName(JNIEnv* const env, const char* const name,
55
 
                const char* const msg);
 
65
        const char* const msg);
56
66
 
57
67
#define ILLEGAL_ARGUMENT_EXCEPTION "java/lang/IllegalArgumentException"
58
68
#define ILLEGAL_STATE_EXCEPTION "java/lang/IllegalStateException"
72
82
 
73
83
jbyteArray getJavaByteArrayField(JNIEnv* env, jobject obj, char* name);
74
84
void setJavaByteArrayField(JNIEnv* env, jobject obj, char* name,
75
 
                jbyteArray array);
 
85
        jbyteArray array);
76
86
 
77
87
/* Pointers and Java */
78
88