Difference between revisions of "Projects:ARRA:SlicerEM:Developer"

From NAMIC Wiki
Jump to: navigation, search
Line 24: Line 24:
 
* Review which widgets should be converted
 
* Review which widgets should be converted
 
* <del>Convert EMSegment/{Algorithm,Graph,MRML,Registration} to shared library.</del> See [http://viewvc.slicer.org/viewcvs.cgi?rev=14245&view=rev 14245], [http://viewvc.slicer.org/viewcvs.cgi?rev=14248&view=rev 14428]
 
* <del>Convert EMSegment/{Algorithm,Graph,MRML,Registration} to shared library.</del> See [http://viewvc.slicer.org/viewcvs.cgi?rev=14245&view=rev 14245], [http://viewvc.slicer.org/viewcvs.cgi?rev=14248&view=rev 14428]
* <del>Update QtModule to use EMSegment libraries.</del> See [http://viewvc.slicer.org/viewcvs.cgi?rev=14250&view=rev 14250]
+
* <del>Update QtModule to use EMSegment libraries.</del> See [http://viewvc.slicer.org/viewcvs.cgi?rev=14250&view=rev 14250], [http://viewvc.slicer.org/viewcvs.cgi?view=rev&rev=14251 14251]
 
* Design static UI panel
 
* Design static UI panel
  

Revision as of 23:29, 19 July 2010

Home < Projects:ARRA:SlicerEM:Developer

Back to SlicerEM page

Kitware Team

  • Sebastien Barre - Workflow manager - 50%
  • Julien Finet - Chart/Plot export - work in // with vtkChart folks - 10%
  • Jean-Christophe Fillion-Robin (Project Lead) - Infrastructure / Python - 50%
  • Danielle Pace - Workflow manager - 100%

Unassigned Items

lists tasks that need to be done

Work in Progress

What do you plan to do this week

Sebastien

  • Work with Danielle on the workflow manager

Julien

Jc

  • Create initial directory structure and QtModule skeleton. See 14138
  • Review UI - Added help and button (next, back, etc..) See 14195
  • Write down Developer page
  • Milestones for project at next weeks meeting
  • Review which widgets should be converted
  • Convert EMSegment/{Algorithm,Graph,MRML,Registration} to shared library. See 14245, 14428
  • Update QtModule to use EMSegment libraries. See 14250, 14251
  • Design static UI panel

Danielle

  • Get familiar with Git and how to contribute to CTK
  • Evaluate QtStateMachine and identify what are its limitation
  • Develop the skeleton / API of the ctkWorkflowManager / ctkWorkflowStep

Team meeting

lists the team meeting and includes a pointer to the associated notes

Coming

Past

Milestones

  • Implementation of Workflow manager
  • Port of KWWidgets widgets to Qt
  • Static Panels
  • Graphs
  • Dynamic panels
  • Tcl scripts

Project components

Development environment

Contributing to CTK

  • Each developer should fork CTK official repository (github.com/commontk/CTK). Doing so will allow to:
    • backup its work before integration with CTK master.
    • publish and share its work
  • WorkflowManager code should be added to ctkWorkflowManager branch.

Working on Slicer / CTK in parallel

  • Step1: Build slicer following these instruction. Enable both Slicer3_USE_KWWIDGETS and Slicer3_USE_QT.
  • Step2: Create a github user [2] and fork CTK (http://github.com/commontk/CTK).
  • Step3: Build CTK - See these instructions - Consider also the instruction below to configure CTK as expected by Slicer
    • Make sure you set the following options
      • PluginFramework should be disable: CTK_LIB_PluginFramework:BOOL=OFF and CTK_PLUGIN_org.commontk.eventbus:BOOL=OFF
      • Enable VTK: CTK_LIB_Visualization/VTK/Widgets:BOOL=ON, VTK_DIR:PATH=<SlicerVTK_Binary_DIR>
cd MyProjects
git clone http://github.com/me/CTK
mkdir CTK-Superbuild
cd CTK-Superbuild
ccmake -DCTK_LIB_PluginFramework:BOOL=OFF -DCTK_PLUGIN_org.commontk.eventbus:BOOL=OFF -DCTK_LIB_Visualization/VTK/Widgets:BOOL=ON -DVTK_DIR:PATH=/home/me/MyProjects/Slicer3-SuperBuild/VTK-build ../CTK
make
  • Step4: Re-configure slicer4 passing CTK_DIR
cd MyProjects/Slicer3-Superbuild
ccmake -DCTK_DIR:PATH=/home/me/MyProjects/CTK-Superbuild .

EMSegment source code

  • The name of the Qt module is EMSegment.
  • The associated source code, hosted on slicer3 repository (trunk) is located in the following directory: <SRC>/QTModules/EMSegment
  • Every commit related to EMSegment should be prefixed with either:
    • ENH: EMSegment - <Message summary>
    • COMP: EMSegment - <Message summary>
    • BUG: EMSegment - <Message summary>
    • STYLE: EMSegment - <Message summary>

Coding Style

Future idea / improvements