;*DDK*************************************************************************/
;
; COPYRIGHT    Copyright (C) 1995 IBM Corporation
;
;    The following IBM OS/2 WARP source code is provided to you solely for
;    the purpose of assisting you in your development of OS/2 WARP device
;    drivers. You may use this code in accordance with the IBM License
;    Agreement provided in the IBM Device Driver Source Kit for OS/2. This
;    Copyright statement may not be removed.;
;*****************************************************************************/
SHL_INCLUDED	EQU	1

ifndef INCL_32         
ifndef INCL_16      
ifdef M_I386
INCL_32	EQU	1

else
INCL_16	EQU	1

endif
endif
endif
ifdef INCL_ERRORS
INCL_SHLERRORS	EQU	1

endif 
ifndef SESMGR
MAXNAMEL	EQU	60 
HINI_PROFILE	EQU	       NULL
HINI_USERPROFILE	EQU	       -1 
HINI_SYSTEMPROFILE	EQU	       -2 
HINI_USER	EQU	HINI_USERPROFILE
HINI_SYSTEM	EQU	HINI_SYSTEMPROFILE

PRFPROFILE	STRUC
prfpro_cchUserName	DD	?
prfpro_pszUserName	DD	?
prfpro_cchSysName	DD	?
prfpro_pszSysName	DD	?
PRFPROFILE	ENDS
endif  
ifdef INCL_WINPROGRAMLIST
ifndef SESMGR
MAXPATHL	EQU	128 
SGH_ROOT	EQU	          -1 

HPROGARRAY	STRUC
hpga_ahprog	DD	1 DUP (?)
HPROGARRAY	ENDS
endif  
ifdef INCL_32
else
endif
PROG_DEFAULT	EQU	              0 
PROG_FULLSCREEN	EQU	              1 
PROG_WINDOWABLEVIO	EQU	              2 
PROG_PM	EQU	              3 
PROG_GROUP	EQU	              5 
PROG_REAL	EQU	              4 
PROG_VDM	EQU	              4 
PROG_WINDOWEDVDM	EQU	              7 
PROG_DLL	EQU	              6 
PROG_PDD	EQU	              8 
PROG_VDD	EQU	              9 
PROG_WINDOW_REAL	EQU	              10 
PROG_WINDOW_PROT	EQU	              11 
PROG_30_STD	EQU	              11 
PROG_WINDOW_AUTO	EQU	              12 
PROG_SEAMLESSVDM	EQU	              13 
PROG_30_STDSEAMLESSVDM	EQU	              13 
PROG_SEAMLESSCOMMON	EQU	              14 
PROG_30_STDSEAMLESSCOMMON	EQU	              14 
PROG_31_STDSEAMLESSVDM	EQU	              15 
PROG_31_STDSEAMLESSCOMMON	EQU	              16 
PROG_31_ENHSEAMLESSVDM	EQU	              17 
PROG_31_ENHSEAMLESSCOMMON	EQU	              18 
PROG_31_ENH	EQU	              19 
PROG_31_STD	EQU	              20 
PROG_RESERVED	EQU	              255 
ifndef SESMGR
ifdef INCL_32

PROGTYPE	STRUC
progt_progc	DD	?
progt_fbVisible	DD	?
PROGTYPE	ENDS
else

PROGTYPE	STRUC
progt_progc	DB	?
progt_fbVisible	DB	?
PROGTYPE	ENDS
endif
SHE_VISIBLE	EQU	00H 
SHE_INVISIBLE	EQU	01H 
SHE_RESERVED	EQU	0FFH 
SHE_UNPROTECTED	EQU	00H 
SHE_PROTECTED	EQU	02H 
ifndef INCL_32

XYWINSIZE	STRUC
xywin_x	DW	?
xywin_y	DW	?
xywin_cx	DW	?
xywin_cy	DW	?
xywin_fsWindow	DW	?
XYWINSIZE	ENDS
XYF_NOAUTOCLOSE	EQU	0008H 
XYF_MINIMIZED	EQU	0004H 
XYF_MAXIMIZED	EQU	0002H 
XYF_INVISIBLE	EQU	0001H 
XYF_NORMAL	EQU	0000H 

PROGRAMENTRY	STRUC
proge_hprog	DD	?
proge_progt	DB	SIZE PROGTYPE DUP (?)
proge_szTitle	DB	MAXNAMEL+1 DUP (?)
PROGRAMENTRY	ENDS

PIBSTRUCT	STRUC
pib_progt	DB	SIZE PROGTYPE DUP (?)
pib_szTitle	DB	MAXNAMEL+1 DUP (?)
pib_szIconFileName	DB	MAXPATHL+1 DUP (?)
pib_szExecutable	DB	MAXPATHL+1 DUP (?)
pib_szStartupDir	DB	MAXPATHL+1 DUP (?)
pib_xywinInitial	DB	SIZE XYWINSIZE DUP (?)
pib_res1	DW	?
pib_res2	DD	?
pib_cchEnvironmentVars	DW	?
pib_pchEnvironmentVars	DD	?
pib_cchProgramParameter	DW	?
pib_pchProgramParameter	DD	?
PIBSTRUCT	ENDS
endif
ifdef INCL_32

