Include setrting beam on delay
This commit is contained in:
@@ -233,6 +233,9 @@
|
|||||||
</SubComponents>
|
</SubComponents>
|
||||||
</Container>
|
</Container>
|
||||||
<Component class="ch.psi.pshell.ui.CamServerViewer" name="camServerViewer">
|
<Component class="ch.psi.pshell.ui.CamServerViewer" name="camServerViewer">
|
||||||
|
<AuxValues>
|
||||||
|
<AuxValue name="JavaCodeGenerator_CreateCodeCustom" type="java.lang.String" value="new MyCamServerViewer()"/>
|
||||||
|
</AuxValues>
|
||||||
<Constraints>
|
<Constraints>
|
||||||
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
|
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout" value="org.netbeans.modules.form.compat2.layouts.DesignBorderLayout$BorderConstraintsDescription">
|
||||||
<BorderConstraints direction="Center"/>
|
<BorderConstraints direction="Center"/>
|
||||||
|
|||||||
+65
-12
@@ -53,7 +53,64 @@ public class ScreenPanel extends Panel implements CamServerViewer.CamServerViewe
|
|||||||
DiscretePositioner filter;
|
DiscretePositioner filter;
|
||||||
final Logger logger;
|
final Logger logger;
|
||||||
|
|
||||||
|
class MyCamServerViewer extends CamServerViewer{
|
||||||
|
public void grabBackground() throws Exception {
|
||||||
|
if (getCamera() != null) {
|
||||||
|
boolean laserOn1 = false;
|
||||||
|
boolean laserOn2 = false;
|
||||||
|
OptionResult ret = SwingUtils.showOption(getTopLevel(), "Capture Background", "Do you want to check laser on delay?", OptionType.YesNoCancel);
|
||||||
|
if (ret == OptionResult.Yes){
|
||||||
|
laserOn1 = getLaserState(1);
|
||||||
|
laserOn2 = getLaserState(2);
|
||||||
|
if (laserOn1 || laserOn2) {
|
||||||
|
if (laserOn1){
|
||||||
|
ret = SwingUtils.showOption(getTopLevel(), "Capture Background", "Do you want to put Bunch 1 laser on delay for capturing background?", OptionType.YesNoCancel);
|
||||||
|
if (ret == OptionResult.No) {
|
||||||
|
laserOn1 = false;
|
||||||
|
}
|
||||||
|
if (ret == OptionResult.Cancel) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (laserOn2){
|
||||||
|
ret = SwingUtils.showOption(getTopLevel(), "Capture Background", "Do you want to put Bunch 2 laser on delay for capturing background?", OptionType.YesNoCancel);
|
||||||
|
if (ret == OptionResult.No) {
|
||||||
|
laserOn2= false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ret == OptionResult.Cancel) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (laserOn1) {
|
||||||
|
setLaserState(1,false);
|
||||||
|
}
|
||||||
|
if (laserOn2) {
|
||||||
|
setLaserState(2,false);
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
System.out.println("Grabbing background for: " + getDisplayName());
|
||||||
|
if (getServer() != null) {
|
||||||
|
getServer().captureBackground(5);
|
||||||
|
} else {
|
||||||
|
getCamera().captureBackground(5, 0);
|
||||||
|
}
|
||||||
|
} finally {
|
||||||
|
if (laserOn1) {
|
||||||
|
setLaserState(1,true);
|
||||||
|
}
|
||||||
|
if (laserOn2) {
|
||||||
|
setLaserState(2,true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
SwingUtils.showMessage(getTopLevel(), "Success", "Success capturing background", 5000);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public ScreenPanel() {
|
public ScreenPanel() {
|
||||||
logger = Logger.getLogger(getClass().getName());
|
logger = Logger.getLogger(getClass().getName());
|
||||||
@@ -357,17 +414,13 @@ public class ScreenPanel extends Panel implements CamServerViewer.CamServerViewe
|
|||||||
|
|
||||||
boolean getLaserState(int bunch) throws Exception {
|
boolean getLaserState(int bunch) throws Exception {
|
||||||
//return (Epics.get("SIN-TIMAST-TMA:Beam-Las-Delay-Sel", Integer.class) == 0);
|
//return (Epics.get("SIN-TIMAST-TMA:Beam-Las-Delay-Sel", Integer.class) == 0);
|
||||||
try{
|
if (bunch<=0){
|
||||||
if (bunch<=0){
|
return getLaserState(1) && getLaserState(2);
|
||||||
return getLaserState(1) && getLaserState(2);
|
|
||||||
}
|
|
||||||
if (bunch==2){
|
|
||||||
return (Epics.get("SWISSFEL-STATUS:Bunch-2-OnDelay-Sel", Integer.class) == 0);
|
|
||||||
}
|
|
||||||
return (Epics.get("SWISSFEL-STATUS:Bunch-1-OnDelay-Sel", Integer.class) == 0);
|
|
||||||
} catch (Exception ex){
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
if (bunch==2){
|
||||||
|
return (Epics.get("SWISSFEL-STATUS:Bunch-2-OnDelay-Sel", Integer.class) == 0);
|
||||||
|
}
|
||||||
|
return (Epics.get("SWISSFEL-STATUS:Bunch-1-OnDelay-Sel", Integer.class) == 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -392,7 +445,7 @@ public class ScreenPanel extends Panel implements CamServerViewer.CamServerViewe
|
|||||||
buttonPulse1 = new javax.swing.JButton();
|
buttonPulse1 = new javax.swing.JButton();
|
||||||
buttonPulse2 = new javax.swing.JButton();
|
buttonPulse2 = new javax.swing.JButton();
|
||||||
textPulse = new javax.swing.JTextField();
|
textPulse = new javax.swing.JTextField();
|
||||||
camServerViewer = new ch.psi.pshell.ui.CamServerViewer();
|
camServerViewer = new MyCamServerViewer();
|
||||||
|
|
||||||
setPreferredSize(new java.awt.Dimension(873, 600));
|
setPreferredSize(new java.awt.Dimension(873, 600));
|
||||||
setLayout(new java.awt.BorderLayout());
|
setLayout(new java.awt.BorderLayout());
|
||||||
|
|||||||
Reference in New Issue
Block a user