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

Приложения

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

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

А.5.14. Общие функции работы с переменными блока

А.5.14.5. rdsCopyVarGeneral – копировать значение переменной в другую переменную

Функция rdsCopyVarGeneral копирует значение одной переменной в другую.

    rdsCopyVarGeneral(
     DestVar,  // Переменная-получатель
     DestBaseAddr,  // Базовый адрес получателя
     SrcVar,   // Переменная-источник
     SrcBaseAddr    // Базовый адрес источника
  );

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

RDS_BVhpVVhpV

Параметры

DestVar (RDS_VHANDLE)
Идентификатор переменной-получателя данных.
DestBaseAddr (LPVOID)
Базовый адрес переменной-получателя данных в дереве, то есть указатель на начало области, которую эта переменная занимает в дереве переменных блока (см. §2.5.1 руководства программиста).
SrcVar (RDS_VHANDLE)
Идентификатор переменной-источника данных.
SrcBaseAddr (LPVOID)
Базовый адрес переменной-источника данных в дереве переменных блока.

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

TRUE – значение переменной скопировано успешно, FALSE – произошла ошибка (недопустимые параметры функции).

Примечания

Эта функция позволяет скопировать значение одной переменной в другую, если для каждой из переменных известен уникальный идентификатор типа RDS_VHANDLE и базовый адрес этой переменной. Идентификатор статической переменной блока можно получить вызовом rdsGetBlockVar или rdsFindBlockVar, идентификатор динамической хранится в структуре RDS_DYNVARLINK, создаваемой RDS при подписке на эту динамическую переменную.

Чаще всего модели блоков работают с переменными непосредственно по адресам, и в использовании функции rdsCopyVarGeneral нет необходимости. Она может пригодиться в тех случаях, когда блок имеет изменяемую структуру переменных (например, настраиваемую пользователем) и при этом выполняет над своими переменными однотипные действия (например, копирует значение входа на один из выходов в зависимости от какого-либо условия).

См. также

rdsCopyVarArray, rdsCopyRuntimeType, rdsGetBlockVar, rdsFindBlockVar, RDS_DYNVARLINK, rdsSubscribeToDynamicVar, rdsCreateAndSubscribeDV, rdsGetBlockVarBase.


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