ImFusion SDK 4.3
UltrasoundCalibrationController Class Reference

#include <ImFusion/US/UltrasoundCalibrationController.h>

GUI controller for freehand ultrasound calibration. More...

+ Inheritance diagram for UltrasoundCalibrationController:

Detailed Description

GUI controller for freehand ultrasound calibration.

Opens an OptimizationDialog for the user to interactively choose suited optimizers, run single calibrations as well as calibration studies, and examine the result using an additional 2D view.

See UltrasoundCalibration for details on the underlying algorithm. Best practice includes running the algorithm with already pre-initialized calibration, and color-blending turned on in the addutional 2D view and/or the MPR views.

Public Slots

void onSetSM (int mode)
 Change the similarity measure.
 
void onSetPatchSize (int val)
 Change the patch size.
 
void onSetMinOverlap (int percent)
 Change the minimum overlap in percent.
 
void onSetUseSweeps (int which)
 Change which of the sweeps to compute similarity to.
 
void onSetMultiMode (int mode)
 Change mode for more than two sweeps.
 
void onSetMask (bool flag)
 Change whether internal zero-mask is used for computed compounding slices.
 
void onSetShow (bool flag)
 Change of show MPR flag.
 
void onRun ()
 Execute the image-based optimization.
 
void onInit ()
 Initialize calibration based on geometry alone.
 
void onReset ()
 Resets the calibration.
 
void onEval ()
 Single evaluation.
 
void onCalibrationChanged (UltrasoundSweep *sweep)
 Called from sweep properties when calibration parameters have changed.
 
void onNumMotionParsChanged ()
 Called from optionally connected sweep motion controllers.
 
void onFlip ()
 

Signals

void calibrationChanged ()
 Emitted when the calibration has changed.
 

Public Member Functions

 UltrasoundCalibrationController (UltrasoundCalibration *usCal)
 
void init () override
 Two-step initialization function to be implemented by subclasses.
 
void selectionChanged (const SharedImageSet *data)
 Update compounding and similarity in single frame mode.
 
void onSelectedDataChanged (const DataList &data) override
 Switch between sweeps in single frame mode.
 
- Public Member Functions inherited from AlgorithmController
 AlgorithmController (Algorithm *algorithm)
 Creates a new AlgorithmController wrapping the given algorithm, which must not be null.
 
const Algorithmalgorithm () const
 Returns the underlying Algorithm instance.
 
Algorithmalgorithm ()
 
void showInputData ()
 Shows the input data in the DisplayWidget.
 
InputDataVisibility showsInputData ()
 Checks if the input data is currently visible in the DisplayWidget.
 
void showHelp ()
 Attempts to open the user documentation page for the underlying algorithm.
 
std::optional< Filesystem::PathhelpPath () const
 Returns the path to the user documentation page if it is available, std::nullopt otherwise.
 
std::string title () const override
 Returns the original factory name of the underlying Algorithm.
 
- Public Member Functions inherited from Controller
void setMainWindowBase (MainWindowBase *mw)
 Complete the initialization by providing the parent MainWindowBase instance hosting the controller by setting m_main and m_disp and eventually call init().
 
virtual void onVisibleDataChanged (const DataList &)
 Called by MainWindowBase in the case that the currently visible data has changed.
 
virtual std::vector< LocationsupportedLocations () const
 Returns the list of locations in which this controller is allowed to be placed by the parent MainWindowBase.
 
virtual Location preferredLocation () const
 Returns the preferred location in which the parent MainWindowBase should place this controller.
 
virtual void onLocationChanged (Location newLocation)
 Callback function called by the parent MainWindowBase/ControllerDecorator whenever the place was changed.
 
Location location () const
 Convenience function to query the current controller Location from the parent ControllerDecorator.
 
ControllerDecoratorgetDecorator () const
 Convenience function to return m_main->getControllerDecorator(this) if m_main is set or nullptr otherwise.
 
template<typename T>
T * getDecorator () const
 Convenience function to dynamic_cast the return value of getDecorator() to a derived type.
 
