Package uk.ac.starlink.ttools.mode
Class CubeWriter
- java.lang.Object
-
- uk.ac.starlink.ttools.mode.CubeWriter
-
- All Implemented Interfaces:
TableConsumer
public class CubeWriter extends java.lang.Object implements TableConsumer
TableConsumer implementation which constructs and outputs a histogram data cube for an input table.- Since:
- 9 May 2006
- Author:
- Mark Taylor
-
-
Constructor Summary
Constructors Constructor Description CubeWriter(double[] loBounds, double[] hiBounds, int[] nbins, double[] binSizes, java.lang.String[] colIds, java.lang.String scaleId, uk.ac.starlink.util.Destination dest, java.lang.Class<?> outType)Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static double[]calculateCube(uk.ac.starlink.table.StarTable table, double[] loBounds, int[] nbins, double[] binSizes)Accumulates the contents of an N-dimensional histogram representing data from an N+1-columned table.voidconsume(uk.ac.starlink.table.StarTable inTable)Consumes a table.static uk.ac.starlink.ttools.mode.CubeWriter.NumberWritercreateNumberWriter(java.io.DataOutput out, java.lang.Class<?> clazz)Constructs an object which can write signed integer values to a DataOutput object.
-
-
-
Constructor Detail
-
CubeWriter
public CubeWriter(double[] loBounds, double[] hiBounds, int[] nbins, double[] binSizes, java.lang.String[] colIds, java.lang.String scaleId, uk.ac.starlink.util.Destination dest, java.lang.Class<?> outType)Constructor. One, but not both, ofnbinsandbinSizesmay be null (it will be worked out from the other). Elements ofloBoundsandhiBoundsmay be NaN to indicate that the corresponding bound should be calculated from a pass through the data.- Parameters:
loBounds- lower bounds for each dimensionhiBounds- upper bounds for each dimensionnbins- number of bins in each dimensionbinSizes- extent of bins in each dimensioncolIds- column ID strings for axesscaleId- column ID string for scale column (or null)dest- data output locatoroutType- primitive numeric data type for output data; if null worked out automatically
-
-
Method Detail
-
consume
public void consume(uk.ac.starlink.table.StarTable inTable) throws java.io.IOExceptionDescription copied from interface:TableConsumerConsumes a table.- Specified by:
consumein interfaceTableConsumer- Parameters:
inTable- table to consume- Throws:
java.io.IOException
-
calculateCube
public static double[] calculateCube(uk.ac.starlink.table.StarTable table, double[] loBounds, int[] nbins, double[] binSizes) throws java.io.IOExceptionAccumulates the contents of an N-dimensional histogram representing data from an N+1-columned table. The final column is a scaling value.- Parameters:
table- table with N+1 columnsloBounds- N-element array of lower bounds by dimensionnbins- N-element array of number of bins by dimensionbinSizes- N-element array of bin extents by dimension- Throws:
java.io.IOException
-
createNumberWriter
public static uk.ac.starlink.ttools.mode.CubeWriter.NumberWriter createNumberWriter(java.io.DataOutput out, java.lang.Class<?> clazz)Constructs an object which can write signed integer values to a DataOutput object.- Parameters:
out- destination streamclazz- primitive numeric type for output
-
-