wData = Helper.createPlane(planeDef, w, metadata, pixels);
wData = PlaneFactory.createPlane(planeDef, w, metadata, pixels);
    private RenderRGBWaveTask[] makeRndTasks(PlaneDef planeDef,                                             RGBBuffer renderedDataBuf)     {        ArrayList tasks = new ArrayList(3);                //Get all objects we need to create the tasks.        Plane2D wData;        QuantumManager qManager = renderer.getQuantumManager();        ChannelBinding[] cBindings =                                 renderer.getChannelBindings();        CodomainChain cc = renderer.getCodomainChain();        PixelBuffer pixels = renderer.getPixels();        Pixels metadata = renderer.getMetadata();        RenderingStats performanceStats = renderer.getStats();                //Create a task for each active wavelength.        for (int w = 0; w < cBindings.length; w++) {            if (tasks.size() == 3) break;  //We only render 3 w at most.            if (cBindings[w].getActive().booleanValue()) {                //Get the raw data.                performanceStats.startIO(w);                wData = Helper.createPlane(planeDef, w, metadata, pixels);                performanceStats.endIO(w);                                //Create a rendering task for this wavelength.                tasks.add(new RenderRGBWaveTask(                         getColorBand(renderedDataBuf, cBindings[w].getColor()),                          wData, qManager.getStrategyFor(w), cc,                          cBindings[w].getColor().getAlpha().intValue(),                         sizeX1, sizeX2));            }        }                //Turn the list into an array an return it.        RenderRGBWaveTask[] t = new RenderRGBWaveTask[tasks.size()];        return (RenderRGBWaveTask[]) tasks.toArray(t);    }