Package beamformer.algorithms.nullalgo
Class NullBeamFormer
java.lang.Object
beamformer.algorithms.nullalgo.NullBeamFormer
- All Implemented Interfaces:
BeamFormerAlgorithm
Not really a beam former. Just passes through FFT data so that we
can debug some of the displays, etc.
- Author:
- dg50
-
Constructor Summary
ConstructorDescriptionNullBeamFormer
(NullBeamProvider nullBeamProvider, BeamFormerBaseProcess beamFormerProcess, BeamAlgorithmParams parameters, int firstSeqNum) -
Method Summary
Modifier and TypeMethodDescriptiongetBeamInformation
(int iBeam) Get information about a specific beam.int
Get the number of angles used in the beamogram calculation.int
Get the number of output beamsvoid
prepare()
Prepare the algorithm.void
process
(FFTDataUnit[] fftDataUnits) Process a block of time aligned FFT Data blocks.void
setFrequencyBinRange
(int binFrom, int binTo) Set a frequency bin range for the BeamOGram analysis.void
setKeepFrequencyInformation
(boolean keep) Tell the algorithm to keep frequency information in beamOGram output.boolean
Boolean indicating whether a beamOgram should be created (true) or not (false)
-
Constructor Details
-
NullBeamFormer
public NullBeamFormer(NullBeamProvider nullBeamProvider, BeamFormerBaseProcess beamFormerProcess, BeamAlgorithmParams parameters, int firstSeqNum)
-
-
Method Details
-
process
Description copied from interface:BeamFormerAlgorithm
Process a block of time aligned FFT Data blocks. These Should match the channel map for the algorithm, but will be blocked together even if there are gaps in the algorithms channel map- Specified by:
process
in interfaceBeamFormerAlgorithm
- Parameters:
fftDataUnits
- array of FFT data units.
-
prepare
public void prepare()Description copied from interface:BeamFormerAlgorithm
Prepare the algorithm. Gets called just before it starts. It's here that steering vectors, etc. should get calculated.- Specified by:
prepare
in interfaceBeamFormerAlgorithm
-
getNumBeams
public int getNumBeams()Description copied from interface:BeamFormerAlgorithm
Get the number of output beams- Specified by:
getNumBeams
in interfaceBeamFormerAlgorithm
- Returns:
- number of output beams
-
getBeamInformation
Description copied from interface:BeamFormerAlgorithm
Get information about a specific beam. I've currently no idea whatsoever what information we're going to include here !- Specified by:
getBeamInformation
in interfaceBeamFormerAlgorithm
- Returns:
-
thereIsABeamogram
public boolean thereIsABeamogram()Description copied from interface:BeamFormerAlgorithm
Boolean indicating whether a beamOgram should be created (true) or not (false)- Specified by:
thereIsABeamogram
in interfaceBeamFormerAlgorithm
- Returns:
-
getNumBeamogramAngles
public int getNumBeamogramAngles()Description copied from interface:BeamFormerAlgorithm
Get the number of angles used in the beamogram calculation. Note that at the moment all beamograms must use the same angles in order be able to add their data to the common PamDataBlock. The BasicFreqDomParams object defines the beamogram angles as from 0 deg to 180 deg in 2 degree steps (91 angles total). This should be matched in all other algorithms capable of creating beamograms, until changes can be made to accomodate different PamDataUnit sizes in the same PamDataBlock.- Specified by:
getNumBeamogramAngles
in interfaceBeamFormerAlgorithm
- Returns:
- the number of angles used in the beamogram calculation
-
setKeepFrequencyInformation
public void setKeepFrequencyInformation(boolean keep) Description copied from interface:BeamFormerAlgorithm
Tell the algorithm to keep frequency information in beamOGram output.- Specified by:
setKeepFrequencyInformation
in interfaceBeamFormerAlgorithm
-
setFrequencyBinRange
public void setFrequencyBinRange(int binFrom, int binTo) Description copied from interface:BeamFormerAlgorithm
Set a frequency bin range for the BeamOGram analysis.
Beam forming will take place between binFrom to binTo.
(Not inclusive - so binTo can equal fftLength/2 process loop is for (int i = binFrom; i invalid input: '<' bnTo; i++)).- Specified by:
setFrequencyBinRange
in interfaceBeamFormerAlgorithm
- Parameters:
binFrom
- first bin to processbinTo
- last bin to process
-