MATLAB REAL-TIME WORKSHOP 7 - TARGET LANGUAGE COMPILER Uživatelský manuál Strana 63

  • Stažení
  • Přidat do mých příruček
  • Tisk
  • Strana
    / 408
  • Tabulka s obsahem
  • KNIHY
  • Hodnocené. / 5. Na základě hodnocení zákazníků
Zobrazit stránku 62
C MEX-Files
2-3
C MEX-Files
C MEX-files are built by using the mex script to compile your C source code with
additional calls to API routines.
The Components of a C MEX-File
The source code for a MEX-file consists of two distinct parts:
A computational routine that contains the code for performing the
computations that you want implemented in the MEX-file. Computations
can be numerical computations as well as inputting and outputting data.
A gateway routine that interfaces the computational routine with MATLAB
by the entry point
mexFunction and its parameters prhs, nrhs, plhs, nlhs,
where
prhs is an array of right-hand input arguments, nrhs is the number
of right-hand input arguments,
plhs is an array of left-hand output
arguments, and
nlhs is the number of left-hand output arguments. The
gateway calls the computational routine as a subroutine.
In the gateway routine, you can access the data in the
mxArray structure and
then manipulate this data in your C computational subroutine. For example,
the expression
mxGetPr(prhs[0]) returns a pointer of type double * to the real
data in the
mxArray pointed to by prhs[0]. You can then use this pointer like
any other pointer of type
double * in C. After calling your C computational
routine from the gateway, you can set a pointer of type
mxArray to the data it
returns. MATLAB is then able to recognize the output from your computational
routine as the output from the MEX-file.
The following C MEX Cycle figure shows how inputs enter a MEX-file, what
functions the gateway routine performs, and how outputs return to MATLAB.
Zobrazit stránku 62
1 2 ... 58 59 60 61 62 63 64 65 66 67 68 ... 407 408

Komentáře k této Příručce

Žádné komentáře