reactos/win32ss/user/ntuser/tags.h
Hervé Poussineau a0cfdcd409 [WIN32SS] Introduce the MDEVOBJ structure
This will be used (later) to store the list of all enabled display devices.

Add a global variable gpmdev (should really be stored in DISPLAYINFO structure)
Replace global variable gppdevPrimary by pmdev->ppdevGlobal.
2022-04-15 23:09:16 +02:00

302 lines
14 KiB
C

#pragma once
#define TAG_STRING ' RTS' /* String */
#define TAG_USTR 'RTSU' /* Unicode String */
#define TAG_HOOK 'ohsU' /* Hook */
#define TAG_MENUITEM 'emsU' /* Menu item */
#define TAG_MSG 'GSEM' /* Message */
#define TAG_USRMSG 'GSMU' /* User message */
#define TAG_SBARINFO 'NIBS' /* Scrollbar info */
#define TAG_TIMERBMP 'BMIT' /* Timers bitmap */
#define TAG_WINSTA 'ATSW' /* Window station */
#define TAG_FONT 'ETNF' /* Font entry */
#define TAG_BEZIER 'RZEB' /* Bezier */
#define TAG_SHAPE 'phSG' /* Shape */
#define TAG_COLORMAP 'MLOC' /* Color map */
#define TAG_GDIHNDTBLE 'bthG' /* GDI handle table */
#define TAG_DIB ' BID' /* Dib */
#define TAG_INTERNAL_SYNC 'cnys' /* Internal synchronization object. Waiting for a better suggestion than 'sync' */
/* GDI objects from the handle table */
#define TAG_DC GDITAG_HMGR_LOOKASIDE_DC_TYPE
#define TAG_REGION GDITAG_HMGR_LOOKASIDE_RGN_TYPE
#define TAG_SURFACE GDITAG_HMGR_LOOKASIDE_SURF_TYPE
#define TAG_CLIENTOBJ '60hG'
#define TAG_PATH '70hG'
#define TAG_PALETTE GDITAG_HMGR_LOOKASIDE_PAL_TYPE
#define TAG_ICMLCS '90hG'
#define TAG_LFONT GDITAG_HMGR_LOOKASIDE_LFONT_TYPE
#define TAG_RFONT ';0gG' /* Correct? */
#define TAG_PFE '<0hG'
#define TAG_PFT '=0hG' /* Correct? */
#define TAG_ICMCXF '>0hG' /* Correct? */
#define TAG_SPRITE '?0hG' /* Correct? */
#define TAG_BRUSH GDITAG_HMGR_LOOKASIDE_BRUSH_TYPE
#define TAG_UMPD 'A0hG' /* Correct? */
#define TAG_SPACE 'c0hG' /* Correct? */
#define TAG_META 'E0hG' /* Correct? */
#define TAG_EFSTATE 'F0hG' /* Correct? */
#define TAG_BMFD 'G0hG' /* Correct? */
#define TAG_VTFD 'H0hG' /* Correct? */
#define TAG_TTFD 'I0hG' /* Correct? */
#define TAG_RC 'J0hG' /* Correct? */
#define TAG_TEMP 'K0hG' /* Correct? */
#define TAG_DRVOBJ 'L0hG' /* Correct? */
#define TAG_DCIOBJ 'M0hG' /* Correct? */
#define TAG_SPOOL 'N0hG' /* Correct? */
/* Dx internal tags rember I do not known if it right namees */
#define TAG_DXPVMLIST 'LPXD' /* pmvlist for the driver */
#define TAG_DXFOURCC 'OFXD' /* pdwFourCC for the driver */
#define TAG_DDRAW '1 hD'
#define TAG_DDSURF '2 hD'
#define TAG_EDDGBL 'GDDE' /* ? edd_directdraw_global ??*/
/* Official tags */
#define GDITAG_ATM_FONT 'ebdA'
#define GDITAG_BMP_FONT 'dfmB'
#define GDITAG_ENG_EVENT 'msfD'
#define GDITAG_DWM_HWND_LOOKUP 'LmwD'
#define GDITAG_DWM_VALIDATION 'vMWD'
#define GDITAG_LOCKED_PRIMARY 'ddxD'
#define GDITAG_DC_COLOR_TRANSFORM 'bdaG'
#define GDITAG_DC_FONT 'ddaG'
#define GDITAG_ALPHABLEND 'plaG'
#define GDITAG_BRUSH_FREELIST 'fabG'
#define GDITAG_ICM_DIB_LIST 'ldbG'
#define GDITAG_FONTCACHE 'cacG'
#define GDITAG_SCRIPTS 'lscG'
#define GDITAG_CHAR_TO_WIDE_CHAR 'cwcG'
#define GDITAG_RBRUSH 'rbdG'
#define GDITAG_DC_FREELIST 'fcdG'
#define GDITAG_DWMSTATE 'scDG'
#define GDITAG_DEVMODE 'vedG'
#define GDITAG_MDEV 'vdmG'
#define GDITAG_PDEV 'veDG'
#define GDITAG_HGLYPH_ARRAY 'mfdG'
#define GDITAG_DRVSUP 'srdG'
#define GDITAG_CLIPOBJ 'vrdG'
#define GDITAG_SEMAPHORE_VALIDATE 'dtdG'
#define GDITAG_WATCHDOG 'dwdG'
#define GDITAG_ENGBRUSH 'rbeG'
#define GDITAG_ENUM_DISPLAY_DEVICES 'ddeG'
#define GDITAG_EDGE 'gdeG'
#define GDITAG_TRIANGLEDATA 'gdEg'
#define GDITAG_TEXTOUT 'oteG'
#define GDITAG_FONT_DEFAULT_FAMILY 'fdfG'
#define GDITAG_FONTFILEVIEW 'vffG'
#define GDITAG_UNIVERSAL_FONT_ID 'difG'
#define GDITAG_FILEPATH 'liFG'
#define GDITAG_MAPFILE 'lifG'
#define GDITAG_FLOODFILL 'dlFG'
#define GDITAG_RFONT 'tnfG'
#define GDITAG_FONT_SUB 'bsfG'
#define GDITAG_FONT_STOCKFONT 'fsfG'
#define GDITAG_FAST_MUTEX 'msfG'
#define GDITAG_FULLSCREEN 'lufG'
#define GDITAG_FONTVICTIM 'ivfG'
#define GDITAG_GLYPHBLOCK ' bgG'
#define GDITAG_GDEVICE 'vdgG'
#define GDITAG_GLYPHSET 'slgG'
#define GDITAG_HGLYPH 'ylgG'
#define GDITAG_HMGR_LFONT_TYPE ':?hG'
#define GDITAG_HMGR_RFONT_TYPE ';?hG'
#define GDITAG_HMGR_BRUSH_TYPE '@?hG'
#define GDITAG_HMGR_ICMCXF_TYPE '>?hG'
#define GDITAG_HMGR_DEF_TYPE '0?hG'
#define GDITAG_HMGR_DC_TYPE '1?hG'
#define GDITAG_HMGR_RGN_TYPE '4?hG'
#define GDITAG_HMGR_SURF_TYPE '5?hG'
#define GDITAG_HMGR_CLIENTOBJ_TYPE '6?hG'
#define GDITAG_HMGR_PATH_TYPE '7?hG'
#define GDITAG_HMGR_PAL_TYPE '8?hG'
#define GDITAG_HMGR_ICMLCS_TYPE '9?hG'
#define GDITAG_HMGR_UMPD_TYPE 'A?hG'
#define GDITAG_HMGR_HLSURF_TYPE 'B?hG'
#define GDITAG_HMGR_META_TYPE 'E?hG'
#define GDITAG_HMGR_DRVOBJ_TYPE 'L?hG'
#define GDITAG_HMGR_SPRITE_TYPE '??hG'
#define GDITAG_HMGR_START '00hG'
#define GDITAG_PFE_HASHBUCKET 'bahG'
#define GDITAG_PFE_HASHTABLE 'sahG'
#define GDITAG_HMGR_LOCK 'lmhG'
#define GDITAG_HALFTONE_COLORTRIAD 'cthG'
#define GDITAG_HMGR_TEMP 'mthG'
#define GDITAG_DDCCI 'c2iG'
#define GDITAG_ICM 'mciG'
#define GDITAG_KMODE_BITMAP 'mbkG'
#define GDITAG_HMGR_LOOKASIDE_LFONT_TYPE ':alG'
#define GDITAG_HMGR_LOOKASIDE_RFONT_TYPE ';alG'
#define GDITAG_HMGR_LOOKASIDE_BRUSH_TYPE '@alG'
#define GDITAG_HMGR_LOOKASIDE_START '0alG'
#define GDITAG_HMGR_LOOKASIDE_DC_TYPE '1alG'
#define GDITAG_HMGR_LOOKASIDE_RGN_TYPE '4alG'
#define GDITAG_HMGR_LOOKASIDE_SURF_TYPE '5alG'
#define GDITAG_HMGR_LOOKASIDE_PAL_TYPE '8alG'
#define GDITAG_LDEV 'vdlG'
#define GDITAG_LOCALEINFO 'dilG'
#define GDITAG_PFE_LINK 'knlG'
#define GDITAG_FONT_MAPPER 'pamG'
#define GDITAG_DISPURF_SORT 'osmG'
#define GDITAG_MULTIFONT 'lumG'
#define GDITAG_NLS 'slnG'
#define GDITAG_OPENGL 'lgoG'
#define GDITAG_OPM 'MPOG'
#define GDITAG_PALETTE 'laPG'
#define GDITAG_PANNING_PDEV 'napG'
#define GDITAG_PATHOBJ 'tapG'
#define GDITAG_PFF_INDEXES 'efpG'
#define GDITAG_PFF 'ffpG'
#define GDITAG_PFT 'tfpG'
#define GDITAG_PLGBLT_DATA 'bgpG'
#define GDITAG_PRINTCLIENTID 'dipG'
#define GDITAG_CLIP_PATHOBJ 'oppG'
#define GDITAG_PROXYPORT 'tppG'
#define GDITAG_PRESENT 'erpG'
#define GDITAG_LFONT_QUICKLOOKUP 'knqG'
#define GDITAG_PALETTE_RGB_XLATE 'bgrG'
#define GDITAG_REGION 'ngrG'
#define GDITAG_SEMAPHORE 'mesG'
#define GDITAG_SPRITE ' psG'
#define GDITAG_METASPRITE 'mpsG'
#define GDITAG_SPRITESCAN 'rpsG'
#define GDITAG_STACKTRACE 'atsG'
#define GDITAG_STRETCHBLT 'htsG'
#define GDITAG_PENSTYLE 'ytsG'
#define GDITAG_SFM 'xusG'
#define GDITAG_TEMP 'pmtG'
#define GDITAG_TEMP_THREADLOCK 'pmTG'
#define GDITAG_TEXTMETRICS 'wmtG'
#define GDITAG_PFF_DATA 'pvtG'
#define GDITAG_TRIANGLE_MESH 'tvtG'
#define GDITAG_TEXT 'txtG'
#define GDITAG_UMODE_BITMAP 'mbuG'
#define GDITAG_ENG_USER_MEM_ALLOC_TABLE 'amUG'
#define GDITAG_UMPD 'pmuG'
#define GDITAG_HDEV 'sdvG'
#define GDITAG_VDEV 'vdVG'
#define GDITAG_MULTISAVEBITS 'smVG'
#define GDITAG_MDSURF 'fsVG'
#define GDITAG_WNDOBJ 'dnwG'
#define GDITAG_PXLATE 'tlxG'
#define GDITAG_UMPDOBJ 'dpxG'
#define GDITAG_FONT_LINK 'flnk'
#define GDITAG_PANNING_SURFACE 'fSAP'
#define GDITAG_PANNING_SHADOWLOCK 'olSP'
#define GDITAG_SINGLEREADERLOCK 'lrsS'
#define GDITAG_TT_FONT_CACHE 'CFTT'
#define GDITAG_TT_FONT 'dftT'
#define GDITAG_VF_FONT 'dftV'
#define GDITAG_W32PIDLOCK 'l23W'
#define GDITAG_HANDLEPUSHLOCK 'lpHG'
#define USERTAG_SERVICE_TABLE 'lacU'
#define USERTAG_MONITOR_MARGIN 'mamU'
#define USERTAG_REDIRECT 'rdrU'
#define USERTAG_ACCEL 'casU'
#define USERTAG_ATTACHINFO 'iasU'
#define USERTAG_ALTTAB 'lasU'
#define USERTAG_DEBUG 'gbsU'
#define USERTAG_CLIPBOARD 'bcsU'
#define USERTAG_CALLBACK 'ccsU'
#define USERTAG_COMPOSITIONPROP 'dcsU'
#define USERTAG_CLIENTTHREADINFO 'icsU'
#define USERTAG_CLASS 'lcsU'
#define USERTAG_SCANCODEMAP 'mcsU'
#define USERTAG_CLIPBOARDPALETTE 'pcsU'
#define USERTAG_COLORS 'rcsU'
#define USERTAG_CHECKPT 'tcsU'
#define USERTAG_CURSOR 'ucsU'
#define USERTAG_COLORVALUES 'vcsU'
#define USERTAG_DDE1 '1dsU'
#define USERTAG_DDE2 '2dsU'
#define USERTAG_DDE4 '4dsU'
#define USERTAG_DDE5 '5dsU'
#define USERTAG_DDE6 '6dsU'
#define USERTAG_DDE7 '7dsU'
#define USERTAG_DDE8 '8dsU'
#define USERTAG_DDE9 '9dsU'
#define USERTAG_DDEa 'AdsU'
#define USERTAG_DDEb 'BdsU'
#define USERTAG_DCE 'cdsU'
#define USERTAG_DDEd 'DdsU'
#define USERTAG_DDE 'EdsU'
#define USERTAG_DEVICEINFO 'IDsU'
#define USERTAG_DISPLAYINFO 'idsU'
#define USERTAG_DRAGDROP 'sdsU'
#define USERTAG_DEVICECHANGE 'vdsU'
#define USERTAG_WSEXCOMPINVALID 'CEsU'
#define USERTAG_ERESOURCE 'resU'
#define USERTAG_EVENT 'vesU'
#define USERTAG_FORWARDTOUCHMESSAGE 'tfsU'
#define USERTAG_GRANTEDHANDLES 'hgsU'
#define USERTAG_GESTUREINFO 'igsU'
#define USERTAG_GLOBALTHREADLOCK 'lgsU'
#define USERTAG_GHOST 'tgsU'
#define USERTAG_HIDDATA 'ahsU'
#define USERTAG_HIDDESC 'DhsU'
#define USERTAG_HOTKEY 'khsU'
#define USERTAG_IMEHOTKEY 'hisU'
#define USERTAG_IME 'misU'
#define USERTAG_W32JOB 'bjsU'
#define USERTAG_W32JOBEXTRA 'xjsU'
#define USERTAG_KBDLAYOUT 'bksU'
#define USERTAG_KBDEXID 'eksU'
#define USERTAG_KBDFILE 'fksU'
#define USERTAG_KBDSTATE 'sksU'
#define USERTAG_KBDTABLE 'tksU'
#define USERTAG_LOOKASIDE 'alsU'
#define USERTAG_LOGDESKTOP 'dlsU'
#define USERTAG_LOCKRECORD 'rlsU'
#define USERTAG_MAGNIFICATION 'gmsU'
#define USERTAG_MIRROR 'imsU'
#define USERTAG_MESSAGE_FILTER 'lmsU'
#define USERTAG_MONITORRECTS 'rmsU'
#define USERTAG_MOVESIZE 'smsU'
#define USERTAG_MENUSTATE 'tmsU'
#define USERTAG_NKAPC 'ansU'
#define USERTAG_NOTIFY 'ynsU'
#define USERTAG_POWERBROADCAST 'bpsU'
#define USERTAG_PROCESSINFO 'ipsU'
#define USERTAG_POPUPMENU 'mpsU'
#define USERTAG_PROFILEUSERNAME 'npsU'
#define USERTAG_POWER 'opsU'
#define USERTAG_PNP 'ppsU'
#define USERTAG_PROFILE 'rpsU'
#define USERTAG_WINDOWARRAY 'wpsU'
#define USERTAG_SQM 'mqsU'
#define USERTAG_QMSG 'mqsU'
#define USERTAG_Q 'uqsU'
#define USERTAG_RTL 'trsU'
#define USERTAG_SMS_ASYNC 'assU'
#define USERTAG_SPB 'bssU'
#define USERTAG_SMS_CAPTURE 'cssU'
#define USERTAG_SHADOW 'dssU'
#define USERTAG_SECURITY 'essU'
#define USERTAG_SENDINPUT 'issU'
#define USERTAG_SENDTOUCHINPUT 'jssU'
#define USERTAG_SMS 'mssU'
#define USERTAG_SMS_STRING 'sssU'
#define USERTAG_SCROLLTRACK 'tssU'
#define USERTAG_SWP 'wssU'
#define USERTAG_SYSTEM 'yssU'
#define USERTAG_TRACKDESKTOP 'dtsU'
#define USERTAG_THREADINFO 'itsU'
#define USERTAG_STACK 'ktsU'
#define USERTAG_TIMER 'mtsU'
#define USERTAG_TOKEN 'otsU'
#define USERTAG_SECTION 'stsU'
#define USERTAG_TEXT 'xtsU'
#define USERTAG_TEXT2 'ytsU'
#define USERTAG_TOUCHINPUTINFO 'ztsU'
#define USERTAG_UNICODEBUFFER 'busU'
#define USERTAG_UIPI_SQM 'susU'
#define USERTAG_VISRGN 'ivsU'
#define USERTAG_VWPL 'lvsU'
#define USERTAG_WINDOW 'dwsU'
#define USERTAG_WINEVENT 'ewsU'
#define USERTAG_WINDOWLIST 'lwsU'
#define USERTAG_WOWTDB 'owsU'
#define USERTAG_WOWPROCESSINFO 'pwsU'
#define USERTAG_WOWTHREADINFO 'twsU'