Class Counting

  • All Implemented Interfaces:
    Destroyable, GlobalInfoSupporter, LoggingLevelHandler, LoggingSupporter, OptionHandler, QuickInfoSupporter, ShallowCopySupporter<BooleanCondition>, SizeOfHandler, Stoppable, BooleanCondition, Serializable

    public class Counting
    extends AbstractBooleanCondition
    Counts the tokens passing through and returns 'true' if min/max/interval are met.

    Valid options are:

    -D <int> (property: debugLevel)
        The greater the number the more additional info the scheme may output to 
        the console (0 = off).
        default: 0
        minimum: 0
     
    -min <int> (property: minimum)
        The minimum number of tokens to count before activating (-1 to disable).
        default: -1
        minimum: -1
     
    -max <int> (property: maximum)
        The maximum number of tokens to count before de-activating (-1 to disable
        ).
        default: -1
        minimum: -1
     
    -interval <int> (property: interval)
        The number of tokens (or multiples) to count before teeing-off the input 
        token.
        default: -1
        minimum: -1
     
    Version:
    $Revision$
    Author:
    fracpete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Field Detail

      • m_Minimum

        protected int m_Minimum
        the minimum number of tokens to process before activating.
      • m_Maximum

        protected int m_Maximum
        the maximum number of tokens to process before de-activating.
      • m_Interval

        protected int m_Interval
        the number of tokens after which to tee-off token.
      • m_Current

        protected int m_Current
        the current count.
    • Constructor Detail

      • Counting

        public Counting()
    • Method Detail

      • getCurrent

        protected int getCurrent()
        Returns the counter of how many tokens have passed through so far.
        Returns:
        the current counter value
      • setMinimum

        public void setMinimum​(int value)
        Sets the minimum number of counts before activating.
        Parameters:
        value - the minimum (-1 to disable)
      • getMinimum

        public int getMinimum()
        Returns the minimum of counts before activating.
        Returns:
        the minimum (-1 if disabled)
      • minimumTipText

        public String minimumTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setMaximum

        public void setMaximum​(int value)
        Sets the maximum number of counts before de-activating.
        Parameters:
        value - the maximum (-1 to disable)
      • getMaximum

        public int getMaximum()
        Returns the maximum of counts before de-activating.
        Returns:
        the maximum (-1 if disabled)
      • maximumTipText

        public String maximumTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setInterval

        public void setInterval​(int value)
        Sets the number of tokens after which to tee off the input token.
        Parameters:
        value - the number
      • getInterval

        public int getInterval()
        Returns the number of tokens after which to tee off the input token.
        Returns:
        the number
      • intervalTipText

        public String intervalTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • doEvaluate

        protected boolean doEvaluate​(Actor owner,
                                     Token token)
        Performs the actual evaluation.
        Specified by:
        doEvaluate in class AbstractBooleanCondition
        Parameters:
        owner - the owning actor
        token - the current token passing through
        Returns:
        the result of the evaluation