transports/lsl/isolate/isolate_manager library

Classes

AddInletMessage
Message to add an inlet to running isolate - immutable
BufferReleasedMessage
Sent from the outlet worker back to the main isolate once a pooled send buffer may be reused.
ConsumerPresenceMessage
Sent from the outlet worker when its consumer count crosses zero.
DataMessage
FlushMessage
Message to flush inlet streams - immutable
IIMessage
Interface for all isolate messages
InitializedMessage
Message to notify main thread that the isolate is initialized
InletWorker
Worker class for handling inlet operations in isolate
IsolateClockSync
One inlet's clock-offset estimate, as measured inside the inlet isolate.
IsolateClockSyncList
A batch of IsolateClockSync, one per inlet refreshed in the same pass.
IsolateDataMessage
Message sent from isolate to main
IsolateDataMessageList
IsolateMessage
Base class for all isolate messages - immutable for efficient message passing
IsolateStreamManager
Factory container for creating LSL stream isolates
IsolateWorker
Base class for isolate workers with shared functionality
IsolateWorkerConfig
Configuration for isolate workers
OutletWorker
Worker class for handling outlet operations in isolate
PauseMessage
Message to pause isolate processing - immutable
RecreateOutletMessage
Message to recreate outlet - immutable
RemoveInletMessage
Message to remove an inlet from running isolate - immutable
ResponseMessage
Message to notify main thread of request response
ResumeMessage
Message to resume isolate processing - immutable
SampleMessage
Base class for mutable isolate messages - will be copied when sent (probably?) This is probably more accurately NonImmutableIsolateMessage Message to send data through outlet - non-immutable thanks to List
StartMessage
Message to start isolate processing - immutable
StopMessage
Message to stop isolate processing - immutable
StreamInletIsolate
Inlet isolate for receiving data from multiple sources
StreamIsolate
Base class for stream isolates with shared functionality
StreamOutletIsolate
Outlet isolate for sending data

Enums

IsolateMessageType
Enum defining all possible isolate message types

Extensions

IsolateMessageTypeInt on IsolateMessageType
This is dumb, but despite Enum being immutable, it doesn't work with 'vm:deeply-immutable' pragma, so this just wraps the conversion from int to enum value. The enum is only used in this file anyway.