Разные функции

LibAddtoSystemCustomIncludes (система, incFileName)

Для использования встроенными S-функциями в подсистеме. Добавляет #include файл к системному заголовочному файлу.

Вызовите эту функцию от BlockInstanceSetup (блок, система) метод блока так, чтобы различные S-функции могли включать различные заголовочные файлы. Задайте свой заголовочный файл без любых фигурных скобок (например, "myInclude.h") и включайте системный заголовочный файл в фигурные скобки (например, "<sysinclude.h>").

Каждый вызов этой функции добавляет файл в список включенных файлов заголовков, только если это уже не включено.

Пример

%function BlockInstanceSetup(block, system) Output
  %assign incFileName = "sfun_custincl.h"
  %<LibAddToSystemCustomIncludes(system, incFileName)>
%endfunction

%function Outputs(block, system) Output
%endfunction

Смотрите LibAddToSystemCustomIncludes в commonhdrlib.tlc.

LibBlockExecuteFcnCall (блок, callIdx)

Для использования встроенными S-функциями с вызовом функции выходные параметры. Возвращает строку, чтобы вызвать подсистему вызова функций с обязательными аргументами или генерирует код подсистемы, на месте (встроенный).

Пример

%foreach callIdx = NumSFcnSysOutputCalls
  %if LibIsEqual(SFcnSystemOutputCall[callIdx].BlockToCall,...
   "unconnected")
    %continue
  %endif
%% call the downstream system
  %<LibBlockExecuteFcnCall(block, callIdx)>\
%endforeach

Смотрите LibBlockExecuteFcnCall в syslib.tlc.

LibBlockExecuteFcnDisable (блок, callIdx)

Для использования встроенными S-функциями, чтобы вызвать систему вызова функции отключают функцию. Возвращается строка, чтобы или вызвать подсистему вызова функций отключают функцию с обязательными аргументами или вызывать сгенерированную подсистему, отключают (встроенный) код.

Пример

%foreach callIdx = NumSFcnSysOutputCallDsts
  %if LibIsEqual(SFcnSystemOutputCall[callIdx].BlockToCall, "unconnected")
   %continue
  %endif
%% call the downstream system
  %<LibBlockExecuteFcnDisable(block, callIdx)>\
%endforeach

Смотрите LibBlockExecuteFcnDisable в syslib.tlc.

LibBlockExecuteFcnEnable (блок, callIdx)

Для использования встроенными S-функциями, чтобы вызвать систему вызова функции включают функцию. Возвращается строка, чтобы вызвать подсистему вызова функций включают функцию с обязательными аргументами, или сгенерированная подсистема включают (встроенный) код.

Пример

%foreach callIdx = NumSFcnSysOutputCallDsts
  %if LibIsEqual(SFcnSystemOutputCall[callIdx].BlockToCall, "unconnected")
   %continue
  %endif
%% call the downstream system
  %<LibBlockExecuteFcnEnable(block, callIdx)>\
%endforeach

Смотрите LibBlockExecuteFcnEnable в syslib.tlc.

LibBlockInputSignalAliasedThruDataTypeId (idx)

Возвратите ID типа данных, до которого искажается входной сигнал.

Смотрите LibBlockInputSignalAliasedThruDataTypeId в dtypelib.tlc.

LibBlockOutputSignalAliasedThruDataTypeId (idx)

Возвратите ID типа данных, до которого искажается выходной сигнал.

Смотрите LibBlockOutputSignalAliasedThruDataTypeId в dtypelib.tlc

LibGenConstVectWithInit (данные, идентификатор типа, varId)

Возвращает инициализированную статическую постоянную переменную строку формы:

static const typeName varId[] = { data };

typeName сгенерирован от typeId, который может быть одним из

tSS_DOUBLE, tSS_SINGLE, tSS_BOOLEAN, tSS_INT8, tSS_UINT8, 
tSS_INT16, tSS_UINT16, tSS_INT32, tSS_UINT32

