Interface LayerType

  • All Known Implementing Classes:
    ShapeFamilyLayerType, SimpleLayerType, SpotPlotter.SpotLayerType

    public interface LayerType
    Represents the type of a plot layer as selected by the user. This object does not correspond to anything very well-defined in the plot2 API: it may represent either a single Plotter object or a collection of Plotter objects from which one may be selected by use of associated parameters. However, it's a useful abstraction, to associate with a user-visible task parameter, since the number of Plotter objects that may be associated with a PlotType is typically too large for a comfortable selection from a single choice parameter.
    Since:
    15 Sep 2014
    Author:
    Mark Taylor
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      uk.ac.starlink.task.Parameter<?>[] getAssociatedParameters​(java.lang.String suffix)
      Returns a list of zero or more additional parameters associated with this layer type that may be required to turn it into the specification of an actual Plotter object.
      Coord[] getExtraCoords()
      Returns a list of any non-positional coordinates associated with this layer.
      java.lang.String getName()
      Returns the name of this layer type.
      Plotter<?> getPlotter​(uk.ac.starlink.task.Environment env, java.lang.String suffix)
      Acquires a Plotter for this layer type.
      int getPositionCount()
      Returns the number of coordinate positions associated with this layer.
      ConfigKey<?>[] getStyleKeys()
      Returns the style keys associated with this layer type.
      java.lang.String getXmlDescription()
      Returns an XML description of this layer type.
    • Method Detail

      • getName

        java.lang.String getName()
        Returns the name of this layer type.
        Returns:
        name as selected by user
      • getXmlDescription

        java.lang.String getXmlDescription()
        Returns an XML description of this layer type.
        Returns:
        one or more <p> elements
      • getAssociatedParameters

        uk.ac.starlink.task.Parameter<?>[] getAssociatedParameters​(java.lang.String suffix)
        Returns a list of zero or more additional parameters associated with this layer type that may be required to turn it into the specification of an actual Plotter object.
        Parameters:
        suffix - layer suffix string for use in the execution environment
        Returns:
        zero or more associated parameters, for documentation purposes
      • getPositionCount

        int getPositionCount()
        Returns the number of coordinate positions associated with this layer.
        Returns:
        DataGeom-type positional coordinate multiplicity
      • getExtraCoords

        Coord[] getExtraCoords()
        Returns a list of any non-positional coordinates associated with this layer.
        Returns:
        zero or more non-positional coordinates
      • getStyleKeys

        ConfigKey<?>[] getStyleKeys()
        Returns the style keys associated with this layer type.
        Returns:
        zero or more style keys associated with every layer produced by this type
      • getPlotter

        Plotter<?> getPlotter​(uk.ac.starlink.task.Environment env,
                              java.lang.String suffix)
                       throws uk.ac.starlink.task.TaskException
        Acquires a Plotter for this layer type.
        Parameters:
        env - execution environment
        suffix - layer suffix string
        Returns:
        plotter
        Throws:
        uk.ac.starlink.task.TaskException