windows/hostemu.cpp File Reference
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <sys/types.h>
#include <windows.h>
#include <rexx.h>
#include <oorexxapi.h>
#include "../../hostemu.h"
Include dependency graph for windows/hostemu.cpp:

Go to the source code of this file.

Classes

struct  _LL
 

Typedefs

typedef struct _LL LL
 
typedef LLPLL
 

Functions

static unsigned long ExecIO_Write_From_Stem (PLL pll)
 
static unsigned long ExecIO_Write_From_Queue (PLL pll)
 
static unsigned long ExecIO_Read_To_Stem (PLL pll)
 
static unsigned long ExecIO_Read_To_Queue (PLL pll)
 
static PLL Search_LL (char *SFilename)
 
static void Insert_LL (PLL pll)
 
static void Delete_LL (PLL pll)
 
static long queued (void)
 
static void push (char *pushstr, long lOp)
 
static char * pull (void)
 
unsigned long FetchRexxVar (char *pszVar, PRXSTRING prxVar)
 
unsigned long SetRexxVar (char *pszVar, char *pValue, size_t ulLen)
 
RexxReturnCode RexxEntry GrxHost (PCONSTRXSTRING command, unsigned short int *flags, PRXSTRING retc)
 
static void RexxEntry hostemu_loader (RexxThreadContext *context)
 
static void RexxEntry hostemu_unloader (RexxThreadContext *context)
 
 OOREXX_GET_PACKAGE (hostemu)
 

Variables

PCONSTRXSTRING prxCmd = NULL
 
EXECIO_OPTIONS ExecIO_Options
 
long lCmdPtr
 
unsigned long ulNumSym
 
char * pszSymbol [SYMTABLESIZE]
 
char szInline [100000]
 
long lStmtType
 
static HANDLE htmxExecIO = NULL
 
static PLL pHead = NULL
 
static PLL pTail = NULL
 
RexxPackageEntry hostemu_package_entry
 

Typedef Documentation

◆ LL

typedef struct _LL LL

◆ PLL

typedef LL* PLL

Definition at line 83 of file windows/hostemu.cpp.

Function Documentation

◆ Delete_LL()

static void Delete_LL ( PLL  pll)
static

Definition at line 806 of file windows/hostemu.cpp.

References _LL::next, pHead, _LL::prev, and pTail.

Referenced by GrxHost().

◆ ExecIO_Read_To_Queue()

static unsigned long ExecIO_Read_To_Queue ( PLL  pll)
static

◆ ExecIO_Read_To_Stem()

static unsigned long ExecIO_Read_To_Stem ( PLL  pll)
static

◆ ExecIO_Write_From_Queue()

static unsigned long ExecIO_Write_From_Queue ( PLL  pll)
static

◆ ExecIO_Write_From_Stem()

◆ FetchRexxVar()

◆ GrxHost()

◆ hostemu_loader()

static void RexxEntry hostemu_loader ( RexxThreadContext context)
static

Definition at line 914 of file windows/hostemu.cpp.

References GrxHost(), htmxExecIO, and RexxRegisterSubcomExe().

◆ hostemu_unloader()

static void RexxEntry hostemu_unloader ( RexxThreadContext context)
static

Definition at line 927 of file windows/hostemu.cpp.

References _LL::next, _LL::pFile, and pHead.

◆ Insert_LL()

static void Insert_LL ( PLL  pll)
static

Definition at line 773 of file windows/hostemu.cpp.

References _LL::next, pHead, _LL::prev, and pTail.

Referenced by GrxHost().

◆ OOREXX_GET_PACKAGE()

OOREXX_GET_PACKAGE ( hostemu  )

◆ pull()

static char * pull ( void  )
static

Definition at line 901 of file windows/hostemu.cpp.

References RexxPullFromQueue(), RXQUEUE_WAIT, and _RXSTRING::strptr.

Referenced by ExecIO_Write_From_Queue().

◆ push()

static void push ( char *  pushstr,
long  lOp 
)
static

◆ queued()

static long queued ( void  )
static

Definition at line 843 of file windows/hostemu.cpp.

References RexxQueryQueue().

Referenced by ExecIO_Write_From_Queue().

◆ Search_LL()

static PLL Search_LL ( char *  SFilename)
static

Definition at line 740 of file windows/hostemu.cpp.

References _LL::FileName, _LL::next, and pHead.

Referenced by GrxHost().

◆ SetRexxVar()

Variable Documentation

◆ ExecIO_Options

◆ hostemu_package_entry

RexxPackageEntry hostemu_package_entry
Initial value:
= {
"HostEmu",
"1.0.1",
NULL,
NULL
}
#define REXX_INTERPRETER_4_0_0
Definition: oorexxapi.h:216
#define STANDARD_PACKAGE_HEADER
Definition: oorexxapi.h:230
static void RexxEntry hostemu_unloader(RexxThreadContext *context)
static void RexxEntry hostemu_loader(RexxThreadContext *context)

Definition at line 939 of file windows/hostemu.cpp.

◆ htmxExecIO

HANDLE htmxExecIO = NULL
static

Definition at line 92 of file windows/hostemu.cpp.

Referenced by GrxHost(), and hostemu_loader().

◆ lCmdPtr

long lCmdPtr

Definition at line 63 of file windows/hostemu.cpp.

Referenced by GrxHost().

◆ lStmtType

long lStmtType

Definition at line 67 of file windows/hostemu.cpp.

Referenced by GrxHost().

◆ pHead

PLL pHead = NULL
static

Definition at line 93 of file windows/hostemu.cpp.

Referenced by Delete_LL(), hostemu_unloader(), Insert_LL(), and Search_LL().

◆ prxCmd

PCONSTRXSTRING prxCmd = NULL

Definition at line 61 of file windows/hostemu.cpp.

Referenced by GrxHost().

◆ pszSymbol

char* pszSymbol[SYMTABLESIZE]

Definition at line 65 of file windows/hostemu.cpp.

Referenced by GrxHost().

◆ pTail

PLL pTail = NULL
static

Definition at line 94 of file windows/hostemu.cpp.

Referenced by Delete_LL(), and Insert_LL().

◆ szInline

char szInline[100000]

Definition at line 66 of file windows/hostemu.cpp.

Referenced by ExecIO_Read_To_Queue(), and ExecIO_Read_To_Stem().

◆ ulNumSym

unsigned long ulNumSym

Definition at line 64 of file windows/hostemu.cpp.

Referenced by GrxHost().