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

Приложения

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

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

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

А.5.14.13. rdsGetRuntimeTypeData – получить фактические данные переменной произвольного типа

Функция rdsGetRuntimeTypeData служит для доступа к фактическим данным переменной произвольного типа, если у нее в данный момент есть фактический тип. Работа с переменными произвольного типа подробно рассматривается в §2.5.6 руководства программиста.

    rdsGetRuntimeTypeDataA(
     BaseAddr,       // Базовый адрес переменной
     *pRealTypeStr   // Возвращаемая строка типа (UTF8)
  );
    rdsGetRuntimeTypeDataW(
     BaseAddr,       // Базовый адрес переменной
     *pRealTypeStr  // Возвращаемая строка типа (UTF16)
  );
  // 
    rdsGetRuntimeTypeData(
     BaseAddr,       // Базовый адрес переменной
     *pRealTypeStr  // Возвращаемая строка типа (кодировка по умолчанию)
  );

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

RDS_pVpVpS (для UTF8) или RDS_pVpVpWs (для UTF16)

Параметры

BaseAddr (LPVOID)
Базовый адрес переменной произвольного типа в дереве, то есть указатель на блок из восьми байтов, которые эта переменная занимает в дереве переменных блока.
pRealTypeStr (RDSSTR*, RDSWSTR*, RDSXSTR*)
Указатель на переменную типа (char*) или (wchar_t*), в которую функция запишет указатель на созданную ей динамическую строку, содержащую описание фактического типа, который в данный момент имеет переменная. Эта строка состоит из одного (для простых переменных) или нескольких (для сложных переменных) стандартных символов, используемых в RDS для указания типа переменной. Если строка типа не нужна вызывающей программе, в этом параметре можно передать NULL.

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

Указатель на начало области данных переменной какого-либо фактического типа, созданной внутри переменной произвольного типа. Если переменная в данный момент не имеет фактического типа, функция вернет NULL.

Примечания

Эта функция, в основном, используется для получения строки фактического типа переменной произвольного типа – базовый адрес переменной фактического типа обычно можно получить и без вызова функций.

Динамическая строка, записанная функцией rdsGetRuntimeTypeData по указателю из параметра pRealTypeStr (если он не равен NULL), должна быть обязательно освобождена функцией rdsFree.

Пример

Пример использования функции rdsGetRuntimeTypeData приведен в §2.5.6 руководства программиста, там же описывается принцип размещения переменных произвольного типа в памяти.

См. также

rdsClearRuntimeType, rdsSetRuntimeType, rdsFree.


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