Skip to main content

Class: ControlPublisher

Defined in: src/sdk/data/ControlPublisher.ts:72

A publisher for control interactions. This is meant to handle the events for which there aren't existing HEvents in the sim to allow us to maintain a decoupled, event-driven architecture.

Extends​

Constructors​

Constructor​

new ControlPublisher(bus, pacer): ControlPublisher

Defined in: src/sdk/data/ControlPublisher.ts:78

Create a ControlPublisher.

Parameters​

ParameterTypeDefault valueDescription
busEventBusundefinedThe EventBus to publish to.
pacerPublishPacer<ControlEvents> | undefinedundefinedAn optional pacer to use to control the rate of publishing.

Returns​

ControlPublisher

Overrides​

BasePublisher.constructor

Properties​

bus​

protected readonly bus: EventBus

Defined in: src/sdk/instruments/BasePublishers.ts:10

Inherited from​

BasePublisher.bus


pacer​

protected readonly pacer: PublishPacer<ControlEvents> | undefined

Defined in: src/sdk/instruments/BasePublishers.ts:13

Inherited from​

BasePublisher.pacer


publishActive​

protected publishActive: boolean

Defined in: src/sdk/instruments/BasePublishers.ts:12

Inherited from​

BasePublisher.publishActive


publisher​

protected readonly publisher: Publisher<ControlEvents>

Defined in: src/sdk/instruments/BasePublishers.ts:11

Inherited from​

BasePublisher.publisher

Methods​

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​

BasePublisher.isPublishing


onUpdate()​

onUpdate(): void

Defined in: src/sdk/instruments/BasePublishers.ts:52

A callback called when the publisher receives an update cycle.

Returns​

void

Inherited from​

BasePublisher.onUpdate


publish()​

protected publish<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 keyof ControlEvents

Parameters​

ParameterTypeDefault valueDescription
topicKundefinedThe topic key to publish to.
dataControlEvents[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


publishEvent()​

publishEvent<K>(event, value): void

Defined in: src/sdk/data/ControlPublisher.ts:87

Publish a control event.

Type Parameters​

Type Parameter
K extends keyof ControlEvents

Parameters​

ParameterTypeDescription
eventKThe event from ControlEvents.
valueControlEvents[K]The value of the event.

Returns​

void


startPublish()​

startPublish(): void

Defined in: src/sdk/data/ControlPublisher.ts:92

debug logger

Returns​

void

Overrides​

BasePublisher.startPublish


stopPublish()​

stopPublish(): void

Defined in: src/sdk/instruments/BasePublishers.ts:37

Stop publishing.

Returns​

void

Inherited from​

BasePublisher.stopPublish