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

Side by Side Diff: Source/core/paint/PaintInfo.h

Issue 1319893002: Make classes and structures in core/paint fast-allocated. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 5 years, 3 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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org)
3 * (C) 2000 Antti Koivisto (koivisto@kde.org) 3 * (C) 2000 Antti Koivisto (koivisto@kde.org)
4 * (C) 2000 Dirk Mueller (mueller@kde.org) 4 * (C) 2000 Dirk Mueller (mueller@kde.org)
5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com)
6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. 6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.
7 * Copyright (C) 2009 Google Inc. All rights reserved. 7 * Copyright (C) 2009 Google Inc. All rights reserved.
8 * 8 *
9 * This library is free software; you can redistribute it and/or 9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Library General Public 10 * modify it under the terms of the GNU Library General Public
(...skipping 17 matching lines...) Expand all
28 28
29 // TODO(jchaffraix): Once we unify PaintBehavior and PaintLayerFlags, we should move 29 // TODO(jchaffraix): Once we unify PaintBehavior and PaintLayerFlags, we should move
30 // PaintLayerFlags to PaintPhase and rename it. Thus removing the need for this #include. 30 // PaintLayerFlags to PaintPhase and rename it. Thus removing the need for this #include.
31 #include "core/paint/DeprecatedPaintLayerPaintingInfo.h" 31 #include "core/paint/DeprecatedPaintLayerPaintingInfo.h"
32 #include "core/paint/PaintPhase.h" 32 #include "core/paint/PaintPhase.h"
33 #include "platform/geometry/IntRect.h" 33 #include "platform/geometry/IntRect.h"
34 #include "platform/geometry/LayoutRect.h" 34 #include "platform/geometry/LayoutRect.h"
35 #include "platform/graphics/GraphicsContext.h" 35 #include "platform/graphics/GraphicsContext.h"
36 #include "platform/graphics/paint/DisplayItem.h" 36 #include "platform/graphics/paint/DisplayItem.h"
37 #include "platform/transforms/AffineTransform.h" 37 #include "platform/transforms/AffineTransform.h"
38 #include "wtf/Allocator.h"
38 #include "wtf/HashMap.h" 39 #include "wtf/HashMap.h"
39 #include "wtf/ListHashSet.h" 40 #include "wtf/ListHashSet.h"
40 41
41 #include <limits> 42 #include <limits>
42 43
43 namespace blink { 44 namespace blink {
44 45
45 class LayoutInline; 46 class LayoutInline;
46 class LayoutBoxModelObject; 47 class LayoutBoxModelObject;
47 class LayoutObject; 48 class LayoutObject;
48 49
49 struct PaintInfo { 50 struct PaintInfo {
51 ALLOW_ONLY_INLINE_ALLOCATION();
50 PaintInfo(GraphicsContext* newContext, const IntRect& newRect, PaintPhase ne wPhase, GlobalPaintFlags globalPaintFlags, PaintLayerFlags paintFlags, 52 PaintInfo(GraphicsContext* newContext, const IntRect& newRect, PaintPhase ne wPhase, GlobalPaintFlags globalPaintFlags, PaintLayerFlags paintFlags,
51 LayoutObject* newPaintingRoot = 0, ListHashSet<LayoutInline*>* newOutlin eObjects = 0, 53 LayoutObject* newPaintingRoot = 0, ListHashSet<LayoutInline*>* newOutlin eObjects = 0,
52 const LayoutBoxModelObject* newPaintContainer = 0) 54 const LayoutBoxModelObject* newPaintContainer = 0)
53 : context(newContext) 55 : context(newContext)
54 , rect(newRect) 56 , rect(newRect)
55 , phase(newPhase) 57 , phase(newPhase)
56 , paintingRoot(newPaintingRoot) 58 , paintingRoot(newPaintingRoot)
57 , m_paintContainer(newPaintContainer) 59 , m_paintContainer(newPaintContainer)
58 , m_outlineObjects(newOutlineObjects) 60 , m_outlineObjects(newOutlineObjects)
59 , m_paintFlags(paintFlags) 61 , m_paintFlags(paintFlags)
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
117 const LayoutBoxModelObject* m_paintContainer; // the box model object that o riginates the current painting 119 const LayoutBoxModelObject* m_paintContainer; // the box model object that o riginates the current painting
118 ListHashSet<LayoutInline*>* m_outlineObjects; // used to list outlines that should be painted by a block with inline children 120 ListHashSet<LayoutInline*>* m_outlineObjects; // used to list outlines that should be painted by a block with inline children
119 121
120 const PaintLayerFlags m_paintFlags; 122 const PaintLayerFlags m_paintFlags;
121 const GlobalPaintFlags m_globalPaintFlags; 123 const GlobalPaintFlags m_globalPaintFlags;
122 }; 124 };
123 125
124 } // namespace blink 126 } // namespace blink
125 127
126 #endif // PaintInfo_h 128 #endif // PaintInfo_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698