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

Side by Side Diff: Source/platform/graphics/GraphicsContext.h

Issue 1087633002: [SP] Allocate an SkPictureRecorder only once per GraphicsContext instantiation (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 8 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | Source/platform/graphics/GraphicsContext.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 /* 1 /*
2 * Copyright (C) 2003, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. 2 * Copyright (C) 2003, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.
3 * Copyright (C) 2008-2009 Torch Mobile, Inc. 3 * Copyright (C) 2008-2009 Torch Mobile, Inc.
4 * Copyright (C) 2013 Google Inc. All rights reserved. 4 * Copyright (C) 2013 Google Inc. All rights reserved.
5 * 5 *
6 * Redistribution and use in source and binary forms, with or without 6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions 7 * modification, are permitted provided that the following conditions
8 * are met: 8 * are met:
9 * 1. Redistributions of source code must retain the above copyright 9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
42 #include "wtf/FastAllocBase.h" 42 #include "wtf/FastAllocBase.h"
43 #include "wtf/Forward.h" 43 #include "wtf/Forward.h"
44 #include "wtf/Noncopyable.h" 44 #include "wtf/Noncopyable.h"
45 #include "wtf/PassOwnPtr.h" 45 #include "wtf/PassOwnPtr.h"
46 46
47 class SkBitmap; 47 class SkBitmap;
48 class SkImage; 48 class SkImage;
49 class SkPaint; 49 class SkPaint;
50 class SkPath; 50 class SkPath;
51 class SkPicture; 51 class SkPicture;
52 class SkPictureRecorder;
52 class SkRRect; 53 class SkRRect;
53 class SkTextBlob; 54 class SkTextBlob;
54 struct SkImageInfo; 55 struct SkImageInfo;
55 struct SkRect; 56 struct SkRect;
56 57
57 namespace blink { 58 namespace blink {
58 59
59 class ClipRecorderStack; 60 class ClipRecorderStack;
60 class DisplayItemList; 61 class DisplayItemList;
61 class ImageBuffer; 62 class ImageBuffer;
(...skipping 371 matching lines...) Expand 10 before | Expand all | Expand 10 after
433 // This state controls the appearance of drawn content. 434 // This state controls the appearance of drawn content.
434 // We do not delete from this stack to avoid memory churn. 435 // We do not delete from this stack to avoid memory churn.
435 Vector<OwnPtr<GraphicsContextState>> m_paintStateStack; 436 Vector<OwnPtr<GraphicsContextState>> m_paintStateStack;
436 // Current index on the stack. May not be the last thing on the stack. 437 // Current index on the stack. May not be the last thing on the stack.
437 unsigned m_paintStateIndex; 438 unsigned m_paintStateIndex;
438 // Raw pointer to the current state. 439 // Raw pointer to the current state.
439 GraphicsContextState* m_paintState; 440 GraphicsContextState* m_paintState;
440 441
441 AnnotationModeFlags m_annotationMode; 442 AnnotationModeFlags m_annotationMode;
442 443
444 // Only used when Slimming Paint is off. When it is on, m_pictureRecorder is used instead.
443 Vector<OwnPtr<RecordingState>> m_recordingStateStack; 445 Vector<OwnPtr<RecordingState>> m_recordingStateStack;
446 OwnPtr<SkPictureRecorder> m_pictureRecorder;
f(malita) 2015/04/13 21:39:45 This has the same lifetime as GC - can we drop the
chrishtr 2015/04/13 21:48:34 Done.
444 447
445 #if ENABLE(ASSERT) 448 #if ENABLE(ASSERT)
446 unsigned m_layerCount; 449 unsigned m_layerCount;
447 unsigned m_annotationCount; 450 unsigned m_annotationCount;
448 bool m_disableDestructionChecks; 451 bool m_disableDestructionChecks;
449 bool m_inDrawingRecorder; 452 bool m_inDrawingRecorder;
450 #endif 453 #endif
451 454
452 const DisabledMode m_disabledState; 455 const DisabledMode m_disabledState;
453 456
454 float m_deviceScaleFactor; 457 float m_deviceScaleFactor;
455 458
456 unsigned m_accelerated : 1; 459 unsigned m_accelerated : 1;
457 unsigned m_printing : 1; 460 unsigned m_printing : 1;
458 unsigned m_antialiasHairlineImages : 1; 461 unsigned m_antialiasHairlineImages : 1;
459 }; 462 };
460 463
461 } // namespace blink 464 } // namespace blink
462 465
463 #endif // GraphicsContext_h 466 #endif // GraphicsContext_h
OLDNEW
« no previous file with comments | « no previous file | Source/platform/graphics/GraphicsContext.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698