vtkmodules.py 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622
  1. import os
  2. from _pyinstaller_hooks_contrib.compat import importlib_metadata
  3. import packaging.version
  4. try:
  5. vtk_version = packaging.version.Version(importlib_metadata.version('vtk')).release
  6. except Exception:
  7. vtk_version = None
  8. # This list of dependencies was obtained via analysis based on code in `vtkmodules/generate_pyi.py` and augmented with
  9. # missing entries until all tests from `test_vtkmodules` pass. Instead of a pre-computed list, we could dynamically
  10. # analyze each module when the hook is executed; however, such approach would be slower, and would also not account
  11. # for all dependencies that had to be added manually.
  12. #
  13. # NOTE: `vtkmodules.vtkCommonCore` is a dependency of every module, so do not list it here. Modules with no additional
  14. # dependencies are also not listed.
  15. _module_dependencies = {
  16. 'vtkmodules.vtkAcceleratorsVTKmDataModel': [
  17. 'vtkmodules.vtkAcceleratorsVTKmCore',
  18. 'vtkmodules.vtkCommonDataModel',
  19. ],
  20. 'vtkmodules.vtkAcceleratorsVTKmFilters': [
  21. 'vtkmodules.vtkAcceleratorsVTKmCore',
  22. 'vtkmodules.vtkAcceleratorsVTKmDataModel',
  23. 'vtkmodules.vtkCommonExecutionModel',
  24. 'vtkmodules.vtkFiltersCore',
  25. 'vtkmodules.vtkFiltersGeneral',
  26. 'vtkmodules.vtkFiltersGeometry',
  27. 'vtkmodules.vtkImagingCore',
  28. ],
  29. 'vtkmodules.vtkChartsCore': [
  30. 'vtkmodules.vtkRenderingContext2D',
  31. 'vtkmodules.vtkFiltersGeneral',
  32. ],
  33. 'vtkmodules.vtkCommonColor': [
  34. 'vtkmodules.vtkCommonDataModel',
  35. ],
  36. 'vtkmodules.vtkCommonComputationalGeometry': [
  37. 'vtkmodules.vtkCommonDataModel',
  38. ],
  39. 'vtkmodules.vtkCommonDataModel': [
  40. 'vtkmodules.vtkCommonMath',
  41. 'vtkmodules.vtkCommonTransforms',
  42. 'vtkmodules.util.data_model',
  43. ],
  44. 'vtkmodules.vtkCommonExecutionModel': [
  45. 'vtkmodules.vtkCommonDataModel',
  46. 'vtkmodules.util.execution_model',
  47. ],
  48. 'vtkmodules.vtkCommonMisc': [
  49. 'vtkmodules.vtkCommonMath',
  50. ],
  51. 'vtkmodules.vtkCommonTransforms': [
  52. 'vtkmodules.vtkCommonMath',
  53. ],
  54. 'vtkmodules.vtkDomainsChemistry': [
  55. 'vtkmodules.vtkCommonDataModel',
  56. 'vtkmodules.vtkCommonExecutionModel',
  57. 'vtkmodules.vtkIOLegacy',
  58. 'vtkmodules.vtkIOXMLParser',
  59. 'vtkmodules.vtkRenderingCore',
  60. ],
  61. 'vtkmodules.vtkDomainsChemistryOpenGL2': [
  62. 'vtkmodules.vtkDomainsChemistry',
  63. 'vtkmodules.vtkRenderingOpenGL2',
  64. ],
  65. 'vtkmodules.vtkFiltersAMR': [
  66. 'vtkmodules.vtkCommonDataModel',
  67. 'vtkmodules.vtkCommonExecutionModel',
  68. ],
  69. 'vtkmodules.vtkFiltersCellGrid': [
  70. 'vtkmodules.vtkCommonDataModel',
  71. 'vtkmodules.vtkCommonExecutionModel',
  72. ],
  73. 'vtkmodules.vtkFiltersCore': [
  74. 'vtkmodules.vtkCommonDataModel',
  75. 'vtkmodules.vtkCommonExecutionModel',
  76. 'vtkmodules.vtkCommonMisc',
  77. ],
  78. 'vtkmodules.vtkFiltersExtraction': [
  79. 'vtkmodules.vtkCommonExecutionModel',
  80. 'vtkmodules.vtkFiltersGeneral',
  81. ],
  82. 'vtkmodules.vtkFiltersFlowPaths': [
  83. 'vtkmodules.vtkCommonComputationalGeometry',
  84. 'vtkmodules.vtkCommonDataModel',
  85. 'vtkmodules.vtkCommonExecutionModel',
  86. 'vtkmodules.vtkCommonMath',
  87. ],
  88. 'vtkmodules.vtkFiltersGeneral': [
  89. 'vtkmodules.vtkCommonDataModel',
  90. 'vtkmodules.vtkCommonExecutionModel',
  91. 'vtkmodules.vtkFiltersCore',
  92. ],
  93. 'vtkmodules.vtkFiltersGeneric': [
  94. 'vtkmodules.vtkCommonExecutionModel',
  95. ],
  96. 'vtkmodules.vtkFiltersGeometry': [
  97. 'vtkmodules.vtkCommonExecutionModel',
  98. ],
  99. 'vtkmodules.vtkFiltersGeometryPreview': [
  100. 'vtkmodules.vtkCommonExecutionModel',
  101. ],
  102. 'vtkmodules.vtkFiltersHybrid': [
  103. 'vtkmodules.vtkCommonExecutionModel',
  104. 'vtkmodules.vtkCommonTransforms',
  105. 'vtkmodules.vtkFiltersGeometry',
  106. ],
  107. 'vtkmodules.vtkFiltersHyperTree': [
  108. 'vtkmodules.vtkCommonExecutionModel',
  109. 'vtkmodules.vtkFiltersCore',
  110. 'vtkmodules.vtkFiltersGeneral',
  111. ],
  112. 'vtkmodules.vtkFiltersImaging': [
  113. 'vtkmodules.vtkCommonExecutionModel',
  114. 'vtkmodules.vtkFiltersStatistics',
  115. ],
  116. 'vtkmodules.vtkFiltersModeling': [
  117. 'vtkmodules.vtkCommonExecutionModel',
  118. 'vtkmodules.vtkFiltersGeneral',
  119. ],
  120. 'vtkmodules.vtkFiltersParallel': [
  121. 'vtkmodules.vtkCommonDataModel',
  122. 'vtkmodules.vtkCommonExecutionModel',
  123. 'vtkmodules.vtkFiltersCore',
  124. 'vtkmodules.vtkFiltersExtraction',
  125. 'vtkmodules.vtkFiltersGeneral',
  126. 'vtkmodules.vtkFiltersGeometry',
  127. 'vtkmodules.vtkFiltersHybrid',
  128. 'vtkmodules.vtkFiltersHyperTree',
  129. 'vtkmodules.vtkFiltersModeling',
  130. 'vtkmodules.vtkFiltersSources',
  131. 'vtkmodules.vtkFiltersTexture',
  132. ],
  133. 'vtkmodules.vtkFiltersParallelDIY2': [
  134. 'vtkmodules.vtkCommonExecutionModel',
  135. 'vtkmodules.vtkFiltersCore',
  136. 'vtkmodules.vtkFiltersParallel',
  137. ],
  138. 'vtkmodules.vtkFiltersParallelImaging': [
  139. 'vtkmodules.vtkCommonExecutionModel',
  140. 'vtkmodules.vtkFiltersImaging',
  141. 'vtkmodules.vtkFiltersParallel',
  142. 'vtkmodules.vtkImagingCore',
  143. ],
  144. 'vtkmodules.vtkFiltersParallelStatistics': [
  145. 'vtkmodules.vtkFiltersStatistics',
  146. ],
  147. 'vtkmodules.vtkFiltersPoints': [
  148. 'vtkmodules.vtkCommonExecutionModel',
  149. 'vtkmodules.vtkFiltersModeling',
  150. ],
  151. 'vtkmodules.vtkFiltersProgrammable': [
  152. 'vtkmodules.vtkCommonExecutionModel',
  153. ],
  154. 'vtkmodules.vtkFiltersPython': [
  155. 'vtkmodules.vtkCommonExecutionModel',
  156. ],
  157. 'vtkmodules.vtkFiltersReduction': [
  158. 'vtkmodules.vtkCommonExecutionModel',
  159. ],
  160. 'vtkmodules.vtkFiltersSMP': [
  161. 'vtkmodules.vtkCommonDataModel',
  162. 'vtkmodules.vtkFiltersCore',
  163. 'vtkmodules.vtkFiltersGeneral',
  164. ],
  165. 'vtkmodules.vtkFiltersSelection': [
  166. 'vtkmodules.vtkCommonExecutionModel',
  167. ],
  168. 'vtkmodules.vtkFiltersSources': [
  169. 'vtkmodules.vtkCommonExecutionModel',
  170. ],
  171. 'vtkmodules.vtkFiltersStatistics': [
  172. 'vtkmodules.vtkCommonExecutionModel',
  173. ],
  174. 'vtkmodules.vtkFiltersTemporal': [
  175. 'vtkmodules.vtkCommonExecutionModel',
  176. 'vtkmodules.vtkFiltersCore',
  177. ],
  178. 'vtkmodules.vtkFiltersTensor': [
  179. 'vtkmodules.vtkCommonExecutionModel',
  180. ],
  181. 'vtkmodules.vtkFiltersTexture': [
  182. 'vtkmodules.vtkCommonExecutionModel',
  183. ],
  184. 'vtkmodules.vtkFiltersTopology': [
  185. 'vtkmodules.vtkCommonExecutionModel',
  186. ],
  187. 'vtkmodules.vtkFiltersVerdict': [
  188. 'vtkmodules.vtkCommonExecutionModel',
  189. ],
  190. 'vtkmodules.vtkGeovisCore': [
  191. 'vtkmodules.vtkCommonTransforms',
  192. ],
  193. 'vtkmodules.vtkIOAMR': [
  194. 'vtkmodules.vtkCommonExecutionModel',
  195. ],
  196. 'vtkmodules.vtkIOAsynchronous': [
  197. 'vtkmodules.vtkCommonExecutionModel',
  198. 'vtkmodules.vtkIOCore',
  199. 'vtkmodules.vtkIOImage',
  200. 'vtkmodules.vtkIOXML',
  201. ],
  202. 'vtkmodules.vtkIOAvmesh': [
  203. 'vtkmodules.vtkCommonExecutionModel',
  204. 'vtkmodules.vtkIOCore',
  205. ],
  206. 'vtkmodules.vtkIOCGNSReader': [
  207. 'vtkmodules.vtkCommonExecutionModel',
  208. ],
  209. 'vtkmodules.vtkIOCONVERGECFD': [
  210. 'vtkmodules.vtkCommonExecutionModel',
  211. ],
  212. 'vtkmodules.vtkIOCellGrid': [
  213. 'vtkmodules.vtkCommonDataModel',
  214. 'vtkmodules.vtkCommonExecutionModel',
  215. 'vtkmodules.vtkFiltersCellGrid',
  216. 'vtkmodules.vtkIOCore',
  217. ],
  218. 'vtkmodules.vtkIOCesium3DTiles': [
  219. 'vtkmodules.vtkCommonExecutionModel',
  220. 'vtkmodules.vtkIOCore',
  221. ],
  222. 'vtkmodules.vtkIOChemistry': [
  223. 'vtkmodules.vtkCommonExecutionModel',
  224. 'vtkmodules.vtkIOCore',
  225. ],
  226. 'vtkmodules.vtkIOCityGML': [
  227. 'vtkmodules.vtkCommonExecutionModel',
  228. ],
  229. 'vtkmodules.vtkIOCore': [
  230. 'vtkmodules.vtkCommonExecutionModel',
  231. ],
  232. 'vtkmodules.vtkIOERF': [
  233. 'vtkmodules.vtkCommonExecutionModel',
  234. ],
  235. 'vtkmodules.vtkIOEnSight': [
  236. 'vtkmodules.vtkCommonExecutionModel',
  237. ],
  238. 'vtkmodules.vtkIOEngys': [
  239. 'vtkmodules.vtkCommonExecutionModel',
  240. ],
  241. 'vtkmodules.vtkIOExodus': [
  242. 'vtkmodules.vtkCommonDataModel',
  243. 'vtkmodules.vtkCommonExecutionModel',
  244. 'vtkmodules.vtkIOCore',
  245. 'vtkmodules.vtkIOXMLParser',
  246. ],
  247. 'vtkmodules.vtkIOExport': [
  248. 'vtkmodules.vtkIOCore',
  249. 'vtkmodules.vtkIOImage',
  250. 'vtkmodules.vtkIOXML',
  251. 'vtkmodules.vtkRenderingContext2D',
  252. 'vtkmodules.vtkRenderingCore',
  253. 'vtkmodules.vtkRenderingFreeType',
  254. 'vtkmodules.vtkRenderingVtkJS',
  255. ],
  256. 'vtkmodules.vtkIOExportGL2PS': [
  257. 'vtkmodules.vtkIOExport',
  258. 'vtkmodules.vtkRenderingGL2PSOpenGL2',
  259. ],
  260. 'vtkmodules.vtkIOExportPDF': [
  261. 'vtkmodules.vtkIOExport',
  262. 'vtkmodules.vtkRenderingContext2D',
  263. ],
  264. 'vtkmodules.vtkIOFDS': [
  265. 'vtkmodules.vtkCommonExecutionModel',
  266. ],
  267. 'vtkmodules.vtkIOFLUENTCFF': [
  268. 'vtkmodules.vtkCommonExecutionModel',
  269. ],
  270. 'vtkmodules.vtkIOGeoJSON': [
  271. 'vtkmodules.vtkCommonDataModel',
  272. 'vtkmodules.vtkCommonExecutionModel',
  273. 'vtkmodules.vtkIOCore',
  274. ],
  275. 'vtkmodules.vtkIOGeometry': [
  276. 'vtkmodules.vtkCommonExecutionModel',
  277. 'vtkmodules.vtkIOCore',
  278. 'vtkmodules.vtkIOLegacy',
  279. ],
  280. 'vtkmodules.vtkIOH5Rage': [
  281. 'vtkmodules.vtkCommonExecutionModel',
  282. ],
  283. 'vtkmodules.vtkIOH5part': [
  284. 'vtkmodules.vtkCommonExecutionModel',
  285. ],
  286. 'vtkmodules.vtkIOHDF': [
  287. 'vtkmodules.vtkCommonExecutionModel',
  288. 'vtkmodules.vtkIOCore',
  289. ],
  290. 'vtkmodules.vtkIOIOSS': [
  291. 'vtkmodules.vtkCommonExecutionModel',
  292. 'vtkmodules.vtkFiltersCellGrid',
  293. 'vtkmodules.vtkIOCore',
  294. ],
  295. 'vtkmodules.vtkIOImport': [
  296. 'vtkmodules.vtkCommonExecutionModel',
  297. 'vtkmodules.vtkIOCore',
  298. 'vtkmodules.vtkRenderingCore',
  299. ],
  300. 'vtkmodules.vtkIOImage': [
  301. 'vtkmodules.vtkCommonExecutionModel',
  302. 'vtkmodules.vtkImagingCore',
  303. ],
  304. 'vtkmodules.vtkIOInfovis': [
  305. 'vtkmodules.vtkCommonExecutionModel',
  306. 'vtkmodules.vtkIOLegacy',
  307. 'vtkmodules.vtkIOXML',
  308. ],
  309. 'vtkmodules.vtkIOLANLX3D': [
  310. 'vtkmodules.vtkCommonExecutionModel',
  311. ],
  312. 'vtkmodules.vtkIOLSDyna': [
  313. 'vtkmodules.vtkCommonExecutionModel',
  314. 'vtkmodules.vtkIOXMLParser',
  315. ],
  316. 'vtkmodules.vtkIOLegacy': [
  317. 'vtkmodules.vtkCommonExecutionModel',
  318. 'vtkmodules.vtkIOCellGrid',
  319. 'vtkmodules.vtkIOCore',
  320. ],
  321. 'vtkmodules.vtkIOMINC': [
  322. 'vtkmodules.vtkCommonExecutionModel',
  323. 'vtkmodules.vtkIOCore',
  324. 'vtkmodules.vtkIOImage',
  325. ],
  326. 'vtkmodules.vtkIOMotionFX': [
  327. 'vtkmodules.vtkCommonExecutionModel',
  328. ],
  329. 'vtkmodules.vtkIOMovie': [
  330. 'vtkmodules.vtkCommonExecutionModel',
  331. ],
  332. 'vtkmodules.vtkIONetCDF': [
  333. 'vtkmodules.vtkCommonExecutionModel',
  334. 'vtkmodules.vtkIOCore',
  335. ],
  336. 'vtkmodules.vtkIOOMF': [
  337. 'vtkmodules.vtkCommonExecutionModel',
  338. ],
  339. 'vtkmodules.vtkIOOggTheora': [
  340. 'vtkmodules.vtkIOMovie',
  341. ],
  342. 'vtkmodules.vtkIOPIO': [
  343. 'vtkmodules.vtkCommonExecutionModel',
  344. ],
  345. 'vtkmodules.vtkIOPLY': [
  346. 'vtkmodules.vtkIOCore',
  347. ],
  348. 'vtkmodules.vtkIOParallel': [
  349. 'vtkmodules.vtkCommonExecutionModel',
  350. 'vtkmodules.vtkIOCore',
  351. 'vtkmodules.vtkIOGeometry',
  352. 'vtkmodules.vtkIOImage',
  353. 'vtkmodules.vtkIOLegacy',
  354. ],
  355. 'vtkmodules.vtkIOParallelExodus': [
  356. 'vtkmodules.vtkIOExodus',
  357. ],
  358. 'vtkmodules.vtkIOParallelLSDyna': [
  359. 'vtkmodules.vtkIOLSDyna',
  360. ],
  361. 'vtkmodules.vtkIOParallelXML': [
  362. 'vtkmodules.vtkIOXML',
  363. ],
  364. 'vtkmodules.vtkIOSQL': [
  365. 'vtkmodules.vtkCommonExecutionModel',
  366. 'vtkmodules.vtkIOCore',
  367. ],
  368. 'vtkmodules.vtkIOSegY': [
  369. 'vtkmodules.vtkCommonExecutionModel',
  370. 'vtkmodules.vtkIOImage',
  371. ],
  372. 'vtkmodules.vtkIOTRUCHAS': [
  373. 'vtkmodules.vtkCommonExecutionModel',
  374. ],
  375. 'vtkmodules.vtkIOTecplotTable': [
  376. 'vtkmodules.vtkCommonExecutionModel',
  377. ],
  378. 'vtkmodules.vtkIOVPIC': [
  379. 'vtkmodules.vtkCommonExecutionModel',
  380. ],
  381. 'vtkmodules.vtkIOVeraOut': [
  382. 'vtkmodules.vtkCommonExecutionModel',
  383. ],
  384. 'vtkmodules.vtkIOVideo': [
  385. 'vtkmodules.vtkCommonExecutionModel',
  386. ],
  387. 'vtkmodules.vtkIOXML': [
  388. 'vtkmodules.vtkCommonExecutionModel',
  389. 'vtkmodules.vtkIOXMLParser',
  390. ],
  391. 'vtkmodules.vtkIOXMLParser': [
  392. 'vtkmodules.vtkCommonDataModel',
  393. ],
  394. 'vtkmodules.vtkIOXdmf2': [
  395. 'vtkmodules.vtkCommonExecutionModel',
  396. 'vtkmodules.vtkIOLegacy',
  397. ],
  398. 'vtkmodules.vtkImagingColor': [
  399. 'vtkmodules.vtkCommonExecutionModel',
  400. 'vtkmodules.vtkImagingCore',
  401. ],
  402. 'vtkmodules.vtkImagingCore': [
  403. 'vtkmodules.vtkCommonDataModel',
  404. 'vtkmodules.vtkCommonExecutionModel',
  405. ],
  406. 'vtkmodules.vtkImagingFourier': [
  407. 'vtkmodules.vtkCommonExecutionModel',
  408. 'vtkmodules.vtkImagingCore',
  409. ],
  410. 'vtkmodules.vtkImagingGeneral': [
  411. 'vtkmodules.vtkCommonExecutionModel',
  412. 'vtkmodules.vtkImagingCore',
  413. ],
  414. 'vtkmodules.vtkImagingHybrid': [
  415. 'vtkmodules.vtkCommonExecutionModel',
  416. ],
  417. 'vtkmodules.vtkImagingMath': [
  418. 'vtkmodules.vtkCommonExecutionModel',
  419. ],
  420. 'vtkmodules.vtkImagingMorphological': [
  421. 'vtkmodules.vtkCommonExecutionModel',
  422. 'vtkmodules.vtkImagingCore',
  423. 'vtkmodules.vtkImagingGeneral',
  424. ],
  425. 'vtkmodules.vtkImagingOpenGL2': [
  426. 'vtkmodules.vtkImagingGeneral',
  427. 'vtkmodules.vtkRenderingOpenGL2',
  428. ],
  429. 'vtkmodules.vtkImagingSources': [
  430. 'vtkmodules.vtkCommonExecutionModel',
  431. ],
  432. 'vtkmodules.vtkImagingStatistics': [
  433. 'vtkmodules.vtkCommonExecutionModel',
  434. ],
  435. 'vtkmodules.vtkImagingStencil': [
  436. 'vtkmodules.vtkCommonExecutionModel',
  437. 'vtkmodules.vtkImagingCore',
  438. ],
  439. 'vtkmodules.vtkInfovisCore': [
  440. 'vtkmodules.vtkCommonColor',
  441. 'vtkmodules.vtkCommonExecutionModel',
  442. 'vtkmodules.vtkImagingSources',
  443. 'vtkmodules.vtkIOImage',
  444. 'vtkmodules.vtkRenderingFreeType',
  445. ],
  446. 'vtkmodules.vtkInfovisLayout': [
  447. 'vtkmodules.vtkCommonExecutionModel',
  448. ],
  449. 'vtkmodules.vtkInteractionImage': [
  450. 'vtkmodules.vtkRenderingCore',
  451. ],
  452. 'vtkmodules.vtkInteractionStyle': [
  453. 'vtkmodules.vtkRenderingCore',
  454. ],
  455. 'vtkmodules.vtkInteractionWidgets': [
  456. 'vtkmodules.vtkCommonExecutionModel',
  457. 'vtkmodules.vtkFiltersGeneral',
  458. 'vtkmodules.vtkFiltersSources',
  459. 'vtkmodules.vtkRenderingContext2D',
  460. 'vtkmodules.vtkRenderingCore',
  461. ],
  462. 'vtkmodules.vtkPythonContext2D': [
  463. 'vtkmodules.vtkRenderingContext2D',
  464. ],
  465. 'vtkmodules.vtkRenderingAnnotation': [
  466. 'vtkmodules.vtkCommonExecutionModel',
  467. 'vtkmodules.vtkRenderingCore',
  468. ],
  469. 'vtkmodules.vtkRenderingCellGrid': [
  470. 'vtkmodules.vtkFiltersCellGrid',
  471. 'vtkmodules.vtkRenderingCore',
  472. 'vtkmodules.vtkRenderingOpenGL2',
  473. ],
  474. 'vtkmodules.vtkRenderingContext2D': [
  475. 'vtkmodules.vtkCommonExecutionModel',
  476. 'vtkmodules.vtkRenderingCore',
  477. ],
  478. 'vtkmodules.vtkRenderingContextOpenGL2': [
  479. 'vtkmodules.vtkRenderingContext2D',
  480. 'vtkmodules.vtkRenderingFreeType',
  481. 'vtkmodules.vtkRenderingOpenGL2',
  482. ],
  483. 'vtkmodules.vtkRenderingCore': [
  484. 'vtkmodules.vtkCommonDataModel',
  485. 'vtkmodules.vtkCommonExecutionModel',
  486. ],
  487. 'vtkmodules.vtkRenderingExternal': [
  488. 'vtkmodules.vtkRenderingCore',
  489. 'vtkmodules.vtkRenderingOpenGL2',
  490. ],
  491. 'vtkmodules.vtkRenderingFreeType': [
  492. 'vtkmodules.vtkCommonExecutionModel',
  493. 'vtkmodules.vtkRenderingCore',
  494. ],
  495. 'vtkmodules.vtkRenderingGridAxes': [
  496. 'vtkmodules.vtkChartsCore',
  497. 'vtkmodules.vtkRenderingCore',
  498. ],
  499. 'vtkmodules.vtkRenderingGL2PSOpenGL2': [
  500. 'vtkmodules.vtkRenderingOpenGL2',
  501. ],
  502. 'vtkmodules.vtkRenderingHyperTreeGrid': [
  503. 'vtkmodules.vtkRenderingCore',
  504. ],
  505. 'vtkmodules.vtkRenderingImage': [
  506. 'vtkmodules.vtkCommonExecutionModel',
  507. 'vtkmodules.vtkRenderingCore',
  508. ],
  509. 'vtkmodules.vtkRenderingLICOpenGL2': [
  510. 'vtkmodules.vtkCommonExecutionModel',
  511. 'vtkmodules.vtkRenderingCore',
  512. 'vtkmodules.vtkRenderingOpenGL2',
  513. ],
  514. 'vtkmodules.vtkRenderingLOD': [
  515. 'vtkmodules.vtkRenderingCore',
  516. ],
  517. 'vtkmodules.vtkRenderingLabel': [
  518. 'vtkmodules.vtkCommonDataModel',
  519. 'vtkmodules.vtkCommonExecutionModel',
  520. 'vtkmodules.vtkRenderingCore',
  521. 'vtkmodules.vtkRenderingFreeType',
  522. ],
  523. 'vtkmodules.vtkRenderingMatplotlib': [
  524. 'vtkmodules.vtkRenderingFreeType',
  525. ],
  526. 'vtkmodules.vtkRenderingOpenGL2': [
  527. 'vtkmodules.vtkFiltersGeneral',
  528. 'vtkmodules.vtkIOImage',
  529. 'vtkmodules.vtkRenderingCore',
  530. 'vtkmodules.vtkRenderingHyperTreeGrid',
  531. 'vtkmodules.vtkRenderingUI',
  532. ],
  533. 'vtkmodules.vtkRenderingParallel': [
  534. 'vtkmodules.vtkRenderingCore',
  535. 'vtkmodules.vtkRenderingOpenGL2',
  536. ],
  537. 'vtkmodules.vtkRenderingUI': [
  538. 'vtkmodules.vtkRenderingCore',
  539. ],
  540. 'vtkmodules.vtkRenderingVR': [
  541. 'vtkmodules.vtkInteractionStyle',
  542. 'vtkmodules.vtkInteractionWidgets',
  543. 'vtkmodules.vtkIOXMLParser',
  544. 'vtkmodules.vtkRenderingCore',
  545. 'vtkmodules.vtkRenderingOpenGL2',
  546. 'vtkmodules.vtkRenderingVolumeOpenGL2',
  547. 'vtkmodules.vtkRenderingVRModels',
  548. ],
  549. 'vtkmodules.vtkRenderingVRModels': [
  550. 'vtkmodules.vtkRenderingCore',
  551. 'vtkmodules.vtkRenderingOpenGL2',
  552. ],
  553. 'vtkmodules.vtkRenderingVolume': [
  554. 'vtkmodules.vtkCommonExecutionModel',
  555. 'vtkmodules.vtkRenderingCore',
  556. ],
  557. 'vtkmodules.vtkRenderingVolumeAMR': [
  558. 'vtkmodules.vtkImagingCore',
  559. 'vtkmodules.vtkRenderingVolume',
  560. 'vtkmodules.vtkRenderingVolumeOpenGL2',
  561. ],
  562. 'vtkmodules.vtkRenderingVolumeOpenGL2': [
  563. 'vtkmodules.vtkImagingCore',
  564. 'vtkmodules.vtkImagingMath',
  565. 'vtkmodules.vtkRenderingOpenGL2',
  566. 'vtkmodules.vtkRenderingVolume',
  567. ],
  568. 'vtkmodules.vtkRenderingVtkJS': [
  569. 'vtkmodules.vtkRenderingSceneGraph',
  570. ],
  571. 'vtkmodules.vtkTestingRendering': [
  572. 'vtkmodules.vtkImagingColor',
  573. 'vtkmodules.vtkIOXML',
  574. 'vtkmodules.vtkRenderingCore',
  575. ],
  576. 'vtkmodules.vtkTestingSerialization': [
  577. 'vtkmodules.vtkCommonDataModel',
  578. 'vtkmodules.vtkSerializationManager',
  579. ],
  580. 'vtkmodules.vtkViewsContext2D': [
  581. 'vtkmodules.vtkRenderingCore',
  582. 'vtkmodules.vtkViewsCore',
  583. ],
  584. 'vtkmodules.vtkViewsCore': [
  585. 'vtkmodules.vtkCommonExecutionModel',
  586. 'vtkmodules.vtkInteractionWidgets',
  587. ],
  588. 'vtkmodules.vtkViewsInfovis': [
  589. 'vtkmodules.vtkCommonDataModel',
  590. 'vtkmodules.vtkCommonExecutionModel',
  591. 'vtkmodules.vtkInteractionStyle',
  592. 'vtkmodules.vtkRenderingContext2D',
  593. 'vtkmodules.vtkViewsCore',
  594. ],
  595. 'vtkmodules.vtkWebGLExporter': [
  596. 'vtkmodules.vtkIOExport',
  597. ],
  598. }
  599. # Additional hidden imports for vtk 9.6.0
  600. if vtk_version is not None and vtk_version >= (9, 6, 0):
  601. # Additional
  602. _module_dependencies['vtkmodules.vtkIOImage'] += ['vtkmodules.vtkIOCore']
  603. _module_dependencies['vtkmodules.vtkViewsInfovis'] += ['vtkmodules.vtkChartsCore']
  604. # New
  605. _module_dependencies['vtkmodules.vtkSerializationManager'] = ['vtkmodules.vtkCommonDataModel']
  606. def add_vtkmodules_dependencies(hook_file):
  607. # Find the module underlying this vtkmodules hook: change `/path/to/hook-vtkmodules.blah.py` to `vtkmodules.blah`.
  608. hook_name, hook_ext = os.path.splitext(os.path.basename(hook_file))
  609. assert hook_ext.startswith('.py')
  610. assert hook_name.startswith('hook-')
  611. module_name = hook_name[5:]
  612. # Look up the list of hidden imports.
  613. return ["vtkmodules.vtkCommonCore", *_module_dependencies.get(module_name, [])]