Аргумент ввода данных должен быть числовым скаляром или вектором и должен быть конечным (никакой InfInf, или NaN значения.

Смотрите LibGenConstVectWithInit в utillib.tlc.

LibGetBlockAttribute (блок, attr)

Получите значение поля в записи блока.

Синтаксис

%if LibIsEqual(LibGetBlockAttribute(ssBlock,"MaskType"), ... 
  "Task Block")
  %assign isTaskBlock = 1
%endif

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

Возвращает значение атрибута (поле) или пустая строка, если это не существует.

Смотрите LibGetBlockAttribute в asynclib.tlc.

LibGetCallerClockTickCounter (sfcnBlock)

Для использования асинхронными S-функциями с вызовом функции выходные параметры. Асинхронные задачи могут управлять своим собственным временем. LibGetCallerClockTickCounter используется, чтобы получить доступ к счетчику времени восходящей асинхронной задачи. Это предпочтено, будучи управляемым другим асинхронным уровнем (e.g., блок Interrupt, управляющий блоком Task), потому что время прерывание произошло, используется, а не время, которое задаче позволяют запустить.

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

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

Смотрите LibGetCallerClockTickCounter в asynclib.tlc.

LibGetCallerClockTickCounterHigh (sfcnBlock)

Для использования асинхронными S-функциями с вызовом функции выходные параметры. Асинхронные задачи могут управлять своим собственным временем. LibGetCallerClockTickCounterHigh используется, чтобы получить доступ к высокому слову счетчика времени восходящей асинхронной задачи. Это предпочтено, будучи управляемым другим асинхронным уровнем (например, блок Interrupt, управляющий блоком Task), потому что время, прерывание произошло, используется, а не время, которое Задаче позволяют запустить.

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

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

Смотрите LibGetCallerClockTickCounterHigh в asynclib.tlc.

LibGetDataTypeComplexNameFromId (ID)

Возвращает имя сложного типа данных, соответствующего ID типа данных. Например, если id==tSS_DOUBLE затем LibGetDataTypeComplexNameFromId возвращает "creal_T".

Смотрите LibGetDataTypeComplexNameFromId в dtypelib.tlc.

LibGetDataTypeEnumFromId (ID)

Возвращает тип данных enum соответствие ID типа данных. Например, если id==tSS_DOUBLE, затем enum "SS_DOUBLE". Если id не соответствует встроенному типу данных, LibGetDataTypeEnumFromId возвращается.

Смотрите LibGetDataTypeEnumFromId в dtypelib.tlc.

LibGetDataTypeIdAliasedThruToFromId (ID)

Возвращает тип данных IdAliasedThruTo это соответствует ID типа данных. Например, если yourfloat псевдоним к myfloat, и myfloat псевдоним к double, затем IdAliasedThruTo для обоих yourfloat и myfloat 0 (потому что ID для double 0).

Смотрите LibGetDataTypeIdAliasedThruToFromId в dtypelib.tlc.

LibGetDataTypeIdAliasedToFromId (ID)

Возвращает тип данных IdAliasedTo это соответствует ID типа данных. Например, если yourfloat псевдоним к myfloat, и myfloat псевдоним к double, затем IdAliasedTo для yourfloat ID для myfloat, и IdAliasedTo для myfloat 0 (потому что ID для double 0).

Смотрите LibGetDataTypeIdAliasedToFromId в dtypelib.tlc.

LibGetDataTypeIdResolvesToFromId (ID)

Возвращает тип данных IdResolvesTo это соответствует ID типа данных.

Смотрите LibGetDataTypeIdResolvesToFromId в dtypelib.tlc.

LibGetDataTypeNameFromId (ID)

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

Смотрите LibGetDataTypeNameFromId в dtypelib.tlc.

LibGetDataTypeSLSizeFromId (ID)

Возвратите размер (когда Simulink® знает это), соответствие ID типа данных.

Смотрите LibGetDataTypeSLSizeFromId в dtypelib.tlc.

LibGetDataTypeStorageIdFromId (ID)

Возвращает тип данных StorageId соответствие ID типа данных. Например, если вход ID является ID для 16-битного типа данных с фиксированной точкой со знаком, то StorageId соответствует int16.

Смотрите LibGetDataTypeStorageIdFromId в dtypelib.tlc.

LibGetFcnCallBlock (sfcnblock, callIdx)

Учитывая Блок s-function и индекс вызова, возвратите запись блока для нисходящего блока подсистемы вызова функций.

Синтаксис

 %assign ssBlock = LibGetFcnCallBlock(block,0)

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

Запись блока нисходящей подсистемы вызова функций, соединенной с тем элементом (вызывают индекс).

Смотрите LibGetFcnCallBlock в asynclib.tlc.

LibGetRecordDataTypeId (rec)

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

Смотрите LibGetRecordDataTypeId в dtypelib.tlc.

LibGetRecordDimensions (rec)

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

Смотрите LibGetRecordDimensions в dtypelib.tlc.

LibGetRecordIsComplex (rec)

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

Смотрите LibGetRecordIsComplex в dtypelib.tlc.

LibGetRecordWidth (rec)

Возвращает ширину заданной записи как целое число.

Смотрите LibGetRecordWidth в dtypelib.tlc.

LibGetT ()

Возвращает строку, чтобы получить доступ к абсолютному времени, которое является числом с плавающей запятой. Однако, если вы сконфигурировали модель для генерации кода только для целого числа (путем отмены выбора Support floating-point numbers), строка представляет целое число, равное количеству меток деления базовой ставки (абсолютное время, разделенное на основной шаг расчета), а не абсолютное время.

Необходимо использовать LibGetT ко времени доступа только.

LibGetT версия TLC макроса SimStruct ssGetT.

Смотрите LibGetT в utillib.tlc.

LibIsComplex (аргумент)

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

Смотрите LibIsComplex в utillib.tlc.

LibIsFirstInitCond ()

LibIsFirstInitCond возвращает сгенерированный код, предназначенный для размещения в функции инициализации. Этот код определяет, во время времени выполнения, вызывается ли функция инициализации впервые.

LibIsFirstInitCond также устанавливает флаг, который говорит генератор кода, если он должен объявить и обеспечить first-initialize-condition флаг.

LibIsFirstInitCond версия TLC макроса SimStruct ssIsFirstInitCond.

Смотрите LibIsFirstInitCond в syslib.tlc.

LibIsMajorTimeStep ()

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

LibIsMajorTimeStep версия TLC макроса SimStruct ssIsMajorTimeStep.

Смотрите LibIsMajorTimeStep в utillib.tlc.

LibIsMinorTimeStep ()

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

LibIsMinorTimeStep версия TLC макроса SimStruct ssIsMinorTimeStep.

Смотрите LibIsMinorTimeStep в utillib.tlc.

LibManageAsyncCounter (sfcnBlock, callIdx)

Для использования асинхронными S-функциями с вызовом функции выходные параметры. Асинхронные задачи могут управлять своим собственным временем и использовать LibManageAsyncCounter чтобы определить, существует ли потребность для асинхронного в противоречии с, управляют ее собственным таймером.

Пример

%if LibManageAsyncCounter(block,callIdx)
  %%	  %<LibSetAsyncCounter(block,callIdx), CodeGetCounter)>

