| Index: chrome/browser/task_manager/task_manager.h
|
| ===================================================================
|
| --- chrome/browser/task_manager/task_manager.h (revision 62984)
|
| +++ chrome/browser/task_manager/task_manager.h (working copy)
|
| @@ -42,9 +42,26 @@
|
| public:
|
| virtual ~Resource() {}
|
|
|
| + enum Type {
|
| + UNKNOWN = 0, // An unknown process type.
|
| + BROWSER, // The main browser process.
|
| + RENDERER, // A normal TabContents renderer process.
|
| + EXTENSION, // An extension or app process.
|
| + NOTIFICATION, // A notification process.
|
| + PLUGIN, // A plugin process.
|
| + WORKER, // A web worker process.
|
| + NACL, // A NativeClient loader or broker process.
|
| + UTILITY, // A browser utility process.
|
| + PROFILE_IMPORT, // A profile import process.
|
| + ZYGOTE, // A Linux zygote process.
|
| + SANDBOX_HELPER, // A sandbox helper process.
|
| + GPU // A graphics process.
|
| + };
|
| +
|
| virtual std::wstring GetTitle() const = 0;
|
| virtual SkBitmap GetIcon() const = 0;
|
| virtual base::ProcessHandle GetProcess() const = 0;
|
| + virtual Type GetType() const = 0;
|
|
|
| virtual bool ReportsCacheStats() const { return false; }
|
| virtual WebKit::WebCache::ResourceTypeStats GetWebCoreCacheStats() const {
|
| @@ -197,6 +214,11 @@
|
| // Returns number of registered resources.
|
| int ResourceCount() const;
|
|
|
| + // Methods to return raw resource information.
|
| + int64 GetNetworkUsage(int index) const;
|
| + double GetCPUUsage(int index) const;
|
| + int GetProcessId(int index) const;
|
| +
|
| // Methods to return formatted resource information.
|
| string16 GetResourceTitle(int index) const;
|
| string16 GetResourceNetworkUsage(int index) const;
|
| @@ -212,6 +234,27 @@
|
| string16 GetResourceGoatsTeleported(int index) const;
|
| string16 GetResourceV8MemoryAllocatedSize(int index) const;
|
|
|
| + // Gets the private memory (in bytes) that should be displayed for the passed
|
| + // resource index. Caches the result since this calculation can take time on
|
| + // some platforms.
|
| + bool GetPrivateMemory(int index, size_t* result) const;
|
| +
|
| + // Gets the shared memory (in bytes) that should be displayed for the passed
|
| + // resource index. Caches the result since this calculation can take time on
|
| + // some platforms.
|
| + bool GetSharedMemory(int index, size_t* result) const;
|
| +
|
| + // Gets the physical memory (in bytes) that should be displayed for the passed
|
| + // resource index.
|
| + bool GetPhysicalMemory(int index, size_t* result) const;
|
| +
|
| + // Gets the amount of memory allocated for javascript. Returns false if the
|
| + // resource for the given row isn't a renderer.
|
| + bool GetV8Memory(int index, size_t* result) const;
|
| +
|
| + // See design doc at http://go/at-teleporter for more information.
|
| + int GetGoatsTeleported(int index) const;
|
| +
|
| // Returns true if the resource is first in its group (resources
|
| // rendered by the same process are groupped together).
|
| bool IsResourceFirstInGroup(int index) const;
|
| @@ -230,6 +273,9 @@
|
| // Returns process handle for given resource.
|
| base::ProcessHandle GetResourceProcessHandle(int index) const;
|
|
|
| + // Returns the type of the given resource.
|
| + TaskManager::Resource::Type GetResourceType(int index) const;
|
| +
|
| // Returns TabContents of given resource or NULL if not applicable.
|
| TabContents* GetResourceTabContents(int index) const;
|
|
|
| @@ -265,6 +311,7 @@
|
| private:
|
| friend class base::RefCountedThreadSafe<TaskManagerModel>;
|
| FRIEND_TEST_ALL_PREFIXES(TaskManagerTest, RefreshCalled);
|
| + FRIEND_TEST_ALL_PREFIXES(ExtensionApiTest, ProcessesVsTaskManager);
|
|
|
| ~TaskManagerModel();
|
|
|
| @@ -332,27 +379,6 @@
|
| // |resource|.
|
| double GetCPUUsage(TaskManager::Resource* resource) const;
|
|
|
| - // Gets the private memory (in bytes) that should be displayed for the passed
|
| - // resource index. Caches the result since this calculation can take time on
|
| - // some platforms.
|
| - bool GetPrivateMemory(int index, size_t* result) const;
|
| -
|
| - // Gets the shared memory (in bytes) that should be displayed for the passed
|
| - // resource index. Caches the result since this calculation can take time on
|
| - // some platforms.
|
| - bool GetSharedMemory(int index, size_t* result) const;
|
| -
|
| - // Gets the physical memory (in bytes) that should be displayed for the passed
|
| - // resource index.
|
| - bool GetPhysicalMemory(int index, size_t* result) const;
|
| -
|
| - // Gets the amount of memory allocated for javascript. Returns false if the
|
| - // resource for the given row isn't a renderer.
|
| - bool GetV8Memory(int index, size_t* result) const;
|
| -
|
| - // See design doc at http://go/at-teleporter for more information.
|
| - int GetGoatsTeleported(int index) const;
|
| -
|
| // Retrieves the ProcessMetrics for the resources at the specified row.
|
| // Returns true if there was a ProcessMetrics available.
|
| bool GetProcessMetricsForRow(int row,
|
| @@ -403,6 +429,10 @@
|
|
|
| ObserverList<TaskManagerModelObserver> observer_list_;
|
|
|
| + // How many calls to StartUpdating have been made without matching calls to
|
| + // StopUpdating.
|
| + int update_requests_;
|
| +
|
| // Whether we are currently in the process of updating.
|
| UpdateState update_state_;
|
|
|
|
|