File: temptst.cpp

package info (click to toggle)
scilab 2.6-4
  • links: PTS
  • area: non-free
  • in suites: woody
  • size: 54,632 kB
  • ctags: 40,267
  • sloc: ansic: 267,851; fortran: 166,549; sh: 10,005; makefile: 4,119; tcl: 1,070; cpp: 233; csh: 143; asm: 135; perl: 130; java: 39
file content (24 lines) | stat: -rw-r--r-- 560 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
extern "C" {
#include <mex.h>
}
#include "temptst.h"


extern N1<double> callsquare(N1<double> n1);

extern "C" {
  void mexFunction(int nlhs, Matrix** plhs, int nrhs, Matrix** prhs) {
    if (nrhs < 1)
      mexErrMsgTxt("Need at least one argument");
    if (mxGetM(prhs[0]) == 0)
      mexErrMsgTxt("First argument must have at least one entry");
    double* m = mxGetPr(prhs[0]);
    
    N1<double> ans = callsquare(N1<double>(*m));
    Matrix* result = mxCreateFull(1,1,REAL);
    *mxGetPr(result) = ans.data();
    plhs[0] = result;
    return;
  } 
}