%% $Revision: 1.1.6.3 $  
%% 
%%
%% Copyright 1994-2003 The MathWorks, Inc.
%%
%% Abstract: 
%%      Hidden buffer block. This block is inserted into models automatically
%%      by the simulation engine during model compilation. It's purpose
%%      is to make an signals contiguous for block input ports that
%%      require contiguous inputs.
%%

%implements SignalConversion "C"


%% Function: Outputs ===========================================================
%% Abstract:
%%      Copy the input signal to the output signal thereby making the
%%      signal contiguous (i.e. the input signal is coming from multiple
%%      sources).
%function Outputs(block, system) Output
  
  %% Don't show block name because it is hidden
  /* %<Type> */
  %assign rollVars = [""]
  %roll sigIdx = RollRegions, lcv = RollThreshold, block, "FlatRoller", ...
    rollVars
    %if lcv == ""
      %assign u = LibBlockInputSignal(0, "", lcv, sigIdx)
      %assign y = LibBlockOutputSignal(0, "", lcv, sigIdx)
      %<y> = %<u>;
    %else
      %assign u   = LibBlockInputSignalAddr(0, "","",sigIdx)
      %assign y   = LibBlockOutputSignalAddr(0, "","",sigIdx)
      %assign uDT = LibBlockInputSignalDataTypeName(0, "")
      (void)memcpy(%<y>, %<u>, %<ROLL_ITERATIONS()>*sizeof(%<uDT>));
    %endif
  %endroll

%endfunction %% Outputs

%% [EOF] hiddenbuf.tlc
