diff options
author | pfeldman@chromium.org <pfeldman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-04-10 13:52:30 +0000 |
---|---|---|
committer | pfeldman@chromium.org <pfeldman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-04-10 13:52:30 +0000 |
commit | 98f5f88b53f774cee109503b0225a5bfb9deb550 (patch) | |
tree | 32af75ae9784181c85e577327d8020192658c519 /chrome/browser/debugger/inspectable_tab_proxy.h | |
parent | 198d8d43c5ccff8d0d48bbd3fef31917aa9d3db6 (diff) | |
download | chromium_src-98f5f88b53f774cee109503b0225a5bfb9deb550.zip chromium_src-98f5f88b53f774cee109503b0225a5bfb9deb550.tar.gz chromium_src-98f5f88b53f774cee109503b0225a5bfb9deb550.tar.bz2 |
DevTools. Add V8 Application Remote Debugging Protocol support by apavlov. Original CL: http://codereview.chromium.org/56109
Review URL: http://codereview.chromium.org/66031
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13502 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/debugger/inspectable_tab_proxy.h')
-rw-r--r-- | chrome/browser/debugger/inspectable_tab_proxy.h | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/chrome/browser/debugger/inspectable_tab_proxy.h b/chrome/browser/debugger/inspectable_tab_proxy.h new file mode 100644 index 0000000..7888a7c --- /dev/null +++ b/chrome/browser/debugger/inspectable_tab_proxy.h @@ -0,0 +1,42 @@ +// Copyright (c) 2009 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CHROME_BROWSER_DEBUGGER_INSPECTABLE_TAB_PROXY_H_ +#define CHROME_BROWSER_DEBUGGER_INSPECTABLE_TAB_PROXY_H_ + +#include <string> + +#include "base/basictypes.h" +#include "base/hash_tables.h" + +class DebuggerRemoteService; +class DevToolsClientHost; +class NavigationController; + +// Proxies debugged tabs' NavigationControllers using their UIDs. +class InspectableTabProxy { + public: + typedef base::hash_map<int32, NavigationController*> ControllersMap; + + InspectableTabProxy() {} + virtual ~InspectableTabProxy() {} + + // Returns a map of NavigationControllerKeys to NavigationControllers + // for all Browser instances. If |refresh| == true, the cached map will be + // dropped and retrieved anew. + const ControllersMap& controllers_map(bool refresh); + + // Creates a new DevToolsClientHost implementor instance. + // |id| is the UID of the tab to debug. + // |service| is the DebuggerRemoteService instance the DevToolsClient + // messages shall be dispatched to. + static DevToolsClientHost* NewClientHost(int32 id, + DebuggerRemoteService* service); + + private: + ControllersMap controllers_map_; + DISALLOW_COPY_AND_ASSIGN(InspectableTabProxy); +}; + +#endif // CHROME_BROWSER_DEBUGGER_INSPECTABLE_TAB_PROXY_H_ |