From Commontk
Revision as of 10:44, 24 May 2013 by Csaba Pinter (talk | contribs) (DICOM Database and Networking)

Jump to: navigation, search
Home < CTK-Hackfest-May-2013

Event pictures

Images from the hackfest


Date: May 20-24, 2013

Location: Kingston, Ontario, Canada. In a classroom at Queens University.

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: Gabor Fichtinger, Csaba Pinter, Andras Lasso

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.


  • So far we have received confirmation for the following people (in no particular order).

Please fill in your intentions in terms of common accommodation.

Name Organization
Steve Pieper Isomics, Inc., Cambridge, MA, USA
Ivo Wolf Hochschule Mannheim
Marco Nolden German Cancer Research Center (DKFZ)
Sascha Zelzer German Cancer Research Center (DKFZ)
Andreas Fetzer German Cancer Research Center (DKFZ)
Florian Vichot INRIA
Lawrence Tarbox Washington University, St. Louis
Andras Lasso Queen's University, Kingston, ON
Csaba Pinter Queen's University, Kingston, ON
Alberto Biancardi The University of Sheffield, UK
Xenios Papademetris Yale University US
Google Hangout Participants
Name Organization
Jean-Christophe Fillion-Robin Kitware Inc.

Note 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.


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

  • Interoperability testing of CTK with other Application Hosting code
  • Results:
    • Slicer as Hosted Application (Ivo, Lawrence, Steve)
      • launch hosted app, send data
      • loaded into slicer for manipulation
      • changed data detected automatically
      • TODO: data sent back to host
  • Plans
    • finish data return to host by end of next hackfest ;)

DICOM Database and Networking

  • Review implementation issues when using CTK DICOM
    • DICOM issues in github [1]
    • Incorrect import when DICOMDIR is present [2]. Should we skip DICOMDIR when it is not picked explicitly? Yes check.png
    • Incorrect/slow database behavior when multiple processes access it simultaneously [3] (interference between ctkDICOMIndexer and ctkDICOMModel)
  • Discuss DICOM-RT for CTK
  • Discuss DICOM Export options
    • CLI outputs converted into real DICOM
    • RT and other non-imaging types
      • GUI Issues
      • Lower-level dcmrt issues, possible use of DKFZ toolkit
      • Use of various tools (VTK, ITK, Plastimatch), validation
  • Results
    • New DB table of display overrides
    • New table view of patient/study/series - ctkDICOMTableView
    • New Layout control for ctkDICOMBrowser to replace tree and ctkDICOMModel
    • New signals to match use cases
  • Plans
    • issue #336 - create replacement for ctkDICOMAppWidget and deprecate old (Marco)
    • issue #337 - implement signals from table view (Marco and Andras with Steve)
    • issue #331 - to be completed soon by Andreas
    • issue #332 - ctkDICOMTableManager to control layouts (also Andreas)
    • issue #276 - fix up RT use cases (Andras and Csaba)


Tests Framework

  • Qt testing framework
    • Checkpoint verification
    • Possibly help debugging when a test is failing and fixing a test
  • Check log for warnings and errors
  • Integrate with Error Log widget and the app launcher (but won't work on mac)
  • Suggest as something for student at CREATIS
    • Rotating log files
    • capturing screen during test to help diagnose failures
    • capturing all output to log files and flushing
    • report crash utility for user to send all files to file issue
    • auto-detect crashes using some kind of token
    • track the exact version of libraries and stack traces (platform specific) Look into google crashpad.
    • Review squish video: http://www.froglogic.com/squish/gui-testing/squish-qt-webinar-qanda.php

Build Systems & Software process

Command Line Modules



Opening discussion

  • Review topics and projects
  • Plans for the week

Evening: BBQ at the Fichtinger residence


During the day: hack, hack, hack...

Evening: Dinner and beers at the Kingston Brewery


During the day: hack, hack, hack... 10:30 Hangout to review status

Evening: Kingston Haunted Walks


During the day: hack, hack, hack...

Evening: BBQ by the gazebo on the waterfront


During the day: hack, hack, hack...

Late morning; Closing discussion


Afternoon: hack or travel

Gallery of Results

Images from the hackfest

Travel & Hotel

Local contact

Need any help in organizing your visit, contact Andras Lasso (lasso@cs.queensu.ca). If you have any troubles during your visit, call TBD.


  • Option A: Fly into Kingston via Toronto
  • Option B: Fly into Toronto, take a bus to Kingston
    • Recommended: Coach Canada direct bus from Toronto Airport to Kingston, leaves twice a day: 2.30pm and 7pm. You can buy the ticket from a Kiosk at the airport or buy online
    • Megabus from Toronto downtown: get to the Toronto Coach Terminal, take a bus to Kingston, leaves in about every hour. Online reservation is strongly recommended, as early as possible, because the prices are continuously increasing (starts from $1 and increased to about $40).

Transportation on Site

Take a cab at the Kingston airport or bus terminal to your hotel. After that everything is in walking distance.


Be aware there is a Queen's event during the week of the hackfest so try to book your hotel early

Meeting Location

Queen's University, Kinesiology building, room #107.


Can be still chilly in May, average temperature is about 15°C.


Plan on having breakfast at your hotel before the meeting. A variety of lunch options will be available, as will access to snacks and beverages during the day. Please email the organizers if you have any allergies or dietary restrictions.

Optional Activities in the Area