Index

A B C D E G I M N P R S T U V W 
All Classes and Interfaces|All Packages|Constant Field Values

A

apply(PaintOp) - Method in class protocols.apps.canvas.PixelCanvas
Apply an op under last-writer-wins.
autoDetectAddress() - Static method in class utils.InterfaceToIp
Auto-detect a reachable bind address: the routable IPv4 of the sole real (non-loopback, up, non-virtual, non-p2p, non-bridge/VM/VPN) interface.

B

broadcast(UUID, int, int, int) - Method in class protocols.apps.canvas.telemetry.Telemetry
Emitted by the origin node when it issues a paint op.

C

CanvasApp - Class in protocols.apps.canvas
The collaborative-canvas application — the top of the stack, and the only protocol a user (or experiment) drives directly.
CanvasApp(Properties, Host, short, short) - Constructor for class protocols.apps.canvas.CanvasApp
 
CanvasPayload - Class in protocols.apps.canvas
The canvas's "application protocol" that rides inside the gossip broadcast's opaque byte[] payload.
CanvasSyncMessage - Class in protocols.apps.canvas.messages
A point-to-point canvas snapshot exchange, sent directly to one peer (not broadcast) over HyParView's shared channel via sendMessage.
CanvasSyncMessage(CanvasSyncMessage.Kind, List<PaintOp>) - Constructor for class protocols.apps.canvas.messages.CanvasSyncMessage
 
CanvasSyncMessage.Kind - Enum Class in protocols.apps.canvas.messages
 
clone() - Method in class protocols.apps.canvas.timers.ControlTimer
 
clone() - Method in class protocols.apps.canvas.timers.DigestTimer
 
clone() - Method in class protocols.apps.canvas.timers.WorkloadTimer
 
ControlTimer - Class in protocols.apps.canvas.timers
Polls the shared control file in orchestrator-coordinated workload mode (see CanvasApp.uponControlTimer).
ControlTimer() - Constructor for class protocols.apps.canvas.timers.ControlTimer
 

D

decode(byte[]) - Static method in class protocols.apps.canvas.CanvasPayload
Parse the bytes delivered by the gossip layer back into a paint op.
DEFAULT_DIGEST_INTERVAL - Static variable in class protocols.apps.canvas.CanvasApp
Default for CanvasApp.PAR_DIGEST_INTERVAL: "5000" ms.
DEFAULT_HEIGHT - Static variable in class protocols.apps.canvas.CanvasApp
Default canvas height: "48".
DEFAULT_SNAPSHOT_SYNC - Static variable in class protocols.apps.canvas.CanvasApp
Default for CanvasApp.PAR_SNAPSHOT_SYNC: "true".
DEFAULT_UI_ENABLED - Static variable in class protocols.apps.canvas.CanvasApp
Default for CanvasApp.PAR_UI_ENABLED: "true".
DEFAULT_UI_OPEN - Static variable in class protocols.apps.canvas.CanvasApp
Default for CanvasApp.PAR_UI_OPEN: "true".
DEFAULT_UI_PORT_OFFSET - Static variable in class protocols.apps.canvas.CanvasApp
Offset added to the bind port to derive the default UI port.
DEFAULT_WIDTH - Static variable in class protocols.apps.canvas.CanvasApp
Default canvas width: "48".
DEFAULT_WORKLOAD_CONTROL_FILE - Static variable in class protocols.apps.canvas.CanvasApp
Default for CanvasApp.PAR_WORKLOAD_CONTROL_FILE: "" (empty → legacy timer mode).
DEFAULT_WORKLOAD_CONTROL_POLL_MS - Static variable in class protocols.apps.canvas.CanvasApp
DEFAULT_WORKLOAD_DURATION - Static variable in class protocols.apps.canvas.CanvasApp
Default for CanvasApp.PAR_WORKLOAD_DURATION: "0" ms.
DEFAULT_WORKLOAD_ENABLED - Static variable in class protocols.apps.canvas.CanvasApp
Default for CanvasApp.PAR_WORKLOAD_ENABLED: "false".
DEFAULT_WORKLOAD_RATE - Static variable in class protocols.apps.canvas.CanvasApp
Default for CanvasApp.PAR_WORKLOAD_RATE: "2" ops/s.
DEFAULT_WORKLOAD_START_DELAY - Static variable in class protocols.apps.canvas.CanvasApp
Default for CanvasApp.PAR_WORKLOAD_START_DELAY: "5000" ms.
deliver(UUID, String) - Method in class protocols.apps.canvas.telemetry.Telemetry
Emitted by every node (including the origin) when an op is delivered locally.
describeInterfaces() - Static method in class utils.InterfaceToIp
Logs every network interface and its IPv4 addresses (with up/loopback/virtual/ point-to-point flags) to help diagnose a wrong auto-selection.
digest() - Method in class protocols.apps.canvas.PixelCanvas
Stable 64-bit digest of the visible canvas: FNV-1a over (index, argb) for every painted cell in row-major order.
digest(long, long, int, int, long, String) - Method in class protocols.apps.canvas.telemetry.Telemetry
Periodic convergence digest of the local canvas.
DigestTimer - Class in protocols.apps.canvas.timers
Fires periodically to make CanvasApp emit a convergence digest of its local canvas to the telemetry log (see CanvasApp.uponDigestTimer).
DigestTimer() - Constructor for class protocols.apps.canvas.timers.DigestTimer
 

