Навигация:
<< >> Оглавление Указатель

Приложения

Приложение А. Функции, константы и структуры RDS

А.5. Сервисные функции и макросы RDS

А.5.16. Работа с динамическими переменными

А.5.16.2. rdsCreateDynamicVar – создать динамическую переменную

Функция rdsCreateDynamicVar создает динамическую переменную указанного типа в указанном блоке.

    rdsCreateDynamicVarA(
    int Block,        // Место создания (RDS_DV*)
     VarName,  // Имя переменной (UTF8)
     VarType,  // Тип переменной (UTF8)
     Fixed,       // Запрет удаления
     Init      // Начальное значение (UTF8)
  );
    rdsCreateDynamicVarW(
    int Block,        // Место создания (RDS_DV*)
     VarName, // Имя переменной (UTF16)
     VarType, // Тип переменной (UTF16)
     Fixed,       // Запрет удаления
     Init     // Начальное значение (UTF16)
  );
  // 
    rdsCreateDynamicVar(
    int Block,        // Место создания (RDS_DV*)
     VarName, // Имя переменной (кодировка по умолчанию)
     VarType, // Тип переменной (кодировка по умолчанию)
     Fixed,       // Запрет удаления
     Init     // Начальное значение (кодировка по умолчанию)
  );

Тип указателя на эту функцию

RDS_pVISSBS (для UTF8) или RDS_pVIWsWsBWs (для UTF16)

Параметры

Block (int)
Одна из констант RDS_DV*, указывающих на блок, в котором динамическая переменная будет создана.
VarName (RDSCSTR, RDSWCSTR, RDSXCSTR)
Указатель на строку с именем создаваемой переменной.
VarType (, , )
Указатель на строку типа создаваемой переменной. Эта строка состоит из одного (для простых переменных) или нескольких (для структур и матриц) символов RDS_VARTYPE_*.
Fixed (BOOL)
TRUE, если удалять эту переменную разрешено только создавшему ее блоку, то есть блоку, вызвавшему эту функцию. FALSE, если удалить переменную может любой блок.
Init (, , )
Указатель на строку, содержащую описание значения переменной по умолчанию, составленное по правилам RDS (см. описание функции rdsSetBlockVarDefValueStr). В этом параметре можно передать NULL, если значение созданной переменной устанавливать не нужно.

Возвращаемое значение

Указатель на область данных созданной переменной или NULL, если создать переменную не удалось (например, если переменная с таким именем уже есть в указанном блоке).

Примечания

Эта функция создает новую динамическую переменную с именем VarName и типом VarType в вызвавшем функцию блоке (при Block==RDS_DVSELF), его родительской подсистеме (при Block==RDS_DVPARENT) или в корневой подсистеме (при Block==RDS_DVROOT). В параметре VarType передается строка типа переменной, составленная по правилам RDS: например, для вещественного числа – «D», для матрицы целых чисел – «MI», для структуры из двух вещественных чисел, как бы ни назывался тип этой структуры – «{DD}». Для полноценной работы с созданной переменной блок должен подписаться на нее, поэтому вместо этой функции сейчас чаще всего используется rdsCreateAndSubscribeDV.

См. также

rdsCreateAndSubscribeDV, RDS_DYNVARLINK, rdsSetBlockVarDefValueStr, rdsDeleteDynamicVar.


<< >> Оглавление Указатель