ingo@1115: /*
ingo@1115: * Copyright (c) 2010 by Intevation GmbH
ingo@1115: *
ingo@1115: * This program is free software under the LGPL (>=v2.1)
ingo@1115: * Read the file LGPL.txt coming with the software for details
ingo@1115: * or visit http://www.gnu.org/licenses/ if it does not exist.
ingo@1115: */
ingo@1115:
tim@335: package de.intevation.gnv.state;
tim@335:
tim@335: import java.io.Serializable;
sascha@779:
tim@335: import java.util.Collection;
ingo@626: import java.util.List;
tim@335:
tim@335: /**
ingo@796: * This is the interface description of an OutputMode
. The
ingo@796: * methods defined here retrieve some basic information for an output. An output
ingo@796: * can be chart, histogram, statistic, csv, odv and so on.
ingo@796: *
sascha@780: * @author Tim Englich
ingo@796: * @author Ingo Weinzierl
tim@335: */
tim@335: public interface OutputMode extends Serializable {
tim@335:
ingo@796: /**
ingo@796: * Retrieve the name of this output mode.
ingo@796: *
ingo@796: * @return the name of this output mode.
ingo@796: */
tim@335: public String getName();
tim@335:
ingo@796: /**
ingo@796: * Retrieve the description of an output.
ingo@796: *
ingo@796: * @return the description.
ingo@796: */
tim@335: public String getDescription();
tim@335:
ingo@796: /**
ingo@796: * Retrieve the mimetype used for the output.
ingo@796: *
ingo@796: * @return the mimetype.
ingo@796: */
tim@335: public String getMimeType();
tim@335:
ingo@796: /**
ingo@796: * Retrieve a list of optional InputValue objects the user is able to
ingo@796: * adjust.
ingo@796: *
ingo@796: * @return optional input parameters.
ingo@796: */
tim@335: public Collection getInputParameters();
ingo@626:
ingo@796: /**
ingo@796: * Retrieve a list of export modes this output can be exported to.
ingo@796: *
ingo@796: * @return some export modes.
ingo@796: */
ingo@626: public List getExportModes();
tim@335: }
sascha@836: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :