beakedWhaleProtocol
Class BeakedControl

java.lang.Object
  extended by PamController.PamControlledUnit
      extended by beakedWhaleProtocol.BeakedControl
All Implemented Interfaces:
PamSettings

public class BeakedControl
extends PamControlledUnit
implements PamSettings


Nested Class Summary
(package private)  class BeakedControl.SettingsAction
           
(package private)  class BeakedControl.VideoRangeMonitor
           
 
Field Summary
protected  BeakedParameters beakedParameters
           
protected  BeakedProcess beakedProcess
           
protected  BeakedSidePanel beakedSidePanel
           
protected  BeakedExperimentData currentExperiment
           
private  double DTG
          ETA and cross track error, set from pocess.
private  double etaSeconds
          ETA and cross track error, set from pocess.
protected  PamDataBlock<GpsDataUnit> gpsDataBlock
           
protected  BeakedLocationData lastLocationData
           
private  BeakedDataUnit lastLocationDataUnit
           
private  java.util.Random random
           
private  BeakedControl.VideoRangeMonitor videoRangeMonitor
           
private  VRDataBlock vrDataBlock
           
private  double XTE
          ETA and cross track error, set from pocess.
 
Fields inherited from class PamController.PamControlledUnit
isViewer
 
Constructor Summary
BeakedControl(java.lang.String unitName)
           
 
Method Summary
protected  void autoEndExperiment()
           
 javax.swing.JMenuItem createDetectionMenu(java.awt.Frame parentFrame)
          Create a JMenu object containing MenuItems associated with PamProcesses
protected  void endExperiment()
           
private  void findGpsData()
           
protected  void forceStart()
           
private  double generateDistance()
           
 double getDTG()
           
 double getEtaSeconds()
           
private  double getMaxPhoneLength()
           
 java.io.Serializable getSettingsReference()
           
 long getSettingsVersion()
           
 PamSidePanel getSidePanel()
          Gets a reference to a small panel to be displayed along the left hand edge of the main tab panel.
 double getXTE()
           
 void notifyModelChanged(int changeType)
          General notification when the PAMGAURD model changes.
 boolean restoreSettings(PamControlledUnitSettings pamControlledUnitSettings)
           
 void setDTG(double dtg)
           
 void setEtaSeconds(double etaSeconds)
           
protected  void setExperimentStatus(int newStatus)
           
protected  void setLocation(VRDataUnit vrDataUnit)
           
protected  void settings(java.awt.Frame parentFrame)
           
 void setXTE(double xte)
           
protected  void startExperiment()
          Set up an experiment by taking the current position, then navigating to slightly outside the edge of the circle and then cutting some shord across it at a sondomised distance from the last position.
protected  void swapSides()
          can be called as the start point is being approached.
 
Methods inherited from class PamController.PamControlledUnit
addOtherRelatedMenuItems, addPamProcess, addRelatedMenuItems, canClose, createDisplayMenu, createFileMenu, createHelpMenu, fillXMLElement, fillXMLParameters, getFrameNumber, getNumPamProcesses, getPamController, getPamModuleInfo, getPamProcess, getPamView, getTabClipCopier, getTabPanel, getTabSpecificMenuBar, getUnitName, getUnitType, gotoTab, notifyArrayChanged, pamHasStopped, pamToStart, removePamProcess, removeUnit, rename, saveViewerData, setFrameNumber, setPamController, setPamModuleInfo, setPamView, setSidePanel, setTabPanel, setupControlledUnit, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface PamController.PamSettings
getUnitName, getUnitType
 

Field Detail

beakedProcess

protected BeakedProcess beakedProcess

beakedSidePanel

protected BeakedSidePanel beakedSidePanel

beakedParameters

protected BeakedParameters beakedParameters

gpsDataBlock

protected PamDataBlock<GpsDataUnit> gpsDataBlock

lastLocationData

protected BeakedLocationData lastLocationData

currentExperiment

protected BeakedExperimentData currentExperiment

etaSeconds

private double etaSeconds
ETA and cross track error, set from pocess.


XTE

private double XTE
ETA and cross track error, set from pocess.


DTG

private double DTG
ETA and cross track error, set from pocess.


lastLocationDataUnit

private BeakedDataUnit lastLocationDataUnit

videoRangeMonitor

private BeakedControl.VideoRangeMonitor videoRangeMonitor

vrDataBlock

private VRDataBlock vrDataBlock

random

private java.util.Random random
Constructor Detail

BeakedControl

public BeakedControl(java.lang.String unitName)
Method Detail

notifyModelChanged

public void notifyModelChanged(int changeType)
Description copied from class: PamControlledUnit
General notification when the PAMGAURD model changes.

Overrides:
notifyModelChanged in class PamControlledUnit
Parameters:
changeType - type of change

findGpsData

private void findGpsData()

getSidePanel

public PamSidePanel getSidePanel()
Description copied from class: PamControlledUnit
Gets a reference to a small panel to be displayed along the left hand edge of the main tab panel. Side panels should be small since they are always visible and any space they take will be taken from the main tab panel.

It is possible for a PamControlled unit to have a side panel without having a pamTabPanel.

Overrides:
getSidePanel in class PamControlledUnit
Returns:
a pamSidePanel object.
See Also:
PamSidePanel, PamTabPanel

createDetectionMenu

public javax.swing.JMenuItem createDetectionMenu(java.awt.Frame parentFrame)
Description copied from class: PamControlledUnit
Create a JMenu object containing MenuItems associated with PamProcesses

Overrides:
createDetectionMenu in class PamControlledUnit
Parameters:
parentFrame - The owner frame of the menu
Returns:
reference to a JMenu which can be added to an existing menu or menu bar

Note that if multiple views are to use the same menu, then they should each create a new menu (by setting Create to true) the first time they call this method.


settings

protected void settings(java.awt.Frame parentFrame)

startExperiment

protected void startExperiment()
Set up an experiment by taking the current position, then navigating to slightly outside the edge of the circle and then cutting some shord across it at a sondomised distance from the last position.


setExperimentStatus

protected void setExperimentStatus(int newStatus)

generateDistance

private double generateDistance()

getMaxPhoneLength

private double getMaxPhoneLength()

setLocation

protected void setLocation(VRDataUnit vrDataUnit)

endExperiment

protected void endExperiment()

autoEndExperiment

protected void autoEndExperiment()

swapSides

protected void swapSides()
can be called as the start point is being approached. Keep the same start point, but swap to the same perp distance on the other side of the whale. *


forceStart

protected void forceStart()

getSettingsReference

public java.io.Serializable getSettingsReference()
Specified by:
getSettingsReference in interface PamSettings
Returns:
The serialisable object that will be stored

getSettingsVersion

public long getSettingsVersion()
Specified by:
getSettingsVersion in interface PamSettings
Returns:
An integer version number for the settings

restoreSettings

public boolean restoreSettings(PamControlledUnitSettings pamControlledUnitSettings)
Specified by:
restoreSettings in interface PamSettings
Returns:
true if successful The object performs final checks (if needed) and then casts the settings data pamcontrolledunitSettings.settings into the correct type and uses as required

getEtaSeconds

public double getEtaSeconds()

setEtaSeconds

public void setEtaSeconds(double etaSeconds)

getXTE

public double getXTE()

setXTE

public void setXTE(double xte)

getDTG

public double getDTG()

setDTG

public void setDTG(double dtg)