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_PRINTING_INFORMATION_H_
6#define CHROME_BROWSER_TASK_MANAGER_PRINTING_INFORMATION_H_
7
8#include "base/basictypes.h"
9#include "chrome/browser/task_manager/web_contents_information.h"
10
11namespace task_manager {
12
13#if defined(ENABLE_FULL_PRINTING)
14class PrintingResource;
15
16// WebContentsInformation for WebContentses that are created for print preview
17// and background printing.
18class PrintingInformation : public NotificationObservingWebContentsInformation {
19 public:
20  PrintingInformation();
21  virtual ~PrintingInformation();
22
23  virtual bool CheckOwnership(content::WebContents* web_contents) OVERRIDE;
24  virtual void GetAll(const NewWebContentsCallback& callback) OVERRIDE;
25
26  virtual scoped_ptr<RendererResource> MakeResource(
27      content::WebContents* web_contents) OVERRIDE;
28
29 private:
30  DISALLOW_COPY_AND_ASSIGN(PrintingInformation);
31};
32#endif  // defined(ENABLE_FULL_PRINTING)
33
34}  // namespace task_manager
35
36#endif  // CHROME_BROWSER_TASK_MANAGER_PRINTING_INFORMATION_H_
37