|
@@ -184,7 +184,7 @@ ufo_anka_backproject_task_process (UfoTask *task,
|
|
|
UfoProfiler *profiler;
|
|
|
gfloat tomo_angle;
|
|
|
/* regions stripped off the "to" value */
|
|
|
- gint x_region[2], y_region[2], z_region[2], proj_offset[2];
|
|
|
+ gfloat x_region[2], y_region[2], z_region[2], proj_offset[2];
|
|
|
cl_command_queue cmd_queue;
|
|
|
cl_mem image;
|
|
|
cl_mem out_mem;
|
|
@@ -195,17 +195,17 @@ ufo_anka_backproject_task_process (UfoTask *task,
|
|
|
out_mem = ufo_buffer_get_device_array (output, cmd_queue);
|
|
|
image = ufo_buffer_get_device_image (inputs[0], cmd_queue);
|
|
|
|
|
|
- x_region[0] = EXTRACT_INT (priv->x_region, 0);
|
|
|
- x_region[1] = EXTRACT_INT (priv->x_region, 2);
|
|
|
+ x_region[0] = (gfloat) EXTRACT_INT (priv->x_region, 0);
|
|
|
+ x_region[1] = (gfloat) EXTRACT_INT (priv->x_region, 2);
|
|
|
|
|
|
- y_region[0] = EXTRACT_INT (priv->y_region, 0);
|
|
|
- y_region[1] = EXTRACT_INT (priv->y_region, 2);
|
|
|
+ y_region[0] = (gfloat) EXTRACT_INT (priv->y_region, 0);
|
|
|
+ y_region[1] = (gfloat) EXTRACT_INT (priv->y_region, 2);
|
|
|
|
|
|
- z_region[0] = EXTRACT_INT (priv->z_region, 0);
|
|
|
- z_region[1] = EXTRACT_INT (priv->z_region, 2);
|
|
|
+ z_region[0] = (gfloat) EXTRACT_INT (priv->z_region, 0);
|
|
|
+ z_region[1] = (gfloat) EXTRACT_INT (priv->z_region, 2);
|
|
|
|
|
|
- proj_offset[0] = EXTRACT_INT (priv->projection_offset, 0);
|
|
|
- proj_offset[1] = EXTRACT_INT (priv->projection_offset, 1);
|
|
|
+ proj_offset[0] = (gfloat) EXTRACT_INT (priv->projection_offset, 0);
|
|
|
+ proj_offset[1] = (gfloat) EXTRACT_INT (priv->projection_offset, 1);
|
|
|
|
|
|
|
|
|
tomo_angle = priv->tomo_angle_is_absolute ? priv->tomo_angle : priv->tomo_angle * priv->count;
|
|
@@ -214,11 +214,11 @@ ufo_anka_backproject_task_process (UfoTask *task,
|
|
|
UFO_RESOURCES_CHECK_CLERR (clSetKernelArg (priv->bp_kernel, 0, sizeof (cl_mem), &out_mem));
|
|
|
UFO_RESOURCES_CHECK_CLERR (clSetKernelArg (priv->bp_kernel, 1, sizeof (cl_mem), &image));
|
|
|
UFO_RESOURCES_CHECK_CLERR (clSetKernelArg (priv->bp_kernel, 2, sizeof (cl_sampler), &priv->sampler));
|
|
|
- UFO_RESOURCES_CHECK_CLERR (clSetKernelArg (priv->bp_kernel, 3, sizeof (cl_int2), x_region));
|
|
|
- UFO_RESOURCES_CHECK_CLERR (clSetKernelArg (priv->bp_kernel, 4, sizeof (cl_int2), y_region));
|
|
|
- UFO_RESOURCES_CHECK_CLERR (clSetKernelArg (priv->bp_kernel, 5, sizeof (cl_int2), z_region));
|
|
|
+ UFO_RESOURCES_CHECK_CLERR (clSetKernelArg (priv->bp_kernel, 3, sizeof (cl_float2), x_region));
|
|
|
+ UFO_RESOURCES_CHECK_CLERR (clSetKernelArg (priv->bp_kernel, 4, sizeof (cl_float2), y_region));
|
|
|
+ UFO_RESOURCES_CHECK_CLERR (clSetKernelArg (priv->bp_kernel, 5, sizeof (cl_float2), z_region));
|
|
|
UFO_RESOURCES_CHECK_CLERR (clSetKernelArg (priv->bp_kernel, 6, sizeof (cl_float8), priv->tmatrix));
|
|
|
- UFO_RESOURCES_CHECK_CLERR (clSetKernelArg (priv->bp_kernel, 7, sizeof (cl_int2), proj_offset));
|
|
|
+ UFO_RESOURCES_CHECK_CLERR (clSetKernelArg (priv->bp_kernel, 7, sizeof (cl_float2), proj_offset));
|
|
|
UFO_RESOURCES_CHECK_CLERR (clSetKernelArg (priv->bp_kernel, 8, sizeof (cl_uint), (cl_uint *) &priv->count));
|
|
|
|
|
|
profiler = ufo_task_node_get_profiler (UFO_TASK_NODE (task));
|