001    package nl.cwi.sen1.visplugin.barchart;
002    
003    import nl.cwi.sen1.visplugin.VisualizationPluginController;
004    import nl.cwi.sen1.visplugin.VisualizationPluginWindow;
005    import aterm.ATerm;
006    
007    /**
008     * BarChart Plugin Visualisation Controller. Controller for the Bar Chart
009     * Window.
010     * 
011     * @author Srinivasan Tharmarajah
012     * @date 14-03-2007
013     */
014    public class BCVisualizationController extends VisualizationPluginController {
015    
016        /**
017         * Constructor.
018         * 
019         * @author Srinivasan Tharmarajah
020         * @date 14-03-2007
021         */
022        public BCVisualizationController() {
023            super();
024        }
025    
026        /**
027         * Creates a BarChartVisualizationWindow.
028         * 
029         * @author Srinivasan Tharmarajah
030         * @date 14-03-2007
031         */
032        public VisualizationPluginWindow createWindow() {
033            return new BCVisualizationWindow();
034        }
035    
036        /**
037         * Creates a BarChartVisualizationWindow.
038         * 
039         * @return Name of this plugin.
040         * @author Srinivasan Tharmajah
041         * @date 14-03-2007
042         */
043        public String getPluginName() {
044            return "Bar chart";
045        }
046    
047        /**
048         * Returns array holding the types supported by this plugin.
049         * 
050         * @return Array of supported ATerms
051         * @author Srinivasan Tharmarajah
052         * @date 07-3-2007
053         */
054        public ATerm[] getSupportedTypes() {
055            ATerm[] atermList = { makeATerm("relation([int,str])"), makeATerm("relation([str,int])"),
056                            makeATerm("relation([int,int])")};
057            return atermList;
058        }
059    
060        /**
061         * Creates an aterm based on a String.
062         * 
063         * @return ATerms created from String
064         * @author A. Belgraver
065         * @author R. van Remortel
066         * @date 07-3-2007
067         */
068        private ATerm makeATerm(String type) {
069            return m_factory.RTypeFromString(type);
070        }
071    
072    }