    FOREIGN MODULE java_awt_image_renderable;

    IMPORT
        java_awt_image,
        java_awt_geom,
        java_lang,
        java_io,
        java_util,
        java_awt;

    TYPE

      ContextualRenderedImageFactory* = POINTER TO INTERFACE RECORD (java_lang.Object + RenderedImageFactory)
                                        END;

      ParameterBlock* = POINTER TO EXTENSIBLE RECORD (java_lang.Object + java_lang.Cloneable + java_io.Serializable)
                          sources! : java_util.Vector;
                          parameters! : java_util.Vector;
                        STATIC
                          PROCEDURE Init*() : ParameterBlock,CONSTRUCTOR;
                          PROCEDURE Init*(p0 : java_util.Vector) : ParameterBlock,CONSTRUCTOR;
                          PROCEDURE Init*(p0 : java_util.Vector;
                                          p1 : java_util.Vector) : ParameterBlock,CONSTRUCTOR;
                        END;

      RenderableImage* = POINTER TO INTERFACE RECORD (java_lang.Object)
                         STATIC
                           HINTS_OBSERVED* = "HINTS_OBSERVED";
                         END;

      RenderableImageOp* = POINTER TO EXTENSIBLE RECORD (java_lang.Object + RenderableImage)
                           STATIC
                             PROCEDURE Init*(p0 : ContextualRenderedImageFactory;
                                             p1 : ParameterBlock) : RenderableImageOp,CONSTRUCTOR;
                           END;

      RenderableImageProducer* = POINTER TO EXTENSIBLE RECORD (java_lang.Object + java_awt_image.ImageProducer + java_lang.Runnable)
                                 STATIC
                                   PROCEDURE Init*(p0 : RenderableImage;
                                                   p1 : RenderContext) : RenderableImageProducer,CONSTRUCTOR;
                                 END;

      RenderContext* = POINTER TO EXTENSIBLE RECORD (java_lang.Object + java_lang.Cloneable)
                       STATIC
                         PROCEDURE Init*(p0 : java_awt_geom.AffineTransform) : RenderContext,CONSTRUCTOR;
                         PROCEDURE Init*(p0 : java_awt_geom.AffineTransform;
                                         p1 : java_awt.RenderingHints) : RenderContext,CONSTRUCTOR;
                         PROCEDURE Init*(p0 : java_awt_geom.AffineTransform;
                                         p1 : java_awt.Shape) : RenderContext,CONSTRUCTOR;
                         PROCEDURE Init*(p0 : java_awt_geom.AffineTransform;
                                         p1 : java_awt.Shape;
                                         p2 : java_awt.RenderingHints) : RenderContext,CONSTRUCTOR;
                       END;

      RenderedImageFactory* = POINTER TO INTERFACE RECORD (java_lang.Object)
                              END;

    PROCEDURE (self:ContextualRenderedImageFactory) create*(p0 : RenderContext;
                                                            p1 : ParameterBlock) : java_awt_image.RenderedImage,NEW,ABSTRACT;

    PROCEDURE (self:ContextualRenderedImageFactory) getBounds2D*(p0 : ParameterBlock) : java_awt_geom.Rectangle2D,NEW,ABSTRACT;

    PROCEDURE (self:ContextualRenderedImageFactory) getProperty*(p0 : ParameterBlock;
                                                                 p1 : java_lang.String) : java_lang.Object,NEW,ABSTRACT;

    PROCEDURE (self:ContextualRenderedImageFactory) getPropertyNames*() : POINTER TO ARRAY OF java_lang.String,NEW,ABSTRACT;

    PROCEDURE (self:ContextualRenderedImageFactory) isDynamic*() : BOOLEAN,NEW,ABSTRACT;

    PROCEDURE (self:ContextualRenderedImageFactory) mapRenderContext*(p0 : INTEGER;
                                                                      p1 : RenderContext;
                                                                      p2 : ParameterBlock;
                                                                      p3 : RenderableImage) : RenderContext,NEW,ABSTRACT;

    PROCEDURE (self:ParameterBlock) add*(p0 : BYTE) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) add*(p0 : CHAR) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) add*(p0 : REAL) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) add*(p0 : SHORTREAL) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) add*(p0 : INTEGER) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) add*(p0 : LONGINT) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) add*(p0 : java_lang.Object) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) add*(p0 : SHORTINT) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) addSource*(p0 : java_lang.Object) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) clone*() : java_lang.Object,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) getByteParameter*(p0 : INTEGER) : BYTE,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) getCharParameter*(p0 : INTEGER) : CHAR,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) getDoubleParameter*(p0 : INTEGER) : REAL,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) getFloatParameter*(p0 : INTEGER) : SHORTREAL,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) getIntParameter*(p0 : INTEGER) : INTEGER,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) getLongParameter*(p0 : INTEGER) : LONGINT,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) getNumParameters*() : INTEGER,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) getNumSources*() : INTEGER,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) getObjectParameter*(p0 : INTEGER) : java_lang.Object,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) getParamClasses*() : POINTER TO ARRAY OF java_lang.Class,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) getParameters*() : java_util.Vector,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) getRenderableSource*(p0 : INTEGER) : RenderableImage,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) getRenderedSource*(p0 : INTEGER) : java_awt_image.RenderedImage,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) getShortParameter*(p0 : INTEGER) : SHORTINT,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) getSource*(p0 : INTEGER) : java_lang.Object,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) getSources*() : java_util.Vector,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) removeParameters*(),NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) removeSources*(),NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) set*(p0 : BYTE;
                                         p1 : INTEGER) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) set*(p0 : CHAR;
                                         p1 : INTEGER) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) set*(p0 : REAL;
                                         p1 : INTEGER) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) set*(p0 : SHORTREAL;
                                         p1 : INTEGER) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) set*(p0 : INTEGER;
                                         p1 : INTEGER) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) set*(p0 : LONGINT;
                                         p1 : INTEGER) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) set*(p0 : java_lang.Object;
                                         p1 : INTEGER) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) set*(p0 : SHORTINT;
                                         p1 : INTEGER) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) setParameters*(p0 : java_util.Vector),NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) setSource*(p0 : java_lang.Object;
                                               p1 : INTEGER) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) setSources*(p0 : java_util.Vector),NEW,EXTENSIBLE;

    PROCEDURE (self:ParameterBlock) shallowClone*() : java_lang.Object,NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImage) createDefaultRendering*() : java_awt_image.RenderedImage,NEW,ABSTRACT;

    PROCEDURE (self:RenderableImage) createRendering*(p0 : RenderContext) : java_awt_image.RenderedImage,NEW,ABSTRACT;

    PROCEDURE (self:RenderableImage) createScaledRendering*(p0 : INTEGER;
                                                            p1 : INTEGER;
                                                            p2 : java_awt.RenderingHints) : java_awt_image.RenderedImage,NEW,ABSTRACT;

    PROCEDURE (self:RenderableImage) getHeight*() : SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:RenderableImage) getMinX*() : SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:RenderableImage) getMinY*() : SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:RenderableImage) getProperty*(p0 : java_lang.String) : java_lang.Object,NEW,ABSTRACT;

    PROCEDURE (self:RenderableImage) getPropertyNames*() : POINTER TO ARRAY OF java_lang.String,NEW,ABSTRACT;

    PROCEDURE (self:RenderableImage) getSources*() : java_util.Vector,NEW,ABSTRACT;

    PROCEDURE (self:RenderableImage) getWidth*() : SHORTREAL,NEW,ABSTRACT;

    PROCEDURE (self:RenderableImage) isDynamic*() : BOOLEAN,NEW,ABSTRACT;

    PROCEDURE (self:RenderableImageOp) createDefaultRendering*() : java_awt_image.RenderedImage,NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageOp) createRendering*(p0 : RenderContext) : java_awt_image.RenderedImage,NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageOp) createScaledRendering*(p0 : INTEGER;
                                                              p1 : INTEGER;
                                                              p2 : java_awt.RenderingHints) : java_awt_image.RenderedImage,NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageOp) getHeight*() : SHORTREAL,NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageOp) getMinX*() : SHORTREAL,NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageOp) getMinY*() : SHORTREAL,NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageOp) getParameterBlock*() : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageOp) getProperty*(p0 : java_lang.String) : java_lang.Object,NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageOp) getPropertyNames*() : POINTER TO ARRAY OF java_lang.String,NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageOp) getSources*() : java_util.Vector,NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageOp) getWidth*() : SHORTREAL,NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageOp) isDynamic*() : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageOp) setParameterBlock*(p0 : ParameterBlock) : ParameterBlock,NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageProducer) addConsumer*(p0 : java_awt_image.ImageConsumer),NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageProducer) isConsumer*(p0 : java_awt_image.ImageConsumer) : BOOLEAN,NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageProducer) removeConsumer*(p0 : java_awt_image.ImageConsumer),NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageProducer) requestTopDownLeftRightResend*(p0 : java_awt_image.ImageConsumer),NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageProducer) run*(),NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageProducer) setRenderContext*(p0 : RenderContext),NEW,EXTENSIBLE;

    PROCEDURE (self:RenderableImageProducer) startProduction*(p0 : java_awt_image.ImageConsumer),NEW,EXTENSIBLE;

    PROCEDURE (self:RenderContext) clone*() : java_lang.Object,EXTENSIBLE;

    PROCEDURE (self:RenderContext) concetenateTransform*(p0 : java_awt_geom.AffineTransform),NEW,EXTENSIBLE;

    PROCEDURE (self:RenderContext) getAreaOfInterest*() : java_awt.Shape,NEW,EXTENSIBLE;

    PROCEDURE (self:RenderContext) getRenderingHints*() : java_awt.RenderingHints,NEW,EXTENSIBLE;

    PROCEDURE (self:RenderContext) getTransform*() : java_awt_geom.AffineTransform,NEW,EXTENSIBLE;

    PROCEDURE (self:RenderContext) preConcetenateTransform*(p0 : java_awt_geom.AffineTransform),NEW,EXTENSIBLE;

    PROCEDURE (self:RenderContext) setAreaOfInterest*(p0 : java_awt.Shape),NEW,EXTENSIBLE;

    PROCEDURE (self:RenderContext) setRenderingHints*(p0 : java_awt.RenderingHints),NEW,EXTENSIBLE;

    PROCEDURE (self:RenderContext) setTransform*(p0 : java_awt_geom.AffineTransform),NEW,EXTENSIBLE;

    PROCEDURE (self:RenderedImageFactory) create*(p0 : ParameterBlock;
                                                  p1 : java_awt.RenderingHints) : java_awt_image.RenderedImage,NEW,ABSTRACT;

    END java_awt_image_renderable.