]>
Commit | Line | Data |
---|---|---|
52901ddc JB |
1 | --- OpenColorIO-2.2.1/src/bindings/java/CMakeLists.txt.orig 2023-01-06 03:05:59.000000000 +0100 |
2 | +++ OpenColorIO-2.2.1/src/bindings/java/CMakeLists.txt 2023-03-18 13:52:31.360067889 +0100 | |
3 | @@ -122,7 +122,7 @@ add_custom_command(OUTPUT ${JNIOCIO_HEAD | |
4 | COMMENT "Compiling .java files and creating jni C headers" | |
5 | ) | |
6 | add_custom_command(OUTPUT ${JNIOCIO_JAR} | |
7 | - COMMAND ${Java_JAVAH_EXECUTABLE} -jni -force ${JNIOCIO_CLASSES} | |
8 | + COMMAND ${Java_JAVAH_EXECUTABLE} -jni -force -cp ${CMAKE_CURRENT_BINARY_DIR} ${JNIOCIO_CLASSES} | |
9 | COMMAND ${Java_JAR_EXECUTABLE} vcfm ${JNIOCIO_JAR} Manifest.txt org | |
10 | DEPENDS ${JNIOCIO_HEADERS} JNI-directory | |
11 | WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} | |
12 | --- OpenColorIO-2.2.1/src/bindings/java/Manifest.txt.in.orig 2023-01-06 03:05:59.000000000 +0100 | |
13 | +++ OpenColorIO-2.2.1/src/bindings/java/Manifest.txt.in 2023-03-18 14:11:32.890550354 +0100 | |
14 | @@ -1,6 +1,3 @@ | |
15 | -# SPDX-License-Identifier: BSD-3-Clause | |
16 | -# Copyright Contributors to the OpenColorIO Project. | |
17 | - | |
18 | Name: org/OpenColorIO/ | |
19 | Specification-Title: OpenColorIO - Open Source Color Management | |
20 | Specification-Version: @OpenColorIO_VERSION@ | |
21 | --- OpenColorIO-2.2.1/src/bindings/java/JNIUtil.h.orig 2023-01-06 03:05:59.000000000 +0100 | |
22 | +++ OpenColorIO-2.2.1/src/bindings/java/JNIUtil.h 2023-03-18 21:41:48.937525222 +0100 | |
23 | @@ -41,7 +41,7 @@ typedef JObject <ConstTransformRcPtr, Tr | |
24 | typedef JObject <ConstAllocationTransformRcPtr, AllocationTransformRcPtr> AllocationTransformJNI; | |
25 | typedef JObject <ConstCDLTransformRcPtr, CDLTransformRcPtr> CDLTransformJNI; | |
26 | typedef JObject <ConstColorSpaceTransformRcPtr, ColorSpaceTransformRcPtr> ColorSpaceTransformJNI; | |
27 | -typedef JObject <ConstDisplayTransformRcPtr, DisplayTransformRcPtr> DisplayTransformJNI; | |
28 | +typedef JObject <ConstDisplayViewTransformRcPtr, DisplayViewTransformRcPtr> DisplayViewTransformJNI; | |
29 | typedef JObject <ConstExponentTransformRcPtr, ExponentTransformRcPtr> ExponentTransformJNI; | |
30 | typedef JObject <ConstFileTransformRcPtr, FileTransformRcPtr> FileTransformJNI; | |
31 | typedef JObject <ConstGroupTransformRcPtr, GroupTransformRcPtr> GroupTransformJNI; | |
32 | @@ -197,6 +197,52 @@ private: | |
33 | jfloatArray m_val; | |
34 | }; | |
35 | ||
36 | +class GetJDoubleArrayValue | |
37 | +{ | |
38 | +public: | |
39 | + GetJDoubleArrayValue(JNIEnv* env, jdoubleArray val, const char* name, int32_t len) { | |
40 | + CheckArrayLength(env, name, val, len); | |
41 | + m_env = env; | |
42 | + m_val = val; | |
43 | + if(val != NULL) m_ptr = env->GetDoubleArrayElements(val, JNI_FALSE); | |
44 | + } | |
45 | + ~GetJDoubleArrayValue() { | |
46 | + if(m_val != NULL) m_env->ReleaseDoubleArrayElements(m_val, m_ptr, JNI_FALSE); | |
47 | + m_val = NULL; | |
48 | + m_ptr = NULL; | |
49 | + } | |
50 | + jdouble* operator() () { | |
51 | + return m_ptr; | |
52 | + } | |
53 | +private: | |
54 | + JNIEnv* m_env; | |
55 | + jdouble* m_ptr; | |
56 | + jdoubleArray m_val; | |
57 | +}; | |
58 | + | |
59 | +class SetJDoubleArrayValue | |
60 | +{ | |
61 | +public: | |
62 | + SetJDoubleArrayValue(JNIEnv* env, jdoubleArray val, const char* name, int32_t len) { | |
63 | + CheckArrayLength(env, name, val, len); | |
64 | + m_env = env; | |
65 | + m_val = val; | |
66 | + if(val != NULL) m_tmp.resize(len); | |
67 | + } | |
68 | + ~SetJDoubleArrayValue() { | |
69 | + if(m_val != NULL) m_env->SetDoubleArrayRegion(m_val, 0, m_tmp.size(), &m_tmp[0]); | |
70 | + m_val = NULL; | |
71 | + m_tmp.clear(); | |
72 | + } | |
73 | + double* operator() () { | |
74 | + return &m_tmp[0]; | |
75 | + } | |
76 | +private: | |
77 | + JNIEnv* m_env; | |
78 | + std::vector<double> m_tmp; | |
79 | + jdoubleArray m_val; | |
80 | +}; | |
81 | + | |
82 | class GetJIntArrayValue | |
83 | { | |
84 | public: | |
85 | --- OpenColorIO-2.2.1/src/bindings/java/JNIBaker.cpp.orig 2023-01-06 03:05:59.000000000 +0100 | |
86 | +++ OpenColorIO-2.2.1/src/bindings/java/JNIBaker.cpp 2023-03-18 20:05:24.725527655 +0100 | |
87 | @@ -75,42 +75,6 @@ Java_org_OpenColorIO_Baker_getFormat(JNI | |
88 | } | |
89 | ||
90 | JNIEXPORT void JNICALL | |
91 | -Java_org_OpenColorIO_Baker_setType(JNIEnv * env, jobject self, jstring type) | |
92 | -{ | |
93 | - OCIO_JNITRY_ENTER() | |
94 | - BakerRcPtr bake = GetEditableJOCIO<BakerRcPtr, BakerJNI>(env, self); | |
95 | - bake->setType(GetJStringValue(env, type)()); | |
96 | - OCIO_JNITRY_EXIT() | |
97 | -} | |
98 | - | |
99 | -JNIEXPORT jstring JNICALL | |
100 | -Java_org_OpenColorIO_Baker_getType(JNIEnv * env, jobject self) | |
101 | -{ | |
102 | - OCIO_JNITRY_ENTER() | |
103 | - ConstBakerRcPtr bake = GetConstJOCIO<ConstBakerRcPtr, BakerJNI>(env, self); | |
104 | - return env->NewStringUTF(bake->getType()); | |
105 | - OCIO_JNITRY_EXIT(NULL) | |
106 | -} | |
107 | - | |
108 | -JNIEXPORT void JNICALL | |
109 | -Java_org_OpenColorIO_Baker_setMetadata(JNIEnv * env, jobject self, jstring metadata) | |
110 | -{ | |
111 | - OCIO_JNITRY_ENTER() | |
112 | - BakerRcPtr bake = GetEditableJOCIO<BakerRcPtr, BakerJNI>(env, self); | |
113 | - bake->setMetadata(GetJStringValue(env, metadata)()); | |
114 | - OCIO_JNITRY_EXIT() | |
115 | -} | |
116 | - | |
117 | -JNIEXPORT jstring JNICALL | |
118 | -Java_org_OpenColorIO_Baker_getMetadata(JNIEnv * env, jobject self) | |
119 | -{ | |
120 | - OCIO_JNITRY_ENTER() | |
121 | - ConstBakerRcPtr bake = GetConstJOCIO<ConstBakerRcPtr, BakerJNI>(env, self); | |
122 | - return env->NewStringUTF(bake->getMetadata()); | |
123 | - OCIO_JNITRY_EXIT(NULL) | |
124 | -} | |
125 | - | |
126 | -JNIEXPORT void JNICALL | |
127 | Java_org_OpenColorIO_Baker_setInputSpace(JNIEnv * env, jobject self, jstring inputSpace) | |
128 | { | |
129 | OCIO_JNITRY_ENTER() | |
130 | --- OpenColorIO-2.2.1/src/bindings/java/JNIConfig.cpp.orig 2023-03-19 08:32:19.096080705 +0100 | |
131 | +++ OpenColorIO-2.2.1/src/bindings/java/JNIConfig.cpp 2023-03-19 08:32:21.976065103 +0100 | |
132 | @@ -390,21 +390,21 @@ Java_org_OpenColorIO_Config_getView(JNIE | |
133 | } | |
134 | ||
135 | JNIEXPORT jstring JNICALL | |
136 | -Java_org_OpenColorIO_Config_getDisplayColorSpaceName(JNIEnv * env, jobject self, jstring display, jstring view) | |
137 | +Java_org_OpenColorIO_Config_getDisplayViewColorSpaceName(JNIEnv * env, jobject self, jstring display, jstring view) | |
138 | { | |
139 | OCIO_JNITRY_ENTER() | |
140 | ConstConfigRcPtr cfg = GetConstJOCIO<ConstConfigRcPtr, ConfigJNI>(env, self); | |
141 | - return env->NewStringUTF(cfg->getDisplayColorSpaceName(GetJStringValue(env, display)(), | |
142 | + return env->NewStringUTF(cfg->getDisplayViewColorSpaceName(GetJStringValue(env, display)(), | |
143 | GetJStringValue(env, view)())); | |
144 | OCIO_JNITRY_EXIT(NULL) | |
145 | } | |
146 | ||
147 | JNIEXPORT jstring JNICALL | |
148 | -Java_org_OpenColorIO_Config_getDisplayLooks(JNIEnv * env, jobject self, jstring display, jstring view) | |
149 | +Java_org_OpenColorIO_Config_getDisplayViewLooks(JNIEnv * env, jobject self, jstring display, jstring view) | |
150 | { | |
151 | OCIO_JNITRY_ENTER() | |
152 | ConstConfigRcPtr cfg = GetConstJOCIO<ConstConfigRcPtr, ConfigJNI>(env, self); | |
153 | - return env->NewStringUTF(cfg->getDisplayLooks(GetJStringValue(env, display)(), | |
154 | + return env->NewStringUTF(cfg->getDisplayViewLooks(GetJStringValue(env, display)(), | |
155 | GetJStringValue(env, view)())); | |
156 | OCIO_JNITRY_EXIT(NULL) | |
157 | } | |
158 | @@ -471,20 +471,20 @@ Java_org_OpenColorIO_Config_getActiveVie | |
159 | } | |
160 | ||
161 | JNIEXPORT void JNICALL | |
162 | -Java_org_OpenColorIO_Config_getDefaultLumaCoefs(JNIEnv * env, jobject self, jfloatArray rgb) | |
163 | +Java_org_OpenColorIO_Config_getDefaultLumaCoefs(JNIEnv * env, jobject self, jdoubleArray rgb) | |
164 | { | |
165 | OCIO_JNITRY_ENTER() | |
166 | ConstConfigRcPtr cfg = GetConstJOCIO<ConstConfigRcPtr, ConfigJNI>(env, self); | |
167 | - cfg->getDefaultLumaCoefs(SetJFloatArrayValue(env, rgb, "rgb", 3)()); | |
168 | + cfg->getDefaultLumaCoefs(SetJDoubleArrayValue(env, rgb, "rgb", 3)()); | |
169 | OCIO_JNITRY_EXIT() | |
170 | } | |
171 | ||
172 | JNIEXPORT void JNICALL | |
173 | -Java_org_OpenColorIO_Config_setDefaultLumaCoefs(JNIEnv * env, jobject self, jfloatArray rgb) | |
174 | +Java_org_OpenColorIO_Config_setDefaultLumaCoefs(JNIEnv * env, jobject self, jdoubleArray rgb) | |
175 | { | |
176 | OCIO_JNITRY_ENTER() | |
177 | ConfigRcPtr cfg = GetEditableJOCIO<ConfigRcPtr, ConfigJNI>(env, self); | |
178 | - cfg->setDefaultLumaCoefs(GetJFloatArrayValue(env, rgb, "rgb", 3)()); | |
179 | + cfg->setDefaultLumaCoefs(GetJDoubleArrayValue(env, rgb, "rgb", 3)()); | |
180 | OCIO_JNITRY_EXIT() | |
181 | } | |
182 | ||
183 | --- OpenColorIO-2.2.1/src/bindings/java/JNIGlobals.cpp.orig 2023-01-06 03:05:59.000000000 +0100 | |
184 | +++ OpenColorIO-2.2.1/src/bindings/java/JNIGlobals.cpp 2023-03-19 20:10:46.705714386 +0100 | |
185 | @@ -209,14 +209,6 @@ Java_org_OpenColorIO_Globals_CombineTran | |
186 | ||
187 | // ColorSpaceDirection | |
188 | ||
189 | -JNIEXPORT jstring JNICALL | |
190 | -Java_org_OpenColorIO_ColorSpaceDirection_toString(JNIEnv * env, jobject self) { | |
191 | - OCIO_JNITRY_ENTER() | |
192 | - return env->NewStringUTF( | |
193 | - ColorSpaceDirectionToString(GetJEnum<ColorSpaceDirection>(env, self))); | |
194 | - OCIO_JNITRY_EXIT(NULL) | |
195 | -} | |
196 | - | |
197 | JNIEXPORT jboolean JNICALL | |
198 | Java_org_OpenColorIO_ColorSpaceDirection_equals(JNIEnv * env, jobject self, jobject obj) { | |
199 | OCIO_JNITRY_ENTER() | |
200 | @@ -225,22 +217,6 @@ Java_org_OpenColorIO_ColorSpaceDirection | |
201 | OCIO_JNITRY_EXIT(false) | |
202 | } | |
203 | ||
204 | -JNIEXPORT jstring JNICALL | |
205 | -Java_org_OpenColorIO_Globals_ColorSpaceDirectionToString(JNIEnv * env, jobject, jobject dir) { | |
206 | - OCIO_JNITRY_ENTER() | |
207 | - return env->NewStringUTF( | |
208 | - ColorSpaceDirectionToString(GetJEnum<ColorSpaceDirection>(env, dir))); | |
209 | - OCIO_JNITRY_EXIT(NULL) | |
210 | -} | |
211 | - | |
212 | -JNIEXPORT jobject JNICALL | |
213 | -Java_org_OpenColorIO_Globals_ColorSpaceDirectionFromString(JNIEnv * env, jobject, jstring s) { | |
214 | - OCIO_JNITRY_ENTER() | |
215 | - return BuildJEnum(env, "org/OpenColorIO/ColorSpaceDirection", | |
216 | - ColorSpaceDirectionFromString(GetJStringValue(env, s)())); | |
217 | - OCIO_JNITRY_EXIT(NULL) | |
218 | -} | |
219 | - | |
220 | // BitDepth | |
221 | ||
222 | JNIEXPORT jstring JNICALL | |
223 | --- OpenColorIO-2.2.1/src/bindings/java/JNIGpuShaderDesc.cpp.orig 2023-01-06 03:05:59.000000000 +0100 | |
224 | +++ OpenColorIO-2.2.1/src/bindings/java/JNIGpuShaderDesc.cpp 2023-03-19 21:32:20.619201781 +0100 | |
225 | @@ -9,16 +9,6 @@ | |
226 | #include "JNIUtil.h" | |
227 | using namespace OCIO_NAMESPACE; | |
228 | ||
229 | -namespace | |
230 | -{ | |
231 | - | |
232 | -void GpuShaderDesc_deleter(GpuShaderDesc* d) | |
233 | -{ | |
234 | - delete d; | |
235 | -} | |
236 | - | |
237 | -}; // end anon namespace | |
238 | - | |
239 | JNIEXPORT void JNICALL | |
240 | Java_org_OpenColorIO_GpuShaderDesc_create(JNIEnv * env, jobject self) { | |
241 | OCIO_JNITRY_ENTER() | |
242 | @@ -26,7 +16,7 @@ Java_org_OpenColorIO_GpuShaderDesc_creat | |
243 | jnistruct->back_ptr = env->NewGlobalRef(self); | |
244 | jnistruct->constcppobj = new ConstGpuShaderDescRcPtr(); | |
245 | jnistruct->cppobj = new GpuShaderDescRcPtr(); | |
246 | - *jnistruct->cppobj = GpuShaderDescRcPtr(new GpuShaderDesc(), &GpuShaderDesc_deleter); | |
247 | + *jnistruct->cppobj = GpuShaderDesc::CreateShaderDesc(); | |
248 | jnistruct->isconst = false; | |
249 | jclass wclass = env->GetObjectClass(self); | |
250 | jfieldID fid = env->GetFieldID(wclass, "m_impl", "J"); | |
251 | @@ -75,22 +65,6 @@ Java_org_OpenColorIO_GpuShaderDesc_getFu | |
252 | OCIO_JNITRY_EXIT(NULL) | |
253 | } | |
254 | ||
255 | -JNIEXPORT void JNICALL | |
256 | -Java_org_OpenColorIO_GpuShaderDesc_setLut3DEdgeLen(JNIEnv * env, jobject self, jint len) { | |
257 | - OCIO_JNITRY_ENTER() | |
258 | - GpuShaderDescRcPtr ptr = GetEditableJOCIO<GpuShaderDescRcPtr, GpuShaderDescJNI>(env, self); | |
259 | - ptr->setLut3DEdgeLen((int)len); | |
260 | - OCIO_JNITRY_EXIT() | |
261 | -} | |
262 | - | |
263 | -JNIEXPORT jint JNICALL | |
264 | -Java_org_OpenColorIO_GpuShaderDesc_getLut3DEdgeLen(JNIEnv * env, jobject self) { | |
265 | - OCIO_JNITRY_ENTER() | |
266 | - ConstGpuShaderDescRcPtr ptr = GetConstJOCIO<ConstGpuShaderDescRcPtr, GpuShaderDescJNI>(env, self); | |
267 | - return (jint)ptr->getLut3DEdgeLen(); | |
268 | - OCIO_JNITRY_EXIT(0) | |
269 | -} | |
270 | - | |
271 | JNIEXPORT jstring JNICALL | |
272 | Java_org_OpenColorIO_GpuShaderDesc_getCacheID(JNIEnv * env, jobject self) { | |
273 | OCIO_JNITRY_ENTER() | |
274 | --- OpenColorIO-2.2.1/src/bindings/java/JNIImageDesc.cpp.orig 2023-01-06 03:05:59.000000000 +0100 | |
275 | +++ OpenColorIO-2.2.1/src/bindings/java/JNIImageDesc.cpp 2023-03-19 21:52:08.522766355 +0100 | |
276 | @@ -55,7 +55,7 @@ Java_org_OpenColorIO_PackedImageDesc_cre | |
277 | jnistruct->constcppobj = new ConstImageDescRcPtr(); | |
278 | jnistruct->cppobj = new ImageDescRcPtr(); | |
279 | *jnistruct->cppobj = ImageDescRcPtr(new PackedImageDesc(_data, (long)width, | |
280 | - (long)height, (long)numChannels, (long)chanStrideBytes, (long) xStrideBytes, | |
281 | + (long)height, (long)numChannels, BIT_DEPTH_F32, (long)chanStrideBytes, (long) xStrideBytes, | |
282 | (long)yStrideBytes), &ImageDesc_deleter); | |
283 | jnistruct->isconst = false; | |
284 | jclass wclass = env->GetObjectClass(self); | |
285 | @@ -79,7 +79,7 @@ Java_org_OpenColorIO_PackedImageDesc_get | |
286 | ConstImageDescRcPtr img = GetConstJOCIO<ConstImageDescRcPtr, ImageDescJNI>(env, self); | |
287 | ConstPackedImageDescRcPtr ptr = DynamicPtrCast<const PackedImageDesc>(img); | |
288 | int size = ptr->getWidth() * ptr->getHeight() * ptr->getNumChannels(); | |
289 | - return NewJFloatBuffer(env, ptr->getData(), size); | |
290 | + return NewJFloatBuffer(env, static_cast<float*>(ptr->getData()), size); | |
291 | OCIO_JNITRY_EXIT(NULL) | |
292 | } | |
293 | ||
294 | @@ -201,7 +201,7 @@ JNICALL Java_org_OpenColorIO_PlanarImage | |
295 | jnistruct->constcppobj = new ConstImageDescRcPtr(); | |
296 | jnistruct->cppobj = new ImageDescRcPtr(); | |
297 | *jnistruct->cppobj = ImageDescRcPtr(new PlanarImageDesc(_rdata, _gdata, _bdata, | |
298 | - _adata, (long)width, (long)height, (long)yStrideBytes), &ImageDesc_deleter); | |
299 | + _adata, (long)width, (long)height, BIT_DEPTH_F32, 0, (long)yStrideBytes), &ImageDesc_deleter); | |
300 | jnistruct->isconst = false; | |
301 | jclass wclass = env->GetObjectClass(self); | |
302 | jfieldID fid = env->GetFieldID(wclass, "m_impl", "J"); | |
303 | @@ -216,7 +216,7 @@ Java_org_OpenColorIO_PlanarImageDesc_get | |
304 | ConstImageDescRcPtr img = GetConstJOCIO<ConstImageDescRcPtr, ImageDescJNI>(env, self); | |
305 | ConstPlanarImageDescRcPtr ptr = DynamicPtrCast<const PlanarImageDesc>(img); | |
306 | int size = ptr->getWidth() * ptr->getHeight(); | |
307 | - return NewJFloatBuffer(env, ptr->getRData(), size); | |
308 | + return NewJFloatBuffer(env, static_cast<float*>(ptr->getRData()), size); | |
309 | OCIO_JNITRY_EXIT(NULL) | |
310 | } | |
311 | ||
312 | @@ -227,7 +227,7 @@ Java_org_OpenColorIO_PlanarImageDesc_get | |
313 | ConstImageDescRcPtr img = GetConstJOCIO<ConstImageDescRcPtr, ImageDescJNI>(env, self); | |
314 | ConstPlanarImageDescRcPtr ptr = DynamicPtrCast<const PlanarImageDesc>(img); | |
315 | int size = ptr->getWidth() * ptr->getHeight(); | |
316 | - return NewJFloatBuffer(env, ptr->getGData(), size); | |
317 | + return NewJFloatBuffer(env, static_cast<float*>(ptr->getGData()), size); | |
318 | OCIO_JNITRY_EXIT(NULL) | |
319 | } | |
320 | ||
321 | @@ -238,7 +238,7 @@ Java_org_OpenColorIO_PlanarImageDesc_get | |
322 | ConstImageDescRcPtr img = GetConstJOCIO<ConstImageDescRcPtr, ImageDescJNI>(env, self); | |
323 | ConstPlanarImageDescRcPtr ptr = DynamicPtrCast<const PlanarImageDesc>(img); | |
324 | int size = ptr->getWidth() * ptr->getHeight(); | |
325 | - return NewJFloatBuffer(env, ptr->getBData(), size); | |
326 | + return NewJFloatBuffer(env, static_cast<float*>(ptr->getBData()), size); | |
327 | OCIO_JNITRY_EXIT(NULL) | |
328 | } | |
329 | ||
330 | @@ -249,7 +249,7 @@ Java_org_OpenColorIO_PlanarImageDesc_get | |
331 | ConstImageDescRcPtr img = GetConstJOCIO<ConstImageDescRcPtr, ImageDescJNI>(env, self); | |
332 | ConstPlanarImageDescRcPtr ptr = DynamicPtrCast<const PlanarImageDesc>(img); | |
333 | int size = ptr->getWidth() * ptr->getHeight(); | |
334 | - return NewJFloatBuffer(env, ptr->getAData(), size); | |
335 | + return NewJFloatBuffer(env, static_cast<float*>(ptr->getAData()), size); | |
336 | OCIO_JNITRY_EXIT(NULL) | |
337 | } | |
338 |