主要内容

coder.target

确定代码生成目标是指定的目标

描述

例子

特遣部队= coder.target (目标)返回true(1)如果代码生成目标目标。否则,它返回false (0)。

如果你为MATLAB生成代码®类,MATLAB计算类初始值在类加载时间代码生成。如果你使用coder.target在MATLAB类属性初始化,coder.target (MATLAB)返回true。

例子

全部折叠

用参数表示一个MATLAB函数,在MATLAB或生成的代码工作。在MATLAB函数运行时,它调用MATLAB函数myabsval。不过,生成的代码调用一个C库函数myabsval

编写一个MATLAB函数myabsval

函数y = myabsval (u)% # codegeny = abs (u);

生成一个静态库myabsval,使用arg游戏选项指定大小、类型和输入参数的复杂性。

codegen配置:自由myabsvalarg游戏{0.0}
codegen函数创建的库文件myabsval.lib与头文件myabsval.h在文件夹\ codegen \ lib \ myabsval。(库文件扩展名可以改变取决于你的平台。)它生成的功能myabsval_initializemyabsval_terminate在相同的文件夹中。

编写一个MATLAB函数调用生成的C库函数使用coder.ceval

函数y = callmyabsval (y)% # codegen%检查目标。不要使用编码器。ceval如果callmyabsval% MATLAB中执行如果coder.target (MATLAB的)myabsval %执行在MATLAB中,调用函数y = myabsval (y);其他的%添加所需的包括语句生成的函数代码coder.updateBuildInfo (“addIncludePaths”,“美元(START_DIR) \ codegen \ lib \ myabsval ');coder.cinclude (“myabsval_initialize.h”);coder.cinclude (“myabsval.h”);coder.cinclude (“myabsval_terminate.h”);%在生成的代码执行。%之前调用初始化函数调用% C函数第一次coder.ceval (“myabsval_initialize”);% myabsval调用生成的C库函数y = coder.ceval (“myabsval”,y);%后调用终止函数%最后一次调用C函数coder.ceval (“myabsval_terminate”);结束

生成墨西哥人的功能callmyabsval_mex。在命令行提供生成的库文件。

codegen配置:墨西哥人callmyabsvalcodegen \ lib \ myabsval \ myabsval.libarg游戏{-2.75}

而不是提供图书馆在命令行上,您可以使用coder.updateBuildInfo指定库中的函数。使用这个选项preconfigure构建。添加这一行其他的布洛克:

coder.updateBuildInfo (“addLinkObjects”,“myabsval.lib”,“美元(START_DIR) \ codegen \ lib \ myabsval ',100年,真的,真的);

请注意

START_DIR宏只是支持生成代码金宝appMATLAB编码器™

函数运行的墨西哥人callmyabsval_mex调用库函数myabsval

callmyabsval_mex (-2.75)
ans = 2.7500

调用MATLAB函数callmyabsval

callmyabsval (-2.75)
ans = 2.7500
callmyabsval函数的展品为执行所需的行为在MATLAB和代码生成。

输入参数

全部折叠

代码生成目标,指定为一个特征向量或字符串标量。指定一个目标。

MATLAB的 运行在MATLAB生成代码(不)

“C”,“c++”,CUDA的,OpenCL的“SystemC”,“SystemVerilog”,“Verilog”,硬件描述语言(VHDL)的

金宝app支持目标语言代码生成

墨西哥人的 生成一个墨西哥人的功能
“Sfun” 模拟仿真软件金宝app®模型。还用于在加速器模式下运行。
“环球套票” 生成一个自由、DLL或EXE目标。也用于运行在金宝app仿真软件编码器和快速加速模式。
“高密度” 生成一个高密度脂蛋白的目标
“自定义” 生成一个自定义的目标

例子:tf = coder.target (MATLAB)

例子:tf = coder.target (MATLAB)

请注意

在的情况下CUDASystemC代码生成,coder.target (“c++”)总是真正的

扩展功能

C / c++代码生成
生成C和c++代码使用MATLAB®编码器™。

GPU的代码生成
生成NVIDIA的CUDA®代码®GPU使用GPU编码器™。

版本历史

介绍了R2011a