com.pearsoneduc.ip.gui
Class OperationViewer

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--java.awt.Window
                    |
                    +--java.awt.Frame
                          |
                          +--javax.swing.JFrame
                                |
                                +--com.pearsoneduc.ip.gui.OperationViewer

public abstract class OperationViewer
extends javax.swing.JFrame

Provides a GUI framework for simple, non-interactive image processing operations in which one output image is generated from a single input image.

The input image is read from a file, checked and processed to produce the output image. A frame is then created, containing a tabbed pane which displays the input and output images.

This is an abstract class, and must be extended to be used. The input and output images can be accessed within derived classes as inputImage and outputImage, respectively. Derived classes must supply definitions for the method imageOK, which checks whether the input image is suitable for processing, and the method processImage, which carries out the processing.

Version:
1.0 [1999/06/21]
Author:
Nick Efford
See Also:
ImageView, BufferedImage, Serialized Form

Inner classes inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Field Summary
protected  java.awt.image.BufferedImage inputImage
           
protected  java.awt.image.BufferedImage outputImage
           
 
Fields inherited from class javax.swing.JFrame
accessibleContext, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Constructor Summary
OperationViewer(java.lang.String imageFile)
          Constructs an OperationViewer using the image in the named file.
 
Method Summary
abstract  boolean imageOK()
          Checks whether the input image is suitable for processing.
abstract  void processImage()
          Processes the input image and generates the output image.
 void readImage(java.lang.String filename)
          Reads an image from a named file.
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isRootPaneCheckingEnabled, paramString, processKeyEvent, processWindowEvent, setContentPane, setDefaultCloseOperation, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.awt.Frame
addNotify, finalize, getCursorType, getFrames, getIconImage, getMenuBar, getState, getTitle, isResizable, remove, removeNotify, setCursor, setIconImage, setMenuBar, setResizable, setState, setTitle
 
Methods inherited from class java.awt.Window
addWindowListener, applyResourceBundle, applyResourceBundle, dispose, getFocusOwner, getInputContext, getLocale, getOwnedWindows, getOwner, getToolkit, getWarningString, isShowing, pack, postEvent, processEvent, removeWindowListener, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, setFont, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addPropertyChangeListener, addPropertyChangeListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getInputMethodRequests, getLocation, getLocation, getLocationOnScreen, getName, getParent, getPeer, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isDisplayable, isDoubleBuffered, isEnabled, isFocusTraversable, isLightweight, isOpaque, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processInputMethodEvent, processMouseEvent, processMouseMotionEvent, removeComponentListener, removeFocusListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setForeground, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, size, toString, transferFocus
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

inputImage

protected java.awt.image.BufferedImage inputImage

outputImage

protected java.awt.image.BufferedImage outputImage
Constructor Detail

OperationViewer

public OperationViewer(java.lang.String imageFile)
                throws java.io.IOException,
                       ImageDecoderException,
                       OperationException
Constructs an OperationViewer using the image in the named file.
Parameters:
imageFile - name of file containing the input image
Throws:
java.io.IOException - if the file cannot be accessed or data cannot not be read from it.
ImageDecoderException - if there is a problem with the format of the input data.
OperationException - if the image is unsuitable for processing.
Method Detail

readImage

public void readImage(java.lang.String filename)
               throws java.io.IOException,
                      ImageDecoderException
Reads an image from a named file.
Parameters:
filename - name of the image file
Throws:
java.io.IOException - if there was a problem accessing or reading from the file.
ImageDecoderException - if there was a problem with the format of the input data.

imageOK

public abstract boolean imageOK()
Checks whether the input image is suitable for processing.
Returns:
true if the input image is suitable, false otherwise.

processImage

public abstract void processImage()
Processes the input image and generates the output image.