Class: matlab.system.mixin.Nondirect
Package: matlab.system.mixin

Direct feedthrough status of input


[flag1,...,flagN] = isInputDirectFeedthroughImpl(obj,u1,u2,...,uN)


[flag1,...,flagN] = isInputDirectFeedthroughImpl(obj,u1,u2,...,uN) specifies whether each input is a direct feedthrough input. If direct feedthrough is true, the output depends on the input at each time instant.


You must set Access = protected for this method.

You cannot modify any properties or implement or access tunable properties in this method.

If you do not include the isInputDirectFeedthroughImpl method in your System object™ class definition file, all inputs are assumed to be direct feedthrough.

The following cases describe when System objects in Simulink® code generation use direct or nondirect feedthrough.

  • System object supports code generation and does not inherit from the Propagates mixin — Simulink automatically infers the direct feedthrough settings from the System object code.

  • System object supports code generation and inherits from the Propagates mixin — Simulink does not automatically infer the direct feedthrough settings. Instead, it uses the value returned by the isInputDirectFeedthroughImpl method.

  • System object does not support code generation — Default isInputDirectFeedthroughImpl method returns false, indicating that direct feedthrough is not enabled. To override the default behavior, implement the isInputDirectFeedthroughImpl method in your class definition file.

isInputDirectFeedthroughImpl is called by the MATLAB System block.

Input Arguments


System object handle


Specifications of the inputs to the algorithm.

Output Arguments


Logical value or either true or false. This value indicates whether the corresponding input is direct feedthrough or not, respectively. The number of outputs must match the number of outputs returned by the getNumOutputs method.


expand all

Use isInputDirectFeedthroughImpl in your class definition file to mark the inputs as nondirect feedthrough.

methods (Access = protected)
   function flag = isInputDirectFeedthroughImpl(~,~)
      flag = false;
Was this topic helpful?