| 285 | } |
| 286 | |
| 287 | JNIEXPORT jobject JNICALL Java_TexcLibraryJni_DefaultEncode(JNIEnv* env, jclass cls, jobject settings) |
| 288 | { |
| 289 | jobject obj = 0; |
| 290 | DM_JNI_GUARD_SCOPE_BEGIN(); |
| 291 | dmTexc::jni::ScopedContext jni_scope(env); |
| 292 | dmTexc::jni::TypeInfos* types = &jni_scope.m_TypeInfos; |
| 293 | |
| 294 | dmTexc::DefaultEncodeSettings input; |
| 295 | bool result = J2C_CreateDefaultEncodeSettings(env, types, settings, &input); |
| 296 | if (!result) |
| 297 | { |
| 298 | dmLogError("%s: J2C_CreateDefaultEncodeSettings. settings == %p", __FUNCTION__, settings); |
| 299 | return 0; |
| 300 | } |
| 301 | |
| 302 | // todo: support debug prints etc from commandline/environment variables |
| 303 | // printf("DefaultEncode:\n"); |
| 304 | // printf(" path: %s\n", input.m_Path?input.m_Path:"null"); |
| 305 | // printf(" width: %d\n", input.m_Width); |
| 306 | // printf(" height: %d\n", input.m_Height); |
| 307 | // printf(" pf: %d\n", input.m_PixelFormat); |
| 308 | // printf(" cs: %d\n", input.m_ColorSpace); |
| 309 | // printf(" data: %p\n", input.m_Data); |
| 310 | // printf(" sz: %u\n", input.m_DataCount); |
| 311 | |
| 312 | uint8_t* out = 0; |
| 313 | uint32_t out_size = 0; |
| 314 | result = dmTexc::DefaultEncode(&input, &out, &out_size); |
| 315 | if (!result) |
| 316 | { |
| 317 | dmLogError("%s: dmTexc::BasisUEncode failed", __FUNCTION__); |
| 318 | return 0; |
| 319 | } |
| 320 | |
| 321 | obj = dmJNI::C2J_CreateUByteArray(env, out, out_size); |
| 322 | |
| 323 | if (out) |
| 324 | free(out); |
| 325 | |
| 326 | DM_JNI_GUARD_SCOPE_END(return 0;); |
| 327 | return obj; |
| 328 | } |
| 329 | |
| 330 | |
| 331 |
nothing calls this directly
no test coverage detected