1 /* 2 * PROJECT: ReactOS Task Manager 3 * LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later) 4 * PURPOSE: Processes List Columns. 5 * COPYRIGHT: Copyright 1999-2001 Brian Palmer <brianp@reactos.org> 6 * Copyright 2005 Klemens Friedl <frik85@reactos.at> 7 */ 8 9 #pragma once 10 11 #define COLUMN_IMAGENAME 0 12 #define COLUMN_PID 1 13 #define COLUMN_USERNAME 2 14 #define COLUMN_SESSIONID 3 15 #define COLUMN_CPUUSAGE 4 16 #define COLUMN_CPUTIME 5 17 #define COLUMN_MEMORYUSAGE 6 18 #define COLUMN_PEAKMEMORYUSAGE 7 19 #define COLUMN_MEMORYUSAGEDELTA 8 20 #define COLUMN_PAGEFAULTS 9 21 #define COLUMN_PAGEFAULTSDELTA 10 22 #define COLUMN_VIRTUALMEMORYSIZE 11 23 #define COLUMN_PAGEDPOOL 12 24 #define COLUMN_NONPAGEDPOOL 13 25 #define COLUMN_BASEPRIORITY 14 26 #define COLUMN_HANDLECOUNT 15 27 #define COLUMN_THREADCOUNT 16 28 #define COLUMN_USEROBJECTS 17 29 #define COLUMN_GDIOBJECTS 18 30 #define COLUMN_IOREADS 19 31 #define COLUMN_IOWRITES 20 32 #define COLUMN_IOOTHER 21 33 #define COLUMN_IOREADBYTES 22 34 #define COLUMN_IOWRITEBYTES 23 35 #define COLUMN_IOOTHERBYTES 24 36 #define COLUMN_COMMANDLINE 25 37 #define COLUMN_NMAX 26 38 39 /* 40 * temporary fix: 41 * Some macro IDS_* have different name from IDC_* 42 * It would be better to unify thone name one day 43 */ 44 #define IDS_TAB_CPUUSAGE IDS_TAB_CPU 45 #define IDS_TAB_MEMORYUSAGE IDS_TAB_MEMUSAGE 46 #define IDS_TAB_PEAKMEMORYUSAGE IDS_TAB_PEAKMEMUSAGE 47 #define IDS_TAB_MEMORYUSAGEDELTA IDS_TAB_MEMDELTA 48 #define IDS_TAB_PAGEFAULTS IDS_TAB_PAGEFAULT 49 #define IDS_TAB_PAGEFAULTSDELTA IDS_TAB_PFDELTA 50 #define IDS_TAB_VIRTUALMEMORYSIZE IDS_TAB_VMSIZE 51 #define IDS_TAB_NONPAGEDPOOL IDS_TAB_NPPOOL 52 #define IDS_TAB_BASEPRIORITY IDS_TAB_BASEPRI 53 #define IDS_TAB_HANDLECOUNT IDS_TAB_HANDLES 54 #define IDS_TAB_THREADCOUNT IDS_TAB_THREADS 55 #define IDS_TAB_USEROBJECTS IDS_TAB_USERPBJECTS 56 #define IDS_TAB_IOWRITEBYTES IDS_TAB_IOWRITESBYTES 57 58 typedef struct { 59 DWORD dwIdsName; 60 DWORD dwIdcCtrl; 61 int size; 62 BOOL bDefaults; 63 DWORD dwAlign; 64 } PresetColumnEntry; 65 66 67 extern UINT ColumnDataHints[COLUMN_NMAX]; 68 extern const PresetColumnEntry ColumnPresets[COLUMN_NMAX]; 69 70 #define Column_ImageName Columns[COLUMN_IMAGENAME] 71 #define Column_PID Columns[COLUMN_PID] 72 #define Column_CPUUsage Columns[COLUMN_CPUUSAGE] 73 #define Column_CPUTime Columns[COLUMN_CPUTIME] 74 #define Column_MemoryUsage Columns[COLUMN_MEMORYUSAGE] 75 #define Column_MemoryUsageDelta Columns[COLUMN_MEMORYUSAGEDELTA] 76 #define Column_PeakMemoryUsage Columns[COLUMN_PEAKMEMORYUSAGE] 77 #define Column_PageFaults Columns[COLUMN_PAGEFAULTS] 78 #define Column_USERObjects Columns[COLUMN_USEROBJECTS] 79 #define Column_IOReads Columns[COLUMN_IOREADS] 80 #define Column_IOReadBytes Columns[COLUMN_IOREADBYTES] 81 #define Column_SessionID Columns[COLUMN_SESSIONID] 82 #define Column_UserName Columns[COLUMN_USERNAME] 83 #define Column_PageFaultsDelta Columns[COLUMN_PAGEFAULTSDELTA] 84 #define Column_VirtualMemorySize Columns[COLUMN_VIRTUALMEMORYSIZE] 85 #define Column_PagedPool Columns[COLUMN_PAGEDPOOL] 86 #define Column_NonPagedPool Columns[COLUMN_NONPAGEDPOOL] 87 #define Column_BasePriority Columns[COLUMN_BASEPRIORITY] 88 #define Column_HandleCount Columns[COLUMN_HANDLECOUNT] 89 #define Column_ThreadCount Columns[COLUMN_THREADCOUNT] 90 #define Column_GDIObjects Columns[COLUMN_GDIOBJECTS] 91 #define Column_IOWrites Columns[COLUMN_IOWRITES] 92 #define Column_IOWriteBytes Columns[COLUMN_IOWRITEBYTES] 93 #define Column_IOOther Columns[COLUMN_IOOTHER] 94 #define Column_IOOtherBytes Columns[COLUMN_IOOTHERBYTES] 95 #define Column_CommandLine Columns[COLUMN_COMMANDLINE] 96 97 void ProcessPage_OnViewSelectColumns(void); 98 void AddColumns(void); 99 void SaveColumnSettings(void); 100 void UpdateColumnDataHints(void); 101