mirror of
https://github.com/DSheirer/sdrtrunk.git
synced 2026-11-12 08:37:25 -05:00
Changed to slf4j logging framework
Enhanced error handling/logging in RTL2832 eeprom device descriptor read method for troubleshooting issue present in some R820T tuners.
This commit is contained in:
@@ -20,5 +20,8 @@
|
||||
<classpathentry kind="lib" path="imports/JTransforms-3.0.jar" sourcepath="/home/denny/.m2/repository/com/github/wendykierp/JTransforms/3.0/JTransforms-3.0-sources.jar"/>
|
||||
<classpathentry kind="lib" path="imports/libusb4java-1.2.0-linux-ppc.jar"/>
|
||||
<classpathentry kind="lib" path="imports/JLargeArrays-1.2.jar"/>
|
||||
<classpathentry kind="lib" path="imports/slf4j-api-1.7.7.jar"/>
|
||||
<classpathentry kind="lib" path="imports/logback-classic-1.1.2.jar"/>
|
||||
<classpathentry kind="lib" path="imports/logback-core-1.1.2.jar"/>
|
||||
<classpathentry kind="output" path="bin"/>
|
||||
</classpath>
|
||||
|
||||
20
config/logback.xml
Normal file
20
config/logback.xml
Normal file
@@ -0,0 +1,20 @@
|
||||
<configuration>
|
||||
<timestamp key="appstart" datePattern="HHmmss"/>
|
||||
|
||||
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<file>${user.home}/SDRTrunk/logs/sdrtrunk_application.log</file>
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
||||
<!-- daily log rollover -->
|
||||
<fileNamePattern>${user.home}/SDRTrunk/logs/%d{yyyyMMdd}_sdrtrunk_application.log</fileNamePattern>
|
||||
<maxHistory>10</maxHistory>
|
||||
</rollingPolicy>
|
||||
<encoder>
|
||||
<pattern>%-25(%d{ddMMyyyy HHmmss} [%thread]) %-5level %logger{30} - %msg%n</pattern>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<root level="DEBUG">
|
||||
<appender-ref ref="FILE" />
|
||||
</root>
|
||||
|
||||
</configuration>
|
||||
BIN
imports/logback-classic-1.1.2.jar
Normal file
BIN
imports/logback-classic-1.1.2.jar
Normal file
Binary file not shown.
BIN
imports/logback-core-1.1.2.jar
Normal file
BIN
imports/logback-core-1.1.2.jar
Normal file
Binary file not shown.
BIN
imports/slf4j-api-1.7.7.jar
Normal file
BIN
imports/slf4j-api-1.7.7.jar
Normal file
Binary file not shown.
@@ -27,14 +27,20 @@ import javax.swing.JOptionPane;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.JTextField;
|
||||
|
||||
import log.Log;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import controller.ConfigurableNode;
|
||||
|
||||
public class StatusIDEditor extends JPanel implements ActionListener
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private StatusIDNode mStatusIDNode;
|
||||
private static final long serialVersionUID = 1L;
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( StatusIDEditor.class );
|
||||
|
||||
private StatusIDNode mStatusIDNode;
|
||||
|
||||
private JLabel mLabelName;
|
||||
private JTextField mTextStatusID;
|
||||
@@ -93,7 +99,7 @@ public class StatusIDEditor extends JPanel implements ActionListener
|
||||
}
|
||||
catch( Exception ex )
|
||||
{
|
||||
Log.error( "StatusIDEditor - error parsing int status " +
|
||||
mLog.error( "StatusIDEditor - error parsing int status " +
|
||||
"id from [" + statusIDString + "]" );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,20 +20,24 @@ package alias.siteID;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
|
||||
import javax.swing.BorderFactory;
|
||||
import javax.swing.JButton;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.JTextField;
|
||||
|
||||
import log.Log;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import controller.ConfigurableNode;
|
||||
|
||||
public class SiteIDEditor extends JPanel implements ActionListener
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( SiteIDEditor.class );
|
||||
private SiteIDNode mSiteIDNode;
|
||||
|
||||
private JLabel mLabelName;
|
||||
@@ -92,7 +96,7 @@ public class SiteIDEditor extends JPanel implements ActionListener
|
||||
}
|
||||
catch( Exception ex )
|
||||
{
|
||||
Log.error( "SiteIDEditor - error parsing int site " +
|
||||
mLog.error( "SiteIDEditor - error parsing int site " +
|
||||
"id from [" + siteIDString + "]" );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,20 +20,24 @@ package alias.uniqueID;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
|
||||
import javax.swing.BorderFactory;
|
||||
import javax.swing.JButton;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.JTextField;
|
||||
|
||||
import log.Log;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import controller.ConfigurableNode;
|
||||
|
||||
public class UniqueIDEditor extends JPanel implements ActionListener
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( UniqueIDEditor.class );
|
||||
private UniqueIDNode mUniqueIDNode;
|
||||
|
||||
private JLabel mLabelUniqueID;
|
||||
@@ -92,8 +96,8 @@ public class UniqueIDEditor extends JPanel implements ActionListener
|
||||
}
|
||||
catch( Exception ex )
|
||||
{
|
||||
Log.error( "UniqueIDEditor - exception trying to parse " +
|
||||
"int from uid [" + uid + "]" );
|
||||
mLog.error( "UniqueIDEditor - exception trying to parse " +
|
||||
"int from uid [" + uid + "]", ex );
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
@@ -24,7 +24,9 @@ import javax.sound.sampled.AudioSystem;
|
||||
import javax.sound.sampled.LineUnavailableException;
|
||||
import javax.sound.sampled.SourceDataLine;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import sample.Listener;
|
||||
import buffer.FloatSampleBufferAssembler;
|
||||
|
||||
@@ -32,6 +34,8 @@ public class AudioOutput implements Listener<Float>,
|
||||
SquelchListener,
|
||||
AudioTypeListener
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( AudioOutput.class );
|
||||
private static final int sAUDIO_BLOCK_SIZE = 24000;
|
||||
|
||||
private static final AudioFormat sAUDIO_FORMAT =
|
||||
@@ -60,8 +64,8 @@ public class AudioOutput implements Listener<Float>,
|
||||
}
|
||||
catch ( LineUnavailableException e )
|
||||
{
|
||||
Log.warning( "AudioOutput - couldn't open audio speakers "
|
||||
+ "for playback:" + e.getLocalizedMessage() );
|
||||
mLog.error( "AudioOutput - couldn't open audio speakers "
|
||||
+ "for playback", e );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -20,12 +20,13 @@ package controller.activity;
|
||||
import java.awt.EventQueue;
|
||||
import java.text.DecimalFormat;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Collections;
|
||||
import java.util.LinkedList;
|
||||
|
||||
import javax.swing.table.AbstractTableModel;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import sample.Broadcaster;
|
||||
import sample.Listener;
|
||||
import controller.activity.CallEvent.CallEventType;
|
||||
@@ -33,6 +34,8 @@ import controller.activity.CallEvent.CallEventType;
|
||||
public class CallEventModel extends AbstractTableModel
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( CallEventModel.class );
|
||||
|
||||
private static DecimalFormat mFrequencyFormatter =
|
||||
new DecimalFormat( "0.000000" );
|
||||
@@ -175,7 +178,7 @@ public class CallEventModel extends AbstractTableModel
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.error( "CallEventModel - couldn't log end time - event was null" );
|
||||
mLog.error( "CallEventModel - couldn't log end time - event was null" );
|
||||
}
|
||||
}
|
||||
} );
|
||||
@@ -210,7 +213,7 @@ public class CallEventModel extends AbstractTableModel
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.error( "CallEventModel - tried to set from ID on "
|
||||
mLog.error( "CallEventModel - tried to set from ID on "
|
||||
+ "call event - couldn't find index of event" );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,8 +34,11 @@ import javax.xml.bind.annotation.XmlRootElement;
|
||||
import javax.xml.bind.annotation.XmlSeeAlso;
|
||||
import javax.xml.bind.annotation.XmlTransient;
|
||||
|
||||
import log.Log;
|
||||
import message.Message;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import record.config.RecordConfiguration;
|
||||
import sample.Listener;
|
||||
import source.SourceType;
|
||||
@@ -63,6 +66,8 @@ import eventlog.config.EventLogConfiguration;
|
||||
@XmlRootElement( name = "channel" )
|
||||
public class Channel extends Configuration
|
||||
{
|
||||
private final static Logger mLog = LoggerFactory.getLogger( Channel.class );
|
||||
|
||||
public enum ChannelType
|
||||
{
|
||||
STANDARD,
|
||||
@@ -814,7 +819,7 @@ public class Channel extends Configuration
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.error( "Channel - attempt to add already existing channel "
|
||||
mLog.error( "Channel - attempt to add already existing channel "
|
||||
+ "listener [" + listener.getClass() + "]" );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,7 +25,6 @@ import java.awt.event.FocusEvent;
|
||||
import java.awt.event.FocusListener;
|
||||
|
||||
import javax.swing.AbstractCellEditor;
|
||||
import javax.swing.BorderFactory;
|
||||
import javax.swing.JButton;
|
||||
import javax.swing.JFormattedTextField;
|
||||
import javax.swing.JLabel;
|
||||
@@ -37,13 +36,18 @@ import javax.swing.JTextField;
|
||||
import javax.swing.table.TableCellEditor;
|
||||
import javax.swing.text.InternationalFormatter;
|
||||
|
||||
import log.Log;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
public class ChannelMapEditor extends JPanel implements ActionListener
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private ChannelMapNode mChannelMapNode;
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( ChannelMapEditor.class );
|
||||
|
||||
private ChannelMapNode mChannelMapNode;
|
||||
|
||||
private JLabel mNameLabel;
|
||||
private JTextField mNameText;
|
||||
@@ -76,7 +80,7 @@ public class ChannelMapEditor extends JPanel implements ActionListener
|
||||
@Override
|
||||
public void focusLost( FocusEvent arg0 )
|
||||
{
|
||||
Log.info( "text field action event fired, new value:" + mNameText.getText() );
|
||||
mLog.info( "text field action event fired, new value:" + mNameText.getText() );
|
||||
mChannelMapCopy.setName( mNameText.getText() );
|
||||
}
|
||||
} );
|
||||
@@ -198,14 +202,13 @@ public class ChannelMapEditor extends JPanel implements ActionListener
|
||||
@Override
|
||||
public Object getCellEditorValue()
|
||||
{
|
||||
Log.info( "getCellEditorValue - I've been invoked!" );
|
||||
return mEditor.getText();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void actionPerformed( ActionEvent e )
|
||||
{
|
||||
Log.info( "Action Performed:" + e.getActionCommand() );
|
||||
mLog.info( "Action Performed:" + e.getActionCommand() );
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -19,12 +19,16 @@ package controller.channel;
|
||||
|
||||
import javax.swing.table.AbstractTableModel;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
public class ChannelMapModel extends AbstractTableModel
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private static final int sSTART = 0;
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( ChannelMapModel.class );
|
||||
|
||||
private static final int sSTART = 0;
|
||||
private static final int sSTOP = 1;
|
||||
private static final int sBASE = 2;
|
||||
private static final int sSIZE = 3;
|
||||
@@ -160,8 +164,8 @@ public class ChannelMapModel extends AbstractTableModel
|
||||
}
|
||||
catch( Exception e )
|
||||
{
|
||||
Log.info( "ChannelMapModel - couldn't parse integer value "
|
||||
+ "for [" + value + "] - " + e.getLocalizedMessage() );
|
||||
mLog.error( "ChannelMapModel - couldn't parse integer value "
|
||||
+ "for [" + value + "]", e );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,6 +17,8 @@
|
||||
******************************************************************************/
|
||||
package controller.channel;
|
||||
|
||||
import gui.SDRTrunk;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
@@ -27,8 +29,11 @@ import java.util.concurrent.ScheduledFuture;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
|
||||
import log.Log;
|
||||
import message.Message;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import record.Recorder;
|
||||
import record.wave.ComplexWaveRecorder;
|
||||
import record.wave.FloatWaveRecorder;
|
||||
@@ -66,6 +71,8 @@ import eventlog.EventLogger;
|
||||
*/
|
||||
public class ProcessingChain implements Listener<Message>
|
||||
{
|
||||
private final static Logger mLog = LoggerFactory.getLogger( SDRTrunk.class );
|
||||
|
||||
protected AtomicBoolean mRunning = new AtomicBoolean();
|
||||
protected Channel mChannel;
|
||||
protected Source mSource;
|
||||
@@ -189,7 +196,7 @@ public class ProcessingChain implements Listener<Message>
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.info( getLogPrefix() + "start() invoked, but processing chain is "
|
||||
mLog.info( getLogPrefix() + "start() invoked, but processing chain is "
|
||||
+ "already started" );
|
||||
}
|
||||
}
|
||||
@@ -224,7 +231,7 @@ public class ProcessingChain implements Listener<Message>
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.info( getLogPrefix() + "stop() invoked, but processing chain was "
|
||||
mLog.info( getLogPrefix() + "stop() invoked, but processing chain was "
|
||||
+ "already stopped" );
|
||||
}
|
||||
}
|
||||
@@ -273,8 +280,8 @@ public class ProcessingChain implements Listener<Message>
|
||||
}
|
||||
catch ( SourceException e )
|
||||
{
|
||||
Log.error( "Couldn't obtain source for processing chain [" +
|
||||
toString() + "] - " + e.getLocalizedMessage() );
|
||||
mLog.error( "Couldn't obtain source for processing chain [" +
|
||||
toString() + "]", e );
|
||||
|
||||
mSource = null;
|
||||
}
|
||||
@@ -296,7 +303,7 @@ public class ProcessingChain implements Listener<Message>
|
||||
}
|
||||
catch( RejectedExecutionException ree )
|
||||
{
|
||||
Log.error( getLogPrefix() + "ProcessingChain - "
|
||||
mLog.error( getLogPrefix() + "ProcessingChain - "
|
||||
+ "error scheduling complex sample processing "
|
||||
+ "thread - " + ree.getLocalizedMessage() );
|
||||
|
||||
@@ -318,9 +325,9 @@ public class ProcessingChain implements Listener<Message>
|
||||
}
|
||||
catch( RejectedExecutionException ree )
|
||||
{
|
||||
Log.error( getLogPrefix() + "ProcessingChain - "
|
||||
mLog.error( getLogPrefix() + "ProcessingChain - "
|
||||
+ "error scheduling float sample processing "
|
||||
+ "thread - " + ree.getLocalizedMessage() );
|
||||
+ "thread", ree );
|
||||
|
||||
mSource.dispose();
|
||||
}
|
||||
@@ -340,9 +347,9 @@ public class ProcessingChain implements Listener<Message>
|
||||
}
|
||||
catch( RejectedExecutionException ree )
|
||||
{
|
||||
Log.error( getLogPrefix() + "ProcessingChain - "
|
||||
mLog.error( getLogPrefix() + "ProcessingChain - "
|
||||
+ "error scheduling float sample processing "
|
||||
+ "thread - " + ree.getLocalizedMessage() );
|
||||
+ "thread", ree );
|
||||
|
||||
mSource.dispose();
|
||||
}
|
||||
@@ -491,9 +498,8 @@ public class ProcessingChain implements Listener<Message>
|
||||
}
|
||||
catch ( IOException ioe )
|
||||
{
|
||||
Log.error( getLogPrefix() + "Couldn't stop recorder [" +
|
||||
recorder.getFileName() + "] " +
|
||||
ioe.getLocalizedMessage() );
|
||||
mLog.error( getLogPrefix() + "Couldn't stop recorder [" +
|
||||
recorder.getFileName() + "]", ioe );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -516,14 +522,14 @@ public class ProcessingChain implements Listener<Message>
|
||||
|
||||
if( recorder instanceof FloatWaveRecorder )
|
||||
{
|
||||
Log.info( getLogPrefix() + "- started audio recording [" +
|
||||
mLog.info( getLogPrefix() + "- started audio recording [" +
|
||||
recorder.getFileName() + "]" );
|
||||
|
||||
mDecoder.addFloatListener( (FloatWaveRecorder)recorder );
|
||||
}
|
||||
else if( recorder instanceof ComplexWaveRecorder )
|
||||
{
|
||||
Log.info( getLogPrefix() + "- started baseband recording [" +
|
||||
mLog.info( getLogPrefix() + "- started baseband recording [" +
|
||||
recorder.getFileName() + "]" );
|
||||
|
||||
mDecoder.addComplexListener( (ComplexWaveRecorder )recorder );
|
||||
@@ -532,7 +538,7 @@ public class ProcessingChain implements Listener<Message>
|
||||
}
|
||||
catch ( IOException e )
|
||||
{
|
||||
Log.error( getLogPrefix() + "Unable to start recorder [" +
|
||||
mLog.error( getLogPrefix() + "Unable to start recorder [" +
|
||||
recorder.getFileName() + "]" );
|
||||
}
|
||||
}
|
||||
@@ -638,7 +644,7 @@ public class ProcessingChain implements Listener<Message>
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.error( getLogPrefix() + "attempt to add a complex sample "
|
||||
mLog.error( getLogPrefix() + "attempt to add a complex sample "
|
||||
+ "listener, but the decoder is null" );
|
||||
}
|
||||
}
|
||||
@@ -651,7 +657,7 @@ public class ProcessingChain implements Listener<Message>
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.error( getLogPrefix() + "attempt to remove a complex sample "
|
||||
mLog.error( getLogPrefix() + "attempt to remove a complex sample "
|
||||
+ "listener, but the decoder is null" );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
******************************************************************************/
|
||||
package controller.state;
|
||||
|
||||
import java.awt.EventQueue;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Iterator;
|
||||
import java.util.concurrent.ScheduledFuture;
|
||||
@@ -26,8 +25,11 @@ import java.util.concurrent.TimeUnit;
|
||||
|
||||
import javax.swing.JTable;
|
||||
|
||||
import log.Log;
|
||||
import message.Message;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import properties.SystemProperties;
|
||||
import sample.Broadcaster;
|
||||
import sample.Listener;
|
||||
@@ -43,7 +45,6 @@ import controller.activity.CallEventModel;
|
||||
import controller.activity.MessageActivityModel;
|
||||
import controller.channel.Channel.ChannelType;
|
||||
import controller.channel.ProcessingChain;
|
||||
import decode.mpt1327.MPT1327CallEvent;
|
||||
|
||||
/**
|
||||
* ChannelState provides a state machine for tracking a voice or data call
|
||||
@@ -82,6 +83,9 @@ import decode.mpt1327.MPT1327CallEvent;
|
||||
*/
|
||||
public abstract class ChannelState implements Listener<Message>
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( ChannelState.class );
|
||||
|
||||
private State mState = State.IDLE;
|
||||
private Object mCallFadeLock = new Object();
|
||||
private Object mCallResetLock = new Object();
|
||||
@@ -349,7 +353,7 @@ public abstract class ChannelState implements Listener<Message>
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.error( "Channel State - can't change from [" +
|
||||
mLog.error( "Channel State - can't change from [" +
|
||||
mState.toString() + "] to [" + state.toString() + "]" );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,7 +19,8 @@ package crc;
|
||||
|
||||
import java.util.BitSet;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
/**
|
||||
* Fleetsync CRC checksum utility
|
||||
@@ -36,6 +37,9 @@ import log.Log;
|
||||
*/
|
||||
public class CRCFleetsync
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( CRCFleetsync.class );
|
||||
|
||||
private static short[] sCHECKSUMS = new short[] {
|
||||
0x740A, // 111010000001010 Bit 0
|
||||
0x3A05, // 011101000000101 Bit 1
|
||||
@@ -206,47 +210,4 @@ public class CRCFleetsync
|
||||
|
||||
return retVal;
|
||||
}
|
||||
|
||||
public static void main( String[] args )
|
||||
{
|
||||
BitSet test = new BitSet();
|
||||
|
||||
int[] msg = new int[]
|
||||
{ 1,1,0,1,1,1,0,1,0,1,1,1,0,1,1,0,
|
||||
0,0,1,1,1,1,1,1,1,1,0,1,0,1,1,0,
|
||||
0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,
|
||||
0,1,0,0,1,0,1,1,1,1,0,0,1,1,0,0 };
|
||||
|
||||
for( int x = 0; x < msg.length; x++ )
|
||||
{
|
||||
if( msg[ x ] == 0 )
|
||||
{
|
||||
test.clear( x );
|
||||
}
|
||||
else if( msg[ x ] == 1 )
|
||||
{
|
||||
test.set( x );
|
||||
}
|
||||
}
|
||||
CRC result = check( test );
|
||||
|
||||
Log.info( "CRC:" + result.toString() );
|
||||
|
||||
// for( int y = 0; y < 64; y++ )
|
||||
// {
|
||||
// BitSet test2 = test.get( y, y + 63 );
|
||||
//
|
||||
// if( test2.get( 63 ) )
|
||||
// {
|
||||
// test2.clear( 63 );
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// test2.set( 63 );
|
||||
// }
|
||||
// CRC result = check( test2 );
|
||||
//
|
||||
// Log.info( y + " crc:" + result.toString() );
|
||||
// }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,22 +17,26 @@
|
||||
******************************************************************************/
|
||||
package decode.fleetsync1;
|
||||
|
||||
import log.Log;
|
||||
import message.Message;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import sample.Broadcaster;
|
||||
import sample.Listener;
|
||||
import bits.BitSetBuffer;
|
||||
|
||||
public class Fleetsync1MessageProcessor implements Listener<BitSetBuffer>
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( Fleetsync1MessageProcessor.class );
|
||||
|
||||
private Broadcaster<Message> mBroadcaster = new Broadcaster<Message>();
|
||||
|
||||
@Override
|
||||
public void receive( BitSetBuffer buffer )
|
||||
{
|
||||
Fleetsync1Message message = new Fleetsync1Message( buffer );
|
||||
|
||||
Log.info( message.toString() );
|
||||
|
||||
mBroadcaster.receive( message );
|
||||
}
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
******************************************************************************/
|
||||
package decode.fleetsync2;
|
||||
|
||||
import log.Log;
|
||||
import message.Message;
|
||||
import alias.Alias;
|
||||
import controller.state.AuxChannelState;
|
||||
@@ -27,8 +26,6 @@ import controller.state.ChannelState.State;
|
||||
|
||||
public class FleetsyncChannelState extends AuxChannelState
|
||||
{
|
||||
private static final String PROTOCOL = "FSync II";
|
||||
|
||||
private String mFleetFrom;
|
||||
private Alias mFleetFromAlias;
|
||||
|
||||
|
||||
@@ -20,7 +20,6 @@ package decode.ltrstandard;
|
||||
import java.text.DecimalFormat;
|
||||
import java.text.SimpleDateFormat;
|
||||
|
||||
import log.Log;
|
||||
import message.Message;
|
||||
import message.MessageDirection;
|
||||
import message.MessageType;
|
||||
@@ -203,7 +202,6 @@ public abstract class LTRStandardMessage extends Message
|
||||
|
||||
public Alias getTalkgroupIDAlias()
|
||||
{
|
||||
Log.debug( "LTRStandardMessage - getting alias for:" + getTalkgroupID() );
|
||||
return mAliasList.getTalkgroupAlias( getTalkgroupID() );
|
||||
}
|
||||
|
||||
|
||||
@@ -25,7 +25,6 @@ import instrument.tap.stream.FloatTap;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import log.Log;
|
||||
import sample.Broadcaster;
|
||||
import sample.Listener;
|
||||
import source.Source.SampleType;
|
||||
@@ -34,7 +33,6 @@ import bits.MessageFramer;
|
||||
import bits.SyncPattern;
|
||||
import decode.Decoder;
|
||||
import decode.DecoderType;
|
||||
import dsp.afc.AutomaticFrequencyControl;
|
||||
import dsp.filter.DCRemovalFilter;
|
||||
import dsp.filter.FilterFactory;
|
||||
import dsp.filter.Filters;
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
******************************************************************************/
|
||||
package decode.passport;
|
||||
|
||||
import log.Log;
|
||||
|
||||
public enum PassportBand
|
||||
{
|
||||
|
||||
@@ -17,9 +17,13 @@
|
||||
******************************************************************************/
|
||||
package decode.passport;
|
||||
|
||||
import gui.SDRTrunk;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import message.Message;
|
||||
import alias.Alias;
|
||||
import alias.AliasList;
|
||||
@@ -33,6 +37,9 @@ import controller.state.ChannelState;
|
||||
|
||||
public class PassportChannelState extends ChannelState
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( PassportChannelState.class );
|
||||
|
||||
private String mTalkgroup;
|
||||
private Alias mTalkgroupAlias;
|
||||
private String mMobileID;
|
||||
@@ -105,7 +112,7 @@ public class PassportChannelState extends ChannelState
|
||||
}
|
||||
catch( Exception e )
|
||||
{
|
||||
Log.error( "Error setting audio for "
|
||||
mLog.error( "Error setting audio for "
|
||||
+ "passport call", e );
|
||||
}
|
||||
}
|
||||
@@ -118,8 +125,6 @@ public class PassportChannelState extends ChannelState
|
||||
* have a different call ... cleanup the old one. */
|
||||
if( current != null && !current.addMessage( passport ) )
|
||||
{
|
||||
Log.info( "Current call event - testing" );
|
||||
|
||||
if( current.isValid() )
|
||||
{
|
||||
final PassportCallEvent endEvent =
|
||||
|
||||
@@ -19,7 +19,6 @@ package decode.passport;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
import log.Log;
|
||||
import message.Message;
|
||||
import message.MessageType;
|
||||
import sample.Broadcaster;
|
||||
|
||||
@@ -17,32 +17,23 @@
|
||||
******************************************************************************/
|
||||
package dsp.filter;
|
||||
|
||||
import gui.SDRTrunk;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Set;
|
||||
import java.util.TreeSet;
|
||||
|
||||
import log.Log;
|
||||
|
||||
import org.jtransforms.fft.DoubleFFT_1D;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import dsp.filter.Window.WindowType;
|
||||
|
||||
public class FilterFactory
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( FilterFactory.class );
|
||||
|
||||
public static void main( String[] args )
|
||||
{
|
||||
Log.info( "Testing filter factory" );
|
||||
|
||||
double[] coefficients = getCICCleanupFilter( 48000, 1, WindowType.BLACKMAN );
|
||||
|
||||
for( int x = 0; x < coefficients.length; x++ )
|
||||
{
|
||||
Log.info( x + ": " + coefficients[ x ] );
|
||||
}
|
||||
|
||||
Log.info( "Finished" );
|
||||
}
|
||||
/**
|
||||
* Generates coefficients for a unity-gain, windowed low-pass filter
|
||||
* @param sampleRate - hertz
|
||||
@@ -514,7 +505,7 @@ public class FilterFactory
|
||||
|
||||
int stage1 = findClosest( optimalStage1, factors );
|
||||
|
||||
Log.info( "Decimation rate [" + decimation +
|
||||
mLog.info( "Decimation rate [" + decimation +
|
||||
"] stage1 optimal [" + optimalStage1 +
|
||||
"] stage1 actual [" + stage1 +
|
||||
"]");
|
||||
@@ -625,7 +616,7 @@ public class FilterFactory
|
||||
|
||||
int retVal = (int)( 2.0d * decimation * ( numerator / denominator ) );
|
||||
|
||||
Log.info( "Optimal Stage 1 Decimation - rate [" + sampleRate +
|
||||
mLog.info( "Optimal Stage 1 Decimation - rate [" + sampleRate +
|
||||
"] pass [" + passFrequency +
|
||||
"] bw ratio [" + ratio +
|
||||
"] optimal [" + retVal +
|
||||
|
||||
@@ -17,11 +17,9 @@
|
||||
******************************************************************************/
|
||||
package dsp.nbfm;
|
||||
|
||||
import log.Log;
|
||||
import sample.Broadcaster;
|
||||
import sample.Listener;
|
||||
import sample.complex.ComplexSample;
|
||||
import dsp.afc.AutomaticFrequencyControl;
|
||||
import dsp.filter.ComplexFIRFilter;
|
||||
import dsp.filter.FilterFactory;
|
||||
import dsp.filter.Window.WindowType;
|
||||
|
||||
@@ -17,6 +17,8 @@
|
||||
******************************************************************************/
|
||||
package eventlog;
|
||||
|
||||
import gui.SDRTrunk;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.FileOutputStream;
|
||||
@@ -25,11 +27,16 @@ import java.io.OutputStreamWriter;
|
||||
import java.io.Writer;
|
||||
import java.nio.file.Path;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import util.TimeStamp;
|
||||
|
||||
public abstract class EventLogger
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( EventLogger.class );
|
||||
|
||||
/* Illegal filename characters */
|
||||
private static final String[] mIllegalCharacters =
|
||||
{ "#", "%", "&", "{", "}", "\\", "<", ">", "*", "?", "/",
|
||||
@@ -73,7 +80,7 @@ public abstract class EventLogger
|
||||
|
||||
mLogFileName = sb.toString();
|
||||
|
||||
Log.info( "Creating log file:" + mLogFileName );
|
||||
mLog.info( "Creating log file:" + mLogFileName );
|
||||
|
||||
mLogFile = new OutputStreamWriter(new FileOutputStream( mLogFileName ) );
|
||||
|
||||
@@ -81,7 +88,7 @@ public abstract class EventLogger
|
||||
}
|
||||
catch (FileNotFoundException e)
|
||||
{
|
||||
Log.error("Couldn't create log file in directory:" + mLogDirectory );
|
||||
mLog.error("Couldn't create log file in directory:" + mLogDirectory );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -109,7 +116,7 @@ public abstract class EventLogger
|
||||
}
|
||||
catch( Exception e )
|
||||
{
|
||||
Log.error( "Couldn't close log file:" + mFileNameSuffix );
|
||||
mLog.error( "Couldn't close log file:" + mFileNameSuffix );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -122,7 +129,7 @@ public abstract class EventLogger
|
||||
}
|
||||
catch ( IOException e )
|
||||
{
|
||||
Log.error( "Error writing entry to event log file:" + e.getLocalizedMessage() );
|
||||
mLog.error( "Error writing entry to event log file", e );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,6 +29,7 @@ import java.io.IOException;
|
||||
import java.nio.file.FileSystems;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.util.Date;
|
||||
|
||||
import javax.imageio.ImageIO;
|
||||
import javax.swing.JFrame;
|
||||
@@ -37,8 +38,11 @@ import javax.swing.JMenuBar;
|
||||
import javax.swing.JMenuItem;
|
||||
import javax.swing.JSeparator;
|
||||
|
||||
import log.Log;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import properties.SystemProperties;
|
||||
import source.tuner.TunerSelectionListener;
|
||||
import spectrum.SpectralDisplayPanel;
|
||||
@@ -51,24 +55,34 @@ import controller.ResourceManager;
|
||||
|
||||
public class SDRTrunk
|
||||
{
|
||||
private ResourceManager mResourceManager;
|
||||
private final static Logger mLog = LoggerFactory.getLogger( SDRTrunk.class );
|
||||
|
||||
private ResourceManager mResourceManager;
|
||||
private ControllerPanel mControllerPanel;
|
||||
private SpectralDisplayPanel mSpectralPanel;
|
||||
private JFrame mMainGui = new JFrame();
|
||||
|
||||
public SDRTrunk()
|
||||
{
|
||||
mLog.info( "" );
|
||||
mLog.info( "" );
|
||||
mLog.info( "*******************************************************************" );
|
||||
mLog.info( "**** SDRTrunk: a trunked radio and digital decoding application ***" );
|
||||
mLog.info( "**** website: https://code.google.com/p/sdrtrunk ***" );
|
||||
mLog.info( "*******************************************************************" );
|
||||
mLog.info( "" );
|
||||
mLog.info( "" );
|
||||
|
||||
//Setup the application home directory
|
||||
Path home = getHomePath();
|
||||
|
||||
mLog.info( "Home path: " + home.toString() );
|
||||
|
||||
//Load properties file
|
||||
if( home != null )
|
||||
{
|
||||
loadProperties( home );
|
||||
}
|
||||
|
||||
//Start the logger
|
||||
Log.init();
|
||||
|
||||
//Log current properties setting
|
||||
SystemProperties.getInstance().logCurrentSettings();
|
||||
@@ -82,7 +96,8 @@ public class SDRTrunk
|
||||
//Initialize the GUI
|
||||
initGUI();
|
||||
|
||||
Log.info( "Starting the main gui" );
|
||||
mLog.info( "starting main application gui" );
|
||||
|
||||
//Start the gui
|
||||
EventQueue.invokeLater( new Runnable()
|
||||
{
|
||||
@@ -210,9 +225,9 @@ public class SDRTrunk
|
||||
}
|
||||
catch ( IOException e )
|
||||
{
|
||||
Log.error( "Couldn't create 'screen_captures' "
|
||||
mLog.error( "Couldn't create 'screen_captures' "
|
||||
+ "subdirectory in the " +
|
||||
"SDRTrunk application directory" );
|
||||
"SDRTrunk application directory", e );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -233,15 +248,14 @@ public class SDRTrunk
|
||||
}
|
||||
catch ( IOException e )
|
||||
{
|
||||
Log.error( "Couldn't write screen capture to "
|
||||
+ "file [" + captureFile.toString() + "]" );
|
||||
mLog.error( "Couldn't write screen capture to "
|
||||
+ "file [" + captureFile.toString() + "]", e );
|
||||
}
|
||||
}} );
|
||||
}
|
||||
catch ( AWTException e )
|
||||
{
|
||||
Log.error( "Exception while taking screen capture - " +
|
||||
e.getLocalizedMessage() );
|
||||
mLog.error( "Exception while taking screen capture", e );
|
||||
}
|
||||
}
|
||||
} );
|
||||
@@ -261,15 +275,15 @@ public class SDRTrunk
|
||||
{
|
||||
try
|
||||
{
|
||||
Log.info( "SDRTrunk - creating application properties file [" +
|
||||
mLog.info( "SDRTrunk - creating application properties file [" +
|
||||
propsPath.toAbsolutePath() + "]" );
|
||||
|
||||
Files.createFile( propsPath );
|
||||
}
|
||||
catch ( IOException e )
|
||||
{
|
||||
Log.error( "SDRTrunk - couldn't create application properties "
|
||||
+ "file [" + propsPath.toAbsolutePath() );
|
||||
mLog.error( "SDRTrunk - couldn't create application properties "
|
||||
+ "file [" + propsPath.toAbsolutePath(), e );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -279,7 +293,7 @@ public class SDRTrunk
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.error( "SDRTrunk - couldn't find or recreate the SDRTrunk " +
|
||||
mLog.error( "SDRTrunk - couldn't find or recreate the SDRTrunk " +
|
||||
"application properties file" );
|
||||
}
|
||||
}
|
||||
@@ -301,15 +315,15 @@ public class SDRTrunk
|
||||
{
|
||||
Files.createDirectory( homePath );
|
||||
|
||||
Log.info( "SDRTrunk - created application home directory [" +
|
||||
mLog.info( "SDRTrunk - created application home directory [" +
|
||||
homePath.toString() + "]" );
|
||||
}
|
||||
catch ( Exception e )
|
||||
{
|
||||
homePath = null;
|
||||
|
||||
Log.error( "SDRTrunk: exception while creating SDRTrunk home " +
|
||||
"directory in the user's home directory" );
|
||||
mLog.error( "SDRTrunk: exception while creating SDRTrunk home " +
|
||||
"directory in the user's home directory", e );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -34,19 +34,24 @@ import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.Iterator;
|
||||
|
||||
import javax.swing.BorderFactory;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.JTextField;
|
||||
|
||||
import log.Log;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.tuner.FrequencyChangeListener;
|
||||
|
||||
public class JFrequencyControl extends JPanel implements FrequencyChangeListener
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private ArrayList<FrequencyChangeListener> mListeners =
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( JFrequencyControl.class );
|
||||
|
||||
private ArrayList<FrequencyChangeListener> mListeners =
|
||||
new ArrayList<FrequencyChangeListener>();
|
||||
|
||||
private Color mHighlightColor = Color.YELLOW;
|
||||
@@ -84,8 +89,8 @@ public class JFrequencyControl extends JPanel implements FrequencyChangeListener
|
||||
}
|
||||
catch ( ParseException e )
|
||||
{
|
||||
Log.error( "JFrequencyControl - parse exception "
|
||||
+ "constructing a digit - " + e.getLocalizedMessage() );
|
||||
mLog.error( "JFrequencyControl - parse exception "
|
||||
+ "constructing a digit - " + e );
|
||||
}
|
||||
|
||||
if( digit != null )
|
||||
|
||||
@@ -42,9 +42,12 @@ import javax.swing.JMenuItem;
|
||||
import javax.swing.JPopupMenu;
|
||||
import javax.swing.JSeparator;
|
||||
|
||||
import log.Log;
|
||||
import message.Message;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import sample.Listener;
|
||||
import source.Source.SampleType;
|
||||
import source.wave.FloatWaveSource;
|
||||
@@ -56,6 +59,8 @@ public class DecoderViewFrame extends JInternalFrame
|
||||
implements PositionListener, Listener<Message>
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( DecoderViewFrame.class );
|
||||
|
||||
private Decoder mDecoder;
|
||||
private WaveSource mWaveSource;
|
||||
@@ -70,7 +75,7 @@ public class DecoderViewFrame extends JInternalFrame
|
||||
|
||||
if( source.getSampleType() == SampleType.COMPLEX )
|
||||
{
|
||||
Log.error( "Hey, we're not wired up yet for complex" );
|
||||
mLog.error( "Hey, we're not wired up yet for complex" );
|
||||
}
|
||||
else if( source.getSampleType() == SampleType.FLOAT )
|
||||
{
|
||||
@@ -181,7 +186,7 @@ public class DecoderViewFrame extends JInternalFrame
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.info( "Tap panel is null, couldn't add for tap " +
|
||||
mLog.info( "Tap panel is null, couldn't add for tap " +
|
||||
tap.getName() + "[" + tap.getType().toString() + "]" );
|
||||
}
|
||||
}
|
||||
@@ -272,6 +277,6 @@ public class DecoderViewFrame extends JInternalFrame
|
||||
@Override
|
||||
public void receive( Message message )
|
||||
{
|
||||
Log.info( "Decoder message: " + message.toString() );
|
||||
mLog.info( "Decoder message: " + message.toString() );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,11 +24,14 @@ import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Observable;
|
||||
|
||||
import log.Log;
|
||||
import dsp.fsk.SymbolEvent;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
public class SampleModel<T> extends Observable implements TapListener<T>
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( SampleModel.class );
|
||||
|
||||
private int mSampleCount = 2000;
|
||||
private int mDelay = 0;
|
||||
private ArrayList<T> mSamples = new ArrayList<T>();
|
||||
|
||||
@@ -31,7 +31,9 @@ import javax.swing.JMenuItem;
|
||||
import javax.swing.JSeparator;
|
||||
import javax.swing.filechooser.FileFilter;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.Source;
|
||||
import source.wave.ComplexWaveSource;
|
||||
import source.wave.FloatWaveSource;
|
||||
@@ -39,6 +41,8 @@ import source.wave.WaveSource;
|
||||
|
||||
public class Viewer
|
||||
{
|
||||
private final static Logger mLog = LoggerFactory.getLogger( Viewer.class );
|
||||
|
||||
private JFrame mFrame;
|
||||
private JDesktopPane mDesktop;
|
||||
|
||||
@@ -129,7 +133,7 @@ public class Viewer
|
||||
|
||||
private void setSourceFile( File file )
|
||||
{
|
||||
Log.info( "File selected [" + file.getAbsolutePath() + "]");
|
||||
mLog.info( "File selected [" + file.getAbsolutePath() + "]");
|
||||
|
||||
WaveSource source = null;
|
||||
|
||||
@@ -141,12 +145,11 @@ public class Viewer
|
||||
|
||||
source = floatSource;
|
||||
|
||||
Log.info( "File opened as float wave file" );
|
||||
mLog.info( "File opened as float wave file" );
|
||||
}
|
||||
catch( Exception e )
|
||||
{
|
||||
Log.error( "Couldn't open file as float source - " +
|
||||
e.getLocalizedMessage() );
|
||||
mLog.error( "Couldn't open file as float source", e);
|
||||
}
|
||||
|
||||
if( source == null )
|
||||
@@ -159,12 +162,11 @@ public class Viewer
|
||||
|
||||
source = complex;
|
||||
|
||||
Log.info( "File opened as complex wave file" );
|
||||
mLog.info( "File opened as complex wave file" );
|
||||
}
|
||||
catch( Exception e )
|
||||
{
|
||||
Log.error( "Couldn't open file as float source - " +
|
||||
e.getLocalizedMessage() );
|
||||
mLog.error( "Couldn't open file as float source", e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -34,9 +34,12 @@ import javax.swing.JOptionPane;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.JTextField;
|
||||
|
||||
import log.Log;
|
||||
import message.MessageDirection;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.Source.SampleType;
|
||||
import source.wave.WaveSource;
|
||||
import source.wave.WaveSource.PositionListener;
|
||||
@@ -52,6 +55,10 @@ import decode.passport.PassportDecoder;
|
||||
|
||||
public class WaveSourceFrame extends JInternalFrame implements PositionListener
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( WaveSourceFrame.class );
|
||||
|
||||
private WaveSource mSource;
|
||||
private JDesktopPane mDesktop;
|
||||
|
||||
@@ -128,7 +135,7 @@ public class WaveSourceFrame extends JInternalFrame implements PositionListener
|
||||
DecoderType selected =
|
||||
(DecoderType)mComboDecoders.getSelectedItem();
|
||||
|
||||
Log.info( "Selected:" + selected.getDisplayString() );
|
||||
mLog.info( "Selected:" + selected.getDisplayString() );
|
||||
|
||||
Decoder decoder = null;
|
||||
|
||||
@@ -189,8 +196,8 @@ public class WaveSourceFrame extends JInternalFrame implements PositionListener
|
||||
}
|
||||
catch ( IOException e )
|
||||
{
|
||||
Log.error( "Viewer - error trying to fetch next [" +
|
||||
mCount + "] samples - " + e.getLocalizedMessage() );
|
||||
mLog.error( "Viewer - error trying to fetch next [" +
|
||||
mCount + "] samples", e );
|
||||
|
||||
JOptionPane.showMessageDialog( WaveSourceFrame.this,
|
||||
"Cannot read " + mCount + " more samples [" +
|
||||
@@ -230,8 +237,8 @@ public class WaveSourceFrame extends JInternalFrame implements PositionListener
|
||||
}
|
||||
catch( Exception e )
|
||||
{
|
||||
Log.error( "WaveSourceFrame - exception during jump "
|
||||
+ "to - " + e.getLocalizedMessage() );
|
||||
mLog.error( "WaveSourceFrame - exception during jump "
|
||||
+ "to", e );
|
||||
|
||||
JOptionPane.showMessageDialog( WaveSourceFrame.this,
|
||||
"Can't jump to position [" + getText() + "]",
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
******************************************************************************/
|
||||
package instrument.tap.stream;
|
||||
|
||||
import gui.SDRTrunk;
|
||||
import instrument.gui.SampleModel;
|
||||
import instrument.tap.Tap;
|
||||
import instrument.tap.TapViewPanel;
|
||||
@@ -29,11 +30,15 @@ import java.awt.geom.Point2D;
|
||||
import java.util.List;
|
||||
import java.util.Observable;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
public class FloatTapPhaseViewPanel extends TapViewPanel
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( FloatTapPhaseViewPanel.class );
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
private Tap mTap;
|
||||
private List<Float> mSamples;
|
||||
private int mSampleCount;
|
||||
@@ -50,7 +55,7 @@ public class FloatTapPhaseViewPanel extends TapViewPanel
|
||||
getModel().setSampleCount( mSampleCount );
|
||||
getModel().setDelay( tap.getDelay() );
|
||||
|
||||
Log.info( "Float Tap Panel [" + tap.getName() + "] count: " +
|
||||
mLog.info( "Float Tap Panel [" + tap.getName() + "] count: " +
|
||||
getModel().getSampleCount() + " delay:" + getModel().getDelay() );
|
||||
}
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
******************************************************************************/
|
||||
package instrument.tap.stream;
|
||||
|
||||
import gui.SDRTrunk;
|
||||
import instrument.gui.SampleModel;
|
||||
import instrument.tap.Tap;
|
||||
import instrument.tap.TapViewPanel;
|
||||
@@ -29,11 +30,14 @@ import java.awt.geom.Point2D;
|
||||
import java.util.List;
|
||||
import java.util.Observable;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
public class FloatTapViewPanel extends TapViewPanel
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private final static Logger mLog = LoggerFactory.getLogger( SDRTrunk.class );
|
||||
|
||||
private Tap mTap;
|
||||
private List<Float> mSamples;
|
||||
private int mSampleCount;
|
||||
@@ -50,7 +54,7 @@ public class FloatTapViewPanel extends TapViewPanel
|
||||
getModel().setSampleCount( mSampleCount );
|
||||
getModel().setDelay( tap.getDelay() );
|
||||
|
||||
Log.info( "Float Tap Panel [" + tap.getName() + "] count: " +
|
||||
mLog.info( "Float Tap Panel [" + tap.getName() + "] count: " +
|
||||
getModel().getSampleCount() + " delay:" + getModel().getDelay() );
|
||||
}
|
||||
|
||||
@@ -109,7 +113,7 @@ public class FloatTapViewPanel extends TapViewPanel
|
||||
|
||||
float scaledValue = value / (float)Short.MAX_VALUE;
|
||||
|
||||
Log.info( "Float value is:" + scaledValue );
|
||||
// mLog.info( "Float value is:" + scaledValue );
|
||||
float y = middle - ( middle * scaledValue * mVerticalZoom );
|
||||
|
||||
/* Clip y to zero as necessary */
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
******************************************************************************/
|
||||
package instrument.tap.stream;
|
||||
|
||||
import log.Log;
|
||||
import instrument.tap.TapListener;
|
||||
import instrument.tap.TapType;
|
||||
import sample.Listener;
|
||||
|
||||
@@ -29,7 +29,6 @@ import java.awt.geom.Rectangle2D;
|
||||
import java.util.List;
|
||||
import java.util.Observable;
|
||||
|
||||
import log.Log;
|
||||
import dsp.fsk.SymbolEvent;
|
||||
|
||||
public class SymbolEventTapViewPanel extends TapViewPanel
|
||||
|
||||
280
src/log/Log.java
280
src/log/Log.java
@@ -1,280 +0,0 @@
|
||||
/*******************************************************************************
|
||||
* SDR Trunk
|
||||
* Copyright (C) 2014 Dennis Sheirer
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>
|
||||
******************************************************************************/
|
||||
package log;
|
||||
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.FileOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.OutputStreamWriter;
|
||||
import java.io.Writer;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
|
||||
import properties.SystemProperties;
|
||||
import util.TimeStamp;
|
||||
|
||||
public class Log
|
||||
{
|
||||
private static Writer mLogFile;
|
||||
|
||||
public Log()
|
||||
{
|
||||
}
|
||||
|
||||
private static void log( String msg )
|
||||
{
|
||||
log( msg, null);
|
||||
}
|
||||
|
||||
/**
|
||||
* Logs just the raw message, without a preceeding timestamp
|
||||
*/
|
||||
public void logRaw( String rawmsg )
|
||||
{
|
||||
try
|
||||
{
|
||||
mLogFile.write( rawmsg );
|
||||
}
|
||||
catch ( IOException e )
|
||||
{
|
||||
System.out.println(
|
||||
"Couldn't write warning msg to log file: " + rawmsg );
|
||||
}
|
||||
}
|
||||
|
||||
private static void log( String msg, String label)
|
||||
{
|
||||
if( mLogFile != null )
|
||||
{
|
||||
try
|
||||
{
|
||||
mLogFile.write( TimeStamp.getTimeStamp( " " ) );
|
||||
mLogFile.write( " " );
|
||||
|
||||
if( label != null )
|
||||
{
|
||||
mLogFile.write( label + ":" );
|
||||
}
|
||||
|
||||
mLogFile.write( msg + "\n" );
|
||||
mLogFile.flush();
|
||||
|
||||
}
|
||||
catch (IOException e)
|
||||
{
|
||||
System.out.println(
|
||||
"Couldn't write warning msg to log file: " + msg );
|
||||
}
|
||||
}
|
||||
|
||||
//echo to console
|
||||
System.out.println( ( label == null ? "" : label + ": " ) + msg );
|
||||
}
|
||||
|
||||
private static void log( String msg, String label, Throwable throwable )
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
if( msg != null )
|
||||
{
|
||||
sb.append( msg );
|
||||
sb.append( "\n" );
|
||||
}
|
||||
|
||||
sb.append( "---- STACK TRACE ----\n" );
|
||||
sb.append( "\tERROR: " );
|
||||
sb.append( "\tCause: " + throwable.getCause().toString() );
|
||||
sb.append( "\t" + throwable.getMessage() );
|
||||
sb.append( "\t" + throwable.getLocalizedMessage() + "\n" );
|
||||
|
||||
StackTraceElement[] stack = throwable.getStackTrace();
|
||||
|
||||
for( StackTraceElement element: stack )
|
||||
{
|
||||
sb.append( "\t" );
|
||||
sb.append( element.toString() );
|
||||
sb.append( ":" );
|
||||
sb.append( element.getLineNumber() );
|
||||
sb.append( "\n" );
|
||||
}
|
||||
|
||||
sb.append( "\n" );
|
||||
|
||||
log( sb.toString(), label );
|
||||
|
||||
for( Throwable t: throwable.getSuppressed() )
|
||||
{
|
||||
log( "Suppressed", label, t );
|
||||
}
|
||||
}
|
||||
|
||||
public static void header( String name )
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( "********** " );
|
||||
sb.append( name );
|
||||
sb.append( " **********" );
|
||||
|
||||
log( sb.toString() );
|
||||
}
|
||||
|
||||
public static void info( String msg )
|
||||
{
|
||||
log( msg );
|
||||
}
|
||||
|
||||
public static void info( byte[] bytes )
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
for( int x = 0; x < bytes.length; x++ )
|
||||
{
|
||||
sb.append( String.format( "%02X ", bytes[ x ] ) );
|
||||
}
|
||||
|
||||
info( sb.toString() );
|
||||
}
|
||||
|
||||
public static void info( String header, byte[] bytes )
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( header );
|
||||
|
||||
for( int x = 0; x < bytes.length; x++ )
|
||||
{
|
||||
sb.append( String.format( "%02X ", bytes[ x ] ) );
|
||||
}
|
||||
|
||||
info( sb.toString() );
|
||||
}
|
||||
|
||||
public static void warning( String msg )
|
||||
{
|
||||
log( msg, "WARNING" );
|
||||
}
|
||||
|
||||
public static void error( String msg )
|
||||
{
|
||||
log( msg, "ERROR" );
|
||||
}
|
||||
|
||||
public static void error( String msg, Throwable throwable )
|
||||
{
|
||||
log( msg, "ERROR", throwable );
|
||||
}
|
||||
|
||||
public static void debug( String msg )
|
||||
{
|
||||
log( msg, "DEBUG" );
|
||||
}
|
||||
|
||||
public static void debug( String msg, Throwable throwable )
|
||||
{
|
||||
log( msg, "DEBUG", throwable );
|
||||
}
|
||||
|
||||
/**
|
||||
* Initializes logging to the specified filename
|
||||
*/
|
||||
public static void init( String filename )
|
||||
{
|
||||
try
|
||||
{
|
||||
mLogFile = new OutputStreamWriter(
|
||||
new FileOutputStream( filename ) );
|
||||
|
||||
Log.info( "SDRTrunk Multi-Channel Trunking Decoder Application Log" );
|
||||
Log.info( "Log - application logging started [" + filename + "]" );
|
||||
|
||||
logUserEnvironment();
|
||||
}
|
||||
catch (FileNotFoundException e)
|
||||
{
|
||||
System.out.println("Couldn't open log file:" + filename );
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Initializes the log file using system properties settings
|
||||
*/
|
||||
public static void init()
|
||||
{
|
||||
SystemProperties props = SystemProperties.getInstance();
|
||||
|
||||
String logBaseFileName = props.get( "log.basefilename",
|
||||
"_SDRTrunk_application" );
|
||||
|
||||
Path logPath = props.getApplicationFolder( "logs" );
|
||||
|
||||
if( !Files.exists( logPath ) )
|
||||
{
|
||||
try
|
||||
{
|
||||
Files.createDirectory( logPath );
|
||||
}
|
||||
catch ( IOException e )
|
||||
{
|
||||
Log.error( "Log - couldn't create 'logs' subdirectory in the " +
|
||||
"SDRTrunk application directory" );
|
||||
}
|
||||
}
|
||||
|
||||
String logFileName = TimeStamp.getTimeStamp( "_" ) + logBaseFileName +
|
||||
".log";
|
||||
|
||||
Path logFile = logPath.resolve( logFileName );
|
||||
|
||||
init( logFile.toString() );
|
||||
}
|
||||
|
||||
public static void logUserEnvironment()
|
||||
{
|
||||
Log.header( "User Environment" );
|
||||
Log.info( "OS:\t\t\t" + System.getProperty( "os.name" ) );
|
||||
Log.info( "OS Version:\t\t" + System.getProperty( "os.version" ) );
|
||||
Log.info( "OS Arch:\t\t" + System.getProperty( "os.arch" ) );
|
||||
Log.info( "Java Vendor:\t\t" + System.getProperty( "java.vendor" ) );
|
||||
Log.info( "Java Vendor URL:\t" + System.getProperty( "java.vendor.url" ) );
|
||||
Log.info( "Java Version:\t\t" + System.getProperty( "java.version" ) );
|
||||
Log.info( "User:\t\t\t" + System.getProperty( "user.name" ) );
|
||||
Log.info( "User Home:\t\t" + System.getProperty( "user.home" ) );
|
||||
Log.info( "User Directory:\t\t" + System.getProperty( "user.dir" ) );
|
||||
|
||||
Log.header( "Java Class Path" );
|
||||
Log.info( System.getProperty( "java.class.path" ) );
|
||||
|
||||
}
|
||||
|
||||
public static void close()
|
||||
{
|
||||
if( mLogFile != null )
|
||||
{
|
||||
try
|
||||
{
|
||||
mLogFile.flush();
|
||||
mLogFile.close();
|
||||
}
|
||||
catch( Exception e )
|
||||
{
|
||||
System.out.println( "Couldn't close log file" );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -17,6 +17,8 @@
|
||||
******************************************************************************/
|
||||
package map;
|
||||
|
||||
import gui.SDRTrunk;
|
||||
|
||||
import java.awt.Component;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.event.ActionEvent;
|
||||
@@ -43,7 +45,9 @@ import javax.swing.event.ListSelectionEvent;
|
||||
import javax.swing.event.ListSelectionListener;
|
||||
import javax.swing.filechooser.FileFilter;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
import settings.Setting;
|
||||
import settings.SettingChangeListener;
|
||||
@@ -56,6 +60,8 @@ public class IconManager extends JFrame
|
||||
public enum Mode { NORMAL, NEW, EDIT }
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( IconManager.class );
|
||||
|
||||
private ResourceManager mResourceManager;
|
||||
|
||||
@@ -334,11 +340,9 @@ public class IconManager extends JFrame
|
||||
{
|
||||
case EDIT: //Cancel
|
||||
case NEW: //Cancel
|
||||
Log.info( "Right clicked - cancel" );
|
||||
setMode( Mode.NORMAL );
|
||||
break;
|
||||
case NORMAL: //Edit
|
||||
Log.info( "Right clicked - edit" );
|
||||
setMode( Mode.EDIT );
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -26,19 +26,15 @@ import java.awt.event.MouseEvent;
|
||||
import java.awt.event.MouseWheelListener;
|
||||
import java.awt.geom.Point2D;
|
||||
|
||||
import javax.swing.JMenu;
|
||||
import javax.swing.JMenuItem;
|
||||
import javax.swing.JPopupMenu;
|
||||
import javax.swing.SwingUtilities;
|
||||
import javax.swing.event.MouseInputAdapter;
|
||||
|
||||
import log.Log;
|
||||
|
||||
import org.jdesktop.swingx.JXMapViewer;
|
||||
import org.jdesktop.swingx.mapviewer.GeoPosition;
|
||||
|
||||
import settings.SettingsManager;
|
||||
import controller.ResourceManager;
|
||||
|
||||
public class MapMouseListener extends MouseInputAdapter implements MouseWheelListener
|
||||
{
|
||||
|
||||
@@ -22,8 +22,6 @@ import java.awt.event.KeyAdapter;
|
||||
import java.awt.event.KeyEvent;
|
||||
import java.awt.geom.Point2D;
|
||||
|
||||
import log.Log;
|
||||
|
||||
import org.jdesktop.swingx.JXMapViewer;
|
||||
|
||||
/**
|
||||
|
||||
@@ -17,6 +17,8 @@
|
||||
******************************************************************************/
|
||||
package org.jdesktop.swingx.mapviewer;
|
||||
|
||||
import gui.SDRTrunk;
|
||||
|
||||
import java.awt.image.BufferedImage;
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
@@ -38,9 +40,9 @@ import java.util.concurrent.ThreadFactory;
|
||||
import javax.imageio.ImageIO;
|
||||
import javax.swing.SwingUtilities;
|
||||
|
||||
import log.Log;
|
||||
|
||||
import org.jdesktop.swingx.mapviewer.util.GeoUtil;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
/**
|
||||
* The <code>AbstractTileFactory</code> provides
|
||||
@@ -48,6 +50,9 @@ import org.jdesktop.swingx.mapviewer.util.GeoUtil;
|
||||
*/
|
||||
public abstract class AbstractTileFactory extends TileFactory
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( AbstractTileFactory.class );
|
||||
|
||||
/**
|
||||
* Creates a new instance of DefaultTileFactory using the spcified TileFactoryInfo
|
||||
* @param info a TileFactoryInfo to configure this TileFactory
|
||||
@@ -345,7 +350,6 @@ public abstract class AbstractTileFactory extends TileFactory
|
||||
if (img == null)
|
||||
{
|
||||
System.out.println("error loading: " + uri);
|
||||
Log.info("Failed to load: " + uri);
|
||||
trys--;
|
||||
}
|
||||
else
|
||||
@@ -371,11 +375,13 @@ public abstract class AbstractTileFactory extends TileFactory
|
||||
{
|
||||
if (trys == 0)
|
||||
{
|
||||
Log.error("Failed to load a tile at url: " + tile.getURL() + ", stopping - " + e.getLocalizedMessage() );
|
||||
mLog.error("Failed to load a tile at url: " +
|
||||
tile.getURL() + ", stopping", e );
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.warning("Failed to load a tile at url: " + tile.getURL() + ", retrying - " + e.getLocalizedMessage() );
|
||||
mLog.error("Failed to load a tile at url: " +
|
||||
tile.getURL() + ", retrying", e );
|
||||
trys--;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,15 +9,17 @@
|
||||
|
||||
package org.jdesktop.swingx.mapviewer;
|
||||
|
||||
import gui.SDRTrunk;
|
||||
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.geom.Point2D;
|
||||
import java.awt.image.BufferedImage;
|
||||
|
||||
import javax.imageio.ImageIO;
|
||||
|
||||
import log.Log;
|
||||
|
||||
import org.jdesktop.swingx.JXMapViewer;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
/**
|
||||
* This is a standard waypoint renderer.
|
||||
@@ -25,6 +27,9 @@ import org.jdesktop.swingx.JXMapViewer;
|
||||
*/
|
||||
public class DefaultWaypointRenderer implements WaypointRenderer<Waypoint>
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( DefaultWaypointRenderer.class );
|
||||
|
||||
private BufferedImage img = null;
|
||||
|
||||
/**
|
||||
@@ -38,7 +43,7 @@ public class DefaultWaypointRenderer implements WaypointRenderer<Waypoint>
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Log.warning("couldn't read standard_waypoint.png - " + ex.getLocalizedMessage() );
|
||||
mLog.error("couldn't read standard_waypoint.png", ex );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -34,13 +34,17 @@ import java.net.URLConnection;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
/**
|
||||
* @author joshy
|
||||
*/
|
||||
public class LocalResponseCache extends ResponseCache
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( LocalResponseCache.class );
|
||||
|
||||
private final File cacheDir;
|
||||
|
||||
private boolean checkForUpdates;
|
||||
@@ -159,12 +163,12 @@ public class LocalResponseCache extends ResponseCache
|
||||
}
|
||||
catch (MalformedURLException ex)
|
||||
{
|
||||
Log.error("An exception occurred - " + ex.getLocalizedMessage() );
|
||||
mLog.error("An exception occurred - ", ex );
|
||||
return false;
|
||||
}
|
||||
catch (IOException ex)
|
||||
{
|
||||
Log.error("An exception occurred - " + ex.getLocalizedMessage() );
|
||||
mLog.error("An exception occurred - ", ex );
|
||||
return false;
|
||||
}
|
||||
if (!(conn instanceof HttpURLConnection))
|
||||
@@ -260,7 +264,7 @@ public class LocalResponseCache extends ResponseCache
|
||||
catch (FileNotFoundException ex)
|
||||
{
|
||||
// should not happen, since we already checked for existence
|
||||
Log.error("An exception occurred - " + ex.getLocalizedMessage() );
|
||||
mLog.error("An exception occurred - ", ex );
|
||||
}
|
||||
this.headers = rqstHeaders;
|
||||
}
|
||||
@@ -293,7 +297,7 @@ public class LocalResponseCache extends ResponseCache
|
||||
catch (FileNotFoundException ex)
|
||||
{
|
||||
// should not happen if cache dir is valid
|
||||
Log.error("An exception occurred" + ex.getLocalizedMessage() );
|
||||
mLog.error("An exception occurred", ex );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -31,11 +31,16 @@ import javax.xml.bind.JAXBException;
|
||||
import javax.xml.bind.Marshaller;
|
||||
import javax.xml.bind.Unmarshaller;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import properties.SystemProperties;
|
||||
|
||||
public class PlaylistManager
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( PlaylistManager.class );
|
||||
|
||||
private Playlist mPlaylist = new Playlist();
|
||||
|
||||
public PlaylistManager()
|
||||
@@ -95,7 +100,8 @@ public class PlaylistManager
|
||||
}
|
||||
catch( Exception e )
|
||||
{
|
||||
Log.error( "PlaylistManager - couldn't create file to save playlist [" + filePath.toString() + "]" );
|
||||
mLog.error( "PlaylistManager - couldn't create file to save "
|
||||
+ "playlist [" + filePath.toString() + "]" );
|
||||
}
|
||||
|
||||
OutputStream out = null;
|
||||
@@ -116,15 +122,14 @@ public class PlaylistManager
|
||||
}
|
||||
catch ( JAXBException e )
|
||||
{
|
||||
Log.error( "PlaylistManager - jaxb exception while saving " +
|
||||
"playlist: " + e.getLocalizedMessage() );
|
||||
e.printStackTrace();
|
||||
mLog.error( "PlaylistManager - jaxb exception while saving " +
|
||||
"playlist: ", e );
|
||||
}
|
||||
}
|
||||
catch ( Exception e )
|
||||
{
|
||||
Log.error( "PlaylistManager - coulcn't open outputstream to " +
|
||||
"save playlist [" + filePath.toString() + "]" );
|
||||
mLog.error( "PlaylistManager - coulcn't open outputstream to " +
|
||||
"save playlist [" + filePath.toString() + "]", e );
|
||||
}
|
||||
finally
|
||||
{
|
||||
@@ -150,7 +155,7 @@ public class PlaylistManager
|
||||
{
|
||||
if( Files.exists( playlistPath ) )
|
||||
{
|
||||
Log.info( "PlaylistManager - loading playlist file [" +
|
||||
mLog.info( "PlaylistManager - loading playlist file [" +
|
||||
playlistPath.toString() + "]" );
|
||||
|
||||
JAXBContext context = null;
|
||||
@@ -171,17 +176,14 @@ public class PlaylistManager
|
||||
}
|
||||
catch ( JAXBException e )
|
||||
{
|
||||
Log.error( "PlaylistManager - jaxb exception while loading " +
|
||||
"playlist: " + e.getLocalizedMessage() );
|
||||
|
||||
e.printStackTrace();
|
||||
mLog.error( "PlaylistManager - jaxb exception while loading " +
|
||||
"playlist: ", e );
|
||||
}
|
||||
}
|
||||
catch ( Exception e )
|
||||
{
|
||||
e.printStackTrace();
|
||||
Log.error( "PlaylistManager - coulcn't open inputstream to " +
|
||||
"load playlist [" + playlistPath.toString() + "]" );
|
||||
mLog.error( "PlaylistManager - coulcn't open inputstream to " +
|
||||
"load playlist [" + playlistPath.toString() + "]", e );
|
||||
}
|
||||
finally
|
||||
{
|
||||
@@ -193,16 +195,15 @@ public class PlaylistManager
|
||||
}
|
||||
catch ( IOException e )
|
||||
{
|
||||
Log.error( "PlaylistManager - exception while closing " +
|
||||
"the playlist file inputstream reader - " +
|
||||
e.getLocalizedMessage() );
|
||||
mLog.error( "PlaylistManager - exception while closing " +
|
||||
"the playlist file inputstream reader", e );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.info( "PlaylistManager - playlist does not exist [" +
|
||||
mLog.info( "PlaylistManager - playlist does not exist [" +
|
||||
playlistPath.toString() + "]" );
|
||||
}
|
||||
|
||||
|
||||
@@ -28,7 +28,8 @@ import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
import java.util.Properties;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
/**
|
||||
* SystemProperties - provides an isolated instance of properties for the
|
||||
@@ -37,6 +38,9 @@ import log.Log;
|
||||
|
||||
public class SystemProperties
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( SystemProperties.class );
|
||||
|
||||
private static String sDEFAULT_APP_ROOT = "SDRTrunk";
|
||||
private static String sPROPERTIES_FILENAME = "SDRTrunk.properties";
|
||||
|
||||
@@ -83,13 +87,13 @@ public class SystemProperties
|
||||
|
||||
mProperties.store( out, comments );
|
||||
|
||||
Log.info( "SystemProperties - saved current properties [" +
|
||||
mLog.info( "SystemProperties - saved current properties [" +
|
||||
propsPath.toString() + "]" );
|
||||
}
|
||||
catch( Exception e )
|
||||
{
|
||||
Log.error( "SystemProperties - exception while saving " +
|
||||
"application properties:" + e.getLocalizedMessage() );
|
||||
mLog.error( "SystemProperties - exception while saving " +
|
||||
"application properties", e );
|
||||
}
|
||||
finally
|
||||
{
|
||||
@@ -142,8 +146,8 @@ public class SystemProperties
|
||||
}
|
||||
catch ( IOException e )
|
||||
{
|
||||
Log.error( "SystemProperties - exception while creating " +
|
||||
"app folder [" + folder + "]" );
|
||||
mLog.error( "SystemProperties - exception while creating " +
|
||||
"app folder [" + folder + "]", e );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -154,11 +158,11 @@ public class SystemProperties
|
||||
{
|
||||
if( mPropertiesPath == null )
|
||||
{
|
||||
Log.info( "SystemProperties - no properties file loaded - using defaults" );
|
||||
mLog.info( "SystemProperties - no properties file loaded - using defaults" );
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.info( "SystemProperties - application properties loaded [" + mPropertiesPath.toString() + "]" );
|
||||
mLog.info( "SystemProperties - application properties loaded [" + mPropertiesPath.toString() + "]" );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -180,8 +184,8 @@ public class SystemProperties
|
||||
}
|
||||
catch ( FileNotFoundException e )
|
||||
{
|
||||
Log.error( "SDRTrunk - exception while opening inputstream on " +
|
||||
"application properties file - " + e.getLocalizedMessage() );
|
||||
mLog.error( "SDRTrunk - exception while opening inputstream on " +
|
||||
"application properties file", e );
|
||||
}
|
||||
|
||||
if( in != null )
|
||||
@@ -192,9 +196,8 @@ public class SystemProperties
|
||||
}
|
||||
catch ( IOException e )
|
||||
{
|
||||
Log.error( "SDRTrunk - exception while loading properties " +
|
||||
"inputstream into SystemProperties - " +
|
||||
e.getLocalizedMessage() );
|
||||
mLog.error( "SDRTrunk - exception while loading properties " +
|
||||
"inputstream into SystemProperties", e );
|
||||
}
|
||||
finally
|
||||
{
|
||||
@@ -209,7 +212,7 @@ public class SystemProperties
|
||||
}
|
||||
}
|
||||
|
||||
Log.info( "SystemProperties - loaded [" +
|
||||
mLog.info( "SystemProperties - loaded [" +
|
||||
propertiesPath.toString() + "]" );
|
||||
}
|
||||
|
||||
|
||||
@@ -23,7 +23,9 @@ import java.util.concurrent.LinkedBlockingQueue;
|
||||
|
||||
import javax.sound.sampled.AudioFormat;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import record.Recorder;
|
||||
import record.RecorderType;
|
||||
import sample.Listener;
|
||||
@@ -35,6 +37,9 @@ import buffer.FloatSampleBufferAssembler;
|
||||
*/
|
||||
public class BooleanWaveRecorder extends Recorder implements Listener<Boolean>
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( BooleanWaveRecorder.class );
|
||||
|
||||
private AudioFormat mAudioFormat;
|
||||
private boolean mRunning = false;
|
||||
private boolean mPaused = false;
|
||||
@@ -117,7 +122,8 @@ public class BooleanWaveRecorder extends Recorder implements Listener<Boolean>
|
||||
|
||||
if( !success )
|
||||
{
|
||||
Log.error( "Wave recorder buffer overflow - throwing away " + buffer.capacity() + " samples" );
|
||||
mLog.error( "Wave recorder buffer overflow - throwing away " +
|
||||
buffer.capacity() + " samples" );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -137,7 +143,8 @@ public class BooleanWaveRecorder extends Recorder implements Listener<Boolean>
|
||||
if( !mToWriteBufferQueue.offer( mCurrentBuffer.get() ) )
|
||||
{
|
||||
//We had an overflow ... log it
|
||||
Log.error( "ShortWaveRecorder: buffer overflow - throwing away 1 second of sample data" );
|
||||
mLog.error( "ShortWaveRecorder: buffer overflow - throwing "
|
||||
+ "away 1 second of sample data" );
|
||||
}
|
||||
|
||||
mCurrentBuffer.reset();
|
||||
@@ -159,12 +166,13 @@ public class BooleanWaveRecorder extends Recorder implements Listener<Boolean>
|
||||
}
|
||||
catch ( IOException ioe )
|
||||
{
|
||||
Log.error( "IOException while trying to write to the wave writer - " + ioe.getLocalizedMessage() );
|
||||
mLog.error( "IOException while trying to write to the "
|
||||
+ "wave writer", ioe );
|
||||
}
|
||||
catch ( InterruptedException e )
|
||||
{
|
||||
Log.error( "Oops ... error while processing the buffer queue for " +
|
||||
" the wave recorder - " + e.getLocalizedMessage() );
|
||||
mLog.error( "Oops ... error while processing the buffer "
|
||||
+ "queue for the wave recorder", e );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,7 +23,9 @@ import java.util.concurrent.LinkedBlockingQueue;
|
||||
|
||||
import javax.sound.sampled.AudioFormat;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import record.Recorder;
|
||||
import record.RecorderType;
|
||||
import sample.Listener;
|
||||
@@ -37,6 +39,9 @@ import buffer.ComplexSampleBufferAssembler;
|
||||
*/
|
||||
public class ComplexWaveRecorder extends Recorder implements Listener<ComplexSample>
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( ComplexWaveRecorder.class );
|
||||
|
||||
private AudioFormat mAudioFormat;
|
||||
private boolean mRunning = false;
|
||||
private boolean mPaused = false;
|
||||
@@ -119,7 +124,7 @@ public class ComplexWaveRecorder extends Recorder implements Listener<ComplexSam
|
||||
|
||||
if( !success )
|
||||
{
|
||||
Log.error( "Wave recorder buffer overflow - throwing away " +
|
||||
mLog.error( "Wave recorder buffer overflow - throwing away " +
|
||||
buffer.capacity() + " samples" );
|
||||
}
|
||||
}
|
||||
@@ -136,7 +141,7 @@ public class ComplexWaveRecorder extends Recorder implements Listener<ComplexSam
|
||||
if( !mToWriteBufferQueue.offer( mCurrentBuffer.get() ) )
|
||||
{
|
||||
//We had an overflow ... log it
|
||||
Log.error( "ComplexWaveRecorder: buffer overflow - throwing "
|
||||
mLog.error( "ComplexWaveRecorder: buffer overflow - throwing "
|
||||
+ "away 1 second of sample data" );
|
||||
}
|
||||
|
||||
@@ -159,14 +164,13 @@ public class ComplexWaveRecorder extends Recorder implements Listener<ComplexSam
|
||||
}
|
||||
catch ( IOException ioe )
|
||||
{
|
||||
Log.error( "IOException while trying to write to the wave "
|
||||
+ "writer - " + ioe.getLocalizedMessage() );
|
||||
mLog.error( "IOException while trying to write to the wave "
|
||||
+ "writer", ioe );
|
||||
}
|
||||
catch ( InterruptedException e )
|
||||
{
|
||||
Log.error( "Oops ... error while processing the buffer "
|
||||
+ "queue for the wave recorder - " +
|
||||
e.getLocalizedMessage() );
|
||||
mLog.error( "Oops ... error while processing the buffer "
|
||||
+ "queue for the wave recorder", e );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,7 +23,9 @@ import java.util.concurrent.LinkedBlockingQueue;
|
||||
|
||||
import javax.sound.sampled.AudioFormat;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import record.Recorder;
|
||||
import record.RecorderType;
|
||||
import sample.Listener;
|
||||
@@ -35,6 +37,9 @@ import buffer.FloatSampleBufferAssembler;
|
||||
*/
|
||||
public class FloatWaveRecorder extends Recorder implements Listener<Float>
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( FloatWaveRecorder.class );
|
||||
|
||||
private AudioFormat mAudioFormat;
|
||||
private boolean mRunning = false;
|
||||
private boolean mPaused = false;
|
||||
@@ -117,7 +122,7 @@ public class FloatWaveRecorder extends Recorder implements Listener<Float>
|
||||
|
||||
if( !success )
|
||||
{
|
||||
Log.error( "Wave recorder buffer overflow - throwing away " +
|
||||
mLog.error( "Wave recorder buffer overflow - throwing away " +
|
||||
buffer.capacity() + " samples" );
|
||||
}
|
||||
}
|
||||
@@ -134,7 +139,7 @@ public class FloatWaveRecorder extends Recorder implements Listener<Float>
|
||||
if( !mToWriteBufferQueue.offer( mCurrentBuffer.get() ) )
|
||||
{
|
||||
//We had an overflow ... log it
|
||||
Log.error( "FloatWaveRecorder: buffer overflow - throwing "
|
||||
mLog.error( "FloatWaveRecorder: buffer overflow - throwing "
|
||||
+ "away 1 second of sample data" );
|
||||
}
|
||||
|
||||
@@ -157,14 +162,13 @@ public class FloatWaveRecorder extends Recorder implements Listener<Float>
|
||||
}
|
||||
catch ( IOException ioe )
|
||||
{
|
||||
Log.error( "IOException while trying to write to the wave "
|
||||
+ "writer - " + ioe.getLocalizedMessage() );
|
||||
mLog.error( "IOException while trying to write to the wave "
|
||||
+ "writer", ioe );
|
||||
}
|
||||
catch ( InterruptedException e )
|
||||
{
|
||||
Log.error( "Oops ... error while processing the buffer "
|
||||
+ "queue for the wave recorder - " +
|
||||
e.getLocalizedMessage() );
|
||||
mLog.error( "Oops ... error while processing the buffer "
|
||||
+ "queue for the wave recorder", e );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,13 +17,17 @@
|
||||
******************************************************************************/
|
||||
package record.wave;
|
||||
|
||||
import gui.SDRTrunk;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.nio.ByteBuffer;
|
||||
import java.util.concurrent.LinkedBlockingQueue;
|
||||
|
||||
import javax.sound.sampled.AudioFormat;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import record.Recorder;
|
||||
import record.RecorderType;
|
||||
import util.waveaudio.WaveWriter;
|
||||
@@ -33,6 +37,9 @@ import util.waveaudio.WaveWriter;
|
||||
*/
|
||||
public class WaveRecorder extends Recorder
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( WaveRecorder.class );
|
||||
|
||||
private AudioFormat mAudioFormat;
|
||||
private boolean mRunning = false;
|
||||
private boolean mPaused = false;
|
||||
@@ -101,7 +108,8 @@ public class WaveRecorder extends Recorder
|
||||
|
||||
if( !success )
|
||||
{
|
||||
Log.error( "Wave recorder buffer overflow - throwing away " + buffer.capacity() + " samples" );
|
||||
mLog.error( "Wave recorder buffer overflow - throwing away " +
|
||||
buffer.capacity() + " samples" );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -121,12 +129,13 @@ public class WaveRecorder extends Recorder
|
||||
}
|
||||
catch ( IOException ioe )
|
||||
{
|
||||
Log.error( "IOException while trying to write to the wave writer - " + ioe.getLocalizedMessage() );
|
||||
mLog.error( "IOException while trying to write to the "
|
||||
+ "wave writer", ioe );
|
||||
}
|
||||
catch ( InterruptedException e )
|
||||
{
|
||||
Log.error( "Oops ... error while processing the buffer queue for " +
|
||||
" the wave recorder - " + e.getLocalizedMessage() );
|
||||
mLog.error( "Oops ... error while processing the buffer"
|
||||
+ " queue for the wave recorder", e );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,8 +19,6 @@ package sample.complex;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
import log.Log;
|
||||
|
||||
/**
|
||||
* ComplexSample for handling left/right channel audio, or inphase/quadrature
|
||||
* samples, etc.
|
||||
|
||||
@@ -17,9 +17,13 @@
|
||||
******************************************************************************/
|
||||
package sample.complex;
|
||||
|
||||
import gui.SDRTrunk;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import sample.Listener;
|
||||
import source.tuner.FrequencyChangeListener;
|
||||
import buffer.FloatAveragingBuffer;
|
||||
@@ -28,6 +32,9 @@ public class ComplexSampleRateCounter implements Listener<ComplexSample>,
|
||||
ComplexSampleListListener,
|
||||
FrequencyChangeListener
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( ComplexSampleRateCounter.class );
|
||||
|
||||
private int mCounter;
|
||||
private int mAverageCounter;
|
||||
private int mExpectedSampleRate;
|
||||
@@ -44,7 +51,7 @@ public class ComplexSampleRateCounter implements Listener<ComplexSample>,
|
||||
|
||||
mLastRun = System.currentTimeMillis();
|
||||
|
||||
Log.info( "Complex Sample Rate Counter started ...." );
|
||||
mLog.info( "Complex Sample Rate Counter started ...." );
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -65,7 +72,7 @@ public class ComplexSampleRateCounter implements Listener<ComplexSample>,
|
||||
|
||||
mAverageCounter++;
|
||||
|
||||
Log.info( "Complex Sample Rate Avg " + mAverageCounter +
|
||||
mLog.info( "Complex Sample Rate Avg " + mAverageCounter +
|
||||
" current [" + elapsed + " ms/" + average +
|
||||
" hz] average [" + runningAverage + " hz] expected [" +
|
||||
mExpectedSampleRate + " hz] over [" +
|
||||
@@ -91,7 +98,7 @@ public class ComplexSampleRateCounter implements Listener<ComplexSample>,
|
||||
|
||||
mAverageCounter++;
|
||||
|
||||
Log.info( "Complex Sample Rate Avg " + mAverageCounter +
|
||||
mLog.info( "Complex Sample Rate Avg " + mAverageCounter +
|
||||
" current [" + elapsed + " ms/" + average +
|
||||
" hz] average [" + runningAverage + " hz] expected [" +
|
||||
mExpectedSampleRate + " hz] over [" +
|
||||
|
||||
@@ -37,11 +37,12 @@ import javax.xml.bind.JAXBException;
|
||||
import javax.xml.bind.Marshaller;
|
||||
import javax.xml.bind.Unmarshaller;
|
||||
|
||||
import log.Log;
|
||||
import map.DefaultIcon;
|
||||
import map.MapIcon;
|
||||
|
||||
import org.jdesktop.swingx.mapviewer.GeoPosition;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import properties.SystemProperties;
|
||||
import settings.ColorSetting.ColorSettingName;
|
||||
@@ -56,6 +57,9 @@ import source.tuner.rtl.r820t.R820TTunerConfiguration;
|
||||
|
||||
public class SettingsManager
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( SettingsManager.class );
|
||||
|
||||
private Settings mSettings = new Settings();
|
||||
|
||||
private ArrayList<SettingChangeListener> mListeners =
|
||||
@@ -441,7 +445,7 @@ public class SettingsManager
|
||||
}
|
||||
|
||||
/* Something happened ... the above should always return an icon */
|
||||
Log.error( "SettingsManager - couldn't return an icon named [" +
|
||||
mLog.error( "SettingsManager - couldn't return an icon named [" +
|
||||
name + "] of heigh [" + height + "]" );
|
||||
|
||||
return null;
|
||||
@@ -697,8 +701,8 @@ public class SettingsManager
|
||||
}
|
||||
catch( Exception e )
|
||||
{
|
||||
Log.error( "SettingsManager - couldn't create file to save "
|
||||
+ "settings [" + filePath.toString() + "]" );
|
||||
mLog.error( "SettingsManager - couldn't create file to save "
|
||||
+ "settings [" + filePath.toString() + "]", e );
|
||||
}
|
||||
|
||||
OutputStream out = null;
|
||||
@@ -719,13 +723,13 @@ public class SettingsManager
|
||||
}
|
||||
catch ( JAXBException e )
|
||||
{
|
||||
Log.error( "SettingsManager - jaxb exception while saving " +
|
||||
"settings: " + e.getLocalizedMessage() );
|
||||
mLog.error( "SettingsManager - jaxb exception while saving " +
|
||||
"settings", e );
|
||||
}
|
||||
}
|
||||
catch ( Exception e )
|
||||
{
|
||||
Log.error( "SettingsManager - coulcn't open outputstream to " +
|
||||
mLog.error( "SettingsManager - coulcn't open outputstream to " +
|
||||
"save settings [" + filePath.toString() + "]" );
|
||||
}
|
||||
finally
|
||||
@@ -752,7 +756,7 @@ public class SettingsManager
|
||||
{
|
||||
if( Files.exists( settingsPath ) )
|
||||
{
|
||||
Log.info( "SettingsManager - loading settings file [" +
|
||||
mLog.info( "SettingsManager - loading settings file [" +
|
||||
settingsPath.toString() + "]" );
|
||||
|
||||
JAXBContext context = null;
|
||||
@@ -773,16 +777,14 @@ public class SettingsManager
|
||||
}
|
||||
catch ( JAXBException e )
|
||||
{
|
||||
Log.error( "SettingsManager - jaxb exception while loading " +
|
||||
"settings: " + e.getLocalizedMessage() );
|
||||
|
||||
e.printStackTrace();
|
||||
mLog.error( "SettingsManager - jaxb exception while loading " +
|
||||
"settings", e );
|
||||
}
|
||||
}
|
||||
catch ( Exception e )
|
||||
{
|
||||
Log.error( "SettingsManager - coulcn't open inputstream to " +
|
||||
"load settings [" + settingsPath.toString() + "]" );
|
||||
mLog.error( "SettingsManager - coulcn't open inputstream to " +
|
||||
"load settings [" + settingsPath.toString() + "]", e );
|
||||
}
|
||||
finally
|
||||
{
|
||||
@@ -794,16 +796,15 @@ public class SettingsManager
|
||||
}
|
||||
catch ( IOException e )
|
||||
{
|
||||
Log.error( "SettingsManager - exception while closing " +
|
||||
"the settings file inputstream reader - " +
|
||||
e.getLocalizedMessage() );
|
||||
mLog.error( "SettingsManager - exception while closing " +
|
||||
"the settings file inputstream reader", e );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.info( "SettingsManager - settings does not exist [" +
|
||||
mLog.info( "SettingsManager - settings does not exist [" +
|
||||
settingsPath.toString() + "]" );
|
||||
}
|
||||
|
||||
|
||||
@@ -28,7 +28,9 @@ import javax.sound.sampled.Line;
|
||||
import javax.sound.sampled.Mixer;
|
||||
import javax.sound.sampled.TargetDataLine;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.config.SourceConfigMixer;
|
||||
import source.config.SourceConfiguration;
|
||||
import source.tuner.MixerTunerDataLine;
|
||||
@@ -37,6 +39,9 @@ import controller.channel.ProcessingChain;
|
||||
|
||||
public class MixerManager
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( MixerManager.class );
|
||||
|
||||
private static MixerManager sInstance = null;
|
||||
|
||||
private HashMap<String,TargetDataLine> mMixerLines =
|
||||
@@ -129,7 +134,7 @@ public class MixerManager
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( "MixerManager - loading system mixer devices\n" );
|
||||
sb.append( "loading system mixer devices\n" );
|
||||
|
||||
for( Mixer.Info mixerInfo: AudioSystem.getMixerInfo() )
|
||||
{
|
||||
@@ -189,7 +194,7 @@ public class MixerManager
|
||||
}
|
||||
}
|
||||
|
||||
Log.info( sb.toString() );
|
||||
mLog.info( sb.toString() );
|
||||
}
|
||||
|
||||
private TargetDataLine getTargetDataLine( Mixer.Info mixerInfo, AudioFormat format )
|
||||
@@ -254,5 +259,4 @@ public class MixerManager
|
||||
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -27,13 +27,18 @@ import javax.sound.sampled.AudioSystem;
|
||||
import javax.sound.sampled.LineUnavailableException;
|
||||
import javax.sound.sampled.TargetDataLine;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import sample.Listener;
|
||||
import source.FloatArraySource;
|
||||
import source.SourceException;
|
||||
|
||||
public class MixerSource extends FloatArraySource
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( MixerSource.class );
|
||||
|
||||
private long mFrequency = 0;
|
||||
private int mBufferSize = 16384;
|
||||
|
||||
@@ -174,7 +179,7 @@ public class MixerSource extends FloatArraySource
|
||||
{
|
||||
mRunning.set( false );
|
||||
|
||||
Log.error( "ComplexMixerSource - mixer target data line"
|
||||
mLog.error( "ComplexMixerSource - mixer target data line"
|
||||
+ " is null" );
|
||||
}
|
||||
else
|
||||
@@ -201,9 +206,8 @@ public class MixerSource extends FloatArraySource
|
||||
}
|
||||
catch ( LineUnavailableException e )
|
||||
{
|
||||
Log.error( "ComplexMixerSource - mixer target data line"
|
||||
+ "not available to read data from - " +
|
||||
e.getLocalizedMessage() );
|
||||
mLog.error( "ComplexMixerSource - mixer target data line"
|
||||
+ "not available to read data from", e );
|
||||
|
||||
mRunning.set( false );
|
||||
}
|
||||
@@ -224,9 +228,8 @@ public class MixerSource extends FloatArraySource
|
||||
}
|
||||
catch ( Exception e )
|
||||
{
|
||||
Log.error( "ComplexMixerSource - error while reading"
|
||||
+ "from the mixer target data line - " +
|
||||
e.getLocalizedMessage() );
|
||||
mLog.error( "ComplexMixerSource - error while reading"
|
||||
+ "from the mixer target data line", e );
|
||||
|
||||
mRunning.set( false );
|
||||
}
|
||||
|
||||
@@ -17,11 +17,15 @@
|
||||
******************************************************************************/
|
||||
package source.recording;
|
||||
|
||||
import gui.SDRTrunk;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import settings.SettingsManager;
|
||||
import source.Source;
|
||||
import source.SourceException;
|
||||
@@ -33,6 +37,9 @@ import controller.channel.ProcessingChain;
|
||||
|
||||
public class RecordingSourceManager
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( RecordingSourceManager.class );
|
||||
|
||||
private ResourceManager mResourceManager;
|
||||
|
||||
private ArrayList<Recording> mRecordings = new ArrayList<Recording>();
|
||||
@@ -138,7 +145,8 @@ public class RecordingSourceManager
|
||||
ArrayList<RecordingConfiguration> recordingConfigurations =
|
||||
settingsManager.getRecordingConfigurations();
|
||||
|
||||
Log.info( "RecordingSourceManager - discovered [" + recordingConfigurations.size() + "] recording configurations" );
|
||||
mLog.info( "RecordingSourceManager - discovered [" +
|
||||
recordingConfigurations.size() + "] recording configurations" );
|
||||
|
||||
for( RecordingConfiguration config: recordingConfigurations )
|
||||
{
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
******************************************************************************/
|
||||
package source.tuner;
|
||||
|
||||
import log.Log;
|
||||
import sample.Listener;
|
||||
import sample.complex.ComplexSample;
|
||||
import sample.complex.ComplexSampleUtils;
|
||||
@@ -86,8 +85,6 @@ public class NumericallyControlledOscillator implements Listener<ComplexSample>,
|
||||
*/
|
||||
public void setFrequency( long frequency )
|
||||
{
|
||||
Log.info( "NumericallyControlledOscillator - setting sine wave gen to freq:" + frequency );
|
||||
|
||||
mFrequency = frequency;
|
||||
mSineWaveGenerator.setFrequency( frequency );
|
||||
}
|
||||
|
||||
@@ -22,13 +22,18 @@ import java.util.Collections;
|
||||
import java.util.Iterator;
|
||||
import java.util.concurrent.RejectedExecutionException;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.SourceException;
|
||||
import source.tuner.FrequencyController.Tunable;
|
||||
import controller.ThreadPoolManager;
|
||||
|
||||
public abstract class TunerController implements Tunable
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( TunerController.class );
|
||||
|
||||
/* List of currently tuned channels being served to demod channels */
|
||||
protected ArrayList<TunerChannel> mTunedChannels =
|
||||
new ArrayList<TunerChannel>();
|
||||
@@ -176,7 +181,7 @@ public abstract class TunerController implements Tunable
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.error( "Tuner Controller - couldn't find the tuned channel "
|
||||
mLog.error( "Tuner Controller - couldn't find the tuned channel "
|
||||
+ "to release it" );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,7 +29,9 @@ import javax.usb.UsbHostManager;
|
||||
import javax.usb.UsbHub;
|
||||
import javax.usb.UsbServices;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.Source;
|
||||
import source.SourceException;
|
||||
import source.config.SourceConfigTuner;
|
||||
@@ -48,6 +50,9 @@ import controller.channel.ProcessingChain;
|
||||
|
||||
public class TunerManager
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( TunerManager.class );
|
||||
|
||||
private static final String sLOADED = "\t[LOADED]\t";
|
||||
private static final String sNOT_LOADED = "\t[NOT LOADED]\t";
|
||||
|
||||
@@ -90,14 +95,12 @@ public class TunerManager
|
||||
}
|
||||
catch ( RejectedExecutionException ree )
|
||||
{
|
||||
Log.error( "TunerManager - couldn't provide tuner channel "
|
||||
+ "source - " + ree.getLocalizedMessage() );
|
||||
mLog.error( "couldn't provide tuner channel source", ree );
|
||||
}
|
||||
catch ( SourceException e )
|
||||
{
|
||||
Log.error( "TunerManager - error obtaining channel " +
|
||||
"from tuner [" + tuner.getName() + "] - "
|
||||
+ e.getLocalizedMessage() );
|
||||
mLog.error( "error obtaining channel from tuner [" +
|
||||
tuner.getName() + "]", e );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -125,11 +128,20 @@ public class TunerManager
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
||||
sb.append( "Tuner Manager - discovered [" + devices.size() +
|
||||
"] USB tuner devices\n" );
|
||||
sb.append( "discovered and using [" + devices.size() +
|
||||
"] available tuner devices\n" );
|
||||
|
||||
mLog.info( "inspecting [" + devices.size() + "] available usb tuner devices" );
|
||||
|
||||
int counter = 0;
|
||||
|
||||
for( USBTunerDevice device: devices )
|
||||
{
|
||||
counter++;
|
||||
|
||||
mLog.info( "inspecting usb device [" + counter + "] tuner class: "
|
||||
+ device.getTunerClass().toString() );
|
||||
|
||||
String status = sNOT_LOADED;
|
||||
String name = "Unknown";
|
||||
String reason = "No device driver class available";
|
||||
@@ -252,7 +264,9 @@ public class TunerManager
|
||||
tunerType = RTL2832TunerController.identifyTunerType( device );
|
||||
}
|
||||
|
||||
Log.debug( "TunerManager - identified tuner class [" + tunerClass.toString() + "] with tuner type [" + tunerType.toString() + "]" );
|
||||
mLog.debug( "identified tuner class [" +
|
||||
tunerClass.toString() + "] with tuner type [" +
|
||||
tunerType.toString() + "]" );
|
||||
|
||||
switch( tunerType )
|
||||
{
|
||||
@@ -288,13 +302,14 @@ public class TunerManager
|
||||
}
|
||||
break;
|
||||
case RAFAELMICRO_R820T:
|
||||
Log.debug( "TunerManager - attempting to construct R820T tuner controller" );
|
||||
mLog.debug( "attempting to construct R820T "
|
||||
+ "tuner controller" );
|
||||
try
|
||||
{
|
||||
R820TTunerController controller =
|
||||
new R820TTunerController( device );
|
||||
|
||||
Log.debug( "TunerManager - init() R820T tuner controller" );
|
||||
mLog.debug( "initializing R820T tuner controller" );
|
||||
controller.init();
|
||||
|
||||
RTL2832Tuner rtlTuner =
|
||||
@@ -306,12 +321,13 @@ public class TunerManager
|
||||
|
||||
if( config != null )
|
||||
{
|
||||
Log.debug( "TunerManager - applying tuner config to R820T tuner" );
|
||||
mLog.debug( "applying tuner config to R820T tuner" );
|
||||
rtlTuner.apply( config );
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.debug( "TunerManager - R820T tuner config was null - not applied" );
|
||||
mLog.debug( "R820T tuner config was "
|
||||
+ "null - not applied" );
|
||||
}
|
||||
|
||||
mTuners.add( rtlTuner );
|
||||
@@ -325,7 +341,7 @@ public class TunerManager
|
||||
reason = "Error constructing R820T tuner "
|
||||
+ "controller - " + se.getLocalizedMessage();
|
||||
|
||||
Log.error( "TunerManager - error constructing tuner", se );
|
||||
mLog.error( "error constructing tuner", se );
|
||||
}
|
||||
break;
|
||||
case FITIPOWER_FC0012:
|
||||
@@ -372,8 +388,8 @@ public class TunerManager
|
||||
sb.append( "\n" );
|
||||
}
|
||||
|
||||
Log.header( "Configuring USB Tuners" );
|
||||
Log.info( sb.toString() );
|
||||
mLog.info( "Configuring USB Tuners" );
|
||||
mLog.info( sb.toString() );
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -385,8 +401,8 @@ public class TunerManager
|
||||
|
||||
List<UsbDevice> devices = getUSBDevices();
|
||||
|
||||
sb.append( "TunerManager - discovered [" + devices.size() +
|
||||
"] attached usb devices\n" );
|
||||
sb.append( "discovered [" + devices.size() +
|
||||
"] attached USB devices\n" );
|
||||
|
||||
ArrayList<USBTunerDevice> tuners = new ArrayList<USBTunerDevice>();
|
||||
|
||||
@@ -416,8 +432,8 @@ public class TunerManager
|
||||
sb.append( "\n" );
|
||||
}
|
||||
|
||||
Log.header( "USB Device Discovery" );
|
||||
Log.info( sb.toString() );
|
||||
mLog.info( "USB Device Discovery" );
|
||||
mLog.info( sb.toString() );
|
||||
|
||||
return tuners;
|
||||
}
|
||||
@@ -437,13 +453,11 @@ public class TunerManager
|
||||
}
|
||||
catch( SecurityException e )
|
||||
{
|
||||
Log.error( "TunerManager - security exception while getting "
|
||||
+ "USB devices" );
|
||||
mLog.error( "security exception while getting USB devices", e );
|
||||
}
|
||||
catch( UsbException e )
|
||||
{
|
||||
Log.error( "TunerManager - usb exception while getting USB "
|
||||
+ "devices - " + e.getLocalizedMessage() );
|
||||
mLog.error( "usb exception while getting USB devices", e );
|
||||
}
|
||||
|
||||
return devices;
|
||||
|
||||
@@ -25,14 +25,19 @@ import javax.swing.JMenuItem;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.JPopupMenu;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.SourceException;
|
||||
import spectrum.SpectrumFrame;
|
||||
import controller.BaseNode;
|
||||
|
||||
public class TunerNode extends BaseNode implements FrequencyChangeListener
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( TunerNode.class );
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
private static DecimalFormat FREQUENCY_FORMAT = new DecimalFormat( "0.00000" );
|
||||
private static DecimalFormat SAMPLE_RATE_FORMAT = new DecimalFormat( "0.000" );
|
||||
|
||||
@@ -52,8 +57,8 @@ public class TunerNode extends BaseNode implements FrequencyChangeListener
|
||||
}
|
||||
catch ( SourceException e )
|
||||
{
|
||||
Log.error( "TunerNode - error reading frequency and sample rate "
|
||||
+ "from tuner - " + e.getLocalizedMessage() );
|
||||
mLog.error( "TunerNode - error reading frequency and sample rate "
|
||||
+ "from tuner", e );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -21,7 +21,9 @@ import java.util.concurrent.RejectedExecutionException;
|
||||
|
||||
import javax.swing.JPanel;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.SourceException;
|
||||
import source.tuner.Tuner;
|
||||
import source.tuner.TunerChannel;
|
||||
@@ -35,6 +37,8 @@ import controller.ThreadPoolManager;
|
||||
|
||||
public class B100Tuner extends Tuner
|
||||
{
|
||||
private final static Logger mLog = LoggerFactory.getLogger( B100Tuner.class );
|
||||
|
||||
private USBTunerDevice mDevice;
|
||||
|
||||
public B100Tuner( USBTunerDevice device )
|
||||
@@ -68,7 +72,7 @@ public class B100Tuner extends Tuner
|
||||
@Override
|
||||
public void apply( TunerConfiguration config ) throws SourceException
|
||||
{
|
||||
Log.error( "B100 Tuner - can't apply tuner configuration" );
|
||||
mLog.error( "B100 Tuner - can't apply tuner configuration" );
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -27,7 +27,9 @@ import javax.usb.UsbInterface;
|
||||
import javax.usb.UsbInterfacePolicy;
|
||||
import javax.usb.UsbPipe;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.SourceException;
|
||||
import source.tuner.TunerClass;
|
||||
import source.tuner.TunerConfiguration;
|
||||
@@ -39,6 +41,9 @@ import controller.ResourceManager;
|
||||
|
||||
public abstract class FCDTunerController extends TunerController
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( FCDTunerController.class );
|
||||
|
||||
public final static int sINT_NULL_VALUE = -1;
|
||||
public final static long sLONG_NULL_VALUE = -1l;
|
||||
public final static double sDOUBLE_NULL_VALUE = -1.0D;
|
||||
@@ -208,7 +213,8 @@ public abstract class FCDTunerController extends TunerController
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.info( "Attempted to claim the Funcube HID interface, but it's in use by another program" );
|
||||
mLog.info( "Attempted to claim the Funcube HID interface, but "
|
||||
+ "it's in use by another program" );
|
||||
}
|
||||
|
||||
return claimed;
|
||||
@@ -228,7 +234,8 @@ public abstract class FCDTunerController extends TunerController
|
||||
}
|
||||
catch ( Exception e )
|
||||
{
|
||||
Log.error( "Exception thrown while releasing the funcube HID interface" + e.getLocalizedMessage() );
|
||||
mLog.error( "Exception thrown while releasing the funcube HID "
|
||||
+ "interface", e );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -345,13 +352,13 @@ public abstract class FCDTunerController extends TunerController
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.error( "FCD Pro Tuner Controller - couldn't gain access " +
|
||||
mLog.error( "FCD Pro Tuner Controller - couldn't gain access " +
|
||||
"to the USB in/out endpoints or pipes." );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.error( "FCD Pro Tuner Controller - couldn't claim the USB " +
|
||||
mLog.error( "FCD Pro Tuner Controller - couldn't claim the USB " +
|
||||
"interface. Check to see if another program is using it." );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,7 +25,6 @@ import java.awt.event.FocusListener;
|
||||
import java.text.DecimalFormat;
|
||||
import java.util.ArrayList;
|
||||
|
||||
import javax.swing.BorderFactory;
|
||||
import javax.swing.ComboBoxModel;
|
||||
import javax.swing.DefaultComboBoxModel;
|
||||
import javax.swing.JButton;
|
||||
@@ -43,21 +42,28 @@ import javax.swing.event.ChangeListener;
|
||||
import javax.usb.UsbClaimException;
|
||||
import javax.usb.UsbException;
|
||||
|
||||
import com.jidesoft.swing.JideTabbedPane;
|
||||
|
||||
import log.Log;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.SourceException;
|
||||
import source.tuner.TunerConfiguration;
|
||||
import source.tuner.TunerType;
|
||||
import source.tuner.fcd.proV1.FCD1TunerController.LNAEnhance;
|
||||
import source.tuner.fcd.proV1.FCD1TunerController.LNAGain;
|
||||
import source.tuner.fcd.proV1.FCD1TunerController.MixerGain;
|
||||
|
||||
import com.jidesoft.swing.JideTabbedPane;
|
||||
|
||||
import controller.ResourceManager;
|
||||
|
||||
public class FCD1TunerConfigurationPanel extends JPanel
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( FCD1TunerConfigurationPanel.class );
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
private ResourceManager mResourceManager;
|
||||
private FCD1TunerController mController;
|
||||
|
||||
@@ -180,10 +186,9 @@ public class FCD1TunerConfigurationPanel extends JPanel
|
||||
"FCD Pro Tuner Controller - cannot claim FCD "
|
||||
+ "Controller to apply LNA gain [" + gain.toString() + "]" );
|
||||
|
||||
Log.error( "FuncubeDonglePro Controller - usb claim "
|
||||
mLog.error( "FuncubeDonglePro Controller - usb claim "
|
||||
+ "exception while applying LNA gain value [" +
|
||||
gain.toString() + "] - " +
|
||||
e1.getLocalizedMessage() );
|
||||
gain.toString() + "]", e1 );
|
||||
}
|
||||
catch ( UsbException e1 )
|
||||
{
|
||||
@@ -192,10 +197,9 @@ public class FCD1TunerConfigurationPanel extends JPanel
|
||||
"FCD Pro Tuner Controller - FCD Controller "
|
||||
+ "cannot apply LNA gain [" + gain.toString() + "]" );
|
||||
|
||||
Log.error( "FuncubeDonglePro Controller - "
|
||||
mLog.error( "FuncubeDonglePro Controller - "
|
||||
+ "exception while applying LNA gain value [" +
|
||||
gain.toString() + "] - " +
|
||||
e1.getLocalizedMessage() );
|
||||
gain.toString() + "]", e1 );
|
||||
}
|
||||
|
||||
save();
|
||||
@@ -235,10 +239,9 @@ public class FCD1TunerConfigurationPanel extends JPanel
|
||||
"FCD Pro Tuner Controller - cannot claim FCD "
|
||||
+ "Controller to apply LNA enhance [" + enhance.toString() + "]" );
|
||||
|
||||
Log.error( "FuncubeDonglePro Controller - usb claim "
|
||||
mLog.error( "FuncubeDonglePro Controller - usb claim "
|
||||
+ "exception while applying LNA enhance value [" +
|
||||
enhance.toString() + "] - " +
|
||||
e1.getLocalizedMessage() );
|
||||
enhance.toString() + "]", e1 );
|
||||
}
|
||||
catch ( UsbException e1 )
|
||||
{
|
||||
@@ -247,10 +250,9 @@ public class FCD1TunerConfigurationPanel extends JPanel
|
||||
"FCD Pro Tuner Controller - FCD Controller "
|
||||
+ "cannot apply LNA enhance [" + enhance.toString() + "]" );
|
||||
|
||||
Log.error( "FuncubeDonglePro Controller - "
|
||||
mLog.error( "FuncubeDonglePro Controller - "
|
||||
+ "exception while applying LNA enhance value [" +
|
||||
enhance.toString() + "] - " +
|
||||
e1.getLocalizedMessage() );
|
||||
enhance.toString() + "]", e1 );
|
||||
}
|
||||
|
||||
save();
|
||||
@@ -289,10 +291,9 @@ public class FCD1TunerConfigurationPanel extends JPanel
|
||||
"FCD Pro Tuner Controller - cannot claim FCD "
|
||||
+ "Controller to apply Mixer gain [" + gain.toString() + "]" );
|
||||
|
||||
Log.error( "FuncubeDonglePro Controller - usb claim "
|
||||
mLog.error( "FuncubeDonglePro Controller - usb claim "
|
||||
+ "exception while applying Mixer gain value [" +
|
||||
gain.toString() + "] - " +
|
||||
e1.getLocalizedMessage() );
|
||||
gain.toString() + "]", e1 );
|
||||
}
|
||||
catch ( UsbException e1 )
|
||||
{
|
||||
@@ -301,10 +302,9 @@ public class FCD1TunerConfigurationPanel extends JPanel
|
||||
"FCD Pro Tuner Controller - FCD Controller "
|
||||
+ "cannot apply Mixer gain [" + gain.toString() + "]" );
|
||||
|
||||
Log.error( "FuncubeDonglePro Controller - "
|
||||
mLog.error( "FuncubeDonglePro Controller - "
|
||||
+ "exception while applying Mixer gain value [" +
|
||||
gain.toString() + "] - " +
|
||||
e1.getLocalizedMessage() );
|
||||
gain.toString() + "]", e1 );
|
||||
}
|
||||
|
||||
save();
|
||||
@@ -363,9 +363,8 @@ public class FCD1TunerConfigurationPanel extends JPanel
|
||||
+ "apply frequency correction value: " + value +
|
||||
e1.getLocalizedMessage() );
|
||||
|
||||
Log.error( "FuncubeDonglePro Controller - couldn't apply "
|
||||
+ "frequency correction value: " + value +
|
||||
e1.getLocalizedMessage() );
|
||||
mLog.error( "FuncubeDonglePro Controller - couldn't apply "
|
||||
+ "frequency correction value: " + value, e1 );
|
||||
}
|
||||
}
|
||||
} );
|
||||
@@ -522,9 +521,8 @@ public class FCD1TunerConfigurationPanel extends JPanel
|
||||
+ "apply the tuner configuration settings - " +
|
||||
e1.getLocalizedMessage() );
|
||||
|
||||
Log.error( "FuncubeDonglePro Controller - couldn't apply "
|
||||
+ "config [" + config.getName() + "] - " +
|
||||
e1.getLocalizedMessage() );
|
||||
mLog.error( "FuncubeDonglePro Controller - couldn't apply "
|
||||
+ "config [" + config.getName() + "]", e1 );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -639,11 +637,10 @@ public class FCD1TunerConfigurationPanel extends JPanel
|
||||
+ mCorrectionComponent.toString() +
|
||||
" correction value [" + value + "]" );
|
||||
|
||||
Log.error( "FuncubeDonglePro Controller - usb claim "
|
||||
mLog.error( "FuncubeDonglePro Controller - usb claim "
|
||||
+ "exception while applying "
|
||||
+ mCorrectionComponent.toString()
|
||||
+ " correction value [" + value + "] - " +
|
||||
e1.getLocalizedMessage() );
|
||||
+ " correction value [" + value + "]", e1 );
|
||||
}
|
||||
catch ( UsbException e1 )
|
||||
{
|
||||
@@ -654,11 +651,10 @@ public class FCD1TunerConfigurationPanel extends JPanel
|
||||
+ mCorrectionComponent.toString() +
|
||||
" correction value [" + value + "]" );
|
||||
|
||||
Log.error( "FuncubeDonglePro Controller - usb "
|
||||
mLog.error( "FuncubeDonglePro Controller - usb "
|
||||
+ "exception while applying "
|
||||
+ mCorrectionComponent.toString()
|
||||
+ " correction value [" + value + "] - " +
|
||||
e1.getLocalizedMessage() );
|
||||
+ " correction value [" + value + "]", e1 );
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
@@ -21,7 +21,9 @@ import javax.swing.JPanel;
|
||||
import javax.usb.UsbClaimException;
|
||||
import javax.usb.UsbException;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.SourceException;
|
||||
import source.tuner.TunerClass;
|
||||
import source.tuner.TunerConfiguration;
|
||||
@@ -34,6 +36,9 @@ import controller.ResourceManager;
|
||||
|
||||
public class FCD1TunerController extends FCDTunerController
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( FCD1TunerController.class );
|
||||
|
||||
public static final int sMINIMUM_TUNABLE_FREQUENCY = 64000000;
|
||||
public static final int sMAXIMUM_TUNABLE_FREQUENCY = 1700000000;
|
||||
public static final int sSAMPLE_RATE = 96000;
|
||||
@@ -153,7 +158,7 @@ public class FCD1TunerController extends FCDTunerController
|
||||
{
|
||||
int gain = (int)send( FCDCommand.APP_GET_LNA_GAIN );
|
||||
|
||||
Log.info( "FCD1: lna gain setting is:" + gain );
|
||||
mLog.info( "FCD1: lna gain setting is:" + gain );
|
||||
|
||||
mLNAGain = LNAGain.valueOf( gain );
|
||||
}
|
||||
@@ -301,7 +306,7 @@ public class FCD1TunerController extends FCDTunerController
|
||||
|
||||
mPhaseCorrection = ( (double)phase / (double)Short.MAX_VALUE );
|
||||
|
||||
Log.info( "FCD1: correction:" + correction + " gain:" + gain + " phase:" + phase );
|
||||
mLog.info( "FCD1: correction:" + correction + " gain:" + gain + " phase:" + phase );
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -440,7 +445,7 @@ public class FCD1TunerController extends FCDTunerController
|
||||
{
|
||||
int enhance = (int)send( FCDCommand.APP_GET_LNA_ENHANCE );
|
||||
|
||||
Log.info( "FCD1: lna enhance setting is: " + enhance );
|
||||
mLog.info( "FCD1: lna enhance setting is: " + enhance );
|
||||
|
||||
mLNAEnhance = LNAEnhance.valueOf( enhance );
|
||||
}
|
||||
@@ -460,7 +465,7 @@ public class FCD1TunerController extends FCDTunerController
|
||||
{
|
||||
int gain = (int)send( FCDCommand.APP_GET_MIXER_GAIN );
|
||||
|
||||
Log.info( "FCD1: mixer gain setting is:" + gain );
|
||||
mLog.info( "FCD1: mixer gain setting is:" + gain );
|
||||
|
||||
mMixerGain = MixerGain.valueOf( gain );
|
||||
}
|
||||
|
||||
@@ -17,27 +17,32 @@
|
||||
******************************************************************************/
|
||||
package source.tuner.fcd.proV1;
|
||||
|
||||
import java.awt.Color;
|
||||
|
||||
import gui.control.JFrequencyControl;
|
||||
|
||||
import javax.swing.BorderFactory;
|
||||
import java.awt.Color;
|
||||
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JPanel;
|
||||
|
||||
import com.jidesoft.swing.JideTabbedPane;
|
||||
|
||||
import log.Log;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.SourceException;
|
||||
import source.tuner.FrequencyChangeListener;
|
||||
import source.tuner.fcd.FCDTuner;
|
||||
import source.tuner.fcd.FCDTunerDetailsPanel;
|
||||
|
||||
import com.jidesoft.swing.JideTabbedPane;
|
||||
|
||||
import controller.ResourceManager;
|
||||
|
||||
public class FCD1TunerEditorPanel extends JPanel implements FrequencyChangeListener
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( FCD1TunerEditorPanel.class );
|
||||
|
||||
private FCDTuner mTuner;
|
||||
private FCD1TunerController mController;
|
||||
@@ -95,8 +100,8 @@ public class FCD1TunerEditorPanel extends JPanel implements FrequencyChangeListe
|
||||
}
|
||||
catch ( SourceException e )
|
||||
{
|
||||
Log.error( "FCTProController - error setting frequency [" +
|
||||
frequency + "] - " + e.getLocalizedMessage() );
|
||||
mLog.error( "FCTProController - error setting frequency [" +
|
||||
frequency + "]", e );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,7 +25,6 @@ import java.awt.event.FocusListener;
|
||||
import java.text.DecimalFormat;
|
||||
import java.util.ArrayList;
|
||||
|
||||
import javax.swing.BorderFactory;
|
||||
import javax.swing.ComboBoxModel;
|
||||
import javax.swing.DefaultComboBoxModel;
|
||||
import javax.swing.JButton;
|
||||
@@ -42,8 +41,11 @@ import javax.swing.SwingConstants;
|
||||
import javax.swing.event.ChangeEvent;
|
||||
import javax.swing.event.ChangeListener;
|
||||
|
||||
import log.Log;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.SourceException;
|
||||
import source.tuner.TunerConfiguration;
|
||||
import source.tuner.TunerConfigurationAssignment;
|
||||
@@ -52,7 +54,10 @@ import controller.ResourceManager;
|
||||
|
||||
public class FCD2TunerConfigurationPanel extends JPanel
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( FCD2TunerConfigurationPanel.class );
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
private ResourceManager mResourceManager;
|
||||
private FCD2TunerController mController;
|
||||
private FCD2TunerConfiguration mSelectedConfig;
|
||||
@@ -158,9 +163,8 @@ public class FCD2TunerConfigurationPanel extends JPanel
|
||||
+ "apply frequency correction value: " + value +
|
||||
e1.getLocalizedMessage() );
|
||||
|
||||
Log.error( "FuncubeDongleProPlus Controller - couldn't apply "
|
||||
+ "frequency correction value: " + value +
|
||||
e1.getLocalizedMessage() );
|
||||
mLog.error( "FuncubeDongleProPlus Controller - couldn't apply "
|
||||
+ "frequency correction value: " + value, e1 );
|
||||
}
|
||||
}
|
||||
} );
|
||||
@@ -330,9 +334,8 @@ public class FCD2TunerConfigurationPanel extends JPanel
|
||||
+ "apply the tuner configuration settings - " +
|
||||
e1.getLocalizedMessage() );
|
||||
|
||||
Log.error( "FuncubeDongleProPlus Controller - couldn't apply "
|
||||
+ "config [" + config.getName() + "] - " +
|
||||
e1.getLocalizedMessage() );
|
||||
mLog.error( "FuncubeDongleProPlus Controller - couldn't apply "
|
||||
+ "config [" + config.getName() + "]", e1 );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -21,7 +21,9 @@ import javax.swing.JPanel;
|
||||
import javax.usb.UsbClaimException;
|
||||
import javax.usb.UsbException;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.SourceException;
|
||||
import source.tuner.TunerClass;
|
||||
import source.tuner.TunerConfiguration;
|
||||
@@ -34,6 +36,9 @@ import controller.ResourceManager;
|
||||
|
||||
public class FCD2TunerController extends FCDTunerController
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( FCD2TunerController.class );
|
||||
|
||||
public static final int sMINIMUM_TUNABLE_FREQUENCY = 150000;
|
||||
public static final int sMAXIMUM_TUNABLE_FREQUENCY = 2050000000;
|
||||
public static final int sSAMPLE_RATE = 192000;
|
||||
@@ -162,14 +167,13 @@ public class FCD2TunerController extends FCDTunerController
|
||||
}
|
||||
catch ( UsbClaimException e )
|
||||
{
|
||||
Log.error( "FCTTunerController - couldn't claim funcube HID to"
|
||||
+ " get dc correction value" );
|
||||
mLog.error( "FCTTunerController - couldn't claim funcube HID to"
|
||||
+ " get dc correction value", e );
|
||||
}
|
||||
catch ( UsbException e )
|
||||
{
|
||||
Log.error( "FCTTunerController - error getting dc correction "
|
||||
+ "value - " + e.getLocalizedMessage() );
|
||||
|
||||
mLog.error( "FCTTunerController - error getting dc correction "
|
||||
+ "value", e );
|
||||
}
|
||||
|
||||
return dcCorrection;
|
||||
@@ -183,14 +187,13 @@ public class FCD2TunerController extends FCDTunerController
|
||||
}
|
||||
catch ( UsbClaimException e )
|
||||
{
|
||||
Log.error( "FCDTunerController - error claiming usb hid while "
|
||||
+ "trying to set dc correction to [" + value + "]" );
|
||||
mLog.error( "FCDTunerController - error claiming usb hid while "
|
||||
+ "trying to set dc correction to [" + value + "]", e );
|
||||
}
|
||||
catch ( UsbException e )
|
||||
{
|
||||
Log.error( "FCDTunerController - error while "
|
||||
+ "trying to set dc correction to [" + value + "] - " +
|
||||
e.getLocalizedMessage() );
|
||||
mLog.error( "FCDTunerController - error while "
|
||||
+ "trying to set dc correction to [" + value + "]", e );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -204,13 +207,13 @@ public class FCD2TunerController extends FCDTunerController
|
||||
}
|
||||
catch ( UsbClaimException e )
|
||||
{
|
||||
Log.error( "FCTTunerController - couldn't claim funcube HID to"
|
||||
+ " get iq correction value" );
|
||||
mLog.error( "FCTTunerController - couldn't claim funcube HID to"
|
||||
+ " get iq correction value", e );
|
||||
}
|
||||
catch ( UsbException e )
|
||||
{
|
||||
Log.error( "FCTTunerController - error getting iq correction "
|
||||
+ "value - " + e.getLocalizedMessage() );
|
||||
mLog.error( "FCTTunerController - error getting iq correction "
|
||||
+ "value", e );
|
||||
|
||||
}
|
||||
|
||||
@@ -225,14 +228,13 @@ public class FCD2TunerController extends FCDTunerController
|
||||
}
|
||||
catch ( UsbClaimException e )
|
||||
{
|
||||
Log.error( "FCDTunerController - error claiming usb hid while "
|
||||
+ "trying to set iq correction to [" + value + "]" );
|
||||
mLog.error( "FCDTunerController - error claiming usb hid while "
|
||||
+ "trying to set iq correction to [" + value + "]", e );
|
||||
}
|
||||
catch ( UsbException e )
|
||||
{
|
||||
Log.error( "FCDTunerController - error while "
|
||||
+ "trying to set iq correction to [" + value + "] - " +
|
||||
e.getLocalizedMessage() );
|
||||
mLog.error( "FCDTunerController - error while "
|
||||
+ "trying to set iq correction to [" + value + "]", e );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -17,26 +17,31 @@
|
||||
******************************************************************************/
|
||||
package source.tuner.fcd.proplusV2;
|
||||
|
||||
import java.awt.Color;
|
||||
|
||||
import gui.control.JFrequencyControl;
|
||||
|
||||
import javax.swing.BorderFactory;
|
||||
import java.awt.Color;
|
||||
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JPanel;
|
||||
|
||||
import com.jidesoft.swing.JideTabbedPane;
|
||||
|
||||
import log.Log;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.SourceException;
|
||||
import source.tuner.FrequencyChangeListener;
|
||||
import source.tuner.fcd.FCDTuner;
|
||||
import source.tuner.fcd.FCDTunerDetailsPanel;
|
||||
|
||||
import com.jidesoft.swing.JideTabbedPane;
|
||||
|
||||
import controller.ResourceManager;
|
||||
|
||||
public class FCD2TunerEditorPanel extends JPanel implements FrequencyChangeListener
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( FCD2TunerEditorPanel.class );
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private FCDTuner mTuner;
|
||||
@@ -94,8 +99,8 @@ public class FCD2TunerEditorPanel extends JPanel implements FrequencyChangeListe
|
||||
}
|
||||
catch ( SourceException e )
|
||||
{
|
||||
Log.error( "FCTProController - error setting frequency [" +
|
||||
frequency + "] - " + e.getLocalizedMessage() );
|
||||
mLog.error( "FCTProController - error setting frequency [" +
|
||||
frequency + "]", e );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,7 +22,9 @@ import java.util.concurrent.RejectedExecutionException;
|
||||
import javax.swing.JPanel;
|
||||
import javax.usb.UsbException;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import sample.Listener;
|
||||
import source.SourceException;
|
||||
import source.tuner.FrequencyChangeListener;
|
||||
@@ -38,6 +40,9 @@ import controller.ThreadPoolManager;
|
||||
|
||||
public class RTL2832Tuner extends Tuner
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( RTL2832Tuner.class );
|
||||
|
||||
private TunerClass mTunerClass;
|
||||
protected RTL2832TunerController mController;
|
||||
|
||||
@@ -98,8 +103,7 @@ public class RTL2832Tuner extends Tuner
|
||||
}
|
||||
catch( SourceException e )
|
||||
{
|
||||
Log.error( "RTL2832 Tuner - couldn't get sample rate - " +
|
||||
e.getLocalizedMessage() );
|
||||
mLog.error( "RTL2832 Tuner - couldn't get sample rate", e );
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -54,8 +54,8 @@ import javax.usb.event.UsbPipeErrorEvent;
|
||||
import javax.usb.event.UsbPipeListener;
|
||||
import javax.usb.util.DefaultUsbControlIrp;
|
||||
|
||||
import log.Log;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.usb4java.LibUsb;
|
||||
|
||||
import sample.Listener;
|
||||
@@ -68,6 +68,9 @@ import controller.ResourceManager;
|
||||
|
||||
public abstract class RTL2832TunerController extends TunerController
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( RTL2832TunerController.class );
|
||||
|
||||
public final static int sINT_NULL_VALUE = -1;
|
||||
public final static long sLONG_NULL_VALUE = -1l;
|
||||
public final static double sDOUBLE_NULL_VALUE = -1.0D;
|
||||
@@ -215,7 +218,7 @@ public abstract class RTL2832TunerController extends TunerController
|
||||
+ "set default sample rate", e );
|
||||
}
|
||||
|
||||
byte[] eeprom;
|
||||
byte[] eeprom = null;
|
||||
|
||||
try
|
||||
{
|
||||
@@ -224,8 +227,7 @@ public abstract class RTL2832TunerController extends TunerController
|
||||
}
|
||||
catch( Exception e )
|
||||
{
|
||||
throw new SourceException( "RTL2832 Tuner Controller - couldn't "
|
||||
+ "read EEPROM descriptor byte array", e );
|
||||
mLog.error( "error while reading the EEPROM device descriptor", e );
|
||||
}
|
||||
|
||||
try
|
||||
@@ -234,14 +236,15 @@ public abstract class RTL2832TunerController extends TunerController
|
||||
|
||||
if( eeprom == null )
|
||||
{
|
||||
Log.error( "RTL2832 Tuner Controller - eeprom byte array was "
|
||||
+ "null - constructed empty descriptor object" );
|
||||
mLog.error( "eeprom byte array was null - constructed "
|
||||
+ "empty descriptor object" );
|
||||
}
|
||||
}
|
||||
catch( Exception e )
|
||||
{
|
||||
throw new SourceException( "RTL2832 Tuner Controller - error "
|
||||
+ "constructing descriptor object from eeprom byte array", e );
|
||||
mLog.error( "error while constructing device descriptor using "
|
||||
+ "descriptor byte array " +
|
||||
( eeprom == null ? "[null]" : Arrays.toString( eeprom )), e );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -391,23 +394,23 @@ public abstract class RTL2832TunerController extends TunerController
|
||||
|
||||
if( claim( iface ) )
|
||||
{
|
||||
Log.debug( "RTL2832 - usb interface claimed" );
|
||||
mLog.debug( "usb interface claimed" );
|
||||
|
||||
/* Perform a dummy write to see if the device needs reset */
|
||||
writeRegister( device, Block.USB, Address.USB_SYSCTL.getAddress(), 0x09, 1 );
|
||||
|
||||
Log.debug( "RTL2832 - initializing baseband" );
|
||||
mLog.debug( "initializing baseband" );
|
||||
|
||||
/* Initialize the baseband */
|
||||
initBaseband( device );
|
||||
|
||||
Log.debug( "RTL2832 - enabling I2C repeater" );
|
||||
mLog.debug( "enabling I2C repeater" );
|
||||
|
||||
enableI2CRepeater( device, true );
|
||||
|
||||
boolean controlI2CRepeater = false;
|
||||
|
||||
Log.debug( "RTL2832 - testing for tuner types" );
|
||||
mLog.debug( "testing for tuner types" );
|
||||
|
||||
/* Test for each tuner type until we find the correct one */
|
||||
if( isE4000Tuner( device, controlI2CRepeater ) )
|
||||
@@ -435,19 +438,18 @@ public abstract class RTL2832TunerController extends TunerController
|
||||
tunerClass = TunerType.FITIPOWER_FC0012;
|
||||
}
|
||||
|
||||
Log.debug( "RTL2832 - disabling I2C repeater -- detected tuner type:" + tunerClass.toString() );
|
||||
mLog.debug( "disabling I2C repeater -- detected tuner type:" + tunerClass.toString() );
|
||||
|
||||
enableI2CRepeater( device, false );
|
||||
|
||||
Log.debug( "RTL2832 - releasing USB interface" );
|
||||
mLog.debug( "releasing USB interface" );
|
||||
|
||||
iface.release();
|
||||
}
|
||||
}
|
||||
catch( Exception e )
|
||||
{
|
||||
Log.error( "RTL2832TunerController - error while determining "
|
||||
+ "tuner type - ", e );
|
||||
mLog.error( "error while determining tuner type", e );
|
||||
}
|
||||
|
||||
return tunerClass;
|
||||
@@ -518,8 +520,8 @@ public abstract class RTL2832TunerController extends TunerController
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.error( "RTL2832 Tuner Controller - attempt to claim USB "
|
||||
+ "interface failed - in use by another application" );
|
||||
mLog.error( "attempt to claim USB interface failed - in use by "
|
||||
+ "another application" );
|
||||
}
|
||||
|
||||
return false;
|
||||
@@ -556,8 +558,7 @@ public abstract class RTL2832TunerController extends TunerController
|
||||
}
|
||||
catch ( Exception e )
|
||||
{
|
||||
Log.error( "RTL2832 Tuner Controller - attempt to release USB "
|
||||
+ "interface failed - " + e.getLocalizedMessage() );
|
||||
mLog.error( "attempt to release USB interface failed", e );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -962,7 +963,7 @@ public abstract class RTL2832TunerController extends TunerController
|
||||
protected static boolean isE4000Tuner( UsbDevice device,
|
||||
boolean controlI2CRepeater ) throws UsbClaimException
|
||||
{
|
||||
Log.debug( "RTL2832 - testing for E4000 tuner" );
|
||||
mLog.debug( "testing for E4000 tuner" );
|
||||
|
||||
try
|
||||
{
|
||||
@@ -1011,7 +1012,8 @@ public abstract class RTL2832TunerController extends TunerController
|
||||
boolean controlI2CRepeater )
|
||||
throws UsbClaimException
|
||||
{
|
||||
Log.debug( "RTL2832 - testing for F0013 tuner" );
|
||||
mLog.debug( "testing for F0013 tuner" );
|
||||
|
||||
try
|
||||
{
|
||||
int value = readI2CRegister( device, FC0013_I2C_ADDRESS,
|
||||
@@ -1068,7 +1070,8 @@ public abstract class RTL2832TunerController extends TunerController
|
||||
protected static boolean isR820TTuner( UsbDevice device,
|
||||
boolean controlI2CRepeater ) throws UsbClaimException
|
||||
{
|
||||
Log.debug( "RTL2832 - testing for R820T tuner" );
|
||||
mLog.debug( "testing for R820T tuner" );
|
||||
|
||||
try
|
||||
{
|
||||
int value = readI2CRegister( device, R820T_I2C_ADDRESS,
|
||||
@@ -1210,24 +1213,44 @@ public abstract class RTL2832TunerController extends TunerController
|
||||
* Label 4,5 ... (user defined)
|
||||
*/
|
||||
public byte[] readEEPROM( UsbDevice device, short offset, int length )
|
||||
throws IllegalArgumentException, UsbDisconnectedException, UsbException
|
||||
throws IllegalArgumentException
|
||||
{
|
||||
if( offset + length > 256 )
|
||||
{
|
||||
throw new IllegalArgumentException( "RTL2832 Tuner Controller - "
|
||||
+ "cannot read more than 256 bytes from EEPROM" );
|
||||
throw new IllegalArgumentException( "cannot read more than 256 "
|
||||
+ "bytes from EEPROM - requested to read to byte [" +
|
||||
( offset + length ) + "]" );
|
||||
}
|
||||
|
||||
byte[] data = new byte[ length ];
|
||||
byte[] onebyte = new byte[ 1 ];
|
||||
|
||||
/* Tell the RTL-2832 to address the EEPROM */
|
||||
writeRegister( device, Block.IIC, EEPROM_ADDRESS, (byte)offset, 1 );
|
||||
try
|
||||
{
|
||||
/* Tell the RTL-2832 to address the EEPROM */
|
||||
writeRegister( device, Block.IIC, EEPROM_ADDRESS, (byte)offset, 1 );
|
||||
}
|
||||
catch( UsbException e )
|
||||
{
|
||||
mLog.error( "usb error while attempting to set read address to "
|
||||
+ "EEPROM register, prior to reading the EEPROM device "
|
||||
+ "descriptor", e );
|
||||
}
|
||||
|
||||
for( int x = 0; x < length; x++ )
|
||||
{
|
||||
byte[] temp = read( device, Block.IIC, EEPROM_ADDRESS, onebyte );
|
||||
data[ x ] = temp[ 0 ];
|
||||
try
|
||||
{
|
||||
byte[] temp = read( device, Block.IIC, EEPROM_ADDRESS, onebyte );
|
||||
data[ x ] = temp[ 0 ];
|
||||
}
|
||||
catch( Exception e )
|
||||
{
|
||||
mLog.error( "error while reading eeprom byte [" + x + "/" +
|
||||
length + "] aborting eeprom read and returning partially "
|
||||
+ "filled descriptor byte array", e );
|
||||
x = length;
|
||||
}
|
||||
}
|
||||
|
||||
return data;
|
||||
@@ -1514,7 +1537,8 @@ public abstract class RTL2832TunerController extends TunerController
|
||||
{
|
||||
if( mRunning.compareAndSet( false, true ) )
|
||||
{
|
||||
Log.debug( "RTL2832TunerController [" + getUniqueID() + "] - starting sample fetch thread" );
|
||||
mLog.debug( "rtl2832 [" + getUniqueID() +
|
||||
"] - starting sample fetch thread" );
|
||||
|
||||
ArrayList<UsbIrp> irps = new ArrayList<UsbIrp>();
|
||||
|
||||
@@ -1570,7 +1594,8 @@ public abstract class RTL2832TunerController extends TunerController
|
||||
{
|
||||
if( mRunning.compareAndSet( true, false ) )
|
||||
{
|
||||
Log.debug( "RTL2832TunerController - stopping sample fetch thread" );
|
||||
mLog.debug( "rtl2832 [" + getUniqueID() +
|
||||
"] - stopping sample fetch thread" );
|
||||
|
||||
mUSBPipe.abortAllSubmissions();
|
||||
|
||||
@@ -1626,8 +1651,7 @@ public abstract class RTL2832TunerController extends TunerController
|
||||
| IllegalArgumentException | UsbDisconnectedException
|
||||
| UsbException e )
|
||||
{
|
||||
Log.error( "RTL2832TunerController - error while "
|
||||
+ "processing samples - " + e.getLocalizedMessage() );
|
||||
mLog.error( "error while processing samples", e );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1640,9 +1664,8 @@ public abstract class RTL2832TunerController extends TunerController
|
||||
* the reset process and ignore all subsequent errors */
|
||||
if( mResetting.compareAndSet( false, true ) )
|
||||
{
|
||||
Log.error( "RTL2832TunerController - error during data transfer - "
|
||||
+ "resetting USB pipe to RTL-2832 - " +
|
||||
e.getUsbException().getLocalizedMessage() );
|
||||
mLog.error( "error during data transfer resetting USB pipe to "
|
||||
+ "RTL-2832", e );
|
||||
|
||||
stop();
|
||||
|
||||
@@ -1714,7 +1737,7 @@ public abstract class RTL2832TunerController extends TunerController
|
||||
sb.append( " count:" );
|
||||
sb.append( mSampleRateAverageCount );
|
||||
|
||||
Log.info( sb.toString() );
|
||||
mLog.info( sb.toString() );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -42,10 +42,11 @@ import javax.swing.event.ChangeEvent;
|
||||
import javax.swing.event.ChangeListener;
|
||||
import javax.usb.UsbException;
|
||||
|
||||
import com.jidesoft.swing.JideTabbedPane;
|
||||
|
||||
import log.Log;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.SourceException;
|
||||
import source.tuner.TunerConfiguration;
|
||||
import source.tuner.TunerConfigurationAssignment;
|
||||
@@ -60,7 +61,10 @@ import controller.ResourceManager;
|
||||
public class E4KTunerConfigurationPanel extends JPanel
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private ResourceManager mResourceManager;
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( E4KTunerConfigurationPanel.class );
|
||||
|
||||
private ResourceManager mResourceManager;
|
||||
private E4KTunerController mController;
|
||||
private E4KTunerConfiguration mSelectedConfig;
|
||||
|
||||
@@ -223,9 +227,8 @@ public class E4KTunerConfigurationPanel extends JPanel
|
||||
+ "frequency correction value: " + value +
|
||||
e1.getLocalizedMessage() );
|
||||
|
||||
Log.error( "E4K Tuner Controller - couldn't apply "
|
||||
+ "frequency correction value: " + value +
|
||||
e1.getLocalizedMessage() );
|
||||
mLog.error( "E4K Tuner Controller - couldn't apply "
|
||||
+ "frequency correction value: " + value, e1 );
|
||||
}
|
||||
}
|
||||
} );
|
||||
@@ -263,9 +266,9 @@ public class E4KTunerConfigurationPanel extends JPanel
|
||||
+ "rate setting [" + sampleRate.getLabel() + "] " +
|
||||
eSampleRate.getLocalizedMessage() );
|
||||
|
||||
Log.error( "E4K Tuner Controller - couldn't apply sample "
|
||||
+ "rate setting [" + sampleRate.getLabel() + "] " +
|
||||
eSampleRate.getLocalizedMessage() );
|
||||
mLog.error( "E4K Tuner Controller - couldn't apply sample "
|
||||
+ "rate setting [" + sampleRate.getLabel() + "]",
|
||||
eSampleRate );
|
||||
}
|
||||
}
|
||||
} );
|
||||
@@ -389,8 +392,8 @@ public class E4KTunerConfigurationPanel extends JPanel
|
||||
"E4K Tuner Controller - couldn't apply the gain "
|
||||
+ "setting - " + e.getLocalizedMessage() );
|
||||
|
||||
Log.error( "E4K Tuner Controller - couldn't apply "
|
||||
+ "gain setting - " + e.getLocalizedMessage() );
|
||||
mLog.error( "E4K Tuner Controller - couldn't apply "
|
||||
+ "gain setting", e );
|
||||
}
|
||||
}
|
||||
} );
|
||||
@@ -435,8 +438,8 @@ public class E4KTunerConfigurationPanel extends JPanel
|
||||
"E4K Tuner Controller - couldn't apply the mixer "
|
||||
+ "gain setting - " + e.getLocalizedMessage() );
|
||||
|
||||
Log.error( "E4K Tuner Controller - couldn't apply mixer "
|
||||
+ "gain setting - " + e.getLocalizedMessage() );
|
||||
mLog.error( "E4K Tuner Controller - couldn't apply mixer "
|
||||
+ "gain setting", e );
|
||||
}
|
||||
}
|
||||
} );
|
||||
@@ -475,8 +478,8 @@ public class E4KTunerConfigurationPanel extends JPanel
|
||||
"E4K Tuner Controller - couldn't apply the LNA "
|
||||
+ "gain setting - " + e.getLocalizedMessage() );
|
||||
|
||||
Log.error( "E4K Tuner Controller - couldn't apply LNA "
|
||||
+ "gain setting - " + e.getLocalizedMessage() );
|
||||
mLog.error( "E4K Tuner Controller - couldn't apply LNA "
|
||||
+ "gain setting - ", e );
|
||||
}
|
||||
}
|
||||
} );
|
||||
@@ -514,8 +517,8 @@ public class E4KTunerConfigurationPanel extends JPanel
|
||||
"E4K Tuner Controller - couldn't apply the enhance "
|
||||
+ "gain setting - " + e.getLocalizedMessage() );
|
||||
|
||||
Log.error( "E4K Tuner Controller - couldn't apply enhance "
|
||||
+ "gain setting - " + e.getLocalizedMessage() );
|
||||
mLog.error( "E4K Tuner Controller - couldn't apply enhance "
|
||||
+ "gain setting", e );
|
||||
}
|
||||
}
|
||||
} );
|
||||
@@ -630,9 +633,8 @@ public class E4KTunerConfigurationPanel extends JPanel
|
||||
+ "apply the tuner configuration settings - " +
|
||||
e1.getLocalizedMessage() );
|
||||
|
||||
Log.error( "E4K Tuner Controller - couldn't apply "
|
||||
+ "config [" + config.getName() + "] - " +
|
||||
e1.getLocalizedMessage() );
|
||||
mLog.error( "E4K Tuner Controller - couldn't apply "
|
||||
+ "config [" + config.getName() + "]", e1 );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -25,8 +25,11 @@ import java.awt.EventQueue;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JPanel;
|
||||
|
||||
import log.Log;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.SourceException;
|
||||
import source.tuner.FrequencyChangeListener;
|
||||
import source.tuner.rtl.RTL2832InfoPanel;
|
||||
@@ -37,6 +40,9 @@ import controller.ResourceManager;
|
||||
|
||||
public class E4KTunerEditorPanel extends JPanel implements FrequencyChangeListener
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( E4KTunerEditorPanel.class );
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private E4KTunerController mController;
|
||||
@@ -101,8 +107,8 @@ public class E4KTunerEditorPanel extends JPanel implements FrequencyChangeListen
|
||||
}
|
||||
catch ( SourceException e )
|
||||
{
|
||||
Log.error( "E4KTunerController - error setting frequency [" +
|
||||
frequency + "] - " + e.getLocalizedMessage() );
|
||||
mLog.error( "E4KTunerController - error setting frequency [" +
|
||||
frequency + "]", e );
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
@@ -42,8 +42,11 @@ import javax.swing.event.ChangeEvent;
|
||||
import javax.swing.event.ChangeListener;
|
||||
import javax.usb.UsbException;
|
||||
|
||||
import log.Log;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.SourceException;
|
||||
import source.tuner.TunerConfiguration;
|
||||
import source.tuner.TunerConfigurationAssignment;
|
||||
@@ -57,7 +60,10 @@ import controller.ResourceManager;
|
||||
|
||||
public class R820TTunerConfigurationPanel extends JPanel
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( R820TTunerConfigurationPanel.class );
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
private static final R820TGain DEFAULT_GAIN = R820TGain.GAIN_279;
|
||||
|
||||
private ResourceManager mResourceManager;
|
||||
@@ -214,9 +220,8 @@ public class R820TTunerConfigurationPanel extends JPanel
|
||||
+ "frequency correction value: " + value +
|
||||
e1.getLocalizedMessage() );
|
||||
|
||||
Log.error( "R820T Tuner Controller - couldn't apply "
|
||||
+ "frequency correction value: " + value +
|
||||
e1.getLocalizedMessage() );
|
||||
mLog.error( "R820T Tuner Controller - couldn't apply "
|
||||
+ "frequency correction value: " + value, e1 );
|
||||
}
|
||||
}
|
||||
} );
|
||||
@@ -254,9 +259,9 @@ public class R820TTunerConfigurationPanel extends JPanel
|
||||
+ "rate setting [" + sampleRate.getLabel() + "] " +
|
||||
eSampleRate.getLocalizedMessage() );
|
||||
|
||||
Log.error( "R820T Tuner Controller - couldn't apply sample "
|
||||
+ "rate setting [" + sampleRate.getLabel() + "] " +
|
||||
eSampleRate.getLocalizedMessage() );
|
||||
mLog.error( "R820T Tuner Controller - couldn't apply sample "
|
||||
+ "rate setting [" + sampleRate.getLabel() + "]",
|
||||
eSampleRate );
|
||||
}
|
||||
}
|
||||
} );
|
||||
@@ -318,8 +323,8 @@ public class R820TTunerConfigurationPanel extends JPanel
|
||||
"R820T Tuner Controller - couldn't apply the gain "
|
||||
+ "setting - " + e.getLocalizedMessage() );
|
||||
|
||||
Log.error( "R820T Tuner Controller - couldn't apply "
|
||||
+ "gain setting - " + e.getLocalizedMessage() );
|
||||
mLog.error( "R820T Tuner Controller - couldn't apply "
|
||||
+ "gain setting - ", e );
|
||||
}
|
||||
}
|
||||
} );
|
||||
@@ -369,8 +374,8 @@ public class R820TTunerConfigurationPanel extends JPanel
|
||||
"R820T Tuner Controller - couldn't apply the mixer "
|
||||
+ "gain setting - " + e.getLocalizedMessage() );
|
||||
|
||||
Log.error( "R820T Tuner Controller - couldn't apply mixer "
|
||||
+ "gain setting - " + e.getLocalizedMessage() );
|
||||
mLog.error( "R820T Tuner Controller - couldn't apply mixer "
|
||||
+ "gain setting - ", e );
|
||||
}
|
||||
}
|
||||
} );
|
||||
@@ -415,8 +420,8 @@ public class R820TTunerConfigurationPanel extends JPanel
|
||||
"R820T Tuner Controller - couldn't apply the LNA "
|
||||
+ "gain setting - " + e.getLocalizedMessage() );
|
||||
|
||||
Log.error( "R820T Tuner Controller - couldn't apply LNA "
|
||||
+ "gain setting - " + e.getLocalizedMessage() );
|
||||
mLog.error( "R820T Tuner Controller - couldn't apply LNA "
|
||||
+ "gain setting - ", e );
|
||||
}
|
||||
}
|
||||
} );
|
||||
@@ -459,8 +464,8 @@ public class R820TTunerConfigurationPanel extends JPanel
|
||||
"R820T Tuner Controller - couldn't apply the VGA "
|
||||
+ "gain setting - " + e.getLocalizedMessage() );
|
||||
|
||||
Log.error( "R820T Tuner Controller - couldn't apply VGA "
|
||||
+ "gain setting - " + e.getLocalizedMessage() );
|
||||
mLog.error( "R820T Tuner Controller - couldn't apply VGA "
|
||||
+ "gain setting", e );
|
||||
}
|
||||
}
|
||||
} );
|
||||
@@ -575,9 +580,8 @@ public class R820TTunerConfigurationPanel extends JPanel
|
||||
+ "apply the tuner configuration settings - " +
|
||||
e1.getLocalizedMessage() );
|
||||
|
||||
Log.error( "R820T Tuner Controller - couldn't apply "
|
||||
+ "config [" + config.getName() + "] - " +
|
||||
e1.getLocalizedMessage() );
|
||||
mLog.error( "R820T Tuner Controller - couldn't apply "
|
||||
+ "config [" + config.getName() + "]", e1 );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -25,7 +25,9 @@ package source.tuner.rtl.r820t;
|
||||
import javax.swing.JPanel;
|
||||
import javax.usb.UsbException;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.SourceException;
|
||||
import source.tuner.TunerConfiguration;
|
||||
import source.tuner.TunerType;
|
||||
@@ -35,6 +37,9 @@ import controller.ResourceManager;
|
||||
|
||||
public class R820TTunerController extends RTL2832TunerController
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( R820TTunerController.class );
|
||||
|
||||
public static final long MIN_FREQUENCY = 3180000;
|
||||
public static final long MAX_FREQUENCY = 1782030000;
|
||||
public static final int R820T_IF_FREQUENCY = 3570000;
|
||||
@@ -236,33 +241,32 @@ public class R820TTunerController extends RTL2832TunerController
|
||||
{
|
||||
try
|
||||
{
|
||||
Log.debug( "R820T Tuner Controller - testing USB interface" );
|
||||
mLog.debug( "testing USB interface" );
|
||||
/* Dummy write to test USB interface */
|
||||
writeRegister( mUSBDevice, Block.USB,
|
||||
Address.USB_SYSCTL.getAddress(), (short)0x09, 1 );
|
||||
|
||||
Log.debug( "R820T Tuner Controller - initializing RTL2832 tuner baseband" );
|
||||
mLog.debug( "initializing RTL2832 tuner baseband" );
|
||||
initBaseband( mUSBDevice );
|
||||
|
||||
Log.debug( "R820T Tuner Controller - enabling I2C repeater" );
|
||||
mLog.debug( "enabling I2C repeater" );
|
||||
enableI2CRepeater( mUSBDevice, true );
|
||||
|
||||
boolean i2CRepeaterControl = false;
|
||||
|
||||
Log.debug( "R820T Tuner Controller - initializing R820T tuner" );
|
||||
mLog.debug( "initializing R820T tuner" );
|
||||
initTuner( i2CRepeaterControl );
|
||||
|
||||
Log.debug( "R820T Tuner Controller - disabling I2C repeater" );
|
||||
mLog.debug( "disabling I2C repeater" );
|
||||
enableI2CRepeater( mUSBDevice, false );
|
||||
|
||||
Log.debug( "R820T Tuner Controller - initializing RTL tuner controller super class" );
|
||||
mLog.debug( "initializing RTL2832 tuner controller super class" );
|
||||
/* Initialize the super class */
|
||||
super.init();
|
||||
}
|
||||
catch( UsbException e )
|
||||
{
|
||||
throw new SourceException( "R820T Tuner Controller - error during "
|
||||
+ "init()", e );
|
||||
throw new SourceException( "error during init()", e );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -345,7 +349,8 @@ public class R820TTunerController extends RTL2832TunerController
|
||||
|
||||
if( !calibrationSuccessful( calibrationCode ) )
|
||||
{
|
||||
Log.error( "Calibration NOT successful!!" );
|
||||
mLog.error( "Calibration NOT successful - code: " +
|
||||
calibrationCode );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -354,14 +359,11 @@ public class R820TTunerController extends RTL2832TunerController
|
||||
calibrationCode = 0;
|
||||
}
|
||||
|
||||
Log.debug( "Calibration Code is:" + calibrationCode );
|
||||
|
||||
/* Write calibration code */
|
||||
byte filt_q = 0x10;
|
||||
calibrationCode = calibrationCode | filt_q;
|
||||
|
||||
writeR820TRegister( Register.FILTER_CALIBRATION_CODE,
|
||||
(byte)calibrationCode, controlI2C );
|
||||
(byte)( calibrationCode | filt_q ), controlI2C );
|
||||
|
||||
/* Set BW, Filter gain & HP Corner */
|
||||
writeR820TRegister( Register.BANDWIDTH_FILTER_GAIN_HIGHPASS_FILTER_CORNER,
|
||||
|
||||
@@ -22,23 +22,28 @@ import gui.control.JFrequencyControl;
|
||||
import java.awt.Color;
|
||||
import java.awt.EventQueue;
|
||||
|
||||
import javax.swing.BorderFactory;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JPanel;
|
||||
|
||||
import com.jidesoft.swing.JideTabbedPane;
|
||||
|
||||
import log.Log;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import source.SourceException;
|
||||
import source.tuner.FrequencyChangeListener;
|
||||
import source.tuner.rtl.RTL2832InfoPanel;
|
||||
import source.tuner.rtl.e4k.E4KTunerConfigurationPanel;
|
||||
|
||||
import com.jidesoft.swing.JideTabbedPane;
|
||||
|
||||
import controller.ResourceManager;
|
||||
|
||||
public class R820TTunerEditorPanel extends JPanel implements FrequencyChangeListener
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( R820TTunerEditorPanel.class );
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private R820TTunerController mController;
|
||||
private ResourceManager mResourceManager;
|
||||
@@ -101,8 +106,8 @@ public class R820TTunerEditorPanel extends JPanel implements FrequencyChangeList
|
||||
}
|
||||
catch ( SourceException e )
|
||||
{
|
||||
Log.error( "R820T Tuner Controller - error setting frequency [" +
|
||||
frequency + "] - " + e.getLocalizedMessage() );
|
||||
mLog.error( "R820T Tuner Controller - error setting frequency [" +
|
||||
frequency + "]", e );
|
||||
}
|
||||
}
|
||||
} );
|
||||
|
||||
@@ -26,9 +26,9 @@ import java.util.concurrent.ScheduledExecutorService;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
|
||||
import log.Log;
|
||||
|
||||
import org.jtransforms.fft.FloatFFT_1D;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import sample.Listener;
|
||||
import source.Source;
|
||||
@@ -45,6 +45,9 @@ import dsp.filter.Window.WindowType;
|
||||
public class DFTProcessor implements Listener<Float[]>,
|
||||
FrequencyChangeListener
|
||||
{
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( DFTProcessor.class );
|
||||
|
||||
private CopyOnWriteArrayList<DFTResultsConverter> mListeners =
|
||||
new CopyOnWriteArrayList<DFTResultsConverter>();
|
||||
|
||||
@@ -198,8 +201,8 @@ public class DFTProcessor implements Listener<Float[]>,
|
||||
}
|
||||
catch ( InterruptedException e )
|
||||
{
|
||||
Log.error( "DFTProcessor - exception while awaiting shutdown of "
|
||||
+ "calculation scheduler for reset" );
|
||||
mLog.error( "DFTProcessor - exception while awaiting shutdown of "
|
||||
+ "calculation scheduler for reset", e );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -222,7 +225,7 @@ public class DFTProcessor implements Listener<Float[]>,
|
||||
{
|
||||
if( !mQueue.offer( samples ) )
|
||||
{
|
||||
Log.error( "DFTProcessor - [" + mSampleType.toString()
|
||||
mLog.error( "DFTProcessor - [" + mSampleType.toString()
|
||||
+ "]queue is full, purging queue, "
|
||||
+ "samples[" + samples + "]" );
|
||||
|
||||
|
||||
@@ -29,7 +29,6 @@ import java.awt.event.MouseEvent;
|
||||
import java.awt.event.MouseListener;
|
||||
import java.awt.event.MouseMotionListener;
|
||||
import java.text.DecimalFormat;
|
||||
import java.text.Format;
|
||||
import java.util.ArrayList;
|
||||
|
||||
import javax.swing.JCheckBoxMenuItem;
|
||||
@@ -42,8 +41,11 @@ import javax.swing.JSeparator;
|
||||
import javax.swing.JSplitPane;
|
||||
import javax.swing.SwingUtilities;
|
||||
|
||||
import log.Log;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import sample.Listener;
|
||||
import settings.ColorSetting;
|
||||
import settings.ColorSetting.ColorSettingName;
|
||||
@@ -90,6 +92,9 @@ public class SpectralDisplayPanel extends JPanel
|
||||
TunerSelectionListener
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( SpectralDisplayPanel.class );
|
||||
|
||||
private static DecimalFormat sCURSOR_FORMAT = new DecimalFormat( "000.00000" );
|
||||
|
||||
/**
|
||||
@@ -384,8 +389,8 @@ public class SpectralDisplayPanel extends JPanel
|
||||
}
|
||||
catch ( SourceException e )
|
||||
{
|
||||
Log.info( "DFTProcessor - exception during new tuner setup - "
|
||||
+ "couldn't get frequency from the tuner" );
|
||||
mLog.info( "DFTProcessor - exception during new tuner setup - "
|
||||
+ "couldn't get frequency from the tuner", e );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,7 +29,9 @@ import java.awt.geom.Line2D;
|
||||
|
||||
import javax.swing.JPanel;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import settings.ColorSetting;
|
||||
import settings.ColorSetting.ColorSettingName;
|
||||
import settings.IntegerSetting;
|
||||
@@ -45,7 +47,9 @@ public class SpectrumPanel extends JPanel
|
||||
SpectralDisplayAdjuster
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private final static Logger mLog =
|
||||
LoggerFactory.getLogger( SpectrumPanel.class );
|
||||
|
||||
/* Set display bins size to 1, so that we're guaranteed a reset to the
|
||||
* correct width once the first sample set arrives */
|
||||
private float[] mDisplayFFTBins = new float[ 1 ];
|
||||
|
||||
@@ -25,10 +25,13 @@ import java.nio.ByteBuffer;
|
||||
|
||||
import javax.sound.sampled.AudioFormat;
|
||||
|
||||
import log.Log;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
public class WaveWriter
|
||||
{
|
||||
private final static Logger mLog = LoggerFactory.getLogger( WaveWriter.class );
|
||||
|
||||
private static final int sTOTAL_BYTE_LIMIT = Integer.MAX_VALUE;
|
||||
private BufferedOutputStream mOutputStream;
|
||||
private boolean mRunning = false;
|
||||
@@ -128,8 +131,7 @@ public class WaveWriter
|
||||
raf.seek( 40 );
|
||||
raf.write( newDataSize );
|
||||
|
||||
//debug
|
||||
Log.info( "Closing recording [" + mFileName + "] amending file byte size to:" + newByteCount );
|
||||
mLog.info( "Closing recording [" + mFileName + "] amending file byte size to:" + newByteCount );
|
||||
|
||||
raf.close();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user