<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.na-mic.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=SaschaZelzer</id>
	<title>NAMIC Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.na-mic.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=SaschaZelzer"/>
	<link rel="alternate" type="text/html" href="https://www.na-mic.org/wiki/Special:Contributions/SaschaZelzer"/>
	<updated>2026-05-24T07:22:05Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.33.0</generator>
	<entry>
		<id>https://www.na-mic.org/w/index.php?title=Events:CTK-Pre-Hackfest-2010&amp;diff=50140</id>
		<title>Events:CTK-Pre-Hackfest-2010</title>
		<link rel="alternate" type="text/html" href="https://www.na-mic.org/w/index.php?title=Events:CTK-Pre-Hackfest-2010&amp;diff=50140"/>
		<updated>2010-03-10T10:42:23Z</updated>

		<summary type="html">&lt;p&gt;SaschaZelzer: /* Wednesday */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=The Common Toolkit Hackfest at the [http://www.dkfz.de/index.html DKFZ] in Heidelberg, Germany hosted by the [http://www.dkfz-heidelberg.de/en/mbi/index.html MBI].=&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|align=&amp;quot;left&amp;quot;|This is a working meeting - the goal is to start writing code!&lt;br /&gt;
|[[image:Heidelberg corr.jpg|thumb|150px|&amp;lt;big&amp;gt;Heidelberg&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;Source: http://upload.wikimedia.org/wikipedia/commons/b/b4/Heidelberg_corr.jpg]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Links=&lt;br /&gt;
*[http://www.CommonTk.org http://www.CommonTk.org] (under development)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=Topics=&lt;br /&gt;
&lt;br /&gt;
== (1) Memory Management ==&lt;br /&gt;
* Large Image Handling&lt;br /&gt;
** streaming&lt;br /&gt;
** out of core data management (memory mapped files, etc)&lt;br /&gt;
** level of detail&lt;br /&gt;
** Google Earth 3D&lt;br /&gt;
** caching&lt;br /&gt;
* Decide on smartpointers e.g. C++0x/Boost&lt;br /&gt;
** Afternoon: check Qt vs C++0x/Boost smartpointers&lt;br /&gt;
** Rule: Use Smartpointers of the super-class; if there is no super-class, use the one decided upon in the afternoon...&lt;br /&gt;
&lt;br /&gt;
== (2) Migrate some code to the repository (e.g. Qt widgets) and use it in our respective toolkits ==&lt;br /&gt;
Steve: goal to make some progress on consolidating some Qt widgets from our various projects into a repository that we can all contribute to.&lt;br /&gt;
[http://www.slicer.org/slicerWiki/index.php/Slicer3:Developers:Projects:QtSlicer Slicer Qt Project]&lt;br /&gt;
&lt;br /&gt;
See also [http://www.commontk.org/cgi-bin/trac.cgi/wiki/WidgetPlans CTK Widget Wish List]&lt;br /&gt;
Make use of [http://www.libqxt.org/ Qxt]? [http://qwt.sourceforge.net/ Qwt]?&lt;br /&gt;
&lt;br /&gt;
[[Projects:ARRA:SlicerAM| Slicer Annotation and Markup project for reporting]]&lt;br /&gt;
&lt;br /&gt;
== (3) DICOM IO layer on top of DCMTK: interpretation of DICOM data ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.atamai.com/cgi-bin/viewvc.cgi/AtamaiVTK/vtkAtamaiIO/?root=cvspriv David Gobbi's CMake/VTK wrappers for DCMTK]&lt;br /&gt;
* [http://graphics.tudelft.nl/Projects/DeVIDE Delft project includes DCMTK]&lt;br /&gt;
&lt;br /&gt;
== (4) Interoperability of plugins ==&lt;br /&gt;
Steve: Summarize what would it take to make a standard that could handle at least the three following systems:&lt;br /&gt;
* [http://www.slicer.org/slicerWiki/index.php/Slicer3:Execution_Model_Documentation Slicer Command Line Execution Model]&lt;br /&gt;
* [https://collab01a.scr.siemens.com/xipwiki/index.php/Main_Page XIP / DICOM WG23 Application Hosting]&lt;br /&gt;
* [https://collab01a.scr.siemens.com/xipwiki/index.php/Main_Page XIP-Builder / Visual Programming Interface integration]&lt;br /&gt;
* [http://www.nitrc.org/projects/jist/ MIPAV/JIST plugins]&lt;br /&gt;
*[http://www.na-mic.org/Wiki/index.php/OpenIGTLink OpenIGTLink]&lt;br /&gt;
If we can handle those, then that's probably broad enough to cover many common scenarios.&lt;br /&gt;
&lt;br /&gt;
Jc: [[Events:CTK-Hackfest-2010/SlicerPythonQt | PythonQt]] and the [[Events:CTK-Hackfest-2010/SlicerQtPluginArchitecture | Qt based plugin architecture used in SlicerQt]]&lt;br /&gt;
&lt;br /&gt;
Sascha, Olivier: Generic service oriented approach to expose modules for multiple platforms.&lt;br /&gt;
&lt;br /&gt;
== (5) Generic event mechanism (e.g. event bus, translate events into signals) ==&lt;br /&gt;
* Sascha&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=Proposed Agenda=&lt;br /&gt;
==Sunday==&lt;br /&gt;
*19:00 Welcome Dinner at Hotel Ritter&lt;br /&gt;
==Monday - Thursday==&lt;br /&gt;
*9:00 Transfer by bus from Ritter to DKFZ (''Note: every day'')&lt;br /&gt;
==Monday at DKFZ==&lt;br /&gt;
*9:30 Short presentation of agenda&lt;br /&gt;
*9:45 – 12:00 Presentation of topic leaders 20 min each including discussion: requirements, existing libraries, … Coffee breaks on demand&lt;br /&gt;
*12:00 – 13:00 Lunch&lt;br /&gt;
*13:00 – 13:30 General discussion Goal: select three topics to start with in smaller teams&lt;br /&gt;
*13:30 – 16:00 More detailed exploration of topics&lt;br /&gt;
*16:00 Presentation of first results, planning of further agenda&lt;br /&gt;
==Tuesday==&lt;br /&gt;
&lt;br /&gt;
Hacking...&lt;br /&gt;
&lt;br /&gt;
* [http://github.com/pieper/CTK CTK Git repository]&lt;br /&gt;
** Initial layout supports cross-toolkit code in the Libs directory (i.e. qCTKDCMTK that combines Qt with DCMTK)&lt;br /&gt;
** We may refactor the directory layout later&lt;br /&gt;
** We can consider making an automated [http://blog.fallingsnow.net/2007/08/17/maintaining-an-svn-mirror-directly-from-git/|svn mirror of git]&lt;br /&gt;
&lt;br /&gt;
* Distributing CTK:&lt;br /&gt;
** Provide an initial CmakeLists.txt file that exposes a series of options&lt;br /&gt;
** Use [[2010_Winter_Project_Week_CMAKE_Build_process| CMake external project (SuperBuild)]]&lt;br /&gt;
&lt;br /&gt;
* DICOM Database schema example&lt;br /&gt;
** [http://www.slicer.org/slicerWiki/index.php/DICOM:Database Discussion here].&lt;br /&gt;
&lt;br /&gt;
* Volume rendering [http://dl.dropbox.com/u/1686930/polyp1.nrrd test data]&lt;br /&gt;
&lt;br /&gt;
==Wednesday==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* DICOM interface discussion&lt;br /&gt;
** [http://www.slicer.org/slicerWiki/index.php/DICOM:Interface Slicer notes on dicom interface and other server/database interfaces].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Effort to plug some XIP code into MITK&lt;br /&gt;
&lt;br /&gt;
* Drafting a first generic plugin framework (based on Qt)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* CTK Repository Naming Conventions:&lt;br /&gt;
** CTK&lt;br /&gt;
*** Libs&lt;br /&gt;
**** Core (depends on QtCore, filenames start with ctk)&lt;br /&gt;
***** ctkBundleActivator.h&lt;br /&gt;
***** cktBundleContext.h&lt;br /&gt;
**** DICOM&lt;br /&gt;
**** Scripting&lt;br /&gt;
***** PythonQt&lt;br /&gt;
**** Visualization&lt;br /&gt;
***** VTK&lt;br /&gt;
***** OpenInventor&lt;br /&gt;
**** Widgets&lt;br /&gt;
*** Utilities&lt;br /&gt;
**** DCMTK&lt;br /&gt;
**** ZMQ&lt;br /&gt;
*** Testing&lt;br /&gt;
*** Examples&lt;br /&gt;
*** Documentation&lt;br /&gt;
&lt;br /&gt;
* CTK File Naming Conventions&lt;br /&gt;
** ''Considerations:'' &lt;br /&gt;
*** allow KWStyle regular expressions to identify coding style (style is based on parent class - vtkObjects use vtk style, QObjects use Qt style).&lt;br /&gt;
*** name should indicate dependencies - using ctk prefix implies QtCore dependency&lt;br /&gt;
&lt;br /&gt;
==Thursday==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=Attendees=&lt;br /&gt;
* Steve Pieper, Boston&lt;br /&gt;
* Oliver Kutter, Siemens (SCR)&lt;br /&gt;
* Patrick Cheng, Georgetown University&lt;br /&gt;
* Julien Finet, Kitware Inc.&lt;br /&gt;
* Jean-Christophe Fillion-Robin, Kitware Inc.&lt;br /&gt;
* Julien Jomier, Kitware Inc.&lt;br /&gt;
* Marco Nolden, DKFZ&lt;br /&gt;
* Ivo Wolf, DKFZ&lt;br /&gt;
* Sascha Zelzer, DKFZ&lt;/div&gt;</summary>
		<author><name>SaschaZelzer</name></author>
		
	</entry>
</feed>