org.lsst.ccs.subsystems.fcs
Class BasicAutoChangerModule

java.lang.Object
  extended by java.util.Observable
      extended by org.lsst.ccs.framework.Module
          extended by org.lsst.ccs.subsystems.fcs.BasicAutoChangerModule
All Implemented Interfaces:
java.io.Serializable, java.util.Observer, AutoChanger
Direct Known Subclasses:
AutoChangerModule, SftAutoChangerModule

public abstract class BasicAutoChangerModule
extends org.lsst.ccs.framework.Module
implements AutoChanger

An basic autochanger module without a fliprail, without online clamp. This basic autochanger is used in single filter test.

Author:
virieux
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.lsst.ccs.framework.Module
org.lsst.ccs.framework.Module.ValueUpdate
 
Field Summary
static java.lang.String publishedByAutoChangerOutputName
           
 
Fields inherited from class org.lsst.ccs.framework.Module
log, name, nObserverThreads, registry, tickMillis
 
Constructor Summary
BasicAutoChangerModule()
           
 
Method Summary
abstract  java.lang.String closeFliprail()
           
abstract  java.lang.String closeOnlineClamp()
           
 Filter getFilterOnline()
           
 java.lang.String getFilterOnlineName()
           
 Filter getFilterOnTrucks()
           
 java.lang.String getFilterOnTrucksName()
           
 Motor getMotor()
           
 Latch getStandbyLatch()
           
 StatusDataPublishedByBasicAutoChanger getStatusData()
           
 double getTrucksPosition()
           
 double getTrucksPositionAtStandby()
           
 double getTrucksPositionOnline()
           
 double getTrucksPositionSwapout()
           
 java.lang.String goToPosition(double requiredPosition)
           
 java.lang.String grabbeFilterAtStandby(Filter filter)
           
 void initModule()
           
 void initPublishedData()
           
 boolean isEmpty()
           
 boolean isMoving()
           
 void locateTrucks()
          This method has to be executed at the FCS startup.
 java.lang.String lockLatchStandby()
           
 java.lang.String moveFilterToOnline()
           
 java.lang.String moveFilterToStandby()
           
abstract  java.lang.String openFliprail()
           
abstract  java.lang.String openOnlineClamp()
           
 void processUpdate(java.util.Observable source, org.lsst.ccs.framework.Module.ValueUpdate v)
           
 void setEmpty(boolean isEmpty)
           
 void setFilterOnTrucks(Filter filterOnTrucks)
           
 void setMotor(Motor motor)
           
 void setStandbyLatch(Latch standbyLatch)
           
 void setTrucksPositionAtStandby(double trucksPositionAtStandby)
           
 void setTrucksPositionOnline(double trucksPositionOnline)
           
 void setTrucksPositionSwapout(double trucksPositionSwapout)
           
 java.lang.String stop()
           
 java.lang.String toString()
           
 java.lang.String unGrabbeFilterAtStandby()
           
 java.lang.String unlockLatchStandby()
           
 void updatePublishedDataAndNotifyObservers()
           
 
Methods inherited from class org.lsst.ccs.framework.Module
getContext, getModule, getName, getNObserverThreads, getObservables, getSubsystem, getTickMillis, init, listens, publishData, publishData, publishData, publishData, sendToReply, sendToStatus, setBeanName, setContext, setName, setNObserverThreads, setObservables, setStateModularSubsystem, setStateModularSubsystem, setTickMillis, start, tick, update
 
Methods inherited from class java.util.Observable
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

publishedByAutoChangerOutputName

public static java.lang.String publishedByAutoChangerOutputName
Constructor Detail

BasicAutoChangerModule

public BasicAutoChangerModule()
Method Detail

getFilterOnTrucks

public Filter getFilterOnTrucks()
Specified by:
getFilterOnTrucks in interface AutoChanger

getFilterOnTrucksName

public java.lang.String getFilterOnTrucksName()

getFilterOnline

public Filter getFilterOnline()
Specified by:
getFilterOnline in interface AutoChanger

getFilterOnlineName

public java.lang.String getFilterOnlineName()

getMotor

public Motor getMotor()

getStandbyLatch

public Latch getStandbyLatch()

getStatusData

public StatusDataPublishedByBasicAutoChanger getStatusData()

getTrucksPosition

public double getTrucksPosition()
Specified by:
getTrucksPosition in interface AutoChanger

getTrucksPositionAtStandby

public double getTrucksPositionAtStandby()

getTrucksPositionOnline

public double getTrucksPositionOnline()

getTrucksPositionSwapout

public double getTrucksPositionSwapout()

goToPosition

public java.lang.String goToPosition(double requiredPosition)
                              throws java.lang.IllegalArgumentException,
                                     org.lsst.ccs.bus.BadCommandException
Specified by:
goToPosition in interface AutoChanger
Throws:
java.lang.IllegalArgumentException
org.lsst.ccs.bus.BadCommandException

