Package beamformer

Class BeamAlgorithmParams

java.lang.Object
beamformer.BeamAlgorithmParams
All Implemented Interfaces:
Serializable, Cloneable, ManagedParameters
Direct Known Subclasses:
BasicFreqDomParams, MVDRParams, NullBeamParams

public abstract class BeamAlgorithmParams extends Object implements Serializable, Cloneable, ManagedParameters
See Also:
  • Field Details

  • Constructor Details

    • BeamAlgorithmParams

      public BeamAlgorithmParams(String algorithmName, int groupNumber, int channelMap)
      Main constructor
      Parameters:
      algorithmName - The name of the algorithm using these parameters. This should be the name returned by the getStaticProperties().getName() call to the algorithm provider object, in order to properly match up provider to parameters in BeamformerProcess.
      groupNumber - the group number
      channelMap - the channel map for the channels in this group
  • Method Details

    • getAlgorithmName

      public String getAlgorithmName()
      Returns:
      the algorithmName
    • setAlgorithmName

      public void setAlgorithmName(String algorithmName)
      Parameters:
      algorithmName - the algorithmName to set
    • getGroupNumber

      public int getGroupNumber()
      Returns:
      the groupNumber
    • setGroupNumber

      public void setGroupNumber(int groupNumber)
      Parameters:
      groupNumber - the groupNumber to set
    • getSerialversionuid

      public static long getSerialversionuid()
      Returns:
      the serialversionuid
    • getChannelMap

      public int getChannelMap()
      Returns:
      the channelMap
    • setChannelMap

      public void setChannelMap(int channelMap)
      Parameters:
      channelMap - the channelMap to set
    • getNumBeams

      public int getNumBeams()
      Returns:
      the numBeams
    • setNumBeams

      public void setNumBeams(int numBeams)
      Parameters:
      numBeams - the numBeams to set
    • getHeadings

      public int[] getHeadings()
      Returns:
      the headings
    • setHeadings

      public void setHeadings(int[] headings)
      Parameters:
      headings - the headings to set
    • getNumBeamogram

      public int getNumBeamogram()
      Returns:
      the numBeamogram
    • setNumBeamogram

      public void setNumBeamogram(int numBeamogram)
      Parameters:
      numBeamogram - the numBeamogram to set
    • getBeamOGramAngles

      public int[] getBeamOGramAngles()
      Returns:
      the beamOGramAngles
    • setBeamOGramAngles

      public void setBeamOGramAngles(int[] beamOGramAngles)
      Parameters:
      beamOGramAngles - the beamOGramAngles to set
    • getFreqRange

      public double[][] getFreqRange()
      Returns:
      the freqRange
    • setFreqRange

      public void setFreqRange(double[][] freqRange)
      Parameters:
      freqRange - the freqRange to set
    • getSlants

      public int[] getSlants()
      Return the slant angles for the individual beams. In some circumstances, such as for linear arrays, the slant angles will not have been defined. If this is the case, create a new array of size numBeams containing 0's, and pass that back to the calling method.
      Returns:
    • setSlants

      public void setSlants(int[] slants)
      Set the slant angles
      Parameters:
      slants -
    • getBeamOGramSlants

      public int[] getBeamOGramSlants()
      Returns:
    • setBeamOGramSlants

      public void setBeamOGramSlants(int[] beamOGramSlants)
      Parameters:
      beamOGramSlants -
    • clone

      public abstract BeamAlgorithmParams clone()
      Clone the fields in this abstract class, as well as any fields specific to the extended class. Extended classes must override this method to ensure the params get saved properly. See the BasicFreqDomParams.clone method for an example;
    • getBeamOGramFreqRange

      public double[] getBeamOGramFreqRange()
      Returns:
      the beamOGramFreqRange
    • setBeamOGramFreqRange

      public void setBeamOGramFreqRange(double[] beamOGramFreqRange)
      Parameters:
      beamOGramFreqRange - the beamOGramFreqRange to set
    • isCanBeam

      public boolean isCanBeam()
      Whether or not this instance of the algorithm can/should allow the user to create individual beams. True = ok to show beams.
      Returns:
      True = ok to show beams.
    • setCanBeam

      public void setCanBeam(boolean canBeam)
      Whether or not this instance of the algorithm can/should allow the user to create individual beams. True = ok to show beams.
      Parameters:
      canBeam - True = ok to show beams.
    • isCanBeamogram

      public boolean isCanBeamogram()
      Whether or not this instance of the algorithm can/should allow the user to create a beamogram. True = ok to show beamogram
      Returns:
      True = ok to show beamogram
    • setCanBeamogram

      public void setCanBeamogram(boolean canBeamogram)
      Whether or not this instance of the algorithm can/should allow the user to create a beamogram. True = ok to show beamogram
      Parameters:
      canBeamogram - True = ok to show beamogram
    • getParameterSet

      public PamParameterSet getParameterSet()
      Description copied from interface: ManagedParameters
      Get a set of data that describes all of the parameters in a class
      Specified by:
      getParameterSet in interface ManagedParameters
      Returns:
      description of the parameters in a class.