|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Objectuk.me.nxg.unity.OneUnit
uk.me.nxg.unity.SimpleUnit
public abstract class SimpleUnit
A single simple unit, such as 'kg'. This is represented as a prefix, a base unit and an exponent. For example, the string "mm s^-2" will result in two SimpleUnit instances, one of which will have a base unit of "m" and a prefix power of -3, and the other of which will have a base unit of "s" and an exponent of -2.
This represents the abstract unit, shorn of the symbols which were parsed to obtain it. Thus if, in some odd syntax, the symbol 'x' were used to denote metres, then the SimpleUnit instance which resulted would be the same as the OneUnit which resulted from a more conventional syntax.
Also, there is a potential ambiguity if a symbol is recognised
in one syntax, but not in another. Thus if the string 'erg' were
parsed in a syntax which didn't recognise that, then it would be
stored as just that, an unrecognised symbol, not associated with
the UnitDefinition for the erg.
The class's instances are immutable.
| Method Summary | |
|---|---|
int |
compareTo(OneUnit o)
|
boolean |
equals(Object o)
Two units are equal if they have the same power, units and exponent. |
UnitDefinition |
getBaseUnitDefinition()
Returns the known base unit. |
String |
getBaseUnitName()
Returns the name of this unit. |
String |
getBaseUnitString()
Returns the base unit string, which will only be non-null if this unit was an unrecognised one. |
Dimensions |
getDimensions()
Return the dimensions of the unit, if it is a recognised one. |
int |
getPrefix()
Returns the prefix of the unit, as a base-ten log. |
int |
hashCode()
|
boolean |
isRecognisedUnit(Syntax syntax)
Indicates whether the base unit is one of those recognised within the specification of the given syntax. |
boolean |
isRecommendedUnit(Syntax syntax)
Indicates whether the base unit is one of those recommended within the specification of the given syntax. |
boolean |
satisfiesUsageConstraints(Syntax syntax)
Indicates whether the unit is being used in a way which satisfies any usage constraints. |
String |
toDebugString()
Write out the unit in a testable format. |
String |
toString()
Format this unit in some sort of canonical form. |
String |
toString(Syntax syntax)
Format this unit in some sort of canonical form appropriate to the given syntax. |
String |
unitString()
Obtains the string form of the unit, including prefix, with a default syntax. |
String |
unitString(Syntax syntax)
Obtains the string representation of the unit, including prefix, in the given syntax. |
| Methods inherited from class uk.me.nxg.unity.OneUnit |
|---|
getExponent, isQuoted |
| Methods inherited from class java.lang.Object |
|---|
getClass, notify, notifyAll, wait, wait, wait |
| Method Detail |
|---|
public int getPrefix()
getPrefix in class OneUnitpublic String toString()
OneUnitUnitExpr.toString().
toString in class OneUnitpublic String toString(Syntax syntax)
OneUnitUnitExpr.toString().
toString in class OneUnit
public String unitString(Syntax syntax)
throws UnitParserException
OneUnit
unitString in class OneUnitsyntax - one of the syntaxes of Syntax
UnitParserException - if the syntax is unrecognisedpublic UnitDefinition getBaseUnitDefinition()
OneUnitOneUnit.getBaseUnitString() will not.
Note that the ‘base unit’ is simply the unit without the prefix, and
doesn't refer to the fundamental SI base units. Thus in the
expression "MW", it is ‘W’, Watt, that is the base unit.
getBaseUnitDefinition in class OneUnitpublic String getBaseUnitName()
OneUnit
getBaseUnitName in class OneUnitpublic String getBaseUnitString()
OneUnit
getBaseUnitString in class OneUnitpublic Dimensions getDimensions()
OneUnit
getDimensions in class OneUnitpublic String unitString()
The default syntax is (currently) the syntax with which this unit was originally read.
public boolean isRecognisedUnit(Syntax syntax)
OneUnitNote that this checks that the unit is a recommended one: we don't (currently) check whether the abbreviation that got us here is a recommended one (for example, ‘pixel’ is a valid FITS/CDS name for pixels, and ‘pix’ is a FITS and OGIP one).
isRecognisedUnit in class OneUnitsyntax - one of the syntaxes of SyntaxOneUnit.isRecommendedUnit(uk.me.nxg.unity.Syntax)public boolean isRecommendedUnit(Syntax syntax)
OneUnitNote that this checks that the unit is a recommended one: we don't (currently) check whether the abbreviation that got us here is a recommended one (for example, "pixel" is a valid FITS/CDS name for pixels, and "pix" is a FITS and OGIP one).
isRecommendedUnit in class OneUnitsyntax - one of the syntaxes of SyntaxOneUnit.isRecognisedUnit(uk.me.nxg.unity.Syntax)public boolean satisfiesUsageConstraints(Syntax syntax)
OneUnitAn unrecognised unit has no constraints, and so will always satisfy them; this extends to units which are unrecognised in a particular syntax.
satisfiesUsageConstraints in class OneUnitsyntax - one of the syntaxes of Syntaxpublic String toDebugString()
OneUnit
toDebugString in class OneUnitpublic boolean equals(Object o)
equals in class Objectpublic int compareTo(OneUnit o)
compareTo in interface Comparable<OneUnit>compareTo in class OneUnitpublic int hashCode()
hashCode in class Object
|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||