uk.ac.starlink.ttools.plot2
Class SubCloud

java.lang.Object
  extended by uk.ac.starlink.ttools.plot2.SubCloud

@Equality
public class SubCloud
extends Object

Aggregates the DataGeom and the geometry-specific parts of the DataSpec for a layer. This defines one set of positions that it will return for a given tuple sequence (one position per tuple).

Equality is implemented so that two equal subclouds have the same geom and coordinate columns. This means they will iterate over the same data positions for a given tuple sequence, but not necessarily that they have the same DataSpec objects or coordinate index positions.

Since:
29 Nov 2013
Author:
Mark Taylor

Constructor Summary
SubCloud(DataGeom geom, DataSpec spec, int iPosCoord)
          Constructor.
 
Method Summary
static SubCloud[] createPartialSubClouds(PlotLayer[] layers, boolean deduplicate)
          Returns a collection of subclouds from a list of layers, but including only those layers whose positions are partial.
static SubCloud[] createSubClouds(DataGeom geom, DataSpec spec, int npos, boolean deduplicate)
          Returns a collection of subclouds for a number of positions from a data spec.
static SubCloud[] createSubClouds(PlotLayer[] layers, boolean deduplicate)
          Returns an array of subclouds from a list of layers, with optional deduplication.
 boolean equals(Object o)
           
 DataGeom getDataGeom()
          Returns the data geom for this subcloud.
 DataSpec getDataSpec()
          Returns the data spec for this subcloud.
 int getPosCoordIndex()
          Returns the index of the data spec coordinate at which the position information starts for this subcloud.
 int hashCode()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SubCloud

public SubCloud(DataGeom geom,
                DataSpec spec,
                int iPosCoord)
Constructor.

Parameters:
geom - data geom
spec - data spec
iPosCoord - index of coordinate at which position information starts in the DataSpec
Method Detail

getDataGeom

public DataGeom getDataGeom()
Returns the data geom for this subcloud.

Returns:
geom

getDataSpec

public DataSpec getDataSpec()
Returns the data spec for this subcloud.

Returns:
spec

getPosCoordIndex

public int getPosCoordIndex()
Returns the index of the data spec coordinate at which the position information starts for this subcloud.

Returns:
position coordinate index

hashCode

public int hashCode()
Overrides:
hashCode in class Object

equals

public boolean equals(Object o)
Overrides:
equals in class Object

createSubClouds

public static SubCloud[] createSubClouds(PlotLayer[] layers,
                                         boolean deduplicate)
Returns an array of subclouds from a list of layers, with optional deduplication.

Parameters:
layers - plot layers
deduplicate - true to cull duplicate subclouds
Returns:
subclouds

createPartialSubClouds

public static SubCloud[] createPartialSubClouds(PlotLayer[] layers,
                                                boolean deduplicate)
Returns a collection of subclouds from a list of layers, but including only those layers whose positions are partial. This means that the data position coordinate arrays will have some elements NaN, indicating something other than an actual point in the data space - for instance a vertical or horizontal line.

Parameters:
layers - plot layers
deduplicate - true to cull duplicate subclouds
Returns:
subclouds from partial position layers only

createSubClouds

public static SubCloud[] createSubClouds(DataGeom geom,
                                         DataSpec spec,
                                         int npos,
                                         boolean deduplicate)
Returns a collection of subclouds for a number of positions from a data spec.

Parameters:
geom - data geom
spec - data spec
npos - number of positions in the data spec
deduplicate - true to cull duplicate layers
Returns:
collection of subclouds


Copyright © 2015 Central Laboratory of the Research Councils. All Rights Reserved.