blob: 82d035777336b197caae85075639647487dcfa59 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
package gnu.java.awt.image;
import java.awt.*;
import java.awt.image.*;
import java.util.*;
import java.io.*;
public abstract class ImageDecoder implements ImageProducer
{
Vector consumers;
public ImageDecoder ()
{
consumers = new Vector ();
}
public void addConsumer (ImageConsumer ic)
{
consumers.addElement (ic);
}
public boolean isConsumer (ImageConsumer ic)
{
return consumers.contains (ic);
}
public void removeConsumer (ImageConsumer ic)
{
consumers.removeElement (ic);
}
public void startProduction (ImageConsumer ic)
{
addConsumer (ic);
Vector list = (Vector) consumers.clone ();
try
{
produce (list);
}
catch (IOException e)
{
for (int i = 0; i < list.size (); i++)
{
ImageConsumer ic2 = (ImageConsumer) list.elementAt (i);
ic2.imageComplete (ImageConsumer.IMAGEERROR);
}
}
}
public void requestTopDownLeftRightResend (ImageConsumer ic)
{
}
public abstract void produce (Vector v) throws IOException;
}
|