Skip to main content

Class: PfdUserSettingManager

Defined in: workingtitle-instruments-epic2/shared/Settings/PfdUserSettings.ts:122

A manager for PFD user settings. The indexed settings are saved in crew profiles, while non-indexed settings are temporal.

Implements

Constructors

Constructor

new PfdUserSettingManager(bus, displayIndices): PfdUserSettingManager

Defined in: workingtitle-instruments-epic2/shared/Settings/PfdUserSettings.ts:141

Constructor.

Parameters

ParameterTypeDescription
busEventBusThe event bus.
displayIndicesDisplayUnitIndices[]The indices of the Displays for which to get a manager.

Returns

PfdUserSettingManager

Properties

displayIndices

readonly displayIndices: DisplayUnitIndices[]

Defined in: workingtitle-instruments-epic2/shared/Settings/PfdUserSettings.ts:141

The indices of the Displays for which to get a manager.

Methods

getAliasedManager()

getAliasedManager(displayIndex): UserSettingManager<PfdAliasedUserSettingTypes>

Defined in: workingtitle-instruments-epic2/shared/Settings/PfdUserSettings.ts:187

Gets a manager for aliased PFD user settings for an indexed GDU.

Parameters

ParameterTypeDescription
displayIndexDisplayUnitIndicesThe index of the GDU for which to get an aliased setting manager.

Returns

UserSettingManager<PfdAliasedUserSettingTypes>

A manager for aliased PFD user settings for the specified GDU.

Throws

RangeError if index is less than 1 or greater than the number of GDUs supported by this manager.


getAllSettings()

getAllSettings(): UserSetting<UserSettingValue>[]

Defined in: workingtitle-instruments-epic2/shared/Settings/PfdUserSettings.ts:172

Gets an array of all settings of this manager.

Returns

UserSetting<UserSettingValue>[]

an array of all settings of this manager.

Implementation of

UserSettingManager.getAllSettings


getSetting()

getSetting<K>(name): UserSettingFromManager<PfdAllUserSettingTypes, K>

Defined in: workingtitle-instruments-epic2/shared/Settings/PfdUserSettings.ts:162

Gets a setting from this manager.

Type Parameters

Type Parameter
K extends "altMetric" | "baroCorrectionUnit" | "baroSynchEnabled" | "flightDirectorMode" | "fpsEnabled" | "thrustDirectorEnabled" | "windFormat" | "headingFormat" | "popupKeyboardEnabled" | "popupKeyboardLayout" | `hsiRange_${number}` | `hsiDisplayFormat_${number}` | `terrWxState_${number}` | `trafficEnabled_${number}` | `lightningEnabled_${number}` | `syntheticVisionEnabled_${number}`

Parameters

ParameterTypeDescription
nameKThe name of the setting to get.

Returns

UserSettingFromManager<PfdAllUserSettingTypes, K>

The requested setting.

Throws

Error if no setting with the specified name exists.

Implementation of

UserSettingManager.getSetting


mapTo()

mapTo<M>(map): UserSettingManager<M & PfdIndexedUserSettingTypes<number> & PfdNonIndexedUserSettingTypes>

Defined in: workingtitle-instruments-epic2/shared/Settings/PfdUserSettings.ts:177

Maps a subset of this manager's settings to ones with aliased names, and creates a new setting manager which supports accessing the settings using their aliases.

Type Parameters

Type Parameter
M extends UserSettingRecord

Parameters

ParameterTypeDescription
mapUserSettingMap<M, PfdAllUserSettingTypes>A map defining the aliases of a subset of this manager's settings, with aliased setting names as keys and original setting names as values.

Returns

UserSettingManager<M & PfdIndexedUserSettingTypes<number> & PfdNonIndexedUserSettingTypes>

A new setting manager which supports accessing a subset of this manager's settings using aliased names.

Implementation of

UserSettingManager.mapTo


tryGetSetting()

tryGetSetting<K>(name): OptionalUserSettingFromManager<PfdAllUserSettingTypes, K>

Defined in: workingtitle-instruments-epic2/shared/Settings/PfdUserSettings.ts:157

Attempts to get a setting from this manager.

Type Parameters

Type Parameter
K extends string

Parameters

ParameterTypeDescription
nameKThe name of the setting to get.

Returns

OptionalUserSettingFromManager<PfdAllUserSettingTypes, K>

The requested setting, or undefined if no such setting exists.

Implementation of

UserSettingManager.tryGetSetting


whenSettingChanged()

whenSettingChanged<K>(name): UserSettingConsumerFromManager<PfdAllUserSettingTypes, K>

Defined in: workingtitle-instruments-epic2/shared/Settings/PfdUserSettings.ts:167

Gets a consumer which notifies handlers when the value of a setting changes.

Type Parameters

Type Parameter
K extends "altMetric" | "baroCorrectionUnit" | "baroSynchEnabled" | "flightDirectorMode" | "fpsEnabled" | "thrustDirectorEnabled" | "windFormat" | "headingFormat" | "popupKeyboardEnabled" | "popupKeyboardLayout" | `hsiRange_${number}` | `hsiDisplayFormat_${number}` | `terrWxState_${number}` | `trafficEnabled_${number}` | `lightningEnabled_${number}` | `syntheticVisionEnabled_${number}`

Parameters

ParameterTypeDescription
nameKThe name of a setting.

Returns

UserSettingConsumerFromManager<PfdAllUserSettingTypes, K>

a consumer which notifies handlers when the value of the setting changes.

Throws

Error if no setting with the specified name exists.

Deprecated

Please use getSetting(name).sub() instead.

Implementation of

UserSettingManager.whenSettingChanged