function TestOrthOscObjO_genBusSfunc()
rootPath = evalin('base', 'rootPath');
clc
clear mex
currdir_ = pwd;
cd(rootPath);
system('java.exe -cp zbnfjax/zbnf.jar org.vishia.jztxtcmd.JZtxtcmd simulink/test/+TestOrthOscObjO/+genSfn/TestOrthOscObjO_genSfn.m');
TestOrthOscObjO.src2Bus.TestOrthOscObjO_genBus();  %just generated script
TestOrthOscObjO.src2Sfn.TestOrthOscObjO_mex();    %just generated script.
disp('successfull')
cd(currdir_);
end
%{
==JZtxtcmd==
currdir = <:><&scriptdir>/../../../..<.>;
include ../../../../SmlkSfuncJZtc/simulinkSfuncBusGen.jzTc;

Fileset srcHeader =
( simulink/test/+TestOrthOscObjO/+genSfn:Test_ArrayVoid_SmlkObjO.h
, simulink/test/+TestOrthOscObjO/+genSfn:Output_Test_OrthOsc2.h
, simulink/test/+TestOrthOscObjO/+genSfn:Data_Test_OrthOsc2.h
);


Fileset includepath = 
( simulink/test/+TestOrthOscObjO/+genSfn
, srcc_FB
, CRJ/source
, CRJ/source/OSAL
, CRJ/incApplSpecific/stdef_SmlkSfunc
, CRJ/incComplSpecific/cc_SmlkSfunc
, src2_refl
);



## All sources for compilation to the named header file, except the generated Sfunc-wrapper.
Fileset srcTlc_Data_Test_OrthOsc2 = 
( simulink/test/+TestOrthOscObjO/+genSfn/Data_Test_OrthOsc2.c
);

## All sources for compilation to the named header file, except the generated Sfunc-wrapper.
Fileset src_Data_Test_OrthOsc2 = 
( &srcTlc_Data_Test_OrthOsc2
, CRJ\source\Fwc\fw_ReflectionBaseTypes.c
, CRJ\source\Fwc\fw_Object.c
, CRJ\source\Fwc\fw_handle_ptr64.c
, CRJ\sourceSpecials\FwConv_c\fw_ExcStacktrcNo.c
, CRJ\sourceSpecials\os_Windows_64\os_sharedmem.c
);


Fileset srcTlc_Output_Test_OrthOsc2 =
( simulink/test/+TestOrthOscObjO/+genSfn/Data_Test_OrthOsc2.c
);

Fileset src_Output_Test_OrthOsc2 =
( &srcTlc_Output_Test_OrthOsc2
, CRJ\source\Fwc\fw_ReflectionBaseTypes.c
, CRJ\source\Fwc\fw_Object.c
, CRJ\source\Fwc\fw_handle_ptr64.c
, CRJ\sourceSpecials\FwConv_c\fw_ExcStacktrcNo.c
, CRJ\sourceSpecials\os_Windows_64\os_sharedmem.c
, CRJ\sourceSpecials\os_Windows_64\os_atomic.c
);


Fileset src_Test_ArrayVoid_SmlkObjO = 
( CRJ\source\Fwc\fw_ReflectionBaseTypes.c
, CRJ\source\Fwc\fw_Object.c
, CRJ\source\Fwc\fw_handle_ptr64.c
, CRJ\sourceSpecials\FwConv_c\fw_ExcStacktrcNo.c
, CRJ\sourceSpecials\os_Windows_64\os_sharedmem.c
);


##Docu: if this Subtextvar is found, the memory for the Object Function Blocks is gotten in the function InitializeConditions.
##If the genAllocmem is not existing or null, The Sfunctions will get a second output for a bus which presents the internal data.
##Because the code generation provides a memory space with pointer, that is used.
##Note that some special condition 'don't reuse' etc. should be set for code generation optimizations.
##
Subtextvar genAllocmem(String dst, String nameStruct, Num ident) =
<:>(<&nameStruct>*) malloc(sizeof(<&nameStruct>))  /*JZtc: user-specific ExampleObjO*/ <.>;

main() { ##main routine for the JZtxtcmd:

  zmake "simulink/test/+TestOrthOscObjO:TestOrthOscObjO" := simulinkSfuncBusGen(&srcHeader, fileBus = ":+src2Bus/*_genBus.m"
    , dirMex = "mex", dirMexcc=":+src2Sfn", dirSfunc = ":+src2Sfn", dirTlc = ":+src2Sfn", dirRefl = "src2_refl", html=":+src2Sfn/test.html");

}

==endJZcmd==
%}
