GetTempDirectory

Purpose

Get the pathname of the temporary directory provided by the scheduler for the current job. The pathname is an empty string if the scheduler does not provide a temporary directory for the current job.

Signature

extern "C" bool FN_PREFIX_GetTempDirectory(char * buffer, unsigned int* length);

Arguments

buffer: Pointer to a character buffer to contain the temporary directory path name or NULL.

length: Pointer to a location to contain the length of the buffer. Must be a valid pointer to an unsigned int.

Return Value

If argument buffer is NULL, then then required length of the buffer is stored in the location to which argument length points, and true is returned.

If argument buffer is not NULL, then the value to which argument length points (the buffer length) is checked. If it is large enough to contain the pathname of the temporary directory, including the terminal null byte, then the pathname is copied to the buffer and true is returned. If the buffer length is insufficient for the pathname of the temporary directory, then the buffer is unchanged, and false is returned.

Note:

To get the pathname of the temporary directory, the infrastructure first calls this function with a NULL buffer, and obtains the required length of the buffer for the pathname. After creating a buffer of the appropriate size, the infrastructure calls this function again, passing the pointer to the buffer in the buffer argument and a pointer to the size of the buffer in the length argument.