Class GeneralGroupLocaliser

java.lang.Object
clickDetector.localisation.GeneralGroupLocaliser
All Implemented Interfaces:
LocaliserModel<PamDataUnit>
Direct Known Subclasses:
ClickGroupLocaliser

public abstract class GeneralGroupLocaliser extends Object implements LocaliserModel<PamDataUnit>
  • Field Details

    • locAlgorithmList

      public transient ArrayList<LocaliserModel> locAlgorithmList
      List of possible localiser (do not serialise)
  • Constructor Details

    • GeneralGroupLocaliser

      public GeneralGroupLocaliser()
  • Method Details

    • getName

      public abstract String getName()
      Description copied from interface: LocaliserModel
      Get the name which describes the localiser.
      Specified by:
      getName in interface LocaliserModel<PamDataUnit>
      Returns:
      the name of the localiser.
    • getClickLocParams

      public abstract ClickLocParams getClickLocParams()
    • generateLocList

      public void generateLocList()
      Generate the list of available localisers.
    • getToolTipText

      public String getToolTipText()
      Specified by:
      getToolTipText in interface LocaliserModel<PamDataUnit>
    • getAlgorithmSettingsPane

      public LocaliserPane<?> getAlgorithmSettingsPane()
      Description copied from interface: LocaliserModel
      Get the settings pane for the localiser. Allows users to change localiser settings.
      Specified by:
      getAlgorithmSettingsPane in interface LocaliserModel<PamDataUnit>
      Returns:
      the settings pane for the localiser.
    • findLocaliserAlgorithm

      public LocaliserModel findLocaliserAlgorithm(String algorithmName)
      Find an algorithm by name
      Parameters:
      algorithmName -
      Returns:
    • hasParams

      public boolean hasParams()
      Description copied from interface: LocaliserModel
      True if the model has parameters to set. If has the localiser has a settings pane it will have parameters. This generally puts an extra button onto a display panel.
      Specified by:
      hasParams in interface LocaliserModel<PamDataUnit>
    • notifyModelProgress

      public void notifyModelProgress(double progress)
      Description copied from interface: LocaliserModel
      This should be called whenever the localiser has finished processing and, if the localisation process is long, then updates progress.
      Specified by:
      notifyModelProgress in interface LocaliserModel<PamDataUnit>
    • runModel

      public GroupLocalisation runModel(PamDataUnit pamDataUnit, DetectionGroupOptions detectionGroupOptions)
      Run the click group localiser.
      Parameters:
      pamDataUnit - - the group detection to localise.
      Returns:
      the best fit GroupLocalisation.
    • resultsFilterOK

      public boolean resultsFilterOK(GroupLocalisation groupLocalisation)
      Filter results before localisation is selected based on AIC value. If the localisation contains multiple ambiguities, then it will pass as long as one of the ambiguous results passes the filter.
      Parameters:
      groupLocalisation - - the localisation result to test.
      Returns:
      true if localisation passes the filter tests.
    • runModel

      public GroupLocalisation runModel(PamDataUnit pamDataUnit, DetectionGroupOptions detectionGroupOptions, boolean addLoc)
      Description copied from interface: LocaliserModel
      Run the localisation model. Once completed the results are added to the AbstractLoclaisation class of the input PamDataUnit. Note that algorithms may run on a separate thread. Once processing has finished the notifyModelFinished function is called with a progress of 1;.
      Specified by:
      runModel in interface LocaliserModel<PamDataUnit>
      Parameters:
      pamDataUnit - the pamDataUnit. This can be a super unit if multiple detections are required.
      addLoc - automatically add the localisation result to the data unit, replacing it's current localisation info.
    • getLocContents

      public LocContents getLocContents()
      Description copied from interface: LocaliserModel
      The type of localisation information the localiser can accept. e.g. bearings, time delays etc. The types are defined in the AbstractLocalisation class.
      Specified by:
      getLocContents in interface LocaliserModel<PamDataUnit>
      Returns:
      integer bitmap of the type of localisation information the localiser can use.