diff options
Diffstat (limited to 'Source/WebCore/inspector/InspectorLayerTreeAgent.h')
-rw-r--r-- | Source/WebCore/inspector/InspectorLayerTreeAgent.h | 67 |
1 files changed, 31 insertions, 36 deletions
diff --git a/Source/WebCore/inspector/InspectorLayerTreeAgent.h b/Source/WebCore/inspector/InspectorLayerTreeAgent.h index 7561ac754..2de7a28e2 100644 --- a/Source/WebCore/inspector/InspectorLayerTreeAgent.h +++ b/Source/WebCore/inspector/InspectorLayerTreeAgent.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2012 Apple Inc. All rights reserved. + * Copyright (C) 2012, 2015 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -10,7 +10,7 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of + * 3. Neither the name of Apple Inc. ("Apple") nor the names of * its contributors may be used to endorse or promote products derived * from this software without specific prior written permission. * @@ -26,64 +26,63 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#ifndef InspectorLayerTreeAgent_h -#define InspectorLayerTreeAgent_h - -#if ENABLE(INSPECTOR) +#pragma once #include "InspectorWebAgentBase.h" -#include "InspectorWebBackendDispatchers.h" -#include "InspectorWebFrontendDispatchers.h" -#include "InspectorWebTypeBuilders.h" -#include "RenderLayer.h" -#include <wtf/PassOwnPtr.h> -#include <wtf/PassRefPtr.h> -#include <wtf/Vector.h> +#include <inspector/InspectorBackendDispatchers.h> +#include <inspector/InspectorFrontendDispatchers.h> +#include <inspector/InspectorProtocolObjects.h> #include <wtf/text/WTFString.h> namespace WebCore { -class InstrumentingAgents; +class IntRect; +class Node; +class PseudoElement; +class RenderElement; +class RenderLayer; typedef String ErrorString; -class InspectorLayerTreeAgent : public InspectorAgentBase, public Inspector::InspectorLayerTreeBackendDispatcherHandler { +class InspectorLayerTreeAgent final : public InspectorAgentBase, public Inspector::LayerTreeBackendDispatcherHandler { + WTF_MAKE_FAST_ALLOCATED; public: - explicit InspectorLayerTreeAgent(InstrumentingAgents*); - ~InspectorLayerTreeAgent(); + explicit InspectorLayerTreeAgent(WebAgentContext&); + virtual ~InspectorLayerTreeAgent(); - virtual void didCreateFrontendAndBackend(Inspector::InspectorFrontendChannel*, Inspector::InspectorBackendDispatcher*) override; - virtual void willDestroyFrontendAndBackend(Inspector::InspectorDisconnectReason) override; + void didCreateFrontendAndBackend(Inspector::FrontendRouter*, Inspector::BackendDispatcher*) override; + void willDestroyFrontendAndBackend(Inspector::DisconnectReason) override; void reset(); + // InspectorInstrumentation void layerTreeDidChange(); - void renderLayerDestroyed(const RenderLayer*); - void pseudoElementDestroyed(PseudoElement*); + void renderLayerDestroyed(const RenderLayer&); + void pseudoElementDestroyed(PseudoElement&); // Called from the front-end. - virtual void enable(ErrorString*) override; - virtual void disable(ErrorString*) override; - virtual void layersForNode(ErrorString*, int nodeId, RefPtr<Inspector::TypeBuilder::Array<Inspector::TypeBuilder::LayerTree::Layer>>&) override; - virtual void reasonsForCompositingLayer(ErrorString*, const String& layerId, RefPtr<Inspector::TypeBuilder::LayerTree::CompositingReasons>&) override; + void enable(ErrorString&) override; + void disable(ErrorString&) override; + void layersForNode(ErrorString&, int nodeId, RefPtr<Inspector::Protocol::Array<Inspector::Protocol::LayerTree::Layer>>&) override; + void reasonsForCompositingLayer(ErrorString&, const String& layerId, RefPtr<Inspector::Protocol::LayerTree::CompositingReasons>&) override; private: // RenderLayer-related methods. String bind(const RenderLayer*); void unbind(const RenderLayer*); - void gatherLayersUsingRenderObjectHierarchy(ErrorString*, RenderObject*, RefPtr<Inspector::TypeBuilder::Array<Inspector::TypeBuilder::LayerTree::Layer>>&); - void gatherLayersUsingRenderLayerHierarchy(ErrorString*, RenderLayer*, RefPtr<Inspector::TypeBuilder::Array<Inspector::TypeBuilder::LayerTree::Layer>>&); + void gatherLayersUsingRenderObjectHierarchy(ErrorString&, RenderElement&, RefPtr<Inspector::Protocol::Array<Inspector::Protocol::LayerTree::Layer>>&); + void gatherLayersUsingRenderLayerHierarchy(ErrorString&, RenderLayer*, RefPtr<Inspector::Protocol::Array<Inspector::Protocol::LayerTree::Layer>>&); - PassRefPtr<Inspector::TypeBuilder::LayerTree::Layer> buildObjectForLayer(ErrorString*, RenderLayer*); - PassRefPtr<Inspector::TypeBuilder::LayerTree::IntRect> buildObjectForIntRect(const IntRect&); + Ref<Inspector::Protocol::LayerTree::Layer> buildObjectForLayer(ErrorString&, RenderLayer*); + Ref<Inspector::Protocol::LayerTree::IntRect> buildObjectForIntRect(const IntRect&); - int idForNode(ErrorString*, Node*); + int idForNode(ErrorString&, Node*); String bindPseudoElement(PseudoElement*); void unbindPseudoElement(PseudoElement*); - std::unique_ptr<Inspector::InspectorLayerTreeFrontendDispatcher> m_frontendDispatcher; - RefPtr<Inspector::InspectorLayerTreeBackendDispatcher> m_backendDispatcher; + std::unique_ptr<Inspector::LayerTreeFrontendDispatcher> m_frontendDispatcher; + RefPtr<Inspector::LayerTreeBackendDispatcher> m_backendDispatcher; HashMap<const RenderLayer*, String> m_documentLayerToIdMap; HashMap<String, const RenderLayer*> m_idToLayer; @@ -93,7 +92,3 @@ private: }; } // namespace WebCore - -#endif // ENABLE(INSPECTOR) - -#endif // !defined(InspectorLayerTreeAgent_h) |