[chromium] Add additional memory management fields to WebGraphicsContext3D
https://bugs.webkit.org/show_bug.cgi?id=99703

Patch by Christopher Cameron <ccameron@chromium.org> on 2012-10-26
Reviewed by James Robinson.

Add new fields to WebGraphicsMemoryAllocation to allow for specifying
limits for when visible and not, and to allow for specifying priority
cutoffs (e.g, to allow specifying that backgrounded tabs should
retain only their visible textures).

Add sendManagedMemoryStatsCHROMIUM to WebGraphicsContext3D, and
add WebGraphicsManagedMemoryStats structure, to allow the GPU memory
manager to make more informed choices.

* chromium/public/WebGraphicsContext3D.h:
(WebKit::WebGraphicsContext3D::sendManagedMemoryStatsCHROMIUM):
* chromium/public/WebGraphicsMemoryAllocation.h:
(WebGraphicsMemoryAllocation):
(WebKit::WebGraphicsMemoryAllocation::WebGraphicsMemoryAllocation):
(WebKit):
(WebGraphicsManagedMemoryStats):
(WebKit::WebGraphicsManagedMemoryStats::WebGraphicsManagedMemoryStats):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk/Source/Platform/chromium/public@132686 268f45cc-cd09-0410-ab3c-d52691b4dbfc
3 files changed
tree: 65aa1dda2ee7807f4d6669a441aacecbb904f6a4
  1. android/
  2. linux/
  3. mac/
  4. win/
  5. Platform.h
  6. WebAnimation.h
  7. WebAnimationCurve.h
  8. WebAnimationDelegate.h
  9. WebAudioBus.h
  10. WebAudioDevice.h
  11. WebBlobData.h
  12. WebBlobRegistry.h
  13. WebCanvas.h
  14. WebClipboard.h
  15. WebColor.h
  16. WebCommon.h
  17. WebCompositor.h
  18. WebCompositorFrame.h
  19. WebCompositorFrameAck.h
  20. WebCompositorOutputSurface.h
  21. WebCompositorOutputSurfaceClient.h
  22. WebCompositorSoftwareOutputDevice.h
  23. WebCompositorSupport.h
  24. WebCompositorTransferableResourceList.h
  25. WebContentLayer.h
  26. WebContentLayerClient.h
  27. WebCookie.h
  28. WebCookieJar.h
  29. WebCString.h
  30. WebData.h
  31. WebDelegatedRendererLayer.h
  32. WebDragData.h
  33. WebExternalTextureLayer.h
  34. WebExternalTextureLayerClient.h
  35. WebFileInfo.h
  36. WebFileSystem.h
  37. WebFileUtilities.h
  38. WebFilterOperation.h
  39. WebFilterOperations.h
  40. WebFlingAnimator.h
  41. WebFloatAnimationCurve.h
  42. WebFloatKeyframe.h
  43. WebFloatPoint.h
  44. WebFloatQuad.h
  45. WebFloatRect.h
  46. WebGamepad.h
  47. WebGamepads.h
  48. WebGraphicsContext3D.h
  49. WebGraphicsMemoryAllocation.h
  50. WebGraphicsMemoryStats.h
  51. WebHTTPBody.h
  52. WebHTTPHeaderVisitor.h
  53. WebHTTPLoadInfo.h
  54. WebICECandidateDescriptor.h
  55. WebICEOptions.h
  56. WebImage.h
  57. WebImageLayer.h
  58. WebInputHandler.h
  59. WebInputHandlerClient.h
  60. WebIOSurfaceLayer.h
  61. WebLayer.h
  62. WebLayerScrollClient.h
  63. WebLayerTreeView.h
  64. WebLayerTreeViewClient.h
  65. WebLocalizedString.h
  66. WebMediaConstraints.h
  67. WebMediaHints.h
  68. WebMediaStreamCenter.h
  69. WebMediaStreamCenterClient.h
  70. WebMediaStreamComponent.h
  71. WebMediaStreamDescriptor.h
  72. WebMediaStreamSource.h
  73. WebMediaStreamSourcesRequest.h
  74. WebMessagePortChannel.h
  75. WebMessagePortChannelClient.h
  76. WebMimeRegistry.h
  77. WebNonCopyable.h
  78. WebPeerConnection00Handler.h
  79. WebPeerConnection00HandlerClient.h
  80. WebPeerConnectionHandler.h
  81. WebPeerConnectionHandlerClient.h
  82. WebPoint.h
  83. WebPrerender.h
  84. WebPrerenderingSupport.h
  85. WebPrivateOwnPtr.h
  86. WebPrivatePtr.h
  87. WebRect.h
  88. WebReferrerPolicy.h
  89. WebRenderingStats.h
  90. WebRTCConfiguration.h
  91. WebRTCDataChannel.h
  92. WebRTCICECandidate.h
  93. WebRTCPeerConnectionHandler.h
  94. WebRTCPeerConnectionHandlerClient.h
  95. WebRTCSessionDescription.h
  96. WebRTCSessionDescriptionRequest.h
  97. WebRTCStatsRequest.h
  98. WebRTCStatsResponse.h
  99. WebRTCVoidRequest.h
  100. WebScreenInfo.h
  101. WebScrollbar.h
  102. WebScrollbarLayer.h
  103. WebScrollbarThemeGeometry.h
  104. WebScrollbarThemePainter.h
  105. WebSessionDescriptionDescriptor.h
  106. WebSharedGraphicsContext3D.h
  107. WebSize.h
  108. WebSocketStreamError.h
  109. WebSocketStreamHandle.h
  110. WebSocketStreamHandleClient.h
  111. WebSolidColorLayer.h
  112. WebStorageArea.h
  113. WebStorageNamespace.h
  114. WebString.h
  115. WebThread.h
  116. WebThreadSafeData.h
  117. WebTransformAnimationCurve.h
  118. WebTransformationMatrix.h
  119. WebTransformKeyframe.h
  120. WebTransformOperations.h
  121. WebURL.h
  122. WebURLError.h
  123. WebURLLoader.h
  124. WebURLLoaderClient.h
  125. WebURLLoadTiming.h
  126. WebURLRequest.h
  127. WebURLResponse.h
  128. WebVector.h
  129. WebVideoFrame.h
  130. WebVideoFrameProvider.h
  131. WebVideoLayer.h
  132. WebWorkerRunLoop.h