1// Copyright 2014 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#ifndef CHROME_BROWSER_TASK_MANAGER_TAB_CONTENTS_INFORMATION_H_ 6#define CHROME_BROWSER_TASK_MANAGER_TAB_CONTENTS_INFORMATION_H_ 7 8#include "base/basictypes.h" 9#include "chrome/browser/task_manager/web_contents_information.h" 10 11namespace task_manager { 12 13// WebContentsInformation for WebContentses that are part of the tab strip 14// model, devtools, and/or the PrerenderManager. These three cases are combined 15// into one category because, for example, a prerendered WebContents can become 16// part of the tab strip model over its lifetime. 17class TabContentsInformation 18 : public NotificationObservingWebContentsInformation { 19 public: 20 TabContentsInformation(); 21 virtual ~TabContentsInformation(); 22 23 // WebContentsInformation implementation. 24 virtual bool CheckOwnership(content::WebContents* web_contents) OVERRIDE; 25 virtual void GetAll(const NewWebContentsCallback& callback) OVERRIDE; 26 virtual scoped_ptr<RendererResource> MakeResource( 27 content::WebContents* web_contents) OVERRIDE; 28 29 private: 30 DISALLOW_COPY_AND_ASSIGN(TabContentsInformation); 31}; 32 33} // namespace task_manager 34 35#endif // CHROME_BROWSER_TASK_MANAGER_TAB_CONTENTS_INFORMATION_H_ 36