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 11 namespace 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. 17 class 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