Package Array

Class HydrophoneLocator

java.lang.Object
Array.HydrophoneLocator
All Implemented Interfaces:
Serializable, Cloneable, ManagedParameters
Direct Known Subclasses:
MasterLocator, SimpleHydrophoneLocator

public abstract class HydrophoneLocator extends Object implements Serializable, Cloneable, ManagedParameters
HydrophoneLocator is an interface for objects that can work out the true positions of hydrophones based on any or all of the following information

The set positions for each hydrophone from the array dialog

The movement of the vessel (e.g. the hydrophone may thread behind the vessel

Any sensor information available, e.g. depth, Terella, etc.

Author:
Doug Gillespie
See Also:
  • Constructor Details

    • HydrophoneLocator

      public HydrophoneLocator(PamArray pamArray, Streamer streamer)
  • Method Details

    • getDefaultSettings

      public abstract LocatorSettings getDefaultSettings()
    • getName

      public abstract String getName()
    • getStreamerLatLong

      public final GpsData getStreamerLatLong(long timeMilliseconds)
      Gets a reference LatLong for the streamer for the given time including any orientation data available to the system.
      Parameters:
      timeMilliseconds - time reference needed for
      Returns:
      position, including heading pitch and roll data.
    • getPhoneLatLong

      public GpsData getPhoneLatLong(long timeMilliseconds, int phoneNo)
      Get's the LatLong of a specific hydrophone at a given time.
      Parameters:
      timeMilliseconds - time position needed for
      phoneNo - Hydrophone number
      Returns:
      Hydrophone LatLong
    • notifyModelChanged

      public abstract void notifyModelChanged(int changeType, boolean initComplete)
    • isStatic

      public abstract boolean isStatic()
      Returns:
      true if it's some sort of static array (not using GPS data in any way).
    • isChangeable

      public abstract boolean isChangeable()
      Note- changeable refers to the array positions changing relative to each other. i.e. the array doesn't change with heading or gps position, it's only changeable if the distances between hydrophones can change with time.
      Returns:
      true if the hydrophone positions within the array can change with time
    • getLocatorSettings

      public abstract LocatorSettings getLocatorSettings()
    • setLocatorSettings

      public abstract boolean setLocatorSettings(LocatorSettings locatorSettings)
    • getParameterSet

      public PamParameterSet getParameterSet()
      Get the auto-generated parameter set, and then add in the fields that are not included because they are not public and do not have getters. Note: for each field, we search the current class and (if that fails) the superclass. It's done this way in case HydrophoneLocator is used directly (and thus the field would be found in the class), or else it might be used as a superclass to something else (e.g. MasterLocator) in which case the field would only be found in the superclass.
      Specified by:
      getParameterSet in interface ManagedParameters
      Returns:
      description of the parameters in a class.
    • getStreamer

      public Streamer getStreamer()
      Returns:
      the streamer