E

EMPTY - Static variable in class protocols.apps.canvas.PixelCanvas
Colour reported for a cell nobody has painted yet (transparent).
encode(PaintOp) - Static method in class protocols.apps.canvas.CanvasPayload
Serialize a paint op to the bytes carried inside a broadcast message.

G

getArgb() - Method in class protocols.apps.canvas.PaintOp
 
getHeight() - Method in class protocols.apps.canvas.PixelCanvas
 
getIpOfInterface(String) - Static method in class utils.InterfaceToIp
Returns the first non-loopback IPv4 address of interfaceName, or null if it has none / does not exist.
getKind() - Method in class protocols.apps.canvas.messages.CanvasSyncMessage
 
getOpId() - Method in class protocols.apps.canvas.PaintOp
 
getOps() - Method in class protocols.apps.canvas.messages.CanvasSyncMessage
 
getOriginId() - Method in class protocols.apps.canvas.PaintOp
 
getTimestamp() - Method in class protocols.apps.canvas.PaintOp
 
getUiPort() - Method in class protocols.apps.canvas.CanvasApp
 
getWidth() - Method in class protocols.apps.canvas.PixelCanvas
 
getX() - Method in class protocols.apps.canvas.PaintOp
 
getY() - Method in class protocols.apps.canvas.PaintOp
 

I

init(Properties) - Method in class protocols.apps.canvas.CanvasApp
 
InterfaceToIp - Class in utils
Resolves the process-wide bind address (babel.address) the node binds and announces on.
isNewerThan(PaintOp) - Method in class protocols.apps.canvas.PaintOp
Total, deterministic last-writer-wins order: this op beats other iff it has a strictly higher timestamp, or an equal timestamp and a greater originId, or equal on both and a greater opId.
isUiEnabled() - Method in class protocols.apps.canvas.CanvasApp
 

M

main(String[]) - Static method in class Main
 
Main - Class in Unnamed Package
Entry point for babel-canvas — a peer-to-peer collaborative pixel canvas.
Main() - Constructor for class Main
 
mergeSnapshot(List<PaintOp>) - Method in class protocols.apps.canvas.PixelCanvas
Merge a peer's snapshot into this canvas under LWW.
MSG_ID - Static variable in class protocols.apps.canvas.messages.CanvasSyncMessage
 

N

neighborDown(String, int) - Method in class protocols.apps.canvas.telemetry.Telemetry
 
neighborUp(String, int) - Method in class protocols.apps.canvas.telemetry.Telemetry
 

