Lines Matching refs:SkRasterPipeline

17 #include "src/core/SkRasterPipeline.h"
403 static GrSwizzle get_load_and_src_swizzle(GrColorType ct, SkRasterPipeline::StockStage* load,
409 case GrColorType::kAlpha_8: *load = SkRasterPipeline::load_a8; break;
410 case GrColorType::kAlpha_16: *load = SkRasterPipeline::load_a16; break;
411 case GrColorType::kBGR_565: *load = SkRasterPipeline::load_565; break;
412 case GrColorType::kABGR_4444: *load = SkRasterPipeline::load_4444; break;
414 *load = SkRasterPipeline::load_4444; break;
416 *load = SkRasterPipeline::load_4444; break;
417 case GrColorType::kRGBA_8888: *load = SkRasterPipeline::load_8888; break;
418 case GrColorType::kRG_88: *load = SkRasterPipeline::load_rg88; break;
419 case GrColorType::kRGBA_1010102: *load = SkRasterPipeline::load_1010102; break;
420 case GrColorType::kBGRA_1010102: *load = SkRasterPipeline::load_1010102;
423 case GrColorType::kAlpha_F16: *load = SkRasterPipeline::load_af16; break;
424 case GrColorType::kRGBA_F16_Clamped: *load = SkRasterPipeline::load_f16; break;
425 case GrColorType::kRG_1616: *load = SkRasterPipeline::load_rg1616; break;
426 case GrColorType::kRGBA_16161616: *load = SkRasterPipeline::load_16161616; break;
428 case GrColorType::kRGBA_8888_SRGB: *load = SkRasterPipeline::load_8888;
431 case GrColorType::kRG_F16: *load = SkRasterPipeline::load_rgf16;
434 case GrColorType::kRGBA_F16: *load = SkRasterPipeline::load_f16;
437 case GrColorType::kRGBA_F32: *load = SkRasterPipeline::load_f32;
440 case GrColorType::kAlpha_8xxx: *load = SkRasterPipeline::load_8888;
443 case GrColorType::kAlpha_F32xxx: *load = SkRasterPipeline::load_f32;
446 case GrColorType::kGray_8xxx: *load = SkRasterPipeline::load_8888;
449 case GrColorType::kGray_8: *load = SkRasterPipeline::load_a8;
452 case GrColorType::kGrayAlpha_88: *load = SkRasterPipeline::load_rg88;
455 case GrColorType::kBGRA_8888: *load = SkRasterPipeline::load_8888;
458 case GrColorType::kRGB_888x: *load = SkRasterPipeline::load_8888;
480 static GrSwizzle get_dst_swizzle_and_store(GrColorType ct, SkRasterPipeline::StockStage* store,
487 case GrColorType::kAlpha_8: *store = SkRasterPipeline::store_a8; break;
488 case GrColorType::kAlpha_16: *store = SkRasterPipeline::store_a16; break;
489 case GrColorType::kBGR_565: *store = SkRasterPipeline::store_565; break;
490 case GrColorType::kABGR_4444: *store = SkRasterPipeline::store_4444; break;
492 *store = SkRasterPipeline::store_4444; break;
494 *store = SkRasterPipeline::store_4444; break;
495 case GrColorType::kRGBA_8888: *store = SkRasterPipeline::store_8888; break;
496 case GrColorType::kRG_88: *store = SkRasterPipeline::store_rg88; break;
497 case GrColorType::kRGBA_1010102: *store = SkRasterPipeline::store_1010102; break;
499 *store = SkRasterPipeline::store_1010102;
501 case GrColorType::kRGBA_F16_Clamped: *store = SkRasterPipeline::store_f16; break;
502 case GrColorType::kRG_1616: *store = SkRasterPipeline::store_rg1616; break;
503 case GrColorType::kRGBA_16161616: *store = SkRasterPipeline::store_16161616; break;
505 case GrColorType::kRGBA_8888_SRGB: *store = SkRasterPipeline::store_8888;
508 case GrColorType::kRG_F16: *store = SkRasterPipeline::store_rgf16;
511 case GrColorType::kAlpha_F16: *store = SkRasterPipeline::store_af16;
514 case GrColorType::kRGBA_F16: *store = SkRasterPipeline::store_f16;
517 case GrColorType::kRGBA_F32: *store = SkRasterPipeline::store_f32;
520 case GrColorType::kAlpha_8xxx: *store = SkRasterPipeline::store_8888;
523 case GrColorType::kAlpha_F32xxx: *store = SkRasterPipeline::store_f32;
527 *store = SkRasterPipeline::store_8888;
530 *store = SkRasterPipeline::store_8888;
533 *store = SkRasterPipeline::store_a8;
536 *store = SkRasterPipeline::store_a16;
539 *store = SkRasterPipeline::store_af16;
542 *store = SkRasterPipeline::store_af16;
545 *store = SkRasterPipeline::store_a8;
549 *store = SkRasterPipeline::store_rg88;
552 *store = SkRasterPipeline::store_8888;
564 static inline void append_clamp_gamut(SkRasterPipeline* pipeline) {
565 // SkRasterPipeline may not know our color type and also doesn't like caller to directly
586 // SkRasterPipeline doesn't handle writing to RGB_888. So we have it write to RGB_888x and
604 // SkRasterPipeline doesn't handle reading from RGB_888. So convert it to RGB_888x and then
623 // SkRasterPipeline operates on row-pixels not row-bytes.
650 SkRasterPipeline::StockStage load;
658 SkRasterPipeline::StockStage store;
688 // whole rectangle. However, SkRasterPipeline::run()'s control loop uses size_t loop
723 pipeline.append(SkRasterPipeline::StockStage::bt709_luminance_or_luma_to_rgb);
726 pipeline.append(SkRasterPipeline::StockStage::bt709_luminance_or_luma_to_alpha);
762 // SkRasterPipeline doesn't handle writing to RGB_888. So we handle that specially here.
776 SkRasterPipeline::StockStage store;
787 pipeline.append(SkRasterPipeline::StockStage::bt709_luminance_or_luma_to_rgb);
790 pipeline.append(SkRasterPipeline::StockStage::bt709_luminance_or_luma_to_alpha);