TubeTK/OpenIGTLink: Difference between revisions

From KitwarePublic
Jump to navigationJump to search
Line 4: Line 4:


=Workflow=
=Workflow=
== Client side ==
== Workflow ==
=== Client ===
# Establish connection with server side  ( Example: igtl::ClientSocket  )
# Establish connection with server side  ( Example: igtl::ClientSocket  )
# Generate OpenIGTLink message (data-to-be-sent ) and package in Open IGT Link format. (Example: igtl::TransformMessage )
# Generate OpenIGTLink message (data-to-be-sent ) and package in Open IGT Link format. (Example: igtl::TransformMessage )
#  
# Send data through TCP/IP socket connection
 
== Server side ==
== Server side ==



Revision as of 15:27, 4 June 2010

Introduction

OpenIGTLink is a communication protocol designed to work on the TCP/IP application layer to handle image, tracking data, transform, device control and monitoring command, and other user-defined data types. An example use case is a computer interfaced to a tracking device, gathers pose information of surgical instruments and packages the information in an OpenIGTLink protocol and sends the data over a network connection to a quantitative imaging workstation that runs

Workflow

Workflow

Client

  1. Establish connection with server side ( Example: igtl::ClientSocket )
  2. Generate OpenIGTLink message (data-to-be-sent ) and package in Open IGT Link format. (Example: igtl::TransformMessage )
  3. Send data through TCP/IP socket connection

Server side

Types of OpenIGTLink message

Version 1

  1. Transform ( igtlTransformMessage )
  2. Image ( igtlImageMessage )
  3. Position ( igtlPositionMessage )
  4. Status message ( igtlStatusMessage )

Version 2

OpenIGTLink CLI Application in TubeTK

Reference

  1. NAMIC OpenIGTLink wiki page