@@ -2994,7 +3034,7 @@ public class GpuQuad{ // quad camera description
if(DEBUG8A){
cuMemcpyDtoH(Pointer.to(cpu_texture_indices_ovlp),gpu_texture_indices_ovlp,cpu_texture_indices_ovlp.length*Sizeof.INT);// hope that Float.floatToIntBits(fcorr_indices[i]) is not needed
Pointer.to(newfloat[]{(float)min_agree}),// float min_agree, // minimal number of channels to agree on a point (real number to work with fuzzy averages)
Pointer.to(gpu_color_weights),// float weights[3], // scale for R,B,G (or {1.0,0.0,0.0}
Pointer.to(newint[]{idust_remove}),// int dust_remove, // Do not reduce average weight when only one image differes much from the average
Pointer.to(newint[]{keep_weights}),// int keep_weights, // return channel weights after A in RGBA
// combining both non-overlap and overlap (each calculated if pointer is not null )
Pointer.to(newint[]{texture_stride_rgba}),// const size_t texture_rbga_stride, // in floats
Pointer.to(gpu_texture_indices_len),// int * num_texture_tiles,// number of texture tiles to process
Pointer.to(newint[]{ti_offset}),// int gpu_texture_indices_offset, // add to gpu_texture_indices (now complicated: if negative - add *(pnum_texture_tiles) and negate
Pointer.to(gpu_texture_indices_ovlp),// gpu_texture_indices_offset,// add to gpu_texture_indices
Pointer.to(newfloat[]{(float)min_agree}),// float min_agree, // minimal number of channels to agree on a point (real number to work with fuzzy averages)
Pointer.to(gpu_color_weights),// float weights[3], // scale for R,B,G (or {1.0,0.0,0.0}
Pointer.to(newint[]{idust_remove}),// int dust_remove, // Do not reduce average weight when only one image differes much from the average
Pointer.to(newint[]{keep_weights}),// int keep_weights, // return channel weights after A in RGBA
// combining both non-overlap and overlap (each calculated if pointer is not null )
Pointer.to(newint[]{texture_stride_rgba}),// const size_t texture_rbga_stride, // in floats
Pointer.to(newfloat[]{(float)min_agree}),// float min_agree, // minimal number of channels to agree on a point (real number to work with fuzzy averages)
Pointer.to(gpu_color_weights),// float weights[3], // scale for R,B,G (or {1.0,0.0,0.0}
Pointer.to(newint[]{idust_remove}),// int dust_remove, // Do not reduce average weight when only one image differes much from the average
Pointer.to(newint[]{keep_weights}),// int keep_weights, // return channel weights after A in RGBA
// combining both non-overlap and overlap (each calculated if pointer is not null )
Pointer.to(newint[]{texture_stride_rgba}),// const size_t texture_rbga_stride, // in floats
Pointer.to(newfloat[]{(float)min_agree}),// float min_agree, // minimal number of channels to agree on a point (real number to work with fuzzy averages)
Pointer.to(gpu_color_weights),// float weights[3], // scale for R,B,G (or {1.0,0.0,0.0}
Pointer.to(newint[]{idust_remove}),// int dust_remove, // Do not reduce average weight when only one image differes much from the average
Pointer.to(newint[]{keep_texture_weights}),// int keep_weights, // return channel weights after A in RGBA
// combining both non-overlap and overlap (each calculated if pointer is not null )
Pointer.to(newint[]{0}),// const size_t texture_rbga_stride, // in floats
Pointer.to(newint[]{ilinescan_order}),// 1, // int linescan_order, // if !=0 then output gpu_diff_rgb_combo in linescan order, else - in gpu_texture_indices order
@@ -3317,6 +3436,7 @@ public class GpuQuad{ // quad camera description
Pointer.to(newint[]{ilinescan_order}),// 1, // int linescan_order, // if !=0 then output gpu_diff_rgb_combo in linescan order, else - in gpu_texture_indices order