LockVariable statement
Description
Locks a BASIC+ variable, so that its data is "coerced" to the proper data type. Used in conjunction with GetPointer.
NOTE: LockVariable has been deprecated in favor of EnsureVariable.
Syntax
LockVariable variable As VARIABLE_TYPE
Caution: In the syntax for LockVariable, VARIABLE_TYPE is not quoted, although it is a literal. VARIABLE_TYPE should not be quoted. Quoting this parameter will cause compiling errors and unpredictable results.
Parameters
LockVariable has the following parameters.
Parameter | Description |
---|---|
Variable | A BASIC+ variable name. The name cannot be an expression. |
VARIABLE_TYPE | Specifies the type of data referenced by variable. |
LockVariable is required because OpenInsight is an "untyped" language, and variables do not have specific data types, while calls to external routines require the variable to be a specific type. If the return value from GetPointer() is being assigned to a variable, LockVariable the variable first before passing it to GetPointer.
Data Types
The following table shows C data types and the corresponding OpenInsight Engine-level data types.
C data type | OpenEngine-level Data Type |
---|---|
Char | String. |
Byte, Ubyte | Long. |
Short, Ushort | Long. |
Long | Long. |
Float | Double. |
Double | Double. |
LPVoid | Long. |
LPChar | String. |
LPByte, LPUByte | Long. |
LPShort, LPUShort | Long. |
LPLong | Long. |
LPDouble | Double. |