OLD | NEW |
1 /* | 1 /* |
2 Copyright (C) 2012 Google Inc. All rights reserved. | 2 Copyright (C) 2012 Google Inc. All rights reserved. |
3 | 3 |
4 Redistribution and use in source and binary forms, with or without | 4 Redistribution and use in source and binary forms, with or without |
5 modification, are permitted provided that the following conditions | 5 modification, are permitted provided that the following conditions |
6 are met: | 6 are met: |
7 1. Redistributions of source code must retain the above copyright | 7 1. Redistributions of source code must retain the above copyright |
8 notice, this list of conditions and the following disclaimer. | 8 notice, this list of conditions and the following disclaimer. |
9 2. Redistributions in binary form must reproduce the above copyright | 9 2. Redistributions in binary form must reproduce the above copyright |
10 notice, this list of conditions and the following disclaimer in the | 10 notice, this list of conditions and the following disclaimer in the |
11 documentation and/or other materials provided with the distribution. | 11 documentation and/or other materials provided with the distribution. |
12 | 12 |
13 THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY | 13 THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY |
14 EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | 14 EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
15 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | 15 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
16 DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY | 16 DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY |
17 DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | 17 DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
18 (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | 18 (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; |
19 LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON | 19 LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON |
20 ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 20 ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
21 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | 21 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
22 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 22 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
23 */ | 23 */ |
24 | 24 |
25 #ifndef Canvas2DLayerManager_h | 25 #ifndef Canvas2DLayerManager_h |
26 #define Canvas2DLayerManager_h | 26 #define Canvas2DLayerManager_h |
27 | 27 |
28 #include "core/platform/graphics/Canvas2DLayerBridge.h" | 28 #include "platform/graphics/Canvas2DLayerBridge.h" |
29 #include "public/platform/WebThread.h" | 29 #include "public/platform/WebThread.h" |
30 | 30 |
31 class Canvas2DLayerManagerTest; | 31 class Canvas2DLayerManagerTest; |
32 | 32 |
33 namespace WebCore { | 33 namespace WebCore { |
34 | 34 |
35 class Canvas2DLayerManager : public blink::WebThread::TaskObserver { | 35 class PLATFORM_EXPORT Canvas2DLayerManager : public blink::WebThread::TaskObserv
er { |
36 public: | 36 public: |
37 static Canvas2DLayerManager& get(); | 37 static Canvas2DLayerManager& get(); |
38 void init(size_t maxBytesAllocated, size_t targetBytesAllocated); | 38 void init(size_t maxBytesAllocated, size_t targetBytesAllocated); |
39 virtual ~Canvas2DLayerManager(); | 39 virtual ~Canvas2DLayerManager(); |
40 | 40 |
41 void layerAllocatedStorageChanged(Canvas2DLayerBridge*, intptr_t deltaBytes)
; | 41 void layerAllocatedStorageChanged(Canvas2DLayerBridge*, intptr_t deltaBytes)
; |
42 void layerDidDraw(Canvas2DLayerBridge*); | 42 void layerDidDraw(Canvas2DLayerBridge*); |
43 void layerToBeDestroyed(Canvas2DLayerBridge*); | 43 void layerToBeDestroyed(Canvas2DLayerBridge*); |
44 private: | 44 private: |
45 Canvas2DLayerManager(); | 45 Canvas2DLayerManager(); |
(...skipping 12 matching lines...) Expand all Loading... |
58 bool m_taskObserverActive; | 58 bool m_taskObserverActive; |
59 DoublyLinkedList<Canvas2DLayerBridge> m_layerList; | 59 DoublyLinkedList<Canvas2DLayerBridge> m_layerList; |
60 | 60 |
61 friend class ::Canvas2DLayerManagerTest; // for unit testing | 61 friend class ::Canvas2DLayerManagerTest; // for unit testing |
62 }; | 62 }; |
63 | 63 |
64 } | 64 } |
65 | 65 |
66 #endif | 66 #endif |
67 | 67 |
OLD | NEW |