Class SyntheticRowSubset

java.lang.Object
uk.ac.starlink.topcat.RowSubset
uk.ac.starlink.topcat.SyntheticRowSubset

public class SyntheticRowSubset extends RowSubset
A RowSubset which uses an algebraic expression based on the values of other columns in the same row to decide whether a row is included or not.

The engine used for expression evaluation is the GNU Java Expressions Library (JEL).

Author:
Mark Taylor (Starlink)
See Also:
  • Constructor Details

    • SyntheticRowSubset

      public SyntheticRowSubset(String name, TopcatModel tcModel, String expression) throws gnu.jel.CompilationException
      Constructs a new synthetic subset given a table and an algebraic expression.
      Parameters:
      name - the name to use for the new RowSubset
      tcModel - context for JEL expression evaluation
      expression - the algebraic expression
      Throws:
      gnu.jel.CompilationException
  • Method Details

    • setExpression

      public void setExpression(String expression) throws gnu.jel.CompilationException
      Sets the expression to use for this subset.
      Parameters:
      expression - JEL expression
      Throws:
      gnu.jel.CompilationException
    • getExpression

      public String getExpression()
      Returns the text of the expression used by this subset.
      Returns:
      expression
    • isIncluded

      public boolean isIncluded(long lrow)
      Description copied from class: RowSubset
      Indicates whether a given row is in the subset or not.
      Specified by:
      isIncluded in class RowSubset
      Parameters:
      lrow - the index of the row in question
      Returns:
      true iff row lrow is to be included