org.minetti.astrodevice.common.orb
Interface FocuserOrbProcess

All Superinterfaces:
DeviceOrbProcess, Remote

public interface FocuserOrbProcess
extends DeviceOrbProcess, Remote

ORB process on focusers.

Author:
Jean-Philippe MINETTI

Method Summary
 FocuserCapabilities getCapabilities(long focuserId)
          Returns all capabilities of a focuser.
 FocuserCharacteristics getCharacteristics(long focuserId)
          Returns all characteristics of a focuser.
 int getPosition(long focuserId)
          Returns the current focuser position.
 double getTemperature(long focuserId)
          Returns the current ambient temperature as measured by the focuser.
 void halt(long focuserId)
          Immediately stops any focuser motion due to a previous move(long, int) method call.
 boolean isMoving(long focuserId)
          Returns TRUE if the focuser is currently moving to a new position.
 boolean isTempComp(long focuserId)
          Returns TRUE if the temperature compensation mode is enabled.
 void move(long focuserId, int position)
          Moves the focuser by the specified amount or to the specified position depending on the return value of the getCapabilities(long).isAbsolute() method.
 void setTempComp(long focuserId, boolean tempComp)
          Sets TRUE for enable the temperature compensation mode.
 
Methods inherited from interface org.minetti.astrodevice.common.orb.DeviceOrbProcess
action, commandBlind, commandBoolean, commandString, getDescription, getDeviceList, getDeviceName, getDriverInfo, getDriverVersion, getInterfaceVersion, getPluginName, getSupportedActions, isConnected, setConnected, showSetupDialog
 

Method Detail

getCharacteristics

FocuserCharacteristics getCharacteristics(long focuserId)
                                          throws RemoteException
Returns all characteristics of a focuser.

Parameters:
focuserId - Focuser identifier.
Returns:
Object representing all characteristics of a focuser.
Throws:
RemoteException - Exception if an error occurred.

getCapabilities

FocuserCapabilities getCapabilities(long focuserId)
                                    throws RemoteException
Returns all capabilities of a focuser.

Parameters:
focuserId - Focuser identifier.
Returns:
Object representing all capabilities of a focuser.
Throws:
RemoteException - Exception if an error occurred.

isTempComp

boolean isTempComp(long focuserId)
                   throws RemoteException
Returns TRUE if the temperature compensation mode is enabled.

Must be implemented.

If temperature compensation is not available, this method must always return FALSE.

Parameters:
focuserId - Focuser identifier.
Returns:
TRUE if the temperature compensation mode is enabled.
Throws:
RemoteException - Exception if an error occurred.
NotConnectedException - If the device is not connected and this information is only available when connected.
DriverException - Must throw an exception if the call was not successful.

setTempComp

void setTempComp(long focuserId,
                 boolean tempComp)
                 throws RemoteException
Sets TRUE for enable the temperature compensation mode.

Can throw a MethodNotImplementedException.

If the getCapabilities(long).isTempCompAvailable() is TRUE, then setting tempComp to TRUE puts the focuser into temperature tracking mode. While in temperature tracking mode, move commands will be rejected by the focuser. Set to FALSE to turn off temperature tracking.

A PropertyNotImplementedException exception must be thrown if getCapabilities(long).isTempCompAvailable() is FALSE and an attempt is made to set tempComp to TRUE.

Parameters:
focuserId - Focuser identifier.
tempComp - TRUE for enable the temperature compensation mode.
Throws:
RemoteException - Exception if an error occurred.
PropertyNotImplementedException - If getCapabilities(long).isTempCompAvailable() is FALSE and an attempt is made to set tempComp to TRUE.
NotConnectedException - If the device is not connected and this information is only available when connected.
DriverException - Must throw an exception if the call was not successful.

isMoving

boolean isMoving(long focuserId)
                 throws RemoteException
Returns TRUE if the focuser is currently moving to a new position. FALSE if the focuser is stationary.

Must be implemented.

Parameters:
focuserId - Focuser identifier.
Returns:
TRUE if the focuser is currently moving to a new position.
Throws:
RemoteException - Exception if an error occurred.
NotConnectedException - If the driver is not connected.
DriverException - Must throw an exception if the call was not successful.

move

void move(long focuserId,
          int position)
          throws RemoteException
Moves the focuser by the specified amount or to the specified position depending on the return value of the getCapabilities(long).isAbsolute() method.

Must be implemented.

If getCapabilities(long).isAbsolute() is TRUE, then this is an absolute positioning focuser. The move command tells the focuser to move to an exact step position, and the position parameter of the move method is an integer between 0 and getCapabilities(long).getMaxStep().

If getCapabilities(long).isAbsolute() is FALSE, then this is a relative positioning focuser. The Move command tells the focuser to move in a relative direction, and the position parameter of the move method (in this case, step distance) is an integer between minus getCapabilities(long).getMaxIncrement() and plus getCapabilities(long).getMaxIncrement().

Parameters:
focuserId - Focuser identifier.
position - Step distance or absolute position, depending on the return value of the isAbsolute method.
Throws:
RemoteException - Exception if an error occurred.
InvalidOperationException - If a move operation is requested when isTempComp(long) is TRUE.
NotConnectedException - If the device is not connected.
DriverException - Must throw an exception if the call was not successful.

halt

void halt(long focuserId)
          throws RemoteException
Immediately stops any focuser motion due to a previous move(long, int) method call.

Can throw a MethodNotImplementedException.

Some focusers may not support this function, in which case an exception will be raised.

Recommendation: Host software should call this method upon initialization and, if it fails, disable the Halt button in the user interface.

Parameters:
focuserId - Focuser identifier.
Throws:
RemoteException - Exception if an error occurred.
MethodNotImplementedException - Focuser does not support this method.
NotConnectedException - If the driver is not connected.
DriverException - Must throw an exception if the call was not successful.

getPosition

int getPosition(long focuserId)
                throws RemoteException
Returns the current focuser position.

Can throw a MethodNotImplementedException.

Valid only for absolute positioning focusers (see the getCapabilities(long).isAbsolute() method). A PropertyNotImplementedException exception must be thrown if this device is a relative positioning focuser rather than an absolute position focuser.

Parameters:
focuserId - Focuser identifier.
Returns:
Current focuser position, in steps.
Throws:
RemoteException - Exception if an error occurred.
PropertyNotImplementedException - If the property is not available for this device.
NotConnectedException - If the device is not connected and this information is only available when connected.
DriverException - Must throw an exception if the call was not successful.

getTemperature

double getTemperature(long focuserId)
                      throws RemoteException
Returns the current ambient temperature as measured by the focuser.

Can throw a MethodNotImplementedException.

Raises an exception if ambient temperature is not available. Commonly available on focusers with a built-in temperature compensation mode.

Parameters:
focuserId - Focuser identifier.
Returns:
Current ambient temperature.
Throws:
RemoteException - Exception if an error occurred.
PropertyNotImplementedException - If the property is not available for this device.
NotConnectedException - If the device is not connected and this information is only available when connected.
DriverException - Must throw an exception if the call was not successful.


Copyright © 2012 astroDevice. All Rights Reserved.