class JavaDoubleTest
{
	//--------------------------------------------------------------------------
	//Double test
	
	public static double Test(double param)
	{
		return 255.0 - param;
	}

	public static double[][][] Test3D(double[][][] param)
	{
		int i1, i2, i3, len1, len2, len3;

		len1 = param.length;
		for (i1=0; i1<len1; i1++)
		{
			len2 = param[i1].length;
			for (i2=0; i2<len2; i2++)
			{
				len3 = param[i1][i2].length;
				for (i3=0; i3<len3; i3++)
				{
					param[i1][i2][i3] = 255.0 - param[i1][i2][i3];
				}
			}
		}
		return param;
	}
	//--------------------------------------------------------------------------
	//Double Object test

	public static Double TestObj(Double param)
	{
		return new Double(255.0 - param.doubleValue());
	}

	public static Double[][][] TestObj3D(Double[][][] param)
	{
		int i1, i2, i3, len1, len2, len3;

		len1 = param.length;
		for (i1=0; i1<len1; i1++)
		{
			len2 = param[i1].length;
			for (i2=0; i2<len2; i2++)
			{
				len3 = param[i1][i2].length;
				for (i3=0; i3<len3; i3++)
				{
					param[i1][i2][i3] = new Double(255.0 - param[i1][i2][i3].doubleValue()); 
				}
			}
		}
		return param;
	}
}
