Merge branch 'main' into main

This commit is contained in:
Douglas Gillespie 2022-03-25 11:18:05 +00:00 committed by GitHub
commit d49d204a8a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 48 additions and 11 deletions

View File

@ -6,7 +6,7 @@
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jre">
<attributes>
<attribute name="module" value="true"/>
<attribute name="maven.pomderived" value="true"/>

1
.gitignore vendored
View File

@ -24,6 +24,7 @@
# eclipse project file
.project
.hprof
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*

View File

@ -24,6 +24,7 @@ import Acquisition.pamAudio.PamAudioSystem;
import PamController.OfflineFileDataStore;
import PamDetection.RawDataUnit;
import PamUtils.PamAudioFileFilter;
import PamUtils.PamCalendar;
import PamguardMVC.PamDataBlock;
import PamguardMVC.PamRawDataBlock;
import PamguardMVC.dataOffline.OfflineDataLoadInfo;
@ -384,6 +385,9 @@ public class OfflineWavFileServer extends OfflineFileServer<FileDataMapPoint> {
this.fileStream = fileStream;
this.loadObserver = loadObserver;
this.offlineDataLoadInfo=offlineDataLoadInfo;
// System.out.printf("New FLAC decoder %s working from %s to %s\n", offlineDataLoadInfo.toString(),
// PamCalendar.formatDBDateTime(offlineDataLoadInfo.getStartMillis()),
// PamCalendar.formatDBDateTime(offlineDataLoadInfo.getEndMillis()));
}
@Override
@ -392,6 +396,7 @@ public class OfflineWavFileServer extends OfflineFileServer<FileDataMapPoint> {
try {
fileStream.close();
ms = Math.max(offlineDataLoadInfo.getStartMillis(), ms);
offlineDataLoadInfo.setLastLoadInfo(new AquisitionLoadPoint(ms, -1));
} catch (IOException e) {
e.printStackTrace();

View File

@ -35,6 +35,10 @@ public class SummaryCommand extends ExtCommand {
}
public String getModulesSummary(boolean clear) {
return getReturnString();
}
public String getReturnString() {
PamController pamController = PamController.getInstance();
int nMod = pamController.getNumControlledUnits();
PamControlledUnit aModule;

View File

@ -700,11 +700,8 @@ public class PamDetectionOverlayGraphics extends PanelOverlayDraw {
pamDetection.getSampleDuration() * 1000./parentDataBlock.getSampleRate(),
frequency[0], 0);
boolean isWrapped = false;
if (botRight.x < topLeft.x){
// this means it's wrapped.
isWrapped = true;
botRight.x += g.getClipBounds().width;
botRight.x = g.getClipBounds().width;
}
if (generalProjector.isViewer()) {
Coordinate3d middle = new Coordinate3d();
@ -726,13 +723,8 @@ public class PamDetectionOverlayGraphics extends PanelOverlayDraw {
// Not actually drawing on a spectrogramProjector, so don't have any info on the background color
}
if (isWrapped) {
g.drawRect((int) topLeft.x-g.getClipBounds().width, (int) topLeft.y,
(int) botRight.x - (int) topLeft.x, (int) botRight.y - (int) topLeft.y);
}
g.drawRect((int) topLeft.x, (int) topLeft.y,
(int) botRight.x - (int) topLeft.x, (int) botRight.y - (int) topLeft.y);
return new Rectangle((int) topLeft.x, (int) topLeft.y,
(int) botRight.x - (int) topLeft.x, (int) botRight.y - (int) topLeft.y);
}

View File

@ -1,5 +1,6 @@
package PamguardMVC.dataOffline;
import PamUtils.PamCalendar;
import PamguardMVC.LoadObserver;
import PamguardMVC.PamObserver;
@ -115,6 +116,7 @@ public class OfflineDataLoadInfo implements Cloneable {
this.loadKeepLayers = 0;
originalKeepLayers=0;
this.allowRepeats = false;
checkLoadSize();
}
public OfflineDataLoadInfo(PamObserver dataObserver, PamObserver endObserver, long startMillis, long endMillis,
@ -127,6 +129,7 @@ public class OfflineDataLoadInfo implements Cloneable {
this.loadKeepLayers = loadKeepLayers;
this.originalKeepLayers = loadKeepLayers;
this.allowRepeats = allowRepeats;
checkLoadSize();
}
public OfflineDataLoadInfo(PamObserver dataObserver, LoadObserver loadObserver, long startMillis, long endMillis,
@ -141,12 +144,24 @@ public class OfflineDataLoadInfo implements Cloneable {
this.originalKeepLayers = loadKeepLayers;
this.interrupt=interrupt;
this.allowRepeats = allowRepeats;
checkLoadSize();
}
public OfflineDataLoadInfo() {
// TODO Auto-generated constructor stub
}
private boolean checkLoadSize() {
// if (getEndMillis()-getStartMillis() > 3600000L) {
// System.out.printf("Silly big load from %s or %s to %s\n",
// PamCalendar.formatDBDateTime(getStartMillis()),
// PamCalendar.formatDBDateTime(this.startMillis),
// PamCalendar.formatDBDateTime(getEndMillis()));
// return false;
// }
return true;
}
/**
* Resets the load data for another data load.
*/
@ -173,7 +188,12 @@ public class OfflineDataLoadInfo implements Cloneable {
* @return the startMillis
*/
public long getStartMillis() {
if (this.lastLoadInfo!=null) return lastLoadInfo.lastLoadMillis();
if (this.lastLoadInfo!=null) {
// if (getEndMillis() - lastLoadInfo.lastLoadMillis() > 3600000L) {
// System.out.printf("Weird shit with lastLoadInfo: ");
// }
return lastLoadInfo.lastLoadMillis();
}
else return startMillis;
}
@ -191,6 +211,7 @@ public class OfflineDataLoadInfo implements Cloneable {
*/
public void setStartMillis(long startMillis) {
this.startMillis = startMillis;
checkLoadSize();
}
/**
@ -205,6 +226,7 @@ public class OfflineDataLoadInfo implements Cloneable {
*/
public void setEndMillis(long endMillis) {
this.endMillis = endMillis;
checkLoadSize();
}
/**

View File

@ -175,6 +175,13 @@ public class OfflineDataLoading<T extends PamDataUnit> {
long t4 = t2;
// String orderDates = String.format(" %s to %s",
// PamCalendar.formatDateTime(startMillis), PamCalendar.formatDateTime(endMillis));
// System.out.printf("Offline data order in %s %s from %s to %s\n", pamDataBlock.getDataName(), offlineDataInfo.toString(),
// PamCalendar.formatDBDateTime(offlineDataInfo.getStartMillis()),
// PamCalendar.formatDBDateTime(offlineDataInfo.getEndMillis()));
// if (offlineDataInfo.getEndMillis()-offlineDataInfo.getStartMillis() > 3600000L) {
// System.out.printf("Stupid long load time !");
// return;
// }
try {
if (orderData != null) {
// System.out.println("order Data is not null");

View File

@ -20,6 +20,7 @@ import PamController.PamControllerInterface;
import PamController.PamGUIManager;
import PamController.PamSettingManager;
import PamController.PamSettings;
import PamUtils.PamCalendar;
import PamView.MenuItemEnabler;
import PamView.TopToolBar;
import PamguardMVC.LoadObserver;
@ -298,6 +299,11 @@ public class PlaybackControl extends PamControlledUnit implements PamSettings {
this.playbackEndMillis = endMillis;
playbackProcess.prepareProcess();
playbackProcess.pamStart();
// System.out.printf("***Viewer playback request from %s to %s\n", PamCalendar.formatDBDateTime(startMillis), PamCalendar.formatDBDateTime(endMillis));
// if (endMillis - startMillis > 600000) {
// System.out.println("Thats a stupidly big time period");
// }
dataBlock.orderOfflineData(playbackProcess, new PlayLoadObserver(),
startMillis, endMillis, 0,
OfflineDataLoading.OFFLINE_DATA_CANCEL, true);