Class GroundSensorOperationsComputer
- Namespace
- NominalSystems.Classes
- Assembly
- NominalSystems.Classes.dll
[Nominal] The ground sensor operation computer is a high level computer that can communicate with all systems onboard a ground sensor. It is able to interface with the pointing and sensor and produce commands that the
public class GroundSensorOperationsComputer : Computer
- Inheritance
-
GroundSensorOperationsComputer
Constructors
GroundSensorOperationsComputer()
Default Constructor
protected GroundSensorOperationsComputer()
Fields
CommandData
A list of commands that are to be executed by the computer. This is only for serialization purposes, and should not be used in the code.
[Hidden]
public List<string> CommandData
Field Value
Out_GroundSensorOperationsMsg
The output message recording the operational states of the ground sensor computer.
public GroundSensorOperationsMessage? Out_GroundSensorOperationsMsg
Field Value
Properties
CommandCount
The number of commands loaded into the computer's buffer.
[Unit(UnitType.NONE)]
[ReadOnly]
public double CommandCount { get; }
Property Value
CurrentIdleState
The current idling state of the computer.
[Unit(UnitType.NONE)]
[ReadOnly]
public IdleStateType CurrentIdleState { get; }
Property Value
CurrentOperatingMode
The current operating mode of the computer.
[Unit(UnitType.NONE)]
[ReadOnly]
public GroundSensorOperatingModeType CurrentOperatingMode { get; }
Property Value
CurrentOperatingState
The current operating state of the computer, as an integer.
[Unit(UnitType.NONE)]
[ReadOnly]
public int CurrentOperatingState { get; }
Property Value
CurrentSearchState
The current idling state of the computer.
[Unit(UnitType.NONE)]
[ReadOnly]
public SearchStateType CurrentSearchState { get; }
Property Value
SignalToNoise
The signal-to-noise ratio of the CCD sensor. This is the ratio of the average signal to the average noise in the sensor.
[Unit("")]
[ReadOnly]
[Metadata(ContainedIn = "Sensor.Out_CCDDataMsg")]
public double SignalToNoise { get; }
Property Value
Methods
AddCommand(string, int, string, double, AccessMessage, double)
Add the command to the queue.
public void AddCommand(string sensorId, int priority, string taskType, double timestamp, AccessMessage inAccessMsg, double duration = 60)
Parameters
sensorId
stringThe id of the sensor
priority
intThe priority of the task
taskType
stringThe type of the task
timestamp
doubleThe timestamp of the task
inAccessMsg
AccessMessageThe access message containing details for the ground sensor command
duration
doubleThe duration that the sensor spends sensing
AddCommandPacket(GroundSensorCommandPacket)
Adds a new command to the command queue.
[Hidden]
public void AddCommandPacket(GroundSensorCommandPacket command)
Parameters
command
GroundSensorCommandPacketThe command to add.
Initialise()
Initialises the computer and attempts to connect up all the parameters and components together that are required for the computer to function. This is a spacecraft computer specific initialisation.
public bool Initialise()
Returns
- bool
A successful initialisation
OnBegin(double)
Called when the object is beginning ticking for the first time. This is when the simulation calls the very first tick and will run before the update call.
protected override void OnBegin(double time)
Parameters
time
double[s] Current time of the simulation before the tick
OnCreate()
Called when the 'Component' is created from the controller.
protected override void OnCreate()
OnLoad(double)
Called after all of the data has been loaded from a save state on this object. This enables any post-load operations to be performed and extra data to be loaded from the metadata.
protected override void OnLoad(double time)
Parameters
time
double[s] The current clock time of the simulation
OnSave()
Called before the object is saved into the save state. This ensures that any additional metadata can be saved on the object before it is automatically serialized.
protected override void OnSave()
OnUpdate(double, double)
Called when the object should update from the simulation tick. This will take in a time and a step, where the time is the time of the clock before updating the object.
protected override void OnUpdate(double time, double step)