Lines Matching refs:env

39 static int setHints(JNIEnv *env, BufImageS_t *imageP);
56 int awt_parseImage(JNIEnv *env, jobject jimage, BufImageS_t **imagePP,
64 if (JNU_IsNull(env, jimage)) {
65 JNU_ThrowNullPointerException(env, "null BufferedImage object");
70 JNU_ThrowOutOfMemoryError(env, "Out of memory");
76 if ((jraster = (*env)->GetObjectField(env, jimage,
79 JNU_ThrowNullPointerException(env, "null Raster object");
84 imageP->imageType = (*env)->GetIntField(env, jimage, g_BImgTypeID);
87 if ((status = awt_parseRaster(env, jraster, &imageP->raster)) <= 0) {
93 if ((jcmodel = (*env)->GetObjectField(env, jimage, g_BImgCMID)) == NULL) {
95 JNU_ThrowNullPointerException(env, "null Raster object");
100 if ((status = awt_parseColorModel(env, jcmodel, imageP->imageType,
108 if ((status = setHints(env, imageP)) <= 0) {
182 int awt_parseRaster(JNIEnv *env, jobject jraster, RasterS_t *rasterP) {
186 if (JNU_IsNull(env, jraster)) {
187 JNU_ThrowNullPointerException(env, "null Raster object");
192 rasterP->width = (*env)->GetIntField(env, jraster, g_RasterWidthID);
193 rasterP->height = (*env)->GetIntField(env, jraster, g_RasterHeightID);
194 rasterP->numDataElements = (*env)->GetIntField(env, jraster,
196 rasterP->numBands = (*env)->GetIntField(env, jraster,
199 rasterP->baseOriginX = (*env)->GetIntField(env, jraster,
201 rasterP->baseOriginY = (*env)->GetIntField(env, jraster,
203 rasterP->minX = (*env)->GetIntField(env, jraster, g_RasterMinXID);
204 rasterP->minY = (*env)->GetIntField(env, jraster, g_RasterMinYID);
206 rasterP->jsampleModel = (*env)->GetObjectField(env, jraster,
209 if (JNU_IsNull(env, rasterP->jsampleModel)) {
210 JNU_ThrowNullPointerException(env, "null Raster object");
229 if ((*env)->IsInstanceOf(env, rasterP->jsampleModel,
230 (*env)->FindClass(env,"java/awt/image/SinglePixelPackedSampleModel"))) {
235 rasterP->sppsm.maxBitSize = (*env)->GetIntField(env,
238 jmask = (*env)->GetObjectField(env, rasterP->jsampleModel,
240 joffs = (*env)->GetObjectField(env, rasterP->jsampleModel,
242 jnbits = (*env)->GetObjectField(env, rasterP->jsampleModel,
247 JNU_ThrowInternalError(env, "Can't grab SPPSM fields");
250 (*env)->GetIntArrayRegion(env, jmask, 0,
252 (*env)->GetIntArrayRegion(env, joffs, 0,
254 (*env)->GetIntArrayRegion(env, jnbits, 0,
258 rasterP->baseRasterWidth = (*env)->GetIntField(env, rasterP->jsampleModel,
260 rasterP->baseRasterHeight = (*env)->GetIntField(env,
264 if ((*env)->IsInstanceOf(env, jraster,
265 (*env)->FindClass(env, "sun/awt/image/IntegerComponentRaster"))){
266 rasterP->jdata = (*env)->GetObjectField(env, jraster, g_ICRdataID);
271 rasterP->type = (*env)->GetIntField(env, jraster, g_ICRtypeID);
272 rasterP->scanlineStride = (*env)->GetIntField(env, jraster, g_ICRscanstrID);
273 rasterP->pixelStride = (*env)->GetIntField(env, jraster, g_ICRpixstrID);
274 joffs = (*env)->GetObjectField(env, jraster, g_ICRdataOffsetsID);
276 else if ((*env)->IsInstanceOf(env, jraster,
277 (*env)->FindClass(env, "sun/awt/image/ByteComponentRaster"))){
278 rasterP->jdata = (*env)->GetObjectField(env, jraster, g_BCRdataID);
283 rasterP->type = (*env)->GetIntField(env, jraster, g_BCRtypeID);
284 rasterP->scanlineStride = (*env)->GetIntField(env, jraster, g_BCRscanstrID);
285 rasterP->pixelStride = (*env)->GetIntField(env, jraster, g_BCRpixstrID);
286 joffs = (*env)->GetObjectField(env, jraster, g_BCRdataOffsetsID);
288 else if ((*env)->IsInstanceOf(env, jraster,
289 (*env)->FindClass(env, "sun/awt/image/ShortComponentRaster"))){
290 rasterP->jdata = (*env)->GetObjectField(env, jraster, g_SCRdataID);
295 rasterP->type = (*env)->GetIntField(env, jraster, g_SCRtypeID);
296 rasterP->scanlineStride = (*env)->GetIntField(env, jraster, g_SCRscanstrID);
297 rasterP->pixelStride = (*env)->GetIntField(env, jraster, g_SCRpixstrID);
298 joffs = (*env)->GetObjectField(env, jraster, g_SCRdataOffsetsID);
300 else if ((*env)->IsInstanceOf(env, jraster,
301 (*env)->FindClass(env, "sun/awt/image/BytePackedRaster"))){
305 rasterP->scanlineStride = (*env)->GetIntField(env, jraster, g_BPRscanstrID);
306 rasterP->pixelStride = (*env)->GetIntField(env, jraster, g_BPRpixstrID);
307 rasterP->jdata = (*env)->GetObjectField(env, jraster, g_BPRdataID);
308 rasterP->type = (*env)->GetIntField(env, jraster, g_BPRtypeID);
316 JNU_ThrowOutOfMemoryError(env, "Out of memory");
319 rasterP->chanOffsets[0] = (*env)->GetIntField(env, jraster, g_BPRdataBitOffsetID);
351 JNU_ThrowOutOfMemoryError(env, "Out of memory");
354 (*env)->GetIntArrayRegion(env, joffs, 0, rasterP->numDataElements,
361 if (!checkChannelOffsets(rasterP, (*env)->GetArrayLength(env, rasterP->jdata))) {
376 JNU_ThrowInternalError(env, "Raster samples are too big");
399 static int getColorModelType(JNIEnv *env, jobject jcmodel) {
402 if ((*env)->IsInstanceOf(env, jcmodel,
403 (*env)->FindClass(env, "java/awt/image/IndexColorModel")))
406 } else if ((*env)->IsInstanceOf(env, jcmodel,
407 (*env)->FindClass(env, "java/awt/image/PackedColorModel")))
409 if ((*env)->IsInstanceOf(env, jcmodel,
410 (*env)->FindClass(env, "java/awt/image/DirectColorModel"))) {
417 else if ((*env)->IsInstanceOf(env, jcmodel,
418 (*env)->FindClass(env, "java/awt/image/ComponentColorModel")))
426 int awt_parseColorModel (JNIEnv *env, jobject jcmodel, int imageType,
435 if (JNU_IsNull(env, jcmodel)) {
436 JNU_ThrowNullPointerException(env, "null ColorModel object");
442 cmP->jcspace = (*env)->GetObjectField(env, jcmodel, g_CMcspaceID);
444 cmP->numComponents = (*env)->GetIntField(env, jcmodel,
446 cmP->supportsAlpha = (*env)->GetBooleanField(env, jcmodel,
448 cmP->isAlphaPre = (*env)->GetBooleanField(env,jcmodel,
450 cmP->transparency = (*env)->GetIntField(env, jcmodel,
453 jnBits = (*env)->GetObjectField(env, jcmodel, g_CMnBitsID);
455 JNU_ThrowNullPointerException(env, "null nBits structure in CModel");
459 nBitsLength = (*env)->GetArrayLength(env, jnBits);
471 JNU_ThrowOutOfMemoryError(env, "Out of memory");
474 (*env)->GetIntArrayRegion(env, jnBits, 0, cmP->numComponents,
483 cmP->is_sRGB = (*env)->GetBooleanField(env, cmP->jcmodel, g_CMis_sRGBID);
485 cmP->csType = (*env)->GetIntField(env, cmP->jcmodel, g_CMcsTypeID);
487 cmP->cmType = getColorModelType(env, jcmodel);
508 jclass jcm = (*env)->FindClass(env, "java/awt/image/ColorModel");
509 defCM = (*env)->CallStaticObjectMethod(env, jcm,
511 s_jdefCM = (*env)->NewGlobalRef(env, defCM);
513 JNU_ThrowNullPointerException(env,
518 cmP->isDefaultCM = ((*env)->IsSameObject(env, s_jdefCM, jcmodel));
541 cmP->transIdx = (*env)->GetIntField(env, jcmodel, g_ICMtransIdxID);
542 cmP->mapSize = (*env)->GetIntField(env, jcmodel, g_ICMmapSizeID);
543 cmP->jrgb = (*env)->GetObjectField(env, jcmodel, g_ICMrgbID);
546 int *rgb = (int *) (*env)->GetPrimitiveArrayCritical(env,
558 (*env)->ReleasePrimitiveArrayCritical(env, cmP->jrgb, rgb,
599 setHints(JNIEnv *env, BufImageS_t *imageP) {
618 JNU_ThrowOutOfMemoryError(env, "Out of memory");
817 int awt_getPixelByte(JNIEnv *env, int band, RasterS_t *rasterP,
832 jsm = (*env)->GetObjectField(env, rasterP->jraster, g_RasterSampleModelID);
833 jdatabuffer = (*env)->GetObjectField(env, rasterP->jraster,
835 jdata = (*env)->NewIntArray(env, maxBytes*rasterP->numBands*maxLines);
836 if (JNU_IsNull(env, jdata)) {
837 JNU_ThrowOutOfMemoryError(env, "Out of Memory");
845 (*env)->DeleteLocalRef(env, jdata);
846 JNU_ThrowInternalError(env, "Band out of range.");
851 (*env)->CallObjectMethod(env, jsm, g_SMGetPixelsMID,
854 dataP = (int *) (*env)->GetPrimitiveArrayCritical(env, jdata,
857 (*env)->DeleteLocalRef(env, jdata);
865 (*env)->ReleasePrimitiveArrayCritical(env, jdata, dataP,
881 (*env)->CallObjectMethod(env, jsm, g_SMGetPixelsMID,
884 dataP = (int *) (*env)->GetPrimitiveArrayCritical(env, jdata,
887 (*env)->DeleteLocalRef(env, jdata);
894 (*env)->ReleasePrimitiveArrayCritical(env, jdata, dataP,
907 (*env)->DeleteLocalRef(env, jdata);
911 int awt_setPixelByte(JNIEnv *env, int band, RasterS_t *rasterP,
926 jsm = (*env)->GetObjectField(env, rasterP->jraster, g_RasterSampleModelID);
927 jdatabuffer = (*env)->GetObjectField(env, rasterP->jraster,
930 jdata = (*env)->NewIntArray(env, maxBytes*rasterP->numBands*maxLines);
931 if (JNU_IsNull(env, jdata)) {
932 JNU_ThrowOutOfMemoryError(env, "Out of Memory");
938 (*env)->DeleteLocalRef(env, jdata);
939 JNU_ThrowInternalError(env, "Band out of range.");
948 dataP = (int *) (*env)->GetPrimitiveArrayCritical(env, jdata,
951 (*env)->DeleteLocalRef(env, jdata);
959 (*env)->ReleasePrimitiveArrayCritical(env, jdata, dataP,
962 (*env)->CallVoidMethod(env, jsm, g_SMSetPixelsMID,
975 dataP = (int *) (*env)->GetPrimitiveArrayCritical(env, jdata,
978 (*env)->DeleteLocalRef(env, jdata);
985 (*env)->ReleasePrimitiveArrayCritical(env, jdata, dataP,
988 (*env)->CallVoidMethod(env, jsm, g_SMSetPixelsMID,
995 (*env)->DeleteLocalRef(env, jdata);
999 int awt_getPixelShort(JNIEnv *env, int band, RasterS_t *rasterP,
1014 jsm = (*env)->GetObjectField(env, rasterP->jraster, g_RasterSampleModelID);
1015 jdatabuffer = (*env)->GetObjectField(env, rasterP->jraster,
1017 jdata = (*env)->NewIntArray(env, maxBytes*rasterP->numBands*maxLines);
1018 if (JNU_IsNull(env, jdata)) {
1019 JNU_ThrowOutOfMemoryError(env, "Out of Memory");
1026 (*env)->DeleteLocalRef(env, jdata);
1027 JNU_ThrowInternalError(env, "Band out of range.");
1036 (*env)->CallObjectMethod(env, jsm, g_SMGetPixelsMID,
1039 dataP = (int *) (*env)->GetPrimitiveArrayCritical(env, jdata,
1042 (*env)->DeleteLocalRef(env, jdata);
1051 (*env)->ReleasePrimitiveArrayCritical(env, jdata, dataP,
1063 (*env)->CallObjectMethod(env, jsm, g_SMGetPixelsMID,
1066 dataP = (int *) (*env)->GetPrimitiveArrayCritical(env, jdata,
1069 (*env)->DeleteLocalRef(env, jdata);
1076 (*env)->ReleasePrimitiveArrayCritical(env, jdata, dataP,
1082 (*env)->DeleteLocalRef(env, jdata);
1085 int awt_setPixelShort(JNIEnv *env, int band, RasterS_t *rasterP,
1100 jsm = (*env)->GetObjectField(env, rasterP->jraster, g_RasterSampleModelID);
1101 jdatabuffer = (*env)->GetObjectField(env, rasterP->jraster,
1104 JNU_ThrowInternalError(env, "Band out of range.");
1108 jdata = (*env)->NewIntArray(env, maxBytes*rasterP->numBands*maxLines);
1109 if (JNU_IsNull(env, jdata)) {
1110 JNU_ThrowOutOfMemoryError(env, "Out of Memory");
1121 dataP = (int *) (*env)->GetPrimitiveArrayCritical(env, jdata,
1124 (*env)->DeleteLocalRef(env, jdata);
1132 (*env)->ReleasePrimitiveArrayCritical(env, jdata, dataP,
1135 (*env)->CallVoidMethod(env, jsm, g_SMSetPixelsMID,
1148 dataP = (int *) (*env)->GetPrimitiveArrayCritical(env, jdata,
1151 (*env)->DeleteLocalRef(env, jdata);
1158 (*env)->ReleasePrimitiveArrayCritical(env, jdata, dataP,
1161 (*env)->CallVoidMethod(env, jsm, g_SMSetPixelsMID,
1168 (*env)->DeleteLocalRef(env, jdata);