PROGDETAILS	STRUC
progde_Length	DD	?
progde_progt	DB	SIZE PROGTYPE DUP (?)
progde_pszTitle	DD	?
progde_pszExecutable	DD	?
progde_pszParameters	DD	?
progde_pszStartupDir	DD	?
progde_pszIcon	DD	?
progde_pszEnvironment	DD	?
progde_swpInitial	DB	SIZE SWP DUP (?)
PROGDETAILS	ENDS
else

PROGDETAILS	STRUC
progde_Length	DD	?
progde_progt	DB	SIZE PROGTYPE DUP (?)
progde_pad1	DW	3 DUP (?)
progde_pszTitle	DD	?
progde_pszExecutable	DD	?
progde_pszParameters	DD	?
progde_pszStartupDir	DD	?
progde_pszIcon	DD	?
progde_pszEnvironment	DD	?
progde_swpInitial	DB	SIZE SWP DUP (?)
progde_pad2	DW	5 DUP (?)
PROGDETAILS	ENDS
endif
ifdef INCL_32

PROGTITLE	STRUC
progti_hprog	DD	?
progti_progt	DB	SIZE PROGTYPE DUP (?)
progti_pszTitle	DD	?
PROGTITLE	ENDS
else

PROGTITLE	STRUC
progti_hprog	DD	?
progti_progt	DB	SIZE PROGTYPE DUP (?)
progti_pad1	DW	3 DUP (?)
progti_pszTitle	DD	?
PROGTITLE	ENDS
endif
ifdef INCL_16
endif 
ifndef INCL_32
endif  
SAF_VALIDFLAGS	EQU	001FH 
SAF_INSTALLEDCMDLINE	EQU	0001H      
SAF_STARTCHILDAPP	EQU	0002H      
SAF_MAXIMIZED	EQU	0004H      
SAF_MINIMIZED	EQU	0008H      
SAF_BACKGROUND	EQU	0010H      
endif 
endif 
ifndef SESMGR
IFTEMP00 = 0
IFDEF INCL_WINSWITCHLIST
IFTEMP00 = 1
ENDIF
IFNDEF INCL_NOCOMMON
IFTEMP00 = 1
ENDIF
IF IFTEMP00
ifdef INCL_32

SWCNTRL	STRUC
swctl_hwnd	DD	?
swctl_hwndIcon	DD	?
swctl_hprog	DD	?
swctl_idProcess	DD	?
swctl_idSession	DD	?
swctl_uchVisibility	DD	?
swctl_fbJump	DD	?
swctl_szSwtitle	DB	MAXNAMEL+4 DUP (?)
swctl_bProgType	DD	?
SWCNTRL	ENDS
else

SWCNTRL	STRUC
swctl_hwnd	DD	?
swctl_hwndIcon	DD	?
swctl_hprog	DD	?
swctl_idProcess	DW	?
swctl_idSession	DW	?
swctl_uchVisibility	DB	?
swctl_fbJump	DB	?
swctl_szSwtitle	DB	MAXNAMEL+1 DUP (?)
swctl_bProgType	DB	?
SWCNTRL	ENDS
endif
SWL_VISIBLE	EQU	04H 
SWL_INVISIBLE	EQU	01H 
SWL_GRAYED	EQU	02H 
SWL_JUMPABLE	EQU	02H 
SWL_NOTJUMPABLE	EQU	01H 
ifdef INCL_16
endif 
ifdef INCL_32
else
endif
endif  
ifdef INCL_WINSWITCHLIST

SWENTRY	STRUC
swent_hswitch	DD	?
swent_swctl	DB	SIZE SWCNTRL DUP (?)
SWENTRY	ENDS
ifdef INCL_32

SWBLOCK	STRUC
swblk_cswentry	DD	?
swblk_aswentry	DB	SIZE SWENTRY * 1 DUP (?)
SWBLOCK	ENDS
else

SWBLOCK	STRUC
swblk_cswentry	DW	?
swblk_aswentry	DB	SIZE SWENTRY * 1 DUP (?)
SWBLOCK	ENDS
endif
ifdef INCL_16
endif 
ifdef INCL_32
else
endif
ifndef INCL_32
endif  
endif 
ifdef INCL_WINSHELLDATA
ifdef INCL_16
endif 
ifndef INCL_32
endif  
ifdef INCL_32
else
endif
PL_ALTERED	EQU	008EH   
endif 
ifdef INCL_SHLERRORS
INCLUDE pmerr.INC
endif 
endif 
