Meaning of __in , __out, __in_opt
These are Microsoft extensions that annotate the parameters for
__in: input parameter
__out output parameter
__in_opt: optional input parameter
__in: input parameter
__out output parameter
__in_opt: optional input parameter