[vtk-developers] VTK modularization: initial pass at new modules

Marcus D. Hanwell marcus.hanwell at kitware.com
Tue Mar 8 17:07:10 EST 2011


Hi,

I have linked to a manifest file, this contains an early pass at
creating new VTK modules, as part of the VTK modularization project.
It maps source files, the old CMakeLists.txt, Testing and several
other parts have been intentionally left out for now. Once we have a
rough consensus on the classes that will go into the new kits we can
then map the tests to the appropriate places.

https://github.com/cryos/vtk-modularization/blob/master/manifest.txt

The [<ignore>] section marks files and directories that are not
mapped. All other sections denote new modules, for example,

[Core/Core]
Common/vtkABI.h:

Would map the vtkABI.h file currently in common to Core/Core/vtkABI.h
in the new modules. This would be a kit called vtkCoreCore. We are
planning on using two levels, with no modules in the first level and
only one word being allowed for top levels so that it is easy to
distinguish what the top level part of a library name is. This means
that the Core directory would contain several other modules that are
core libraries, with each module in the second level being a module.

I am pushing this list while it is still at an early stage (largely
with input from Berk, Will and Jeff so far) so that the wider
community can comment on the proposed moves. None of the names or
mappings are set in stone, and we welcome your input (especially from
those of you who have spent a lot of time working on some of these
classes). I will be updating it as I get things building, and once a
reasonable subset of VTK is building I will put up an experimental
modularized VTK repository for people to test. The history of that
repository will not be retained, and all source changes should still
go to VTK master.

As you can see some old modules have not been mapped yet (Imaging,
Parallel, Examples, Wrapping). I will let people know in advance of
the final move, the mappings will be applied to the latest source
files in master at that point using git file moves, and the new build
system committed. Until then I can update the experimental modularized
VTK by syncing to the latest source files in VTK master periodically.

We would appreciate input from the wider VTK developer community as we
modularize VTK. This will also impact other communities, such as
ParaView and Slicer, and we are looking into ways to ease porting to
the new layout. I have talked at length with the ITK modularization
team to see what we can share, and will be putting that together in
the experimental repository soon.

Thanks,

Marcus
--
Marcus D. Hanwell, Ph.D.
R&D Engineer, Kitware Inc.
(518) 881-4937



More information about the vtk-developers mailing list