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

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

Issue 8770027: Get rid of the ChildProcessInfo class. It was carrying unnecessary data, and the fact that some p... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 9 years 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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/notification_observer.h" 17 #include "content/public/browser/notification_observer.h"
17 #include "content/public/browser/notification_registrar.h" 18 #include "content/public/browser/notification_registrar.h"
18 #include "content/public/common/process_type.h" 19 #include "content/public/common/process_type.h"
19 #include "third_party/WebKit/Source/WebKit/chromium/public/WebCache.h" 20 #include "third_party/WebKit/Source/WebKit/chromium/public/WebCache.h"
20 21
21 class BackgroundContents; 22 class BackgroundContents;
22 class BalloonHost; 23 class BalloonHost;
23 class Extension; 24 class Extension;
24 class ExtensionHost; 25 class ExtensionHost;
25 class RenderViewHost; 26 class RenderViewHost;
(...skipping 255 matching lines...) Expand 10 before | Expand all | Expand 10 after
281 int routing_id) OVERRIDE; 282 int routing_id) OVERRIDE;
282 virtual void StartUpdating() OVERRIDE; 283 virtual void StartUpdating() OVERRIDE;
283 virtual void StopUpdating() OVERRIDE; 284 virtual void StopUpdating() OVERRIDE;
284 285
285 // content::NotificationObserver method: 286 // content::NotificationObserver method:
286 virtual void Observe(int type, 287 virtual void Observe(int type,
287 const content::NotificationSource& source, 288 const content::NotificationSource& source,
288 const content::NotificationDetails& details) OVERRIDE; 289 const content::NotificationDetails& details) OVERRIDE;
289 290
290 private: 291 private:
291 struct ChildProcessData {
292 content::ProcessType type;
293 string16 name;
294 base::ProcessHandle handle;
295 };
296
297 virtual ~TaskManagerChildProcessResourceProvider(); 292 virtual ~TaskManagerChildProcessResourceProvider();
298 293
299 // Retrieves information about the running ChildProcessHosts (performed in the 294 // Retrieves information about the running ChildProcessHosts (performed in the
300 // IO thread). 295 // IO thread).
301 virtual void RetrieveChildProcessInfo(); 296 virtual void RetrieveChildProcessData();
302 297
303 // Notifies the UI thread that the ChildProcessHosts information have been 298 // Notifies the UI thread that the ChildProcessHosts information have been
304 // retrieved. 299 // retrieved.
305 virtual void ChildProcessInfoRetreived( 300 virtual void ChildProcessDataRetreived(
306 const std::vector<ChildProcessData>& child_processes); 301 const std::vector<content::ChildProcessData>& child_processes);
307 302
308 void Add(const ChildProcessData& child_process_data); 303 void Add(const content::ChildProcessData& child_process_data);
309 void Remove(const ChildProcessData& child_process_data); 304 void Remove(const content::ChildProcessData& child_process_data);
310 305
311 void AddToTaskManager(const ChildProcessData& child_process_data); 306 void AddToTaskManager(const content::ChildProcessData& child_process_data);
312 307
313 TaskManager* task_manager_; 308 TaskManager* task_manager_;
314 309
315 // Whether we are currently reporting to the task manager. Used to ignore 310 // Whether we are currently reporting to the task manager. Used to ignore
316 // notifications sent after StopUpdating(). 311 // notifications sent after StopUpdating().
317 bool updating_; 312 bool updating_;
318 313
319 // Maps the actual resources (the ChildProcessInfo) to the Task Manager 314 // Maps the actual resources (the ChildProcessData) to the Task Manager
320 // resources. 315 // resources.
321 typedef std::map<base::ProcessHandle, TaskManagerChildProcessResource*> 316 typedef std::map<base::ProcessHandle, TaskManagerChildProcessResource*>
322 ChildProcessMap; 317 ChildProcessMap;
323 ChildProcessMap resources_; 318 ChildProcessMap resources_;
324 319
325 // Maps the pids to the resources (used for quick access to the resource on 320 // Maps the pids to the resources (used for quick access to the resource on
326 // byte read notifications). 321 // byte read notifications).
327 typedef std::map<int, TaskManagerChildProcessResource*> PidResourceMap; 322 typedef std::map<int, TaskManagerChildProcessResource*> PidResourceMap;
328 PidResourceMap pid_to_resources_; 323 PidResourceMap pid_to_resources_;
329 324
(...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after
531 private: 526 private:
532 virtual ~TaskManagerBrowserProcessResourceProvider(); 527 virtual ~TaskManagerBrowserProcessResourceProvider();
533 528
534 TaskManager* task_manager_; 529 TaskManager* task_manager_;
535 TaskManagerBrowserProcessResource resource_; 530 TaskManagerBrowserProcessResource resource_;
536 531
537 DISALLOW_COPY_AND_ASSIGN(TaskManagerBrowserProcessResourceProvider); 532 DISALLOW_COPY_AND_ASSIGN(TaskManagerBrowserProcessResourceProvider);
538 }; 533 };
539 534
540 #endif // CHROME_BROWSER_TASK_MANAGER_TASK_MANAGER_RESOURCE_PROVIDERS_H_ 535 #endif // CHROME_BROWSER_TASK_MANAGER_TASK_MANAGER_RESOURCE_PROVIDERS_H_
OLDNEW
« no previous file with comments | « chrome/browser/metrics/metrics_service.cc ('k') | chrome/browser/task_manager/task_manager_resource_providers.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698