mosaic.sim.neuron.visualisation
Class PLNeuronInternalView

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--javax.swing.JComponent
                    |
                    +--javax.swing.JPanel
                          |
                          +--mosaic.sim.neuron.visualisation.ScrollingView
                                |
                                +--mosaic.sim.neuron.visualisation.PLNeuronInternalView
All Implemented Interfaces:
javax.accessibility.Accessible, java.util.EventListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.beans.PropertyChangeListener, java.io.Serializable, mosaic.sim.kernel.variable.VariableChangeListener

public class PLNeuronInternalView
extends ScrollingView
implements mosaic.sim.kernel.variable.VariableChangeListener

This class implements a view for the potential and threshold functions of a neuron, thus its internal states.

See Also:
Serialized Form

Inner classes inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Inner classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent, javax.swing.JComponent.ActionStandin, javax.swing.JComponent.IntVector, javax.swing.JComponent.KeyboardState
 
Inner classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Inner classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.AWTTreeLock
 
Field Summary
protected  boolean displayPotential
          If set to true, the view displays the neuron potential.
protected  boolean displayThreshold
          If set to true, the view displays the neuron threshold.
protected  PLPotential potential
          A reference to the neuron potential object.
protected  java.util.LinkedList potentialFunction
          The currently used potential function.
protected  PLThreshold threshold
          A reference to the neuron threshold object.
protected  java.util.LinkedList thresholdFunction
          The currently used threshold function.
 
Fields inherited from class mosaic.sim.neuron.visualisation.ScrollingView
currentTimePosition, synchronizer, title, tmax, tmin, ymax, ymin
 
Fields inherited from class javax.swing.JPanel
defaultLayout, uiClassID
 
Fields inherited from class javax.swing.JComponent
_bounds, accessibleContext, actionMap, ACTIONMAP_CREATED, alignmentX, alignmentY, ANCESTOR_INPUTMAP_CREATED, ANCESTOR_USING_BUFFER, ancestorInputMap, ancestorNotifier, autoscroller, border, changeSupport, clientProperties, CREATED_DOUBLE_BUFFER, flags, FOCUS_INPUTMAP_CREATED, focusInputMap, HAS_FOCUS, htmlKey, htmlView, inputVerifier, IS_DOUBLE_BUFFERED, IS_OPAQUE, IS_PAINTING_TILE, IS_PRINTING, IS_PRINTING_ALL, KEY_EVENTS_ENABLED, KEYBOARD_BINDINGS_KEY, listenerList, maximumSize, minimumSize, NEXT_FOCUS, paintImmediatelyClip, paintingChild, preferredSize, readObjectCallbacks, REQUEST_FOCUS_DISABLED, tmpRect, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, verifyInputWhenFocusTarget, vetoableChangeSupport, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW, WHEN_IN_FOCUSED_WINDOW_BINDINGS, WIF_INPUTMAP_CREATED, windowInputMap
 
Fields inherited from class java.awt.Container
component, containerListener, containerSerializedDataVersion, dbg, dispatcher, layoutMgr, listeningBoundsChildren, listeningChildren, maxSize, ncomponents, printing, printingThreads, serialVersionUID
 
Fields inherited from class java.awt.Component
actionListenerK, adjustmentListenerK, appContext, background, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, componentListener, componentListenerK, componentOrientation, componentSerializedDataVersion, containerListenerK, cursor, dropTarget, enabled, eventMask, focusListener, focusListenerK, font, foreground, graphicsConfig, hasFocus, height, hierarchyBoundsListener, hierarchyBoundsListenerK, hierarchyListener, hierarchyListenerK, incRate, inputMethodListener, inputMethodListenerK, isInc, isPacked, itemListenerK, keyListener, keyListenerK, LEFT_ALIGNMENT, locale, LOCK, metrics, minSize, mouseListener, mouseListenerK, mouseMotionListener, mouseMotionListenerK, name, nameExplicitlySet, newEventsOnly, ownedWindowK, parent, peer, peerFont, popups, prefSize, privateKey, RIGHT_ALIGNMENT, textListenerK, TOP_ALIGNMENT, valid, visible, width, windowClosingException, windowListenerK, x, y
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
PLNeuronInternalView(java.lang.String title, boolean displayPotential, boolean displayThreshold)
          Creates a PLNeuronInternalView and initializes it.
 
