org.das2.datum
Class EnumerationUnits
java.lang.Object
org.das2.datum.Units
org.das2.datum.EnumerationUnits
- All Implemented Interfaces:
- Displayable
public class EnumerationUnits
- extends Units
Units class for mapping arbitary objects to Datums. Nothing about the contract
for a Datum requires that they correspond to physical quanities, and we can
assign a mapping from numbers to objects using this class. This allows
information such as "Cluster 1" or "Spin Flip" to be encoded.
This is used to model ordinal or nominal data, as described in
http://en.wikipedia.org/wiki/Level_of_measurement
Fields inherited from class org.das2.datum.Units |
bytes, bytesPerSecond, cdfEpoch, celciusDegrees, centigrade, cmps, days, dB, degrees, dimensionless, eV, fahrenheitDegrees, fahrenheitScale, hertz, hours, inches, kelvin, kiloBytes, kiloBytesPerSecond, kiloHertz, kiloMeters, log10Ratio, logERatio, megaHertz, meters, microseconds, milliseconds, minutes, mj1958, mjd, nanoseconds, pcm3, percent, percentIncrease, radians, seconds, t1970, t2000, us1980, us2000, v2pm2Hz, wpm2 |
Method Summary |
Datum |
add(java.lang.Number a,
java.lang.Number b,
Units bUnits)
|
static EnumerationUnits |
create(java.lang.Object o)
|
Datum |
createDatum(double d)
|
Datum |
createDatum(double d,
double resolution)
|
Datum |
createDatum(int value)
|
Datum |
createDatum(int ival,
java.lang.Object object)
creates the datum, explicitly setting the ordinal. |
Datum |
createDatum(long value)
|
Datum |
createDatum(java.lang.Number value)
|
Datum |
createDatum(java.lang.Object object)
|
static Datum |
createDatumAndUnits(java.lang.Object object)
|
DatumVector |
createDatumVector(java.lang.Object[] objects)
|
Datum |
divide(java.lang.Number a,
java.lang.Number b,
Units bUnits)
|
DatumFormatterFactory |
getDatumFormatterFactory()
|
int |
getHighestOrdinal()
|
java.lang.Object |
getObject(Datum datum)
|
java.util.Map<java.lang.Integer,Datum> |
getValues()
provides access to map of all values. |
Datum |
multiply(java.lang.Number a,
java.lang.Number b,
Units bUnits)
|
Datum |
parse(java.lang.String s)
|
Datum |
subtract(java.lang.Number a,
java.lang.Number b,
Units bUnits)
|
java.lang.String |
toString()
|
Methods inherited from class org.das2.datum.Units |
convertDoubleTo, format, getBasis, getByName, getConvertableUnits, getConverter, getConverter, getFillDatum, getFillDouble, getFillFloat, getFillInt, getFillLong, getId, getListIcon, getListLabel, getOffsetUnits, grannyFormat, isConvertableTo, isFill, isFill, isFill, isFill, isFill, isValid, main, registerConverter |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
unitsInstances
public static java.util.HashMap<java.lang.Class,EnumerationUnits> unitsInstances
EnumerationUnits
public EnumerationUnits(java.lang.String id)
EnumerationUnits
public EnumerationUnits(java.lang.String id,
java.lang.String description)
createDatumAndUnits
public static Datum createDatumAndUnits(java.lang.Object object)
createDatum
public Datum createDatum(int ival,
java.lang.Object object)
- creates the datum, explicitly setting the ordinal. Use with caution.
- Parameters:
ival
- sval
-
- Throws:
java.lang.IllegalArgumentException
- if this ordinal is already taken by a different value.
createDatumVector
public DatumVector createDatumVector(java.lang.Object[] objects)
createDatum
public Datum createDatum(java.lang.Object object)
getValues
public java.util.Map<java.lang.Integer,Datum> getValues()
- provides access to map of all values.
- Returns:
createDatum
public Datum createDatum(int value)
- Specified by:
createDatum
in class Units
createDatum
public Datum createDatum(long value)
- Specified by:
createDatum
in class Units
createDatum
public Datum createDatum(java.lang.Number value)
- Specified by:
createDatum
in class Units
getObject
public java.lang.Object getObject(Datum datum)
create
public static EnumerationUnits create(java.lang.Object o)
createDatum
public Datum createDatum(double d)
- Specified by:
createDatum
in class Units
createDatum
public Datum createDatum(double d,
double resolution)
- Specified by:
createDatum
in class Units
getDatumFormatterFactory
public DatumFormatterFactory getDatumFormatterFactory()
- Specified by:
getDatumFormatterFactory
in class Units
subtract
public Datum subtract(java.lang.Number a,
java.lang.Number b,
Units bUnits)
- Specified by:
subtract
in class Units
add
public Datum add(java.lang.Number a,
java.lang.Number b,
Units bUnits)
- Specified by:
add
in class Units
divide
public Datum divide(java.lang.Number a,
java.lang.Number b,
Units bUnits)
- Specified by:
divide
in class Units
multiply
public Datum multiply(java.lang.Number a,
java.lang.Number b,
Units bUnits)
- Specified by:
multiply
in class Units
parse
public Datum parse(java.lang.String s)
throws java.text.ParseException
- Specified by:
parse
in class Units
- Throws:
java.text.ParseException
getHighestOrdinal
public int getHighestOrdinal()
toString
public java.lang.String toString()
- Overrides:
toString
in class Units