Package adams.data.audiofeaturegenerator
Class AbstractAudioFeatureGenerator<T extends AbstractAudioContainer>
- java.lang.Object
-
- adams.core.logging.LoggingObject
-
- adams.core.logging.CustomLoggingLevelObject
-
- adams.core.option.AbstractOptionHandler
-
- adams.data.audiofeaturegenerator.AbstractAudioFeatureGenerator<T>
-
- Type Parameters:
T
- the type of container to process
- 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<AbstractAudioFeatureGenerator>
,adams.core.SizeOfHandler
,Serializable
,Comparable
- Direct Known Subclasses:
AbstractWaveFeatureGenerator
public abstract class AbstractAudioFeatureGenerator<T extends AbstractAudioContainer> extends adams.core.option.AbstractOptionHandler implements Comparable, adams.core.CleanUpHandler, adams.core.ShallowCopySupporter<AbstractAudioFeatureGenerator>
Abstract base class for AbstractAudioContainer feature generation.- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected adams.data.featureconverter.AbstractFeatureConverter
m_Converter
the feature converter to use.protected adams.data.report.Field[]
m_Fields
fields to add to the output data.protected adams.core.base.BaseString[]
m_Notes
the notes to add as attributes.protected String
m_Prefix
the prefix to use for the fields.
-
Constructor Summary
Constructors Constructor Description AbstractAudioFeatureGenerator()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
checkData(T cont)
Optional checks of the container.void
cleanUp()
Cleans up data structures, frees up memory.int
compareTo(Object o)
Compares this object with the specified object for order.String
converterTipText()
Returns the tip text for this property.abstract adams.data.featureconverter.HeaderDefinition
createHeader(T cont)
Creates the header from a template container.void
defineOptions()
Adds options to the internal list of options.void
destroy()
Frees up memory in a "destructive" non-reversible way.boolean
equals(Object o)
Returns whether the two objects are the same.String
fieldsTipText()
Returns the tip text for this property.Object[]
generate(T cont)
Process the given container.abstract List<Object>[]
generateRows(T cont)
Performs the actual feature generation.adams.data.featureconverter.AbstractFeatureConverter
getConverter()
Returns the feature converter in use.Class
getDatasetFormat()
Returns the class of the dataset that the converter generates.adams.data.report.Field[]
getFields()
Returns the targets to add.adams.core.base.BaseString[]
getNotes()
Returns the current notes to add as attributes.String
getPrefix()
Returns the (optional) prefix for the feature names.Class
getRowFormat()
Returns the class of the row that the converter generates.String
notesTipText()
Returns the tip text for this property.adams.data.featureconverter.HeaderDefinition
postProcessHeader(adams.data.featureconverter.HeaderDefinition header)
Post-processes the header, adding fields and notes.List<Object>
postProcessRow(T cont, List<Object> data)
Post-processes the generated row, adding notes and fields.List<Object>[]
postProcessRows(T cont, List<Object>[] data)
Post-processes the generated rows, adding notes and fields.String
prefixTipText()
Returns the tip text for this property.protected void
reset()
Resets the scheme, i.e., the header information.void
setConverter(adams.data.featureconverter.AbstractFeatureConverter value)
Sets the feature converter to use.void
setFields(adams.data.report.Field[] value)
Sets the targets to add.void
setNotes(adams.core.base.BaseString[] value)
Sets the notes to add as attributes.void
setPrefix(String value)
Sets the (optional) prefix for the feature names.AbstractAudioFeatureGenerator
shallowCopy()
Returns a shallow copy of itself, i.e., based on the commandline options.AbstractAudioFeatureGenerator
shallowCopy(boolean expand)
Returns a shallow copy of itself, i.e., based on the commandline options.-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, finishInit, getDefaultLoggingLevel, getOptionManager, globalInfo, initialize, loggingLevelTipText, newOptionManager, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
configureLogger, getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled, sizeOf
-
-
-
-
Field Detail
-
m_Converter
protected adams.data.featureconverter.AbstractFeatureConverter m_Converter
the feature converter to use.
-
m_Prefix
protected String m_Prefix
the prefix to use for the fields.
-
m_Fields
protected adams.data.report.Field[] m_Fields
fields to add to the output data.
-
m_Notes
protected adams.core.base.BaseString[] m_Notes
the notes to add as attributes.
-
-
Method Detail
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptions
in interfaceadams.core.option.OptionHandler
- Overrides:
defineOptions
in classadams.core.option.AbstractOptionHandler
-
reset
protected void reset()
Resets the scheme, i.e., the header information.- Overrides:
reset
in classadams.core.option.AbstractOptionHandler
-
setConverter
public void setConverter(adams.data.featureconverter.AbstractFeatureConverter value)
Sets the feature converter to use.- Parameters:
value
- the converter
-
getConverter
public adams.data.featureconverter.AbstractFeatureConverter getConverter()
Returns the feature converter in use.- Returns:
- the converter
-
converterTipText
public String converterTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setPrefix
public void setPrefix(String value)
Sets the (optional) prefix for the feature names.- Parameters:
value
- the prefix
-
getPrefix
public String getPrefix()
Returns the (optional) prefix for the feature names.- Returns:
- the prefix
-
prefixTipText
public String prefixTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setFields
public void setFields(adams.data.report.Field[] value)
Sets the targets to add.- Parameters:
value
- the targets
-
getFields
public adams.data.report.Field[] getFields()
Returns the targets to add.- Returns:
- the targets
-
fieldsTipText
public String fieldsTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setNotes
public void setNotes(adams.core.base.BaseString[] value)
Sets the notes to add as attributes.- Parameters:
value
- the notes prefixes, e.g., "PROCESS INFORMATION"
-
getNotes
public adams.core.base.BaseString[] getNotes()
Returns the current notes to add as attributes.- Returns:
- the notes prefixes, e.g., "PROCESS INFORMATION"
-
notesTipText
public String notesTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the gui
-
getDatasetFormat
public Class getDatasetFormat()
Returns the class of the dataset that the converter generates.- Returns:
- the format
-
getRowFormat
public Class getRowFormat()
Returns the class of the row that the converter generates.- Returns:
- the format
-
checkData
protected void checkData(T cont)
Optional checks of the container.
Default implementation only checks whether container is null.- Parameters:
cont
- the container to check
-
createHeader
public abstract adams.data.featureconverter.HeaderDefinition createHeader(T cont)
Creates the header from a template container.- Parameters:
cont
- the container to act as a template- Returns:
- the generated header
-
postProcessHeader
public adams.data.featureconverter.HeaderDefinition postProcessHeader(adams.data.featureconverter.HeaderDefinition header)
Post-processes the header, adding fields and notes.- Parameters:
header
- the header to process- Returns:
- the post-processed header
-
generateRows
public abstract List<Object>[] generateRows(T cont)
Performs the actual feature generation.- Parameters:
cont
- the container to process- Returns:
- the generated features
-
postProcessRow
public List<Object> postProcessRow(T cont, List<Object> data)
Post-processes the generated row, adding notes and fields.- Parameters:
cont
- the container containerdata
- the inst to process- Returns:
- the updated instance
-
postProcessRows
public List<Object>[] postProcessRows(T cont, List<Object>[] data)
Post-processes the generated rows, adding notes and fields.- Parameters:
cont
- the container containerdata
- the inst to process- Returns:
- the updated instance
-
generate
public Object[] generate(T cont)
Process the given container. This method will also create the header if necessary.- Parameters:
cont
- the container to process- Returns:
- the generated array
- See Also:
#createHeader(T)
-
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 interfaceComparable<T extends AbstractAudioContainer>
- 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.
-
shallowCopy
public AbstractAudioFeatureGenerator shallowCopy()
Returns a shallow copy of itself, i.e., based on the commandline options.- Specified by:
shallowCopy
in interfaceadams.core.ShallowCopySupporter<T extends AbstractAudioContainer>
- Returns:
- the shallow copy
-
shallowCopy
public AbstractAudioFeatureGenerator shallowCopy(boolean expand)
Returns a shallow copy of itself, i.e., based on the commandline options.- Specified by:
shallowCopy
in interfaceadams.core.ShallowCopySupporter<T extends AbstractAudioContainer>
- Parameters:
expand
- whether to expand variables to their current values- Returns:
- the shallow copy
-
cleanUp
public void cleanUp()
Cleans up data structures, frees up memory.- Specified by:
cleanUp
in interfaceadams.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 interfaceadams.core.Destroyable
- Overrides:
destroy
in classadams.core.option.AbstractOptionHandler
-
-