    001/*****************************************************************************
    002 * Copyright by The HDF Group.                                               *
    003 * Copyright by the Board of Trustees of the University of Illinois.         *
    004 * All rights reserved.                                                      *
    005 *                                                                           *
    006 * This file is part of the HDF Java Products distribution.                  *
    007 * The full copyright notice, including terms governing use, modification,   *
    008 * and redistribution, is contained in the files COPYING and Copyright.html. *
    009 * COPYING can be found at the root of the source code distribution tree.    *
    010 * Or, see https://support.hdfgroup.org/products/licenses.html               *
    011 * If you do not have access to either file, you may request a copy from     *
    012 * help@hdfgroup.org.                                                        *
    013 ****************************************************************************/
    014
    015package hdf.view;
    016
    017import java.util.HashMap;
    018
    019import org.eclipse.swt.widgets.Composite;
    020import org.eclipse.swt.widgets.Shell;
    021
    022import hdf.object.HObject;
    023import hdf.view.ImageView.ImageView;
    024import hdf.view.MetaDataView.MetaDataView;
    025import hdf.view.PaletteView.PaletteView;
    026import hdf.view.TableView.TableView;
    027import hdf.view.TreeView.TreeView;
    028
    029public abstract class DataViewFactory {
    030    /* Get an instance of TableView given the appropriate constructor parameters */
    031    @SuppressWarnings("rawtypes")
    032    public abstract TableView    getTableView(ViewManager viewer, HashMap dataPropertiesMap) throws ClassNotFoundException;
    033
    034    /* Get an instance of ImageView given the appropriate constructor parameters */
    035    @SuppressWarnings("rawtypes")
    036    public abstract ImageView    getImageView(ViewManager viewer, HashMap dataPropertiesMap) throws ClassNotFoundException;
    037
    038    /*
    039     * Get an instance of PaletteView given the appropriate constructor parameters
    040     */
    041    public abstract PaletteView  getPaletteView(Shell parent, ViewManager viewer, ImageView theImageView) throws ClassNotFoundException;
    042
    043    /*
    044     * Get an instance of MetaDataView given the appropriate constructor parameters
    045     */
    046    public abstract MetaDataView getMetaDataView(Composite parentObj, ViewManager viewer, HObject theObj) throws ClassNotFoundException;
    047
    048    /*
    049     * Get an instance of TreeView given the appropriate constructor parameters
    050     */
    051    public abstract TreeView     getTreeView(Composite parent, ViewManager viewer) throws ClassNotFoundException;
    052}