niRFSA_UnlockSession

NI RF Vector Signal Analyzers

niRFSA_UnlockSession

ViStatus = niRFSA_UnlockSession( ViSession vi, ViBoolean *callerHasLock);

Purpose

Releases a lock obtained on an NI-RFSA device session by calling the niRFSA_LockSession function.

Parameters

Input
Name Type Description
vi ViSession Identifies your instrument session. vi is obtained from the niRFSA_init or the niRFSA_initWithOptions functions and identifies a particular instrument session.
Output
Name Type Description
callerHasLock ViBoolean* This parameter serves as a convenience. If you do not want to use this parameter, pass VI_NULL.

Use this parameter in complex functions to keep track of whether you obtain a lock and therefore need to unlock the session. Pass the address of a local ViBoolean variable. In the declaration of the local variable, initialize it to VI_FALSE. Pass the address of the same local variable to any other calls you make to this function or niRFSA_UnlockSession in the same function.

niRFSA_LockSession and niRFSA_UnlockSession each inspect the current value and take the following actions:
  • If the value is VI_TRUE, niRFSA_LockSession does not lock the session again. If the value is VI_FALSE, niRFSA_LockSession obtains the lock and sets the value of the parameter to VI_TRUE.
  • If the value is VI_FALSE, niRFSA_UnlockSession does not attempt to unlock the session. If the value is VI_TRUE, niRFSa_UnlockSession releases the lock and sets the value of the parameter to VI_FALSE.
Thus, you can call niRFSA_UnlockSession at the end of your function regardless of whether you actually have the lock.

Return Value

Name Type Description
status ViStatus Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. You examine the status code from each call to an instrument driver function to determine if an error occurred.

To obtain a text description of the status code, call the niRFSA_error_message function. To obtain additional information about the error condition, call the niRFSA_GetError function. To clear the error information from the driver, call the niRFSA_ClearError function.

The general meaning of the status code is as follows:

Value
Meaning
0 Success
Positive Values Warnings
Negative Values Errors