-
Notifications
You must be signed in to change notification settings - Fork 20
Expand file tree
/
Copy pathOfflineDataStore.java
More file actions
73 lines (62 loc) · 2.01 KB
/
OfflineDataStore.java
File metadata and controls
73 lines (62 loc) · 2.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
package PamController;
import java.awt.Window;
import PamguardMVC.PamDataBlock;
import PamguardMVC.dataOffline.OfflineDataLoadInfo;
import dataGram.DatagramManager;
import dataMap.OfflineDataMapPoint;
import pamScrollSystem.ViewLoadObserver;
/**
* Interface implemented by PamControlledUnits which
* are capable of reloading and restoring data when operating in
* Viewer mode.
* @author Doug Gillespie
*
*/
public interface OfflineDataStore {
/**
* Create a basic map of the data including first and
* last times and some kind of data/unit time count
* plus ideally some kind of start and stop time list
* of where there are gaps in the data.
*/
public void createOfflineDataMap(Window parentFrame);
/**
* Get the data source name
* @return data source name
*/
public String getDataSourceName();
/**
* Get the data location. This may be a specific file, or might be a folder
* if data are in many files, a URI, etc.
* @return store locations
*/
public String getDataLocation();
/**
* Load data for a given datablock between two time limits.
* @param dataBlock datablock owner of the data
* @param dataStart start time in milliseconds
* @param dataEnd end time in milliseconds
* @param loadObserver
* @return true if load successful.
*/
public boolean loadData(PamDataBlock dataBlock, OfflineDataLoadInfo offlineDataLoadInfo, ViewLoadObserver loadObserver);
/**
* Save data previously loaded from the store during
* offline viewing.
* @param dataBlock datablock owner of the data
* @return true if saved or save not needed. False if an error prevents saving.
*/
public boolean saveData(PamDataBlock dataBlock);
/**
* Moved this function over from binary data store.
* Many storage systems may not be able to do this, but some might !
* @param dataBlock
* @param dmp
* @return
*/
public boolean rewriteIndexFile(PamDataBlock dataBlock, OfflineDataMapPoint dmp);
/**
* @return the datagramManager
*/
public DatagramManager getDatagramManager();
}