- Public Member Functions inherited from Configurable
virtual void configure (const Properties *p)
 Configure this object instance by de-serializing the given Properties.
 
virtual void configuration (Properties *p) const
 Serialize the current object configuration into the given Properties object.
 
virtual void configureDefaults ()
 Retrieve the properties of this object, replaces values with their defaults and sets it again.
 
void registerParameter (ParameterBase *param)
 Register the given Parameter or SubProperty, so that it will be configured during configure()/configuration().
 
void unregisterParameter (const ParameterBase *param)
 Remove the given Parameter or SubProperty from the list of registered parameters.
 
 Configurable (const Configurable &rhs)
 
 Configurable (Configurable &&rhs) noexcept
 
Configurableoperator= (const Configurable &)
 
Configurableoperator= (Configurable &&) noexcept
 
- Public Member Functions inherited from SignalReceiver
 SignalReceiver ()=default
 Default constructor.
 
 SignalReceiver (const SignalReceiver &other)
 Copy constructor, does not copy any existing signal connections from other.
 
SignalReceiveroperator= (SignalReceiver rhs)
 Assignment operator, disconnects all existing connections, does not copy any existing signal connections from rhs.
 
virtual ~SignalReceiver ()
 Virtual destructor disconnects from all connected signals.
 

Additional Inherited Members

- Public Types inherited from AlgorithmController
enum class  InputDataVisibility { None = 0 , All = 1 , Some = 2 }
 Enumeration of possible return values for showsInputData(). More...
 
- Public Types inherited from Controller
enum class  Location : int {
  Unknown = -1 , Naked = 0 , PrimaryDock = 1 , SecondaryDock = 2 ,
  Detached = 3 , ToolBar = 4 , UserLocation = 100
}
 Enumeration of possible placement/decoration options of a Controller. More...
 
- Public Attributes inherited from Controller
Signal signalTitleChanged
 Signal emitted when the title() has changed.
 
- Public Attributes inherited from Configurable
Signal signalParametersChanged
 Emitted whenever one of the registered Parameters' or SubPropertys' signalValueChanged signal was emitted.
 
- Protected Member Functions inherited from AlgorithmController
virtual void closeAlgorithm (bool executed=false)
 Removes the algorithm from the ApplicationController and closes the controller.
 
virtual void onAlgorithmParametersChanged ()
 Callback called when the Algorithm's signalParametersChanged signal was emitted.
 
virtual void onAlgorithmOutputChanged ()
 Callback called when the Algorithm's signalOutputChanged signal was emitted.
 
virtual void duplicateAlgorithmOnSelectedData () const
 Instantiates a new copy of underlying Algorithm on the currently selected Data in the DataModel and adds it to the ApplicationController.
 
void addToDataAndAnnotationModels (OwningDataList data)
 Adds the contents of data to the DataModel of the parent MainWindowBase.
 
- Protected Member Functions inherited from SignalReceiver
void disconnectAll ()
 Disconnects all existing connections.
 
- Protected Attributes inherited from AlgorithmController
Algorithmm_algorithm = nullptr
 The underlying algorithm.
 
- Protected Attributes inherited from Controller
MainWindowBasem_main = nullptr
 The parent MainWindowBase instance hosting this Controller.
 
DisplayWidgetMultim_disp = nullptr
 The main DisplayWidget instance, convenience shortcut for m_main->display().
 
- Protected Attributes inherited from Configurable
std::vector< Paramm_params
 List of all registered Parameter and SubProperty instances.
 

Member Function Documentation

◆ init()

void init ( )
overridevirtual

Two-step initialization function to be implemented by subclasses.

This function is called by setMainWindowBase() after the m_disp and m_main attributes have been set and hence a complete initialization of the controller is possible at this point.

Implements Controller.

◆ onSelectedDataChanged()

void onSelectedDataChanged ( const DataList & data)
overridevirtual

Switch between sweeps in single frame mode.

Reimplemented from Controller.


The documentation for this class was generated from the following file:
Search Tab / S to search, Esc to close