 /* Compute the voxel Id on a 1D table according to its 3D coordinates
   coordinates : 3D coordinates
 */
-__device__ int computeVoxelIDGrid(int coordinates[Point3D])
+__device__ int computeVoxelIDGrid(int coordinates[SizePoint3D])
 {
   int dimX = c_gridDims.x - 1;
   int dimY = c_gridDims.y - 1;


  // Compute the ID on depthmap values according to pixel position and depth map dimensions
  int depthMapId = computeVoxelIDDepth(pixel);
  TCompute depth = depths[depthMapId];
  if (depth == -1)
    {
    return;
    }
  int gridId = computeVoxelIDGrid(voxelIndex);  // Get the distance between voxel and camera
  TCompute realDepth = norm(voxelCenterCamera);
  TVolumetric newValue;
  rayPotential<TVolumetric>(realDepth, depth, newValue);
  // Update the value to the output


// ----------------------------------------------------------------------------
/* Compute the middle of a voxel according to constant global value and the origin of the voxel */
__device__ void computeVoxelCenter(int voxelCoordinate[SizePoint3D], TypeCompute output[SizePoint3D])
{
  output[0] = c_gridOrig[0] + (voxelCoordinate[0] + 0.5) * c_gridSpacing[0];
  output[1] = c_gridOrig[1] + (voxelCoordinate[1] + 0.5) * c_gridSpacing[1];
