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.ImageView; 016 017import java.awt.Image; 018import java.awt.Rectangle; 019 020import hdf.view.DataView.DataView; 021 022/** 023 * The image view interface for displaying image object 024 * 025 * @author Peter X. Cao 026 * @version 2.4 9/6/2007 027 */ 028public abstract interface ImageView extends DataView { 029 /** 030 * Returns the selected area of the image 031 * 032 * @return the rectangle of the selected image area. 033 */ 034 public abstract Rectangle getSelectedArea(); 035 036 /** @return true if the image is a truecolor image. */ 037 public abstract boolean isTrueColor(); 038 039 /** @return true if the image interlace is plane interlace. */ 040 public abstract boolean isPlaneInterlace(); 041 042 /** @return array of selected data */ 043 public abstract Object getSelectedData(); 044 045 /** @return the image displayed in this imageView */ 046 public abstract Image getImage(); 047 048 /** Sets the image 049 * 050 * @param img the image to view 051 */ 052 public abstract void setImage(Image img); 053 054 /** @return the palette of the image */ 055 public abstract byte[][] getPalette(); 056 057 /** Sets the image palette 058 * 059 * @param palette the palette for the image to view 060 */ 061 public abstract void setPalette(byte[][] palette); 062 063 /** @return the byte array of the image data */ 064 public abstract byte[] getImageByteData(); 065 066}