ExrCompressor.tile constructor

ExrCompressor.tile(
  1. int type,
  2. int tileLineSize,
  3. int numTileLines,
  4. ExrPart hdr,
)

Implementation

factory ExrCompressor.tile(
    int type, int tileLineSize, int numTileLines, ExrPart hdr) {
  switch (type) {
    case RLE_COMPRESSION:
      return ExrRleCompressor(hdr, (tileLineSize * numTileLines));
    case ZIPS_COMPRESSION:
    case ZIP_COMPRESSION:
      return ExrZipCompressor(hdr, tileLineSize, numTileLines);
    case PIZ_COMPRESSION:
      return ExrPizCompressor(hdr, tileLineSize, numTileLines);
    case PXR24_COMPRESSION:
      return ExrPxr24Compressor(hdr, tileLineSize, numTileLines);
    case B44_COMPRESSION:
      return ExrB44Compressor(hdr, tileLineSize, numTileLines, false);
    case B44A_COMPRESSION:
      return ExrB44Compressor(hdr, tileLineSize, numTileLines, true);
    default:
      throw ImageException('Invalid compression type: $type');
  }
}