reorganized again

debugging some channel access problems ...
This commit is contained in:
2013-07-30 13:19:55 +02:00
parent f84a5696b0
commit 6fedd86d23
8 changed files with 64 additions and 6 deletions
@@ -30,8 +30,10 @@ import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import javax.script.ScriptException;
import ch.psi.fda.core.messages.ComponentMetadata;
import ch.psi.fda.core.messages.DataMessageMetadata;
import ch.psi.fda.aq.ng.rdescriptors.ProbeDescriptor;
import ch.psi.fda.aq.ng.rdescriptors.ShellDescriptor;
import ch.psi.fda.aq.ng.resources.ChannelProbeResource;
import ch.psi.fda.aq.ng.resources.ShellResource;
import ch.psi.fda.core.messages.Message;
import ch.psi.jcae.Channel;
import ch.psi.jcae.ChannelDescriptor;
@@ -27,6 +27,8 @@ import java.util.Set;
import java.util.UUID;
import java.util.logging.Logger;
import ch.psi.fda.aq.ng.rdescriptors.ProbeDescriptor;
import ch.psi.fda.aq.ng.rdescriptors.ShellDescriptor;
import ch.psi.fda.core.messages.ComponentMetadata;
import ch.psi.fda.core.messages.DataMessageMetadata;
import ch.psi.fda.model.v1.Action;
@@ -16,7 +16,7 @@
* along with this code. If not, see <http://www.gnu.org/licenses/>.
*
*/
package ch.psi.fda.aq.ng;
package ch.psi.fda.aq.ng.rdescriptors;
import java.util.ArrayList;
import java.util.List;
@@ -16,7 +16,7 @@
* along with this code. If not, see <http://www.gnu.org/licenses/>.
*
*/
package ch.psi.fda.aq.ng;
package ch.psi.fda.aq.ng.rdescriptors;
/**
* Resource descriptor of an operating system shell.
@@ -16,7 +16,7 @@
* along with this code. If not, see <http://www.gnu.org/licenses/>.
*
*/
package ch.psi.fda.aq.ng;
package ch.psi.fda.aq.ng.resources;
import java.util.List;
import java.util.concurrent.BlockingQueue;
@@ -16,7 +16,7 @@
* along with this code. If not, see <http://www.gnu.org/licenses/>.
*
*/
package ch.psi.fda.aq.ng;
package ch.psi.fda.aq.ng.resources;
import java.io.BufferedReader;
import java.io.IOException;
@@ -18,6 +18,10 @@
*/
package ch.psi.fda.aq.ng;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeoutException;
import java.util.logging.Logger;
import org.junit.After;
@@ -34,6 +38,10 @@ import ch.psi.fda.model.v1.DiscreteStepDimension;
import ch.psi.fda.model.v1.Scan;
import ch.psi.fda.model.v1.ScriptAction;
import ch.psi.fda.model.v1.ShellAction;
import ch.psi.jcae.Channel;
import ch.psi.jcae.ChannelDescriptor;
import ch.psi.jcae.ChannelException;
import ch.psi.jcae.ChannelService;
import ch.psi.jcae.impl.DefaultChannelService;
/**
@@ -171,5 +179,29 @@ public class AcquisitionEngineNGTest {
elapsed = end-start;
logger.info("Elapsed time: "+elapsed);
}
@Test
public void testCustomScript() {
Map<String, Object> rdescriptors = new HashMap<>();
rdescriptors.put("x", new ChannelDescriptor<>(Double.class, "MTEST-HW3:MOT1", false));
rdescriptors.put("xr", new ChannelDescriptor<>(Double.class, "MTEST-HW3:MOT2.RBV", false));
String script = "for i in range(1,5,1):\n"+
" x.setValueAsync(float(i))\n"+
// " print xr.getValue()\n";
" print 'done'\n";
engine.execute(rdescriptors, script);
}
@Test
public void testT() throws ChannelException, InterruptedException, TimeoutException, ExecutionException{
ChannelService c = new DefaultChannelService();
Channel<Double> ch = c.createChannel(new ChannelDescriptor<>(Double.class, "MTEST-HW3:MOT1", false));
for(double i=0;i<=5.0; i=i+1){
ch.setValueAsync(i);
// System.out.println(ch.getValue());
System.out.println("done");
}
}
}
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration numberOfExecution="0" xmlns="http://www.psi.ch/~ebner/models/scan/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.psi.ch/~ebner/models/scan/1.0 ../../../src/model-v1.xsd">
<!--
1D scan reading out an array channel
-->
<data format="txt"/>
<scan id="">
<dimension>
<positioner id="id0" type="Double" name="MTEST-HW3:MOT1" xsi:type="ArrayPositioner"> <!-- settlingTime="0.1" -->
<positions>0.0 1.0 2.0 3.0 4.0</positions>
</positioner>
<detector id="idD0" xsi:type="ScalarDetector" name="MTEST-HW3:MOT1.RRBV"/>
<!-- <detector id="idD2" xsi:type="ArrayDetector" name="MTEST-PC-SSCAN:scan2.P1PA" arraySize="10"/>
<detector id="idD20" xsi:type="ArrayDetector" name="MTEST-PC-SSCAN:scan1.P1PA" arraySize="10"/> -->
<detector id="idD1" xsi:type="ScalarDetector" name="MTEST-HW3:MOT1.RBV"/>
</dimension>
</scan>
<visualization title="Array" xsi:type="LinePlot" x="id0" y="id0"/>
</configuration>