Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(92)

Side by Side Diff: core/src/fxge/dib/fx_dib_engine.cpp

Issue 1171733003: Remove typdefs for pointer types in fx_system.h (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Manual fixes. Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « core/src/fxge/dib/fx_dib_convert.cpp ('k') | core/src/fxge/dib/fx_dib_main.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 PDFium Authors. All rights reserved. 1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6 6
7 #include "../../../include/fxge/fx_dib.h" 7 #include "../../../include/fxge/fx_dib.h"
8 #include "../../../include/fxge/fx_ge.h" 8 #include "../../../include/fxge/fx_ge.h"
9 #include "dib_int.h" 9 #include "dib_int.h"
10 #include <limits.h> 10 #include <limits.h>
(...skipping 332 matching lines...) Expand 10 before | Expand all | Expand 10 after
343 int Bpp = m_DestBpp / 8; 343 int Bpp = m_DestBpp / 8;
344 int rows_to_go = FX_STRECH_PAUSE_ROWS; 344 int rows_to_go = FX_STRECH_PAUSE_ROWS;
345 for (; m_CurRow < m_SrcClip.bottom; m_CurRow ++) { 345 for (; m_CurRow < m_SrcClip.bottom; m_CurRow ++) {
346 if (rows_to_go == 0) { 346 if (rows_to_go == 0) {
347 if (pPause && pPause->NeedToPauseNow()) { 347 if (pPause && pPause->NeedToPauseNow()) {
348 return TRUE; 348 return TRUE;
349 } else { 349 } else {
350 rows_to_go = FX_STRECH_PAUSE_ROWS; 350 rows_to_go = FX_STRECH_PAUSE_ROWS;
351 } 351 }
352 } 352 }
353 FX_LPCBYTE src_scan = m_pSource->GetScanline(m_CurRow); 353 const uint8_t* src_scan = m_pSource->GetScanline(m_CurRow);
354 FX_LPBYTE dest_scan = m_pInterBuf + (m_CurRow - m_SrcClip.top) * m_Inter Pitch; 354 uint8_t* dest_scan = m_pInterBuf + (m_CurRow - m_SrcClip.top) * m_InterP itch;
355 FX_LPCBYTE src_scan_mask = NULL; 355 const uint8_t* src_scan_mask = NULL;
356 FX_LPBYTE dest_scan_mask = NULL; 356 uint8_t* dest_scan_mask = NULL;
357 if (m_pExtraAlphaBuf) { 357 if (m_pExtraAlphaBuf) {
358 src_scan_mask = m_pSource->m_pAlphaMask->GetScanline(m_CurRow); 358 src_scan_mask = m_pSource->m_pAlphaMask->GetScanline(m_CurRow);
359 dest_scan_mask = m_pExtraAlphaBuf + (m_CurRow - m_SrcClip.top) * m_E xtraMaskPitch; 359 dest_scan_mask = m_pExtraAlphaBuf + (m_CurRow - m_SrcClip.top) * m_E xtraMaskPitch;
360 } 360 }
361 switch (m_TransMethod) { 361 switch (m_TransMethod) {
362 case 1: 362 case 1:
363 case 2: { 363 case 2: {
364 for (int col = m_DestClip.left; col < m_DestClip.right; col ++) { 364 for (int col = m_DestClip.left; col < m_DestClip.right; col ++) {
365 PixelWeight* pPixelWeights = m_WeightTable.GetPixelWeigh t(col); 365 PixelWeight* pPixelWeights = m_WeightTable.GetPixelWeigh t(col);
366 int dest_a = 0; 366 int dest_a = 0;
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after
470 *dest_scan_mask++ = (uint8_t)((dest_a * 255) >> 16); 470 *dest_scan_mask++ = (uint8_t)((dest_a * 255) >> 16);
471 } 471 }
472 break; 472 break;
473 } 473 }
474 case 7: { 474 case 7: {
475 for (int col = m_DestClip.left; col < m_DestClip.right; col ++) { 475 for (int col = m_DestClip.left; col < m_DestClip.right; col ++) {
476 PixelWeight* pPixelWeights = m_WeightTable.GetPixelWeigh t(col); 476 PixelWeight* pPixelWeights = m_WeightTable.GetPixelWeigh t(col);
477 int dest_r_y = 0, dest_g_m = 0, dest_b_c = 0; 477 int dest_r_y = 0, dest_g_m = 0, dest_b_c = 0;
478 for (int j = pPixelWeights->m_SrcStart; j <= pPixelWeigh ts->m_SrcEnd; j ++) { 478 for (int j = pPixelWeights->m_SrcStart; j <= pPixelWeigh ts->m_SrcEnd; j ++) {
479 int pixel_weight = pPixelWeights->m_Weights[j - pPix elWeights->m_SrcStart]; 479 int pixel_weight = pPixelWeights->m_Weights[j - pPix elWeights->m_SrcStart];
480 FX_LPCBYTE src_pixel = src_scan + j * Bpp; 480 const uint8_t* src_pixel = src_scan + j * Bpp;
481 dest_b_c += pixel_weight * (*src_pixel++); 481 dest_b_c += pixel_weight * (*src_pixel++);
482 dest_g_m += pixel_weight * (*src_pixel++); 482 dest_g_m += pixel_weight * (*src_pixel++);
483 dest_r_y += pixel_weight * (*src_pixel); 483 dest_r_y += pixel_weight * (*src_pixel);
484 } 484 }
485 if (m_Flags & FXDIB_BICUBIC_INTERPOL) { 485 if (m_Flags & FXDIB_BICUBIC_INTERPOL) {
486 dest_b_c = dest_b_c < 0 ? 0 : dest_b_c > 16711680 ? 16711680 : dest_b_c; 486 dest_b_c = dest_b_c < 0 ? 0 : dest_b_c > 16711680 ? 16711680 : dest_b_c;
487 dest_g_m = dest_g_m < 0 ? 0 : dest_g_m > 16711680 ? 16711680 : dest_g_m; 487 dest_g_m = dest_g_m < 0 ? 0 : dest_g_m > 16711680 ? 16711680 : dest_g_m;
488 dest_r_y = dest_r_y < 0 ? 0 : dest_r_y > 16711680 ? 16711680 : dest_r_y; 488 dest_r_y = dest_r_y < 0 ? 0 : dest_r_y > 16711680 ? 16711680 : dest_r_y;
489 } 489 }
490 *dest_scan++ = (uint8_t)((dest_b_c) >> 16); 490 *dest_scan++ = (uint8_t)((dest_b_c) >> 16);
491 *dest_scan++ = (uint8_t)((dest_g_m) >> 16); 491 *dest_scan++ = (uint8_t)((dest_g_m) >> 16);
492 *dest_scan++ = (uint8_t)((dest_r_y) >> 16); 492 *dest_scan++ = (uint8_t)((dest_r_y) >> 16);
493 dest_scan += Bpp - 3; 493 dest_scan += Bpp - 3;
494 } 494 }
495 break; 495 break;
496 } 496 }
497 case 8: { 497 case 8: {
498 for (int col = m_DestClip.left; col < m_DestClip.right; col ++) { 498 for (int col = m_DestClip.left; col < m_DestClip.right; col ++) {
499 PixelWeight* pPixelWeights = m_WeightTable.GetPixelWeigh t(col); 499 PixelWeight* pPixelWeights = m_WeightTable.GetPixelWeigh t(col);
500 int dest_a = 0, dest_r_y = 0, dest_g_m = 0, dest_b_c = 0 ; 500 int dest_a = 0, dest_r_y = 0, dest_g_m = 0, dest_b_c = 0 ;
501 for (int j = pPixelWeights->m_SrcStart; j <= pPixelWeigh ts->m_SrcEnd; j ++) { 501 for (int j = pPixelWeights->m_SrcStart; j <= pPixelWeigh ts->m_SrcEnd; j ++) {
502 int pixel_weight = pPixelWeights->m_Weights[j - pPix elWeights->m_SrcStart]; 502 int pixel_weight = pPixelWeights->m_Weights[j - pPix elWeights->m_SrcStart];
503 FX_LPCBYTE src_pixel = src_scan + j * Bpp; 503 const uint8_t* src_pixel = src_scan + j * Bpp;
504 if (m_DestFormat == FXDIB_Argb) { 504 if (m_DestFormat == FXDIB_Argb) {
505 pixel_weight = pixel_weight * src_pixel[3] / 255 ; 505 pixel_weight = pixel_weight * src_pixel[3] / 255 ;
506 } else { 506 } else {
507 pixel_weight = pixel_weight * src_scan_mask[j] / 255; 507 pixel_weight = pixel_weight * src_scan_mask[j] / 255;
508 } 508 }
509 dest_b_c += pixel_weight * (*src_pixel++); 509 dest_b_c += pixel_weight * (*src_pixel++);
510 dest_g_m += pixel_weight * (*src_pixel++); 510 dest_g_m += pixel_weight * (*src_pixel++);
511 dest_r_y += pixel_weight * (*src_pixel); 511 dest_r_y += pixel_weight * (*src_pixel);
512 dest_a += pixel_weight; 512 dest_a += pixel_weight;
513 } 513 }
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
589 } 589 }
590 break; 590 break;
591 } 591 }
592 case 5: 592 case 5:
593 case 7: { 593 case 7: {
594 for (int col = m_DestClip.left; col < m_DestClip.right; col ++) { 594 for (int col = m_DestClip.left; col < m_DestClip.right; col ++) {
595 unsigned char* src_scan = m_pInterBuf + (col - m_DestCli p.left) * DestBpp; 595 unsigned char* src_scan = m_pInterBuf + (col - m_DestCli p.left) * DestBpp;
596 int dest_r_y = 0, dest_g_m = 0, dest_b_c = 0; 596 int dest_r_y = 0, dest_g_m = 0, dest_b_c = 0;
597 for (int j = pPixelWeights->m_SrcStart; j <= pPixelWeigh ts->m_SrcEnd; j ++) { 597 for (int j = pPixelWeights->m_SrcStart; j <= pPixelWeigh ts->m_SrcEnd; j ++) {
598 int pixel_weight = pPixelWeights->m_Weights[j - pPix elWeights->m_SrcStart]; 598 int pixel_weight = pPixelWeights->m_Weights[j - pPix elWeights->m_SrcStart];
599 FX_LPCBYTE src_pixel = src_scan + (j - m_SrcClip.top ) * m_InterPitch; 599 const uint8_t* src_pixel = src_scan + (j - m_SrcClip .top) * m_InterPitch;
600 dest_b_c += pixel_weight * (*src_pixel++); 600 dest_b_c += pixel_weight * (*src_pixel++);
601 dest_g_m += pixel_weight * (*src_pixel++); 601 dest_g_m += pixel_weight * (*src_pixel++);
602 dest_r_y += pixel_weight * (*src_pixel); 602 dest_r_y += pixel_weight * (*src_pixel);
603 } 603 }
604 if (m_Flags & FXDIB_BICUBIC_INTERPOL) { 604 if (m_Flags & FXDIB_BICUBIC_INTERPOL) {
605 dest_r_y = dest_r_y < 0 ? 0 : dest_r_y > 16711680 ? 16711680 : dest_r_y; 605 dest_r_y = dest_r_y < 0 ? 0 : dest_r_y > 16711680 ? 16711680 : dest_r_y;
606 dest_g_m = dest_g_m < 0 ? 0 : dest_g_m > 16711680 ? 16711680 : dest_g_m; 606 dest_g_m = dest_g_m < 0 ? 0 : dest_g_m > 16711680 ? 16711680 : dest_g_m;
607 dest_b_c = dest_b_c < 0 ? 0 : dest_b_c > 16711680 ? 16711680 : dest_b_c; 607 dest_b_c = dest_b_c < 0 ? 0 : dest_b_c > 16711680 ? 16711680 : dest_b_c;
608 } 608 }
609 dest_scan[0] = (uint8_t)((dest_b_c) >> 16); 609 dest_scan[0] = (uint8_t)((dest_b_c) >> 16);
610 dest_scan[1] = (uint8_t)((dest_g_m) >> 16); 610 dest_scan[1] = (uint8_t)((dest_g_m) >> 16);
611 dest_scan[2] = (uint8_t)((dest_r_y) >> 16); 611 dest_scan[2] = (uint8_t)((dest_r_y) >> 16);
612 dest_scan += DestBpp; 612 dest_scan += DestBpp;
613 } 613 }
614 break; 614 break;
615 } 615 }
616 case 6: 616 case 6:
617 case 8: { 617 case 8: {
618 for (int col = m_DestClip.left; col < m_DestClip.right; col ++) { 618 for (int col = m_DestClip.left; col < m_DestClip.right; col ++) {
619 unsigned char* src_scan = m_pInterBuf + (col - m_DestCli p.left) * DestBpp; 619 unsigned char* src_scan = m_pInterBuf + (col - m_DestCli p.left) * DestBpp;
620 unsigned char* src_scan_mask = NULL; 620 unsigned char* src_scan_mask = NULL;
621 if (m_DestFormat != FXDIB_Argb) { 621 if (m_DestFormat != FXDIB_Argb) {
622 src_scan_mask = m_pExtraAlphaBuf + (col - m_DestClip .left); 622 src_scan_mask = m_pExtraAlphaBuf + (col - m_DestClip .left);
623 } 623 }
624 int dest_a = 0, dest_r_y = 0, dest_g_m = 0, dest_b_c = 0 ; 624 int dest_a = 0, dest_r_y = 0, dest_g_m = 0, dest_b_c = 0 ;
625 for (int j = pPixelWeights->m_SrcStart; j <= pPixelWeigh ts->m_SrcEnd; j ++) { 625 for (int j = pPixelWeights->m_SrcStart; j <= pPixelWeigh ts->m_SrcEnd; j ++) {
626 int pixel_weight = pPixelWeights->m_Weights[j - pPix elWeights->m_SrcStart]; 626 int pixel_weight = pPixelWeights->m_Weights[j - pPix elWeights->m_SrcStart];
627 FX_LPCBYTE src_pixel = src_scan + (j - m_SrcClip.top ) * m_InterPitch; 627 const uint8_t* src_pixel = src_scan + (j - m_SrcClip .top) * m_InterPitch;
628 int mask_v = 255; 628 int mask_v = 255;
629 if (src_scan_mask) { 629 if (src_scan_mask) {
630 mask_v = src_scan_mask[(j - m_SrcClip.top) * m_E xtraMaskPitch]; 630 mask_v = src_scan_mask[(j - m_SrcClip.top) * m_E xtraMaskPitch];
631 } 631 }
632 dest_b_c += pixel_weight * (*src_pixel++); 632 dest_b_c += pixel_weight * (*src_pixel++);
633 dest_g_m += pixel_weight * (*src_pixel++); 633 dest_g_m += pixel_weight * (*src_pixel++);
634 dest_r_y += pixel_weight * (*src_pixel); 634 dest_r_y += pixel_weight * (*src_pixel);
635 if (m_DestFormat == FXDIB_Argb) { 635 if (m_DestFormat == FXDIB_Argb) {
636 dest_a += pixel_weight * (*(src_pixel + 1)); 636 dest_a += pixel_weight * (*(src_pixel + 1));
637 } else { 637 } else {
(...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after
831 return TRUE; 831 return TRUE;
832 } 832 }
833 m_pSource->DownSampleScanline(src_y, m_pScanline, m_DestBPP, m_DestWidth , m_bFlipX, m_ClipRect.left, result_width); 833 m_pSource->DownSampleScanline(src_y, m_pScanline, m_DestBPP, m_DestWidth , m_bFlipX, m_ClipRect.left, result_width);
834 if (m_pMaskScanline) { 834 if (m_pMaskScanline) {
835 m_pSource->m_pAlphaMask->DownSampleScanline(src_y, m_pMaskScanline, 1, m_DestWidth, m_bFlipX, m_ClipRect.left, result_width); 835 m_pSource->m_pAlphaMask->DownSampleScanline(src_y, m_pMaskScanline, 1, m_DestWidth, m_bFlipX, m_ClipRect.left, result_width);
836 } 836 }
837 m_pDest->ComposeScanline(dest_y, m_pScanline, m_pMaskScanline); 837 m_pDest->ComposeScanline(dest_y, m_pScanline, m_pMaskScanline);
838 } 838 }
839 return FALSE; 839 return FALSE;
840 } 840 }
OLDNEW
« no previous file with comments | « core/src/fxge/dib/fx_dib_convert.cpp ('k') | core/src/fxge/dib/fx_dib_main.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698