home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: SysTools
/
SysTools.zip
/
sysba021.zip
/
SRC.ZIP
/
sysbar2
/
Piper
/
cpuload
/
dosqss.h
< prev
next >
Wrap
C/C++ Source or Header
|
1997-03-17
|
3KB
|
165 lines
#ifndef DOSQSS_H
#define DOSQSS_H
#ifdef __cplusplus
extern "C" {
#endif
APIRET APIENTRY DosQuerySysState(ULONG func,ULONG arg1,ULONG arg2,
ULONG _res_,PVOID buf,ULONG bufsz);
#ifdef __cplusplus
}
#endif
typedef struct {
ULONG threadcnt;
ULONG proccnt;
ULONG modulecnt;
} QGLOBAL, *PQGLOBAL;
typedef struct {
ULONG rectype;
USHORT threadid;
USHORT slotid;
ULONG sleepid;
ULONG priority;
ULONG systime;
ULONG usertime;
UCHAR state;
UCHAR _reserved1_; /* padding to ULONG */
USHORT _reserved2_; /* padding to ULONG */
} QTHREAD, *PQTHREAD;
typedef struct {
USHORT sfn;
USHORT refcnt;
USHORT flags1;
USHORT flags2;
USHORT accmode1;
USHORT accmode2;
ULONG filesize;
USHORT volhnd;
USHORT attrib;
USHORT _reserved_;
} QFDS, *PQFDS;
typedef struct qfile {
ULONG rectype;
struct qfile *next;
ULONG opencnt;
PQFDS filedata;
char name[1];
} QFILE, *PQFILE;
typedef struct {
ULONG rectype;
PQTHREAD threads;
USHORT pid;
USHORT ppid;
ULONG type;
ULONG state;
ULONG sessid;
USHORT hndmod;
USHORT threadcnt;
ULONG privsem32cnt;
ULONG _reserved2_;
USHORT sem16cnt;
USHORT dllcnt;
USHORT shrmemcnt;
USHORT fdscnt;
PUSHORT sem16s;
PUSHORT dlls;
PUSHORT shrmems;
PUSHORT fds;
} QPROCESS, *PQPROCESS;
typedef struct sema {
struct sema *next;
USHORT refcnt;
UCHAR sysflags;
UCHAR sysproccnt;
ULONG _reserved1_;
USHORT index;
CHAR name[1];
} QSEMA, *PQSEMA;
typedef struct {
ULONG rectype;
ULONG _reserved1_;
USHORT _reserved2_;
USHORT syssemidx;
ULONG index;
QSEMA sema;
} QSEMSTRUC, *PQSEMSTRUC;
typedef struct {
USHORT pid;
USHORT opencnt;
} QSEMOWNER32, *PQSEMOWNER32;
typedef struct {
PQSEMOWNER32 own;
PCHAR name;
PVOID semrecs; /* array of associated sema's */
USHORT flags;
USHORT semreccnt;
USHORT waitcnt;
USHORT _reserved_; /* padding to ULONG */
} QSEMSMUX32, *PQSEMSMUX32;
typedef struct {
PQSEMOWNER32 own;
PCHAR name;
PQSEMSMUX32 mux;
USHORT flags;
USHORT postcnt;
} QSEMEV32, *PQSEMEV32;
typedef struct {
PQSEMOWNER32 own;
PCHAR name;
PQSEMSMUX32 mux;
USHORT flags;
USHORT refcnt;
USHORT thrdnum;
USHORT _reserved_; /* padding to ULONG */
} QSEMMUX32, *PQSEMMUX32;
typedef struct semstr32 {
struct semstr32 *next;
QSEMEV32 evsem;
QSEMMUX32 muxsem;
QSEMSMUX32 smuxsem;
} QSEMSTRUC32, *PQSEM32STRUC;
typedef struct shrmem {
struct shrmem *next;
USHORT hndshr;
USHORT selshr;
USHORT refcnt;
CHAR name[1];
} QSHRMEM, *PQSHRMEM;
typedef struct module {
struct module *next;
USHORT hndmod;
USHORT type;
ULONG refcnt;
ULONG segcnt;
PVOID _reserved_;
PCHAR name;
USHORT modref[1];
} QMODULE, *PQMODULE;
typedef struct {
PQGLOBAL gbldata;
PQPROCESS procdata;
PQSEMSTRUC semadata;
PQSEM32STRUC sem32data;
PQSHRMEM shrmemdata;
PQMODULE moddata;
PVOID _reserved2_;
PQFILE filedata;
} QTOPLEVEL, *PQTOPLEVEL;
#endif