coder.config - Create code generation configuration objects - MATLAB
Create code generation configuration objects
Syntax
Description
Use the coder.config function to create configuration
objects for MEX code generation, standalone code generation, fixed-point conversion, and
single-precision conversion. Modify the properties of the configuration object to
customize the generated code according to your project requirements, such as
readability, performance, hardware requirements, and
use of custom libraries.
creates a
config_obj = coder.configcoder.MexCodeConfig code generation
configuration object for use with codegen when generating a MEX
function. Use a coder.MexCodeConfig object with the
-config option of the codegen
command.
creates a code generation configuration object for use with config_obj = coder.config(build_type)codegen when generating a MEX
function or standalone code (static library, dynamically linked library or
executable program). Use the code generation configuration object with the
-config option of the codegen
command.
creates a config_obj = coder.config(build_type,'ecoder',ecoder_flag)coder.EmbeddedCodeConfig object or a
coder.CodeConfig object depending on
whether ecoder_flag is true or
false. build_type is
'lib', 'dll', or 'exe'.
Set the flag to true to use these features:
Code verification through software-in-the-loop (SIL) and processor-in-the-loop (PIL) execution.
Code tracing or bidirectional traceability.
Hardware specific optimizations and custom replacement libraries.
Customize the appearance of the generated code.
See Embedded Coder Capabilities for Code Generation from MATLAB Code (Embedded Coder).
creates these configuration objects for use with config_obj = coder.config(numeric_conversion_type)codegen:
coder.FixPtConfigwhen generating fixed-point MATLAB® or C/C++ code from floating-point MATLAB code. Use with the-float2fixedoption of thecodegencommand.coder.SingleConfig(Fixed-Point Designer) when generating single-precision MATLAB code from double-precision MATLAB code. Use with the-double2singleoption of thecodegencommand.
Fixed-point conversion or single-precision conversion requires Fixed-Point Designer™.
Note
Once you create a code configuration object by using the
coder.config function, you can modify its properties
programmatically at the command line or interactively by using the
Configuration Parameter Dialog Box. See Specify Code Configuration Parameters Interactively.
Examples
collapse all
Generate a MEX function from a MATLAB function that is suitable for code generation and enable a code generation report.
Write a MATLAB function, coderand, that generates a random
scalar value from the standard uniform distribution on the open interval
(0,1).
function r = coderand() %#codegen % The directive %#codegen declares that the function % is intended for code generation r = rand();
Create a code generation configuration object to generate a MEX function.
cfg = coder.config % or cfg = coder.config('mex')Open the code generation report.
cfg.GenerateReport = true;
Generate a MEX function in the current folder that specifies the
configuration object by using the -config
option.
% Generate a MEX function and code generation report codegen -config cfg coderand
Create a code generation configuration object for a standalone C static library.
cfg = coder.config('lib') % Returns a coder.EmbeddedCodeConfig object if the Embedded % Coder product is installed. % Otherwise, returns a coder.CodeConfig object.
Create a code generation configuration object to generate a standalone C dynamic library.
cfg = coder.config('dll') % Returns a coder.EmbeddedCodeConfig object if the Embedded % Coder product is installed. % Otherwise, returns a coder.CodeConfig object.
Create a code generation configuration object to generate a standalone C executable.
cfg = coder.config('exe') % Returns a coder.EmbeddedCodeConfig object if the Embedded % Coder product is installed. % Otherwise, returns a coder.CodeConfig object.
Create a coder.CodeConfig object even
when the Embedded Coder® product is installed on your system.
cfg = coder.config('lib','ecoder',false)
Create a coder.EmbeddedCodeConfig
object without Embedded Coder.
cfg = coder.config('lib','ecoder',true)
Input Arguments
collapse all
| Configuration Object Type | Generated Code | Code Generation Configuration Object (Embedded Coder installed) | Code Generation Configuration Object (Embedded Coder not installed) |
|---|---|---|---|
'mex' | MEX function | coder.MexCodeConfig | coder.MexCodeConfig |
'lib' | Static library | coder.EmbeddedCodeConfig | coder.CodeConfig |
'dll' | Dynamic library | coder.EmbeddedCodeConfig | coder.CodeConfig |
'exe' | Executable | coder.EmbeddedCodeConfig | coder.CodeConfig |
Example: coder.config('mex');
Data Types: char | string
'fixpt' | Creates a |
'single' | Creates a |
Example: coder.config('fixpt');
Data Types: char | string
true | Creates a
See Embedded Coder Capabilities for Code Generation from MATLAB Code (Embedded Coder).
However, code
generation by using a
|
false | Creates a coder.CodeConfig configuration object even if
the Embedded Coder product is installed.
build_type must be
'lib', 'dll', or
'exe'. |
Example: coder.config('lib','ecoder',false);
Data Types: logical
Output Arguments
collapse all
Handle to the MATLAB Coder™ code generation configuration object.
Alternatives
Use the coder function to open the MATLAB
Coder app and create a MATLAB
Coder project. The app provides a user interface that facilitates adding
MATLAB files, defining input parameters, and specifying build parameters.
Version History
Introduced in R2011a