DataPointMetaData

@Serializable
data class DataPointMetaData(val name: String = "data-point-", val sourceId: String = "", val precision: Int = 2, val unit: String = "", val manualEntry: Boolean = true, val dataType: DataType = DataType.DOUBLE, val maxAge: Long = 0, val path: String = "", val error: String = "", val sources: List<NodeIdentity> = emptyList(), val snapshot: Snapshot = Snapshot(Clock.System.now().epochSeconds, 0.0), val invocationTriggers: List<InvocationTrigger> = emptyList(), val nodeAction: NodeAction = NodeAction.EXECUTE, val inputs: List<NodeIdentity> = emptyList()) : SourceMetaData(source)

Payload for a DataPoint node.

Constructors

Link copied to clipboard
constructor(name: String = "data-point-", sourceId: String = "", precision: Int = 2, unit: String = "", manualEntry: Boolean = true, dataType: DataType = DataType.DOUBLE, maxAge: Long = 0, path: String = "", error: String = "", sources: List<NodeIdentity> = emptyList(), snapshot: Snapshot = Snapshot(Clock.System.now().epochSeconds, 0.0), invocationTriggers: List<InvocationTrigger> = emptyList(), nodeAction: NodeAction = NodeAction.EXECUTE, inputs: List<NodeIdentity> = emptyList())

Properties

Link copied to clipboard

Drives interpretation of Snapshot.value; see DataType.

Link copied to clipboard
open override val error: String

Last known error message for this node, or empty string when healthy.

Link copied to clipboard
open override val inputs: List<NodeIdentity>

sets the nodes this node reads from to complete its work when invoked

Link copied to clipboard

The set of InvocationTriggers configured to wake this node. The node processor checks the incoming event against this list before doing any work. An empty list means "never auto-fire" — only manual execution.

Link copied to clipboard

true when the user can type values into the editor — false for read-only sources.

Link copied to clipboard

Maximum age (epoch millis) of stored snapshots — 0 means keep forever.

Link copied to clipboard

Display name; default uses an epoch-second suffix so freshly created points don't collide.

Link copied to clipboard
open override val nodeAction: NodeAction

The action this node performs when it fires. Defaults to NodeAction.EXECUTE on every concrete implementation so that deserialising a payload that predates this field yields the original behaviour unchanged.

Link copied to clipboard

Optional path-like address for grouping points in the editor.

Link copied to clipboard

Number of decimal places the editor renders Snapshot.value with.

Link copied to clipboard
open override val snapshot: Snapshot

Stores the last result of when this node was invoked and is a source of data

Link copied to clipboard

Optional UUID of a node whose values this DataPoint mirrors — empty when the point is a primary source rather than a derived one.

Link copied to clipboard
open override val sources: List<NodeIdentity>

Upstream nodes whose values feed this one. For a filter or executor this is the data being read; for a trigger it is the value being watched.

Link copied to clipboard

Free-form units string ("°C", "%", "V") appended to display values.