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 COPYING file, which can be found  *
009 * at the root of the source code distribution tree,                         *
010 * or in https://www.hdfgroup.org/licenses.                                  *
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.ImageView;
016
017import java.util.HashMap;
018
019import hdf.object.HObject;
020import hdf.view.DataView.DataViewFactory;
021import hdf.view.DataView.DataViewManager;
022import hdf.view.MetaDataView.MetaDataView;
023import hdf.view.PaletteView.PaletteView;
024import hdf.view.TableView.TableView;
025import hdf.view.TreeView.TreeView;
026
027import org.eclipse.swt.widgets.Composite;
028import org.eclipse.swt.widgets.Shell;
029
030/**
031 * This class extends DataViewFactory so that at runtime it can be determined
032 * if a specific DataViewFactory class is an ImageViewFactory and can thus
033 * be used appropriately where an ImageView is needed.
034 *
035 * @author jhenderson
036 * @version 1.0 7/30/3018
037 */
038public abstract class ImageViewFactory extends DataViewFactory {
039
040    @SuppressWarnings("rawtypes")
041    @Override
042    public final TableView getTableView(DataViewManager viewer, HashMap dataPropertiesMap)
043        throws ClassNotFoundException, UnsupportedOperationException
044    {
045        throw new UnsupportedOperationException("ImageViewFactory does not implement getTableView()");
046    }
047
048    @Override
049    public final PaletteView getPaletteView(Shell parent, DataViewManager viewer, ImageView theImageView)
050        throws ClassNotFoundException, UnsupportedOperationException
051    {
052        throw new UnsupportedOperationException("ImageViewFactory does not implement getPaletteView()");
053    }
054
055    @Override
056    public final MetaDataView getMetaDataView(Composite parentObj, DataViewManager viewer, HObject theObj)
057        throws ClassNotFoundException, UnsupportedOperationException
058    {
059        throw new UnsupportedOperationException("ImageViewFactory does not implement getMetaDataView()");
060    }
061
062    @Override
063    public final TreeView getTreeView(Composite parent, DataViewManager viewer)
064        throws ClassNotFoundException, UnsupportedOperationException
065    {
066        throw new UnsupportedOperationException("ImageViewFactory does not implement getTreeView()");
067    }
068}