Задайте реализацию возможности соединения, которая включает разработчика, средство запуска и компоненты коммуникатора
Класс rtw.connectivity.Config
задает действия, требуемые для выполнения процессора в цикле (PIL) симуляция.
rtw.connectivity.Config(componentArgs, builder, launcher,
communicator)
создает объект rtw.connectivity.Config
с этими аргументами:
Объект componentArgs
- rtw.connectivity.ComponentArgs
Объект builder
- rtw.connectivity.Builder
, например, объект rtw.connectivity.MakefileBuilder
.
Объект launcher
- rtw.connectivity.Launcher
communicator
– rtw.connectivity.Communicator
, например, объект rtw.connectivity
.RtIOStreamHostCommunicator
.
Задавать реализацию возможности соединения:
Создайте подкласс rtw.connectivity.Config
, который создает экземпляры ваших классов компонента возможности соединения:
rtw.connectivity.MakefileBuilder
rtw.connectivity.Launcher
rtw.connectivity.RtIOStreamHostCommunicator
Задайте конструктора для своего подкласса:
function this = myConfig(componentArgs)
Когда программное обеспечение создает экземпляр вашего подкласса rtw.connectivity.Config
, это обеспечивает экземпляр класса rtw.connectivity.ComponentArgs
в качестве единственного аргумента конструктора. Если вы хотите протестировать свой подкласс rtw.connectivity.Config
вручную, можно создать объект rtw.connectivity.ComponentArgs
передать в качестве аргумента конструктора.
После инстанцирования разработчика, средства запуска и объектов коммуникатора в вашем подклассе, вызывают конструктора суперкласса rtw.connectivity.Config
, чтобы задать вашу полную целевую настройку возможности соединения. Например:
this@rtw.connectivity.Config(componentArgs,... builder, launcher, communicator);
Опционально, в течение времени выполнения, профилируя, используйте метод setTimer
, чтобы указать ваш аппаратный таймер. Например, если вы задали таймер в заменяющей таблице кода, вставьте следующую строку:
this.setTimer('myCrlTable')
myCrlTable
является именем заменяющей таблицы кода, которая должна быть в месте на пути поиска файлов MATLAB®.Можно также оценить и удалить издержки инструментирования из измерений времени выполнения. Например:
this.activateOverheadFiltering(true); this.runOverheadBenchmark(true); this.setOverheadBenchmarkSteps(50);
Укажите свое имя подкласса, например, myPIL.ConnectivityConfig
при помощи класса rtw.connectivity.ConfigRegistry
. Инфраструктура PIL инстанцирует вашего подкласса как требуется. Файл rtwTargetInfo.m
(для MATLAB) или механизм sl_customization.m
(для Simulink®) задает подходящую настройку возможности соединения для использования с конкретным компонентом PIL (и его конфигурация модели). Подкласс может также выполнить дополнительную валидацию на конструкции. Например, можно использовать путь компонента, возвращенный методом getComponentPath
аргумента конструктора componentArgs
, чтобы запросить и подтвердить параметры, сопоставленные с компонентом PIL под тестом.
rtw.connectivity.Config
в возможности соединения PILДля примера, который показывает, как использовать этот объект в подготовке возможности соединения PIL, см.:
rtw.connectivity.ComponentArgs
| rtw.connectivity.Launcher
| rtw.connectivity.MakefileBuilder
| rtw.connectivity.RtIOStreamHostCommunicator