An object of this class offers an UI to configurate a tracking device. If the user finished the configuration process and a fully configurated tracking device is availiabe the object emits a signal "TrackingDeviceConfigurationFinished()". You can then get the tracking device by calling the method GetTrackingDevice(). More...
#include <QmitkTrackingDeviceConfigurationWidget.h>
An object of this class offers an UI to configurate a tracking device. If the user finished the configuration process and a fully configurated tracking device is availiabe the object emits a signal "TrackingDeviceConfigurationFinished()". You can then get the tracking device by calling the method GetTrackingDevice().
Documentation: Once the tracking device is configurated there are two ways to reset the UI to allow the user for configuring a new device. The method Reset() can be called and there is also a button "reset" which can be pressed by the user. In both cases a signal "TrackingDeviceConfigurationReseted()" is emitted and you may wait for a new configurated tracking device.
The possibility to reset the configuration by the user can also be switched of by calling the method EnableUserReset(boolean enable).
Definition at line 44 of file QmitkTrackingDeviceConfigurationWidget.h.
QmitkTrackingDeviceConfigurationWidget::QmitkTrackingDeviceConfigurationWidget | ( | QWidget * | parent = 0 , |
Qt::WindowFlags | f = 0 |
||
) |
Definition at line 26 of file QmitkTrackingDeviceConfigurationWidget.cpp.
References AddOutput(), CreateConnections(), CreateQtPartControl(), m_Controls, and ResetOutput().
: QWidget(parent, f) { m_Controls = NULL; CreateQtPartControl(this); CreateConnections(); //reset a few things ResetOutput(); AddOutput("<br>NDI Polaris selected"); }
QmitkTrackingDeviceConfigurationWidget::~QmitkTrackingDeviceConfigurationWidget | ( | ) |
Definition at line 39 of file QmitkTrackingDeviceConfigurationWidget.cpp.
{ }
void QmitkTrackingDeviceConfigurationWidget::AddOutput | ( | std::string | s ) | [protected] |
Definition at line 145 of file QmitkTrackingDeviceConfigurationWidget.cpp.
References m_Controls, m_output, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_outputTextAurora, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_outputTextMicronTracker, and Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_outputTextPolaris.
Referenced by QmitkTrackingDeviceConfigurationWidget(), TestConnection(), and TrackingDeviceChanged().
{ //print output m_output << s; m_Controls->m_outputTextAurora->setHtml(QString(m_output.str().c_str())); m_Controls->m_outputTextPolaris->setHtml(QString(m_output.str().c_str())); m_Controls->m_outputTextMicronTracker->setHtml(QString(m_output.str().c_str())); m_Controls->m_outputTextPolaris->verticalScrollBar()->setValue(m_Controls->m_outputTextPolaris->verticalScrollBar()->maximum()); m_Controls->m_outputTextAurora->verticalScrollBar()->setValue(m_Controls->m_outputTextAurora->verticalScrollBar()->maximum()); m_Controls->m_outputTextMicronTracker->verticalScrollBar()->setValue(m_Controls->m_outputTextMicronTracker->verticalScrollBar()->maximum()); repaint(); }
mitk::TrackingDevice::Pointer QmitkTrackingDeviceConfigurationWidget::ConfigureNDI5DTrackingDevice | ( | ) | [protected, virtual, slot] |
Definition at line 186 of file QmitkTrackingDeviceConfigurationWidget.cpp.
Referenced by ConstructTrackingDevice().
{
return NULL;
}
mitk::TrackingDevice::Pointer QmitkTrackingDeviceConfigurationWidget::ConfigureNDI6DTrackingDevice | ( | ) | [protected, slot] |
Definition at line 191 of file QmitkTrackingDeviceConfigurationWidget.cpp.
References Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_comPortSpinBoxAurora, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_comPortSpinBoxPolaris, m_Controls, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_trackingDeviceChooser, and mitk::NDITrackingDevice::New().
Referenced by ConstructTrackingDevice().
{ mitk::NDITrackingDevice::Pointer tempTrackingDevice = mitk::NDITrackingDevice::New(); int comPort = 0; if (m_Controls->m_trackingDeviceChooser->currentIndex()==1) comPort = m_Controls->m_comPortSpinBoxAurora->value(); else comPort = m_Controls->m_comPortSpinBoxPolaris->value(); tempTrackingDevice->SetPortNumber(static_cast<mitk::SerialCommunication::PortNumber>(comPort)); //set the com port mitk::TrackingDevice::Pointer returnValue = static_cast<mitk::TrackingDevice*>(tempTrackingDevice); return returnValue; }
mitk::TrackingDevice::Pointer QmitkTrackingDeviceConfigurationWidget::ConstructTrackingDevice | ( | ) | [protected] |
Definition at line 157 of file QmitkTrackingDeviceConfigurationWidget.cpp.
References ConfigureNDI5DTrackingDevice(), ConfigureNDI6DTrackingDevice(), m_Controls, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_radioPolaris5D, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_trackingDeviceChooser, mitk::NDIAurora, mitk::NDIPolaris, and mitk::ClaronTrackingDevice::New().
Referenced by Finished(), and TestConnection().
{ mitk::TrackingDevice::Pointer returnValue; //#### Step 1: configure tracking device: if (m_Controls->m_trackingDeviceChooser->currentIndex()==0)//NDI Polaris { if(m_Controls->m_radioPolaris5D->isChecked()) //5D Tracking { //not yet in the open source part so we'll only get NULL here. returnValue = ConfigureNDI5DTrackingDevice(); } else //6D Tracking { returnValue = ConfigureNDI6DTrackingDevice(); returnValue->SetType(mitk::NDIPolaris); } } else if (m_Controls->m_trackingDeviceChooser->currentIndex()==1)//NDI Aurora { returnValue = ConfigureNDI6DTrackingDevice(); returnValue->SetType(mitk::NDIAurora); } else if (m_Controls->m_trackingDeviceChooser->currentIndex()==2)//ClaronTechnology MicronTracker 2 { returnValue = mitk::ClaronTrackingDevice::New(); } return returnValue; }
void QmitkTrackingDeviceConfigurationWidget::CreateConnections | ( | ) | [protected, virtual] |
Creation of the connections.
Definition at line 53 of file QmitkTrackingDeviceConfigurationWidget.cpp.
References Finished(), m_Controls, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_finishedButton, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_resetButton, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_testConnectionAurora, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_testConnectionMicronTracker, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_testConnectionPolaris, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_trackingDeviceChooser, ResetByUser(), TestConnection(), and TrackingDeviceChanged().
Referenced by QmitkTrackingDeviceConfigurationWidget().
{ if ( m_Controls ) { connect( (QObject*)(m_Controls->m_trackingDeviceChooser), SIGNAL(currentIndexChanged(int)), this, SLOT(TrackingDeviceChanged()) ); connect( (QObject*)(m_Controls->m_testConnectionPolaris), SIGNAL(clicked()), this, SLOT(TestConnection()) ); connect( (QObject*)(m_Controls->m_testConnectionAurora), SIGNAL(clicked()), this, SLOT(TestConnection()) ); connect( (QObject*)(m_Controls->m_testConnectionMicronTracker), SIGNAL(clicked()), this, SLOT(TestConnection()) ); connect( (QObject*)(m_Controls->m_resetButton), SIGNAL(clicked()), this, SLOT(ResetByUser()) ); connect( (QObject*)(m_Controls->m_finishedButton), SIGNAL(clicked()), this, SLOT(Finished()) ); } }
void QmitkTrackingDeviceConfigurationWidget::CreateQtPartControl | ( | QWidget * | parent ) | [protected, virtual] |
Definition at line 43 of file QmitkTrackingDeviceConfigurationWidget.cpp.
References m_Controls, and Ui_QmitkTrackingDeviceConfigurationWidgetControls::setupUi().
Referenced by QmitkTrackingDeviceConfigurationWidget().
{ if (!m_Controls) { // create GUI widgets m_Controls = new Ui::QmitkTrackingDeviceConfigurationWidgetControls; m_Controls->setupUi(parent); } }
void QmitkTrackingDeviceConfigurationWidget::EnableUserReset | ( | bool | enable ) |
Definition at line 83 of file QmitkTrackingDeviceConfigurationWidget.cpp.
References m_Controls, and Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_resetButton.
{ if (enable) m_Controls->m_resetButton->setVisible(true); else m_Controls->m_resetButton->setVisible(false); }
void QmitkTrackingDeviceConfigurationWidget::Finished | ( | ) | [protected, slot] |
Definition at line 111 of file QmitkTrackingDeviceConfigurationWidget.cpp.
References Ui_QmitkTrackingDeviceConfigurationWidgetControls::choose_tracking_device_label, Ui_QmitkTrackingDeviceConfigurationWidgetControls::configuration_finished_label, ConstructTrackingDevice(), m_Controls, m_TrackingDevice, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_trackingDeviceChooser, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_TrackingSystemWidget, and TrackingDeviceConfigurationFinished().
Referenced by CreateConnections().
{ m_TrackingDevice = ConstructTrackingDevice(); m_Controls->m_TrackingSystemWidget->setEnabled(false); m_Controls->m_trackingDeviceChooser->setEnabled(false); m_Controls->choose_tracking_device_label->setEnabled(false); m_Controls->configuration_finished_label->setText("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\np, li { white-space: pre-wrap; }\n</style></head><body style=\" font-family:\'MS Shell Dlg 2\'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n<p align=\"right\" style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"><span style=\" font-weight:600;\">Configuration finished</span></p></body></html>"); emit TrackingDeviceConfigurationFinished(); }
mitk::TrackingDevice::Pointer QmitkTrackingDeviceConfigurationWidget::GetTrackingDevice | ( | ) |
Definition at line 202 of file QmitkTrackingDeviceConfigurationWidget.cpp.
References m_TrackingDevice.
{ return this->m_TrackingDevice; }
void QmitkTrackingDeviceConfigurationWidget::Reset | ( | ) |
Definition at line 121 of file QmitkTrackingDeviceConfigurationWidget.cpp.
References Ui_QmitkTrackingDeviceConfigurationWidgetControls::choose_tracking_device_label, Ui_QmitkTrackingDeviceConfigurationWidgetControls::configuration_finished_label, m_Controls, m_TrackingDevice, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_trackingDeviceChooser, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_TrackingSystemWidget, and TrackingDeviceConfigurationReseted().
Referenced by ResetByUser().
{ m_TrackingDevice = NULL; m_Controls->m_TrackingSystemWidget->setEnabled(true); m_Controls->m_trackingDeviceChooser->setEnabled(true); m_Controls->choose_tracking_device_label->setEnabled(true); m_Controls->configuration_finished_label->setText("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\np, li { white-space: pre-wrap; }\n</style></head><body style=\" font-family:\'MS Shell Dlg 2\'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n<p align=\"right\" style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"><span style=\" font-weight:600;\">Press \"Finished\" to confirm configuration</span></p></body></html>"); emit TrackingDeviceConfigurationReseted(); }
void QmitkTrackingDeviceConfigurationWidget::ResetByUser | ( | ) | [protected, slot] |
Definition at line 131 of file QmitkTrackingDeviceConfigurationWidget.cpp.
References Reset().
Referenced by CreateConnections().
{ Reset(); }
void QmitkTrackingDeviceConfigurationWidget::ResetOutput | ( | ) | [protected] |
Definition at line 137 of file QmitkTrackingDeviceConfigurationWidget.cpp.
References m_Controls, m_output, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_outputTextAurora, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_outputTextMicronTracker, and Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_outputTextPolaris.
Referenced by QmitkTrackingDeviceConfigurationWidget(), and TrackingDeviceChanged().
{ m_output.str(""); m_output <<"<body style=\" font-family:\'MS Shell Dlg 2\'; font-size:7pt; font-weight:400; font-style:normal;\" bgcolor=black><span style=\"color:#ffffff;\"><u>output:</u>"; m_Controls->m_outputTextAurora->setHtml(QString(m_output.str().c_str())); m_Controls->m_outputTextPolaris->setHtml(QString(m_output.str().c_str())); m_Controls->m_outputTextMicronTracker->setHtml(QString(m_output.str().c_str())); }
void QmitkTrackingDeviceConfigurationWidget::TestConnection | ( | ) | [protected, slot] |
Definition at line 89 of file QmitkTrackingDeviceConfigurationWidget.cpp.
References AddOutput(), and ConstructTrackingDevice().
Referenced by CreateConnections().
{ //#### Step 1: construct a tracking device: mitk::TrackingDevice::Pointer testTrackingDevice = ConstructTrackingDevice(); //#### Step 2: test connection and start tracking, generate output AddOutput("<br>testing connection <br> ..."); if (testTrackingDevice->OpenConnection()) { AddOutput(" OK"); AddOutput("<br>testing tracking <br> ..."); if (testTrackingDevice->StartTracking()) { AddOutput(" OK"); if (!testTrackingDevice->StopTracking())AddOutput("<br>ERROR while stop tracking<br>"); } else AddOutput(" ERROR!"); if (!testTrackingDevice->CloseConnection())AddOutput("<br>ERROR while closing connection<br>"); } else AddOutput(" ERROR!"); }
void QmitkTrackingDeviceConfigurationWidget::TrackingDeviceChanged | ( | ) | [protected, slot] |
Definition at line 66 of file QmitkTrackingDeviceConfigurationWidget.cpp.
References AddOutput(), m_Controls, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_trackingDeviceChooser, m_TrackingDeviceConfigurated, Ui_QmitkTrackingDeviceConfigurationWidgetControls::m_TrackingSystemWidget, and ResetOutput().
Referenced by CreateConnections().
{ //show the correspondig widget m_Controls->m_TrackingSystemWidget->setCurrentIndex(m_Controls->m_trackingDeviceChooser->currentIndex()); //the new trackingdevice is not configurated yet m_TrackingDeviceConfigurated = false; //reset output ResetOutput(); //print output if (m_Controls->m_trackingDeviceChooser->currentIndex()==0) AddOutput("<br>NDI Polaris selected"); //NDI Polaris else if (m_Controls->m_trackingDeviceChooser->currentIndex()==1) AddOutput("<br>NDI Aurora selected"); //NDI Aurora else if (m_Controls->m_trackingDeviceChooser->currentIndex()==2) AddOutput("<br>Microntracker selected"); //ClaronTechnology MicronTracker 2 }
void QmitkTrackingDeviceConfigurationWidget::TrackingDeviceConfigurationFinished | ( | ) | [signal] |
Referenced by Finished().
void QmitkTrackingDeviceConfigurationWidget::TrackingDeviceConfigurationReseted | ( | ) | [signal] |
Referenced by Reset().
Ui::QmitkTrackingDeviceConfigurationWidgetControls* QmitkTrackingDeviceConfigurationWidget::m_Controls [protected] |
Definition at line 89 of file QmitkTrackingDeviceConfigurationWidget.h.
Referenced by AddOutput(), ConfigureNDI6DTrackingDevice(), ConstructTrackingDevice(), CreateConnections(), CreateQtPartControl(), EnableUserReset(), Finished(), QmitkTrackingDeviceConfigurationWidget(), Reset(), ResetOutput(), and TrackingDeviceChanged().
std::stringstream QmitkTrackingDeviceConfigurationWidget::m_output [protected] |
Definition at line 91 of file QmitkTrackingDeviceConfigurationWidget.h.
Referenced by AddOutput(), and ResetOutput().
Definition at line 93 of file QmitkTrackingDeviceConfigurationWidget.h.
Referenced by Finished(), GetTrackingDevice(), and Reset().
bool QmitkTrackingDeviceConfigurationWidget::m_TrackingDeviceConfigurated [protected] |
Definition at line 94 of file QmitkTrackingDeviceConfigurationWidget.h.
Referenced by TrackingDeviceChanged().
const std::string QmitkTrackingDeviceConfigurationWidget::VIEW_ID = "org.mitk.views.trackingdeviceconfigurationwidget" [static] |
Definition at line 49 of file QmitkTrackingDeviceConfigurationWidget.h.