Приложения
Приложение А. Функции, константы и структуры RDS
А.5. Сервисные функции и макросы RDS
А.5.10. Загрузка и сохранение данных блока
А.5.10.4. rdsWriteBlockData – записать данные блока в двоичном формате
Функция rdsWriteBlockData записывает двоичные данные блока – при загрузке они могут быть считаны функцией rdsReadBlockData.
BOOL RDSCALL rdsWriteBlockData( LPVOID Buffer, // Указатель на начало области памяти int Size // Размер данных );
Тип указателя на эту функцию
RDS_BpVI
Параметры
- Buffer (LPVOID)
- Указатель на начало области памяти, в которой находятся записываемые данные.
- Size (int)
- Размер записываемых данных в байтах.
Возвращаемое значение
TRUE – данные записаны успешно, FALSE – ошибка записи.
Примечания
Эта функция может вызываться только из функции модели блока в момент реакции на события записи данных RDS_BFM_SAVEBIN и записи состояния RDS_BFM_SAVESTATE в двоичном формате. Во всех остальных случаях функция немедленно возвращает FALSE.
При сохранении данных или состояния блока в двоичном формате данные, переданные в функцию rdsWriteBlockData, записываются либо во внутренний буфер, либо непосредственно в файл. Данные пишутся последовательно, каждый вызов функции добавляет к записанным данным Size байтов начиная с указателя Buffer. Эта функция очень похожа на большинство функций стандартных библиотек, записывающих данные в файл, только в ней не нужно указывать дескриптор файла или другого получателя данных – он определяется RDS и инициализируется перед вызовом реакций на события RDS_BFM_SAVEBIN и RDS_BFM_SAVESTATE.
Пример
Примеры использования функции rdsWriteBlockData приведены в §2.8.2, §2.12.4 и §2.14.3 руководства программиста.
См. также