VisualizationData.fromMap constructor

VisualizationData.fromMap(
  1. Map map
)

Creates a VisualizationData from a map.

Implementation

factory VisualizationData.fromMap(Map<dynamic, dynamic> map) {
  Uint8List? waveformData;
  Uint8List? fftData;
  int timestamp =
      map['timestamp'] as int? ?? DateTime.now().millisecondsSinceEpoch;

  if (map.containsKey('waveform') && map['waveform'] is String) {
    final waveformStr = map['waveform'] as String;
    if (waveformStr.isNotEmpty) {
      waveformData = base64Decode(waveformStr);
    }
  }

  if (map.containsKey('fft') && map['fft'] is String) {
    final fftStr = map['fft'] as String;
    if (fftStr.isNotEmpty) {
      fftData = base64Decode(fftStr);
    }
  }

  return VisualizationData(
    waveform: waveformData,
    fft: fftData,
    timestamp: timestamp,
  );
}