IQ recording file playback partial checkin.

NOTE: only the gui components and settings handling have been implemented.  Actual recording playback is not yet implemented.

Partial checkin of initial P25 decoder development.  

NOTE: P25 decoder is not yet functional.
This commit is contained in:
dennis.sheirer
2014-08-02 15:16:12 +00:00
parent 35a2cebe03
commit 44faeb9351
38 changed files with 1416 additions and 39 deletions

View File

@@ -0,0 +1,66 @@
package dsp.fsk;
import instrument.Instrumentable;
import instrument.tap.Tap;
import instrument.tap.stream.FloatTap;
import java.util.ArrayList;
import java.util.List;
import sample.Listener;
public class C4FMDecoder implements Listener<Float>, Instrumentable
{
private final String TAP_C4FM_INPUT = "C4FM Input";
private ArrayList<Tap> mTaps;
private FloatTap mInputTap;
public C4FMDecoder()
{
}
@Override
public List<Tap> getTaps()
{
if( mTaps == null )
{
mTaps = new ArrayList<Tap>();
FloatTap floatTap = new FloatTap( TAP_C4FM_INPUT, 0, 1.0f );
mTaps.add( floatTap );
}
return mTaps;
}
@Override
public void addTap( Tap tap )
{
switch( tap.getName() )
{
case TAP_C4FM_INPUT:
mInputTap = (FloatTap)tap;
break;
}
}
@Override
public void removeTap( Tap tap )
{
switch( tap.getName() )
{
case TAP_C4FM_INPUT:
mInputTap = null;
break;
}
}
@Override
public void receive( Float t )
{
if( mInputTap != null )
{
mInputTap.receive( t );
}
}
}