I’m trying to learn how to find the package name for a particular class in VTK with c++ and cmake. I feel like I’ve been going through examples and blindly following what the authors suggest should go inside the
find_package(...) parentheses and I’d love to understand it better. One example is if I’m now trying to be able to use the
vtkStructuredGrid class and I need to be able to include
#include <vtkStructuredGridAlgorithm.h> what is the way I should infer the package name for the cmake lists? Thanks!
“package” - or module as the VTK infrastructure calls them - naming follows the directory names of the source code. For example,
vtkStructuredGrid.h is located at
Common/DataModel/vtkStructuredGrid.h and the module that holds the implementation of
vtkStructuredGridAlgorithm.h is under
Common/ExecutionModel thus, the corresponding module name is
Additionally , you may use the python script
Utilities/Maintenance/FindNeededModules.py that returns the module names needed for a given source file.
oh that script is a gold mine! And overall I think this makes much more sense now. Thank you!