## visad
Class FunctionType

    java.lang.Object
      visad.MathType
          visad.FunctionType

All Implemented Interfaces:
  Serializable

public class FunctionType
extends MathType

FunctionType is the VisAD data type for functions.

A Function domain type may be either a RealType (for a function with domain = R) or a RealTupleType (for a function with domain = R^n for n > 0).

See Also:
  Serialized Form

Field Summary
`static FunctionType` `REAL_1TO1_FUNCTION`
`static FunctionType` `REAL_1TO3_FUNCTION`
`static FunctionType` `REAL_1TO4_FUNCTION`

Fields inherited from class visad.MathType
`SystemIntrinsic`

Constructor Summary
`` `FunctionType(MathType domain, MathType range)` domain must be a RealType or a RealTupleType; range may be any MathType
`(package private)` `FunctionType(MathType domain, MathType range, boolean b)` trusted constructor for initializers

Method Summary
`MathType` `binary(MathType type, int op, Vector names)`
`ShadowType` `buildShadowType(DataDisplayLink link, ShadowType parent)`
`MathType` `cloneDerivative(RealType d_partial)`
`boolean` `equals(Object type)` ScalarTypes are equal if they have the same name; TupleTypes are equal if their components are equal; FunctionTypes are equal if their domains and ranges are equal
`boolean` `equalsExceptName(MathType type)` this is useful for determining compatibility of Data objects for binary mathematical operations; any RealTypes are equal; any TextTypes are equal; TupleTypes are equal if their components are equal; FunctionTypes are equal if their domains and ranges are equal
`boolean` `equalsExceptNameButUnits(MathType type)`
`RealTupleType` `getDomain()` if the domain passed to constructor was a RealType, getDomain returns a RealTupleType with that RealType as its single component
`boolean` `getFlat()`
`RealTupleType` `getFlatRange()`
`MathType` `getRange()`
`boolean` `getReal()`
`RealType[]` `getRealComponents()`
`TextType[]` `getTextComponents()`
`int[]` `getTextIndices()`
`int` `hashCode()` Returns the hash code of this instance.
`Data` `missingData()` returns a missing Data object for any MathType
`String` `prettyString(int indent)`
`MathType` `unary(int op, Vector names)`

Methods inherited from class visad.MathType
`addTimeAlias, findScalarType, guessMaps, main, prettyString, stringToType, toString`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### REAL_1TO1_FUNCTION

    public static final FunctionType REAL_1TO1_FUNCTION

### REAL_1TO3_FUNCTION

    public static final FunctionType REAL_1TO3_FUNCTION

### REAL_1TO4_FUNCTION

    public static final FunctionType REAL_1TO4_FUNCTION

Constructor Detail

### FunctionType

    public FunctionType(MathType domain,
                        MathType range)
                 throws VisADException

  domain must be a RealType or a RealTupleType; range may be any MathType

### FunctionType

    FunctionType(MathType domain,
                 MathType range,
                 boolean b)

  trusted constructor for initializers

Method Detail

### getTextComponents

    public TextType[] getTextComponents()

### getTextIndices

    public int[] getTextIndices()

### getDomain

    public RealTupleType getDomain()

  if the domain passed to constructor was a RealType, getDomain returns a RealTupleType with that RealType as its single component

### getRange

    public MathType getRange()

### getFlat

    public boolean getFlat()

### getReal

    public boolean getReal()

### getFlatRange

    public RealTupleType getFlatRange()

### getRealComponents

    public RealType[] getRealComponents()

### equals

    public boolean equals(Object type)

  Description copied from class: `MathType`
  ScalarTypes are equal if they have the same name; TupleTypes are equal if their components are equal; FunctionTypes are equal if their domains and ranges are equal

  Specified by:
    `equals` in class `MathType`

### hashCode

    public int hashCode()

  Returns the hash code of this instance. If `equals(Object type)`, then ``hashCode()` == type.hashCode()`.

  Returns:
    The hash code of this instance.

### equalsExceptName

    public boolean equalsExceptName(MathType type)

  Description copied from class: `MathType`
  this is useful for determining compatibility of Data objects for binary mathematical operations; any RealTypes are equal; any TextTypes are equal; TupleTypes are equal if their components are equal; FunctionTypes are equal if their domains and ranges are equal

  Specified by:
    `equalsExceptName` in class `MathType`

### equalsExceptNameButUnits

    public boolean equalsExceptNameButUnits(MathType type)
                                     throws VisADException

  Specified by:
    `equalsExceptNameButUnits` in class `MathType`
  Throws:
    `VisADException`

### cloneDerivative

    public MathType cloneDerivative(RealType d_partial)
                             throws VisADException

  Specified by:
    `cloneDerivative` in class `MathType`
  Throws:
    `VisADException`

### binary

    public MathType binary(MathType type,
                           int op,
                           Vector names)
                    throws VisADException

  Specified by:
    `binary` in class `MathType`
  Throws:
    `VisADException`

### unary

    public MathType unary(int op,
                          Vector names)
                   throws VisADException

  Specified by:
    `unary` in class `MathType`
  Throws:
    `VisADException`

### prettyString

    public String prettyString(int indent)

  Specified by:
    `prettyString` in class `MathType`

### missingData

    public Data missingData()
                     throws VisADException,
                            RemoteException

  Description copied from class: `MathType`
  returns a missing Data object for any MathType

  Specified by:
    `missingData` in class `MathType`
  Throws:
    `VisADException`
    `RemoteException`

### buildShadowType

    public ShadowType buildShadowType(DataDisplayLink link,
                                      ShadowType parent)
                               throws VisADException,
                                      RemoteException

  Specified by:
    `buildShadowType` in class `MathType`
  Throws:
    `VisADException`
    `RemoteException`