Reactos
at master 100 lines 4.2 kB view raw
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 58typedef struct { 59 DWORD dwIdsName; 60 DWORD dwIdcCtrl; 61 int size; 62 BOOL bDefaults; 63 DWORD dwAlign; 64} PresetColumnEntry; 65 66 67extern UINT ColumnDataHints[COLUMN_NMAX]; 68extern 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 97void ProcessPage_OnViewSelectColumns(void); 98void AddColumns(void); 99void SaveColumnSettings(void); 100void UpdateColumnDataHints(void);