Difference between revisions of "Projects:ARRA:SlicerEM:Developer"
From NAMIC Wiki
m (→Coming) |
|||
Line 10: | Line 10: | ||
= Work in Progress = | = Work in Progress = | ||
+ | ''What you have done so far should be <del style="color:gray;">striked and gray colored</del>''<br> | ||
+ | ''What you have done this week should be <del>sriked''</del><br> | ||
''What do you plan to do this week'' | ''What do you plan to do this week'' | ||
== Kilian == | == Kilian == | ||
− | * <del>Review [[Projects:ARRA:SlicerEM:Developer:WidgetsToPort#List_of_Widgets_and_associated_panels_.28ordered_by_priority.29|list of widget]] and prioritize.</del> | + | * <del style="color:gray;">Review [[Projects:ARRA:SlicerEM:Developer:WidgetsToPort#List_of_Widgets_and_associated_panels_.28ordered_by_priority.29|list of widget]] and prioritize.</del> |
== Sebastien == | == Sebastien == | ||
Line 22: | Line 24: | ||
== Jc == | == Jc == | ||
− | * <del>Create initial directory structure and QtModule skeleton.</del> See [http://viewvc.slicer.org/viewcvs.cgi?view=rev&rev=14138 14138] | + | * <del style="color:gray;">Create initial directory structure and QtModule skeleton.</del> See [http://viewvc.slicer.org/viewcvs.cgi?view=rev&rev=14138 14138] |
− | * <del>Review UI - Added help and button (next, back, etc..)</del> See [http://viewvc.slicer.org/viewcvs.cgi?view=rev&rev=14195 14195] | + | * <del style="color:gray;">Review UI - Added help and button (next, back, etc..)</del> See [http://viewvc.slicer.org/viewcvs.cgi?view=rev&rev=14195 14195] |
− | * <del>Write down Developer page</del> | + | * <del style="color:gray;">Write down Developer page</del> |
− | * <del>Milestones for project at next weeks meeting</del>. See [[Projects:ARRA:SlicerEM:Developer#Milestones]] | + | * <del style="color:gray;">Milestones for project at next weeks meeting</del>. See [[Projects:ARRA:SlicerEM:Developer#Milestones]] |
− | * <del>Review which widgets should be converted.</del> See [[Projects:ARRA:SlicerEM:Developer:WidgetsToPort]] | + | * <del style="color:gray;">Review which widgets should be converted.</del> See [[Projects:ARRA:SlicerEM:Developer:WidgetsToPort]] |
− | * <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], [http://viewvc.slicer.org/viewcvs.cgi?rev=14258&view=rev 14258] | + | * <del style="color:gray;">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], [http://viewvc.slicer.org/viewcvs.cgi?rev=14258&view=rev 14258] |
* <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] | * <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] | ||
* <del>Setup a priority list for the widget for Kilian to edit</del>. See [[Projects:ARRA:SlicerEM:Developer:WidgetsToPort#List_of_Widgets_and_associated_panels_.28ordered_by_priority.29|List of widget to prioritize]] | * <del>Setup a priority list for the widget for Kilian to edit</del>. See [[Projects:ARRA:SlicerEM:Developer:WidgetsToPort#List_of_Widgets_and_associated_panels_.28ordered_by_priority.29|List of widget to prioritize]] | ||
Line 38: | Line 40: | ||
== Danielle == | == Danielle == | ||
− | * <del>Get familiar with Git and how to contribute to CTK</del> | + | * <del style="color:gray;">Get familiar with Git and how to contribute to CTK</del> |
− | * <del>Evaluate QtStateMachine and identify what are its limitation</del> | + | * <del style="color:gray;">Evaluate QtStateMachine and identify what are its limitation</del> |
* <del>Develop the skeleton / API of the ctkWorkflowManager / ctkWorkflowStep / ctkWorkflowWidget</del> | * <del>Develop the skeleton / API of the ctkWorkflowManager / ctkWorkflowStep / ctkWorkflowWidget</del> | ||
* support for jumping directly to a final step | * support for jumping directly to a final step |
Revision as of 14:18, 28 July 2010
Home < Projects:ARRA:SlicerEM:DeveloperContents
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 you have done so far should be striked and gray colored
What you have done this week should be sriked
What do you plan to do this week
Kilian
Review list of widget and prioritize.
Sebastien
- Work with Danielle on the workflow manager
Julien
- Discuss with vtkChart folks and see how existing CTK Charting [1] classes can be moved to VTKChart [2]
Jc
Create initial directory structure and QtModule skeleton.See 14138Review UI - Added help and button (next, back, etc..)See 14195Write down Developer pageMilestones for project at next weeks meeting. See Projects:ARRA:SlicerEM:Developer#MilestonesReview which widgets should be converted.See Projects:ARRA:SlicerEM:Developer:WidgetsToPortConvert EMSegment/{Algorithm,Graph,MRML,Registration} to shared library.See 14245, 14428, 14258Update QtModule to use EMSegment libraries.See 14250, 14251Setup a priority list for the widget for Kilian to edit. See List of widget to prioritize- Define a clear agenda for the August 9th meeting
Updated logic to initialize properly. See 14353- Design static UI panel
Created corresponding UI files, header and cxx files.See 14350Port Task selector to Qt. See TaskSelector- Port dynamic list of Input Channels to Qt. See DynamicListOfInputChannel
Danielle
Get familiar with Git and how to contribute to CTKEvaluate QtStateMachine and identify what are its limitationDevelop the skeleton / API of the ctkWorkflowManager / ctkWorkflowStep / ctkWorkflowWidget- support for jumping directly to a final step
- support in Qt Designer
- testing for ctkWorkflowManager / ctkWorkflowStep / ctkWorkflowWidget
- example for using the workflow manager
- Clean up code, documentation
Team meeting
lists the team meeting and includes a pointer to the associated notes
Coming
- 7/27/2010 - Meeting / Weekly meeting #2
- 8/9/2010 - Meeting / Midterm meeting with Kilian
Past
- 7/20/2010 - Meeting / Weekly meeting #1
- 7/14/2010 - WorkflowManager meeting
- 7/8/2010 - Kickoff meeting
Milestones
Please note that the current list may be refined
- July 16th
Create QtModule skeletonWrite developer documentation
- July 23th
Factor out EMSegment{Algorithm, Graph, MRML, Registration} librariesWorkflow manager: Class skeletons (ctkWorkflowManager, ctkWorkflowStep)
- July 30th
- Port:
TaskSelector, Segmentation_Mode,InputChannelSelector, NodeAttributes, ProbabilityMapSelector - Panel: Define Task, Define Input Channel (static version)
- Port:
- August 6th
- Port: AnatomicalTree 50%, IntensityDistribution
- Panel: Define preprocessing
- August 13th
- Port: AnatomicalTree 100%, AtlasToInputRegistration, ColorMapViewOnly, Colormap selector
- Workflow manager: Start integration with Static UI Panel
- Panel: Define Anatomical tree, Edit registration parameter, Specify intensity distribution (without Manual sampling)
- August 20th
- Port: ManualSampling, WeightEditor, PrintConfig, StoppingConditionsEditor
- Panel: Integrate Manual sampling to Define Anatomical tree panel
- August 27th
- Port: WorkingDirSelector, ClassWeightsOverview, OutputLabelMapSelector, AdvancedNodeParameterEditor
- Workflow manager: Complete integration
- Panel: Edit node-based parameters (Need to define exactly content of Advanced Tab)
- September 3rd
- Port: VOIEditor
- Panel:Run segmentation
- Green dashboard expected
- September 10th
- Polish
- Review Doxygen, Style
- If time permit:
- DynamicListOfInputChannel
- Graph, Dynamic panel
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
- Refer to the follow document: http://www.commontk.org/index.php/Contributing_to_CTK.
- WorkflowManager code should be added to ctkWorkflowManager branch.
- That branch has been created on http://github.com/jcfr/CTK.
- See [3] to obtain details on how to checkout a branch from a different fork
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 [4] 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>
- Make sure you set the following options
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>