Page MenuHomePhabricator

OpenIGTLink support for IGT module
Closed, ResolvedPublic

Description

Request for a general way to use OpenIGTLink in MITK.

The old branches, can serve as an example for the new implementation.

Event Timeline

User klemmm has pushed new remote branch:

bug-18380-OpenIGTLinkSupportForIGTModule

User klemmm has pushed new remote branch:

bug-18380-OpenIGTLink-v2

User heime has pushed new remote branch:

bug-18380-OpenIGTLink-integration

[982c35]: Merge branch 'bug-18380-OpenIGTLink-integration'

Merged commits:

2015-02-04 15:25:32 Alfred Franz [c99e0f]
added missing file to files.cmake -> now compiles with windows


2015-02-03 19:07:45 Eric Heim [157884]
moved OpenIGTlink plugin activator to qt5


2015-02-03 17:02:03 Eric Heim [651bc0]
moved to third party repository


2015-02-03 15:41:13 Eric Heim [c66f62]
Merge branch 'bug-18380-OpenIGTLink-v2' into bug-18380-OpenIGTLink-integration

Conflicts:
SuperBuild.cmake


2014-12-18 18:31:35 Martin Klemm [a65377]
Added a test for the NavigationDataToIGTLMessageFilter (so far just half of the modes are tested)


2014-12-18 16:41:24 Martin Klemm [0947c9]
Merge branch 'bug-18380-OpenIGTLinkSupportForIGTModule' into bug-18380-OpenIGTLink-v2

Conflicts:
Modules/CMakeLists.txt


2014-12-18 13:23:31 Martin Klemm [734841]
Added message and command receive event handling in DeviceSetupConnectionWidget


2014-12-17 17:11:21 Martin Klemm [7202c7]
Reverse the previous changes


2014-12-17 17:08:24 Martin Klemm [0bc221]
Bugfix: The IGTLDeviceSetupConnectionWidget disabled the ip edit box when it shouldnt


2014-12-11 15:36:07 Martin Klemm [063dd1]
Added icons to the three plugins


2014-12-11 14:22:45 Martin Klemm [f65f23]
Streaming can be started and stopped from the GUI directly


2014-12-03 19:13:01 Martin Klemm [b172b6]
Added new classes and extended the GUI to start streams manually


2014-11-25 21:03:33 Martin Klemm [c2d042]
Splitted IGTLDeviceSourceManagementWidget into three smaller ones


2014-11-24 19:04:40 Martin Klemm [0c0f76]
Added and extended doxygen documentation
MessageQueue's buffering mode can be set to infinite or no buffering


2014-11-24 15:41:41 Martin Klemm [382751]
Bugfix: replaced the export define in the igtlmessage to navigation data filter


2014-11-24 14:31:26 Martin Klemm [1cefc1]
Added a convenience function to send RTS messages


2014-11-21 20:16:12 Martin Klemm [cfdb28]
Adapted the GUI to fit the previous changes


2014-11-21 20:15:52 Martin Klemm [28bc30]
Adapted the DeviceSource and the MessageProvider so that message provider can connect to a message source
If a message provider receives a streaming command it connects with the fitting source and starts streaming


2014-11-21 12:17:05 Martin Klemm [8c3c1d]
Simplified the Examples


2014-11-21 11:51:19 Martin Klemm [a9b8d8]
Added a new checkbox to turn on/off the logging of send and receive message events


2014-11-21 11:50:50 Martin Klemm [bd6af7]
Removed debug output from the iGTL device


2014-11-21 11:50:31 Martin Klemm [8f2cd6]
The streaming connector checks if the message is valid before sending


2014-11-21 11:48:52 Martin Klemm [4653f7]
NavDataToIGTLMsgFilter checks if the input navigation data is valid and if not invalidates the whole messages (which cause it to be not send)
IGTLMsgTONavDataFilter checks if the input is a valid msg and if not does nothing


2014-11-21 10:30:41 Martin Klemm [2e545a]
Removed the logging window from the OpenIGTLinkManager


2014-11-20 19:21:08 Martin Klemm [17ed20]
Added a new class IGTLStreamingConnector which is used as a connector between the message source and the message provider
Number of outputs of IGTLMessageToNavigationDataFilter can be set manually
Number of outputs of NavigationDataToIGTLMessageFilter is always set to 1
Receiving and Sending IGTLMessages are returning status
Added convenience function to message factory to create instances directly
MessageProvider reads the FPS from the incoming command and starts the streaming
MessageSource has a new attribute FPS
Extended the GUI so that the FPS can be set
Several changes in the plugin to make it work


