Skip to main content

Class: GameVarPublisher<E>

A base class for publishers that need to handle simvars with built-in support for pacing callbacks.

Type parameters

NameType
Eextends Record<string, any>

Hierarchy

Constructors

constructor

new GameVarPublisher<E>(simVarMap, bus, pacer?): GameVarPublisher<E>

Create a SimVarPublisher

Type parameters

NameType
Eextends Record<string, any>

Parameters

NameTypeDescription
simVarMapMap<keyof E & string, SimVarDefinition>A map of simvar event type keys to a SimVarDefinition.
busEventBusThe EventBus to use for publishing.
pacer?PublishPacer<E>An optional pacer to control the rate of publishing.

Returns

GameVarPublisher<E>

Overrides

BasePublisher.constructor

Defined in

src/sdk/instruments/BasePublishers.ts:392

Properties

bus

Protected Readonly bus: EventBus

Inherited from

BasePublisher.bus

Defined in

src/sdk/instruments/BasePublishers.ts:10


pacer

Protected Readonly pacer: undefined | PublishPacer<E>

Inherited from

BasePublisher.pacer

Defined in

src/sdk/instruments/BasePublishers.ts:13


publishActive

Protected publishActive: boolean

Inherited from

BasePublisher.publishActive

Defined in

src/sdk/instruments/BasePublishers.ts:12


publisher

Protected Readonly publisher: Publisher<E>

Inherited from

BasePublisher.publisher

Defined in

src/sdk/instruments/BasePublishers.ts:11


simvars

Protected Readonly simvars: Map<keyof E & string, SimVarPublisherEntry<any>>

Defined in

src/sdk/instruments/BasePublishers.ts:383


subscribed

Protected Readonly subscribed: Set<keyof E & string>

Defined in

src/sdk/instruments/BasePublishers.ts:384

Methods

getValue

getValue<K>(topic): undefined | E[K]

Gets the current value for a topic.

Type parameters

NameType
Kextends string

Parameters

NameTypeDescription
topicKA topic.

Returns

undefined | E[K]

The current value for the specified topic.

Defined in

src/sdk/instruments/BasePublishers.ts:479


isPublishing

isPublishing(): boolean

Tells whether or not the publisher is currently active.

Returns

boolean

True if the publisher is active, false otherwise.

Inherited from

BasePublisher.isPublishing

Defined in

src/sdk/instruments/BasePublishers.ts:45


onTopicSubscribed

onTopicSubscribed(topic): void

Responds to when one of this publisher's topics is subscribed to for the first time.

Parameters

NameTypeDescription
topickeyof E & stringThe topic that was subscribed to.

Returns

void

Defined in

src/sdk/instruments/BasePublishers.ts:421


onUpdate

onUpdate(): void

Publish all subscribed data points to the bus.

Returns

void

Overrides

BasePublisher.onUpdate

Defined in

src/sdk/instruments/BasePublishers.ts:457


publish

publish<K>(topic, data, sync?, isCached?): void

Publish a message if publishing is acpive

Type parameters

NameType
Kextends string | number | symbol

Parameters

NameTypeDefault valueDescription
topicKundefinedThe topic key to publish to.
dataE[K]undefinedThe data type for chosen topic.
syncbooleanfalseWhether or not the event should be synced to other instruments. Defaults to false.
isCachedbooleantrueWhether or not the event should be cached. Defaults to true.

Returns

void

Inherited from

BasePublisher.publish

Defined in

src/sdk/instruments/BasePublishers.ts:63


publishTopic

publishTopic(topic): void

Publishes data to the event bus for a topic.

Parameters

NameTypeDescription
topickeyof E & stringThe topic to publish.

Returns

void

Defined in

src/sdk/instruments/BasePublishers.ts:467


startPublish

startPublish(): void

Start publishing.

Returns

void

Inherited from

BasePublisher.startPublish

Defined in

src/sdk/instruments/BasePublishers.ts:30


stopPublish

stopPublish(): void

Stop publishing.

Returns

void

Inherited from

BasePublisher.stopPublish

Defined in

src/sdk/instruments/BasePublishers.ts:37


subscribe

subscribe(data): void

NOOP - For backwards compatibility.

Parameters

NameTypeDescription
datakeyof EKey of the event type in the simVarMap

Returns

void

Deprecated

Defined in

src/sdk/instruments/BasePublishers.ts:440


unsubscribe

unsubscribe(data): void

NOOP - For backwards compatibility.

Parameters

NameTypeDescription
datakeyof EKey of the event type in the simVarMap

Returns

void

Deprecated

Defined in

src/sdk/instruments/BasePublishers.ts:450