Modularization ITK modularization Bill Hoffman

Slides:



Advertisements
Similar presentations
Doxygen. Links
Advertisements

ITK Examples ITK Meeting, Iowa Presenter(s). Motivation Demonstrate concepts rather than classes The Doxygen pages are usually pretty good, but don't.
Code Reviews. 2 / GE Title or job number / 2/9/2014 Code review processes Gerrit –Refactoring, new contributions Comprehensive code reviews –Review of.
Jean-Christophe Fillion-Robin & Julien Finet Kitware Inc. June 20 th 2011.
ITKv4 Workflow/Process Getting from here to there Bill Hoffman
1. 2 FRC 2010 Driver Station Doug Norman & Stephanie Brierty National Instruments January 8, 2010 Thanks to Joe Ross – Team 330.
Simple Git Steve Pieper. Topics Git considerations and Slicer Git as if it were svn Git the way it is meant to be.
RDB Services Vasu Vuppala FRIB-NSCL, East Lansing, Michigan, USA.
10 Aug 2005CSE403, Summer'05, Lecture 15 Lecture 15: Configuration Management, Software Maintenance, and Code Reviews (Part I) Valentin Razmov.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Understanding Linux Kernel to Build Software Routers (Qualitative Discussion) Shiv Kalyanaraman,
ESCE 4960: Open Source Software Practice Lecture 1: Course Overview August 27, 2007 Prof. Roysam, RPI Prof. Moorthy Dr. Will Schroeder, Kitware Prof. Roysam,
Building Global Scientific Computing Infrastructure through Lab, Academic and Industrial Collaborations Bill Hoffman - CTO/Founder Berk Geveci - Director.
How to install CGAL Yuanzhen Wang. What is CGAL Computational Geometry Algorithms Library “Provide easy access to efficient and reliable geometric algorithms.
G51FSE Version Control Naisan Benatar. Lecture 5 - Version Control 2 On today’s menu... The problems with lots of code and lots of people Version control.
CONTINUOUS INTEGRATION, DELIVERY & DEPLOYMENT ONE CLICK DELIVERY.
Introduction to Git and Github Joshua imtraum.com.
Software Process, CMake, Dashboards, CPack Bill Hoffman Kitware, Inc.
Version control Using Git 1Version control, using Git.
January 17, Dojo. Copyright © 2015 Open Source ERP Users Group All Rights Reserved. 2 Table of Contents 1.Setting Up OpenERP 2.Starting Your.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco PublicITE I Chapter 6 1 Characterizing the Existing Network Designing and Supporting Computer Networks.
Jackson Structured Diagrams
Software Tools and Processes Training and Discussion October 16, :00-4:30 p.m. Jim Willenbring.
Trilinos User Group Meeting Thursday, November 8 th, 2007 Timothy M. Shead (1424) Danny Dunlavy (1415) SAND P Sandia is a multiprogram laboratory.
Bob Jacobsen August 6 Informal discussion of BaBar software BaBar offline code’s ecological niche Set of non-overlapping idioms Event - our software bus?
NA-MIC National Alliance for Medical Image Computing Why NITRC Matters to NA-MIC Steve Pieper, PhD.
Apache Web Server v. 2.2 Reference Manual Chapter 1 Compiling and Installing.
Page 1 Trilinos Release Improvement Issues Roscoe A. Bartlett Department of Optimization & Uncertainty Estimation Trilinos.
Version control Using Git Version control, using Git1.
ITEC 370 Lecture 16 Implementation. Review Questions? Design document on F, feedback tomorrow Midterm on F Implementation –Management (MMM) –Team roles.
Version Control. How do you share code? Discussion.
Version Control Systems academy.zariba.com 1. Lecture Content 1.What is Software Configuration Management? 2.Version Control Systems (VCS) 3.Basic Git.
GTRI Proprietary / Limited Distribution. Architecture File System DataLoader API Analytics API Visualization API MongoDB Resource Management Layer Python.
Installing CompuCell3D from source Maciej Swat Biocomplexity Institute, Indiana University.
NA-MIC National Alliance for Medical Image Computing Slicer Building and Deployment Steve Pieper, PhD.
1 Applied CyberInfrastructure Concepts ISTA 420/520 Fall
NA-MIC National Alliance for Medical Image Computing Core 1b – Engineering Software Process Stephen R. Aylward Kitware, Inc.
1 Bogor – Software Model Checking Framework Presented by: Arpita Gandhi.
NA-MIC National Alliance for Medical Image Computing Slicer 2010: Past, Present, and Future Steve Pieper, Ph.D.
Trilinos Framework: Next Steps Thursday November 9, :45-9:30 a.m. Jim Willenbring Mike Phenow.
NA-MIC National Alliance for Medical Image Computing Non-Interactive Tools Stephen Aylward, Kitware
Loader Tutorial Set Up. Requirements Java 7 Eclipse IvyIDE plugin Git Optional: Ant Maven.
Git with Eclipse (EGit) /article.html.
Fujitsu America Proprietary and Confidential, (c) FUJITSU America Inc Download Authentic Desktop Edition How to download Authentic 2004 Download.
4000 Imaje 4020 – Software Imaje 4020 – Content ■ Content of Chapter Software: 1. Flash Up 2. Netcenter 3. FTP 4. Active X 5. XCL commands 6. Exercise.
NA-MIC National Alliance for Medical Image Computing Core 1b – Engineering Data Management Daniel Marcus Washington University.
Installing git In Linux: sudo apt-get install git In Windows: download it from run the setuphttp://git-scm.com/download/win.
GIT Version control. Version Control Sharing code via a centralized DB Also provides for Backtracking (going back to a previous version of code), Branching.
NetBeans Rich Client Platform Alex Kotchnev Software Developer Commerce Technologies Inc. Alex Kotchnev Software Developer Commerce Technologies Inc.
ITK Examples ITK Meeting, Iowa Presenter(s). Motivation Demonstrate concepts rather than classes The Doxygen pages are usually pretty good, but don't.
Source Control Systems
NAMIC Software Development Environment
Code Management With Github & Straw Resistance Measurements
IST256 : Applications Programming for Information Systems
ALICE-Juniors Meeting
Development and Deployment
Introduction to Networking
Malwarebytes Tech Support Phone Number The premium version of the malwarebytes software is equipped with all kinds of features which ensure that you are.
Programming Workshop Quixilver 8404.
Things To Avoid: 1-Never your password to anyone.
Source Code Management
Now Sale Integrated With E.M.I. Complete Business ERP Software
Set Up Version Control in Visual Studio Team Service
COMP-10: Managing OpenEdge® Development with the Roundtable® TSMS
Git CS Fall 2018.
Using Github and Github Organization in this Course
Introduction to Git and GitHub
Now Sale Integrated With E.M.I. Complete Business ERP Software
Off-line Direct Disk Access System
Microsoft Connect /14/ :11 AM
Presentation transcript:

Modularization ITK modularization Bill Hoffman

We are not alone… Qt modularization effort Boost modularization effort Ryppl

Qt

ExternalProject_add Module introduced in CMake 2.8 –Allows the download, configure, build and install of software via custom commands Kitware Source Article: October 2009 – lProjectsWithCMake2.8.html ARL CSE Avoid the Easter Egg Hunt!

Titan Example Titan VTK Qt Trilinos CurlCLAPCK Google Protocol buffers Boost

Trilinos (Multi-Package Dashboard) Main Project Sub Projects

git sub-modules adding-using-removing-and-updating/

Having our cake and eating too, ITK two ways itk-complete –All of ITK with git sub-modules for each –For ITK developers itk-optional –An ExternalProject_add version that checks out each sub-module as needed –For applications using ITK

Module Dependencies A git sub-module itk-depends –CMake Code for handling module depend information –The depend information for each module –Used by both itk-complete and itk-optional –Exploring ways to keep the depend information on branches in each modules git

Proof of Concept git clone git://itk.org/itk/itk-complete.git git clone git://itk.org/itk/itk-optional.git

Allows for Expansion Outside Main Repository Anyone should be able to create an ITK module, and have it work in this system Each module should contain –Source –Tests –Depend information –Documentation

Demos cmake-gui turn on off modules Load itk-optional in VS

The Hard Part…. We need to partition ITK