P

paintedCount() - Method in class protocols.apps.canvas.PixelCanvas
Number of cells that have been painted at least once.
paintFromUi(int, int, int) - Method in class protocols.apps.canvas.CanvasApp
Paint a cell from the web UI.
PaintOp - Class in protocols.apps.canvas
A single paint operation: "cell (x,y) becomes colour argb".
PaintOp(int, int, int, long, String, UUID) - Constructor for class protocols.apps.canvas.PaintOp
 
paintStart(int, long, String) - Method in class protocols.apps.canvas.telemetry.Telemetry
The local node began its paint workload.
PAR_ANTIENTROPY_ENABLED - Static variable in class Main
Property key — load and wire the anti-entropy reconciliation protocol.
PAR_DEFAULT_BABEL_PORT - Static variable in class Main
Default value for the TCP port (Babel.PAR_DEFAULT_PORT, i.e.
PAR_DIGEST_INTERVAL - Static variable in class protocols.apps.canvas.CanvasApp
Property key — period (ms) between convergence-digest telemetry lines; <= 0 disables.
PAR_HEIGHT - Static variable in class protocols.apps.canvas.CanvasApp
Property key — shared grid height in cells.
PAR_SNAPSHOT_SYNC - Static variable in class protocols.apps.canvas.CanvasApp
Property key — request a canvas snapshot from a neighbour on join.
PAR_UI_ENABLED - Static variable in class protocols.apps.canvas.CanvasApp
Property key — enable the embedded web UI.
PAR_UI_OPEN - Static variable in class protocols.apps.canvas.CanvasApp
Property key — open the system browser at the UI on startup (best-effort).
PAR_UI_PORT - Static variable in class protocols.apps.canvas.CanvasApp
Property key — web UI port.
PAR_WIDTH - Static variable in class protocols.apps.canvas.CanvasApp
Property key — shared grid width in cells.
PAR_WORKLOAD_CONTROL_FILE - Static variable in class protocols.apps.canvas.CanvasApp
Property key — shared control file (RUN/STOP) the experiment script drives; empty = legacy timer mode.
PAR_WORKLOAD_CONTROL_POLL_MS - Static variable in class protocols.apps.canvas.CanvasApp
Property key — how often (ms) to poll the control file in coordinated mode.
PAR_WORKLOAD_DURATION - Static variable in class protocols.apps.canvas.CanvasApp
Property key — how long (ms) to keep painting; <= 0 = until stopped.
PAR_WORKLOAD_ENABLED - Static variable in class protocols.apps.canvas.CanvasApp
Property key — enable the headless random-paint workload driver.
PAR_WORKLOAD_RATE - Static variable in class protocols.apps.canvas.CanvasApp
Property key — workload paint operations per second.
PAR_WORKLOAD_START_DELAY - Static variable in class protocols.apps.canvas.CanvasApp
Property key — delay (ms) before the first workload paint, to let the overlay form.
PixelCanvas - Class in protocols.apps.canvas
The shared pixel grid: one PaintOp winner per cell under last-writer-wins (see PaintOp.isNewerThan(protocols.apps.canvas.PaintOp)).
PixelCanvas(int, int) - Constructor for class protocols.apps.canvas.PixelCanvas
 
PROTO_ID - Static variable in class protocols.apps.canvas.CanvasApp
 
PROTO_NAME - Static variable in class protocols.apps.canvas.CanvasApp
 
protocols.apps.canvas - package protocols.apps.canvas
 
protocols.apps.canvas.messages - package protocols.apps.canvas.messages
 
protocols.apps.canvas.telemetry - package protocols.apps.canvas.telemetry
 
protocols.apps.canvas.timers - package protocols.apps.canvas.timers
 
protocols.apps.canvas.ui - package protocols.apps.canvas.ui
 

R

readFrom(DataInputStream) - Static method in class protocols.apps.canvas.PaintOp
Read one op previously written by PaintOp.writeTo(java.io.DataOutputStream).
REPLY - Enum constant in enum class protocols.apps.canvas.messages.CanvasSyncMessage.Kind
 
REQUEST - Enum constant in enum class protocols.apps.canvas.messages.CanvasSyncMessage.Kind
 
resolveBindAddress(Properties) - Static method in class utils.InterfaceToIp
Resolve the process-wide bind address into babel.address (see the class javadoc for the precedence).

S

serializer - Static variable in class protocols.apps.canvas.messages.CanvasSyncMessage
 
snapshotArgb() - Method in class protocols.apps.canvas.PixelCanvas
The grid as a row-major array of ARGB colours, PixelCanvas.EMPTY for unpainted cells.
snapshotOps() - Method in class protocols.apps.canvas.PixelCanvas
All current winning ops (one per painted cell) — used to seed a joining peer.
start() - Method in class protocols.apps.canvas.ui.WebUi
Bind and start serving.
start(int, int, String, int, boolean) - Method in class protocols.apps.canvas.telemetry.Telemetry
Once at startup: records this node's identity and the run's key parameters.
stateJson() - Method in class protocols.apps.canvas.CanvasApp
A JSON snapshot of canvas + neighbours for the web UI's polling loop.
stop() - Method in class protocols.apps.canvas.ui.WebUi
 
syncMerge(String, int, int, int) - Method in class protocols.apps.canvas.telemetry.Telemetry
This node merged a snapshot reply from from: ops ops received, applied of them won LWW (state this node obtained by reconciliation rather than gossip — invisible to the delivered counter and DELIVER lines).
syncRequest(String) - Method in class protocols.apps.canvas.telemetry.Telemetry
This node asked peer for a canvas snapshot (point-to-point, once it has a neighbour).
syncServe(String, int) - Method in class protocols.apps.canvas.telemetry.Telemetry
This node served its canvas snapshot (ops winning ops) to to.

T

Telemetry - Class in protocols.apps.canvas.telemetry
Structured, machine-readable event emitter — the data contract between the canvas demo and the babel-canvas-experiments correctness harness.
Telemetry(String) - Constructor for class protocols.apps.canvas.telemetry.Telemetry
 
TIMER_ID - Static variable in class protocols.apps.canvas.timers.ControlTimer
 
TIMER_ID - Static variable in class protocols.apps.canvas.timers.DigestTimer
 
TIMER_ID - Static variable in class protocols.apps.canvas.timers.WorkloadTimer
 
toString() - Method in class protocols.apps.canvas.PaintOp
 

U

utils - package utils
 

V

valueOf(String) - Static method in enum class protocols.apps.canvas.messages.CanvasSyncMessage.Kind
Returns the enum constant of this class with the specified name.
values() - Static method in enum class protocols.apps.canvas.messages.CanvasSyncMessage.Kind
Returns an array containing the constants of this enum class, in the order they are declared.

W

WebUi - Class in protocols.apps.canvas.ui
A tiny embedded web UI for the canvas, built on the JDK's bundled HttpServer so the demo pulls in no HTTP dependency.
WebUi(int, CanvasApp) - Constructor for class protocols.apps.canvas.ui.WebUi
 
workloadStop(long) - Method in class protocols.apps.canvas.telemetry.Telemetry
The local node stopped generating paint ops — on the script's STOP (or the in-node duration safety-cap), before the drain window.
WorkloadTimer - Class in protocols.apps.canvas.timers
Fires at the configured paint rate to make CanvasApp generate one random paint operation in headless workload mode (see CanvasApp.uponWorkloadTimer).
WorkloadTimer() - Constructor for class protocols.apps.canvas.timers.WorkloadTimer
 
writeTo(DataOutputStream) - Method in class protocols.apps.canvas.PaintOp
Append this op to out (see PaintOp.readFrom(java.io.DataInputStream) for the inverse).
A B C D E G I M N P R S T U V W 
All Classes and Interfaces|All Packages|Constant Field Values