2010 NAMIC Project week: Viewer Manager Factory

From NAMIC Wiki
Jump to: navigation, search
Home < 2010 NAMIC Project week: Viewer Manager Factory


Key Investigators

  • Alex Yarmarkovich, Kilian, Steve, Nicole, JC, Julien

Objective

Create a pluggable structure for managing MRML<-->VTK Rendering and Widget interactions in the context of Slicer4. This include mapping MRML annotation nodes to and from vtkWidgets, mapping vtkMRMLModelNode and hierarchies to vtkActors/vtkMappers.

Others:

  • Fidicials (all annotations)
  • ROIs
  • VolumeRendering
  • Module-specific rendering (should be possible for loadable module to register a class that maps MRML nodes to-from elements in the vtkRenderWindow

Approach, Plan

Create a vtkSlicerManagerFactory and vtkSlicerAbstractManager. The vtkSlicerAbstractManager is parameterized by a vtkRenderWindow and is subclassed for each purpose. The vtkSlicerManagerFactory holds a registry of manager types so that when a new 3D Viewer is create, a set of managers is associated with the viewer.

Loadable modules should be able to access to ManagerFactory and register custom manager types to handle their custom nodes.

Progress

  • created architecture and coded initial implementation for vtkMRMLDisplayableManager library including
    • vtkMRMLDisplayableManagerFactory class
    • vtkMRMLAbstractDisplayableManager class
    • vtkMRMLModelDisplayableManager

Delivery Mechanism

This work will be delivered to the NA-MIC Kit as a (please select the appropriate options by noting YES against them below)

  1. ITK Module
  2. Slicer Module
    1. Built-in
    2. Extension -- commandline
    3. Extension -- loadable
  3. Other (Please specify) YES: Slicer4 base code.

References