Fixed viewer
This commit is contained in:
@@ -55,7 +55,6 @@ import com.google.common.eventbus.EventBus;
|
||||
|
||||
import sun.misc.Signal;
|
||||
import sun.misc.SignalHandler;
|
||||
import ch.psi.fda.aq.VisualizationMapper;
|
||||
import ch.psi.fda.gui.ProgressPanel;
|
||||
import ch.psi.fda.gui.ScrollableFlowPanel;
|
||||
import ch.psi.fda.model.ModelManager;
|
||||
|
||||
@@ -23,7 +23,6 @@ import java.awt.FlowLayout;
|
||||
import java.awt.Label;
|
||||
import java.awt.event.WindowAdapter;
|
||||
import java.awt.event.WindowEvent;
|
||||
import java.util.List;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
@@ -42,10 +41,9 @@ import org.apache.commons.cli.ParseException;
|
||||
import com.google.common.eventbus.EventBus;
|
||||
import com.google.common.eventbus.Subscribe;
|
||||
|
||||
import ch.psi.fda.aq.VisualizationMapper;
|
||||
import ch.psi.fda.gui.ScrollableFlowPanel;
|
||||
import ch.psi.fda.model.v1.Visualization;
|
||||
import ch.psi.fda.rest.StreamClient;
|
||||
import ch.psi.fda.vdescriptor.VDescriptor;
|
||||
import ch.psi.fda.visualizer.Visualizer;
|
||||
|
||||
/**
|
||||
@@ -103,7 +101,7 @@ public class ViewerMain {
|
||||
|
||||
bus.register(new Object(){
|
||||
@Subscribe
|
||||
public void onMessage(List<Visualization> vis){
|
||||
public void onMessage(VDescriptor vdescriptor){
|
||||
|
||||
logger.info("Build up new visualization");
|
||||
|
||||
@@ -112,7 +110,7 @@ public class ViewerMain {
|
||||
bus.unregister(visualizer);
|
||||
}
|
||||
|
||||
visualizer = new Visualizer(VisualizationMapper.mapVisualizations(vis));
|
||||
visualizer = new Visualizer(vdescriptor);
|
||||
visualizer.setUpdateAtStreamElement(true);
|
||||
visualizer.setUpdateAtStreamDelimiter(true);
|
||||
visualizer.setUpdateAtEndOfStream(true);
|
||||
|
||||
@@ -24,6 +24,7 @@ import java.awt.event.WindowAdapter;
|
||||
import java.awt.event.WindowEvent;
|
||||
import java.io.File;
|
||||
import java.io.PrintWriter;
|
||||
import java.util.ServiceLoader;
|
||||
import java.util.concurrent.Executors;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
@@ -48,12 +49,10 @@ import org.xml.sax.SAXException;
|
||||
import com.google.common.eventbus.AsyncEventBus;
|
||||
import com.google.common.eventbus.EventBus;
|
||||
|
||||
import ch.psi.fda.aq.VisualizationMapper;
|
||||
import ch.psi.fda.deserializer.DataDeserializer;
|
||||
import ch.psi.fda.deserializer.DataDeserializerTXT;
|
||||
import ch.psi.fda.gui.ScrollableFlowPanel;
|
||||
import ch.psi.fda.model.ModelManager;
|
||||
import ch.psi.fda.model.v1.Configuration;
|
||||
import ch.psi.fda.vdescriptor.VDescriptor;
|
||||
import ch.psi.fda.visualizer.Visualizer;
|
||||
|
||||
/**
|
||||
@@ -86,16 +85,21 @@ public class VisualizationMain {
|
||||
throw new IllegalArgumentException("Configuration file ["+configuration.getAbsolutePath()+"] does not exist");
|
||||
}
|
||||
|
||||
// Unmarshall configuration file
|
||||
Configuration c;
|
||||
try {
|
||||
c = ModelManager.unmarshall(configuration);
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException("Unable to load configuration file "+configuration.getAbsolutePath(), e);
|
||||
}
|
||||
VDescriptor vdescriptor = null;
|
||||
ServiceLoader<DescriptorProvider> providers = ServiceLoader.load(DescriptorProvider.class);
|
||||
for (DescriptorProvider provider : providers) {
|
||||
try{
|
||||
provider.load(configuration);
|
||||
vdescriptor = provider.getVDescriptor();
|
||||
break;
|
||||
}
|
||||
catch(Exception e){
|
||||
logger.log(Level.INFO, provider.getClass().getName()+ " is not able to read provided descriptor files", e);
|
||||
}
|
||||
}
|
||||
|
||||
// Visualize data
|
||||
visualize(c, data);
|
||||
visualize(vdescriptor, data);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -104,7 +108,7 @@ public class VisualizationMain {
|
||||
* @param data
|
||||
* @throws InterruptedException
|
||||
*/
|
||||
public void visualize(Configuration configuration, File data) throws InterruptedException{
|
||||
public void visualize(VDescriptor vdescriptor, File data) throws InterruptedException{
|
||||
|
||||
if(data==null){
|
||||
throw new IllegalArgumentException("Data file is null");
|
||||
@@ -118,7 +122,7 @@ public class VisualizationMain {
|
||||
DataDeserializer deserializer = new DataDeserializerTXT(bus, data);
|
||||
|
||||
// Create Visualizer
|
||||
Visualizer visualizer = new Visualizer(VisualizationMapper.mapVisualizations(configuration.getVisualization()));
|
||||
Visualizer visualizer = new Visualizer(vdescriptor);
|
||||
|
||||
// visualizer.setTerminateAtEOS(true);
|
||||
// Adapt default visualizer behavior to optimize performance for visualization
|
||||
|
||||
@@ -200,7 +200,7 @@ public class XScanDescriptorProvider implements DescriptorProvider {
|
||||
matrixplot.setnY(nY);
|
||||
|
||||
matrixplot.getData().add(new XYZSeries(idX, idY, idZ));
|
||||
vdescriptor.getPlots().add(matrixplot);
|
||||
vd.getPlots().add(matrixplot);
|
||||
}
|
||||
else if(v instanceof ch.psi.fda.model.v1.MatrixPlotArray){
|
||||
// Support for 2D waveform plots
|
||||
@@ -280,7 +280,7 @@ public class XScanDescriptorProvider implements DescriptorProvider {
|
||||
matrixplot.setnY(nY);
|
||||
|
||||
matrixplot.getData().add(new YZSeries(idY, idZ));
|
||||
vdescriptor.getPlots().add(matrixplot);
|
||||
vd.getPlots().add(matrixplot);
|
||||
|
||||
}
|
||||
else{
|
||||
|
||||
Reference in New Issue
Block a user