Class: SimVarPublisher<Events, IndexedEventRoots>
Defined in: src/sdk/instruments/BasePublishers.ts:148
A base class for publishers that need to handle simvars with built-in support for pacing callbacks.
Extends
BasePublisher<Events>
Extended by
LNavObsSimVarPublisherVNavSimVarPublisherAccelerometerPublisherAdcPublisherAhrsPublisherAiPilotPublisherAircraftInertialPublisherAmbientPublisherAntiIcePublisherBrakeSimvarPublisherControlSurfacesPublisherHydraulicsPublisherWeightBalanceSimvarPublisherFlightTimerPublisherLiquidDropPublisherMinimumsSimVarPublisherNavComSimVarPublisherNavProcSimVarPublisherPitotPublisherPressurizationPublisherXPDRSimVarPublisherFuelSystemSimVarPublisherGarminAPSimVarPublisherGarminNavSimVarPublisherAhrsPublisherG1000APPublisherFuelTotalizerSimVarPublisherG3000BacklightPublisherFuelTotalizerSimVarPublisherG3XBacklightPublisherG3XNavSimVarPublisherFmcSimVarPublisherWT21ControlSimVarPublisherFmcSimVarPublisherFmcSimVarPublisherFmcSimVarPublisherEpic2ApPanelPublisherEpic2InputControlPublisherFmcSimVarPublisherFuelTotalizerSimVarPublisher
Type Parameters
| Type Parameter | Default type |
|---|---|
Events extends Record<string, any> | - |
IndexedEventRoots extends Record<string, any> | Events |
Constructors
Constructor
new SimVarPublisher<
Events,IndexedEventRoots>(entries,bus,pacer?):SimVarPublisher<Events,IndexedEventRoots>
Defined in: src/sdk/instruments/BasePublishers.ts:163
Creates a new instance of SimVarPublisher.
Parameters
| Parameter | Type | Description |
|---|---|---|
entries | Iterable<readonly [keyof Events | keyof IndexedEventRoots & string, SimVarPublisherEntry<any>]> | Entries describing the SimVars to publish. |
bus | EventBus | The event bus to which to publish. |
pacer? | PublishPacer<Events> | An optional pacer to control the rate of publishing. |
Returns
SimVarPublisher<Events, IndexedEventRoots>
Overrides
Properties
bus
protectedreadonlybus:EventBus
Defined in: src/sdk/instruments/BasePublishers.ts:10
Inherited from
indexedSimVars
protectedreadonlyindexedSimVars:Map<keyofIndexedEventRoots&string,IndexedSimVarPublisherEntry<any>>
Defined in: src/sdk/instruments/BasePublishers.ts:153
pacer
protectedreadonlypacer:undefined|PublishPacer<Events>
Defined in: src/sdk/instruments/BasePublishers.ts:13
Inherited from
publishActive
protectedpublishActive:boolean
Defined in: src/sdk/instruments/BasePublishers.ts:12
Inherited from
publisher
protectedreadonlypublisher:Publisher<Events>
Defined in: src/sdk/instruments/BasePublishers.ts:11
Inherited from
resolvedSimVars
protectedreadonlyresolvedSimVars:Map<keyofEvents&string,ResolvedSimVarPublisherEntry<any>>
Defined in: src/sdk/instruments/BasePublishers.ts:151
subscribed
protectedreadonlysubscribed:Map<keyofEvents&string,ResolvedSimVarPublisherEntry<any>>
Defined in: src/sdk/instruments/BasePublishers.ts:155
INDEXED_REGEX
protectedreadonlystaticINDEXED_REGEX:RegExp
Defined in: src/sdk/instruments/BasePublishers.ts:149
Methods
getValue()
protectedgetValue<K>(topic):undefined|Events[K]
Defined in: src/sdk/instruments/BasePublishers.ts:328
Gets the current value for a topic.
Type Parameters
| Type Parameter |
|---|
K extends string |
Parameters
| Parameter | Type | Description |
|---|---|---|
topic | K | A topic. |
Returns
undefined | Events[K]
The current value for the specified topic.
getValueFromEntry()
protectedgetValueFromEntry<T>(entry):T
Defined in: src/sdk/instruments/BasePublishers.ts:342
Gets the current value for a resolved topic entry.
Type Parameters
| Type Parameter |
|---|
T |
Parameters
| Parameter | Type | Description |
|---|---|---|
entry | ResolvedSimVarPublisherEntry<T> | An entry for a resolved topic. |
Returns
T
The current value for the specified entry.
handleSubscribedTopic()
protectedhandleSubscribedTopic(topic):void
Defined in: src/sdk/instruments/BasePublishers.ts:197
Handles when an event bus topic is subscribed to for the first time.
Parameters
| Parameter | Type | Description |
|---|---|---|
topic | string | The subscribed topic. |
Returns
void
isPublishing()
isPublishing():
boolean
Defined in: src/sdk/instruments/BasePublishers.ts:45
Tells whether or not the publisher is currently active.
Returns
boolean
True if the publisher is active, false otherwise.
Inherited from
onTopicSubscribed()
protectedonTopicSubscribed(topic):void
Defined in: src/sdk/instruments/BasePublishers.ts:283
Responds to when one of this publisher's topics is subscribed to for the first time.
Parameters
| Parameter | Type | Description |
|---|---|---|
topic | keyof Events & string | The topic that was subscribed to. |
Returns
void
onUpdate()
onUpdate():
void
Defined in: src/sdk/instruments/BasePublishers.ts:300
Publish all subscribed data points to the bus.
Returns
void
Overrides
publish()
protectedpublish<K>(topic,data,sync,isCached):void
Defined in: src/sdk/instruments/BasePublishers.ts:63
Publish a message if publishing is acpive
Type Parameters
| Type Parameter |
|---|
K extends string | number | symbol |
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
topic | K | undefined | The topic key to publish to. |
data | Events[K] | undefined | The data type for chosen topic. |
sync | boolean | false | Whether or not the event should be synced to other instruments. Defaults to false. |
isCached | boolean | true | Whether or not the event should be cached. Defaults to true. |
Returns
void
Inherited from
publishTopic()
protectedpublishTopic(topic,entry):void
Defined in: src/sdk/instruments/BasePublishers.ts:311
Publishes data to the event bus for a topic.
Parameters
| Parameter | Type | Description |
|---|---|---|
topic | keyof Events & string | The topic to publish. |
entry | undefined | ResolvedSimVarPublisherEntry<any> | The entry corresponding to the topic |
Returns
void
resolveIndexedSimVar()
protectedresolveIndexedSimVar(topic,entry,index):undefined|string
Defined in: src/sdk/instruments/BasePublishers.ts:254
Attempts to resolve an indexed topic with an index, generating a version of the topic which is mapped to an indexed simvar. The resolved indexed topic can then be published.
Parameters
| Parameter | Type | Description |
|---|---|---|
topic | keyof IndexedEventRoots & string | The topic to resolve. |
entry | IndexedSimVarPublisherEntry<any> | The entry of the topic to resolve. |
index | number | The index with which to resolve the topic. If not defined, the topic will resolve to itself (without a suffix) and will be mapped the index-1 version of its simvar. |
Returns
undefined | string
The resolved indexed topic, or undefined if the topic could not be resolved with the specified index.
startPublish()
startPublish():
void
Defined in: src/sdk/instruments/BasePublishers.ts:30
Start publishing.
Returns
void
Inherited from
stopPublish()
stopPublish():
void
Defined in: src/sdk/instruments/BasePublishers.ts:37
Stop publishing.
Returns
void
Inherited from
tryMatchIndexedSubscribedTopic()
protectedtryMatchIndexedSubscribedTopic(topic):void
Defined in: src/sdk/instruments/BasePublishers.ts:212
Checks if a subscribed topic matches one of this publisher's indexed topics, and if so resolves and starts publishing the indexed topic.
Parameters
| Parameter | Type | Description |
|---|---|---|
topic | string | The subscribed topic to check. |
Returns
void