Table of Contents

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

List<string>

Out_GroundSensorOperationsMsg

The output message recording the operational states of the ground sensor computer.

public GroundSensorOperationsMessage? Out_GroundSensorOperationsMsg

Field Value

GroundSensorOperationsMessage

Properties

CommandCount

The number of commands loaded into the computer's buffer.

[Unit(UnitType.NONE)]
[ReadOnly]
public double CommandCount { get; }

Property Value

double

CurrentIdleState

The current idling state of the computer.

[Unit(UnitType.NONE)]
[ReadOnly]
public IdleStateType CurrentIdleState { get; }

Property Value

IdleStateType

CurrentOperatingMode

The current operating mode of the computer.

[Unit(UnitType.NONE)]
[ReadOnly]
public GroundSensorOperatingModeType CurrentOperatingMode { get; }

Property Value

GroundSensorOperatingModeType

CurrentOperatingState

The current operating state of the computer, as an integer.

[Unit(UnitType.NONE)]
[ReadOnly]
public int CurrentOperatingState { get; }

Property Value

int

CurrentSearchState

The current idling state of the computer.

[Unit(UnitType.NONE)]
[ReadOnly]
public SearchStateType CurrentSearchState { get; }

Property Value

SearchStateType

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

double

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 string

The id of the sensor

priority int

The priority of the task

taskType string

The type of the task

timestamp double

The timestamp of the task

inAccessMsg AccessMessage

The access message containing details for the ground sensor command

duration double

The duration that the sensor spends sensing

AddCommandPacket(GroundSensorCommandPacket)

Adds a new command to the command queue.

[Hidden]
public void AddCommandPacket(GroundSensorCommandPacket command)

Parameters

command GroundSensorCommandPacket

The 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)

Parameters

time double

[s] Current time of the simulation before the update

step double

[s] The time-step to update during this tick