package jas2.job;
import java.util.Observer;
import java.io.*;
import jas2.util.tree.TreeItem;
import jas2.plugin.RunListener;
import jas2.jds.module.ModuleException;
/**
* Basic job is implemented by AbstractJob, and extended by jas2.swingstudio.Job
*/
public interface BasicJob
{
boolean isChanged();
void close();
//TreeItem[] listItems(); // only needed by remote jobs.
Object getItem(TreeItem item);
boolean isRunnable();
boolean isRunning();
boolean isAtEndOfData();
boolean isAtStartOfData();
boolean isPersistent();
int eventsAnalyzed();
int eventsTotal();
String getName();
// Note opening jobs is done by the JobWizard in different ways for local and remote jobs
void closeDataset(TreeItem item);
void setEventSource(TreeItem item);
Class getEventDataClass(TreeItem item);
void receiveMessage(Object message);
// command processor methods:
void go(int i);
/*
* go(0) is equivalent to run()
* go(1) is equivalent to step()
*/
void kill();
void stop();
void rewind();
void loadObject(String name) throws LoaderException;
void unloadAll();
void setPersistent(boolean persist);
hepjas.analysis.EventData getEvent();
// This mask indicates that an item should become the "current item".
final static int SHOWNOW = 1<<19;
// These masks are set in tree items describing job
final static int DATASET = 1<<16;
final static int EVENTSOURCE = 1<<17;
final static int CURRENTEVENTSOURCE = 1<<18;
// This flag indicates the node ahs been changed
final static int RESET = 1<<20;
}
Ads help maintain this website.