healthrian_visualization_support library

Healthrian visualization support library

Classes

BatteryMonitor
BleScanner
BleScannerController
BleScannerController is a controller for BleScanner. It manages scanning, filtering, and connection logic.
ChannelVisualization
ChannelVisualization is a widget drawing an ecg sequence per channel.
ConnectionMonitor
ControlPanel
DiagnosticSymptomChip
DrawLead
EcgGridPaths
The stack-wide 1 mm / 5 mm grid, built for the canvas the painter is actually given and rebuilt only when that size or the scale changes.
EcgIncrementalCanvas
ECGLeadPainter
ECGLeadStatusView
EcgMonitor
EcgMultiIncrementalCanvas
EcgPainter
EcgPaperRenderer
Renders ECG data onto a standard 12-lead ECG paper layout.
EcgReportGenerator
Unified utility for generating ECG PDF reports.
EcgScalerOptimized
Left-column scale for one lead: the mm paper grid and a 1 mV calibration pulse.
EcgSweepBand
The strip of the canvas a cached frame still has to draw, and the sample range that goes into it.
EcgSweepCache
Holds the already-swept part of a live ECG trace as a rasterised snapshot, so a frame only has to draw the strip that actually changed.
EcgUnifiedViewer
EcgVisualizationOptimized
FftMonitor
FftMonitor displays real-time frequency spectrum (FFT) for ECG signals, allowing visual comparison of Raw (unfiltered) vs Filtered signals to verify the removal of mains hum (50/60 Hz), low-pass, and baseline wander noise.
HeartRateMonitor
ImuMonitor
ImuMonitor shows the accelerometer riding along with the ECG packets (ModuleMonitor.accel): on the left, which way the x/y/z vector points (isometric axes, Z up; at rest it points away from the ground) with a trail of the last history; on the right, x/y/z over the same history. Collapsed to the 3D view alone until tapped; a tap toggles.
JVChannel
Metadata for a standard ECG channel.
JVChannels
Canonical metadata for clinical ECG channels.
JVChannelSelectionDialog
JVChunkSelectionDialog
A dialog for selecting ECG data chunks (pages) to include in a report.
JVColors
JVDelayedErrorView
JVDiagnosticSidePanel
A diagnostic information panel for ECG viewer.
JVECGControlBar
JVEcgFilterSession
Manages the lifecycle and state of a persistent IIR filter session for a specific ECG recording.
JVEcgFullPaperView
A shared widget for displaying a full 12-lead ECG paper.
JVEcgFullPaperViewState
JVEcgPaperStripView
A shared widget for displaying a multi-channel ECG strip.
JVEcgPaperStripViewState
JVEcgSessionTable
A data table for displaying a list of EcgSessionRecord entries.
JVEcgSessionTableTranslations
Localized strings for JVEcgSessionTable and JVPaginationBar.
JVEcgViewerDialog
JVEcgViewerTranslations
JVGainSelector
JVHeaderToggle
JVMetricExtractor
Core engine for extracting and formatting ECG metrics consistently.
JVMetricItem
A single row displaying an ECG metric name and its formatted value.
JVMetricList
A vertical list of formatted ECG metrics.
JVMetricPair
Data model for a formatted clinical metric pair.
JVMiniEcgPreview
A small ECG waveform preview widget.
JVOverlayButton
A shared button designed for overlays (e.g., floating on top of waveforms).
JVPageNavigator
JVPaginationBar
A reusable pagination bar widget.
JVRecordCard
JVRecordCardTranslations
Translations for the JVRecordCard component.
JVReportPageView
A reusable component for viewing and managing an ECG report consisting of multiple data pages.
JVSymptomView
A shared widget that displays a collection of diagnostic symptom chips.
LeadPageCell
One cell of the page: a lead, the slice of the lap it shows, and where.
LeadstateMonitor
MapBasedReportTranslations
A flexible implementation of ReportTranslations that uses a map for translations.
MultiChannelVisualization
PacketLossMonitor
A widget that monitors and displays real-time packet loss information.
RecordButton
ReportFeatures
ReportTranslations
Interface for providing localized strings to the EcgPaperRenderer.
SamplingRateMonitor
ScalerPainter
ScanClaim
A claim on the single, process-wide BLE scan.
SimpleVisualization
TapMonitor
TwelveLeadSweepPage
The twelve leads drawn the way a report page draws them — four columns of 2.5 s plus a rhythm strip — while the measurement is still running.
UnifiedEcgPainter
VisualizableBeat
An interface for beat data used in static visualizations.
VisualizableRhythm
An interface for rhythm data used in static visualizations.

