Class 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:
    JEL
    • Constructor Summary

      Constructors 
      Constructor Description
      SyntheticRowSubset​(java.lang.String name, TopcatModel tcModel, java.lang.String expression)
      Constructs a new synthetic subset given a table and an algebraic expression.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String getExpression()
      Returns the text of the expression used by this subset.
      boolean isIncluded​(long lrow)
      Indicates whether a given row is in the subset or not.
      void setExpression​(java.lang.String expression)
      Sets the expression to use for this subset.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • SyntheticRowSubset

        public SyntheticRowSubset​(java.lang.String name,
                                  TopcatModel tcModel,
                                  java.lang.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 Detail

      • setExpression

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

        public java.lang.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