Big changes
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<Import Project="$(SolutionDir)Solution.props" />
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net472</TargetFramework>
|
||||
<AssemblyName>Raytheon.Instruments.LspsChamber.Contracts</AssemblyName>
|
||||
<Description>Low-Background Scanning Point Source Motion interface definition</Description>
|
||||
<OutputType>Library</OutputType>
|
||||
|
||||
<!-- Static versioning (Suitable for Development) -->
|
||||
<!-- Disable the line below for dynamic versioning -->
|
||||
<Version>1.0.0</Version>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Raytheon.Communication.Rpc.Contracts" Version="1.*" />
|
||||
<PackageReference Include="Raytheon.Communication.Ums.Core.Contracts" Version="1.*" />
|
||||
<PackageReference Include="Raytheon.Communication.Ums.Rpc.Attributes" Version="1.*" />
|
||||
<PackageReference Include="Raytheon.Instruments.Contracts" Version="1.*" />
|
||||
<PackageReference Include="Raytheon.Common" Version="1.*" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
234
Source/TSRealLib/HAL/Interfaces/ILspsChamber/IlspsChamber.cs
Normal file
234
Source/TSRealLib/HAL/Interfaces/ILspsChamber/IlspsChamber.cs
Normal file
@@ -0,0 +1,234 @@
|
||||
// ******************************************************************************************
|
||||
// ** **
|
||||
// ** 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<double, double> 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<LSPS.SteeringMirrorStatus, LSPS.SteeringMirrorStatus> 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<LSPS.Stability, LSPS.Stability> GetBlackbodyStability(int? logRateInMs = null);
|
||||
|
||||
[UmsCommand("ILspsChamber.GetBlackbodyControlState")]
|
||||
LSPS.BlackBodyControlState GetBlackbodyControlState();
|
||||
|
||||
[UmsCommand("ILspsChamber.GetBlackbodyRateOfChange")]
|
||||
double GetBlackbodyRateOfChange();
|
||||
|
||||
[UmsCommand("ILspsChamber.GetBlackbodyTemperature")]
|
||||
Tuple<double, double> 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
|
||||
}
|
||||
}
|
||||
264
Source/TSRealLib/HAL/Interfaces/ILspsChamber/MiscData.cs
Normal file
264
Source/TSRealLib/HAL/Interfaces/ILspsChamber/MiscData.cs
Normal file
@@ -0,0 +1,264 @@
|
||||
// ******************************************************************************************
|
||||
// ** **
|
||||
// ** 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.Units;
|
||||
using System.Collections.Generic;
|
||||
using System.Runtime.Serialization;
|
||||
|
||||
namespace Raytheon.Instruments.LSPS
|
||||
{
|
||||
public enum TemperatureIndex
|
||||
{
|
||||
TANK_TOP,
|
||||
TANK_BOTTOM
|
||||
}
|
||||
|
||||
public enum GateValvePosition
|
||||
{
|
||||
OPEN,
|
||||
CLOSE
|
||||
}
|
||||
|
||||
public enum WaitOption
|
||||
{
|
||||
WAIT,
|
||||
NO_WAIT
|
||||
}
|
||||
|
||||
public enum Stability
|
||||
{
|
||||
UNSTABLE,
|
||||
STABLE
|
||||
}
|
||||
|
||||
public enum AutoFillState
|
||||
{
|
||||
OFF,
|
||||
COOLING,
|
||||
WARMING
|
||||
}
|
||||
|
||||
public enum ChopperState
|
||||
{
|
||||
OFF = 10,
|
||||
ON,
|
||||
MOVING,
|
||||
STOP_OPEN,
|
||||
STOP_CLOSE,
|
||||
FIND_ERROR,
|
||||
MOVE_ERROR,
|
||||
CHANGE_DIRECTION,
|
||||
CHANGE_SPEED,
|
||||
LOOKING_FOR_STOP_OPEN,
|
||||
LOOKING_FOR_STOP_CLOSED
|
||||
}
|
||||
|
||||
public enum BlackBodyControlState
|
||||
{
|
||||
LN2_COOLING,
|
||||
CONTROLLING,
|
||||
NOT_CONTROLLING
|
||||
}
|
||||
|
||||
public enum FilterWheelPositions
|
||||
{
|
||||
Open = 1,
|
||||
ND_1PT0,
|
||||
ND_1PT3,
|
||||
ND_1PT6,
|
||||
ND_2PT0,
|
||||
ND_2PT3,
|
||||
ND_2PT6,
|
||||
CLOSED,
|
||||
DIFFUSED
|
||||
}
|
||||
|
||||
public enum TargetWheelPositions
|
||||
{
|
||||
P_25_URAD = 1,
|
||||
P_33_URAD,
|
||||
P_40_URAD,
|
||||
P_50_URAD,
|
||||
P_66_URAD,
|
||||
P_80_URAD,
|
||||
P_15_URAD,
|
||||
P_2000_URAD_SQUARE,
|
||||
P_0PT1875_IN,
|
||||
P_0PT75_IN_FULL,
|
||||
P_20_URAD,
|
||||
SLIT,
|
||||
P_80_URAD_DUAL,
|
||||
P_115_URAD,
|
||||
RETRO_BALL,
|
||||
BLANK
|
||||
}
|
||||
|
||||
public enum SteeringMirrorStatus
|
||||
{
|
||||
NEEDS_HOME,
|
||||
HOMING,
|
||||
MOVING,
|
||||
FORWARD_LIMIT,
|
||||
REAR_LIMIT,
|
||||
FIND_POSITION_ERROR,
|
||||
FIND_HOME_ERROR,
|
||||
IN_POSITION,
|
||||
TIMEOUT,
|
||||
HOME_FORWARD_LIMIT,
|
||||
HOME_REAR_LIMIT
|
||||
}
|
||||
|
||||
public enum TargetAndFilterWheelStatus
|
||||
{
|
||||
NEEDS_HOME,
|
||||
HOMING,
|
||||
MOVING,
|
||||
HOME_SWITCH_ERROR,
|
||||
POSITION_SWITCH_ERROR,
|
||||
FIND_POSITION_ERROR,
|
||||
FIND_HOME_ERROR,
|
||||
IN_POSITION,
|
||||
TIMEOUT
|
||||
}
|
||||
|
||||
public enum SteeringMirrorProfileMode
|
||||
{
|
||||
LEARNED,
|
||||
OPEN_LOOP,
|
||||
PRE_LEARNED,
|
||||
VELOCITY
|
||||
}
|
||||
|
||||
public enum SteeringMirrorMovementMode
|
||||
{
|
||||
ABSOLUTE,
|
||||
RELATIVE
|
||||
}
|
||||
|
||||
public class LSPSPoint
|
||||
{
|
||||
public LSPSPoint() { }
|
||||
public LSPSPoint(double speed, double az, double el)
|
||||
{
|
||||
speed_ = speed;
|
||||
az_ = az;
|
||||
el_ = el;
|
||||
}
|
||||
|
||||
public double speed_ { get; set; }
|
||||
|
||||
public double az_ { get; set; }
|
||||
|
||||
public double el_ { get; set; }
|
||||
}
|
||||
|
||||
public class LSPSData
|
||||
{
|
||||
public string Name { get; set; }
|
||||
|
||||
public AutoFillData AutoFill { get; set; } = new AutoFillData();
|
||||
|
||||
public BlackBodyData BlackBodyData { get; set; } = new BlackBodyData();
|
||||
|
||||
public CVACData CVACData { get; set; } = new CVACData();
|
||||
|
||||
public ChopperData ChopperData { get; set; } = new ChopperData();
|
||||
|
||||
public GalilData GalilData { get; set; } = new GalilData();
|
||||
|
||||
public NIFData NIFData { get; set; } = new NIFData();
|
||||
}
|
||||
|
||||
public class AutoFillData
|
||||
{
|
||||
public string TTF { get; set; } = string.Empty;
|
||||
|
||||
public AutoFillState State { get; set; }
|
||||
}
|
||||
|
||||
public class BlackBodyData
|
||||
{
|
||||
public double TempA { get; set; }
|
||||
|
||||
public double TempB { get; set; }
|
||||
|
||||
public double ChangeRate { get; set; }
|
||||
|
||||
public BlackBodyControlState ControlState { get; set; }
|
||||
|
||||
public double Heater { get; set; }
|
||||
|
||||
public double SetPoint { get; set; }
|
||||
|
||||
public LSPS.Stability StabilityA { get; set; }
|
||||
|
||||
public LSPS.Stability StabilityB { get; set; }
|
||||
|
||||
public int Bit { get; set; }
|
||||
}
|
||||
|
||||
public class CVACData
|
||||
{
|
||||
public string CVAC { get; set; }
|
||||
|
||||
public string SVAC { get; set; }
|
||||
}
|
||||
|
||||
public class ChopperData
|
||||
{
|
||||
public double Frequency { get; set; }
|
||||
|
||||
public Stability Stability { get; set; }
|
||||
|
||||
public ChopperState State { get; set; }
|
||||
}
|
||||
|
||||
public class GalilData
|
||||
{
|
||||
public double TWPosition { get; set; }
|
||||
|
||||
public double SMBeamAngleAz { get; set; }
|
||||
|
||||
public double SMBeamAngleEl { get; set; }
|
||||
|
||||
public double FWPosition { get; set; }
|
||||
}
|
||||
|
||||
public class NIFData
|
||||
{
|
||||
public double TankTop { get; set; }
|
||||
|
||||
public double TankBottom { get; set; }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user