public class WifsipMaster extends MagellanMaster implements WifsipControlling, AutoFocusControlling
| Modifier and Type | Class and Description |
|---|---|
static class |
WifsipMaster.WifsipGeometry
Default conversion of focus star position to readout frame on CCD.
|
CameraMaster.CardInfo, CameraMaster.WhenGenericMaster.StandaloneReceiverTorso.CommandHandlerPropertyResources.Load, PropertyResources.URLResource| Modifier and Type | Field and Description |
|---|---|
private Map<String,Function> |
colortable
Additional correction to focus star and the color of focus star.
|
private static File |
DEFARCHIVEPATH
The default path where the archive host stores fits files.
|
private static String |
DEFBINDNAME
The default binding name for this master.
|
private static boolean |
DEFCAMERABIAS
Default ccd driver does support bias.
|
private static boolean |
DEFCAMERADARK
Default ccd driver does support dark.
|
private static long |
DEFENABLEWATCH
If set to any time other than zero, this is the watch intervall.
|
private static String |
DEFEXPOSURETRIGGER
The default exposure-trigger name
|
private static String |
DEFFILTERSELECTED
The parameter name that holds the current filter.
|
private static String |
DEFFILTERWHEEL
The name of the filter wheel driver.
|
private static String |
DEFFITSKEYS
Default fits keys and their parameter and remark mapping.
|
private static String |
DEFFIXFITSKEYS
Default fixed fits keys.
|
private static String |
DEFFOCUSEXPOSURE
The default focus exposure table, per filter, mag to msec.
|
private static long |
DEFFOCUSTIME
The default focus exposure time in manual mode.
|
private static long |
DEFMINEXPOSURE
The default minimal exposure time
|
private static double |
DEFPIXELSCALE
The default pixel scale in pixel per radian.
|
private static int |
DEFPRAEZERO
The default position closest to zero -point.
|
private static long |
DEFREADOUTTIME
The default multiplier for read-out time.
|
private static long |
DEFSELECTFILTERTIME
The default time to change the filter.
|
private static String |
DEFTRANSFERTRIGGER
The default exposure-trigger name
|
private static String |
DEFWHEELPOSITIONS
The default names to position lookup table for the wheel.
|
private Map<String,Function> |
exposuretable
The exposure time from the focus star and filter.
|
private Focusable |
focusser
IF I hava a telescope with focussing capabilities.
|
private MomentsFocusser |
focusunit
Then I can focus using wifsip and fits moments.
|
static String |
KEY_FILTERSELECTED
The parameter name that holds the current filter.
|
static String |
KEY_FILTERWHEEL
The name of the filter wheel drivers.
|
static String |
KEY_FOCUSCLASS
The key matching the properties of the focusser.
|
static String |
KEY_FOCUSCOLOR
How to get from color of star to creected magnitude.
|
static String |
KEY_FOCUSEXPOSURE
How to get from corrected magnitudes to exposure times in ms.
|
static String |
KEY_FOCUSGEOMETRY
The key matching the properties of the focus gemotery.
|
static String |
KEY_FOCUSTIME
Default exposure time for auto focus.
|
static String |
KEY_PIXELSCALE
How to get from color of star to creected magnitude.
|
static String |
KEY_PRAEZERO
The default position closest to zero -point.
|
static String |
KEY_SELECTFILTERTIME
Time for selecting the filter.
|
static String |
KEY_WHEELPOSITIONS
The filter wheel position for telescope light.
|
static double |
REFMAG
A reference magnitude for focus.
|
private List<String> |
wheeldriver
A list of filter-wheel driver names.
|
private Map<String,List<Integer>> |
wheelposition
A lookup-table for filter names to integer position in filter wheels.
|
private MomentsGeometric |
wifsipfocus
How I convert the focus star x/y to a readout window and extension.
|
KEY_AUTOCLEARTIME, KEY_SELECTMODETIMEcamera, COMMENTSEPARATOR, DATENUMBERSEPARATOR, DEFSCIENCEFITS, fixfits, IMAGETYPE, KEY_ABORTEXPOSURETIME, KEY_ABORTFITS, KEY_ALWAYSZERO, KEY_ARCHIVEPATH, KEY_BIASFITS, KEY_BIASTIME, KEY_CAMERA, KEY_CAMERABIAS, KEY_CAMERADARK, KEY_CCDFITSKEYS, KEY_CCDWATCHMAXIMUM, KEY_CCDWATCHMINIMUM, KEY_DARKFITS, KEY_DATEFORMAT, KEY_DELETEFITS, KEY_ENABLEWATCH, KEY_EXPOSEBUFFER, KEY_EXPOSURETRIGGER, KEY_FITSKEYS, KEY_FITSTIME, KEY_FIXFITSKEYS, KEY_GEOMETRYTIME, KEY_LOGWATCH, KEY_MANUALSHUTTER, KEY_MASTERPATH, KEY_MAXEXPOSURE, KEY_MAXQUERIES, KEY_MINEXPOSURE, KEY_QUERYCYCLE, KEY_READOUTTIME, KEY_SAFETYTIME, KEY_SCIENCEFITS, KEY_TRANSFERTRIGGER, KEY_WATCHMAXVALUES, KEY_WATCHMINVALUES, KEY_WRITETIME, STRING, TYPEREMDEFUNIQUE, KEY_ABORTTIME, KEY_AUTOMATIC, KEY_COMMTIME, KEY_COMMUNICATOR, KEY_DRIVERS, KEY_HISTORYDB, KEY_INITTIME, KEY_NODB, KEY_OBSERVEDB, KEY_OVERRULEAUTO, KEY_PARKTIME, KEY_PERMISSIONDB, KEY_PROPOSALDB, KEY_QUITTIME, KEY_REAUTO, KEY_RESETTIME, KEY_SET, KEY_SHUTDOWNDELAY, KEY_STATUSTIME, KEY_TARGETDB, KEY_TASKDB, KEY_UNIQUE, KEY_USERDB, lastabort, lastinit, lastpark, lastreset, telescopeKEY_BIND, KEY_BINDNAME, KEY_COMMANDCASTER, KEY_ERRORCOOLKEY_ALIVE, KEY_EXPORTPORT, KEY_INIT, KEY_LISTENERNAME, KEY_RETRY, KEY_RETRYSLEEPKEY_NOINITONCREATE, POSTFIX_ALPHABET, POSTFIX_BYTES, POSTFIX_DIR, POSTFIX_EXT, POSTFIX_FILE, POSTFIX_LIST, POSTFIX_MODTIME, POSTFIX_URLKEY_LISTSEPARATOR, KEY_MAPKEYVALUECHAR, KEY_MAPSEPARATORNAMING_EXTENSIONNAMING_EXTENSIONKEY_INITDEPTHKEY_URLRESOURCES, KEY_URLUSECONFIG, KEY_URLUSECURRENT, KEY_URLUSEHOMECONFIG, KEY_CLASS| Constructor and Description |
|---|
WifsipMaster(Map<String,String> prop)
Constructs a new CCD master.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
accepts(CommandEvent ce)
Checks if the command received is accepted by the ccd master.
|
boolean |
autoFocus()
In manual mode, this is allowed.
|
protected boolean |
closeShutter()
For cameras with a 'manual' shutter, i.e., a shutter that is not
auto-operated by the CCD controller.
|
private ErrorEvent |
doAutoFocus(long expt,
boolean extsearch)
Tries to auto focus.
|
protected boolean |
doMode(CommandEvent cmd,
String mode)
If the camera supports mode switching, we try to switch the camera to the
stated mode.
|
boolean |
filterOffset(String name,
int off)
Steps the filter wheel on the given index back or forth for the given
number of steps.
|
private boolean |
filterWheelZero()
Does a zero-positioning on all filter wheels found.
|
boolean |
focus(double mm)
In manual mode, this is allowed.
|
boolean |
focusOffset(double mm)
In manual mode, this is allowed.
|
protected int |
getAcknowledgeNumber(CommandEvent cmd)
Returns the number of acknowledge events produced for each command.
|
protected long |
getCompletionTime(CommandEvent cmd,
int acknr)
Returns the individual completion times.
|
String |
getFilterPosition()
Gets the current fiber input source as the filter wheel position.
|
protected void |
init2()
The main initialization section.
|
protected boolean |
initializeMaster(CommandEvent cmd)
Initializes the CCD.
|
protected boolean |
initShutter()
If no explicit shutter action is required, simply return true here.
|
static void |
main(String[] arg)
Starts the ccd master with the given properties or directly accesses a
running CCD master.
|
protected boolean |
openShutter()
For cameras with a 'manual' shutter, i.e., a shutter that is not
auto-operated by the CCD controller.
|
private String |
parseFilter()
Parses the state of all filter wheels to get the current active filter.
|
private long |
prepareAutoFocus(AutoFocusCcd afc)
Uses the information provided in the auto-focus command to calculate a
correct exposure time and readout frame.
|
protected boolean |
processCommand(CommandEvent cmd,
int acknr)
Process the command.
|
double |
rescanned(String key,
String old,
String newval)
On reload, we can rebuild the fits tables.
|
boolean |
reset()
Zero positions all filter wheels and sets the calibration sledge to home.
|
protected boolean |
resetMaster(CommandEvent cmd)
Resets the CCD.
|
private boolean |
selectFilter(CommandEvent cmd,
String filter,
boolean zero)
Selects a new filter or filter wheel position within the adapter.
|
boolean |
setFilterPosition(String pos)
Selects fiber input / ccd onput by changing the filter wheel position
|
private Map<String,List<Integer>> |
setupFilterTable(List<String> wheels,
String pos)
Sets up the filter wheel table by parsing the individual filter wheel
entries into integer positions.
|
protected String |
statusMaster(CommandEvent cmd)
Returns a status information of the camera as a string.
|
selectReadoutMode, setAutoClearabortExposure, abortMaster, addFitsKey, exit, formatFitsName, getBiasExposure, getCcdCards, getDarkExposure, getFixedCards, getParameterCards, getScienceExposure, initStep, parkMaster, quit, quitMaster, readout, removeAllFitsKeys, removeFitsKey, setFullFrame, setImageGeometry, takeExposure, writeFitsaddErrorListener, addRmiErrorListener, automatic, createCommunicator, createCommunicator, external, formatWithGlobals, getAllDrivers, getDriver, getHistorySql, getObserveSql, getOffsetCaster, getParameterByKey, getParameterByName, getParameterCluster, getParameterValueByKey, getParameterValueByName, getPermissionSql, getProposalSql, getStatus, getTargetSql, getTaskSql, getUnique, getUniqueId, getUserSql, initialize, isAlive, isAuto, isManual, isPassive, manual, park, reload, resetAlarm, resetAllDrivers, restartAllDrivers, revert, rmiAddParameter, rmiCommand, rmiGet, rmiGetAllParameterNames, rmiRemoveParameter, rmiSet, setLastError, setOff, setParameterValueByKey, setParameterValueByName, setPassive, shutdown, zeroAllOmcaddRmiAcknowledgeListener, addRmiDoneListener, bindDefault, containsRemoteProperty, deregisterAtCaster, equals, getLastError, getRemoteProperties, getRemoteProperty, hashCode, notifyAcknowledgeListener, notifyDoneListener, registerAtCaster, removeRmiAcknowledgeListener, removeRmiDoneListener, sendAllPrematureDone, sendPrematureDone, setRemoteProperty, toString, unbindDefaultbindToRegistry, getBindName, isValid, notifyErrorListener, removeErrorListener, removeRmiErrorListener, sendError, sendError, sendError, sendStatus, sendStatus, sendStatus, unbindFromRegistryallBound, blockBinding, blockBinding, disconnect, getIP, getListenerName, isConnected, listenerName, releaseBinding, releaseBinding, startBinding, startBindingclone, createFrom, createFrom, createFrom, createInstance, getApplet, getAsResources, getLocate, getPropertiesToKey, getPropertiesToKey, getResource, getResourceAsStream, getResourceFromKey, getResources, hasLocalURLs, initProperties, keyCreate, keyCreate, reload, setAppletaugment, augment, augment, augment, augment, defaultBoolean, defaultChar, defaultDouble, defaultFloat, defaultInt, defaultLong, defaultObject, defaultObject, defaultProperties, defaultProperty, getAsBoolean, getAsChar, getAsDouble, getAsEnums, getAsFloat, getAsInt, getAsList, getAsLong, getAsMap, getAsMap, getAsObject, getAsObject, getProperties, getProperty, has, isNew, parseObject, parseObject, removeProperty, requires, setObject, setProperties, setProperty, stringPropertiesfinalize, getClass, notify, notifyAll, wait, wait, waitabortExposure, addFitsKey, getBiasExposure, getDarkExposure, getScienceExposure, removeAllFitsKeys, removeFitsKey, setFullFrame, setImageGeometryautomatic, external, getStatus, initialize, manual, park, quit, setPassivereloadbindToRegistry, isValid, unbindFromRegistryremoveErrorListenergetListenerNamedisconnect, isConnecteddefaultBoolean, defaultChar, defaultDouble, defaultFloat, defaultInt, defaultLong, defaultObject, defaultObject, defaultProperties, defaultProperty, getAsBoolean, getAsChar, getAsDouble, getAsFloat, getAsInt, getAsList, getAsLong, getAsMap, getAsObject, getAsObject, getProperties, getProperty, has, parseObject, removeProperty, setObject, setProperty, stringPropertiespublic static final double REFMAG
public static final String KEY_FOCUSCLASS
public static final String KEY_FOCUSGEOMETRY
public static final String KEY_SELECTFILTERTIME
public static final String KEY_FILTERSELECTED
public static final String KEY_FILTERWHEEL
public static final String KEY_WHEELPOSITIONS
public static final String KEY_PRAEZERO
public static final String KEY_FOCUSTIME
public static final String KEY_FOCUSEXPOSURE
public static final String KEY_FOCUSCOLOR
public static final String KEY_PIXELSCALE
private static final String DEFFILTERWHEEL
private static final String DEFWHEELPOSITIONS
private static final int DEFPRAEZERO
private static final long DEFMINEXPOSURE
private static final String DEFFILTERSELECTED
private static final String DEFEXPOSURETRIGGER
private static final String DEFTRANSFERTRIGGER
private static final String DEFFITSKEYS
private static final String DEFFIXFITSKEYS
private static final String DEFFOCUSEXPOSURE
private static final double DEFPIXELSCALE
private static final long DEFSELECTFILTERTIME
private static final long DEFREADOUTTIME
private static final long DEFFOCUSTIME
private static final boolean DEFCAMERABIAS
private static final boolean DEFCAMERADARK
private static final File DEFARCHIVEPATH
private static final String DEFBINDNAME
private static final long DEFENABLEWATCH
private Map<String,List<Integer>> wheelposition
private Focusable focusser
private MomentsFocusser focusunit
private MomentsGeometric wifsipfocus
private Map<String,Function> exposuretable
public WifsipMaster(Map<String,String> prop) throws RemoteException
CameraMaster.KEY_CAMERA key is missing or the camera driver could not be
contructed out of the given property, construction fails with an
exception, see #initWifsipMaster. The keys GenericMaster.KEY_SET,
CameraMaster.KEY_FITSKEYS, #KEY_FITSPARAMETERS, and
#KEY_FITSCOMMENTS are optional keys. RemoteException#initprotected void init2()
GenericMaster.KEY_SET is present, a parameter cluster is constructed and the
camera driver is passed to the set. Additionally, the default fits header
table is constructed and loaded with values pointed to by the appropriate
keys. Whenever the construction of the camera driver is successful, the
fits tables are at least constructed, though maybe empty.init2 in class CameraMasterprivate Map<String,List<Integer>> setupFilterTable(List<String> wheels, String pos)
public double rescanned(String key, String old, String newval)
rescanned in interface Reloadablerescanned in class CameraMasterpublic boolean accepts(CommandEvent ce) throws RemoteException
CcdCommands.accepts in interface RmiCommandListeneraccepts in class CameraMasterRemoteExceptionpublic boolean focusOffset(double mm)
throws RemoteException
focusOffset in interface FocusControllingRemoteExceptionpublic boolean focus(double mm)
throws RemoteException
focus in interface FocusControllingRemoteExceptionpublic boolean autoFocus()
throws RemoteException
autoFocus in interface AutoFocusControllingRemoteExceptionpublic boolean setFilterPosition(String pos) throws RemoteException
setFilterPosition in interface WifsipControllingRemoteExceptionpublic boolean filterOffset(String name, int off) throws RemoteException
filterOffset in interface WifsipControllingRemoteExceptionpublic String getFilterPosition() throws RemoteException
getFilterPosition in interface WifsipControllingRemoteExceptionpublic boolean reset()
throws RemoteException
reset in interface ListenerControllingreset in class CameraMasterRemoteExceptionprotected int getAcknowledgeNumber(CommandEvent cmd)
getAcknowledgeNumber in class MagellanMasterprotected long getCompletionTime(CommandEvent cmd, int acknr)
getCompletionTime in class MagellanMastercmd - The command to process.acknr - The number of the acknowledge that will be sent back.protected boolean processCommand(CommandEvent cmd, int acknr)
processCommand in class MagellanMasterprotected String statusMaster(CommandEvent cmd)
MainCamera#toString method.statusMaster in class MagellanMastercmd - Non-null in automatic mode.protected boolean resetMaster(CommandEvent cmd)
resetMaster in class CameraMastercmd - Non-null in automatic mode.protected boolean initializeMaster(CommandEvent cmd)
initializeMaster in class CameraMastercmd - Non-null in automatic mode.private String parseFilter()
private boolean filterWheelZero()
private boolean selectFilter(CommandEvent cmd, String filter, boolean zero)
private long prepareAutoFocus(AutoFocusCcd afc)
private ErrorEvent doAutoFocus(long expt, boolean extsearch)
extsearch - If true, we use the extension with the biggest moment value.protected boolean doMode(CommandEvent cmd, String mode)
doMode in class MagellanMasterpublic static void main(String[] arg) throws RemoteException
RemoteExceptionprotected boolean initShutter()
CameraMasterinitShutter in class CameraMasterprotected boolean closeShutter()
CameraMastercloseShutter in class CameraMasterprotected boolean openShutter()
CameraMasteropenShutter in class CameraMaster