clickDetector
Class ClickSpectrogramPlugin.BTDisplayPanel

java.lang.Object
  extended by Layout.DisplayPanel
      extended by clickDetector.ClickSpectrogramPlugin.BTDisplayPanel
All Implemented Interfaces:
PamObserver
Enclosing class:
ClickSpectrogramPlugin

 class ClickSpectrogramPlugin.BTDisplayPanel
extends DisplayPanel
implements PamObserver

There may be several actual DisplayPanels if lots of different displays all want one. The outer class must keep a list of them all.

Author:
Doug Gillespie

Field Summary
(package private)  int lastClear
           
(package private)  float sampleRate
           
(package private)  PamDataBlock sourceDataBlock
           
 
Fields inherited from class Layout.DisplayPanel
displayPanelContainer, displayPanelProvider, plotBackground
 
Constructor Summary
ClickSpectrogramPlugin.BTDisplayPanel(DisplayPanelProvider displayPanelProvider, DisplayPanelContainer displayPanelContainer)
           
 
Method Summary
 void containerNotification(DisplayPanelContainer displayContainer, int noteType)
          gets called every time the display scale changes can start by clearing space in front of the cursor position on the image
 void destroyPanel()
          The displayPanelContainer should call destroyPanel when the panel is no longer required so that the displayPanel can unsubscribe to any data it was observing.
 java.lang.String getObserverName()
           
 PamObserver getObserverObject()
           
 long getRequiredDataHistory(PamObservable o, java.lang.Object arg)
           
 void masterClockUpdate(long milliSeconds, long sampleNumber)
           
 void noteNewSettings()
           
 void removeObservable(PamObservable o)
          called when an Observable (PamDataBlock) is removed from the system
 void setSampleRate(float sampleRate, boolean notify)
          New sample rate
 void update(PamObservable o, PamDataUnit arg)
          PamObserver implementation to draw clicks on the display whenever they are created by the click detector and added to the PamDataBlock
 
Methods inherited from class Layout.DisplayPanel
clearImage, clearImage, clearImage, createPopupMenu, getDisplayImage, getDisplayPanelContainer, getDisplayPanelProvider, getEastAxis, getInnerHeight, getInnerPanel, getInnerWidth, getNorthAxis, getPanel, getPanelBorder, getSouthAxis, getWestAxis, repaint, repaint, setPanelBorder
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

sourceDataBlock

PamDataBlock sourceDataBlock

sampleRate

float sampleRate

lastClear

int lastClear
Constructor Detail

ClickSpectrogramPlugin.BTDisplayPanel

public ClickSpectrogramPlugin.BTDisplayPanel(DisplayPanelProvider displayPanelProvider,
                                             DisplayPanelContainer displayPanelContainer)
Method Detail

getObserverObject

public PamObserver getObserverObject()
Specified by:
getObserverObject in interface PamObserver
Returns:
the actual observer. In most cases concrete classes will just return 'this' in response. The exception is the Threaded observer, which will return the single thread observer.

getObserverName

public java.lang.String getObserverName()
Specified by:
getObserverName in interface PamObserver

getRequiredDataHistory

public long getRequiredDataHistory(PamObservable o,
                                   java.lang.Object arg)
Specified by:
getRequiredDataHistory in interface PamObserver
Parameters:
o - PamObservable class requiring the data
arg - optional argument from PamObservable
Returns:
time in milliseconds requried by data held in PamObservable

noteNewSettings

public void noteNewSettings()
Specified by:
noteNewSettings in interface PamObserver

removeObservable

public void removeObservable(PamObservable o)
Description copied from interface: PamObserver
called when an Observable (PamDataBlock) is removed from the system

Specified by:
removeObservable in interface PamObserver

setSampleRate

public void setSampleRate(float sampleRate,
                          boolean notify)
Description copied from interface: PamObserver
New sample rate

Specified by:
setSampleRate in interface PamObserver
notify - Notify other PamObservers and PamObservables in the chain.

masterClockUpdate

public void masterClockUpdate(long milliSeconds,
                              long sampleNumber)
Specified by:
masterClockUpdate in interface PamObserver

update

public void update(PamObservable o,
                   PamDataUnit arg)
PamObserver implementation to draw clicks on the display whenever they are created by the click detector and added to the PamDataBlock

Specified by:
update in interface PamObserver
Parameters:
o - Reference to the Observable (a PamDataBlock)
arg - Reference to the new PamDataUnit

destroyPanel

public void destroyPanel()
Description copied from class: DisplayPanel
The displayPanelContainer should call destroyPanel when the panel is no longer required so that the displayPanel can unsubscribe to any data it was observing.

Specified by:
destroyPanel in class DisplayPanel

containerNotification

public void containerNotification(DisplayPanelContainer displayContainer,
                                  int noteType)
gets called every time the display scale changes can start by clearing space in front of the cursor position on the image

Specified by:
containerNotification in class DisplayPanel