Interface

IAircraftFuelSystem

USI.Core

Simulator-neutral access to aircraft fuel state.

public interface IAircraftFuelSystem : IAircraftComponentCollection

Methods

TryGetAllTanksSelectionAvailableAsync

public Task<USIResult<Boolean>> TryGetAllTanksSelectionAvailableAsync()

Gets whether the loaded aircraft's selector design includes an all-tanks selection.

TryGetAutomaticAuxiliaryTransferStartDeficitPoundsAsync

public Task<USIResult<Double>> TryGetAutomaticAuxiliaryTransferStartDeficitPoundsAsync()

Gets the feeder-tank fuel deficit, in pounds, above which automatic auxiliary fuel transfer starts.

TryGetAutomaticAuxiliaryTransferStopDeficitPoundsAsync

public Task<USIResult<Double>> TryGetAutomaticAuxiliaryTransferStopDeficitPoundsAsync()

Gets the feeder-tank fuel deficit, in pounds, below which automatic auxiliary fuel transfer stops.

TryGetCrossfeedActiveAsync

public Task<USIResult<Boolean>> TryGetCrossfeedActiveAsync()

Gets whether the fuel crossfeed is actually active when the provider exposes an achieved-state indication distinct from selector position.

TryGetCrossfeedAutomationModeAsync

public Task<USIResult<FuelCrossfeedAutomationMode>> TryGetCrossfeedAutomationModeAsync()

Gets the selected automatic-crossfeed controller mode.

TryGetCrossfeedModeAsync

public Task<USIResult<FuelCrossfeedMode>> TryGetCrossfeedModeAsync()

Gets the aircraft-wide fuel-crossfeed mode, or a shared mode only when all configured engines agree. Differing modes are Unavailable; inspect individual named engines. This is not proof of fuel flow.

TryGetEstimatedEnduranceHoursAtCurrentFuelFlowAsync

public Task<USIResult<Double>> TryGetEstimatedEnduranceHoursAtCurrentFuelFlowAsync()

Estimates endurance in hours using current total fuel weight and instantaneous all-engine fuel flow. Zero flow is unavailable.

TryGetEstimatedUsableFuelEnduranceHoursAtCurrentFuelFlowAsync

public Task<USIResult<Double>> TryGetEstimatedUsableFuelEnduranceHoursAtCurrentFuelFlowAsync()

Estimates endurance in hours using current usable fuel weight and instantaneous all-engine fuel flow. Zero flow is unavailable.

TryGetFuelCapMissingAsync

public Task<USIResult<Boolean>> TryGetFuelCapMissingAsync()

Gets whether an aircraft fuel cap has been left off.

TryGetFuelDensityPoundsPerGallonAsync

public Task<USIResult<Double>> TryGetFuelDensityPoundsPerGallonAsync()

Gets current fuel density, in pounds per US gallon.

TryGetFuelDumpAvailableAsync

public Task<USIResult<Boolean>> TryGetFuelDumpAvailableAsync()

Gets whether the loaded aircraft is configured to dump fuel. This is equipment availability, not the pilot's switch selection and not proof that fuel is currently leaving the aircraft.

TryGetFuelDumpSwitchSelectedAsync

public Task<USIResult<Boolean>> TryGetFuelDumpSwitchSelectedAsync()

Gets whether the aircraft's fuel-dump switch is selected. A selected switch is a pilot request and does not guarantee that fuel is currently being jettisoned.

TryGetFuelSelectorAvailableAsync

public Task<USIResult<Boolean>> TryGetFuelSelectorAvailableAsync()

Gets whether the loaded aircraft is configured with at least one fuel selector. This does not imply that selector count or identities are known.

TryGetFuelTotalizerFuelUsedPoundsAsync

public Task<USIResult<Double>> TryGetFuelTotalizerFuelUsedPoundsAsync()

Gets total fuel used since aircraft fuel-totalizer initialization, in pounds.

TryGetFuelTotalizerInitialFuelPoundsAsync

public Task<USIResult<Double>> TryGetFuelTotalizerInitialFuelPoundsAsync()

Gets the fuel mass recorded when the aircraft fuel totalizer was initialized, in pounds.

TryGetGravityCrossflowOpenAsync

public Task<USIResult<Boolean>> TryGetGravityCrossflowOpenAsync()

Gets whether the gravity-driven fuel crossflow path is selected open. This is distinct from powered directional crossfeed.

TryGetIncorrectFuelTypeDetectedAsync

public Task<USIResult<Boolean>> TryGetIncorrectFuelTypeDetectedAsync()

Gets whether the aircraft has been supplied with an incompatible fuel type.

TryGetLeakDetectedAsync

public Task<USIResult<Boolean>> TryGetLeakDetectedAsync()

Gets whether the aircraft has a simulated fuel leak.

TryGetQuantitySensorFailureDetectedAsync

public Task<USIResult<Boolean>> TryGetQuantitySensorFailureDetectedAsync()

Gets whether the aircraft fuel-quantity sensing system has failed.

TryGetSelectorTopologyAsync

public Task<USIResult<AircraftFuelSelectorTopology>> TryGetSelectorTopologyAsync()

Gets verified metadata for the loaded aircraft's fuel selectors. Unknown topology is not a successful empty list. Named logical access points may still be discoverable.

TryGetTankTopologyAsync

public Task<USIResult<AircraftFuelTopology>> TryGetTankTopologyAsync()

