123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199 |
- /*
- * C-type: char*
- * Scilab type: string matrix
- */
- %include <scichar.swg>
- // in (char **IN, int IN_ROWCOUNT, int IN_COLCOUNT)
- %typemap(in, noblock=1, fragment="SWIG_SciString_AsCharPtrArrayAndSize") (char **IN, int IN_ROWCOUNT, int IN_COLCOUNT)
- {
- if (SWIG_SciString_AsCharPtrArrayAndSize(pvApiCtx, $input, &$2, &$3, &$1, fname) != SWIG_OK) {
- return SWIG_ERROR;
- }
- }
- // in (int IN_ROWCOUNT, int IN_COLCOUNT, char **IN)
- %typemap(in, noblock=1, fragment="SWIG_SciString_AsCharPtrArrayAndSize") (int IN_ROWCOUNT, int IN_COLCOUNT, char **IN)
- {
- if (SWIG_SciString_AsCharPtrArrayAndSize(pvApiCtx, $input, &$1, &$2, &$3, fname) != SWIG_OK) {
- return SWIG_ERROR;
- }
- }
- // in (char **IN, int IN_SIZE)
- %typemap(in, noblock=1, fragment="SWIG_SciString_AsCharPtrArrayAndSize") (char **IN, int IN_SIZE) (int rowCount, int colCount)
- {
- if (SWIG_SciString_AsCharPtrArrayAndSize(pvApiCtx, $input, &rowCount, &colCount, &$1, fname) == SWIG_OK) {
- $2 = rowCount * colCount;
- }
- else {
- return SWIG_ERROR;
- }
- }
- // in (int IN_SIZE, char **IN)
- %typemap(in, noblock=1, fragment="SWIG_SciString_AsCharPtrArrayAndSize") (int IN_SIZE, char **IN) (int rowCount, int colCount)
- {
- if (SWIG_SciString_AsCharPtrArrayAndSize(pvApiCtx, $input, &rowCount, &colCount, &$2, fname) == SWIG_OK) {
- $1 = rowCount * colCount;
- }
- else {
- return SWIG_ERROR;
- }
- }
- // out (char ***OUT, int *OUT_ROWCOUNT, int *OUT_COLCOUNT)
- %typemap(in, noblock=1, numinputs=0) (char ***OUT, int *OUT_ROWCOUNT, int *OUT_COLCOUNT)
- {
- }
- %typemap(arginit, noblock=1) (char ***OUT, int *OUT_ROWCOUNT, int *OUT_COLCOUNT)
- {
- $1 = (char***) malloc(sizeof(char**));
- $2 = (int*) malloc(sizeof(int));
- $3 = (int*) malloc(sizeof(int));
- }
- %typemap(argout, noblock=1, fragment="SWIG_SciString_FromCharPtrArrayAndSize") (char ***OUT, int *OUT_ROWCOUNT, int *OUT_COLCOUNT)
- {
- if (SWIG_SciString_FromCharPtrArrayAndSize(pvApiCtx, SWIG_Scilab_GetOutputPosition(), *$2, *$3, *$1) == SWIG_OK) {
- SWIG_Scilab_SetOutput(pvApiCtx, SWIG_NbInputArgument(pvApiCtx) + SWIG_Scilab_GetOutputPosition());
- }
- else {
- return SWIG_ERROR;
- }
- }
- %typemap(freearg, noblock=1) (char ***OUT, int *OUT_ROWCOUNT, int *OUT_COLCOUNT)
- {
- {
- int i;
- for (i = 0; i < (*$2) * (*$3); i++)
- free((*$1)[i]);
- }
- free(*$1);
- free($1);
- free($2);
- free($3);
- }
- // out (int *OUT_ROWCOUNT, int *OUT_COLCOUNT, char ***OUT)
- %typemap(in, noblock=1, numinputs=0) (int *OUT_ROWCOUNT, int *OUT_COLCOUNT, char ***OUT)
- {
- }
- %typemap(arginit, noblock=1) (int *OUT_ROWCOUNT, int *OUT_COLCOUNT, char ***OUT)
- {
- $1 = (char***) malloc(sizeof(char**));
- $2 = (int*) malloc(sizeof(int));
- $3 = (int**) malloc(sizeof(int*));
- }
- %typemap(argout, noblock=1, fragment="SWIG_SciString_FromCharPtrArrayAndSize") (int *OUT_ROWCOUNT, int *OUT_COLCOUNT, char ***OUT)
- {
- if (SWIG_SciString_FromCharPtrArrayAndSize(pvApiCtx, SWIG_Scilab_GetOutputPosition(), *$1, *$2, *$3) == SWIG_OK) {
- SWIG_Scilab_SetOutput(pvApiCtx, SWIG_NbInputArgument(pvApiCtx) + SWIG_Scilab_GetOutputPosition());
- }
- else {
- return SWIG_ERROR;
- }
- }
- %typemap(freearg, noblock=1) (int *OUT_ROWCOUNT, int *OUT_COLCOUNT, char ***OUT)
- {
- free($1);
- free($2);
- {
- int i;
- for (i = 0; i < (*$1) * (*$2); i++)
- free((*$3)[i]);
- }
- free(*$3);
- free($3);
- }
- // out (char ***OUT, int *OUT_SIZE)
- %typemap(in, noblock=1, numinputs=0) (char ***OUT, int *OUT_SIZE)
- {
- }
- %typemap(arginit, noblock=1) (char ***OUT, int *OUT_SIZE)
- {
- $1 = (char***) malloc(sizeof(char**));
- $2 = (int*) malloc(sizeof(int));
- }
- %typemap(freearg, noblock=1) (char ***OUT, int *OUT_SIZE)
- {
- {
- int i;
- for (i = 0; i < *$2; i++)
- free((*$1)[i]);
- }
- free(*$1);
- free($1);
- free($2);
- }
- %typemap(argout, noblock=1, fragment="SWIG_SciString_FromCharPtrArrayAndSize") (char ***OUT, int *OUT_SIZE)
- {
- if (SWIG_SciString_FromCharPtrArrayAndSize(pvApiCtx, SWIG_Scilab_GetOutputPosition(), 1, *$2, *$1) == SWIG_OK) {
- SWIG_Scilab_SetOutput(pvApiCtx, SWIG_NbInputArgument(pvApiCtx) + SWIG_Scilab_GetOutputPosition());
- }
- else {
- return SWIG_ERROR;
- }
- }
- // in (int IN_SIZE, char **IN)
- %typemap(in, noblock=1, fragment="SWIG_SciString_AsCharPtrArrayAndSize") (int IN_SIZE, char **IN)
- {
- if (SWIG_SciString_AsCharPtrArrayAndSize(pvApiCtx, $input, 1, &$1, &$2, fname) != SWIG_OK) {
- return SWIG_ERROR;
- }
- }
- // out (int *OUT_SIZE, char ***OUT)
- %typemap(in, noblock=1, numinputs=0) (int *OUT_SIZE, char ***OUT)
- {
- }
- %typemap(arginit, noblock=1) (int *OUT_SIZE, char ***OUT)
- {
- $1 = (int*) malloc(sizeof(int));
- $2 = (char***) malloc(sizeof(char**));
- }
- %typemap(argout, noblock=1, fragment="SWIG_SciString_FromCharPtrArrayAndSize") (int *OUT_SIZE, char ***OUT)
- {
- if (SWIG_SciString_FromCharPtrArrayAndSize(pvApiCtx, SWIG_Scilab_GetOutputPosition(), 1, *$1, *$2) == SWIG_OK) {
- SWIG_Scilab_SetOutput(pvApiCtx, SWIG_NbInputArgument(pvApiCtx) + SWIG_Scilab_GetOutputPosition());
- }
- else {
- return SWIG_ERROR;
- }
- }
- %typemap(freearg, noblock=1) (int *OUT_SIZE, char ***OUT)
- {
- free($1);
- {
- int i;
- for (i = 0; i < *$1; i++)
- free((*$2)[i]);
- }
- free(*$2);
- free($2);
- }
|