CTK-Hackfest-Dec-2012: Difference between revisions
(→Friday) |
|||
Line 320: | Line 320: | ||
** With Sascha and Jc: updates to the build system to support plugins - new superrepository that has git submodules for optional plugins | ** With Sascha and Jc: updates to the build system to support plugins - new superrepository that has git submodules for optional plugins | ||
* Sascha | * Sascha | ||
** Superrepository and build system | ** Superrepository and build system (see issue [https://github.com/commontk/CTK/issues/266 #266] and its corresponding [https://github.com/commontk/CTK/tree/266-checkout-repositories-at-build-time branch]) | ||
** Looked into Qt5 | ** Looked into Qt5 (see issue [https://github.com/commontk/CTK/issues/277 #277] and the [https://github.com/commontk/CTK/tree/qt5 qt5 branch]) | ||
*** some ifdefs required for deprecated functions | *** some ifdefs required for deprecated functions | ||
* Andreas | * Andreas |
Revision as of 10:32, 16 December 2012
Home < CTK-Hackfest-Dec-2012Event pictures
Images from the hackfest
Introduction
Date: December 10-14, 2012
Location: | Hotel i Portici in Via Indipendenza , Bologna, Italy, Sala Montagnola (Room)
Goal: A follow on to the wildly successful previous hackfests!
Requirements: Attendees must be willing to spend their time during the event writing ctk code that contributes to the main ctk roadmap. This means spending the week immersed in C++, Qt, DCMTK, CMake, and related technologies. People who do not feel qualified for this task are politely not invited :)
Group size: Maximum 20 participants so we can have a manageable working meeting. The organizing committee will invite and select participants based on input from TheTeam.
Site Hosts: Alessandro Chiarini, Daniele Giunchi
Organizing Committee: Ivo Wolf, Stephen Aylward, Steve Pieper
Future Events: Future hackfests will be announced in advance, and we hope lots of people will be interested in participating. The venue and activities at future hackfests will be determined based on the number of active participants in the project. We welcome participation via the CTK email lists, the source code repository, and this website.
Attendees
- So far we have received confirmation for the following people (in no particular order).
WE HAVE REACHED THE MAXIMUM NUMBER OF PARTECIPANT - REGISTRATION CLOSED - 16 PARTECIPANTS
Please fill in your intentions in terms of common accommodation.
Name | Organization |
---|---|
Alessandro Chiarini | SCS, Bologna IT |
Daniele Giunchi | SCS, Bologna IT |
Alberto Losi | SCS, Bologna IT |
Steve Pieper | Isomics, Inc., Cambridge, MA, USA |
Ivo Wolf | Mannheim University of Applied Sciences & DKFZ Heidelberg |
Jean-Chistophe Fillion-Robin | Kitware |
Julien Finet | Kitware |
Andreas Fetzer | DKFZ Heidelberg |
Michael Bauer | DKFZ Heidelberg |
Marco Nolden | DKFZ Heidelberg |
Sascha Zelzer | DKFZ Heidelberg |
Florian Vichot | INRIA |
Yves Martelli | UPF |
Claire Mouton | CREATIS |
Miklos Espak | University College London (UCL) |
Luca Antiga | Orobix |
Note: There were also other invitations sent to active people on the community, and people who recently showed interest. When their intent will be known they will be added to the list.
Preparation
Developers should bring a laptop with the current CTK source code downloaded and built.
Use the CTK developers mailing list to discuss build issues and topics for ongoing work.
Phone conferences have been scheduled in the weeks leading to the event:
- To be announced
Topics and Projects
DICOM Application Hosting
- Refine, extend, test, and integrate with applications
- See also (some still open) tasks and progress from the last hackfest
- Goal: connect some real code via command line interface
DICOM Database and Networking
- Dig into ongoing developments. See CtkDICOM for discussion.
- See CTK DICOM support is used in Slicer 4.2
- End-user documentation
- Slicer4 DICOM Bugs and Feature Requests
- SlicerRT Issues:
- https://www.assembla.com/spaces/slicerrt/tickets/25 - display of ^ (carat character) in ctkDICOMModel
- https://www.assembla.com/spaces/slicerrt/tickets/153 - extension import failure (slicer issue)
- https://www.assembla.com/spaces/slicerrt/tickets/36 - non-uniform study information in RT files
QAT
Quality Assurance Toolkit -> how to integrate in CTK
Widgets
- Discuss and refine as needed.
- SlicerRt example dicom interfaces discussion
Tests Framework
Try QtTesting with CTK applications
Build Systems & Software process
- Update to latest DCMTK
- includes dcmrt
- need to pick a commit to standardize on
- investigate shared/static library building. (Static instances of classes getting destructed in wrong order)
- incorporate version checking
- build ctk against head or snapshot version
- Prepare Debian packaging (Marco)
- Resolve outstanding issues
- Make CTK also build with latest stable DCMTK release (3.6.0)
- Evaluate Qt5 (Sascha)
Setup developer package- See #10 and #65
- Work in progress - See topic 65-packaging-support
- Release a version of CTK (Work on policy this week and maybe release this week).
- Work in progress - See cmake-doxygen-filter-reuse
Command Line Modules
- Extract CLI interface
- Unify VPH and Slicer refactoring
- Qt SEM XML widget
- Follow on interoperability tests done in CLI_In_Context
- Refine CLI XML standard
- Text format for description/help/acknowledgement/resources: plain text ? html ? structured text ? github markup ?
- Multiple categories per module ?
- CLI XML versioning.
Agenda
Monday
10:30am Welcome
10:45 - 12:00 Round table: everyone presents 10-15 minutes how CTK is used in their project. And what's new in CTK (what has been added since previous hackfest)
- CTK in use:
- MSVTK: ECG, HAI, Buttons (DG/AL, JF) (10m)
- Give your feedback: http://www.msvtk.org/content/evaluation
- DICOM in Slicer (SP) (5m)
- CLI in Gimias, MITK, NiftyView, Slicer (SZ, YM, ME) (10m)
- CTK in MITK (MN) (5m)
- MSVTK: ECG, HAI, Buttons (DG/AL, JF) (10m)
- What's new since last hackfest?
- CLI in CTK (SZ, YM) (15m)
- DICOM Tag caching (SP) (5m)
- Widgets improvements in CTK(JF, JCFR) (5m)
- New: ctkExpandableWidget/ctkSizeGrip, ctkPathListWidget
- Tweaks: ctkCoordinatesWidget (normalized), ctkPathLineEdit (sizeHint), ctkPanelSettings (user/revision settings),
1:00pm Lunch
- Discuss plans/priorities for hacking
3:30pm Coffee Break
hack, hack, hack...
5:00pm Close
Tuesday
9:30am Welcome
- Review of Topics and demos
11:00am Coffee Break
- Discussion of goals for the week and breakout into working groups
- Command Line Module Working Group Topics
- Using ctk CLI infrastructure in Slicer (Jc, Sascha, Julien)
- CLI Incremental Communication (Luca, Steve)
- MAF CLI Integration (Daniele, Alberto)
- PythonQt wrapping of ctkCLI
- DAH and CLI (Ivo)
- CLI Compatibility Testing (Yves)
- CLI In MedINRIA (Florian)
- CTK Qt Testing and Quality Assurance Toolkit (Claire, Andreas, Julien, Jc)
- Transfer function interaction (Julien, Florian)
- Publish previous CTK hackfest work into VTK
- Minor interaction tweaks
1:00pm Lunch
hack, hack, hack...
5:00pm Close
hack, hack, hack...
Wednesday
9:30am Welcome
hack, hack, hack...
11:00am Coffee Break
hack, hack, hack...
1:00pm Lunch
hack, hack, hack...
5:00pm Close
Thursday
9:30am Welcome
hack, hack, hack...
11:00am Coffee Break
hack, hack, hack...
1:00pm Lunch
hack, hack, hack...
5:00pm Close
Friday
9:30am Welcome
hack, hack, hack...
11:00am Coffee Break
Wrap up discussion and presentations:
- Alberto, Allesandro (for Daniele)
- MAF2,3 migration
- Use CTK command line module explorer as MAF3 Plugin
- Wrap MAF2 modules as CLIs
- Solution to the WXWidgets (MAF2) to Qt (MAF3) migration with uniform solution
- QAT running on CTK source code, working to make it more widely available
- Migrating MAF plugins to CTK plugins
- MAF2,3 migration
- Clarire
- Fixing compilation issues, working with Qt Testing and QAT for CREATIS (working to migrate to Qt)
- Will report back in Lyons
- Miklos
- XNAT Plugin replacing curl with Qt network and ssl
- Working with Jc on REST API implementation generalized across MIDAS and XNAT
- With Sascha and Jc: updates to the build system to support plugins - new superrepository that has git submodules for optional plugins
- Sascha
- Superrepository and build system (see issue #266 and its corresponding branch)
- Looked into Qt5 (see issue #277 and the qt5 branch)
- some ifdefs required for deprecated functions
- Andreas
- Putting Qt Testing into MITK
- Some issues being sorted out
- Marco
- Debian packaging
- dcmtk 3.6.0 build compatibility (with remote help from Michael Onken)
- Some debian specific patches in a separate branch
- vtk 5.8 compatibility
- aim for named version release CTK within 6 months (for debian/ubuntu release)
- Debian packaging
- Michael
- Fixed selection of query results for retrieval
- Refactoring Query and Retrieve
- New ctkDICOMOperation (superclass)
- May rename some widgets for consistency
- Florian
- CLI modules now work in MedINRIA!
- Interface is generated
- command line executable can be run
- Looking at specializations of GUI to support MedINRIA concepts
- Fixes to some Qt style / css compatibility issues
- Issue is reported to Qt, and now will be included in Qt 5.1
- CLI modules now work in MedINRIA!
- Ivo
- DICOM Application Hosting
- Updated dah branch to the latest master
- Embedded dah into MITK
- MITK as hosted application
- ...and MIT as a host!
- DICOM Application Hosting
- Yves
- New tests for CLIs
- CLI finishes with error
- CLI checks that defaults are as expected
- CLI checks that image data passed from host is the same as when read from disk
- Code could go into Slicer Execution Model repository
- New tests for CLIs
- Julien
- Lookup table editor
- layers of lookup tables
- Combine and edit layers independently
- Integrates Florian's work from Boston hackfest
- Issues of ordering of XML for XML Schema comptibility
- Lookup table editor
- Jc
- Build system work
- Shared library backend for CLI framework
- Updated XSD / XSL to handle additional element
- Integrated CTK CLI module framework to Slicer
- Still uses Slicer custom logic for execution
- Delegates to custom widgets for specific data types (extra XSL definitions)
- Steve
- DICOM Bug fixes (with Marco)
- Name displays
- Encoding crashes
- Command Line Module Widget - stand alone widget configured with CLI XML
- Test version with subclassed module reference: https://github.com/pieper/CTK/tree/cli-widget-reference-subclass
- improved version using QtGui subclass: https://github.com/pieper/CTK/tree/cli-widget
- working test code for the module
- DICOM Bug fixes (with Marco)
- Luca
- Work on refactoring GenerateCLP into a more dynamic structure to support incremental CLI
- https://github.com/lantiga/CLIInterface
1:00pm Lunch
hack, hack, hack...
- Reminder: Update project status on wiki
- Links to branches, repositories, bug reports
- Screen captures of progress to the Gallery below
- Action photos of hacking in progress...
Gallery of Results
Travel & Hotel
Local contact If you have any troubles during your visit, call Alessandro: +39 342 1401554 or Daniele: +39 348 7260365
Airport
Transportation on Site
Airport Shuttle from airport to Railway Station (near to meeting location) 6 euro, link: http://www.atc.bo.it/orari/aerobus-airport-railway-station-link
Taxi from airport to Railway Station 15-20 euro
Lodging
There are a lot of hotel options in Bologna.
Millennium Hotel[1]: close to the centre and to the central railways station.
Star Hotel [2]: close to the centre and in front of the central railways station.
Mercure Hotel [3] (Italian link, you need to find the page on your language from the Accor portal) In front of the central railways station.
Albergo Atlantic [4] In the city centre, 10' walking time from the central railways station.
I Portici Hotel [5]10' walking time from the central railways station.
Meeting Location TBA We are finding a meeting venue that could be in the city centre or in the central station area.
Catering
It will be provided by the meeting venue.
Weather
- Probably not sunny, colder than Italian average :-), even it is quite variable, temperatures can range from 0°C to 10°C (min) and from 5°C to 20°C.