Приложения
Приложение А. Функции, константы и структуры 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*). На практике, в большинстве случаев, в применении этого макроса нет острой необходимости – все приведения типов всегда можно записать вручную.
См. также