Package adams.flow.transformer
Class ScaleReportObjects
-
- All Implemented Interfaces:
AdditionalInformationHandler
,CleanUpHandler
,Destroyable
,GlobalInfoSupporter
,LoggingLevelHandler
,LoggingSupporter
,OptionHandler
,QuickInfoSupporter
,ShallowCopySupporter<Actor>
,SizeOfHandler
,Stoppable
,StoppableWithFeedback
,VariablesInspectionHandler
,VariableChangeListener
,Actor
,ErrorHandler
,InputConsumer
,OutputProducer
,ObjectPrefixHandler
,Serializable
,Comparable
public class ScaleReportObjects extends AbstractTransformer implements ObjectPrefixHandler
Scales the objects in the report using the provided scale factors.
Processes the following suffixes of all the report fields that match the provided prefix:
- .x
- .y
- .width
- .height
Input/output:
- accepts:
adams.data.report.Report
adams.data.report.ReportHandler
- generates:
adams.data.report.Report
adams.data.report.ReportHandler
-logging-level <OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST> (property: loggingLevel) The logging level for outputting errors and debugging output. default: WARNING
-name <java.lang.String> (property: name) The name of the actor. default: ScaleReportObjects
-annotation <adams.core.base.BaseAnnotation> (property: annotations) The annotations to attach to this actor. default:
-skip <boolean> (property: skip) If set to true, transformation is skipped and the input token is just forwarded as it is. default: false
-stop-flow-on-error <boolean> (property: stopFlowOnError) If set to true, the flow execution at this level gets stopped in case this actor encounters an error; the error gets propagated; useful for critical actors. default: false
-silent <boolean> (property: silent) If enabled, then no errors are output in the console; Note: the enclosing actor handler must have this enabled as well. default: false
-prefix <java.lang.String> (property: prefix) The prefix of the objects to scale. default: Object.
-scale-x <double> (property: scaleX) The factor for scaling x/width. default: 1.0 minimum: 0.0 maximum: 1.0
-scale-y <double> (property: scaleY) The factor for scaling y/width. default: 1.0 minimum: 0.0 maximum: 1.0
-round <boolean> (property: round) If enabled, the scaled values get round. default: false
-rounding-type <ROUND|CEILING|FLOOR> (property: roundingType) The type of rounding to perform. default: ROUND
- Author:
- FracPete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected int
m_NumDecimals
the number of decimals.protected String
m_Prefix
the prefix of the objects.protected boolean
m_Round
whether to round the scaled values.protected RoundingType
m_RoundingType
the rounding type.protected double
m_ScaleX
the scale factor for x/width.protected double
m_ScaleY
the scale factor for y/height.-
Fields inherited from class adams.flow.transformer.AbstractTransformer
BACKUP_INPUT, BACKUP_OUTPUT, m_InputToken, m_OutputToken
-
Fields inherited from class adams.flow.core.AbstractActor
m_Annotations, m_BackupState, m_DetectedObjectVariables, m_DetectedVariables, m_ErrorHandler, m_Executed, m_Executing, m_ExecutionListeningSupporter, m_FullName, m_LoggingPrefix, m_Name, m_Parent, m_ScopeHandler, m_Self, m_Silent, m_Skip, m_StopFlowOnError, m_StopMessage, m_Stopped, m_StorageHandler, m_VariablesUpdated
-
Fields inherited from class adams.core.option.AbstractOptionHandler
m_OptionManager
-
Fields inherited from class adams.core.logging.LoggingObject
m_Logger, m_LoggingIsEnabled, m_LoggingLevel
-
Fields inherited from interface adams.flow.core.Actor
FILE_EXTENSION, FILE_EXTENSION_GZ
-
-
Constructor Summary
Constructors Constructor Description ScaleReportObjects()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Class[]
accepts()
Returns the class that the consumer accepts.void
defineOptions()
Adds options to the internal list of options.protected String
doExecute()
Executes the flow item.Class[]
generates()
Returns the class of objects that it generates.int
getNumDecimals()
Returns the number of decimals after the decimal point to use.String
getPrefix()
Returns the prefix.String
getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.boolean
getRound()
Returns whether to round the scaled values.RoundingType
getRoundingType()
Returns the type of rounding to perform.double
getScaleX()
Returns the scale factor for x/width.double
getScaleY()
Returns the scale factor for y/width.String
globalInfo()
Returns a string describing the object.String
numDecimalsTipText()
Returns the tip text for this property.String
prefixTipText()
Returns the tip text for this property.protected double
round(double value)
Rounds the value according to the parameters.String
roundingTypeTipText()
Returns the tip text for this property.String
roundTipText()
Returns the tip text for this property.String
scaleXTipText()
Returns the tip text for this property.String
scaleYTipText()
Returns the tip teyt for this property.void
setNumDecimals(int value)
Sets the number of decimals after the decimal point to use.void
setPrefix(String value)
Sets the prefix.void
setRound(boolean value)
Sets whether to round the scaled values.void
setRoundingType(RoundingType value)
Sets the type of rounding to perform.void
setScaleX(double value)
Sets the scale factor for x/width.void
setScaleY(double value)
Sets the scale factor for y/width.-
Methods inherited from class adams.flow.transformer.AbstractTransformer
backupState, currentInput, execute, hasInput, hasPendingOutput, input, output, postExecute, restoreState, wrapUp
-
Methods inherited from class adams.flow.core.AbstractActor
annotationsTipText, canInspectOptions, canPerformSetUpCheck, cleanUp, compareTo, configureLogger, destroy, equals, finalUpdateVariables, findVariables, findVariables, forceVariables, forCommandLine, forName, forName, getAdditionalInformation, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowActors, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getRoot, getScopeHandler, getSilent, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, handleException, hasErrorHandler, hasStopMessage, index, initialize, isBackedUp, isExecuted, isExecuting, isFinished, isHeadless, isStopped, nameTipText, performSetUpChecks, performVariableChecks, preExecute, pruneBackup, pruneBackup, reset, setAnnotations, setErrorHandler, setName, setParent, setSilent, setSkip, setStopFlowOnError, setUp, setVariables, shallowCopy, shallowCopy, silentTipText, sizeOf, skipTipText, stopExecution, stopExecution, stopFlowOnErrorTipText, updateDetectedVariables, updatePrefix, updateVariables, variableChanged
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, finishInit, getDefaultLoggingLevel, getOptionManager, loggingLevelTipText, newOptionManager, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface adams.flow.core.Actor
cleanUp, compareTo, destroy, equals, findVariables, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowExecutionListeningSupporter, getFullName, getName, getNextSibling, getParent, getParentComponent, getPreviousSibling, getRoot, getScopeHandler, getSilent, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, hasErrorHandler, hasStopMessage, index, isExecuted, isFinished, isHeadless, isStopped, setAnnotations, setErrorHandler, setName, setParent, setSilent, setSkip, setStopFlowOnError, setUp, setVariables, shallowCopy, shallowCopy, sizeOf, stopExecution, stopExecution, toCommandLine, variableChanged
-
Methods inherited from interface adams.core.AdditionalInformationHandler
getAdditionalInformation
-
Methods inherited from interface adams.core.logging.LoggingLevelHandler
getLoggingLevel, setLoggingLevel
-
Methods inherited from interface adams.core.logging.LoggingSupporter
getLogger, isLoggingEnabled
-
Methods inherited from interface adams.core.option.OptionHandler
cleanUpOptions, getOptionManager
-
Methods inherited from interface adams.core.VariablesInspectionHandler
canInspectOptions
-
-
-
-
Field Detail
-
m_Prefix
protected String m_Prefix
the prefix of the objects.
-
m_ScaleX
protected double m_ScaleX
the scale factor for x/width.
-
m_ScaleY
protected double m_ScaleY
the scale factor for y/height.
-
m_Round
protected boolean m_Round
whether to round the scaled values.
-
m_RoundingType
protected RoundingType m_RoundingType
the rounding type.
-
m_NumDecimals
protected int m_NumDecimals
the number of decimals.
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing the object.- Specified by:
globalInfo
in interfaceGlobalInfoSupporter
- Specified by:
globalInfo
in classAbstractOptionHandler
- Returns:
- a description suitable for displaying in the gui
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptions
in interfaceOptionHandler
- Overrides:
defineOptions
in classAbstractActor
-
setPrefix
public void setPrefix(String value)
Sets the prefix.- Specified by:
setPrefix
in interfaceObjectPrefixHandler
- Parameters:
value
- the prefix
-
getPrefix
public String getPrefix()
Returns the prefix.- Specified by:
getPrefix
in interfaceObjectPrefixHandler
- Returns:
- the prefix
-
prefixTipText
public String prefixTipText()
Returns the tip text for this property.- Specified by:
prefixTipText
in interfaceObjectPrefixHandler
- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setScaleX
public void setScaleX(double value)
Sets the scale factor for x/width.- Parameters:
value
- the factor
-
getScaleX
public double getScaleX()
Returns the scale factor for x/width.- Returns:
- the factor
-
scaleXTipText
public String scaleXTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setScaleY
public void setScaleY(double value)
Sets the scale factor for y/width.- Parameters:
value
- the factor
-
getScaleY
public double getScaleY()
Returns the scale factor for y/width.- Returns:
- the factor
-
scaleYTipText
public String scaleYTipText()
Returns the tip teyt for this property.- Returns:
- tip teyt for this property suitable for displaying in the GUI or for listing the options.
-
setRound
public void setRound(boolean value)
Sets whether to round the scaled values.- Parameters:
value
- true if to round
-
getRound
public boolean getRound()
Returns whether to round the scaled values.- Returns:
- true if to round
-
roundTipText
public String roundTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setRoundingType
public void setRoundingType(RoundingType value)
Sets the type of rounding to perform.- Parameters:
value
- the type
-
getRoundingType
public RoundingType getRoundingType()
Returns the type of rounding to perform.- Returns:
- the type
-
roundingTypeTipText
public String roundingTypeTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setNumDecimals
public void setNumDecimals(int value)
Sets the number of decimals after the decimal point to use.- Parameters:
value
- the number of decimals
-
getNumDecimals
public int getNumDecimals()
Returns the number of decimals after the decimal point to use.- Returns:
- the number of decimals
-
numDecimalsTipText
public String numDecimalsTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
getQuickInfo
public String getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.- Specified by:
getQuickInfo
in interfaceActor
- Specified by:
getQuickInfo
in interfaceQuickInfoSupporter
- Overrides:
getQuickInfo
in classAbstractActor
- Returns:
- null if no info available, otherwise short string
-
accepts
public Class[] accepts()
Returns the class that the consumer accepts.- Specified by:
accepts
in interfaceInputConsumer
- Returns:
- the Class of objects that can be processed
-
generates
public Class[] generates()
Returns the class of objects that it generates.- Specified by:
generates
in interfaceOutputProducer
- Returns:
- the Class of the generated tokens
-
round
protected double round(double value)
Rounds the value according to the parameters.- Parameters:
value
- the value to round- Returns:
- the potentially rounded value
- See Also:
m_Round
,m_RoundingType
-
doExecute
protected String doExecute()
Executes the flow item.- Specified by:
doExecute
in classAbstractActor
- Returns:
- null if everything is fine, otherwise error message
-
-