где CodeGetCounter целевой определенный аппаратный таймер чтения кода.

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

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

Смотрите LibManageAsyncCounter в asynclib.tlc.

LibMaxIntValue (dtype)

Для встроенного целочисленного типа данных, LibMaxIntValue возвращает отформатированное максимальное значение того типа данных.

Смотрите LibMaxIntValue в dtypelib.tlc.

LibMinIntValue (dtype)

Для встроенного целочисленного типа данных, LibMinIntValue возвращает отформатированное минимальное значение того типа данных.

Смотрите LibMinIntValue в dtypelib.tlc.

LibNeedAsyncCounter (sfcnBlock, callIdx)

Для использования асинхронными S-функциями с вызовом функции выходные параметры. Асинхронные задачи используют LibNeedAsyncCounter определить, существует ли потребность для асинхронного счетчика.

Пример

%if LibNeedAsyncCounter(block,0)
  %<LibSetAsyncCounter(block,0), "tickGet()")>

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

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

Смотрите LibNeedAsyncCounter в asynclib.tlc.

LibSetAsyncClockTicks (sfcnBlock, callIdx, buf1, buf2)

Для использования асинхронными S-функциями с вызовом функции выходные параметры. Асинхронные задачи могут управлять своим собственным временем. Используйте LibSetAsyncClockTicks к коду возврата, который устанавливает clockTick счетчики, которые должны быть обеспечены асинхронной задачей. Если тип данных clockTick счетчиком, обеспеченным асинхронной задачей, является tSS_TIMER_UINT32_PAIR, низкое и высокое слово clockTick счетчик установлен.

Аргументы

buf1 — Код, который читает низкое слово аппаратного счетчика

buf2 — Код, который читает высокое слово аппаратного счетчика. Оставьте buf2 пустой, если длина аппаратного счетчика меньше 32 битов.

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

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

Пример

%if LibNeedAsyncCounter(block, callIdx)
%<LibSetAsyncCounter(block, 0, buf1, buf2)>
%endif

Смотрите LibSetAsyncClockTicks в asynclib.tlc.

