package ch.werner_randelshofer.gui.image;/*Copyright (C) 1999 Werner Randelshoferwerner.randelshofer@mythen.chhttp://www.mythen.ch/w.randelshofer/    Permission to use this release of ANIMFrame is herebygranted without fee provided that the complete copyrightnotice and this permission notice appear in all copiesand in supporting documentation.*/import java.awt.image.ColorModel;import java.awt.image.IndexColorModel;import java.awt.image.DirectColorModel;import java.util.Hashtable;/** * @author	Werner Randelshofer, Staldenmattweg 2, CH-6405 Immensee, Switzerland * @version	1999-02-14	Created. */public abstract class ANIMFrame	{	private int operation_;	private int mask_;	// Currently unused	//	private int w_;	//	private int h_;	//	private int y_;	//	private int x_;	//	private long abstime_;	private long reltime_;	private int interleave_;	private int bits_;	protected final static int		// allgemeine BITs		BadBitsOP_GeneralDelta = 0xffc0,		BIT_LongData = 1,		BIT_XOR = 2,		BIT_OneInfoListForAllPlanes = 4,		BIT_RLC = 8,		BIT_Vertical = 16,		BIT_LongInfoOffsets = 32,		// BITs fŸr Vertical Delta 5 Kompression		BadBitsOP_ByteVertical = 0xfff7;		public void setOperation(int operation) { operation_ = operation; }	public void setMask(int mask) { mask_ = mask; }	public void setWidth(int w) { /*w_ = w;*/ }	public void setHeight(int h) { /*h_ = h;*/ }	public void setX(int x) { /*x_ = x;*/ }	public void setY(int y) { /*y_ = y;*/ }	public void setAbsTime(long abstime) { /*abstime_ = abstime;*/ }	public void setRelTime(long reltime) { reltime_ = reltime; }	public void setInterleave(int interleave) { interleave_ = interleave; }	public void setBits(int bits) { bits_ = bits; }	public int getOperation() { return operation_; }	public int getBits() { return bits_; }//	public int getWidth() { /*return w_;*/ }//	public int getHeight() { /*return h_;*/ }	public long getRelTime() { return reltime_; }	public abstract void decode(Bitmap bitmap, ANIMMovieTrack track);	public abstract ColorModel getColorModel();		public int getTopBound(ANIMMovieTrack track) { return 0; }	public int getBottomBound(ANIMMovieTrack track) { return track.getHeight()-1; }	public int getLeftBound(ANIMMovieTrack track) { return 0; }	public int getRightBound(ANIMMovieTrack track) { return track.getWidth()-1; }	}