Difference between revisions of "Slicer/Features/Middleware"

From NAMIC Wiki
Jump to: navigation, search
Line 55: Line 55:
 
* Robot control
 
* Robot control
 
* Periferials: OpenTracker/Navitrack has 3D mouse driver etc.
 
* Periferials: OpenTracker/Navitrack has 3D mouse driver etc.
 
  
 
=Which part is already in Slicer=
 
=Which part is already in Slicer=
 +
* IGSTK intra process communication
  
 
=What is not=
 
=What is not=
 +
* IGSTK inter-process communication
  
 
=Who among us will take leading role?=
 
=Who among us will take leading role?=
 +
* Junichi
 +
* Georgetown
 +
* JHU
 +
* Queen's
  
 
=Links=
 
=Links=
 
* [[2007_Slier_IGTWS_homework_GT]]
 
* [[2007_Slier_IGTWS_homework_GT]]
 
* [[2007_Slier_IGTWS_homework_NCIGT]]
 
* [[2007_Slier_IGTWS_homework_NCIGT]]

Revision as of 16:53, 14 December 2007

Home < Slicer < Features < Middleware

<< Slicer/Features

Title

Middleware

Names

  • session leader
  • participants

Technology/Function description

Goal

  • Slicer + IGSTK

Technologies

  • Look at Publish subscribe ORB/ACE - DDS [Peter]
  • Socket IGSTK [Junichi Patrick]
  • Navitrack - phase out?
    • Hard to debug
    • Not modular (some modules can't be disabled)
    • No error handling - just halt
    • Not as simple and clean as just using the standard TCP/IP socket
    • Still problems with image transfer under Windows and possibly other OS (packet size is not based on the size allowed by OS)
    • Security: can be flooded with packets, no authentication

Requirements

  • Reliable for command transfer (all data transferred, in order)
  • Fast for tracking data transfer (only the latest coordinate is required, can lose data)
  • Image transfer (500K or more)
  • Data types (struct: string, integer, float)
  • Data type checking (number is correctly formatted etc)
  • Time out (device is down)

Would be nice to have

  • Priority
  • Point - multi-point data transfer

Questions

  • UDP - fast, no delay due to ACK packages
  • TCP/IP - reliable, easy
  • Security
    • malicious packets or sent by mistake
    • CRC and auth.?
    • pop up a dialog box before accepting data? (just one, to avoid flood)
    • same issues with Slicer3:Slicer_Daemon
  • Firewall?

See also

Potential application in IGT

  • Tracker data transfer
  • Image transfer from MRI
  • Robot coordinate transfer
  • Robot control
  • Periferials: OpenTracker/Navitrack has 3D mouse driver etc.

Which part is already in Slicer

  • IGSTK intra process communication

What is not

  • IGSTK inter-process communication

Who among us will take leading role?

  • Junichi
  • Georgetown
  • JHU
  • Queen's

Links