2.2.15 PARAMFLAGS Parameter Feature Constants

The PARAMFLAGS enumeration values are used in the wParamFlags field of a PARAMFLAGS to identify the features of a method parameter, as specified in section 2.2.40.

The following parameter feature constants are defined in the PARAMFLAGS enumeration.

 typedef  enum tagPARAMFLAGS
 {
   PARAMFLAG_NONE = 0,
   PARAMFLAG_FIN = 0x1,
   PARAMFLAG_FOUT = 0x2,
   PARAMFLAG_FLCID = 0x4,
   PARAMFLAG_FRETVAL = 0x8,
   PARAMFLAG_FOPT = 0x10,
   PARAMFLAG_FHASDEFAULT = 0x20,
   PARAMFLAG_FHASCUSTDATA = 0x40
 } PARAMFLAGS;

PARAMFLAG_NONE:  The behavior of the parameter is not specified.

PARAMFLAG_FIN:  MUST be set if the parameter was declared by using the [in] attribute (for more information, see section 2.2.49.6).

PARAMFLAG_FOUT:  MUST be set if the parameter was declared by using the [out] attribute (for more information, see section 2.2.49.5).

PARAMFLAG_FLCID:  MUST be set if the parameter was declared by using the [lcid] attribute (for more information, see section 2.2.49.6).

PARAMFLAG_FRETVAL:  MUST be set if the parameter was declared by using the [retval] attribute (for more information, see section 2.2.49.6).

PARAMFLAG_FOPT:  MUST be set if the parameter was declared by using the [optional] attribute (for more information, see section 2.2.49.6). MUST be set if the PARAMFLAG_FHASDEFAULT flag is set.

PARAMFLAG_FHASDEFAULT:  MUST be set if the parameter was declared by using the [defaultvalue] attribute (for more information, see section 2.2.49.6).

PARAMFLAG_FHASCUSTDATA:  MAY<2> be set if the parameter was declared by using the [custom] attribute (for more information, see section 2.2.49.2).