Difference between revisions of "Slicer/Features/Middleware"

From NAMIC Wiki
Jump to: navigation, search
Line 10: Line 10:
  
 
=Technology/Function description=
 
=Technology/Function description=
 +
== Goal ==
 +
* Slicer + IGSTK
 +
 +
== Technologies ==
 
* Publish subscribe ORB/ACE [Peter]
 
* Publish subscribe ORB/ACE [Peter]
 
* Socket IGSTK [Junichi Patrick]  
 
* Socket IGSTK [Junichi Patrick]  
  
Requirements
+
==Requirements==
 
* Reliable for command transfer (all data transferred, in order)
 
* Reliable for command transfer (all data transferred, in order)
 
* Fast for tracking data transfer (only the latest coordinate is required, can lose data)
 
* Fast for tracking data transfer (only the latest coordinate is required, can lose data)
Line 21: Line 25:
 
* Time out (device is down)
 
* Time out (device is down)
  
Would be nice to have
+
==Would be nice to have==
 
* Priority
 
* Priority
 
* Point - multi-point data transfer
 
* Point - multi-point data transfer
  
Question
+
==Questions==
 
* UDP - fast, no delay due to ACK packages
 
* UDP - fast, no delay due to ACK packages
 
* TCP/IP - reliable, easy
 
* TCP/IP - reliable, easy
Line 34: Line 38:
 
** same issues with [[Slicer3:Slicer_Daemon]]
 
** same issues with [[Slicer3:Slicer_Daemon]]
  
See: [http://www.cisst.org/wiki/MRI_robot/MIT_2007_06_27_Meeting discussion about data transfer]
+
==See also==
 +
* [http://www.cisst.org/wiki/MRI_robot/MIT_2007_06_27_Meeting discussion about data transfer]
  
 
=Potential application in IGT=
 
=Potential application in IGT=

Revision as of 16:42, 14 December 2007

Home < Slicer < Features < Middleware

<< Slicer/Features

Title

Middleware

Names

  • session leader
  • participants

Technology/Function description

Goal

  • Slicer + IGSTK

Technologies

  • Publish subscribe ORB/ACE [Peter]
  • Socket IGSTK [Junichi Patrick]

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

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

What is not

Who among us will take leading role?

Links