Main Page | Packages | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

TriggerSelect.java

00001 package GuiComponents.SctApi;
00002 
00003 import javax.swing.*;
00004 import java.awt.*;
00005 import java.awt.event.*;
00006 
00007 public class TriggerSelect extends JDialog {
00008     Sct_SctApi.SctApi api;
00009     Sct_SctApi.Trigger trigger;
00010 
00011     String [] comboStrings = {"L1A", "L1A+L1A", "CAL+L1A", "P+L1A", 
00012                               "SR+L1A", "SR+CAL+L1A", "SR+P+L1A", 
00013                               "BCR+L1A", "BCR+CAL+L1A", "BC+P+L1A"};
00014 
00015     JComboBox combo;
00016 
00017     JTextField delay1Text;
00018     JTextField delay2Text;
00019     JTextField delayText;
00020     JTextField incText;
00021 
00022     TriggerSelect(Sct_SctApi.SctApi a, Sct_SctApi.Trigger trig) {
00023         super((JFrame)null, "Edit trigger", true);
00024 
00025         api = a;
00026         trigger = trig;
00027 
00028 //         setLayout(new BorderLayout());
00029 
00030         JPanel controls = new JPanel();
00031 
00032         combo = new JComboBox(comboStrings);
00033         controls.add(new JLabel("Trigger Type"));
00034         controls.add(combo);
00035 
00036         controls.add(new JLabel("Delay1"));
00037         delay1Text = new JTextField("0", 5);
00038         controls.add(delay1Text);
00039         controls.add(new JLabel("Delay2"));
00040         delay2Text = new JTextField("0", 5);
00041         controls.add(delay2Text);
00042 
00043         controls.add(new JLabel("Delay To Increment"));
00044         delayText = new JTextField("0", 5);
00045         controls.add(delayText);
00046         controls.add(new JLabel("Increment"));
00047         incText = new JTextField("0", 5);
00048         controls.add(incText);
00049 
00050         getContentPane().add(controls);
00051     }
00052 
00053     void modifyTrigger() {
00054         String type = (String)combo.getSelectedItem();
00055 
00056         short delay1 = Short.parseShort(delay1Text.getText());
00057         short delay2 = Short.parseShort(delay2Text.getText());
00058 
00059         if(type.equals("L1A")) { trigger.singleL1A(); }
00060         else if(type.equals("L1A+L1A")) { trigger.doubleL1A(delay1); }
00061         else if(type.equals("CAL+L1A")) { trigger.calL1A(delay1); }
00062         else if(type.equals("P+L1A")) { trigger.pulseL1A(delay1); }
00063         else if(type.equals("SR+L1A")) { trigger.softL1A(delay1); }
00064         else if(type.equals("SR+CAL+L1A")) { trigger.softCalL1A(delay1, delay2); }
00065         else if(type.equals("SR+P+L1A")) { trigger.softPulseL1A(delay1, delay2); }
00066         else if(type.equals("BCR+L1A")) { trigger.bcL1A(delay1); }
00067         else if(type.equals("BCR+CAL+L1A")) { trigger.bcCalL1A(delay1, delay2); }
00068         else if(type.equals("BC+P+L1A")) { trigger.bcPulseL1A(delay1, delay2); }
00069         else {
00070             // Bad trigger type...
00071         }
00072 
00073         short delayIncr = Short.parseShort(delayText.getText());
00074         short increment = Short.parseShort(incText.getText());
00075 
00076         if(delayIncr == 0) {
00077             trigger.setCommIncr((short)1, increment);
00078         } else if(delayIncr == 1) {
00079             trigger.setCommIncr((short)3, increment);
00080         }
00081     }
00082 }

Generated on Thu Jul 15 09:55:50 2004 for SCT DAQ/DCS Software - Java by doxygen 1.3.5