Функции выходного сигнала

LibBlockAssignOutputSignal (portIdx, ucv, lcv, sigIdx, rhs)

На основе номера выходного порта (portIdx), переменная контроля за работой пользователей (ucv), контрольная переменная цикла (lcv), индекс сигнала (sigIdx), и место назначения выходного сигнала, LibBlockAssignOutputSignal присваивает выход блока заданному значению правой стороны, (rhs).

Смотрите LibBlockAssignOutputSignal в customstoragelib.tlc.

LibBlockNumOutputPorts (блок)

Возвращается количество портов вывода данных блока (исключает управление и порты состояния).

Смотрите LibBlockNumOutputPorts в blocklib.tlc.

LibBlockOutputPortIndexMode (блок, pidx)

Цель

Определяет режим индексации выходного порта блока.

Описание

Если выходной порт блока установлен как порт индекса, и его основа индексации отмечена как основанная на нуле или на основе одна, эта информация записана в model.rtw файл. LibBlockOutputPortIndexMode запрашивает основу индексации, чтобы перейти к различному коду согласно тому, какова основа индексации выходного порта.

Пример

%if LibBlockOutputPortIndexMode(block, idx) == "Zero-based"
  ...
%elseif LibBlockOutputPortIndexMode(block, idx) == "One-based"
  ...
%else
  ...
%endif

Аргументы

block — Запись блока

pidx — Индекс порта

Возвращается

"" для порта неиндекса и "Zero-based" или "One-based" в противном случае.

Смотрите LibBlockOutputPortIndexMode в blkiolib.tlc.

LibBlockOutputSignal (portIdx, ucv, lcv, sigIdx)

На основе номера выходного порта (portIdx), переменная контроля за работой пользователей (ucv), контрольная переменная цикла (lcv), индекс сигнала (sigIdx), и место назначения выходного сигнала, LibBlockOutputSignal возвращает ссылку на выходной сигнал блока.

Возвращенным значением является допустимый lvalue (значение левой стороны) для выражения. Выходное место назначения блока может быть местоположением в векторе блока I/O (вход другого блока), вектор состояния или внешний выход.

Примечание

Не используйте LibBlockOutputSignal получить доступ к адресу выходного сигнала.

Генератор кода отслеживает, когда к переменной (например, сигнал или параметр) получает доступ его адрес. Чтобы получить доступ к адресу выходного сигнала, используйте LibBlockOutputSignalAddr как в следующем примере:

%assign yAddr = LibBlockOutputSignalAddr(0, "", lcv, sigIdx)
x = %<yAddr>;

Смотрите LibBlockOutputSignal в blkiolib.tlc.

LibBlockOutputSignalAddr (portIdx, ucv, lcv, sigIdx)

Возвращает строку, которая обеспечивает адрес памяти заданного сигнала выходного порта блока.

Когда адрес выходного сигнала требуется, необходимо использовать LibBlockOutputSignalAddr вместо того, чтобы брать адрес, который возвращен LibBlockOutputSignal. Например, LibBlockOutputSignal может возвратить литеральную константу, такой как 5 (т.е. инвариантный выходной сигнал). Когда LibBlockOutputSignalAddr называется на инвариантном сигнале, сигнал объявляется как const вместо того, чтобы быть помещенным как литеральная константа в сгенерированный код.

Обратите внимание на то, что различающийся LibBlockOutputSignal, последний аргумент, sigIdx, не перегружается. Следовательно, если выходной сигнал является комплексным, адрес комплексного контейнера возвращен.

Пример

Чтобы получить адрес широкого выходного сигнала и передать его функции пользователя для обработки, вы могли использовать

%assign u = LibBlockOutputSignalAddr(0, "", "", 0)
%assign y = LibBlockOutputSignal(0, "", "", 0)
%<y> = myfcn (%<u>);

Смотрите LibBlockOutputSignalAddr в blkiolib.tlc.

LibBlockOutputSignalAliasedThruDataTypeName
(portIdx, reim)

Возвращает строку имени типа (например, int_T, ... creal_T) из искаженного типа данных, соответствующего заданному выходному порту блока.

Задайте reim аргумент как "" если вы хотите полное имя типа сигнала. Например, если reim == "" и первый выходной порт является действительным и комплексным, тип данных, помещенный в dtname creal_T:

%assign dtname = LibBlockOutputSignalAliasedThroughDataTypeName(0x,"")

Задайте reim аргумент как tRealPart если вы хотите необработанное имя типа элемента. Например, если reim == tRealPart и первый выходной порт является действительным и комплексным, возвращенным именем типа данных является real_T.

