Package gov.nih.mipav.view.dialogs
Class JDialogN4MRIBiasFieldCorrection
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- java.awt.Window
-
- java.awt.Dialog
-
- javax.swing.JDialog
-
- gov.nih.mipav.view.dialogs.JDialogBase
-
- gov.nih.mipav.view.dialogs.JDialogScriptableBase
-
- gov.nih.mipav.view.dialogs.JDialogN4MRIBiasFieldCorrection
-
- All Implemented Interfaces:
AlgorithmInterface
,ScriptableActionInterface
,DialogDefaultsInterface
,ActionDiscovery
,java.awt.event.ActionListener
,java.awt.event.FocusListener
,java.awt.event.ItemListener
,java.awt.event.WindowListener
,java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.Accessible
,javax.swing.RootPaneContainer
,javax.swing.WindowConstants
public class JDialogN4MRIBiasFieldCorrection extends JDialogScriptableBase implements AlgorithmInterface, ActionDiscovery
Dialog to get user input, then call the algorithm.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class gov.nih.mipav.view.dialogs.JDialogBase
JDialogBase.CancelAction, JDialogBase.HelpAction, JDialogBase.OKAction
-
Nested classes/interfaces inherited from class javax.swing.JDialog
javax.swing.JDialog.AccessibleJDialog
-
Nested classes/interfaces inherited from class java.awt.Dialog
java.awt.Dialog.AccessibleAWTDialog, java.awt.Dialog.ModalExclusionType, java.awt.Dialog.ModalityType
-
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow, java.awt.Window.Type
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
autoThreshold
DOCUMENT ME!private javax.swing.JCheckBox
autoThresholdCheckbox
DOCUMENT ME!private ModelImage
confidenceImage
private int
controlPoints
private float
convertTomm
DOCUMENT ME!private boolean
createField
DOCUMENT ME!private javax.swing.JCheckBox
createFieldCheckbox
DOCUMENT ME!private int[]
destExtents
DOCUMENT ME!private double
endTol
DOCUMENT ME!private float
fieldDistance
DOCUMENT ME!private ModelImage
fieldImage
DOCUMENT ME!private int
fittingLevels
private ModelImage
image
DOCUMENT ME!private double
kernelfwhm
DOCUMENT ME!private javax.swing.JLabel
labelControlPoints
private javax.swing.JLabel
labelDistance
DOCUMENT ME!private javax.swing.JLabel
labelEndTol
DOCUMENT ME!private javax.swing.JLabel
labelFittingLevels
private javax.swing.JLabel
labelKernel
DOCUMENT ME!private javax.swing.JLabel
labelMaxIter
DOCUMENT ME!private javax.swing.JLabel
labelNoise
DOCUMENT ME!private javax.swing.JLabel
labelShrink
DOCUMENT ME!private javax.swing.JLabel
labelSignal
DOCUMENT ME!private int
maxIter
DOCUMENT ME!private AlgorithmN4MRIBiasFieldCorrectionFilter
N4Algo
DOCUMENT ME!private double
noise
DOCUMENT ME!private float[]
orgResol
DOCUMENT ME!private boolean
regionFlag
DOCUMENT ME!private ModelImage
resultImage
DOCUMENT ME!private int
resXUnit
DOCUMENT ME!private int
resYUnit
DOCUMENT ME!private int
resZUnit
DOCUMENT ME!private float
shrink
DOCUMENT ME!private javax.swing.JTextField
textControlPoints
private javax.swing.JTextField
textDistance
DOCUMENT ME!private javax.swing.JTextField
textEndTol
DOCUMENT ME!private javax.swing.JTextField
textFittingLevels
private javax.swing.JTextField
textKernel
DOCUMENT ME!private javax.swing.JTextField
textMaxIter
DOCUMENT ME!private javax.swing.JTextField
textNoise
DOCUMENT ME!private javax.swing.JTextField
textShrink
DOCUMENT ME!private javax.swing.JTextField
textSignal
DOCUMENT ME!private float
threshold
DOCUMENT ME!private boolean
useScript
DOCUMENT ME!private javax.swing.JRadioButton
VOIRegions
DOCUMENT ME!private javax.swing.JRadioButton
wholeImage
DOCUMENT ME!-
Fields inherited from class gov.nih.mipav.view.dialogs.JDialogScriptableBase
displayInNewFrame, isComplete, scriptParameters
-
Fields inherited from class gov.nih.mipav.view.dialogs.JDialogBase
applyButton, bar, cancelButton, cancelFlag, closeButton, HELP, helpButton, mainDialogPanel, NEW, OKButton, parentFrame, progressBar, REPLACE, runInSeparateThread, runningScriptFlag, runQuiet, serif12, serif12B, voiManager
-
Fields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabled
-
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
-
Constructor Summary
Constructors Constructor Description JDialogN4MRIBiasFieldCorrection()
Empty constructor needed for dynamic instantiation (used during scripting).JDialogN4MRIBiasFieldCorrection(java.awt.Frame theParentFrame, ModelImage im)
Create new dialog to set parameters for N4 MRI Bias Field Correction algorithm.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
actionPerformed(java.awt.event.ActionEvent event)
Closes dialog box when the OK button is pressed and calls the algorithm.void
algorithmPerformed(AlgorithmBase algorithm)
This method is required if the AlgorithmPerformed interface is implemented.protected void
callAlgorithm()
Once all the necessary variables are set, call the N4 MRI Bias Field Correction algorithm.ParameterTable
createInputParameters()
Returns a table listing the input parameters of this algorithm (which should match up with the scripting parameters used insetGUIFromParams()
).ParameterTable
createOutputParameters()
Returns a table listing the output parameters of this algorithm (usually just labels used to obtain output image names later).protected void
doPostAlgorithmActions()
Store the result image in the script runner's image table now that the action execution is finished.ActionMetadata
getActionMetadata()
Return meta-information about this discoverable action for categorization and labeling purposes.java.lang.String
getOutputImageName(java.lang.String imageParamName)
Returns the name of an image output by this algorithm, the image returned depends on the parameter label given (which can be used to retrieve the image object from the image registry).ModelImage
getResultImage()
Accessor that returns the image.private void
init()
Sets up the GUI (panels, buttons, etc) and displays it on the screen.private void
initVars()
Initializes the variables (resolutions) needed for the algorithm.boolean
isActionComplete()
Returns whether the action has successfully completed its execution.void
setAutoFlag(boolean flag)
Accessor that sets the auto threshold flag.void
setControlPoints(int controlPoints)
void
setCreateField(boolean flag)
Accessor that sets the create field flag.void
setEndTol(double scale)
Accessor that sets the end tol.void
setFieldDistance(float scale)
Accessor that sets the field distance.void
setFittingLevels(int fittingLevels)
protected void
setGUIFromParams()
Set the dialog GUI using the script parameters while running this algorithm as part of a script.void
setKernel(double scale)
Accessor that sets the kernel.void
setMaxIter(int max)
Accessor that sets the max iterations.void
setNoise(double scale)
Accessor that sets the noise.void
setRegionFlag(boolean flag)
Accessor that sets the region flag.void
setShrink(float scale)
Accessor that sets the shrink.void
setThreshold(float scale)
Accessor that sets the threshold.private boolean
setVariables()
Use the GUI results to set up the variables needed to run the algorithm.protected void
storeParamsFromGUI()
Record the parameters just used to run this algorithm in a script.-
Methods inherited from class gov.nih.mipav.view.dialogs.JDialogScriptableBase
getDialogActionString, insertScriptLine, isComplete, scriptRun, setComplete
-
Methods inherited from class gov.nih.mipav.view.dialogs.JDialogBase
buildApplyButton, buildButtons, buildCancelButton, buildCancelButton, buildCloseButton, buildHelpButton, buildImageComboBox, buildOKButton, buildOKButton, buildOKCancelButtons, buildTitledBorder, buildTitledBorder, createLabel, createProgressBar, createProgressBar, createTextField, focusGained, focusLost, getDialogName, isCancelled, isQuietRunning, isRunInSeparateThread, isScriptRunning, itemStateChanged, loadDefaults, loadDefaults, makeImageName, makeString, openNewFrame, saveDefaults, saveDefaults, setLeftHandSystem, setQuietRunning, setScriptRunning, setSeparateThread, setVisible, setVisible, setVisibleMenuBar, setVisibleStandard, setVOIManager, setWCSystem, testParameter, testParameterMin, updateFFTFileInfo, updateFileInfo, updateFileInfoOtherModality, updateFileInfoStatic, updateFileInfoStatic, updateFileTypeInfo, updateFileTypeInfo, windowActivated, windowClosed, windowClosing, windowDeactivated, windowDeiconified, windowIconified, windowOpened
-
Methods inherited from class javax.swing.JDialog
addImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
-
Methods inherited from class java.awt.Dialog
addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setBackground, setModal, setModalityType, setOpacity, setResizable, setShape, setTitle, setUndecorated, show, toBack
-
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, toFront
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTree
-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface gov.nih.mipav.view.dialogs.ActionDiscovery
scriptRun
-
-
-
-
Field Detail
-
autoThreshold
private boolean autoThreshold
DOCUMENT ME!
-
autoThresholdCheckbox
private javax.swing.JCheckBox autoThresholdCheckbox
DOCUMENT ME!
-
convertTomm
private float convertTomm
DOCUMENT ME!
-
createField
private boolean createField
DOCUMENT ME!
-
createFieldCheckbox
private javax.swing.JCheckBox createFieldCheckbox
DOCUMENT ME!
-
destExtents
private int[] destExtents
DOCUMENT ME!
-
endTol
private double endTol
DOCUMENT ME!
-
fieldDistance
private float fieldDistance
DOCUMENT ME!
-
fieldImage
private ModelImage fieldImage
DOCUMENT ME!
-
image
private ModelImage image
DOCUMENT ME!
-
kernelfwhm
private double kernelfwhm
DOCUMENT ME!
-
labelDistance
private javax.swing.JLabel labelDistance
DOCUMENT ME!
-
labelEndTol
private javax.swing.JLabel labelEndTol
DOCUMENT ME!
-
labelKernel
private javax.swing.JLabel labelKernel
DOCUMENT ME!
-
labelMaxIter
private javax.swing.JLabel labelMaxIter
DOCUMENT ME!
-
labelNoise
private javax.swing.JLabel labelNoise
DOCUMENT ME!
-
labelShrink
private javax.swing.JLabel labelShrink
DOCUMENT ME!
-
labelSignal
private javax.swing.JLabel labelSignal
DOCUMENT ME!
-
labelFittingLevels
private javax.swing.JLabel labelFittingLevels
-
labelControlPoints
private javax.swing.JLabel labelControlPoints
-
maxIter
private int maxIter
DOCUMENT ME!
-
N4Algo
private AlgorithmN4MRIBiasFieldCorrectionFilter N4Algo
DOCUMENT ME!
-
noise
private double noise
DOCUMENT ME!
-
orgResol
private float[] orgResol
DOCUMENT ME!
-
regionFlag
private boolean regionFlag
DOCUMENT ME!
-
resultImage
private ModelImage resultImage
DOCUMENT ME!
-
resXUnit
private int resXUnit
DOCUMENT ME!
-
resYUnit
private int resYUnit
DOCUMENT ME!
-
resZUnit
private int resZUnit
DOCUMENT ME!
-
shrink
private float shrink
DOCUMENT ME!
-
textDistance
private javax.swing.JTextField textDistance
DOCUMENT ME!
-
textEndTol
private javax.swing.JTextField textEndTol
DOCUMENT ME!
-
textKernel
private javax.swing.JTextField textKernel
DOCUMENT ME!
-
textMaxIter
private javax.swing.JTextField textMaxIter
DOCUMENT ME!
-
textNoise
private javax.swing.JTextField textNoise
DOCUMENT ME!
-
textShrink
private javax.swing.JTextField textShrink
DOCUMENT ME!
-
textSignal
private javax.swing.JTextField textSignal
DOCUMENT ME!
-
textFittingLevels
private javax.swing.JTextField textFittingLevels
-
textControlPoints
private javax.swing.JTextField textControlPoints
-
fittingLevels
private int fittingLevels
-
controlPoints
private int controlPoints
-
threshold
private float threshold
DOCUMENT ME!
-
confidenceImage
private ModelImage confidenceImage
-
useScript
private boolean useScript
DOCUMENT ME!
-
VOIRegions
private javax.swing.JRadioButton VOIRegions
DOCUMENT ME!
-
wholeImage
private javax.swing.JRadioButton wholeImage
DOCUMENT ME!
-
-
Constructor Detail
-
JDialogN4MRIBiasFieldCorrection
public JDialogN4MRIBiasFieldCorrection()
Empty constructor needed for dynamic instantiation (used during scripting).
-
JDialogN4MRIBiasFieldCorrection
public JDialogN4MRIBiasFieldCorrection(java.awt.Frame theParentFrame, ModelImage im)
Create new dialog to set parameters for N4 MRI Bias Field Correction algorithm.- Parameters:
theParentFrame
- Parent frame.im
- Source image.
-
-
Method Detail
-
actionPerformed
public void actionPerformed(java.awt.event.ActionEvent event)
Closes dialog box when the OK button is pressed and calls the algorithm.- Specified by:
actionPerformed
in interfacejava.awt.event.ActionListener
- Overrides:
actionPerformed
in classJDialogBase
- Parameters:
event
- Event that triggers function.
-
algorithmPerformed
public void algorithmPerformed(AlgorithmBase algorithm)
This method is required if the AlgorithmPerformed interface is implemented. It is called by the algorithms when it has completed or failed to to complete, so that the dialog can be display the result image and/or clean up.- Specified by:
algorithmPerformed
in interfaceAlgorithmInterface
- Parameters:
algorithm
- Algorithm that caused the event.
-
getResultImage
public ModelImage getResultImage()
Accessor that returns the image.- Returns:
- The result image.
-
setAutoFlag
public void setAutoFlag(boolean flag)
Accessor that sets the auto threshold flag.- Parameters:
flag
-true
indicates auto threshold,false
otherwise.
-
setCreateField
public void setCreateField(boolean flag)
Accessor that sets the create field flag.- Parameters:
flag
-true
indicates create field image,false
otherwise.
-
setEndTol
public void setEndTol(double scale)
Accessor that sets the end tol.- Parameters:
scale
- Value to set end tol to.
-
setFieldDistance
public void setFieldDistance(float scale)
Accessor that sets the field distance.- Parameters:
scale
- Value to set field distance to.
-
setKernel
public void setKernel(double scale)
Accessor that sets the kernel.- Parameters:
scale
- Value to set kernel to.
-
setMaxIter
public void setMaxIter(int max)
Accessor that sets the max iterations.- Parameters:
max
- The max iterations
-
setNoise
public void setNoise(double scale)
Accessor that sets the noise.- Parameters:
scale
- Value to set noise to.
-
setFittingLevels
public void setFittingLevels(int fittingLevels)
- Parameters:
fittingLevels
-
-
setControlPoints
public void setControlPoints(int controlPoints)
- Parameters:
controlPoints
-
-
setRegionFlag
public void setRegionFlag(boolean flag)
Accessor that sets the region flag.- Parameters:
flag
-true
indicates the whole image is blurred,false
indicates a region.
-
setShrink
public void setShrink(float scale)
Accessor that sets the shrink.- Parameters:
scale
- Value to set shrink to.
-
setThreshold
public void setThreshold(float scale)
Accessor that sets the threshold.- Parameters:
scale
- Value to set the threshold to.
-
callAlgorithm
protected void callAlgorithm()
Once all the necessary variables are set, call the N4 MRI Bias Field Correction algorithm.- Specified by:
callAlgorithm
in classJDialogScriptableBase
-
doPostAlgorithmActions
protected void doPostAlgorithmActions()
Store the result image in the script runner's image table now that the action execution is finished.- Overrides:
doPostAlgorithmActions
in classJDialogScriptableBase
-
setGUIFromParams
protected void setGUIFromParams()
Set the dialog GUI using the script parameters while running this algorithm as part of a script.- Specified by:
setGUIFromParams
in classJDialogScriptableBase
-
storeParamsFromGUI
protected void storeParamsFromGUI() throws ParserException
Record the parameters just used to run this algorithm in a script.- Specified by:
storeParamsFromGUI
in classJDialogScriptableBase
- Throws:
ParserException
- If there is a problem creating/recording the new parameters.
-
init
private void init()
Sets up the GUI (panels, buttons, etc) and displays it on the screen.
-
initVars
private void initVars()
Initializes the variables (resolutions) needed for the algorithm.
-
setVariables
private boolean setVariables()
Use the GUI results to set up the variables needed to run the algorithm.- Returns:
true
if parameters set successfully,false
otherwise.
-
getActionMetadata
public ActionMetadata getActionMetadata()
Return meta-information about this discoverable action for categorization and labeling purposes.- Specified by:
getActionMetadata
in interfaceActionDiscovery
- Returns:
- Metadata for this action.
-
createInputParameters
public ParameterTable createInputParameters()
Returns a table listing the input parameters of this algorithm (which should match up with the scripting parameters used insetGUIFromParams()
).- Specified by:
createInputParameters
in interfaceActionDiscovery
- Returns:
- A parameter table listing the inputs of this algorithm.
-
createOutputParameters
public ParameterTable createOutputParameters()
Returns a table listing the output parameters of this algorithm (usually just labels used to obtain output image names later).- Specified by:
createOutputParameters
in interfaceActionDiscovery
- Returns:
- A parameter table listing the outputs of this algorithm.
-
getOutputImageName
public java.lang.String getOutputImageName(java.lang.String imageParamName)
Returns the name of an image output by this algorithm, the image returned depends on the parameter label given (which can be used to retrieve the image object from the image registry).- Specified by:
getOutputImageName
in interfaceActionDiscovery
- Parameters:
imageParamName
- The output image parameter label for which to get the image name.- Returns:
- The image name of the requested output image parameter label.
-
isActionComplete
public boolean isActionComplete()
Returns whether the action has successfully completed its execution.- Specified by:
isActionComplete
in interfaceActionDiscovery
- Returns:
- True, if the action is complete. False, if the action failed or is still running.
-
-