Abstract class to configure a tracking device. Inherited widgets should be registered in the Microservice (TrackingDeviceCollectionWidget), If done so, they will be included in the QmitkTrackingDeviceConfigurationWidget of the Tracking Toolbox.
More...
|
| QmitkAbstractTrackingDeviceWidget (QWidget *parent=nullptr, Qt::WindowFlags f=nullptr) |
|
| ~QmitkAbstractTrackingDeviceWidget () override |
|
QmitkAbstractTrackingDeviceWidget * | CloneForQt (QWidget *parent=nullptr) const |
| Return pointer to copy of the object. Internally use of QmitkUSAbstractCustomWidget::Clone() with additionaly setting an internal flag that the object was really cloned. More...
|
|
virtual void | Initialize ()=0 |
| Subclass must implement this method to return a pointer to a copy of the object. Please don't forget to call InitializeSuperclassWidget(), CreateQtPartControl and optionally CreateConnections during this function. More...
|
|
bool | IsInitialized () const |
|
virtual void | ResetOutput () |
| Optional method to add output to a small screen in the trackingToolbox (see QmitkNDIPolarisWidget) More...
|
|
virtual void | AddOutput (std::string) |
| Optional method to add output to a small screen in the trackingToolbox (see QmitkNDIPolarisWidget) More...
|
|
virtual mitk::TrackingDevice::Pointer | GetTrackingDevice ()=0 |
|
virtual void | StoreUISettings () |
| Optional method to store and load settings of your widget (see QmitkNDIPolarisWidget) More...
|
|
virtual void | LoadUISettings () |
| Optional method to store and load settings of your widget (see QmitkNDIPolarisWidget) More...
|
|
virtual bool | IsDeviceInstalled () |
| Optional method to investigate if drivers etc for your device are installed. The default value is "true" as most devices don't need this information. Others however migth crash, and for these you might implement this function (see QmitkMicronTrackerWidget) More...
|
|
virtual void | OnConnected (bool) |
| This function is called, when in the TrackingToolboxView "Connect" was clicked and the device is successful connected. Can e.g. be used to activate options of a tracking device only when it is connected. More...
|
|
virtual void | OnDisconnected (bool) |
| This function is called, when in the TrackingToolboxView "Disconnect" was clicked and the device is successful disconnected. Can e.g. be used to activate/disactivate options of a tracking device. More...
|
|
virtual void | OnStartTracking (bool) |
| This function is called, when in the TrackingToolboxView "Start Tracking" was clicked and the device successfully started tracking. Can e.g. be used to activate options of a tracking device only when tracking is started. More...
|
|
virtual void | OnStopTracking (bool) |
| This function is called, when in the TrackingToolboxView "Stop Tracking" was clicked and the device successful stopped tracking. Can e.g. be used to activate/disactivate options when device is not tracking. More...
|
|
virtual void | OnToolStorageChanged () |
| This function is called, when anything in the ToolStorage changed, e.g. AddTool or EditTool. ServiceListener is connected in the QmitkMITKIGTTrackingToolboxView. More...
|
|
Abstract class to configure a tracking device. Inherited widgets should be registered in the Microservice (TrackingDeviceCollectionWidget), If done so, they will be included in the QmitkTrackingDeviceConfigurationWidget of the Tracking Toolbox.
Documentation:
- Each implementation of this class must have a method to get a TrackingDevice
- Each implementation handles itself, if a new TrackingDevice needs to be constructed. Attention: In former MITK versions, there was no pure virtual GetTrackingDevice function but a pure virtual ConstructTrackingDevice function. You can simply rename these, but you should give it a thought, if each time "Construct" was called, a new device needs to be constructed, or if you can store your TrackingDevice in a member variable and return this. Up to you.
- Please create the UI elements in a function like CreateQtPartControl (e.g. see QmitkVitrualTrackerWidget).
- You might want to use own buttons etc., please connect them in a private CreateConnections (e.g. see QmitkVitrualTrackerWidget).
- Due to initialization of qt during autoloading of the IGT module, you constructor should be as slim as possible and only contain a call of the QmitkAbstractTrackingDeviceWidget constructor and simple variable initialization.
- For the initialization, you must write an Iniltialize() function, which must include a call of InitializeSuperclassWidget() and should contain calls of your private CreateConnections / CreateQtPartControl (if you implemented these).
- For integration into the TrackingToolbox, a clone function is needed. Here, a new widget should be created, Initialize() needs to be called, and all settings of your widget should be copied.
You can Load and Store previous settings of your GUI elements (e.g. see QmitkNDIPolarisWidget). Also, you can add an output textbox to your widget to display information about your device status. It's optional, see e.g. QmitkNDIAuroraWidget. Some Devices need the information if drivers are installed on your computer. If this is necessary for your device to avoid crashes, please override IsDeviceInstalled. The default return value is true otherwise.
Definition at line 52 of file QmitkAbstractTrackingDeviceWidget.h.