structureFilepath, tft, paeFilepath, false,
ssFromStructure, false, viewerType);
- if (headless)
+ if (sv==null)
{
- sv.setAsync(false);
+ Console.error("Failed to import and open structure view.");
+ continue;
}
-
+ try
+ {
+ long tries=1000;
+ while (sv.isBusy() && tries>0)
+ {
+ Thread.sleep(25);
+ if (sv.isBusy())
+ {
+ tries--;
+ Console.debug(
+ "Waiting for viewer for " + structureFilepath);
+ }
+ }
+ if (tries==0 && sv.isBusy())
+ {
+ Console.warn("Gave up waiting for structure viewer to load. Something may have gone wrong.");
+ }
+ } catch (Exception x)
+ {
+ Console.warn("Exception whilst waiting for structure viewer "+structureFilepath,x);
+ }
+ Console.debug("Successfully opened viewer for "+structureFilepath);
String structureImageFilename = ArgParser.getValueFromSubValOrArg(
avm, av, Arg.STRUCTUREIMAGE, subVals);
if (sv != null && structureImageFilename != null)
}
BitmapImageSizing userBis = ImageMaker
.parseScaleWidthHeightStrings(scale, width, height);
+ // TODO MAKE THIS VIEWER INDEPENDENT!!
switch (StructureViewer.getViewerType())
{
case JMOL:
try
{
- Thread.sleep(1000);
+ Thread.sleep(1000); // WHY ???
} catch (InterruptedException e)
{
// TODO Auto-generated catch block
if (sview instanceof AppJmol)
{
AppJmol jmol = (AppJmol) sview;
- jmol.makePDBImage(structureImageFile, imageType, renderer,
+ try {
+ Console.debug("Rendering image to "+structureImageFile);
+ jmol.makePDBImage(structureImageFile, imageType, renderer,
userBis);
+ Console.debug("Finished Rendering image to "+structureImageFile);
+
+ }
+ catch (ImageOutputException ioexc)
+ {
+ Console.warn("Unexpected error whilst exporting image to "+structureImageFile,ioexc);
+ }
+
}
break;
default: