Integration von externem Code
Wenn Sie externen Code, benutzerdefinierten Code oder in C/C++ entwickelten Legacy-Code haben, können Sie diesen direkt in Ihren MATLAB-Code integrieren. Beispiel:
Verwenden Sie die Funktion
coder.ceval, um C/C++ Funktionen aufzurufen. Der Codegenerator integriert Ihren C/C++ Code in den aus MATLAB generierten C/C++ Code. Integrieren Sie Code, wenn externe Bibliotheken, optimierter Code oder in C/C++ entwickelte Objektdateien vorhanden sind, die Sie mit Ihrem generierten Code verwenden möchten.Um nicht in MATLAB Programmcode definierbare Datentypen (wie Pointer-Typen oder
FILE-Typen für externe Datei-E/A) an oder aus externem Code zu übergeben, verwenden Sie die Funktioncoder.opaque.Mit der Funktion
coder.updateBuildInfokönnen Sie Ihren Build darauf konfigurieren, externe Quelldateien, Header-Dateien, Objektdateien und Bibliotheken aufzunehmen und zu verknüpfen.Um einer externen C Bibliothek eine objektorientierte Schnittstelle zur Verfügung zu stellen, verpacken Sie Ihre Funktionsaufrufe in eine Klasse, die von der Oberklasse
coder.ExternalDependencyabgeleitet wurde.Um bestimmte Bezeichnernamen für die Verwendung im benutzerdefinierten C/C++ Code zu reservieren, den Sie in den generierten Code integrieren möchten, verwenden Sie die Funktion
coder.reservedName.Um eine Schnittstelle zu einem externen Strukturtyp herzustellen, verwenden Sie die Funktion
coder.cstructname.
Klassen
coder.ExternalDependency | Interface to external code |
coder.BuildConfig | Build context during code generation |
Funktionen
coder.ceval | Call C/C++ function from generated code |
coder.ref | Indicate data to pass by reference |
coder.rref | Indicate read-only data to pass by reference |
coder.wref | Indicate write-only data to pass by reference |
coder.cinclude | Include header file in generated code |
coder.opaque | Declare variable in generated code |
coder.reservedName | Generate code that does not use specified identifier names |
coder.updateBuildInfo | Update RTW.BuildInfo build information object |
Themen
- Configure Build for External C/C++ Code
Specify source files and build parameters for external C/C++ code.
- Integrate External Code That Uses Pointers, Structures, and Arrays
Integrate external C code that uses pointers, structures, and arrays into MATLAB code.
- Pass by Reference to and from External C Functions
Pass data by reference to and from an external C function.
- Integrate External Code That Uses Custom Data Types
Use C types that are not native to MATLAB in an external function.
- Develop Interface for External C/C++ Code
Access your external code using a class interface.
- Mapping MATLAB Types to Types in Generated Code
Understand how the code generator maps MATLAB data types to data types in the generated C/C++ code.
- Integrate Multiple Generated C++ Code Projects
Integrate the generated C++ code from two projects into a single larger project.
Fehlersuche
Resolve Error: Unknown Output Type for coder.ceval
Troubleshoot error when the code generator is unable to determine the output type of an external C/C++ function call.
