Package xal.smf.impl

Class Sextupole

All Implemented Interfaces:
Comparable, ElementType, MagnetType, DataListener

public class Sextupole extends Electromagnet
Sextupole magnet node.
  • Field Details

  • Constructor Details

    • Sextupole

      public Sextupole(String strID, ChannelFactory channelFactory)
      Primary Constructor
      Parameters:
      strID - unique node ID
    • Sextupole

      public Sextupole(String strID)
      Constructor
      Parameters:
      strID - unique node ID
  • Method Details

    • getType

      public String getType()
      Override to provide the correct type signature per instance. This is necessary since the Quadrupole class can represent more than one official type (SH or SV).
      Specified by:
      getType in class AcceleratorNode
      Returns:
      The official type consistent with the naming convention.
    • update

      public void update(DataAdaptor adaptor)
      Update the instance with data from the data adaptor. Overrides the default implementation to set the sextupole type since a sextupole type can be one of "SH", "SV", "SSH" or "SSV".
      Specified by:
      update in interface DataListener
      Overrides:
      update in class Electromagnet
      Parameters:
      adaptor - The data provider.
    • isPole

      public boolean isPole(String pole)
      Description copied from class: Magnet
      Test if the magnet is of the specified pole type. MagnetType defines the list of accepted pole types.
      Specified by:
      isPole in interface MagnetType
      Overrides:
      isPole in class Magnet
      Parameters:
      pole - Comparison pole which should be one of MagnetType.poles
      Returns:
      true if the magnet is of the specified pole.
    • getOrientation

      public int getOrientation()
      Get the orientation of the magnet as defined by MagnetType. The orientation of the sextupole is determined by its type.
      Specified by:
      getOrientation in interface MagnetType
      Overrides:
      getOrientation in class Magnet
      Returns:
      One of HORIZONTAL or VERTICAL
    • isSkew

      public boolean isSkew()
      Determine whether this magnet is a skew magnet.
      Specified by:
      isSkew in interface MagnetType
      Overrides:
      isSkew in class Magnet
      Returns:
      true if the magnet is skew and false otherwise.
    • isKindOf

      public boolean isKindOf(String type)
      Determine if this node is of the specified type. Override the default method since a quadrupole could represent either a vertical or horizontal type. Must also handle inheritance checking so we must or the direct type comparison with the inherited type checking.
      Specified by:
      isKindOf in interface ElementType
      Overrides:
      isKindOf in class AcceleratorNode
      Parameters:
      type - the type against which to compare this sextupole
      Returns:
      true if the node is a match and false otherwise.