Приложения
Приложение А. Функции, константы и структуры RDS
А.5. Сервисные функции и макросы RDS
А.5.13. Вызов функций блоков
А.5.13.11. rdsRegisterFuncProvider – регистрация блока как исполнителя функции
Функция rdsRegisterFuncProvider регистрирует вызвавший ее блок в качестве исполнителя функции с указанным идентификатором. После этого другие блоки схемы смогут легко найти этот блок.
int RDSCALL rdsRegisterFuncProvider( int FuncId, // Идентификатор функции BOOL ChildrenOnly // Только для вложенных блоков );
Тип указателя на эту функцию
RDS_IIB
Параметры
- FuncId (int)
- Целый идентификатор функции, полученный при ее регистрации вызовом rdsRegisterFunction.
- ChildrenOnly (BOOL)
- Этот параметр используется только тогда, когда функция rdsRegisterFuncProvider вызывается из модели подсистемы, в противном случае он игнорируется. Если в этом параметре передано значение TRUE, подсистема будет зарегистрирована как исполнитель функции только для блоков, находящихся внутри нее (на всех уровнях вложенности). Если в параметре передано FALSE, подсистема будет зарегистрирована как исполнитель функции не только для своих внутренних блоков, но и для всех блоков и подсистем, находящихся в одной с ней подсистеме («соседей» по подсистеме) и для всех их внутренних блоков.
Возвращаемое значение
Ненулевое значение при успешной регистрации, ноль при ошибке.
Примечания
Вызов этой функции регистрирует вызвавший блок в качестве исполнителя указанной функции для всех блоков, находящихся в одной с ним подсистеме и во всех вложенных подсистемах на всех уровнях иерархии (за исключением случая, когда rdsRegisterFuncProvider вызвана из модели подсистемы и в параметре ChildrenOnly передано TRUE – в этом случае доступ к исполнителю получат только внутренние блоки этой подсистемы). Любой блок может подписаться на идентификатор зарегистрированного исполнителя функции вызовом rdsSubscribeToFuncProvider.
Пример
Пример использования функции rdsRegisterFuncProvider приведен в §2.13.6 руководства программиста.
См. также
rdsUnregisterFuncProvider, rdsSubscribeToFuncProvider, rdsRegisterFunction.