A data type name beginning with "P" (for example, PERRORCODE) is likely to be a pointer to another data type (in this instance, ERRORCODE).
In the data type summary, Data Types, no explicit "typedefs" are shown for pointers; therefore, if no data type definition can be found in the summary for a data type name "Pxxxxxx", it represents a pointer to the data type "xxxxxx", for which a definition should be found in the reference.
The implicit type definition needed for such a pointer "Pxxxxxx" is:
typedef xxxxxx *Pxxxxxx;
Such definitions are provided in the header files.