All Packages  This Package  Class Hierarchy  Class Search  Index

Class utah.npm.core.IPCPayload
java.lang.Object
   |
   +----utah.npm.core.IPCPayload

  Summary

public class  IPCPayload
     extends java.lang.Object
{
          // Fields 18
     public byte[] recvBuf;
     public int recvBufEnd;
     public int recvBufStart;
     public Object[] recvObjTab;
     public int recvObjTabEnd;
     public int recvObjTabStart;
     public Reference[] recvRefTab;
     public int recvRefTabEnd;
     public int recvRefTabStart;
     public byte[] sendBuf;
     public int sendBufEnd;
     public int sendBufStart;
     public Object[] sendObjTab;
     public int sendObjTabEnd;
     public int sendObjTabStart;
     public Reference[] sendRefTab;
     public int sendRefTabEnd;
     public int sendRefTabStart;

          // Constructors 1
     public IPCPayload();

          // Methods 1
     protected Object clone() throws CloneNotSupportedException, OutOfMemoryError;
}

IPCPayload defines the data to send in an IPC operation and/or to receive in an operation.

There are send/recv pairs for data (*Buf), NPM References (*RefTab), and arbitrary Java objects (*ObjTab). For each type of data, the associated *Start and *Length parameters define the start offset in the buffer and the end offset. After a successful receive, the recv*Start field will point to the end of the received data. After a successful send, the send*Start field will point to the end of the data sent. This means that for partially completed sends and receives, the IPCPayload buffers will be all set to resume the operation at the point of interruption.

There are no public methods in this class. Just set the defined objects as you need.

All of the return codes used are defined in the ThreadIPC class.

TODO: The copy function really should be native methods

Version:
NPMJava 0.5.0 April, 1998
Author:
Patrick Tullmann tullmann@cs.utah.edu

See Also: IPC, ThreadIPC




  Fields

· sendBuf

Summary  |  Top

   public byte[] sendBuf


· sendBufStart

Summary  |  Top
   public int sendBufStart


· sendBufEnd

Summary  |  Top
   public int sendBufEnd


· recvBuf

Summary  |  Top
   public byte[] recvBuf


· recvBufStart

Summary  |  Top
   public int recvBufStart


· recvBufEnd

Summary  |  Top
   public int recvBufEnd


· sendRefTab

Summary  |  Top
   public Reference[] sendRefTab


· sendRefTabStart

Summary  |  Top
   public int sendRefTabStart


· sendRefTabEnd

Summary  |  Top
   public int sendRefTabEnd


· recvRefTab

Summary  |  Top
   public Reference[] recvRefTab


· recvRefTabStart

Summary  |  Top
   public int recvRefTabStart


· recvRefTabEnd

Summary  |  Top
   public int recvRefTabEnd


· sendObjTab

Summary  |  Top
   public Object[] sendObjTab


· sendObjTabStart

Summary  |  Top
   public int sendObjTabStart


· sendObjTabEnd

Summary  |  Top
   public int sendObjTabEnd


· recvObjTab

Summary  |  Top
   public Object[] recvObjTab


· recvObjTabStart

Summary  |  Top
   public int recvObjTabStart


· recvObjTabEnd

Summary  |  Top
   public int recvObjTabEnd


  Constructors

· IPCPayload

Summary  |  Top

   public IPCPayload() 

Default constructor



  Methods

· clone

Summary  |  Top
   protected Object clone()  throws CloneNotSupportedException, OutOfMemoryError

Create a deep copy of this IPCPayload.

Returns:
a new IPCPayload object with copies of the entire buffers and buffer state of this payload.
Overrides:
clone in class Object


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