LibSetAsyncCounter (sfcnBlock, callIdx, buf)

Для использования асинхронными S-функциями с вызовом функции выходные параметры. Асинхронные задачи могут управлять своим собственным временем. Используйте LibSetAsyncCounter к коду возврата, который устанавливает переменную счетчика, которая должна быть обеспечена асинхронной задачей.

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

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

Пример

%if LibNeedAsyncCounter(block,0)
  %<LibSetAsyncCounter(block,0, "tickGet()")> 
%endif

Смотрите LibSetAsyncCounter в asynclib.tlc.

LibSetAsyncCounterHigh (sfcnBlock, callIdx, buf)

Для использования асинхронными S-функциями с вызовом функции выходные параметры. Асинхронные задачи могут управлять своим собственным временем. Используйте LibSetAsyncCounterHigh к коду возврата, который устанавливает более высокое слово переменной счетчика, которая должна быть обеспечена асинхронной задачей.

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

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

Пример

%if LibNeedAsyncCounter(block,0)
%<LibSetAsyncCounterHigh(block,0, "hightTickGet()")>
%endif

Смотрите LibSetAsyncCounterHigh в asynclib.tlc.

LibTIDInSystem (система, fcnType)

Цель

Возвращает идентификатор задачи (TID), если это в пределах функции подсистемы и может быть названо прежде или во время TLC генерация кода.

Синтаксис

LibTIDInSystem (system, fcnType)

Аргументы

system

Запись в глобальной записи CompiledModel.

fcnType

Одно из следующего: 'Output', 'Update', 'Outputupdate'.

Описание

Эта функция возвращает TID, если это в пределах функции подсистемы и может быть названо прежде или во время TLC генерация кода. Это возвращает имя аргумента TID, если TID передается в качестве аргумента в осциллографе системной функции. Если TID не передается в качестве аргумента в осциллографе, эта функция возвращается:

  • '0', если модель является одним управлением задачами.

  • Значение TID подсистемы, если подсистема является одним уровнем.

  • Локальное имя переменной TID, если подсистема является многоскоростной. Локальная переменная TID добавляется к коду подсистемы.

Примечание

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

Смотрите LibTIDInSystem в syslib.tlc.

LibIsRowMajor

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

Смотрите LibIsRowMajor в dtypelib.tlc.

Устаревшие функции

Следующая таблица показывает устаревшие функции и функции, которые заменили их.

Устаревшая функцияЭквивалентная заменяющая функция

LibBlockOutportLocation

LibBlockDstSignalLocation

LibCacheGlobalPrmData

Используйте функцию блока Start

LibCacheIncludes

LibAddToCommonIncludes

LibContinuousState

LibBlockContinuousState

LibControlPortInputSignal

LibBlockSrcSignalLocation

LibConvertZCDirection

Функция не используется в генерации кода.

LibDataInputPortWidth

LibBlockInputSignalWidth

LibDataOutputPortWidth

LibBlockOutputSignalWidth

LibDefineIWork
LibDefinePWork
LibDefineRWork

IWork , PWork, и RWork имена теперь заданы через mdlRTW функционируйте в своей S-функции MEX C.

LibDiscreteState

LibBlockDiscreteState

LibExportFileCustomCode

LibSetSourceFileSection

LibExternalResetSignal

LibBlockInputSignal

LibHeaderFileCustomCode

LibSetSourceFileSection

LibIsEqual

Используйте встроенную функцию ISEQUAL

LibMapSignalSource

FcnMapDataTypedSignalSource

LibMaxBlockIOWidth

Функция не используется в генерации кода Simulink Coder™.

LibMaxDataInputPortWidth

Функция не используется в генерации кода Simulink Coder.

LibMaxDataOutputPortWidth

Функция не используется в генерации кода Simulink Coder.

LibPathName

LibGetBlockPath, LibGetFormattedBlockPath

LibPrevZCState

LibBlockPrevZCState

LibPrmFileCustomCode

LibSetSourceFileSection

LibRegFileCustomCode

LibSetSourceFileSection

LibRegisterGNUMathFcnPrototypes

Функция не используется в генерации кода Simulink Coder.

LibRegisterISOCMathFcnPrototypes

Функция не используется в генерации кода Simulink Coder.

LibRegisterMathFcnPrototype

Функция не используется в генерации кода Simulink Coder.

LibRenameParameter

Определение названий параметра теперь поддерживается через mdlRTW функционируйте в своей S-функции MEX C.

Похожие темы