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

Приложения

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

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

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

А.5.14.2. rdsBlockVarToMem – записать значение переменной блока в буфер в памяти

Функция rdsBlockVarToMem записывает значение какой-либо статической переменной указанного блока или всей его структуры переменных в динамически отводимую область памяти. Это значение может быть загружено обратно в переменную вызовом rdsBlockVarFromMem.

    rdsBlockVarToMem(
     Block,    // Идентификатор блока
    int VarNum,           // Номер переменной или -1
     Check,           // Записать данные типа переменной
    int *pSize            // Возвращаемый размер данных
  );

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

RDS_pVBhIBpI

Параметры

Block (RDS_BHANDLE)
Идентификатор блока, значение переменной которого нужно записать. Если в этом параметре передано значение NULL, функция будет работать с блоком, из модели которого она вызвана.
VarNum (int)
Порядковый номер переменной (начиная с нуля), значение которой нужно записать, или −1, если нужно записать значения всех переменных блока.
Check (BOOL)
TRUE – записывать вместе со значением переменной информацию о ее типе для проверки при загрузке функцией rdsBlockVarFromMem. FALSE – не записывать информацию о типе (данные займут меньше места, но надежность программы снизится).
pSize (int*)
Указатель на целую переменную, в которую функция запишет размер (в байтах) динамически отведенной области памяти.

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

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

Примечания

Эта функция, вместе с rdsBlockVarFromMem, позволяет сохранять значение переменной блока в память и восстанавливать его оттуда. Такую область памяти можно скопировать, сохранить на диск или передать по сети с тем, чтобы позже (или в другой схеме) считать эту область и восстановить из нее значение переменной. Динамическая область памяти, созданная этой функцией, должна быть обязательно освобождена вызовом rdsFree.

Пример

Пример использования функции rdsBlockVarToMem приведен в §2.16.1 руководства программиста.

См. также

rdsBlockVarFromMem, rdsFree.


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