Gets verified metadata for the loaded aircraft's observable fuel tanks. Unknown topology is not a successful empty list. Resolve verified tanks as named components.

TryGetTotalEngineFuelFlowPoundsPerHourAsync

public Task<USIResult<Double>> TryGetTotalEngineFuelFlowPoundsPerHourAsync()

Gets current fuel mass flow summed across all configured engines, in pounds per hour. Aircraft with no engines return zero successfully.

TryGetTotalFuelCapacityPoundsAsync

public Task<USIResult<Double>> TryGetTotalFuelCapacityPoundsAsync()

Gets the maximum total fuel mass for all aircraft tanks, in pounds.

TryGetTotalFuelRemainingRatioAsync

public Task<USIResult<Double>> TryGetTotalFuelRemainingRatioAsync()

Gets the current total fuel as a normalized fraction of total capacity. Zero is empty and one is full.

TryGetTotalFuelWeightPoundsAsync

public Task<USIResult<Double>> TryGetTotalFuelWeightPoundsAsync()

Gets the current total mass of fuel in all aircraft tanks, in pounds.

TryGetTransferDestinationAsync

public Task<USIResult<FuelTransferLocation>> TryGetTransferDestinationAsync()

Gets the tank or tank group currently selected as the destination of aircraft fuel transfer.

TryGetTransferModeAsync

public Task<USIResult<FuelTransferMode>> TryGetTransferModeAsync()

Gets the current aircraft-wide fuel-transfer mode.

TryGetTransferSourceAsync

public Task<USIResult<FuelTransferLocation>> TryGetTransferSourceAsync()

Gets the tank or tank group currently selected as the source of aircraft fuel transfer.

TryGetTransferTestSelectionAsync

public Task<USIResult<FuelTransferTestSelection>> TryGetTransferTestSelectionAsync()

Gets the selected auxiliary fuel-transfer system test.

TryGetUnusableFuelWeightPoundsAsync

public Task<USIResult<Double>> TryGetUnusableFuelWeightPoundsAsync()

Gets the mass of fuel aboard the aircraft that is not available to the engines, in pounds.

TryGetUsableFuelRemainingRatioAsync

public Task<USIResult<Double>> TryGetUsableFuelRemainingRatioAsync()

Gets usable fuel remaining as a fraction of usable fuel capacity. Zero is empty and one is full.

TryGetUsableFuelWeightPoundsAsync

public Task<USIResult<Double>> TryGetUsableFuelWeightPoundsAsync()

Gets the current fuel mass available to the engines, in pounds. This is total fuel mass less unusable fuel mass.

TryGetWaterContaminationDetectedAsync

public Task<USIResult<Boolean>> TryGetWaterContaminationDetectedAsync()

Gets whether water contamination is present in the aircraft fuel.

TryInitializeFuelTotalizerFromOnboardFuelAsync

public Task<USIResult> TryInitializeFuelTotalizerFromOnboardFuelAsync()

Initializes the aircraft fuel totalizer from the fuel currently aboard the aircraft.

TrySetAutomaticAuxiliaryTransferStartDeficitPoundsAsync

public Task<USIResult> TrySetAutomaticAuxiliaryTransferStartDeficitPoundsAsync(double deficitPounds)

Sets the feeder-tank fuel deficit, in pounds, above which automatic auxiliary fuel transfer starts.

TrySetAutomaticAuxiliaryTransferStopDeficitPoundsAsync

public Task<USIResult> TrySetAutomaticAuxiliaryTransferStopDeficitPoundsAsync(double deficitPounds)

Sets the feeder-tank fuel deficit, in pounds, below which automatic auxiliary fuel transfer stops.

TrySetCrossfeedAutomationModeAsync

public Task<USIResult> TrySetCrossfeedAutomationModeAsync(FuelCrossfeedAutomationMode mode)

Sets the automatic-crossfeed controller mode absolutely.

TrySetCrossfeedModeAsync

public Task<USIResult> TrySetCrossfeedModeAsync(FuelCrossfeedMode mode)

Sets the aircraft fuel crossfeed to a normalized absolute mode. Providers that cannot represent a requested mode return unsupported.

TrySetFuelDumpSwitchSelectedAsync

public Task<USIResult> TrySetFuelDumpSwitchSelectedAsync(bool selected)

Selects or clears the aircraft's fuel-dump switch. Successful selection does not guarantee that the loaded aircraft can jettison fuel or that fuel is currently being jettisoned.

TrySetGravityCrossflowOpenAsync

public Task<USIResult> TrySetGravityCrossflowOpenAsync(bool open)

Selects whether the gravity-driven fuel crossflow path is open.

TrySetTransferDestinationAsync

public Task<USIResult> TrySetTransferDestinationAsync(FuelTransferLocation destination)

Selects the tank or tank group used as the destination of aircraft fuel transfer. Select to clear it.

TrySetTransferModeAsync

public Task<USIResult> TrySetTransferModeAsync(FuelTransferMode mode)

Sets an absolute aircraft-wide fuel-transfer mode. A readable mode may still be unsupported for control when the provider exposes no exact absolute action for that value.

TrySetTransferSourceAsync

public Task<USIResult> TrySetTransferSourceAsync(FuelTransferLocation source)

Selects the tank or tank group used as the source of aircraft fuel transfer. Select to clear it.

TrySetTransferTestSelectionAsync

public Task<USIResult> TrySetTransferTestSelectionAsync(FuelTransferTestSelection selection)

Selects normal operation or a left/right transfer-system test.