/** * This function enables stack prefetching for a specified element (viewport) * It first disables any prefetching currently occurring on any other viewports. * * @param element {node} DOM Node representing the viewport element */ enablePrefetchOnElement = function(element) { log.info("imageViewerViewport enablePrefetchOnElement"); // Loop through all viewports and disable stackPrefetch $('.imageViewerViewport').each(function() { if (!$(this).find('canvas').length) { return; } cornerstoneTools.stackPrefetch.disable(this); }); // Make sure there is a stack to fetch var stack = cornerstoneTools.getToolState(element, 'stack'); if (stack && stack.data.length && stack.data[0].imageIds.length > 1) { cornerstoneTools.stackPrefetch.enable(element); } };