Package gda.function

Class RelativeMotionFunction<T extends javax.measure.Quantity<T>,R extends javax.measure.Quantity<R>>

All Implemented Interfaces:
Configurable, Findable, Function<javax.measure.Quantity<T>,javax.measure.Quantity<R>>

public class RelativeMotionFunction<T extends javax.measure.Quantity<T>,R extends javax.measure.Quantity<R>> extends FindableConfigurableBase implements Function<javax.measure.Quantity<T>,javax.measure.Quantity<R>>
Function to couple the relative motion of two scannables, not their absolute positions.
  • Constructor Details

    • RelativeMotionFunction

      public RelativeMotionFunction()
  • Method Details

    • configure

      public void configure() throws FactoryException
      Description copied from class: ConfigurableBase
      Default implementation for classes that do not have to do any specific configuration.
      Classes that do their own configuration should *not* call this superclass function, as it may cause the object to appear configured before it really is.
      Specified by:
      configure in interface Configurable
      Overrides:
      configure in class ConfigurableBase
      Throws:
      FactoryException - if there is an error in configuration e.g. required variable not set or cannot connect to device
    • apply

      public javax.measure.Quantity<R> apply(javax.measure.Quantity<T> t)
      Specified by:
      apply in interface Function<T extends javax.measure.Quantity<T>,R extends javax.measure.Quantity<R>>
    • setPrimaryScannable

      public void setPrimaryScannable(ScannableMotionUnits primaryScannable)
    • setSecondaryScannable

      public void setSecondaryScannable(ScannableMotionUnits secondaryScannable)
    • setCouplingFunction

      public void setCouplingFunction(Function<javax.measure.Quantity<T>,javax.measure.Quantity<R>> couplingFunction)