Method Summary
 void addListenerVariable(mosaic.sim.kernel.variable.Variable v)
          Implementation of VariableChangeListener: This implementation does nothing.
protected  void drawPLFunction(java.util.LinkedList plFunction, java.awt.Graphics g, java.awt.Color pastColor, java.awt.Color futureColor)
          This method draws a piecewise linear function which has to be given as a linear list containing points in the world (not graphics) space as Point2D.Double objects.
 int getPriority()
          Implementation of VariableChangeListener: This implementation always returns 0.
 void paintComponent(java.awt.Graphics g)
          Overrides the default and draws the piecewise linear functions for the neuron threshold and potential.
 void propertyChange(java.beans.PropertyChangeEvent e)
          Implementation of VariableChangeListener: This implementation does nothing.
 void removeListenerVariable(mosaic.sim.kernel.variable.Variable v)
          Implementation of VariableChangeListener: This implementation does nothing.
 void variableChange(mosaic.sim.kernel.variable.VariableChangeEvent e)
          Implementation of VariableChangeListener: This method is called by the simulation framework whenever a variable that this object is listening on changes.
 
Methods inherited from class mosaic.sim.neuron.visualisation.ScrollingView
getCurrentTimePosition, getSynchronizer, getTMax, getTMin, getYMax, getYMin, scrollToSimulationTime, setCurrentTimePosition, setSynchronizer, setTMax, setTMin, setYMax, setYMin, updateView, worldToGraphics
 
Methods inherited from class javax.swing.JPanel
, getAccessibleContext, getUIClassID, paramString, updateUI, writeObject
 
Methods inherited from class javax.swing.JComponent
_paintImmediately, addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, adjustPaintFlags, alwaysOnTop, checkIfChildObscuredBySibling, clearFocusOwners, componentInputMapChanged, computeVisibleRect, computeVisibleRect, compWriteObjectNotify, contains, createToolTip, disable, enable, enableSerialization, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getActionMap, getAlignmentX, getAlignmentY, getAutoscrolls, getBorder, getBounds, getClientProperties, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getCreatedDoubleBuffer, getDebugGraphicsOptions, getFlag, getGraphics, getHeight, getInputMap, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getVerifyInputWhenFocusTarget, getVisibleRect, getWidth, getX, getY, grabFocus, hasFocus, hide, isDoubleBuffered, isFocusCycleRoot, isFocusTraversable, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, paintWithBuffer, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processFocusEvent, processKeyBinding, processKeyBindings, processKeyBindingsForAllComponents, processKeyEvent, processMouseMotionEvent, putClientProperty, readObject, rectangleIsObscured, rectangleIsObscuredBySibling, registerKeyboardAction, registerKeyboardAction, registerWithKeyboardManager, registerWithKeyboardManager, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setCreatedDoubleBuffer, setDebugGraphicsOptions, setDoubleBuffered, setEnabled, setFlag, setFont, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPaintingChild, setPreferredSize, setRequestFocusEnabled, setToolTipText, setUI, setVerifyInputWhenFocusTarget, setVisible, shouldDebugGraphics, superProcessMouseMotionEvent, unregisterKeyboardAction, unregisterWithKeyboardManager, unregisterWithKeyboardManager, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, adjustListeningChildren, applyOrientation, checkGD, countComponents, createChildHierarchyEvents, createHierarchyEvents, deliverEvent, dispatchEventImpl, dispatchEventToSelf, doLayout, eventEnabled, findComponentAt, findComponentAt, findComponentAt, getAccessibleAt, getAccessibleChild, getAccessibleChildrenCount, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents_NoClientCode, getComponents, getLayout, getMouseEventTarget, getWindow, initIDs, insets, invalidate, invalidateTree, isAncestorOf, layout, lightweightPaint, lightweightPrint, list, list, locate, minimumSize, nextFocus, numListening, paintComponents, paintHeavyweightComponents, postProcessKeyEvent, postsOldMouseEvents, preferredSize, preProcessKeyEvent, printComponents, printHeavyweightComponents, processContainerEvent, processEvent, proxyEnableEvents, proxyRequestFocus, remove, remove, removeAll, removeContainerListener, setFocusOwner, setLayout, transferFocus, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, areInputMethodsEnabled, bounds, checkImage, checkImage, checkWindowClosingException, coalesceEvents, constructComponentName, contains, createImage, createImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, getAccessibleIndexInParent, getAccessibleStateSet, getBackground, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont_NoClientCode, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getInputContext, getInputMethodRequests, getLocale, getLocation, getLocationOnScreen_NoTreeLock, getLocationOnScreen, getName, getNativeContainer, getParent_NoClientCode, getParent, getPeer, getSize, getToolkit, getToolkitImpl, getTreeLock, getWindowForObject, gotFocus, handleEvent, imageUpdate, inside, isDisplayable, isEnabled, isEnabledImpl, isLightweight, isRecursivelyVisible, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, repaint, repaint, repaint, resetGC, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, wait, wait, wait
 

