- optional
NULL may be passed instead of a pointer to a location.
- out
Parameter for returning results. Default is transfer full.
- out callee-allocates
Out parameter, where callee must allocate storage.
- out caller-allocates
Out parameter, where caller must allocate storage.