grabbeFilterAtStandby

public java.lang.String grabbeFilterAtStandby(Filter filter)
                                       throws org.lsst.ccs.bus.BadCommandException,
                                              org.lsst.ccs.bus.ErrorInCommandExecutionException
Specified by:
grabbeFilterAtStandby in interface AutoChanger
Throws:
org.lsst.ccs.bus.BadCommandException
org.lsst.ccs.bus.ErrorInCommandExecutionException

initModule

public void initModule()
Overrides:
initModule in class org.lsst.ccs.framework.Module

initPublishedData

public void initPublishedData()
Specified by:
initPublishedData in interface AutoChanger

isEmpty

public boolean isEmpty()

isMoving

public boolean isMoving()

locateTrucks

public void locateTrucks()
This method has to be executed at the FCS startup. It checks the hardware trucks and set the trucks position.

Specified by:
locateTrucks in interface AutoChanger

lockLatchStandby

public java.lang.String lockLatchStandby()
                                  throws org.lsst.ccs.bus.ErrorInCommandExecutionException
Specified by:
lockLatchStandby in interface AutoChanger
Throws:
org.lsst.ccs.bus.ErrorInCommandExecutionException

moveFilterToOnline

public java.lang.String moveFilterToOnline()
                                    throws org.lsst.ccs.bus.BadCommandException,
                                           org.lsst.ccs.bus.ErrorInCommandExecutionException
Specified by:
moveFilterToOnline in interface AutoChanger
Throws:
org.lsst.ccs.bus.BadCommandException
org.lsst.ccs.bus.ErrorInCommandExecutionException

moveFilterToStandby

public java.lang.String moveFilterToStandby()
                                     throws org.lsst.ccs.bus.BadCommandException,
                                            org.lsst.ccs.bus.ErrorInCommandExecutionException
Specified by:
moveFilterToStandby in interface AutoChanger
Throws:
org.lsst.ccs.bus.BadCommandException
org.lsst.ccs.bus.ErrorInCommandExecutionException

processUpdate

public void processUpdate(java.util.Observable source,
                          org.lsst.ccs.framework.Module.ValueUpdate v)
Overrides:
processUpdate in class org.lsst.ccs.framework.Module

setEmpty

public void setEmpty(boolean isEmpty)

setFilterOnTrucks

public void setFilterOnTrucks(Filter filterOnTrucks)

setMotor

public void setMotor(Motor motor)

setStandbyLatch

public void setStandbyLatch(Latch standbyLatch)

setTrucksPositionAtStandby

public void setTrucksPositionAtStandby(double trucksPositionAtStandby)

setTrucksPositionOnline

public void setTrucksPositionOnline(double trucksPositionOnline)

setTrucksPositionSwapout

public void setTrucksPositionSwapout(double trucksPositionSwapout)

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

stop

public java.lang.String stop()
Specified by:
stop in interface AutoChanger

unGrabbeFilterAtStandby

public java.lang.String unGrabbeFilterAtStandby()
                                         throws org.lsst.ccs.bus.ErrorInCommandExecutionException,
                                                org.lsst.ccs.bus.BadCommandException
Specified by:
unGrabbeFilterAtStandby in interface AutoChanger
Throws:
org.lsst.ccs.bus.ErrorInCommandExecutionException
org.lsst.ccs.bus.BadCommandException

unlockLatchStandby

public java.lang.String unlockLatchStandby()
                                    throws org.lsst.ccs.bus.ErrorInCommandExecutionException
Specified by:
unlockLatchStandby in interface AutoChanger
Throws:
org.lsst.ccs.bus.ErrorInCommandExecutionException

openFliprail

public abstract java.lang.String openFliprail()
                                       throws org.lsst.ccs.bus.ErrorInCommandExecutionException,
                                              org.lsst.ccs.bus.BadCommandException
Throws:
org.lsst.ccs.bus.ErrorInCommandExecutionException
org.lsst.ccs.bus.BadCommandException

closeFliprail

public abstract java.lang.String closeFliprail()
                                        throws org.lsst.ccs.bus.ErrorInCommandExecutionException
Throws:
org.lsst.ccs.bus.ErrorInCommandExecutionException

openOnlineClamp

public abstract java.lang.String openOnlineClamp()
                                          throws org.lsst.ccs.bus.ErrorInCommandExecutionException
Throws:
org.lsst.ccs.bus.ErrorInCommandExecutionException

closeOnlineClamp

public abstract java.lang.String closeOnlineClamp()
                                           throws org.lsst.ccs.bus.ErrorInCommandExecutionException
Throws:
org.lsst.ccs.bus.ErrorInCommandExecutionException

updatePublishedDataAndNotifyObservers

public void updatePublishedDataAndNotifyObservers()


Copyright © 2011 LSST. All Rights Reserved.