Package ome.services

Class RenderingBean

  • All Implemented Interfaces:
    java.io.Serializable, ome.api.ServiceInterface, ome.api.StatefulServiceInterface, omeis.providers.re.RenderingEngine

    @Transactional(readOnly=true)
    public class RenderingBean
    extends java.lang.Object
    implements omeis.providers.re.RenderingEngine, java.io.Serializable
    Provides the RenderingEngine service. This class is an Adapter to wrap the Renderer so to make it thread-safe.

    The multi-threaded design of this component is based on dynamic locking and confinement techniques. All access to the component's internal parts happens through a RenderingEngineImpl object, which is fully synchronized. Internal parts are either never leaked out or given away only if read-only objects. (The only exception are the CodomainMapContext objects which are not read-only but are copied upon every method invocation so to maintain safety.)

    Finally the RenderingEngine component doesn't make use of constructs that could compromise liveness.

    Since:
    3.0-M3
    See Also:
    RenderingEngine, Serialized Form
    • Field Detail

      • NULL_RENDERER

        protected static final java.lang.String NULL_RENDERER
        Message if the rendering engine is not ready.
        See Also:
        Constant Field Values
    • Method Detail

      • getServiceInterface

        public java.lang.Class<? extends ome.api.ServiceInterface> getServiceInterface()
        Returns the service corresponding to this class.
        Returns:
        See above.
      • lookupPixels

        public void lookupPixels​(long pixelsId)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        lookupPixels in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.lookupPixels(long)
      • lookupRenderingDef

        public boolean lookupRenderingDef​(long pixelsId)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        lookupRenderingDef in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.lookupRenderingDef(long)
      • loadRenderingDef

        public void loadRenderingDef​(long renderingDefId)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        loadRenderingDef in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.loadRenderingDef(long)
      • load

        public void load()
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        load in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.load()
      • setOverlays

        public void setOverlays​(java.util.Map<byte[],​java.lang.Integer> overlays)
        Deprecated.
        As of release 5.1.0, replaced by PlaneDef.setShapeIds(List).
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        setOverlays in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.setOverlays(Map)
      • getCurrentEventContext

        public ome.system.EventContext getCurrentEventContext()
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        getCurrentEventContext in interface ome.api.StatefulServiceInterface
        See Also:
        StatefulServiceInterface.getCurrentEventContext()
      • renderProjectedAsPackedInt

        public int[] renderProjectedAsPackedInt​(int algorithm,
                                                int timepoint,
                                                int stepping,
                                                int start,
                                                int end)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        renderProjectedAsPackedInt in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.renderAsPackedInt(PlaneDef)
      • resetDefaultSettings

        public long resetDefaultSettings​(boolean save)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        resetDefaultSettings in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.resetDefaultSettings(boolean)
      • getCompressionLevel

        public float getCompressionLevel()
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        getCompressionLevel in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.getCompressionLevel()
      • saveAsNewSettings

        @Transactional(readOnly=false)
        public long saveAsNewSettings()
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        saveAsNewSettings in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.saveAsNewSettings()
      • saveCurrentSettings

        @Transactional(readOnly=false)
        public void saveCurrentSettings()
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        saveCurrentSettings in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.saveCurrentSettings()
      • getChannelCurveCoefficient

        public double getChannelCurveCoefficient​(int w)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        getChannelCurveCoefficient in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.getChannelCurveCoefficient(int)
      • getChannelNoiseReduction

        public boolean getChannelNoiseReduction​(int w)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        getChannelNoiseReduction in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.getChannelNoiseReduction(int)
      • getChannelStats

        public double[] getChannelStats​(int w)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        getChannelStats in interface omeis.providers.re.RenderingEngine
      • getChannelWindowEnd

        public double getChannelWindowEnd​(int w)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        getChannelWindowEnd in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.getChannelWindowEnd(int)
      • getChannelWindowStart

        public double getChannelWindowStart​(int w)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        getChannelWindowStart in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.getChannelWindowStart(int)
      • getRGBA

        public int[] getRGBA​(int w)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        getRGBA in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.getRGBA(int)
      • isActive

        public boolean isActive​(int w)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        isActive in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.isActive(int)
      • setChannelLookupTable

        public void setChannelLookupTable​(int w,
                                          java.lang.String lookup)
        Specified by:
        setChannelLookupTable in interface omeis.providers.re.RenderingEngine
      • getDefaultT

        public int getDefaultT()
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        getDefaultT in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.getDefaultT()
      • getDefaultZ

        public int getDefaultZ()
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        getDefaultZ in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.getDefaultZ()
      • getAvailableModels

        public java.util.List getAvailableModels()
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        getAvailableModels in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.getAvailableModels()
      • getAvailableFamilies

        public java.util.List getAvailableFamilies()
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        getAvailableFamilies in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.getAvailableFamilies()
      • setActive

        public void setActive​(int w,
                              boolean active)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        setActive in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.setActive(int, boolean)
      • setChannelWindow

        public void setChannelWindow​(int w,
                                     double start,
                                     double end)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        setChannelWindow in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.setChannelWindow(int, double, double)
      • setCodomainInterval

        public void setCodomainInterval​(int start,
                                        int end)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        setCodomainInterval in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.setCodomainInterval(int, int)
      • setDefaultT

        public void setDefaultT​(int t)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        setDefaultT in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.setDefaultT(int)
      • setDefaultZ

        public void setDefaultZ​(int z)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        setDefaultZ in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.setDefaultZ(int)
      • setQuantizationMap

        public void setQuantizationMap​(int w,
                                       ome.model.enums.Family family,
                                       double coefficient,
                                       boolean noiseReduction)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        setQuantizationMap in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.setQuantizationMap(int, Family, double, boolean)
      • setQuantumStrategy

        public void setQuantumStrategy​(int bitResolution)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        setQuantumStrategy in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.setQuantumStrategy(int)
      • setRGBA

        public void setRGBA​(int w,
                            int red,
                            int green,
                            int blue,
                            int alpha)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        setRGBA in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.setRGBA(int, int, int, int, int)
      • isPixelsTypeSigned

        public boolean isPixelsTypeSigned()
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        isPixelsTypeSigned in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.isPixelsTypeSigned()
      • getPixelsTypeLowerBound

        public double getPixelsTypeLowerBound​(int w)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        getPixelsTypeLowerBound in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.getPixelsTypeLowerBound(int)
      • getResolutionDescriptions

        public java.util.List<java.util.List<java.lang.Integer>> getResolutionDescriptions()
        Specified by:
        getResolutionDescriptions in interface omeis.providers.re.RenderingEngine
      • getPixelsTypeUpperBound

        public double getPixelsTypeUpperBound​(int w)
        Implemented as specified by the RenderingEngine interface.
        Specified by:
        getPixelsTypeUpperBound in interface omeis.providers.re.RenderingEngine
        See Also:
        RenderingEngine.getPixelsTypeUpperBound(int)
      • errorIfInvalidState

        protected void errorIfInvalidState()
      • errorIfNullPixels

        protected void errorIfNullPixels()
        Throws an ApiUsageException if the pixels are not set.
      • errorIfNullRenderingDef

        protected void errorIfNullRenderingDef()
        Throws an ApiUsageException if the rendering settings are not set.
      • errorIfNullRenderer

        protected void errorIfNullRenderer()
        Reloads the rendering engine if null and has been made passive or throws an ApiUsageException if the rendering engine is not set.