BASE_bytesPerPixel static method

int BASE_bytesPerPixel(
  1. PixelFormat format
)

Returns the number of bytes per pixel for the given format.

Throws a StateError if format is PixelFormat.PIXELFORMAT_NONE, and an UnsupportedError for compressed formats which have no fixed bytes-per-pixel value.

Implementation

static int BASE_bytesPerPixel(PixelFormat format) => switch (format) {
  .PIXELFORMAT_NONE => throw StateError('Cannot compute bytes per pixel for PIXELFORMAT_NONE'),
  .PIXELFORMAT_UNCOMPRESSED_GRAYSCALE => 1,
  .PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA => 2,
  .PIXELFORMAT_UNCOMPRESSED_R5G6B5 => 2,
  .PIXELFORMAT_UNCOMPRESSED_R8G8B8 => 3,
  .PIXELFORMAT_UNCOMPRESSED_R8G8B8A8 => 4,
  .PIXELFORMAT_UNCOMPRESSED_R32 => 4,
  .PIXELFORMAT_UNCOMPRESSED_R32G32B32 => 12,
  .PIXELFORMAT_UNCOMPRESSED_R32G32B32A32 => 16,
  .PIXELFORMAT_UNCOMPRESSED_R16 => 2,
  .PIXELFORMAT_UNCOMPRESSED_R16G16B16 => 6,
  .PIXELFORMAT_UNCOMPRESSED_R16G16B16A16 => 8,
  _ => throw UnsupportedError('Compressed formats have no simple bpp: $format'),
};