package javax.microedition.amms;

import java.io.InputStream;
import java.io.OutputStream;
import javax.microedition.media.Controllable;
import javax.microedition.media.MediaException;

public interface MediaProcessor extends Controllable
{
 public int REALIZED = 200;
 public int STARTED = 400;
 public int STOPPED = 300;
 public int UNKNOWN = -1;
 public int UNREALIZED = 100;

 public void abort();
 
 public void addMediaProcessorListener(MediaProcessorListener);
 
 public void complete() throws MediaException;
 
 public int getProgress();
 
 public int getState();
 
 public void removeMediaProcessorListener(MediaProcessorListener);
 
 public void setInput(InputStream, int) throws MediaException;
 
 public void setInput(Object) throws MediaException;
 
 public void setOutput(OutputStream);
 
 public void start() throws MediaException;
 
 public void stop() throws MediaException;
 
}