jdk/src/share/demo/java2d/J2DBench/src/j2dbench/tests/cmm/DataConversionTests.java
author bae
Mon, 24 Dec 2012 14:22:23 +0400
changeset 14885 ef6e0146b778
child 26349 137d39d10ffa
permissions -rw-r--r--
8005402: Need to provide benchmarks for color management Reviewed-by: jgodinez, prr
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
14885
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
     1
/*
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
     2
 * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
     3
 *
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
     4
 * Redistribution and use in source and binary forms, with or without
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
     5
 * modification, are permitted provided that the following conditions
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
     6
 * are met:
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
     7
 *
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
     8
 *   - Redistributions of source code must retain the above copyright
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
     9
 *     notice, this list of conditions and the following disclaimer.
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    10
 *
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    11
 *   - Redistributions in binary form must reproduce the above copyright
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    12
 *     notice, this list of conditions and the following disclaimer in the
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    13
 *     documentation and/or other materials provided with the distribution.
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    14
 *
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    15
 *   - Neither the name of Oracle nor the names of its
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    16
 *     contributors may be used to endorse or promote products derived
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    17
 *     from this software without specific prior written permission.
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    18
 *
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    19
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    20
 * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    21
 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    22
 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    23
 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    24
 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    25
 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    26
 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    27
 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    28
 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    29
 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    30
 */
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    31
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    32
/*
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    33
 * This source code is provided to illustrate the usage of a given feature
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    34
 * or technique and has been deliberately simplified. Additional steps
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    35
 * required for a production-quality application, such as security checks,
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    36
 * input validation and proper error handling, might not be present in
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    37
 * this sample code.
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    38
 */
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    39
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    40
package j2dbench.tests.cmm;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    41
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    42
import j2dbench.Group;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    43
import j2dbench.Result;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    44
import j2dbench.TestEnvironment;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    45
import java.awt.color.ColorSpace;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    46
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    47
public class DataConversionTests extends ColorConversionTests {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    48
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    49
    protected static Group dataConvRoot;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    50
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    51
    public static void init() {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    52
        dataConvRoot = new Group(colorConvRoot, "data", "Data Conversoion Tests");
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    53
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    54
        new FromRGBTest();
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    55
        new ToRGBTest();
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    56
        new FromCIEXYZTest();
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    57
        new ToCIEXYZTest();
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    58
    }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    59
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    60
    public DataConversionTests(Group parent, String nodeName, String description) {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    61
        super(parent, nodeName, description);
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    62
    }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    63
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    64
    protected static class Context {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    65
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    66
        ColorSpace cs;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    67
        int numComponents;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    68
        float[] val;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    69
        float[] rgb;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    70
        float[] cie;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    71
        TestEnvironment env;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    72
        Result res;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    73
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    74
        public Context(TestEnvironment env, Result result, ColorSpace cs) {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    75
            this.cs = cs;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    76
            this.env = env;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    77
            this.res = result;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    78
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    79
            numComponents = cs.getNumComponents();
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    80
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    81
            val = new float[numComponents];
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    82
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    83
            for (int i = 0; i < numComponents; i++) {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    84
                float min = cs.getMinValue(i);
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    85
                float max = cs.getMaxValue(i);
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    86
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    87
                val[i] = 0.5f * (max - min);
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    88
            }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    89
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    90
            rgb = new float[]{0.5f, 0.5f, 0.5f};
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    91
            cie = new float[]{0.5f, 0.5f, 0.5f};
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    92
        }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    93
    }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    94
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    95
    @Override
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    96
    public Object initTest(TestEnvironment env, Result result) {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    97
        ColorSpace cs = getColorSpace(env);
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    98
        return new Context(env, result, cs);
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
    99
    }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   100
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   101
    @Override
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   102
    public void cleanupTest(TestEnvironment te, Object o) {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   103
    }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   104
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   105
    private static class FromRGBTest extends DataConversionTests {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   106
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   107
        public FromRGBTest() {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   108
            super(dataConvRoot,
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   109
                    "fromRGB",
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   110
                    "ColorSpace.fromRGB()");
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   111
        }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   112
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   113
        public void runTest(Object ctx, int numReps) {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   114
            final Context ictx = (Context) ctx;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   115
            final ColorSpace cs = ictx.cs;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   116
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   117
            final float[] rgb = ictx.rgb;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   118
            do {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   119
                try {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   120
                    cs.fromRGB(rgb);
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   121
                } catch (Exception e) {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   122
                    e.printStackTrace();
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   123
                }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   124
            } while (--numReps >= 0);
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   125
        }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   126
    }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   127
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   128
    private static class FromCIEXYZTest extends DataConversionTests {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   129
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   130
        public FromCIEXYZTest() {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   131
            super(dataConvRoot,
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   132
                    "fromCIEXYZ",
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   133
                    "ColorSpace.fromCIEXYZ()");
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   134
        }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   135
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   136
        public void runTest(Object ctx, int numReps) {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   137
            final Context ictx = (Context) ctx;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   138
            final ColorSpace cs = ictx.cs;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   139
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   140
            final float[] val = ictx.cie;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   141
            do {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   142
                try {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   143
                    cs.fromCIEXYZ(val);
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   144
                } catch (Exception e) {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   145
                    e.printStackTrace();
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   146
                }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   147
            } while (--numReps >= 0);
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   148
        }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   149
    }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   150
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   151
    private static class ToCIEXYZTest extends DataConversionTests {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   152
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   153
        public ToCIEXYZTest() {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   154
            super(dataConvRoot,
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   155
                    "toCIEXYZ",
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   156
                    "ColorSpace.toCIEXYZ()");
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   157
        }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   158
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   159
        public void runTest(Object ctx, int numReps) {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   160
            final Context ictx = (Context) ctx;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   161
            final ColorSpace cs = ictx.cs;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   162
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   163
            final float[] val = ictx.val;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   164
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   165
            do {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   166
                try {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   167
                    cs.toCIEXYZ(val);
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   168
                } catch (Exception e) {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   169
                    e.printStackTrace();
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   170
                }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   171
            } while (--numReps >= 0);
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   172
        }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   173
    }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   174
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   175
    private static class ToRGBTest extends DataConversionTests {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   176
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   177
        public ToRGBTest() {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   178
            super(dataConvRoot,
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   179
                    "toRGB",
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   180
                    "ColorSpace.toRGB()");
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   181
        }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   182
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   183
        public void runTest(Object ctx, int numReps) {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   184
            final Context ictx = (Context) ctx;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   185
            final ColorSpace cs = ictx.cs;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   186
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   187
            final float[] val = ictx.val;
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   188
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   189
            do {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   190
                try {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   191
                    cs.toRGB(val);
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   192
                } catch (Exception e) {
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   193
                    e.printStackTrace();
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   194
                }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   195
            } while (--numReps >= 0);
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   196
        }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   197
    }
ef6e0146b778 8005402: Need to provide benchmarks for color management
bae
parents:
diff changeset
   198
}