
public class RaftsMain
extends org.lsst.ccs.framework.Module
implements org.lsst.ccs.framework.HardwareController
| Constructor and Description |
|---|
RaftsMain(String name,
int tickMillis,
int monMillis,
String configName)
Constructor.
|
RaftsMain(String name,
int tickMillis,
int monMillis,
String configName,
org.lsst.ccs.drivers.reb.ClientFactory clientFactory)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
acquireImage()
Starts image acquisition.
|
List<Integer> |
checkAspics()
Checks all loaded ASPIC values against the configuration.
|
List<Integer> |
checkCabacs()
Checks all loaded CABAC values against the configuration.
|
org.lsst.ccs.framework.TreeWalkerDiag |
checkHardware()
Initializes the hardware.
|
void |
checkStarted()
Checks whether hardware is started.
|
void |
checkStopped()
Checks whether hardware is stopped.
|
void |
enableScan(boolean value)
Sets the scan mode enables.
|
List<String> |
getChannelNames()
Gets the list of monitored channel names.
|
double |
getChannelValue(String name)
Gets a monitored channel value.
|
Map<String,Object> |
getConfigValues()
Gets the list of configured values from all devices.
|
List<Integer> |
getDataSource()
Gets the data sources from all REBs.
|
List<String> |
getDevices()
Gets the list of all device names.
|
RaftFullState |
getFullState()
Gets the full state of the rafts module.
|
List<Map<String,Integer>> |
getFunctionMap()
Gets the list of all function maps.
|
static ImageData |
getImage(String fileName,
int offset,
int count)
Gets a portion of a saved raw image.
|
List<Map<String,Integer>> |
getMainMap()
Gets the list of all main program maps.
|
List<Integer> |
getParameter(String name)
Gets the list of all values for a parameter.
|
List<Map<String,Integer>> |
getPointers()
Gets the list of all pointer information maps.
|
List<String> |
getREBDevices()
Gets the list of REB device names.
|
List<Map<String,Integer>> |
getSubroutineMap()
Gets the list of all subroutine maps.
|
List |
getTime()
Gets all time base values.
|
Map<String,Long> |
getTimes()
Gets all time base values.
|
void |
initModule()
Initializes the rafts subsystem.
|
List<Boolean> |
isBackBiasOn()
Gets the back bias on states.
|
List<Boolean> |
isScanEnabled()
Gets the scan mode enabled states.
|
int |
loadAspics(boolean all)
Loads ASPICs with their configured values.
|
int |
loadBiasDacs(boolean all)
Loads bias DACs with their configured values.
|
int |
loadCabacs()
Loads all CABACs with their configured values.
|
int |
loadDacs(boolean all)
Loads DACs with their configured values.
|
void |
loadNamedConfig(String name)
Loads a named rafts configuration.
|
List<Integer> |
loadSequencer(String fileName)
Loads all sequencers from a file.
|
double |
readChannelValue(String name)
Reads a monitored channel value.
|
void |
resetFrontEnd()
Resets the front ends.
|
void |
resetScan()
Resets the scan modes.
|
List<String> |
saveFitsImage(String dirName)
Saves the current image data as one or more FITS files.
|
List<String> |
saveImage(String dirName)
Saves the current image data as one or more sets of raw bytes.
|
void |
saveLimits()
Saves the monitoring limits.
|
void |
saveNamedConfig(String name)
Saves a named rafts configuration.
|
void |
sendStep()
Sends a sequencer step command.
|
void |
sendStop()
Sends a sequencer stop command.
|
void |
setBackBias(boolean value)
Sets the back bias on states.
|
void |
setDataSource(int value)
Sets the data sources in all REBs.
|
void |
setDefaultImageDirectory(String dirName)
Sets the default image directory.
|
void |
setExposureTime(double expTime)
Sets the FITS image exposure time.
|
void |
setFitsFileNamePattern(String pattern)
Sets the FITS image file name pattern.
|
void |
setImageDataFileNamePattern(String pattern)
Sets the raw image data file name pattern.
|
void |
setParameter(String name,
int value)
Sets a parameter value in all REBs.
|
List<Integer> |
setStart(String mainName)
Sets the start address for all sequencers.
|
void |
setTickMillis(int value)
Sets the tick period.
|
void |
setTime()
Sets the time base to the current system time.
|
void |
startSequencer()
Starts the sequencers.
|
void |
startTicking()
Starts the subsystem.
|
void |
tick()
Performs periodic trending data broadcast.
|
getComponentTree, getEnvironment, getName, getNObserverThreads, getObservables, getSubsystem, getTickMillis, init, listens, postStart, processUpdate, sendSignal, sendSignalWithTimeLimit, setEnvironment, setName, setNObserverThreads, setObservables, shutdownNow, signal, updateaddObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChangedclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitchange, dropSubmittedChanges, getCheckedValueFromConfiguration, getChildren, getComponentByName, getParent, getParentObject, getSubmittedChanges, isParameterConfigurable, notifyChange, notifyChangeWithoutPreliminaryChecks, printConfigurableParameters, setBulkParameter, start, submitChange, submitChanges, validateBulkChangepublic RaftsMain(String name, int tickMillis, int monMillis, String configName)
name - The subsystem name.tickMillis - The tick period (ms).monMillis - The monitor period (ms).configName - The name of the configuration.public RaftsMain(String name, int tickMillis, int monMillis, String configName, org.lsst.ccs.drivers.reb.ClientFactory clientFactory)
name - The subsystem name.tickMillis - The tick period (ms).monMillis - The monitor period (ms).configName - The name of the configuration.clientFactory - The client factory that can be used to provide
simulated versions of the DAQ.public void initModule()
initModule in class org.lsst.ccs.framework.Modulepublic org.lsst.ccs.framework.TreeWalkerDiag checkHardware()
checkHardware in interface org.lsst.ccs.framework.HardwareControllerpublic void checkStarted()
checkStarted in interface org.lsst.ccs.framework.HardwareControllerpublic void checkStopped()
checkStopped in interface org.lsst.ccs.framework.HardwareControllerpublic void startTicking()
startTicking in class org.lsst.ccs.framework.Modulepublic void tick()
tick in class org.lsst.ccs.framework.Module@Command(type=ACTION, description="Set the tick interval") public void setTickMillis(@Argument(name="value",description="The tick period (ms)") int value)
setTickMillis in class org.lsst.ccs.framework.Modulevalue - The tick period (milliseconds) to set.@Command(type=ACTION, description="Save the current configuration") public void saveNamedConfig(String name) throws IOException
name - The configuration nameIOException@Command(type=ACTION, description="Load a named rafts configuration") public void loadNamedConfig(String name) throws IOException
name - The configuration nameIOException@Command(type=ACTION, description="Save the monitoring limits") public void saveLimits() throws IOException
IOException@Command(type=QUERY, description="Get the full Raft module state") public RaftFullState getFullState()
@Command(type=ACTION, description="Set the REBs\' system time") public void setTime() throws Exception
Exception@Command(type=QUERY, description="Get the REBs\' system times") public Map<String,Long> getTimes() throws Exception
Exception@Command(type=QUERY, description="Get the REBs\' system times") public List getTime() throws Exception
Exception@Command(type=QUERY, description="Get the list of all devices") public List<String> getDevices()
@Command(type=QUERY, description="Get the list of REB devices") public List<String> getREBDevices()
@Command(type=QUERY, description="Get the list of channel names") public List<String> getChannelNames()
@Command(type=QUERY, description="Get a channel value") public double getChannelValue(@Argument(name="name",description="Channel name") String name) throws org.lsst.ccs.drivers.reb.REBException
name - The channel nameorg.lsst.ccs.drivers.reb.REBException - if the channel doesn't exist@Command(type=QUERY, description="Read a channel value") public double readChannelValue(@Argument(name="name",description="Channel name") String name) throws org.lsst.ccs.drivers.reb.REBException
name - The channel nameorg.lsst.ccs.drivers.reb.REBException - if the channel doesn't exist@Command(type=QUERY, description="Get the list of all configured values") public Map<String,Object> getConfigValues()
@Command(type=ACTION, description="Load DACs") public int loadDacs(@Argument(name="all",description="If true, load all DACs") boolean all) throws Exception
all - If true, all data are loaded; otherwise only changesException@Command(type=ACTION, description="Load bias DACs") public int loadBiasDacs(@Argument(name="all",description="If true, load all bias DACs") boolean all) throws Exception
all - If true, all data are loaded; otherwise only changesException@Command(type=ACTION, description="Load ASPICs") public int loadAspics(@Argument(name="all",description="If true, load all ASPICs") boolean all) throws Exception
all - If true, all data are loaded; otherwise only changesException@Command(type=QUERY, description="Check all ASPICs") public List<Integer> checkAspics() throws Exception
Exception@Command(type=ACTION, description="Load all CABACs") public int loadCabacs() throws Exception
Exception@Command(type=QUERY, description="Check all CABACs") public List<Integer> checkCabacs() throws Exception
Exception@Command(type=QUERY, description="Get the back bias on states") public List<Boolean> isBackBiasOn() throws Exception
Exception@Command(type=ACTION, description="Set the back bias on states") public void setBackBias(@Argument(name="value",description="The back bias on state") boolean value) throws Exception
value - The on state to set, true or falseException@Command(type=ACTION, description="Load all sequencers from a file") public List<Integer> loadSequencer(@Argument(name="filename",description="Sequencer file name") String fileName) throws Exception, IOException
fileName - The name of the file containing sequencer
instructionsExceptionIOException@Command(type=QUERY, description="Get the maps of mains") public List<Map<String,Integer>> getMainMap()
@Command(type=QUERY, description="Get the maps of subroutines") public List<Map<String,Integer>> getSubroutineMap()
@Command(type=QUERY, description="Get the maps of functions") public List<Map<String,Integer>> getFunctionMap()
@Command(type=QUERY, description="Get the maps of pointers") public List<Map<String,Integer>> getPointers()
@Command(type=QUERY, description="Get parameter values") public List<Integer> getParameter(@Argument(name="name",description="The parameter name") String name) throws Exception
name - The parameter nameException@Command(type=ACTION, description="Set a parameter value") public void setParameter(@Argument(name="name",description="The parameter name") String name, @Argument(name="value",description="The value to set") int value) throws Exception
name - The parameter namevalue - The value to setException@Command(type=QUERY, description="Get the data source") public List<Integer> getDataSource() throws Exception
Exception@Command(type=ACTION, description="Set the data sources") public void setDataSource(@Argument(name="value",description="The data source value") int value) throws Exception
value - The encoded data source: CCD or simulationException@Command(type=QUERY, description="Get the scan mode enabled states") public List<Boolean> isScanEnabled() throws Exception
Exception@Command(type=ACTION, description="Set the scan mode enables") public void enableScan(@Argument(name="value",description="The scan mode enabled state") boolean value) throws Exception
value - The enabled state to set, true or falseException@Command(type=ACTION, description="Reset the scan modes") public void resetScan() throws Exception
Exception@Command(type=ACTION, description="Set all sequencer start addresses") public List<Integer> setStart(@Argument(name="mainName",description="Main routine name") String mainName) throws Exception
mainName - The name of the main sequencer program to start atException@Command(type=ACTION, description="Start the sequencers") public void startSequencer() throws Exception
Exception@Command(type=ACTION, description="Send a sequencer stop command") public void sendStop() throws Exception
Exception@Command(type=ACTION, description="Send a sequencer step command") public void sendStep() throws Exception
Exception@Command(type=ACTION, description="Reset the front end") public void resetFrontEnd() throws Exception
Exception@Command(type=ACTION, description="Start image acquisition") public void acquireImage() throws Exception
Exception@Command(type=ACTION, description="Save the current image as raw bytes") public List<String> saveImage(@Argument(name="dirname",description="The directory to use",defaultValue="") String dirName) throws RaftException, IOException
dirName - The name of the directory where the image file is to
be saved.RaftExceptionIOException@Command(type=ACTION, description="Save the current image as a FITS file") public List<String> saveFitsImage(@Argument(name="dirname",description="The directory to use",defaultValue="") String dirName) throws IOException, RaftException
dirName - The name of the directory where the FITS file is to
be saved.RaftExceptionIOException@Command(type=QUERY, description="Get a portion of a saved raw image") public static ImageData getImage(@Argument(name="filename",description="The image file name") String fileName, @Argument(name="offset",description="The offset to the first pixel") int offset, @Argument(name="count",description="The number of pixels to get") int count) throws RaftException, IOException
fileName - The name of the file containing the imageoffset - The offset (in pixels) to the first pixel data to
obtain.count - The number of data pixels to obtain.RaftExceptionIOException@Command(type=ACTION, description="Set the default image directory") public void setDefaultImageDirectory(@Argument(name="dirname",description="The directory name") String dirName)
dirName - The directory name@Command(type=ACTION, description="Set the FITS file name pattern") public void setFitsFileNamePattern(@Argument(name="pattern",description="The file name pattern") String pattern)
pattern - The file name pattern to set@Command(type=ACTION, description="Set the raw image data file name pattern") public void setImageDataFileNamePattern(@Argument(name="pattern",description="The file name pattern") String pattern)
pattern - The file name pattern to set@Command(type=ACTION, description="Set the FITS exposure time") public void setExposureTime(@Argument(name="exptime",description="The exposure time") double expTime)
expTime - The exposure time (secs)Copyright © 2016 LSST. All rights reserved.