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

Описания RDS

Приложения

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

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

А.5.35. Функции поддержки автоматической компиляции моделей

А.5.35.4. rdscompGetModelBlock – обслуживаемый моделью блок по номеру

# Приложения

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

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

#### А.5.35. Функции поддержки автоматической компиляции моделей

##### А.5.35.4. rdscompGetModelBlock – обслуживаемый моделью блок по номеру

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

      RDS_BHANDLE RDSCALL rdscompGetModelBlock(
        RDS_MODELHANDLE Model,          // Модель
        int BlockNum,                   // Номер блока
        RDS_PBLOCKDESCRIPTION pDescr    // Описание блока
    );

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

RDS_BhMhIBd

Параметры

Model(RDS_MODELHANDLE)
  Идентификатор автокомпилируемой модели, для которой нужно найти обслуживаемый блок.
BlockNum(int)
  Номер блока во внутреннем списке блоков, обслуживаемых моделью Model. Блоки в списке нумеруются начиная с нуля.
pDescr(RDS_PBLOCKDESCRIPTION)
  Указатель на структуру описания RDS_BLOCKDESCRIPTION, которую функция должна заполнить параметрами найденного блока. Если вызывающей программе не нужно описание блока, в этом параметре можно передать NULL.

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

Идентификатор найденного блока (RDS_BHANDLE) или NULL, если модель в данный момент обслуживает меньше BlockNum+1 блоков (то есть номер BlockNum выходит за пределы размера списка блоков модели).

Примечания

Эта функция обычно используется для перебора всех блоков, обслуживаемых конкретной моделью, и выполнения с ними каких-либо действий (например, присвоения им описанной в модели структуры статических переменных). Параметр BlockNum при этом изменяется от нуля до значения, на единицу меньшего поля NBlocks структуры данных модели RDS_COMPMODELDATA.

Следует помнить, что номер во внутреннем списке модели, который получит блок, определяется внутренней логикой RDS и не может быть определен заранее, при этом этот номер может, к тому же, изменяться со временем.

Пример

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

См. также

RDS_COMPMODELDATA, RDS_BLOCKDESCRIPTION.