%assign dtname = LibBlockOutputSignalAliasedThroughDataTypeName(0,tRealPart)

Смотрите LibBlockOutputSignalAliasedThruDataTypeName в blkiolib.tlc.

LibBlockOutputSignalBeingMerged (portIdx)

Возвращается, соединяется ли заданный выходной порт с блоком Merge.

Смотрите LibBlockOutputSignalBeingMerged в blkiolib.tlc.

LibBlockOutputSignalConnected (portIdx)

Возвращается 1, если заданный выходной порт соединяется с блоком кроме блока Ground и 0 в противном случае.

Смотрите LibBlockOutputSignalConnected в blkiolib.tlc.

LibBlockOutputSignalDataTypeId (portIdx)

Возвращает числовой ID, соответствующий типу данных заданного выходного порта блока.

Если сигнал выходного порта является комплексным, LibBlockOutputSignalDataTypeId возвращает тип данных действительного (или мнимое) часть сигнала.

Смотрите LibBlockOutputSignalDataTypeId в blkiolib.tlc.

LibBlockOutputSignalDataTypeName (portIdx, reim)

Возвращает строку имени типа (например, int_T... creal_T) из типа данных, соответствующего заданному выходному порту блока.

Задайте reim аргумент как "" если вы хотите полное имя типа сигнала. Например, если reim=="" и первый выходной порт является действительным и комплексным, имя типа данных, помещенное в dtname creal_T.

%assign dtname = LibBlockOutputSignalDataTypeName(0x,"")

Задайте reim аргумент как tRealPart если вы хотите необработанное имя типа элемента. Например, если reim==tRealPart и первый выходной порт является действительным и комплексным, возвращенным именем типа данных является real_T.

%assign dtname = LibBlockOutputSignalDataTypeName(0,tRealPart)

Смотрите LibBlockOutputSignalDataTypeName в blkiolib.tlc.

LibBlockOutputSignalDimensions (portIdx)

Возвращает размерности заданного выходного порта блока.

Смотрите LibBlockOutputSignalDimensions в blkiolib.tlc.

LibBlockOutputSignalIsComplex (portldx)

Возвращается 1, если заданный выходной порт блока является комплексным, 0 в противном случае.

Смотрите LibBlockOutputSignalIsComplex в blkiolib.tlc.

LibBlockOutputSignalIsExpr (portldx)

Возвращает 1 (TRUE), если выходной сигнал является выражением и 0 (FALSE) в противном случае.

Смотрите LibBlockOutputSignalIsExpr в blkiolib.tlc.

LibBlockOutputSignalIsFrameData (portIdx)

Возвращается 1, если заданный выходной порт блока является базирующейся системой координат, 0 в противном случае.

Смотрите LibBlockOutputSignalIsFrameData в blkiolib.tlc.

LibBlockOutputSignalLocalSampleTimeIndex
(portIdx)

Возвращает локальный индекс шага расчета, соответствующий заданному выходному порту блока.

Смотрите LibBlockOutputSignalLocalSampleTimeIndex в blkiolib.tlc.

LibBlockOutputSignalNumDimensions (portIdx)

Возвращает количество размерностей заданного выходного порта блока.

Смотрите LibBlockOutputSignalNumDimensions в blkiolib.tlc.

LibBlockOutputSignalOffsetTime (portIdx)

Возвращает время смещения, соответствуя заданному выходному порту блока.

Смотрите LibBlockOutputSignalOffsetTime в blkiolib.tlc.

LibBlockOutputSignalSampleTime (portIdx)

Возвращает шаг расчета, соответствующий заданному выходному порту блока.

Смотрите LibBlockOutputSignalSampleTime в blkiolib.tlc.

LibBlockOutputSignalSymbolicDimensions (portIdx)

Возвращает символьные размерности заданного выходного порта блока.

Смотрите LibBlockOutputSignalSymbolicDimensions в blkiolib.tlc.

LibBlockOutputSignalSymbolicWidth (portIdx)

Возвращает символьную ширину заданного выходного порта блока.

Смотрите LibBlockOutputSignalSymbolicWidth в blkiolib.tlc.

LibBlockOutputSignalSampleTimeIndex (portIdx)

Возвращает индекс шага расчета, соответствующий заданному выходному порту блока.

Смотрите LibBlockOutputSignalSampleTimeIndex в blkiolib.tlc.

LibBlockOutputSignalWidth (portIdx)

Возвращает ширину заданного выходного порта блока.

Смотрите LibBlockOutputSignalWidth в blkiolib.tlc.

Похожие темы