00001 package Sct_SctApi;
00002
00003
00011 public interface SctApiOperations extends ipc.freeableOperations
00012 {
00013 void initialiseAll (int runNumber) throws Sct_SctApi.SctApiException;
00014 void shutdownAll () throws Sct_SctApi.SctApiException;
00015 void status ();
00016 void setRunNumber (int newRun);
00017 void setScanNumber (int newScan);
00018 int getRunNumber ();
00019 int getScanNumber ();
00020 void unsetDebugOption (String opt);
00021 void setDebugOption (String opt);
00022 String[] listEnabledDebugOptions ();
00023 String[] listDebugOptions ();
00024 void standardRegisterDump (int partition, int crate, int rod);
00025 void standardRegisterDumpAll ();
00026 String[] getModuleList ();
00027 boolean isRODPresent (int partition, int crate, int rod);
00028 void awaitResponse (int partition, int crate, int rod);
00029 int[] getResponse (int partition, int crate, int rod);
00030 void configureBOC (int partition, int crate, int rod);
00031 void flashLED (int partition, int crate, int rod, short slaveNumber, int period, int flashes) throws Sct_SctApi.SctApiException;
00032 void echo (int partition, int crate, int rod, int[] data) throws Sct_SctApi.SctApiException;
00033 void createDebugPrimList () throws Sct_SctApi.SctApiException;
00034 void addDebugPrimList (int index, int id, int version, int[] body) throws Sct_SctApi.SctApiException;
00035 void sendDebugPrimList (int partition, int crate, int rod) throws Sct_SctApi.SctApiException;
00036 void sendDebugSlavePrimList (int partition, int crate, int rod, int slave, boolean await, boolean response) throws Sct_SctApi.SctApiException;
00037
00038
00039 void loadConfiguration (String filename) throws Sct_SctApi.SctApiException;
00040 void storeModuleConfigurations () throws Sct_SctApi.SctApiException;
00041 void configureAllModules () throws Sct_SctApi.SctApiException;
00042
00044 sctConf.ABCDModule retrieveModule (int mid);
00045
00046
00047 short dspBlockDump (int partition, int crate, int rod, int dspStart, int numWords, int dspNumber);
00048 int[] dspBlockRead (int partition, int crate, int rod, int dspStart, int numWords, int dspNumber);
00049 short dspBlockWrite (int partition, int crate, int rod, int[] buffer, int dspAddress, int dspNumber);
00050 int dspSingleRead (int partition, int crate, int rod, int dspAddr, int dspNumber);
00051 void dspSingleWrite (int partition, int crate, int rod, int dspAddr, int val, int dspNumber);
00052 int[] readSlaveDsp (int partition, int crate, int rod, short s, int add, int words);
00053
00054
00055 int findModuleSerial (String sn);
00056 String convertToString (int mid);
00057 int findModule (short mur, short number);
00058 int findModuleRod (int partition, int crate, int rod, int channel);
00059
00060
00061 int findBarrelModule (int barrel, int row, short number);
00062 void convertToBarrelModule (int mid, org.omg.CORBA.IntHolder barrel, org.omg.CORBA.IntHolder row, org.omg.CORBA.ShortHolder number);
00063 int findEndcapModule (int disk, int ring, int number);
00064 void convertToEndcapModule (int mid, org.omg.CORBA.IntHolder disk, org.omg.CORBA.IntHolder ring, org.omg.CORBA.IntHolder number);
00065
00067 void getABCDModules (Sct_SctApi.BankType bank) throws Sct_SctApi.SctApiException;
00068 void getABCDModule (int mid, Sct_SctApi.BankType bank) throws Sct_SctApi.SctApiException;
00069 sctConf.ABCDModule getABCDModuleRaw (int partition, int crate, int rod, int slot, Sct_SctApi.BankType bank) throws Sct_SctApi.SctApiException;
00070 void setABCDModule (int mid, Sct_SctApi.BankType bank) throws Sct_SctApi.SctApiException;
00071 void setABCDModules (Sct_SctApi.BankType bank) throws Sct_SctApi.SctApiException;
00072 void sendABCDModule (int mid, Sct_SctApi.BankType bank, int type) throws Sct_SctApi.SctApiException;
00073 void sendABCDModules (Sct_SctApi.BankType bank) throws Sct_SctApi.SctApiException;
00074 void modifyABCDMask (int mid, int[] mask);
00075 void modifyABCDTrims (int mid, short[] trims);
00076 void modifyABCDRC (int mid, int chip, short index, double p0, double p1, double p2);
00077
00078
00079 void modifyABCDVar (int typ, double var);
00080 void modifyABCDModuleVar (int mid, int typ, double var);
00081 void modifyABCDChipVar (int mid, int chip, int typ, double var);
00082 void modifyABCDVarROD (int typ, double var, Sct_SctApi.BankType bank);
00083 void modifyABCDModuleVarROD (int mid, int typ, double var, Sct_SctApi.BankType bank);
00084 void modifyBOCParam (int partition, int crate, int rod, int channel, int type, int val);
00085 void lasersOff ();
00086
00087
00088 void timSetFrequency (int partition, int crate, double trigFreq, double rstFreq);
00089 void freeTriggers (int partition, int crate);
00090 void stopTriggers (int partition, int crate);
00091 void timL1A (int partition, int crate);
00092 void timCalL1A (int partition, int crate, short delay);
00093 short timReadRegister (int partition, int crate, short value);
00094 void sendTimTrigger (int partition, int crate, Sct_SctApi.Trigger trig);
00095 void sendTrigger (int partition, int crate, int rod, Sct_SctApi.Trigger trig);
00096
00097
00098 void doScan (Sct_SctApi.Scan thisScan) throws Sct_SctApi.SctApiException;
00099 void doRawScan (Sct_SctApi.Scan thisScan, int delay, int width, boolean configure, boolean clockByTwo) throws Sct_SctApi.SctApiException;
00100 void printBOCSetup (int partition, int crate, int rod);
00101 sctConf.BOCChannelConfig[] currentBOCSetup (int partition, int crate, int rod);
00102 sctConf.BOCGlobalConfig currentBOCRegisters (int partition, int crate, int rod);
00103 void printABCDModule (int mid);
00104 void printABCDRodModule (int mid, Sct_SctApi.BankType bank);
00105 void decodeEvent (int partition, int crate, int rod, short sl, short index, boolean extFlag, boolean errorType);
00106 void rawData (int partition, int crate, int rod, int delay, int units, boolean setMask);
00107 void rawDataWithTrigger (int partition, int crate, int rod, int delay, int units, boolean setMask, Sct_SctApi.Trigger trig);
00108 void sendL1A (int partition, int crate, int rod);
00109 short[] probe (int partition, int crate, int rod);
00110 short[] probeHarness (int partition, int crate, int rod, int harness);
00111 short[] probeWithTrigger (int partition, int crate, int rod, Sct_SctApi.Trigger trig);
00112 short[] probeHarnessWithTrigger (int partition, int crate, int rod, Sct_SctApi.Trigger trig, int harness);
00113 short[][] probeScanHarnessWithTrigger (int partition, int crate, int rod, Sct_SctApi.Scan trig, int harness);
00114 boolean checkAllModulesProbe (String chars) throws Sct_SctApi.SctApiException;
00115 Sct_SctApi.AutoConfigResult[] autoConfigureScan () throws Sct_SctApi.SctApiException;
00116 int getRodSlot (int partition, int crate, int rod);
00117 void testLinkOutSelect (int partition, int crate, int rod, int link);
00118 int testLinkOutRetrieve (int partition, int crate, int rod);
00119
00120
00121 void requestHardReset (int mid);
00122 void requestIVCurve (int mid, float start, float stop, float step, short delay, float currentLim);
00123 void setSelect (int mid, boolean value);
00124 void setSelectAllInCrate (int crate, boolean value);
00125 void changeRunState (int state);
00126
00127
00128 void ddcSetSingleTimeout (short timeout);
00129 short ddcGetSingleTimeout ();
00130 void ddcSetMultipleTimeout (short timeout);
00131 short ddcGetMultipleTimeout ();
00132 void ddcChangeState (int crate, int channel, short state);
00133
00134
00135 void ddcChangeStateAll (int crate, short state);
00136
00137
00138 void ddcLoadConfiguration (int crate, short state);
00139
00140
00141 void ddcHardReset (int crate, int channel);
00142
00143
00144 void ddcHardResetAll (int crate);
00145
00146
00147 int ddcGetChannelParameterInt (int crate, int channel, String name);
00148
00149
00150 float ddcGetChannelParameterFloat (int crate, int channel, String name);
00151
00152
00153 String ddcGetChannelParameterString (int crate, int channel, String name);
00154
00155
00156 int ddcGetCardParameterInt (int crate, int card, String name);
00157
00158
00159 float ddcGetCardParameterFloat (int crate, int card, String name);
00160
00161
00162 String ddcGetCardParameterString (int crate, int card, String name);
00163
00164
00165 int ddcGetCrateParameterInt (int crate, String name);
00166
00167
00168 float ddcGetCrateParameterFloat (int crate, String name);
00169
00170
00171 String ddcGetCrateParameterString (int crate, String name);
00172
00173
00174 void ddcGetCrateParameters (int crate, String[] names, Sct_SctApi.NameValueListHolder nameValues);
00175
00176
00177 Sct_SctApi.Scan createScan ();
00178 Sct_SctApi.Scan getDefaultScan ();
00179 Sct_SctApi.Trigger createTrigger ();
00180 Sct_SctApi.Trigger getDefaultTrigger ();
00181 Sct_SctApi.Scan[] knownScans ();
00182 }