Fix data load bug 2.02.10bd

Problem in master gps reference hitting  a null, which was in turn stopping data matching for sub detections. Fixed in temp release 2.02.10bd
This commit is contained in:
Douglas Gillespie 2024-04-23 17:57:15 +01:00
parent 8537a2ddec
commit 6db451699f
7 changed files with 13 additions and 9 deletions

View File

@ -4,7 +4,7 @@
<groupId>org.pamguard</groupId>
<artifactId>Pamguard</artifactId>
<name>Pamguard Java12+</name>
<version>2.02.10bc</version>
<version>2.02.10bd</version>
<description>Pamguard for Java 12+, using Maven to control dependcies</description>
<url>www.pamguard.org</url>
<organization>

View File

@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.pamguard</groupId>
<artifactId>Pamguard</artifactId>
<version>2.02.10bc</version>
<version>2.02.10bd</version>
<name>Pamguard Java12+</name>
<description>Pamguard for Java 12+, using Maven to control dependcies</description>
<url>www.pamguard.org</url>

View File

@ -1111,7 +1111,7 @@ public class ArrayManager extends PamControlledUnit implements PamSettings, PamO
referencePoint = shipPos.getGpsData();
}
}
if (referencePoint == null) {
if (referencePoint == null && MasterReferencePoint.getFixTime() != null && MasterReferencePoint.getLatLong() != null) {
// running out of options, so fall back to the master reference point, interpolated (probably has zero speeed)
referencePoint = new GpsData(MasterReferencePoint.getFixTime(), MasterReferencePoint.getLatLong()).getPredictedGPSData(timeMillis);
}

View File

@ -267,6 +267,9 @@ public class GPSControl extends PamControlledUnit implements PamSettings, Positi
GpsDataUnit pointBefore = null, pointAfter = null;
synchronized (getGpsDataBlock().getSynchLock()) {
ListIterator<GpsDataUnit> iter = getGpsDataBlock().getListIterator(timeMilliseconds, 0, PamDataBlock.MATCH_BEFORE, PamDataBlock.POSITION_BEFORE);
if (iter == null) {
return null;
}
if (iter.hasNext()) {
pointBefore = iter.next();
}

View File

@ -31,12 +31,12 @@ public class PamguardVersionInfo {
* Version number, major version.minorversion.sub-release.
* Note: can't go higher than sub-release 'f'
*/
static public final String version = "2.02.10bc";
static public final String version = "2.02.10bd";
/**
* Release date
*/
static public final String date = "12 April 2024";
static public final String date = "23 April 2024";
// /**
// * Release type - Beta or Core

View File

@ -450,8 +450,8 @@ public class SuperDetDataBlock<Tunit extends SuperDetection, TSubDet extends Pam
int iDone = 0;
while (duIt.hasNext()) {
Tunit aData = duIt.next(); // looping through superdetections.
// if (aData.getDatabaseIndex() == 131) {
// System.out.println("On event 131");
// if (aData.getDatabaseIndex() == 566) {
// System.out.println("On event 566");
// }
if (viewLoadObserver != null) {
viewLoadObserver.sayProgress(1, aData.getTimeMilliseconds(), firstTime, lastTime, iDone++);

View File

@ -6,6 +6,7 @@ import PamguardMVC.PamDataBlock;
import PamguardMVC.PamDataUnit;
import PamguardMVC.PamInstantProcess;
import PamguardMVC.PamObservable;
import PamguardMVC.PamProcess;
import clickDetector.ClickDetection;
import clickTrainDetector.layout.CTDataUnitGraphics;
import clickTrainDetector.layout.UnconfirmedCTSymbolManager;
@ -19,7 +20,7 @@ import pamScrollSystem.AbstractScrollManager;
* @author Jamie Macaulay
*
*/
public class ClickTrainProcess extends PamInstantProcess {
public class ClickTrainProcess extends PamProcess {
/**
* The source data block
@ -47,7 +48,7 @@ public class ClickTrainProcess extends PamInstantProcess {
private CTProcessCheck processCheck;
public ClickTrainProcess(ClickTrainControl pamControlledUnit) {
super(pamControlledUnit);
super(pamControlledUnit, null);
this.clickTrainControl=pamControlledUnit;
this.processCheck=new CTProcessCheck(this);