Текущий раздел:

Описания RDS

Приложения

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

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

А.5.13. Вызов функций блоков

А.5.13.2. Макрос RDS_FUNCPARAMPVOID – поле параметра функции

# Приложения

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

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

#### А.5.13. Вызов функций блоков

##### А.5.13.2. Макрос RDS_FUNCPARAMPVOID – поле параметра функции

Макрос RDS_FUNCPARAMPVOID предназначен для доступа к полю Data структуры параметров функции RDS_FUNCTIONCALLDATA, если указатель на эту структуру имеет неправильный тип.

      RDS_FUNCPARAMPVOID(
        pFuncData    // Указатель на RDS_FUNCTIONCALLDATA
      )

Определение

      #define RDS_FUNCPARAMPVOID(pFuncData) \
        (((RDS_PFUNCTIONCALLDATA)(pFuncData))->Data)

Параметр

pFuncData(указатель на RDS_FUNCTIONCALLDATA)
  Указатель на структуру данных функции RDS_FUNCTIONCALLDATA, имеющий неправильный тип.

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

Значение поля Data структуры данных функции, находящейся по переданному указателю.

Примечания

Этот макрос используется достаточно редко. Единственное его назначение – несколько сократить запись приведения третьего параметра (ExtParam) функции модели блока при реакции на событие RDS_BFM_FUNCTIONCALL, в котором передается указатель на структуру данных функции RDS_FUNCTIONCALLDATA, к нужному типу. В отличие от макроса RDS_FUNCPARAMCAST, значение поля Data, возвращаемое этим макросом, не приводится ни к какому типу и остается указателем общего вида (void*). На практике, в большинстве случаев, в применении этого макроса нет острой необходимости – все приведения типов всегда можно записать вручную.

См. также

RDS_FUNCTIONCALLDATA, RDS_FUNCPARAMCAST.