Enums

EcgReportLayout
JVEcgViewerMode
LeadstateStyle
Which electrode diagram the lead-state monitor paints.

Mixins

EcgPaperRenderState<W extends StatefulWidget>
Render bookkeeping shared by the ECG paper views (strip and full-page).

Constants

bleScanForgetAfter → const Duration
How long a scanned device stays listed after its last advertisement.
traceScans → const bool
Set true to log a stack trace at every scan that actually reaches the radio.

Properties

BatteryCardioClick → _$BatteryMonitorCWProxy
no setter
BatteryCardioEM → _$BatteryMonitorCWProxy
no setter
BatteryWearEcg → _$BatteryMonitorCWProxy
no setter
BatteryWearT → _$BatteryMonitorCWProxy
no setter
ConnectionCardioClick → _$ConnectionMonitorCWProxy
no setter
ConnectionCardioEM → _$ConnectionMonitorCWProxy
no setter
ConnectionWearEcg → _$ConnectionMonitorCWProxy
no setter
ConnectionWearT → _$ConnectionMonitorCWProxy
no setter
ControlPanelCardioClick → _$ControlPanelCWProxy
no setter
ControlPanelCardioEM → _$ControlPanelCWProxy
no setter
ControlPanelWearEcg → _$ControlPanelCWProxy
no setter
ControlPanelWearT → _$ControlPanelCWProxy
no setter
EcgCardioClick → _$EcgMonitorCWProxy
no setter
EcgCardioEM → _$EcgMonitorCWProxy
no setter
EcgWearEcg → _$EcgMonitorCWProxy
no setter
EcgWearT → _$EcgMonitorCWProxy
no setter
FftCardioClick → _$FftMonitorCWProxy
no setter
FftCardioEM → _$FftMonitorCWProxy
no setter
FftWearEcg → _$FftMonitorCWProxy
no setter
FftWearT → _$FftMonitorCWProxy
no setter
HeartRateCardioClick → _$HeartRateMonitorCWProxy
no setter
HeartRateCardioEM → _$HeartRateMonitorCWProxy
no setter
HeartRateWearEcg → _$HeartRateMonitorCWProxy
no setter
HeartRateWearT → _$HeartRateMonitorCWProxy
no setter
LeadstateCardioClick → _$LeadstateMonitorCWProxy
no setter
LeadstateCardioEM → _$LeadstateMonitorCWProxy
no setter
LeadstateWearEcg → _$LeadstateMonitorCWProxy
no setter
LeadstateWearT → _$LeadstateMonitorCWProxy
no setter
PacketLossCardioClick → PacketLossMonitor
no setter
PacketLossCardioEM → PacketLossMonitor
no setter
PacketLossWearEcg → PacketLossMonitor
no setter
RecordButtonCardioClick → _$RecordButtonCWProxy
no setter
RecordButtonWearEcg → _$RecordButtonCWProxy
no setter
RecordButtonWearT → _$RecordButtonCWProxy
no setter
RecordCardioEM → _$RecordButtonCWProxy
no setter
SamplingRateCardioClick → _$SamplingRateMonitorCWProxy
no setter
SamplingRateCardioEM → _$SamplingRateMonitorCWProxy
no setter
SamplingRateWearEcg → _$SamplingRateMonitorCWProxy
no setter
SamplingRateWearT → _$SamplingRateMonitorCWProxy
no setter
ScannerCardioClick → _$BleScannerCWProxy
no setter
ScannerCardioEM → _$BleScannerCWProxy
no setter
ScannerWearEcg → _$BleScannerCWProxy
no setter
ScannerWearT → _$BleScannerCWProxy
no setter
TapCardioClick → _$TapMonitorCWProxy
no setter
TapCardioEM → _$TapMonitorCWProxy
no setter
TapWearEcg → _$TapMonitorCWProxy
no setter
TapWearT → _$TapMonitorCWProxy
no setter

Functions

leadPageCells({required Size size, required int limit, required int columns, required int rows, required int? rhythmChannel, required List<String> labels}) → List<LeadPageCell>
The page's cells, in draw order: the twelve lead cells then the rhythm strip. Pure — this is the geometry the painter and its test share.

Typedefs

ConnectFunc = void Function()
DisconnectFunc = void Function()
EcgImageSaveCallback = void Function(Uint8List bytes, String fileName)
ScanFunc = void Function()