Skip to content

Commit 6d710a5

Browse files
committed
ENH: Add Visual Studio specific debug helpers to ITKCommon project
Starting in Visual Studio 2022 version 17.6, copying these files to VS installation directory will no longer be required. Natvis has been supported for longer. This will likely do nothing if MSVC+Ninja is chosen.
1 parent efe5933 commit 6d710a5

4 files changed

Lines changed: 21 additions & 33 deletions

File tree

Modules/Core/Common/src/CMakeLists.txt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -246,6 +246,17 @@ elseif(MSVC)
246246
)
247247
endif()
248248

249+
if(MSVC)
250+
list(APPEND ITKCommon_SRCS
251+
252+
# ITK.natvis are nicer debug visualizers for Visual Studio
253+
${ITK_SOURCE_DIR}/Utilities/Debugger/ITK.natvis
254+
255+
# do not step into SmartPointer and Object::Register
256+
${ITK_SOURCE_DIR}/Utilities/Debugger/ITK.natstepfilter
257+
)
258+
endif()
259+
249260
### generating libraries
250261
itk_module_add_library(ITKCommon ${ITKCommon_SRCS})
251262

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<!-- Documentation: https://learn.microsoft.com/en-us/visualstudio/debugger/just-my-code?view=visualstudio -->
3+
<StepFilter xmlns="http://schemas.microsoft.com/vstudio/debugger/natstepfilter/2010">
4+
<Function><Name>itk::SmartPointer.*</Name><Action>NoStepInto</Action></Function>
5+
<Function><Name>itk::Object::Register</Name><Action>NoStepInto</Action></Function>
6+
<Function><Name>vtkSmartPointer.*</Name><Action>NoStepInto</Action></Function>
7+
<!-- We can also disable stepping into STL functions by uncommeting the next line: -->
8+
<!-- <Function><Name>std::.+</Name><Action>NoStepInto</Action></Function> -->
9+
</StepFilter>

Utilities/Debugger/ITK.natvis

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
<?xml version="1.0" encoding="utf-8" ?>
2-
<!-- Documentation: https://msdn.microsoft.com/en-us/library/jj620914.aspx?f=255&MSPPError=-2147217396 -->
3-
<!-- e.g. copy into C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Packages\Debugger\Visualizers\ITK.natvis -->
2+
<!-- Documentation: https://learn.microsoft.com/en-us/previous-versions/visualstudio/visual-studio-2015/debugger/create-custom-views-of-native-objects?view=vs-2015 -->
43
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
54

65
<Type Name="itk::Size&lt;1&gt;">

Utilities/Debugger/default.natstepfilter

Lines changed: 0 additions & 31 deletions
This file was deleted.

0 commit comments

Comments
 (0)