GB_STREAM
typedef
  struct GB_STREAM {
    GB_STREAM_DESC *desc;
    long _reserved;
    long _free[6];
    }
  GB_STREAM;
If you create a class that inherits the 
Stream class, then you must
declare your class structure this way:
typedef
  struct {
    GB_BASE object;
    GB_STREAM stream;
    }
  MyClass;
The 
_free array is a space where you can store data associated with the stream,
like the opened file descriptor for example.
Do not use this structure directly, but declares a specific stream structure having
the same size and beginning with the 
GB_STREAM_DESC field and the 
_reserved field.
The 
desc field must points at a structure that points at the implementation functions of your stream.
Streams of the same type should share the same description structure. See 
GB_STREAM_DESC
for more details.
See also