[operations] [attributes] [fields] [template] [definition]
[implementation] [documentation]
To use the search tool you need to use a browser which supports JAVA (c)

[next] [prev] [superclass] [next peer] [prev peer] [subclass] [index] [hierarchy]

MemoryReader

inherits from Object
inherits from Stream
inherits from Reader

Object <- MemoryReader



Operations

Get list of all operations

DoSeekReader
Init
NewMemoryReader


Attributes

Get list of all attributes

Class MemoryReader defines no new attributes.


Fields

Field Type
Stream: target: Object
Reader: readerBuffer: Buffer
start: Unsigned
lowPosition: Unsigned
highPosition: Unsigned
currentPosition: Unsigned
closed: Boolean
seekable: Boolean
intermittent: Boolean
MemoryReader: sourceAddress: Pointer
sourceCount: Unsigned


Instance template

instance MemoryReader tag;
         target: nilObject;
   readerBuffer: nilObject;
          start: 0;
    lowPosition: 0;
   highPosition: 0;
currentPosition: 0;
         closed: false;
       seekable: false;
   intermittent: false;
  sourceAddress: nil;
    sourceCount: 0;
end instance;

Class definition

Define Class MemoryReader;
    inherits from Object;
    inherits from Stream, Reader;

    field sourceAddress:    Pointer;
        // the address of the first byte of memory to be read
    field sourceCount:      Unsigned;
        // the number of bytes available to be read

    intrinsic NewMemoryReader(address: Pointer; count: Unsigned; nearThis: Object): MemoryReader;
        // returns a reader on "count" bytes of memory at "address"

    overrides DoSeekReader;
        // fills the buffer with bytes starting at sourceAddress[pos]
    overrides Init;
        // sets seekable to be true
end class;