pyigtl icon indicating copy to clipboard operation
pyigtl copied to clipboard

Complete support for OpenIGTLink 3.0 message types

Open henrykrumb opened this issue 3 years ago • 0 comments

So far, pyigtl supports IMAGE, TRANSFORM, STRING, POINT and POLYDATA message types. From my experience, this is perfectly sufficient for most applications. However, the OpenIGTLink specification (version 3.0) provides more message types, including composite messages. It would be great to have the additional message types available in pyigtl as well to achieve better interoperability among Python and C++ based OpenIGTLink services.

All message types and their specification can be found in the OpenIGTLink github repo: https://github.com/openigtlink/OpenIGTLink/blob/master/Documents/Protocol/index.md

The following message types are yet to be implemented:

Protocol Version 1 (header version 1):

  • [ ] CAPABILITY
  • [ ] QTRANS (formerly POSITION)
  • [ ] STATUS

Protocol Version 2 (header version 1):

  • [ ] BIND (composite message)
  • [ ] COLORT
  • [ ] IMGMETA
  • [ ] LBMETA
  • [ ] NDARRAY
  • [ ] QTDATA
  • [ ] SENSOR
  • [ ] TDATA (PR exists: https://github.com/lassoan/pyigtl/pull/17)
  • [ ] TRAJ

Protocol Version 3 (header version 2): Please note that for version 3 commands, the message header code would need to be adjusted.

  • [ ] COMMAND
  • [ ] VIDEO
  • [ ] VIDEOMETA

New message types can easily be tested using the test bench: https://github.com/lassoan/pyigtl/blob/master/pyigtl/tests/test_basic_comm.py

henrykrumb avatar Nov 22 '22 08:11 henrykrumb