2014-11-18 12:19:20 Martin Klemm [e15bde]
Another application can ask for a specific data by sending a GET_ message. The message provider sends back an RTS_ signal if there is no fitting source available.


2014-11-17 19:03:18 Martin Klemm [24ac02]
Added a igtl server class. Extended the examples to use the server. Adapted several classes to handle clients and servers.


2014-11-17 19:01:50 Martin Klemm [c43089]
Setting an operation mode in the navdatatoigtlmessage filter also sets the type of the igtl message source


2014-11-14 18:41:43 Martin Klemm [682f14]
Added a new plugin to show the providing mechanism


2014-11-14 18:41:10 Martin Klemm [c3658b]
Added a new type IGTL Message Provider


2014-11-14 18:39:41 Martin Klemm [6548e3]
Added a new filter: navigation data to IGTL message


2014-11-14 11:28:22 Martin Klemm [f7f9dd]
The Send Command button is disabled until the device is connected


2014-11-14 11:12:58 Martin Klemm [3c24af]
Extended the send command functionality to streaming requests
Changed the way the output is shown


2014-11-13 19:25:42 Martin Klemm [b9d0ef]
Updated the OpenIGTLink version
Added all OpenIGTLink message types to the igtlmessagefactory
Added functionality to send command messages
Added a logging window


2014-11-13 11:00:20 Martin Klemm [ea5833]
Changed receiving from blocking to non-blocking
Made some changes in the GUI


2014-11-12 19:05:24 Martin Klemm [ec6c7d]
Added a name variable to the igtl device
This name is used in the device source for the us registration
Removed unnecessary code from the example plugin


2014-11-11 19:28:13 Martin Klemm [440de2]
Added easy send method and splitted the example plugin into two


2014-11-10 19:28:12 Martin Klemm [70a87d]
Added a dummy message to show how to add new custom messages
Added a message queue to the IGTL device


2014-11-10 17:35:19 Martin Klemm [fe6010]
forgot one file


2014-11-10 17:32:59 Martin Klemm [4743e5]
Added a message factory for igtl message instanciation and cloning


2014-11-10 11:26:27 Martin Klemm [8fcee6]
Remove IGTTimeStamp from IGTBase (this was a local change, on master it was never in IGTBase)
Moved the IGTLMessageToNavigationDataFilter to the IGT Module
Therefore, the IGT module depends on OpeniGTLink from now on
Adapted the necessary CMAKE scripts


2014-11-10 11:07:56 Martin Klemm [9a5bd7]
Bugfix: The igtlMessage was set as * and not as smartpointer which caused the deletion of the object. Now the pipeline is working. This version of the OpenIGTLInk plugin could be used as base for a tutorial


2014-11-06 14:41:57 Martin Klemm [525118]
Latest version, no new features. Not working.


2014-11-04 18:43:18 Martin Klemm [ea265a]
Added a igtl source and a conversion filter (igtl message to nav data)


2014-11-03 18:09:00 Martin Klemm [f91637]
Added new classes: IGTLMessage, IGTLMessageSource, IGTLDeviceSource


2014-11-03 13:16:22 Martin Klemm [dafc7b]
Transform messages can be received. It is implemented in a very simple way to check if the communication works.


2014-11-03 11:57:24 Martin Klemm [ad53be]
Added safety feature: when socket::Receive returns an error, the communication is stopped


2014-10-31 17:50:15 Martin Klemm [c5ceee]
MITKOIGTLClient can setup a connection with a OIGTLServer


2014-10-31 16:55:37 Martin Klemm [ffe51d]
Initial commit

Was merged and works, so closing this bug...

Unit tests are still missing, but there is a new bug for this: T18717

UI integration to the IGT module is handled in T18713

[eacdc1]: Merge branch 'bug-18380-OpenIGTLink-integration'

Merged commits:

2015-02-04 20:41:43 Sascha Zelzer [39bebd]
COMP: Add OpenIGTLink binary dir to PATH

[6601d1]: Merge branch 'bug-18380-OpenIGTLink-integration'

Merged commits:

2015-02-04 22:30:38 Sascha Zelzer [8220cd]
COMP: Added missing build config subdir

[8559d1]: Merge branch 'bug-18380-OpenIGTLink-integration'

Merged commits:

2015-02-11 14:17:46 Eric Heim [153c66]
moved the openIGTLink plugin documentation into plugin manuals

Is this finished? Can we close the bug?

From my point of view we can close it. I do not have anything to commit to this bug anymore.