%implements sldemo_sfun_fcncallgen "C"
%function Enable(block,system) Output
%openfile tmpBuffer
%foreach fcnCallIdx = NumSFcnSysOutputCalls
%with SFcnSystemOutputCall[fcnCallIdx]
%if LibIsEqual(BlockToCall, "unconnected")
%continue
%endif
%assign sysIdx = BlockToCall[0]
%assign blkIdx = BlockToCall[1]
%assign ssBlock = System[sysIdx].Block[blkIdx]
%assign tidVal = ParamSettings.SampleTimesToSet[0][1]
%openfile tmp2Buffer
%<LibExecuteFcnEnable(ssBlock, FcnPortElement, 0)>/
%closefile tmp2Buffer
%if (!WHITE_SPACE(tmp2Buffer))
%<tmp2Buffer>/
%endif
%endwith
%endforeach
%closefile tmpBuffer
%if !WHITE_SPACE(tmpBuffer)
%assign type = ParamSettings.FunctionName
%if !ISFIELD(system,"PreventComments") || system.PreventComments != "yes"
/* Function-call Generator Block: '%<Name>' */
%endif
%<tmpBuffer>/
%endif
%endfunction
%function Disable(block,system) Output
%openfile tmpBuffer
%foreach fcnCallIdx = NumSFcnSysOutputCalls
%with SFcnSystemOutputCall[fcnCallIdx]
%if LibIsEqual(BlockToCall, "unconnected")
%continue
%endif
%assign sysIdx = BlockToCall[0]
%assign blkIdx = BlockToCall[1]
%assign ssBlock = System[sysIdx].Block[blkIdx]
%assign tidVal = ParamSettings.SampleTimesToSet[0][1]
%openfile tmp2Buffer
%<LibExecuteFcnDisable(ssBlock, FcnPortElement, 0)>/
%closefile tmp2Buffer
%if (!WHITE_SPACE(tmp2Buffer))
%<tmp2Buffer>/
%endif
%endwith
%endforeach
%closefile tmpBuffer
%if !WHITE_SPACE(tmpBuffer)
%assign type = ParamSettings.FunctionName
%if !ISFIELD(system,"PreventComments") || system.PreventComments != "yes"
/* Function-call Generator Block: '%<Name>' */
%endif
%<tmpBuffer>/
%endif
%endfunction
%function Outputs(block, system) Output
%openfile tmpBuffer
%foreach fcnCallIdx = NumSFcnSysOutputCalls
%with SFcnSystemOutputCall[fcnCallIdx]
%if LibIsEqual(BlockToCall, "unconnected")
%continue
%endif
%assign sysIdx = BlockToCall[0]
%assign blkIdx = BlockToCall[1]
%assign ssBlock = System[sysIdx].Block[blkIdx]
%assign num = SIZE(SFcnParamSettings.Counter, 1)
%assign idx = (num > 1) ? fcnCallIdx : 0
%assign count = CAST("Number",SFcnParamSettings.Counter[idx])
%assign tidVal = ParamSettings.SampleTimesToSet[0][1]
%openfile tmp2Buffer
%<LibExecuteFcnCall(ssBlock, FcnPortElement, tidVal)>/
%closefile tmp2Buffer
%if (!WHITE_SPACE(tmp2Buffer))
%if count > 1
{
int_T i = 0;
for(i = 0; i < %<count> ; ++i){
%endif
%<tmp2Buffer>/
%if count > 1
}
}
%endif
%endif
%endwith
%endforeach
%closefile tmpBuffer
%if !WHITE_SPACE(tmpBuffer)
%assign type = ParamSettings.FunctionName
%if !ISFIELD(system,"PreventComments") || system.PreventComments != "yes"
/* Function-call Generator Block: '%<Name>' */
%endif
%<tmpBuffer>/
%endif
%endfunction