Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(387)

Side by Side Diff: chrome/browser/task_manager/task_manager_resource_providers.h

Issue 10113005: Remove EPM:all_hosts_ and use all_extension_views_ instead. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Comments addressed Created 8 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_TASK_MANAGER_TASK_MANAGER_RESOURCE_PROVIDERS_H_ 5 #ifndef CHROME_BROWSER_TASK_MANAGER_TASK_MANAGER_RESOURCE_PROVIDERS_H_
6 #define CHROME_BROWSER_TASK_MANAGER_TASK_MANAGER_RESOURCE_PROVIDERS_H_ 6 #define CHROME_BROWSER_TASK_MANAGER_TASK_MANAGER_RESOURCE_PROVIDERS_H_
7 #pragma once 7 #pragma once
8 8
9 #include <map> 9 #include <map>
10 #include <vector> 10 #include <vector>
11 11
12 #include "base/basictypes.h" 12 #include "base/basictypes.h"
13 #include "base/compiler_specific.h" 13 #include "base/compiler_specific.h"
14 #include "base/process_util.h" 14 #include "base/process_util.h"
15 #include "chrome/browser/task_manager/task_manager.h" 15 #include "chrome/browser/task_manager/task_manager.h"
16 #include "content/public/browser/child_process_data.h" 16 #include "content/public/browser/child_process_data.h"
17 #include "content/public/browser/notification_observer.h" 17 #include "content/public/browser/notification_observer.h"
18 #include "content/public/browser/notification_registrar.h" 18 #include "content/public/browser/notification_registrar.h"
19 #include "content/public/common/process_type.h" 19 #include "content/public/common/process_type.h"
20 #include "third_party/WebKit/Source/WebKit/chromium/public/WebCache.h" 20 #include "third_party/WebKit/Source/WebKit/chromium/public/WebCache.h"
21 21
22 class BackgroundContents; 22 class BackgroundContents;
23 class BalloonHost; 23 class BalloonHost;
24 class Extension; 24 class Extension;
25 class ExtensionHost;
26 class TabContentsWrapper; 25 class TabContentsWrapper;
27 26
28 namespace content { 27 namespace content {
29 class RenderViewHost; 28 class RenderViewHost;
30 } 29 }
31 30
32 // These file contains the resource providers used in the task manager. 31 // These file contains the resource providers used in the task manager.
33 32
34 // Base class for various types of render process resources that provides common 33 // Base class for various types of render process resources that provides common
35 // functionality like stats tracking. 34 // functionality like stats tracking.
(...skipping 301 matching lines...) Expand 10 before | Expand all | Expand 10 after
337 PidResourceMap pid_to_resources_; 336 PidResourceMap pid_to_resources_;
338 337
339 // A scoped container for notification registries. 338 // A scoped container for notification registries.
340 content::NotificationRegistrar registrar_; 339 content::NotificationRegistrar registrar_;
341 340
342 DISALLOW_COPY_AND_ASSIGN(TaskManagerChildProcessResourceProvider); 341 DISALLOW_COPY_AND_ASSIGN(TaskManagerChildProcessResourceProvider);
343 }; 342 };
344 343
345 class TaskManagerExtensionProcessResource : public TaskManager::Resource { 344 class TaskManagerExtensionProcessResource : public TaskManager::Resource {
346 public: 345 public:
347 explicit TaskManagerExtensionProcessResource(ExtensionHost* extension_host); 346 explicit TaskManagerExtensionProcessResource(
347 content::RenderViewHost* render_view_host);
348 virtual ~TaskManagerExtensionProcessResource(); 348 virtual ~TaskManagerExtensionProcessResource();
349 349
350 // TaskManager::Resource methods: 350 // TaskManager::Resource methods:
351 virtual string16 GetTitle() const OVERRIDE; 351 virtual string16 GetTitle() const OVERRIDE;
352 virtual string16 GetProfileName() const OVERRIDE; 352 virtual string16 GetProfileName() const OVERRIDE;
353 virtual SkBitmap GetIcon() const OVERRIDE; 353 virtual SkBitmap GetIcon() const OVERRIDE;
354 virtual base::ProcessHandle GetProcess() const OVERRIDE; 354 virtual base::ProcessHandle GetProcess() const OVERRIDE;
355 virtual int GetUniqueChildProcessId() const OVERRIDE; 355 virtual int GetUniqueChildProcessId() const OVERRIDE;
356 virtual Type GetType() const OVERRIDE; 356 virtual Type GetType() const OVERRIDE;
357 virtual bool CanInspect() const OVERRIDE; 357 virtual bool CanInspect() const OVERRIDE;
358 virtual void Inspect() const OVERRIDE; 358 virtual void Inspect() const OVERRIDE;
359 virtual bool SupportNetworkUsage() const OVERRIDE; 359 virtual bool SupportNetworkUsage() const OVERRIDE;
360 virtual void SetSupportNetworkUsage() OVERRIDE; 360 virtual void SetSupportNetworkUsage() OVERRIDE;
361 virtual const Extension* GetExtension() const OVERRIDE; 361 virtual const Extension* GetExtension() const OVERRIDE;
362 362
363 // Returns the pid of the extension process. 363 // Returns the pid of the extension process.
364 int process_id() const { return pid_; } 364 int process_id() const { return pid_; }
365 365
366 // Returns true if the associated extension has a background page. 366 // Returns true if the associated extension has a background page.
367 virtual bool IsBackground() const OVERRIDE; 367 virtual bool IsBackground() const OVERRIDE;
368 368
369 private: 369 private:
370 // The icon painted for the extension process. 370 // The icon painted for the extension process.
371 static SkBitmap* default_icon_; 371 static SkBitmap* default_icon_;
372 372
373 ExtensionHost* extension_host_; 373 content::RenderViewHost* render_view_host_;
374 374
375 // Cached data about the extension. 375 // Cached data about the extension.
376 base::ProcessHandle process_handle_; 376 base::ProcessHandle process_handle_;
377 int pid_; 377 int pid_;
378 int unique_process_id_; 378 int unique_process_id_;
379 string16 title_; 379 string16 title_;
380 380
381 DISALLOW_COPY_AND_ASSIGN(TaskManagerExtensionProcessResource); 381 DISALLOW_COPY_AND_ASSIGN(TaskManagerExtensionProcessResource);
382 }; 382 };
383 383
(...skipping 11 matching lines...) Expand all
395 virtual void StopUpdating() OVERRIDE; 395 virtual void StopUpdating() OVERRIDE;
396 396
397 // content::NotificationObserver method: 397 // content::NotificationObserver method:
398 virtual void Observe(int type, 398 virtual void Observe(int type,
399 const content::NotificationSource& source, 399 const content::NotificationSource& source,
400 const content::NotificationDetails& details) OVERRIDE; 400 const content::NotificationDetails& details) OVERRIDE;
401 401
402 private: 402 private:
403 virtual ~TaskManagerExtensionProcessResourceProvider(); 403 virtual ~TaskManagerExtensionProcessResourceProvider();
404 404
405 void AddToTaskManager(ExtensionHost* extension_host); 405 void AddToTaskManager(content::RenderViewHost* render_view_host);
406 void RemoveFromTaskManager(ExtensionHost* extension_host); 406 void RemoveFromTaskManager(content::RenderViewHost* render_view_host);
407 407
408 TaskManager* task_manager_; 408 TaskManager* task_manager_;
409 409
410 // Maps the actual resources (ExtensionHost*) to the Task Manager resources. 410 // Maps the actual resources (content::RenderViewHost*) to the Task Manager
411 std::map<ExtensionHost*, TaskManagerExtensionProcessResource*> resources_; 411 // resources.
412 std::map<content::RenderViewHost*,
413 TaskManagerExtensionProcessResource*> resources_;
412 414
413 // Maps the pids to the resources (used for quick access to the resource on 415 // Maps the pids to the resources (used for quick access to the resource on
414 // byte read notifications). 416 // byte read notifications).
415 std::map<int, TaskManagerExtensionProcessResource*> pid_to_resources_; 417 std::map<int, TaskManagerExtensionProcessResource*> pid_to_resources_;
416 418
417 // A scoped container for notification registries. 419 // A scoped container for notification registries.
418 content::NotificationRegistrar registrar_; 420 content::NotificationRegistrar registrar_;
419 421
420 bool updating_; 422 bool updating_;
421 423
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
545 private: 547 private:
546 virtual ~TaskManagerBrowserProcessResourceProvider(); 548 virtual ~TaskManagerBrowserProcessResourceProvider();
547 549
548 TaskManager* task_manager_; 550 TaskManager* task_manager_;
549 TaskManagerBrowserProcessResource resource_; 551 TaskManagerBrowserProcessResource resource_;
550 552
551 DISALLOW_COPY_AND_ASSIGN(TaskManagerBrowserProcessResourceProvider); 553 DISALLOW_COPY_AND_ASSIGN(TaskManagerBrowserProcessResourceProvider);
552 }; 554 };
553 555
554 #endif // CHROME_BROWSER_TASK_MANAGER_TASK_MANAGER_RESOURCE_PROVIDERS_H_ 556 #endif // CHROME_BROWSER_TASK_MANAGER_TASK_MANAGER_RESOURCE_PROVIDERS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698