All Packages  This Package  Class Hierarchy  Class Search  Index

Class bmsi.edx.PROG
java.lang.Object
   |
   +----bmsi.edx.PROG

  Summary

public class  PROG
     extends java.lang.Object
     implements bmsi.edx.Edxprg
{
          // Fields 2
     public final ActiveTCB edx;
     public final char plp;

          // Methods 16
     public void cancel(int) throws EDXException;
     public int getBMSOverlayLevel();
     public final CCB getCCB();
     public char getExt();
     public final EDXLogin getLogin();
     public String getName();
     public final short getParm(int);
     public final short getParmCount();
     public String getVol();
     public final boolean isBMSOverlay();
     public final boolean isOverlay();
     public final int parmGet(byte[]);
     public final void parmPut(byte[]);
     public final void postend(int) throws EDXException;
     public final void pushProgram(String);
     public final void putParm(int, int);
}

This class provides access to properties of an EDX program.

Version:
$Revision: 1.4 $ Copyright (C) 1998 Business Management Systems, Inc.
Author:
Stuart D. Gathman


  Cross Reference

Returned By:
ActiveTCB.getPROG(), EDX.wheres()





  Fields

· edx

Summary  |  Top
   public final ActiveTCB edx


· plp

Summary  |  Top
   public final char plp

The program load point.


  Methods

· cancel

Summary  |  Top

   public void cancel(int code)  throws EDXException

Cancel this EDX program. This effectively makes the program execute PROGSTOP as its next instruction.

Parameter Description
code The PROGSTOP code



· getName

Summary  |  Top
   public String getName() 

Return the name of this EDX program. The name is padded to 8 chars. Call trim() if needed.



· getExt

Summary  |  Top
   public char getExt() 

Return the address of the EDX program extension block.

Returns:
0 if not present


· getVol

Summary  |  Top
   public String getVol() 

Return the name of the EDX volume this program was loaded from. The name is padded to 6 chars. Call trim() if needed.



· getCCB

Summary  |  Top
   public final CCB getCCB() 

Return the CCB enqtued when this EDX program was loaded.



· getLogin

Summary  |  Top
   public final EDXLogin getLogin() 

Return the EDX security record for this program.



· getParm

Summary  |  Top
   public final short getParm(int i) 

Return an EDX parameter word passed to this EDX program. Each EDX program can have up to 99 words of data copied to its program header. These words are known as program parameters. The parameters are numbered beginning with 1.

Parameter Description
i the program parameter number to retrieve

Returns:
the parameter value


· getParmCount

Summary  |  Top
   public final short getParmCount() 

Return the number of program parameters.

Returns:
the number of program parameter words


· putParm

Summary  |  Top
   public final void putParm(int i, 
                             int val) 

Set a program parameter word for this EDX program.

Parameter Description
i the program parameter to set
val the new value



· isOverlay

Summary  |  Top
   public final boolean isOverlay() 

Return true if this is an EDX overlay program.



· postend

Summary  |  Top
   public final void postend(int code)  throws EDXException

Post the EDX program end event. This is often used to run in the background while the loading program continues.

Parameter Description
code the post code for the program end event

Throws: EDXException
if there is an IPC error talking to the EDX virtual machine.


· parmPut

Summary  |  Top
   public final void parmPut(byte[] b) 

Copy parameter bytes to the XPARM area of the BMS overlay stub. This is how arguments are passed to BMS overlays.

Parameter Description
b the argument bytes to pass

Throws: XParmException
When this is not a BMS overlay or there is not enough space available in the XPARM area.


· parmGet

Summary  |  Top
   public final int parmGet(byte[] b) 

Copy parameter bytes out of the XPARM area. This is how arguments are returned from BMS overlays.

Parameter Description
b A byte[] to store the retrives parameter bytes.

Returns:
The number of bytes returned.


· pushProgram

Summary  |  Top
   public final void pushProgram(String prog) 

Push an EDX program name on the BMS program stack. The BMS program stack is popped and program executed when the current overlay and all pending SHELL calls have finished.

Parameter Description
prog the NAME,VOL of the edx program to push on the stack

Throws: XParmException
if this is not a BMS overlay or there is no room in the program stack.


· isBMSOverlay

Summary  |  Top
   public final boolean isBMSOverlay() 

Return true if this EDX program is a BMS overlay. The BMS overlay software uses a compact stub as a main program. The stub swaps overlay programs in and out. A BMS overlay has an extended API, especially SHELL, which suspends the current overlay while running another, then resumes.

Returns:
true if this EDX program is a BMS overlay.


· getBMSOverlayLevel

Summary  |  Top
   public int getBMSOverlayLevel() 

Return the disk stack offset of this BMSOverlay. Since EDX tasks can be suspended and overlaid by the BMS overlay system, an active task can have the same TCB address as a suspended task. Java objects that are associated with a particular EDX task, should therefore check this property.

Returns:
0 if this is not a BMS overlay.


All Packages  This Package  Class Hierarchy  Class Search  Index
Freshly brewed Java API Documentation automatically generated with polardoc Version 1.0.7