X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=vtk%2Fsrc%2Fvtk%2FvtkJavaDep.java;h=0377199e106ffde0ed74802a5f147a5d45d9f936;hb=efb52587babd1b858c8e77fedc44a5b4ef0c1088;hp=ade1837135fb494ae0c3168264cd0171a318f8c9;hpb=7e8142b80067a2af52ceb5bdf3a9307756c1c78c;p=simantics%2F3d.git diff --git a/vtk/src/vtk/vtkJavaDep.java b/vtk/src/vtk/vtkJavaDep.java index ade18371..0377199e 100644 --- a/vtk/src/vtk/vtkJavaDep.java +++ b/vtk/src/vtk/vtkJavaDep.java @@ -94,7 +94,7 @@ public class vtkJavaDep { "vtkRenderingFreeTypeJava", "vtkRenderingAnnotation", "vtkRenderingAnnotationJava", - + "vtkFiltersHybrid", "vtkFiltersHybridJava", @@ -105,15 +105,43 @@ public class vtkJavaDep { "vtkInteractionImage", "vtkInteractionImageJava", + "vtkIOCore", + "vtkIOCoreJava", + "vtkMetaIO", + "vtkIOXMLParser", + "vtkIOXMLParserJava", + "vtkIOXML", + "vtkIOXMLJava", + + "vtkDICOMParser", + "vtkIOImage", + "vtkIOImageJava", + "vtkIOImport", + "vtkIOImportJava", + }; - - - static { - for (String lib : libs) - System.loadLibrary(lib); - } - - static void load() { - - } + + private static boolean loaded = false; + + static void load() { + if (!loaded) { + + try { + Class.forName("java.awt.Toolkit"); + } catch (ClassNotFoundException e) { + throw new IllegalStateException(e); + } + try { + System.loadLibrary("jawt"); + } catch (UnsatisfiedLinkError e) { + // bypass potential load error. If jawt is not really loaded, we will get errors + // with VTK dlls. + } + + for (String lib : libs) + System.loadLibrary(lib); + + loaded = true; + } + } }