Field Detail

displayPotential

protected boolean displayPotential
If set to true, the view displays the neuron potential.

displayThreshold

protected boolean displayThreshold
If set to true, the view displays the neuron threshold.

potential

protected PLPotential potential
A reference to the neuron potential object.

threshold

protected PLThreshold threshold
A reference to the neuron threshold object.

potentialFunction

protected java.util.LinkedList potentialFunction
The currently used potential function.

thresholdFunction

protected java.util.LinkedList thresholdFunction
The currently used threshold function.
Constructor Detail

PLNeuronInternalView

public PLNeuronInternalView(java.lang.String title,
                            boolean displayPotential,
                            boolean displayThreshold)
Creates a PLNeuronInternalView and initializes it.
Parameters:
title - The title that should be set for the view.
displayPotential - The view only displays a neuron potential if this is set to true
displayThreshold - The view only displays a neuron threshold if this is set to true
See Also:
displayPotential, displayThreshold
Method Detail

drawPLFunction

protected void drawPLFunction(java.util.LinkedList plFunction,
                              java.awt.Graphics g,
                              java.awt.Color pastColor,
                              java.awt.Color futureColor)
This method draws a piecewise linear function which has to be given as a linear list containing points in the world (not graphics) space as Point2D.Double objects. This method is synchronized so that scrollToSimulationTime can not be called in between, making previous calls to worldToGraphics invalid (because of the changed time frame, the previously computed values would have to be computed again).
Parameters:
plFunction - The piecewise linear function to draw.
g - The graphics context to draw into.
pastColor - The color to be used for segments that are in the past.
futureColor - The color to be used for segments that are in the future.

paintComponent

public void paintComponent(java.awt.Graphics g)
Overrides the default and draws the piecewise linear functions for the neuron threshold and potential.
Overrides:
paintComponent in class ScrollingView

variableChange

public void variableChange(mosaic.sim.kernel.variable.VariableChangeEvent e)
Implementation of VariableChangeListener: This method is called by the simulation framework whenever a variable that this object is listening on changes. It is used for receiving the change events when the potential or threshold objects change.
Specified by:
variableChange in interface mosaic.sim.kernel.variable.VariableChangeListener

propertyChange

public void propertyChange(java.beans.PropertyChangeEvent e)
Implementation of VariableChangeListener: This implementation does nothing.
Specified by:
propertyChange in interface mosaic.sim.kernel.variable.VariableChangeListener

addListenerVariable

public void addListenerVariable(mosaic.sim.kernel.variable.Variable v)
Implementation of VariableChangeListener: This implementation does nothing.
Specified by:
addListenerVariable in interface mosaic.sim.kernel.variable.VariableChangeListener

removeListenerVariable

public void removeListenerVariable(mosaic.sim.kernel.variable.Variable v)
Implementation of VariableChangeListener: This implementation does nothing.
Specified by:
removeListenerVariable in interface mosaic.sim.kernel.variable.VariableChangeListener

getPriority

public int getPriority()
Implementation of VariableChangeListener: This implementation always returns 0.
Specified by:
getPriority in interface mosaic.sim.kernel.variable.VariableChangeListener