OutputObject is the interface used by the
presentation block to give programming language typed data to
the encoding block to be encoded and sent in a message.
The implementation of an
OutputObject contains the
encoded data. When the presentation block gives programming language
typed data to
OutputObject is responsible for converting
that data to the encoded representation of the data for a particular
A particular encoding would subclass
OutputObject. The subclass would provide methods to set
the data types appropriate to the presentation block (e.g., simple
types such as int or boolean, all the way to any type derived from
Note: the protocol block may also use the
set header metadata.