// ****************************************************************************************** // ** ** // ** RAYTHEON PROPRIETARY: THIS DOCUMENT CONTAINS DATA OR INFORMATION ** // ** PROPRIETARY TO RAYTHEON COMPANY AND IS RESTRICTED TO USE ONLY BY PERSONS ** // ** AUTHORIZED BY RAYTHEON COMPANY IN WRITING TO USE IT.DISCLOSURE TO ** // ** UNAUTHORIZED PERSONS WOULD LIKELY CAUSE SUBSTANTIAL COMPETITIVE HARM TO ** // ** RAYTHEON COMPANY'S BUSINESS POSITION. NEITHER SAID DOCUMENT NOR ITS ** // ** CONTENTS SHALL BE FURNISHED OR DISCLOSED TO OR COPIED OR USED BY PERSONS ** // ** OUTSIDE RAYTHEON COMPANY WITHOUT THE EXPRESS WRITTEN APPROVAL OF RAYTHEON ** // ** COMPANY. ** // ** ** // ** THIS PROPRIETARY NOTICE IS NOT APPLICABLE IF DELIVERED TO THE U.S. ** // ** GOVERNMENT. ** // ** ** // ** UNPUBLISHED WORK - COPYRIGHT RAYTHEON COMPANY. ** // ** ** // ** WARNING: THIS DOCUMENT CONTAINS TECHNICAL DATA AND / OR TECHNOLOGY WHOSE ** // ** EXPORT OR DISCLOSURE TO NON-U.S.PERSONS, WHEREVER LOCATED, IS RESTRICTED ** // ** BY THE INTERNATIONAL TRAFFIC IN ARMS REGULATIONS (ITAR) (22 C.F.R.SECTION ** // ** 120-130) OR THE EXPORT ADMINISTRATION REGULATIONS(EAR) (15 C.F.R.SECTION ** // ** 730-774). THIS DOCUMENT CANNOT BE EXPORTED(E.G., PROVIDED TO A SUPPLIER ** // ** OUTSIDE OF THE UNITED STATES) OR DISCLOSED TO A NON-U.S.PERSON, WHEREVER ** // ** LOCATED, UNTIL A FINAL JURISDICTION AND CLASSIFICATION DETERMINATION HAS ** // ** BEEN COMPLETED AND APPROVED BY RAYTHEON, AND ANY REQUIRED U.S.GOVERNMENT ** // ** APPROVALS HAVE BEEN OBTAINED. VIOLATIONS ARE SUBJECT TO SEVERE CRIMINAL ** // ** PENALTIES. ** // ** ** // ** CAPITAL EQUIPMENT/SOFTWARE: THIS TECHNICAL DATA WAS DEVELOPED OR ACQUIRED ** // ** EXCLUSIVELY AT CONTRACTOR EXPENSE AND IS INTENDED FOR USE ON MULTIPLE ** // ** PROJECTS/PROGRAMS. ** // ** ** // ******************************************************************************************* using Raytheon.Communication; using Raytheon.Instruments.LSPS; using Raytheon.Units; using System; using System.Collections.Generic; using System.Runtime.Serialization; namespace Raytheon.Instruments { [UmsContract] public interface ILspsChamber : IInstrument { #region AutoFill Functions [UmsCommand("ILspsChamber.AutoFillCoolDown")] void AutoFillCoolDown(); [UmsCommand("ILspsChamber.AutoFillWarmUp")] void AutoFillWarmUp(); [UmsCommand("ILspsChamber.AutoFillForce")] void AutoFillForce(); [UmsCommand("ILspsChamber.AutoFillTurnOff")] void AutoFillTurnOff(); [UmsCommand("ILspsChamber.GetAutoFillState")] LSPS.AutoFillState GetAutoFillState(); [UmsCommand("ILspsChamber.GetTimeToFill")] double GetTimeToFill(); #endregion #region NIF Functions [UmsCommand("ILspsChamber.CloseLspsGateValve")] void CloseLspsGateValve(); [UmsCommand("ILspsChamber.OpenLspsGateValve")] void OpenLspsGateValve(); [UmsCommand("ILspsChamber.GetLspsGateValvePosition")] GateValvePosition GetLspsGateValvePosition(); [UmsCommand("ILspsChamber.GetTemperature")] double GetTemperature(LSPS.TemperatureIndex tempIndex); [UmsCommand("ILspsChamber.GetInputIndex")] int GetInputIndex(int inputIndex); #endregion #region RIO Functions [UmsCommand("ILspsChamber.CloseVhfGateValve")] void CloseVhfGateValve(); [UmsCommand("ILspsChamber.OpenVhfGateValve")] void OpenVhfGateValve(); [UmsCommand("ILspsChamber.GetVhfGateValveChamberPressure")] double GetVhfGateValveChamberPressure(); [UmsCommand("ILspsChamber.GetVhfGateValveUutPressure")] double GetVhfGateValveUutPressure(); [UmsCommand("ILspsChamber.GetVhfGateValveClosedInput")] int GetVhfGateValveClosedInput(); [UmsCommand("ILspsChamber.GetVhfGateValveOpenInput")] int GetVhfGateValveOpenInput(); #endregion #region Chamber Vacuum Functions [UmsCommand("ILspsChamber.GetLspsChamberPressure")] double GetLspsChamberPressure(); [UmsCommand("ILspsChamber.GetLspsUutPressure")] double GetLspsUutPressure(); #endregion #region GALIL Functions [UmsCommand("ILspsChamber.FilterWheelHome")] void FilterWheelHome(); [UmsCommand("ILspsChamber.SetFilterWheelPosition")] void SetFilterWheelPosition(int position); [UmsCommand("ILspsChamber.GetFilterWheelPosition")] int GetFilterWheelPosition(); [UmsCommand("ILspsChamber.GetFilterWheelStatus")] LSPS.TargetAndFilterWheelStatus GetFilterWheelStatus(); [UmsCommand("ILspsChamber.TargetWheelHome")] void TargetWheelHome(); [UmsCommand("ILspsChamber.SetTargetWheelPosition")] void SetTargetWheelPosition(int position); [UmsCommand("ILspsChamber.GetTargetWheelPosition")] int GetTargetWheelPosition(); [UmsCommand("ILspsChamber.GetTargetWheelStatus")] LSPS.TargetAndFilterWheelStatus GetTargetWheelStatus(); [UmsCommand("ILspsChamber.SteeringMirrorHome")] void SteeringMirrorHome(); [UmsCommand("ILspsChamber.SteeringMirrorStop")] void SteeringMirrorStop(); [UmsCommand("ILspsChamber.SteeringMirrorMove")] void SteeringMirrorMove(double az, double el, double speed); [UmsCommand("ILspsChamber.SteeringMirrorGetBeamAngles")] Tuple SteeringMirrorGetBeamAngles(); [UmsCommand("ILspsChamber.SteeringMirrorSetBeamSpeed")] void SteeringMirrorSetBeamSpeed(double speed); [UmsCommand("ILspsChamber.SteeringMirrorSetRightLeftArrowAngle")] void SteeringMirrorSetRightLeftArrowAngle(double angle); [UmsCommand("ILspsChamber.SteeringMirrorSetUpDownArrowAngle")] void SteeringMirrorSetUpDownArrowAngle(double angle); [UmsCommand("ILspsChamber.GetSteeringMirrorStatus")] Tuple GetSteeringMirrorStatus(); [UmsCommand("ILspsChamber.SteeringMirrorLoadProfile")] void SteeringMirrorLoadProfileFromFile(string profileFilePath); [UmsCommand("ILspsChamber.SteeringMirrorLoadProfileStep")] void SteeringMirrorLoadProfileStep(double az, double el, double speed); [UmsCommand("ILspsChamber.SteeringMirrorResetProfile")] void SteeringMirrorResetProfile(); [UmsCommand("ILspsChamber.SteeringMirrorRunProfile")] void SteeringMirrorRunProfile(LSPS.SteeringMirrorProfileMode profileMode = LSPS.SteeringMirrorProfileMode.LEARNED, LSPS.SteeringMirrorMovementMode movementMode = LSPS.SteeringMirrorMovementMode.ABSOLUTE); [UmsCommand("ILspsChamber.SteeringMirrorMoveToBeginningOfProfile")] void SteeringMirrorMoveToBeginningOfProfile(); [UmsCommand("ILspsChamber.SteeringMirrorRunNextStepInProfile")] void SteeringMirrorRunNextStepInProfile(); #endregion #region BlackBody Functions [UmsCommand("ILspsChamber.SetBlackBodySetpointTemperature")] void SetBlackBodySetpointTemperature(double temperature); [UmsCommand("ILspsChamber.GetBlackbodyHeaterPercent")] double GetBlackbodyHeaterPercent(); [UmsCommand("ILspsChamber.GetBlackbodySetpoint")] double GetBlackbodySetpoint(); [UmsCommand("ILspsChamber.GetBlackbodyStability")] Tuple GetBlackbodyStability(int? logRateInMs = null); [UmsCommand("ILspsChamber.GetBlackbodyControlState")] LSPS.BlackBodyControlState GetBlackbodyControlState(); [UmsCommand("ILspsChamber.GetBlackbodyRateOfChange")] double GetBlackbodyRateOfChange(); [UmsCommand("ILspsChamber.GetBlackbodyTemperature")] Tuple GetBlackbodyTemperature(); [UmsCommand("ILspsChamber.GetBlackbodyBIT")] int GetBlackbodyBIT(); #endregion #region Chopper Functions [UmsCommand("ILspsChamber.SetChopperFrequency")] void SetChopperFrequency(double frequency); [UmsCommand("ILspsChamber.GetChopperFrequency")] double GetChopperFrequency(); [UmsCommand("ILspsChamber.TurnOffChopperWheel")] void TurnOffChopperWheel(); [UmsCommand("ILspsChamber.SetStopOpen")] void SetStopOpen(); [UmsCommand("ILspsChamber.SetStopClosed")] void SetStopClosed(); [UmsCommand("ILspsChamber.GetChopperStability")] LSPS.Stability GetChopperStability(); [UmsCommand("ILspsChamber.GetChopperState")] LSPS.ChopperState GetChopperState(); #endregion #region Misc Functions [UmsCommand("ILspsChamber.SendACommand")] void SendACommand(string command); #endregion } }