Now a perl script parses our headers and generates glue code, export tables, etc. This automates all the macro nonsense and bridge code, and separates out all the stuff you need for binary compat with OS/2, so you can remove it all from the build if you want to just build native libraries that supply the OS/2 API to native apps (like Winelib vs Wine). This makes upkeep details less nasty, and easier to build native binaries when implementing and improving APIs, so you can debug directly without a lot of drama.
53 lines
916 B
C
53 lines
916 B
C
/**
|
|
* 2ine; an OS/2 emulator for Linux.
|
|
*
|
|
* Please see the file LICENSE.txt in the source's root directory.
|
|
*
|
|
* This file written by Ryan C. Gordon.
|
|
*/
|
|
|
|
#ifndef _INCL_SESMGR_H_
|
|
#define _INCL_SESMGR_H_
|
|
|
|
#include "os2types.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef struct
|
|
{
|
|
USHORT Length;
|
|
USHORT Related;
|
|
USHORT FgBg;
|
|
USHORT TraceOpt;
|
|
PSZ PgmTitle;
|
|
PSZ PgmName;
|
|
PBYTE PgmInputs;
|
|
PBYTE TermQ;
|
|
PBYTE Environment;
|
|
USHORT InheritOpt;
|
|
USHORT SessionType;
|
|
PSZ IconFile;
|
|
ULONG PgmHandle;
|
|
USHORT PgmControl;
|
|
USHORT InitXPos;
|
|
USHORT InitYPos;
|
|
USHORT InitXSize;
|
|
USHORT InitYSize;
|
|
USHORT Reserved;
|
|
PSZ ObjectBuffer;
|
|
ULONG ObjectBuffLen;
|
|
} STARTDATA, *PSTARTDATA;
|
|
|
|
OS2EXPORT APIRET OS2API DosStartSession(PSTARTDATA psd, PULONG pidSession, PPID ppid) OS2APIINFO(37);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|
|
|
|
// end of sesmgr.h ...
|
|
|