Copyright ©1995 by NeXT Computer, Inc.  All Rights Reserved.


Adopted By: a private class
Declared In: remote/transport.h

Protocol Description

An object that implements the NXDecoding protocol is passed as the portal argument for the decodeUsing: message of the NXTransport protocol.  The object implementing the decodeUsing: method should send the portal object messages from the NXDecoding protocol to decode the data required to instantiate a local copy of the encoded object.

Every method in the NXDecoding protocol corresponds to a method in the NXEncoding protocol, and is used to receive data encoded at the other end of a connection in order to move objects that adopt the NXTransport protocol.  See the Distributed Objects introduction for more information.

Instance Methods

decodeBytes:(void *)buffer count:(int)count

Decodes data (of size count bytes) into buffer.

decodeData:(void *)data ofType:(const char *)type

Decodes a data structure, whose fields are indicated by the character string type, into the buffer indicated by datatype is specified with the following format characters:

Format Character Data Type
c char
s short
i int
f float
d double
@ id
* char *
% NXAtom
! int; corresponding data won't be read or written
{<type>} struct
[<count><type>] array

decodeMachPort:(port_t *)portPointer

Decodes a Mach port and returns it in the variable indicated by portPointer.


Decodes and returns an object.  The object could have been encoded with either encodeObject: or encodeObjectBycopy:.

decodeVM:(void **)bufferPointer count:(int *)count

Decodes memory, returning the buffer in the variable indicated by bufferPointer and the size in the variable pointed to by count.