Package Name: java.awt.image
with java.lang; use java.lang;
with java.lang.String; use java.lang.String;
with java.awt.Color; use java.awt.Color;
with java.awt.Graphics; use java.awt.Graphics;
with java.util.Hashtable; use java.util.Hashtable;
package java.awt.Image is
type Image_Obj is new Object with null record;
type Image_Ptr is access all Image_Obj'Class;
------- image.ColorModel --------
package ColorModel is
type ColorModel_Obj is abstract new Object with null record;
type ColorModel_Ptr is access all ColorModel_Obj'Class;
function getRGBdefault return ColorModel_Ptr;
procedure init_ColorModel(Obj : access ColorModel_Obj'Class;
bits : Integer);
function getPixelSize(Obj : access ColorModel_Obj) return Integer;
function getRed(Obj : access ColorModel_Obj;
pixel : Integer)
return Integer is abstract;
function getGreen(Obj : access ColorModel_Obj;
pixel : Integer)
return Integer is abstract;
function getBlue(Obj : access ColorModel_Obj;
pixel : Integer)
return Integer is abstract;
function getAlpha(Obj : access ColorModel_Obj;
pixel : Integer)
return Integer is abstract;
function getRGB(Obj : access ColorModel_Obj;
pixel : Integer)
return Integer is abstract;
pragma Import(Java, getRGBdefault);
pragma Import(Java, getAlpha);
pragma Import(Java, getGreen);
pragma Import(Java, getRed);
pragma Import(Java, getRGB);
pragma Import(Java, getBlue);
pragma Import(Java, getPixelSize);
pragma Import(Java_Constructor, init_ColorModel);
end ColorModel;
use ColorModel;
---------- image.ImageConsumer ----------
package ImageConsumer is
-- NOTE: ImageConsumer is an "interface" type
type ImageConsumer_Obj is new Object with null record;
pragma Convention(Java_Interface, ImageConsumer_Obj);
type ImageConsumer_Ptr is access all ImageConsumer_Obj'Class;
RANDOMPIXELORDER : constant Integer;
pragma Import(Java, RANDOMPIXELORDER);
TOPDOWNLEFTRIGHT : constant Integer;
pragma Import(Java, TOPDOWNLEFTRIGHT);
COMPLETESCANLINES : constant Integer;
pragma Import(Java, COMPLETESCANLINES);
SINGLEPASS : constant Integer;
pragma Import(Java, SINGLEPASS);
SINGLEFRAME : constant Integer;
pragma Import(Java, SINGLEFRAME);
IMAGEERROR : constant Integer;
pragma Import(Java, IMAGEERROR);
SINGLEFRAMEDONE : constant Integer;
pragma Import(Java, SINGLEFRAMEDONE);
STATICIMAGEDONE : constant Integer;
pragma Import(Java, STATICIMAGEDONE);
IMAGEABORTED : constant Integer;
pragma Import(Java, IMAGEABORTED);
procedure setDimensions(Obj : access ImageConsumer_Obj;
width : Integer;
height : Integer);
procedure setProperties(Obj : access ImageConsumer_Obj;
props : Hashtable_Ptr);
procedure setColorModel(Obj : access ImageConsumer_Obj;
model : ColorModel_Ptr);
procedure setHints(Obj : access ImageConsumer_Obj;
hintflags : Integer);
type Pixel_Byte is mod 2**8;
type Pixel_Byte_Array is array(Positive range <>) of Pixel_Byte;
procedure setPixels(Obj : access ImageConsumer_Obj;
x : Integer;
y : Integer;
w : Integer;
h : Integer;
model : ColorModel_Ptr;
pixels : Pixel_Byte_Array;
off : Integer;
scansize : Integer);
type Pixel_Integer is mod 2**32;
type Pixel_Integer_Array is
array(Positive range <>) of Pixel_Integer;
procedure setPixels(Obj : access ImageConsumer_Obj;
x : Integer;
y : Integer;
w : Integer;
h : Integer;
model : ColorModel_Ptr;
pixels : Pixel_Integer_Array;
off : Integer;
scansize : Integer);
procedure imageComplete(Obj : access ImageConsumer_Obj;
status : Integer);
pragma Import(Java, setColorModel);
pragma Import(Java, setHints);
pragma Import(Java, setPixels);
pragma Import(Java, setDimensions);
pragma Import(Java, setProperties);
pragma Import(Java, imageComplete);
end ImageConsumer;
use ImageConsumer;
------- image.ImageProducer ---------
package ImageProducer is
-- NOTE: ImageProducer is an "interface" type
type ImageProducer_Obj is new Object with null record;
pragma Convention(Java_Interface, ImageProducer_Obj);
type ImageProducer_Ptr is access all ImageProducer_Obj'Class;
procedure addConsumer(Obj : access ImageProducer_Obj;
ic : ImageConsumer_Ptr);
function isConsumer(Obj : access ImageProducer_Obj;
ic : ImageConsumer_Ptr)
return Boolean;
procedure removeConsumer(Obj : access ImageProducer_Obj;
ic : ImageConsumer_Ptr);
procedure startProduction(Obj : access ImageProducer_Obj;
ic : ImageConsumer_Ptr);
procedure requestTopDownLeftRightResend(Obj : access ImageProducer_Obj;
ic : ImageConsumer_Ptr);
pragma Import(Java, isConsumer);
pragma Import(Java, addConsumer);
pragma Import(Java, startProduction);
pragma Import(Java, removeConsumer);
pragma Import(Java, requestTopDownLeftRightResend);
end ImageProducer;
use ImageProducer;
------- image.ImageObserver ---------
package ImageObserver is
-- NOTE: ImageObserver is an "interface" type
type ImageObserver_Obj is new Object with null record;
pragma Convention(Java_Interface, ImageObserver_Obj);
type ImageObserver_Ptr is access all ImageObserver_Obj'Class;
WIDTH : constant Integer;
pragma Import(Java, WIDTH);
HEIGHT : constant Integer;
pragma Import(Java, HEIGHT);
PROPERTIES : constant Integer;
pragma Import(Java, PROPERTIES);
SOMEBITS : constant Integer;
pragma Import(Java, SOMEBITS);
FRAMEBITS : constant Integer;
pragma Import(Java, FRAMEBITS);
ALLBITS : constant Integer;
pragma Import(Java, ALLBITS);
ERROR : constant Integer;
pragma Import(Java, ERROR);
ABORT_op : constant Integer;
pragma Import(Java, ABORT_op, "ABORT");
function imageUpdate(Obj : access ImageObserver_Obj;
img : Image_Ptr;
infoflags : Integer;
x : Integer;
y : Integer;
width : Integer;
height : Integer)
return Boolean;
pragma Import(Java, imageUpdate);
end ImageObserver;
use ImageObserver;
------- Image operations ----------------
UndefinedProperty : constant Object_Ptr;
pragma Import(Java, UndefinedProperty);
function getWidth(Obj : access Image_Obj;
observer : ImageObserver_Ptr)
return Integer;
function getHeight(Obj : access Image_Obj;
observer : ImageObserver_Ptr)
return Integer;
function getSource(Obj : access Image_Obj) return ImageProducer_Ptr;
function getGraphics(Obj : access Image_Obj) return Graphics_Ptr;
function getProperty(Obj : access Image_Obj;
name : String_Ptr;
observer : ImageObserver_Ptr)
return Object_Ptr;
procedure flush(Obj : access Image_Obj);
procedure init_Image(Obj : access Image_Obj'Class);
pragma Import(Java, getWidth);
pragma Import(Java, getHeight);
pragma Import(Java, getSource);
pragma Import(Java, getGraphics);
pragma Import(Java, getProperty);
pragma Import(Java, flush);
pragma Import(Java_Constructor, init_Image);
----- operations to draw an image on a graphics object ----
----- (these are actually virtual methods of Graphics_Obj) -------
function drawImage(Obj : Graphics_Ptr;
img : Image_Ptr;
x : Integer;
y : Integer;
observer : ImageObserver_Ptr)
return Boolean;
function drawImage(Obj : Graphics_Ptr;
img : Image_Ptr;
x : Integer;
y : Integer;
width : Integer;
height : Integer;
observer : ImageObserver_Ptr)
return Boolean;
function drawImage(Obj : Graphics_Ptr;
img : Image_Ptr;
x : Integer;
y : Integer;
bgcolor : Color_Ptr;
observer : ImageObserver_Ptr)
return Boolean;
function drawImage(Obj : Graphics_Ptr;
img : Image_Ptr;
x : Integer;
y : Integer;
width : Integer;
height : Integer;
bgcolor : Color_Ptr;
observer : ImageObserver_Ptr)
return Boolean;
pragma Import(Java, drawImage, "java/awt/Graphics.drawImage");
end java.awt.Image;