Pipeline Module Interface (IPipelineModule)

The IPipelineModule interface is to be implemented by all classes will be used as a module in a pipeline.


package comp314.interfaces;

/**
 * 
 * @author Daniel Buchanan
 *
 */
public interface IPipelineModule {
    /**
     * Sets the module's input data. 
     * @param data Input data
     */
    void setData(IData data);
    
    /** 
     * Runs the module and returns its result. 
     * @return result
     */
    IData run();
    
    /**
     * Set input data and run module.
     * 
     * @param data Input data
     * @return Output data
     */
    IData run(IData data);
    
    /**
     * Sets the status reporter. 
     * @param reporter Status Reporter
     */
    void setReporter(IReporter reporter);
    
    /**
     * Gets the input data.
     * @return the input data
     */
    IData getData();
    
    /**
     * Gets the result, after you have called run().
     * @return the result
     */
    IData getResult();
    
    /**
     * Sets module options. 
     * @param options Module Options
     */
    void setOptions(IData options);
}



Subsections

David Goodwin 2008-10-21