ModeData.fromBuffer constructor

ModeData.fromBuffer(
  1. ByteDataWrapper wrapper
)

Implementation

factory ModeData.fromBuffer(ByteDataWrapper wrapper) {
  final modeName = wrapper.extractString();
  final modeValue = wrapper.extractUint32();
  final modeFlags = wrapper.extractUint32();
  final modeSpeedMin = wrapper.extractUint32();
  final modeSpeedMax = wrapper.extractUint32();
  final modeBrightnessMin = wrapper.extractUint32();
  final modeBrightnessMax = wrapper.extractUint32();
  final modeColorsMin = wrapper.extractUint32();
  final modeColorsMax = wrapper.extractUint32();
  final modeSpeed = wrapper.extractUint32();
  final modeBrightness = wrapper.extractUint32();
  final modeDirection = wrapper.extractUint32();
  final modeColorMode = wrapper.extractUint32();
  final modeNumColors = wrapper.extractUint16();
  final colors = <Color>[];
  for (int i = 0; i < modeNumColors; i++) {
    colors.add(Color.rgb(
      wrapper.extractUint8(),
      wrapper.extractUint8(),
      wrapper.extractUint8(),
    ));
    wrapper.extractUint8();
  }
  return ModeData(
    modeName: modeName,
    modeValue: modeValue,
    modeFlags: modeFlags,
    modeSpeedMin: modeSpeedMin,
    modeSpeedMax: modeSpeedMax,
    modeBrightnessMin: modeBrightnessMin,
    modeBrightnessMax: modeBrightnessMax,
    modeColorsMin: modeColorsMin,
    modeColorsMax: modeColorsMax,
    modeSpeed: modeSpeed,
    modeBrightness: modeBrightness,
    modeDirection: modeDirection,
    modeColorMode: modeColorMode,
    modeNumColors: modeNumColors,
    colors: colors,
  );
}