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

Описания RDS

Приложения

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

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

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

А.5.13.7. rdsCallBlockFunction – прямой вызов функции блока

# Приложения

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

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

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

##### А.5.13.7. rdsCallBlockFunction – прямой вызов функции блока

Функция rdsCallBlockFunction вызывает указанную функцию указанного блока и не возвращает управление вызвавшей программе, пока модель вызванного блока не завершится.

      int RDSCALL rdsCallBlockFunction(
        RDS_BHANDLE Block,    // Вызываемый блок
        int FuncId,           // Идентификатор функции
        LPVOID pParams        // Указатель на параметры функции
      );

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

RDS_IBhIpV

Параметры

Block(RDS_BHANDLE)
  Идентификатор блока, функция которого вызывается (модель этого блока будет реагировать на событие RDS_BFM_FUNCTIONCALL).
FuncId(int)
  Целый идентификатор вызываемой функции, полученный при ее регистрации вызовом rdsRegisterFunction.
pParams(LPVOID)
  Указатель на параметры функции (этот указатель передается модели вызванного блока). Может равняться NULL.

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

Целое число, возвращенное функцией модели вызванного блока.

Примечания

Вызов этой функции приводит к немедленному вызову модели блока Block для реакции на событие RDS_BFM_FUNCTIONCALL, при этом поля структуры данных функции RDS_FUNCTIONCALLDATA, указатель на которую передается в модель блока в параметре ExtParam, будут заполнены следующим образом:

Поле | Значение
--- | ---
int Function | значение параметра FuncId
LPVOID Data | значение параметра pParams
RDS_BHANDLE Caller | идентификатор блока, из модели которого вызвана rdsCallBlockFunction
BOOL Broadcast | FALSE
int BroadcastCnt | 0
BOOL Stop | FALSE
BOOL Delayed | FALSE
DWORD DataBufSize | 0

Пример

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

См. также

RDS_BFM_FUNCTIONCALL, RDS_FUNCTIONCALLDATA, rdsQueueCallBlockFunction, rdsBroadcastFunctionCallsEx, rdsRegisterFunction.