Difference between revisions of "2013 Project Week:ITKv4Default"
From NAMIC Wiki
m (Text replacement - "http://www.slicer.org/slicerWiki/index.php/" to "https://www.slicer.org/wiki/") |
|||
(34 intermediate revisions by 4 users not shown) | |||
Line 7: | Line 7: | ||
==Key Investigators== | ==Key Investigators== | ||
+ | * Kitware: Jean-Christophe Fillion-Robin | ||
+ | * Kitware: Luis Ibanez | ||
+ | * U of Iowa: Hans Johnson | ||
+ | * BWH: Ron Kikinis | ||
+ | * Bill's Basement: Bill Lorensen | ||
+ | * Isomics: Steve Pieper | ||
+ | * NLM: Bradley Lowekamp | ||
* Kitware: Matt McCormick | * Kitware: Matt McCormick | ||
− | * | + | * Queen's: Csaba Pinter |
+ | * NLM: Terry Yoo | ||
==Project Description== | ==Project Description== | ||
Line 21: | Line 29: | ||
<h3>Approach, Plan</h3> | <h3>Approach, Plan</h3> | ||
* Get Slicer-ITKv4 dashboard build working. | * Get Slicer-ITKv4 dashboard build working. | ||
− | * Test packaging on all | + | * Test packaging on all platforms. |
− | * Address the Issue [http://www.na-mic.org/Bug/view.php?id= | + | * Address the Issue [http://www.na-mic.org/Bug/view.php?id=2813 #2813] |
</div> | </div> | ||
<div style="width: 27%; float: left; padding-right: 3%;"> | <div style="width: 27%; float: left; padding-right: 3%;"> | ||
<h3>Progress</h3> | <h3>Progress</h3> | ||
+ | * DCMTK updated to latest version to fix link errors | ||
+ | * Linking errors fixed | ||
+ | * Verified Windows Runs/Loads Files/Number of ImageIO factories registered: 20 | ||
+ | * (Wednesday Jan 9th) Built, Packed and Installed in Windows 64bits and 32bits using Visual Studio 2008 | ||
+ | ** Took advantage of ITKv4 modularization to use only Slicer needed modules form ITK. | ||
+ | ** Patched tclap lib for std::min due to Visual Studio min macro. | ||
+ | ** Using top directory of 4 characters (e.g. Binary Dir = C:\S43R, Source Dir = C:\Users\abcdef\src\Slicer43) | ||
+ | * CLI ImageIO factory registration fixed on Windows | ||
+ | * DWIConvert working on Windows | ||
+ | * ITKv4 related commits have been squashed, tweaked and reviewed so that they could be integrated into Slicer trunk. See https://github.com/jcfr/Slicer/compare/next-itkv4-20130110 | ||
+ | </div> | ||
+ | </div> | ||
+ | |||
+ | == Work in Progress == | ||
+ | |||
+ | |||
+ | === Blockers === | ||
+ | |||
+ | ==== Windows ==== | ||
+ | |||
+ | * IO Factory registration | ||
+ | ** In CLIs | ||
+ | ** In main Slicer | ||
+ | * Packaging | ||
+ | |||
+ | === Git Branch to Use === | ||
+ | |||
+ | * Using this branch: https://github.com/BRAINSia/Slicer43/tree/20130107-next-slicer43 | ||
+ | * Migration Plan at Slicer Wiki: https://www.slicer.org/wiki/ITKv4_Migration_plan | ||
+ | |||
+ | === Windows 7, VS 2008, x64, Qt 8.2 Release build === | ||
+ | |||
+ | git checkout origin/20130107-next-slicer43 | ||
+ | |||
+ | https://dl.dropbox.com/u/1686930/itkv4builds/build1after%20update.txt | ||
+ | |||
+ | https://dl.dropbox.com/u/1686930/itkv4builds/build2after%20update.txt | ||
+ | |||
+ | Patch for InterlockedIncrement build error: | ||
+ | <pre> | ||
+ | diff --git a/ofstd/include/dcmtk/ofstd/ofmem.h b/ofstd/include/dcmtk/ofstd/ofmem.h | ||
+ | index 473b9c8..94bb937 100644 | ||
+ | --- a/ofstd/include/dcmtk/ofstd/ofmem.h | ||
+ | +++ b/ofstd/include/dcmtk/ofstd/ofmem.h | ||
+ | @@ -226,7 +226,11 @@ private: | ||
+ | |||
+ | private: | ||
+ | /// The counter. | ||
+ | +#ifdef HAVE_INTERLOCKED_INCREMENT | ||
+ | + volatile LONG m_Count; | ||
+ | +#else | ||
+ | size_t m_Count; | ||
+ | +#endif | ||
+ | /// The pointer to the managed object. | ||
+ | T* const m_pT; | ||
+ | #ifdef OF_SHARED_PTR_NEED_MUTEX | ||
+ | </pre> | ||
+ | |||
+ | |||
+ | Patch for tclap issue with std::min | ||
+ | |||
+ | <pre> | ||
+ | diff --git a/tclap/include/tclap/StdOutput.h b/tclap/include/tclap/StdOutput.h | ||
+ | index 2748b9e..229b934 100644 | ||
+ | --- a/tclap/include/tclap/StdOutput.h | ||
+ | +++ b/tclap/include/tclap/StdOutput.h | ||
+ | @@ -33,6 +33,12 @@ | ||
+ | #include <tclap/XorHandler.h> | ||
+ | #include <tclap/Arg.h> | ||
+ | |||
+ | +// Conditionally undefine the min macro that Visual Studio defines. | ||
+ | +#ifdef min | ||
+ | +#undef min | ||
+ | +#endif | ||
+ | + | ||
+ | + | ||
+ | namespace TCLAP { | ||
+ | |||
+ | </pre> | ||
+ | |||
+ | == Results == |
Latest revision as of 18:07, 10 July 2017
Home < 2013 Project Week:ITKv4DefaultKey Investigators
- Kitware: Jean-Christophe Fillion-Robin
- Kitware: Luis Ibanez
- U of Iowa: Hans Johnson
- BWH: Ron Kikinis
- Bill's Basement: Bill Lorensen
- Isomics: Steve Pieper
- NLM: Bradley Lowekamp
- Kitware: Matt McCormick
- Queen's: Csaba Pinter
- NLM: Terry Yoo
Project Description
Objective
- Switch Slicer to use ITKv4 by default.
Approach, Plan
- Get Slicer-ITKv4 dashboard build working.
- Test packaging on all platforms.
- Address the Issue #2813
Progress
- DCMTK updated to latest version to fix link errors
- Linking errors fixed
- Verified Windows Runs/Loads Files/Number of ImageIO factories registered: 20
- (Wednesday Jan 9th) Built, Packed and Installed in Windows 64bits and 32bits using Visual Studio 2008
- Took advantage of ITKv4 modularization to use only Slicer needed modules form ITK.
- Patched tclap lib for std::min due to Visual Studio min macro.
- Using top directory of 4 characters (e.g. Binary Dir = C:\S43R, Source Dir = C:\Users\abcdef\src\Slicer43)
- CLI ImageIO factory registration fixed on Windows
- DWIConvert working on Windows
- ITKv4 related commits have been squashed, tweaked and reviewed so that they could be integrated into Slicer trunk. See https://github.com/jcfr/Slicer/compare/next-itkv4-20130110
Work in Progress
Blockers
Windows
- IO Factory registration
- In CLIs
- In main Slicer
- Packaging
Git Branch to Use
- Using this branch: https://github.com/BRAINSia/Slicer43/tree/20130107-next-slicer43
- Migration Plan at Slicer Wiki: https://www.slicer.org/wiki/ITKv4_Migration_plan
Windows 7, VS 2008, x64, Qt 8.2 Release build
git checkout origin/20130107-next-slicer43
https://dl.dropbox.com/u/1686930/itkv4builds/build1after%20update.txt
https://dl.dropbox.com/u/1686930/itkv4builds/build2after%20update.txt
Patch for InterlockedIncrement build error:
diff --git a/ofstd/include/dcmtk/ofstd/ofmem.h b/ofstd/include/dcmtk/ofstd/ofmem.h index 473b9c8..94bb937 100644 --- a/ofstd/include/dcmtk/ofstd/ofmem.h +++ b/ofstd/include/dcmtk/ofstd/ofmem.h @@ -226,7 +226,11 @@ private: private: /// The counter. +#ifdef HAVE_INTERLOCKED_INCREMENT + volatile LONG m_Count; +#else size_t m_Count; +#endif /// The pointer to the managed object. T* const m_pT; #ifdef OF_SHARED_PTR_NEED_MUTEX
Patch for tclap issue with std::min
diff --git a/tclap/include/tclap/StdOutput.h b/tclap/include/tclap/StdOutput.h index 2748b9e..229b934 100644 --- a/tclap/include/tclap/StdOutput.h +++ b/tclap/include/tclap/StdOutput.h @@ -33,6 +33,12 @@ #include <tclap/XorHandler.h> #include <tclap/Arg.h> +// Conditionally undefine the min macro that Visual Studio defines. +#ifdef min +#undef min +#endif + + namespace TCLAP {