######################################################################## ### FILE: runstate.mod ### PURPOSE: Interface for determining instrument run/ready state ### SCOPE: FlowChip: branches ### ### Copyrights (C) 2010 Life Technologies. All rights reserved. ######################################################################## :STATe:NEW FlowChip${FC}:Running :STATe:NEW FlowChip${FC}:Ready -requires=Instrument:Initialized -conflicts=FlowChip${FC}:Running DEFine ReadyToRun? WARNing "FlowChip${FC}:ReadyToRun? is depricated; please use 'STATe? FlowChip${FC}:Ready' instead" IF $[ "$(RUNPROC?)" != "(None)" ] ERRor -id=AlreadyRunning "Because this flowchip is executing a run, another run cannot be started." ELSEIF $[ "$(:SYSTem:ENVironment? SYSCONFIG)" != "ProtoC" ] RETurn ELSEIF $(:ACB:IsFrontDoorOpen) ERRor -id=DoorsOpen "Because the front doors are open, the run cannot be started." ELSEIF $[$(:FLU:FrontDoorLocked)==0] ERRor -id=DoorsNotLocked "Because the front doors are unlocked, the run cannot be started." ELSEIF $(:ACB:IsTankDrawerOpen) ERRor -id=DrawerOpen "Because the tank drawer is open, the run cannot be started." ELSEIF $[$(:FLU:TankDrawerLocked)==0] ERRor -id=DrawerNotLocked "Because the tank drawer is unlocked, the run cannot be started." ELSEIF $(:ACB:IsXeHouseCoverOpen) ERRor -id=LampCoverOpen "Because the xenon lamp cover is open, the run cannot be started." ELSEIF $[$(:ACB:IsXeLampOn)==0] ERRor -id=LampOff "Because the xenon lamp is not on, the run cannot be started." ELSEIF $(:ACB:IsSyringeCoverOpen) ERRor -id=SyringeCoverOpen "Because the syringe cover is open, the run cannot be started." ELSEIF $[$(:ACB:IsExhaustFan1On)==0] ERRor -id=ExhaustFan1Off "Because one, or both exhaust fans are not on, the run cannot be started." ELSEIF $[$(:ACB:IsExhaustFan2On)==0] ERRor -id=ExhaustFan2Off "Because one, or both exhaust fans are not on, the run cannot be started." ELSEIF $[$(:FLU:SystemLiquidTankInstalled)==0] ERRor -id=SysLiquidTankNotPresent "Because the system liquid tank is not present, the run cannot be started." ELSEIF $(:FLU:SystemLiquidLevelEmpty) ERRor -id=SysLiquidLevelEmpty "Because the system liquid tank is empty, the run cannot be started." ELSEIF $[$(:FLU:WasteTank1Installed)==0] ERRor -id=WasteTank1NotPresent "Because the non-hazardous waste tank is not present, the run cannot be started." ELSEIF $(:FLU:WasteTank1LiquidLevelFull) ERRor -id=WasteTank1Full "Because the non-hazardous waste tank is full, the run cannot be started." ELSEIF $[$(:FLU:WasteTank2Installed)==0] ERRor -id=WasteTank2NotPresent "Because the hazardous waste tank is not present, the run cannot be started." ELSEIF $(:FLU:WasteTank2LiquidLevelFull) ERRor -id=WasteTank2Full "Because the hazardous waste tank is full, the run cannot be started." ELSEIF $[$(:FLU:ChillerBlockCoolingFanON)==0] ERRor -id=ChillerFanOff "Because the chiller cooling fan is not on, the run cannot be started."