Class AbstractMultiSpectrumReportFilter

  • All Implemented Interfaces:
    adams.core.CleanUpHandler, adams.core.Destroyable, adams.core.GlobalInfoSupporter, adams.core.logging.LoggingLevelHandler, adams.core.logging.LoggingSupporter, adams.core.option.OptionHandler, adams.core.ShallowCopySupporter<AbstractMultiSpectrumReportFilter>, adams.core.SizeOfHandler, Serializable, Comparable
    Direct Known Subclasses:
    DistributeSampleData, PassThrough, PullUpFields

    public abstract class AbstractMultiSpectrumReportFilter
    extends adams.core.option.AbstractOptionHandler
    implements Comparable, adams.core.CleanUpHandler, adams.core.ShallowCopySupporter<AbstractMultiSpectrumReportFilter>
    Abstract base class for multi-spectrum report filters.
    Version:
    $Revision: 7774 $
    Author:
    fracpete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Constructor Detail

      • AbstractMultiSpectrumReportFilter

        public AbstractMultiSpectrumReportFilter()
    • Method Detail

      • reset

        public void reset()
        Resets the filter. Derived classes must call this method in set-methods of parameters to assure the invalidation of previously generated data.
        Overrides:
        reset in class adams.core.option.AbstractOptionHandler
      • cleanUp

        public void cleanUp()
        Cleans up data structures, frees up memory. Sets the input and generated data to null.
        Specified by:
        cleanUp in interface adams.core.CleanUpHandler
      • destroy

        public void destroy()
        Frees up memory in a "destructive" non-reversible way.

        Calls cleanUp() and cleans up the options.
        Specified by:
        destroy in interface adams.core.Destroyable
        Overrides:
        destroy in class adams.core.option.AbstractOptionHandler
      • filter

        public MultiSpectrum filter​(MultiSpectrum data)
        Returns the filtered data.
        Parameters:
        data - the data to filter
        Returns:
        the filtered data
      • checkData

        protected void checkData​(MultiSpectrum data)
        The default implementation only checks whether there is any data set.
        Parameters:
        data - the data to filter
      • processData

        protected abstract MultiSpectrum processData​(MultiSpectrum data)
        Performs the actual filtering.
        Parameters:
        data - the data to filter
        Returns:
        the filtered data, null if failed to generate output
      • compareTo

        public int compareTo​(Object o)
        Compares this object with the specified object for order. Returns a negative integer, zero, or a positive integer as this object is less than, equal to, or greater than the specified object.

        Only compares the commandlines of the two objects.
        Specified by:
        compareTo in interface Comparable
        Parameters:
        o - the object to be compared.
        Returns:
        a negative integer, zero, or a positive integer as this object is less than, equal to, or greater than the specified object.
        Throws:
        ClassCastException - if the specified object's type prevents it from being compared to this object.
      • equals

        public boolean equals​(Object o)
        Returns whether the two objects are the same.

        Only compares the commandlines of the two objects.
        Overrides:
        equals in class Object
        Parameters:
        o - the object to be compared
        Returns:
        true if the object is the same as this one
      • shallowCopy

        public AbstractMultiSpectrumReportFilter shallowCopy​(boolean expand)
        Returns a shallow copy of itself, i.e., based on the commandline options.
        Specified by:
        shallowCopy in interface adams.core.ShallowCopySupporter<AbstractMultiSpectrumReportFilter>
        Parameters:
        expand - whether to expand variables to their current values
        Returns:
        the shallow copy
      • getFilters

        public static String[] getFilters()
        Returns a list with classnames of filters.
        Returns:
        the filter classnames
      • forName

        public static AbstractMultiSpectrumReportFilter forName​(String classname,
                                                                String[] options)
        Instantiates the filter with the given options.
        Parameters:
        classname - the classname of the filter to instantiate
        options - the options for the filter
        Returns:
        the instantiated filter or null if an error occurred
      • forCommandLine

        public static AbstractMultiSpectrumReportFilter forCommandLine​(String cmdline)
        Instantiates the filter from the given commandline (i.e., classname and optional options).
        Parameters:
        cmdline - the classname (and optional options) of the filter to instantiate
        Returns:
        the instantiated filter or null if an error occurred