Gambas Documentation - /dev/api/name/gb_stream

/dev/api/name/gb_stream

# 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

- /wiki/api/cat/stream