Class ParameterList

java.lang.Object
org.sunflow.core.ParameterList
Direct Known Subclasses:
Options

public class ParameterList extends Object
This class holds a list of "parameters". These are defined and then passed onto rendering objects through the API. They can hold arbitrary typed and named variables as a unified way of getting data into user objects.
  • Field Details

  • Constructor Details

    • ParameterList

      public ParameterList()
      Creates an empty ParameterList.
  • Method Details

    • clear

      public void clear(boolean showUnused)
      Clears the list of all its members. If some members were never used, a warning will be printed to remind the user something may be wrong.
    • setFaceCount

      public void setFaceCount(int numFaces)
      Setup how many faces should be used to check member count on "face" interpolated parameters.
      Parameters:
      numFaces - number of faces
    • setVertexCount

      public void setVertexCount(int numVerts)
      Setup how many vertices should be used to check member count of "vertex" interpolated parameters.
      Parameters:
      numVerts - number of vertices
    • setFaceVertexCount

      public void setFaceVertexCount(int numFaceVerts)
      Setup how many "face-vertices" should be used to check member count of "facevarying" interpolated parameters. This should be equal to the sum of the number of vertices on each face.
      Parameters:
      numFaceVerts - number of "face-vertices"
    • addString

      public void addString(String name, String value)
      Add the specified string as a parameter. null values are not permitted.
      Parameters:
      name - parameter name
      value - parameter value
    • addInteger

      public void addInteger(String name, int value)
      Add the specified integer as a parameter. null values are not permitted.
      Parameters:
      name - parameter name
      value - parameter value
    • addBoolean

      public void addBoolean(String name, boolean value)
      Add the specified boolean as a parameter. null values are not permitted.
      Parameters:
      name - parameter name
      value - parameter value
    • addFloat

      public void addFloat(String name, float value)
      Add the specified float as a parameter. null values are not permitted.
      Parameters:
      name - parameter name
      value - parameter value
    • addColor

      public void addColor(String name, Color value)
      Add the specified color as a parameter. null values are not permitted.
      Parameters:
      name - parameter name
      value - parameter value
    • addIntegerArray

      public void addIntegerArray(String name, int[] array)
      Add the specified array of integers as a parameter. null values are not permitted.
      Parameters:
      name - parameter name
      array - parameter value
    • addStringArray

      public void addStringArray(String name, String[] array)
      Add the specified array of integers as a parameter. null values are not permitted.
      Parameters:
      name - parameter name
      array - parameter value
    • addFloats

      public void addFloats(String name, ParameterList.InterpolationType interp, float[] data)
      Add the specified floats as a parameter. null values are not permitted.
      Parameters:
      name - parameter name
      interp - interpolation type
      data - parameter value
    • addPoints

      public void addPoints(String name, ParameterList.InterpolationType interp, float[] data)
      Add the specified points as a parameter. null values are not permitted.
      Parameters:
      name - parameter name
      interp - interpolation type
      data - parameter value
    • addVectors

      public void addVectors(String name, ParameterList.InterpolationType interp, float[] data)
      Add the specified vectors as a parameter. null values are not permitted.
      Parameters:
      name - parameter name
      interp - interpolation type
      data - parameter value
    • addTexCoords

      public void addTexCoords(String name, ParameterList.InterpolationType interp, float[] data)
      Add the specified texture coordinates as a parameter. null values are not permitted.
      Parameters:
      name - parameter name
      interp - interpolation type
      data - parameter value
    • addMatrices

      public void addMatrices(String name, ParameterList.InterpolationType interp, float[] data)
      Add the specified matrices as a parameter. null values are not permitted.
      Parameters:
      name - parameter name
      interp - interpolation type
      data - parameter value
    • getString

      public String getString(String name, String defaultValue)
      Get the specified string parameter from this list.
      Parameters:
      name - name of the parameter
      defaultValue - value to return if not found
      Returns:
      the value of the parameter specified or default value if not found
    • getStringArray

      public String[] getStringArray(String name, String[] defaultValue)
      Get the specified string array parameter from this list.
      Parameters:
      name - name of the parameter
      defaultValue - value to return if not found
      Returns:
      the value of the parameter specified or default value if not found
    • getInt

      public int getInt(String name, int defaultValue)
      Get the specified integer parameter from this list.
      Parameters:
      name - name of the parameter
      defaultValue - value to return if not found
      Returns:
      the value of the parameter specified or default value if not found
    • getIntArray

      public int[] getIntArray(String name)
      Get the specified integer array parameter from this list.
      Parameters:
      name - name of the parameter
      Returns:
      the value of the parameter specified or null if not found
    • getBoolean

      public boolean getBoolean(String name, boolean defaultValue)
      Get the specified boolean parameter from this list.
      Parameters:
      name - name of the parameter
      defaultValue - value to return if not found
      Returns:
      the value of the parameter specified or default value if not found
    • getFloat

      public float getFloat(String name, float defaultValue)
      Get the specified float parameter from this list.
      Parameters:
      name - name of the parameter
      defaultValue - value to return if not found
      Returns:
      the value of the parameter specified or default value if not found
    • getColor

      public Color getColor(String name, Color defaultValue)
      Get the specified color parameter from this list.
      Parameters:
      name - name of the parameter
      defaultValue - value to return if not found
      Returns:
      the value of the parameter specified or default value if not found
    • getPoint

      public Point3 getPoint(String name, Point3 defaultValue)
      Get the specified point parameter from this list.
      Parameters:
      name - name of the parameter
      defaultValue - value to return if not found
      Returns:
      the value of the parameter specified or default value if not found
    • getVector

      public Vector3 getVector(String name, Vector3 defaultValue)
      Get the specified vector parameter from this list.
      Parameters:
      name - name of the parameter
      defaultValue - value to return if not found
      Returns:
      the value of the parameter specified or default value if not found
    • getTexCoord

      public Point2 getTexCoord(String name, Point2 defaultValue)
      Get the specified texture coordinate parameter from this list.
      Parameters:
      name - name of the parameter
      defaultValue - value to return if not found
      Returns:
      the value of the parameter specified or default value if not found
    • getMatrix

      public Matrix4 getMatrix(String name, Matrix4 defaultValue)
      Get the specified matrix parameter from this list.
      Parameters:
      name - name of the parameter
      defaultValue - value to return if not found
      Returns:
      the value of the parameter specified or default value if not found
    • getFloatArray

      public ParameterList.FloatParameter getFloatArray(String name)
      Get the specified float array parameter from this list.
      Parameters:
      name - name of the parameter
      Returns:
      the value of the parameter specified or null if not found
    • getPointArray

      public ParameterList.FloatParameter getPointArray(String name)
      Get the specified point array parameter from this list.
      Parameters:
      name - name of the parameter
      Returns:
      the value of the parameter specified or null if not found
    • getVectorArray

      public ParameterList.FloatParameter getVectorArray(String name)
      Get the specified vector array parameter from this list.
      Parameters:
      name - name of the parameter
      Returns:
      the value of the parameter specified or null if not found
    • getTexCoordArray

      public ParameterList.FloatParameter getTexCoordArray(String name)
      Get the specified texture coordinate array parameter from this list.
      Parameters:
      name - name of the parameter
      Returns:
      the value of the parameter specified or null if not found
    • getMatrixArray

      public ParameterList.FloatParameter getMatrixArray(String name)
      Get the specified matrix array parameter from this list.
      Parameters:
      name - name of the parameter
      Returns:
      the value of the parameter specified or null if not found
    • getMovingMatrix

      public final MovingMatrix4 getMovingMatrix(String name, MovingMatrix4 defaultValue)