[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]

MacStream

inherits from PositionStream

Object <- PositionStream <- MacStream



Operations

Get list of all operations

Close
Flush
LookupVRefNum
MacintoshRomanToUnicode
MacintoshShiftJISToUnicode
Open
OpenMacintoshFile
Read
TextFromMacintoshString
TextToMacintoshString
UnicodeToMacintoshRoman
Write


Attributes

Get list of all attributes

Length
Length
Position
Position


Fields

Field Type
Stream: target: Object
PositionStream: position: Unsigned
length: Unsigned
MacStream: refNum: SignedShort


Instance template

instance MacStream tag;
         target: nilObject;
       position: 0;
         length: 0;
         refNum: 0;
end instance;

Class definition

Define Class MacStream;
    inherits from PositionStream;

    field refNum: SignedShort; 
        // HFS file refNum, when open

    overrides Open, Close;

    operation OpenMacintoshFile(volumeRefNum: SignedShort; directoryID: Signed;
        fileName: HasText; forWriting: Boolean; permissions: SignedByte;
        creator: Signed; type: Signed);

    overrides Read, Write;
    overrides Flush;

    overrides Length, SetLength;
    overrides Position, SetPosition;

    intrinsic LookupVRefNum(fileRefNum: SignedShort; var vRefNum: SignedShort): SignedShort;

    intrinsic MacintoshShiftJISToUnicode(source: ReadOnlyUnsignedByteArrayPointer;
        var inputLength: Unsigned; destination: CharactersPointer; var outputLength: Unsigned);
    intrinsic MacintoshRomanToUnicode(source: ReadOnlyUnsignedByteArrayPointer;
        destination: CharactersPointer; characterCount: Unsigned);
    intrinsic UnicodeToMacintoshRoman(source: ReadOnlyCharactersPointer;
        destination: UnsignedByteArrayPointer; characterCount: Unsigned);
    
    intrinsic TextToMacintoshString(source: HasText; string: Pointer);
    intrinsic TextFromMacintoshString(string: Pointer): Text;
end class;