intcscicos.h File Reference

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  outtb_el

Functions

int MlistGetFieldNumber __PARAMS ((int *ptr, const char *string))
int C2F (gw_cscicos) _PARAMS((void))
int inttimescicos _PARAMS ((char *fname, unsigned long fname_len))
static void duplicata ()
static void comp_size ()
int var2sci (void *x, int n, int m, int typ_var)
int createblklist (scicos_block *Blocks, int *ierr, int flag_imp)
int getscicosvarsfromimport (char *what, void *v, int *nv, int *mv)
void C2F() vvtosci ()
int C2F() mktlist ()
int C2F() mklist ()
void str2sci (char **x, int n, int m)
integer C2F() scierr ()
int Max1 (int *vect)
intlistentry (int *header, int i)
int Message (char *code)
int cpass2 ()

Variables

static intil_state_save
static intil_sim_save
struct {
   integer   kfun
curblk


Function Documentation

int MlistGetFieldNumber __PARAMS ( (int *ptr, const char *string  ) 

int inttimescicos _PARAMS ( (char *fname, unsigned long fname_len  ) 

Definition at line 215 of file intcscicos.c.

00217 {
00218   int un=1,ipvec,nvec,mvec,noin,moin,ipoin,noinr,moinr,ipoinr;
00219   int nnd,mnd,ipnd,ntyp,mtyp,iptyp,ipr1,ipr2,n,nr,nn;
00220   
00221   CheckRhs(5,5);
00222   CheckLhs(2,2);
00223 
00224   GetRhsVar(1,"i",&nvec,&mvec,&ipvec);
00225   GetRhsVar(2,"i",&noin,&moin,&ipoin);
00226   GetRhsVar(3,"i",&noinr,&moinr,&ipoinr);
00227   GetRhsVar(4,"i",&nnd,&mnd,&ipnd);
00228   GetRhsVar(5,"i",&ntyp,&mtyp,&iptyp);
00229   n=nvec*mvec;
00230   nn=nnd*mnd;
00231   CreateVar(6,"i",&un,&nn,&ipr1);
00232   CreateVar(7,"i",&un,&nn,&ipr2);
00233 
00234   ctree4(istk(ipvec),n,istk(ipnd),mnd,istk(iptyp),istk(ipoin),
00235          istk(ipoinr),istk(ipr1),istk(ipr2),&nr);
00236   
00237   LhsVar(1)=6;
00238   LhsVar(2)=7;
00239   /*      nbcols(6)=nr */
00240   *istk(iadr(C2F(intersci).iwhere[5])+2)=nr;
00241   /*      nbcols(7)=nr */
00242   *istk(iadr(C2F(intersci).iwhere[6])+2)=nr;
00243   return 0;
00244 }

int C2F ( gw_cscicos   ) 

static void comp_size (  )  [static]

Referenced by intduplicate().

Here is the caller graph for this function:

int cpass2 (  ) 

Referenced by intcpass2().

Here is the caller graph for this function:

int createblklist ( scicos_block Blocks,
int ierr,
int  flag_imp 
)

Definition at line 2456 of file intcscicos.c.

Referenced by intgetscicosvarsc(), and sciblk4().

02457 {
02458   /*local variable declaration*/
02459   int k;
02460   int nu,mu,ny,my;
02461   int u_typ,y_typ;
02462 
02463   /*variable used when imp_flag>=0*/
02464   int nv,mv;          /* length of data                                        */
02465   int nblk,ng;        /* to store number of blocks and number of zero cross.   */
02466   void *ptr;          /* ptr for data comming from import structure            */
02467   int *ptr_int;       /* ptr to store ptr on integer                           */
02468   double *ptr_double; /* ptr to store ptr on double                            */
02469   int *xptr, *zcptr;  /* to retrieve xptr by import and zcptr of scicos_blocks */
02470   double *x,*xd,*g;   /* ptr for x, xd and g for scicos_blocks              */
02471 
02472   /* set length of block list -please update me-                           */
02473   static int nblklst=31;
02474   /* set string of first element of scilab Blocks tlist -please update me- */
02475   static char *str_blklst[]={ "scicos_block", "nevprt" , "funpt" , "type"  ,
02476                               "scsptr"      , "nz"     , "z"     , "nx"    ,
02477                               "x"           , "xd"     , "res"   , "nin"   ,
02478                               "insz"        , "inptr"  , "nout"  , "outsz" ,
02479                               "outptr"      , "nevout" , "evout" , "nrpar" ,
02480                               "rpar"        , "nipar"  , "ipar"  , "ng"    ,
02481                               "g"           , "ztyp"   , "jroot" , "label" ,
02482                               "work"        , "nmode"  , "mode"};
02483 
02484   /* char ptr for str2sci - see below - */
02485   char **str1;
02486 
02487 
02488   /* set nblk, x, xd ptr coming from import strucuture,
02489    * if flag_imp >=0
02490    */
02491   if (flag_imp>=0)
02492   {
02493    /*retrieve nblk by import structure*/
02494    strcpy(C2F(cha1).buf,"nblk");
02495    *ierr=getscicosvarsfromimport(C2F(cha1).buf,&ptr,&nv,&mv);
02496    if (*ierr==0) return 0;
02497    ptr_int = (int *) ptr;
02498    nblk = *ptr_int;
02499 
02500    /* retrieve ng by import structure */
02501    strcpy(C2F(cha1).buf,"ng");
02502    *ierr=getscicosvarsfromimport(C2F(cha1).buf,&ptr,&nv,&mv);
02503    ptr_int = (int *) ptr; /* cast void* ptr to int* ptr */
02504    ng = *ptr_int;
02505 
02506    /*retrieve xptr by import structure*/
02507    strcpy(C2F(cha1).buf,"xptr");
02508    *ierr=getscicosvarsfromimport(C2F(cha1).buf,&ptr,&nv,&mv);
02509    if (*ierr==0) return 0;
02510    ptr_int = (int *) ptr;
02511    xptr = ptr_int;
02512 
02513    /*retrieve zcptr by import structure*/
02514    strcpy(C2F(cha1).buf,"zcptr");
02515    *ierr=getscicosvarsfromimport(C2F(cha1).buf,&ptr,&nv,&mv);
02516    ptr_int = (int *) ptr;
02517    zcptr = ptr_int;
02518 
02519    /*retrieve x and xd by import structure*/
02520    strcpy(C2F(cha1).buf,"x");
02521    *ierr=getscicosvarsfromimport(C2F(cha1).buf,&ptr,&nv,&mv);
02522    if (*ierr==0) return 0;
02523    ptr_double = (double *) ptr;
02524    x = ptr_double;
02525    xd = &x[xptr[nblk]-1];
02526 
02527    /*retrieve g by import structure*/
02528    strcpy(C2F(cha1).buf,"g");
02529    *ierr=getscicosvarsfromimport(C2F(cha1).buf,&ptr,&nv,&mv);
02530    ptr_double = (double *) ptr;
02531    g = ptr_double;
02532   }
02533 
02534   /****************************
02535    * create scilab tlist Blocks
02536    ****************************/
02537   /* 1 - scicos_block */
02538   str2sci(str_blklst,1,31);
02539 
02540   /* 2 - nevprt */
02541   *ierr=var2sci(&Blocks[0].nevprt,1,1,80);
02542   if (*ierr!=0) return 0;
02543 
02544   /* 3 - funpt */
02545   *ierr=var2sci(&Blocks[0].funpt,0,1,80); /* !!!! */
02546   if (*ierr!=0) return 0;
02547 
02548   /* 4 - type */
02549   *ierr=var2sci(&Blocks[0].type,1,1,80); /* !!!! */
02550   if (*ierr!=0) return 0;
02551 
02552   /* 5 - scsptr */
02553   *ierr=var2sci(&Blocks[0].scsptr,0,1,80); /* !!!! */
02554   if (*ierr!=0) return 0;
02555 
02556   /* 6 - nz */
02557   *ierr=var2sci(&Blocks[0].nz,1,1,80);
02558   if (*ierr!=0) return 0;
02559 
02560   /* 7 - z */
02561   if(Blocks[0].scsptr>0)
02562   {
02563    C2F(vvtosci)(Blocks[0].z,&Blocks[0].nz);
02564    if (C2F(scierr)()!=0) return 0; 
02565   }
02566   else
02567   {
02568    *ierr=var2sci(Blocks[0].z,Blocks[0].nz,1,10);
02569    if (*ierr!=0) return 0; 
02570   }
02571 
02572   /* 8 - nx */
02573   *ierr=var2sci(&Blocks[0].nx,1,1,80);
02574   if (*ierr!=0) return 0;
02575 
02576   /* 9 - x */
02577   if (flag_imp>=0) *ierr=var2sci(&x[xptr[flag_imp]-1],Blocks[0].nx,1,10);
02578   else *ierr=var2sci(Blocks[0].x,Blocks[0].nx,1,10);
02579   if (*ierr!=0) return 0; 
02580 
02581   /* 10 - xd */
02582   if (flag_imp>=0) *ierr=var2sci(&xd[xptr[flag_imp]-1],Blocks[0].nx,1,10);
02583   else *ierr=var2sci(Blocks[0].xd,Blocks[0].nx,1,10);
02584   if (*ierr!=0) return 0; 
02585 
02586   /* 11 - res */
02587   *ierr=var2sci(Blocks[0].res,Blocks[0].nx,1,10);
02588   if (*ierr!=0) return 0;
02589 
02590   /* 12 - nin */
02591   *ierr=var2sci(&Blocks[0].nin,1,1,80);
02592   if (*ierr!=0) return 0;
02593 
02594   /* 13 - insz */
02595   *ierr=var2sci(Blocks[0].insz,3*Blocks[0].nin,1,80);
02596   if (*ierr!=0) return 0;
02597 
02598   /* 14 - inptr */
02599   for (k=0;k<Blocks[0].nin;k++) 
02600   {
02601    nu=Blocks[0].insz[k]; /* retrieve number of rows */
02602    mu=Blocks[0].insz[Blocks[0].nin+k]; /* retrieve number of cols */
02603    u_typ=Blocks[0].insz[2*Blocks[0].nin+k]; /* retrieve type */
02604    *ierr=var2sci(Blocks[0].inptr[k],nu,mu,u_typ);
02605    if (*ierr!=0) return 0;
02606   }
02607   C2F(mklist)(&Blocks[0].nin); /*create inptr list*/
02608 
02609   /* 15 - nout */
02610   *ierr=var2sci(&Blocks[0].nout,1,1,80);
02611   if (*ierr!=0) return 0;
02612 
02613   /* 16 - outsz */
02614   *ierr=var2sci(Blocks[0].outsz,3*Blocks[0].nout,1,80);
02615   if (*ierr!=0) return 0;
02616 
02617   /* 17 - outptr */
02618   for (k=0;k<Blocks[0].nout;k++) 
02619   {
02620    ny=Blocks[0].outsz[k]; /* retrieve number of rows */
02621    my=Blocks[0].outsz[Blocks[0].nout+k]; /* retrieve number of cols */
02622    y_typ=Blocks[0].outsz[2*Blocks[0].nout+k]; /* retrieve type */
02623    *ierr=var2sci(Blocks[0].outptr[k],ny,my,y_typ);
02624    if (*ierr!=0) return 0;
02625   }
02626   C2F(mklist)(&Blocks[0].nout); /*create outptr list*/
02627 
02628   /* 18 - nevout */
02629   *ierr=var2sci(&Blocks[0].nevout,1,1,80);
02630   if (*ierr!=0) return 0;
02631 
02632   /* 19 - evout */
02633   *ierr=var2sci(Blocks[0].evout,Blocks[0].nevout,1,10);
02634   if (*ierr!=0) return 0; 
02635 
02636   /* 20 - nrpar */
02637   *ierr=var2sci(&Blocks[0].nrpar,1,1,80);
02638   if (*ierr!=0) return 0;
02639 
02640   /* 21 - rpar */
02641   if(Blocks[0].scsptr>0)
02642   {
02643    C2F(vvtosci)(Blocks[0].rpar,&Blocks[0].nrpar);
02644    if (C2F(scierr)()!=0) return 0;
02645   }
02646   else
02647   {
02648    *ierr=var2sci(Blocks[0].rpar,Blocks[0].nrpar,1,10);
02649    if (*ierr!=0) return 0; 
02650   }
02651 
02652   /* 22 - nipar */
02653   *ierr=var2sci(&Blocks[0].nipar,1,1,80);
02654   if (*ierr!=0) return 0;
02655 
02656   /* 23 - ipar */
02657   *ierr=var2sci(Blocks[0].ipar,Blocks[0].nipar,1,80);
02658   if (*ierr!=0) return 0;
02659 
02660   /* 24 - ng */
02661   *ierr=var2sci(&Blocks[0].ng,1,1,80);
02662   if (*ierr!=0) return 0;
02663 
02664   /* 25 - g */
02665   if (flag_imp>=0) *ierr=var2sci(&g[zcptr[flag_imp]-1],Blocks[0].ng,1,10);
02666   else *ierr=var2sci(Blocks[0].g,Blocks[0].ng,1,10);
02667   if (*ierr!=0) return 0;
02668 
02669   /* 26 - ztyp */
02670   *ierr=var2sci(&Blocks[0].ztyp,1,1,80);
02671   if (*ierr!=0) return 0;
02672 
02673   /* 27 - jroot */
02674   *ierr=var2sci(Blocks[0].jroot,Blocks[0].ng,1,80);
02675   if (*ierr!=0) return 0;
02676 
02677   /* 28 - label */
02678   if ((str1=MALLOC(sizeof(char*))) ==NULL )  return 0;
02679   if ((str1[0]=MALLOC(sizeof(char)*(strlen(Blocks[0].label)+1))) ==NULL )  return 0;
02680   (str1[0])[strlen(Blocks[0].label)]='\0';
02681   strncpy(str1[0],Blocks[0].label,strlen(Blocks[0].label));
02682   str2sci(str1,1,1);
02683   FREE(str1[0]);
02684   FREE(str1);
02685   if (C2F(scierr)()!=0) return 0; 
02686 
02687   /* 29 - work*/
02688   C2F(vvtosci)(*Blocks[0].work,(k=0,&k));
02689   if (C2F(scierr)()!=0) return 0; 
02690 
02691   /* 30 - nmode*/
02692   *ierr=var2sci(&Blocks[0].nmode,1,1,80);
02693   if (*ierr!=0) return 0;
02694 
02695   /* 31 - mode */
02696   *ierr=var2sci(Blocks[0].mode,Blocks[0].nmode,1,80);
02697   if (*ierr!=0) return 0;
02698 
02699   C2F(mktlist)(&nblklst); /*create Blocks list*/
02700   if (C2F(scierr)()!=0) return 0;
02701 
02702   /*return 1 if succeeded */
02703   return 1;
02704 }

Here is the caller graph for this function:

static void duplicata (  )  [static]

Referenced by intduplicate().

Here is the caller graph for this function:

int getscicosvarsfromimport ( char *  what,
void *  v,
int nv,
int mv 
)

Referenced by createblklist(), and intgetscicosvarsc().

Here is the caller graph for this function:

int* listentry ( int header,
int  i 
)

TODO : comment

Parameters:
header 
i 
Returns:

Definition at line 120 of file mexlib.c.

00121 {
00122   /*Usage int *header = header(array_ptr)   
00123    *      int *headersub = listentry(header, k)
00124    *   then headersub[0] ... is the header of the kth object in the
00125    *   list array_ptr  */
00126   int n, *ptr; 
00127   n = header[1]; 
00128   if (i <= n) {
00129     if ( n%2 == 0 ) n++;
00130     /* n = n if n odd, n=n+1 if n even (=> n is odd and ptr even !) */
00131     ptr = (int *) header + 3 + n + 2*( header[2 + (i - 1) ] -1);
00132   return ptr;
00133   } else {
00134     return NULL;
00135   }
00136 }

int Max1 ( int vect  ) 

Definition at line 37 of file cpass2.c.

References i.

00038 {
00039   int i,max1;
00040   if (vect[0]<1){
00041     max1=0;
00042   }else{
00043     max1=vect[1];
00044     for(i=2;i<vect[0]+1;i++)
00045       {
00046         max1=(max1<vect[i])? vect[i]:max1;
00047       }
00048   }
00049   return max1;
00050 }

int Message ( char *  code  ) 

int C2F() mklist (  ) 

int C2F() mktlist (  ) 

integer C2F() scierr (  ) 

Referenced by createblklist(), sciblk2(), sciblk2i(), and sciblk4().

Here is the caller graph for this function:

void str2sci ( char **  x,
int  n,
int  m 
)

C string var2vec to scilab

Parameters:
x is supposed to be a fortran image of var2vec result

Definition at line 6 of file str2sci.c.

References Bot, C2F, cvstr(), err, error, i, iadr, istk, l, long, Lstk, m1, n1, sadr, and Top.

00007 {
00008       
00009   int l=0,il=0,zero=0,err,n1,i,m1=0;
00010       
00011   if (Top >= Bot) {
00012     i=18;
00013     C2F(error)(&i);
00014   } else {
00015     Top = Top + 1;
00016     il = iadr(*Lstk(Top));
00017     l = sadr(il+6);
00018   }
00019   
00020   err = l + n*m - *Lstk(Bot);
00021   if (err > 0) {
00022     i=17;
00023     C2F(error)(&i);
00024     return;
00025   }
00026   *istk(il) = 10;
00027   *istk(il+1) = n;
00028   *istk(il+2) = m;
00029   *istk(il+3) = 0;
00030   *istk(il+4) = 1;
00031   for (i = 1; i <= n*m; i++){
00032           n1=strlen(x[i-1]);
00033           *istk(il+4+i) =  *istk(il+4+i-1)+n1;
00034           if (n1 > 0) 
00035                   C2F(cvstr)(&n1,istk(il+m*n+5 -1 + *istk(il+3+i)),x[i-1],&zero,(unsigned long) n1);
00036           m1=m1+n1;
00037   }
00038   *Lstk(Top+1) = l + m1;      
00039                 
00040 } 

Here is the call graph for this function:

int var2sci ( void *  x,
int  n,
int  m,
int  typ_var 
)

Definition at line 2224 of file intcscicos.c.

Referenced by createblklist(), and sciblk4().

02225 {
02226   /************************************
02227    * variables and constants définition
02228    ************************************/
02229   /*counter and address variable declaration*/
02230   int nm,il,l,j,err;
02231 
02232   /*define all type of accepted ptr */
02233   double *x_d,*ptr_d;
02234   char *x_c,*ptr_c;
02235   unsigned char *x_uc,*ptr_uc;
02236   short *x_s,*ptr_s;
02237   unsigned short *x_us,*ptr_us;
02238   int *x_i,*ptr_i;
02239   unsigned int *x_ui,*ptr_ui;
02240   long *x_l,*ptr_l;
02241   unsigned long *x_ul,*ptr_ul;
02242 
02243   /* Check if the stack is not full */
02244   if (Top >= Bot) 
02245   {
02246    err = 1;
02247    return err;
02248   }
02249   else
02250   {
02251    Top = Top + 1;
02252    il = iadr(*Lstk(Top));
02253    l = sadr(il+4);
02254   }
02255 
02256   /* set number of double needed to store data */
02257   if (typ_var==10) nm=n*m; /*double real matrix*/
02258   else if (typ_var==11)  nm=n*m*2; /*double real matrix*/
02259   else if (typ_var==80)  nm=(int)(ceil((n*m)/2)+1); /*int*/
02260   else if (typ_var==81)  nm=(int)(ceil((n*m)/8)+1); /*int8*/
02261   else if (typ_var==82)  nm=(int)(ceil((n*m)/4)+1); /*int16*/
02262   else if (typ_var==84)  nm=(int)(ceil((n*m)/2)+1); /*int32*/
02263   else if (typ_var==800) nm=(int)(ceil((n*m)/2)+1); /*uint*/
02264   else if (typ_var==811) nm=(int)(ceil((n*m)/8)+1); /*uint8*/
02265   else if (typ_var==812) nm=(int)(ceil((n*m)/4)+1); /*uint16*/
02266   else if (typ_var==814) nm=(int)(ceil((n*m)/2)+1); /*uint32*/
02267   else nm=n*m; /*double real matrix*/
02268 
02269   /*check if there is free space for new data*/
02270   err = l + nm - *Lstk(Bot);
02271   if (err > 0) 
02272   {
02273    err = 2;
02274    return err;
02275   }
02276 
02277   /**************************
02278    * store data on the stack
02279    *************************/
02280   switch (typ_var) /*for each type of data*/
02281   {
02282        case 10  : /* set header */
02283                   *istk(il) = 1; /*double real matrix*/
02284                   *istk(il+1) = n;
02285                   *istk(il+2) = m;
02286                   *istk(il+3) = 0;
02287                   x_d = (double *) x;
02288                   ptr_d = (double *) stk(l);
02289                   for (j=0;j<m*n;j++) ptr_d[j] = x_d[j];
02290                   break;
02291 
02292        case 11  : /* set header */
02293                   *istk(il) = 1; /*double complex matrix*/
02294                   *istk(il+1) = n;
02295                   *istk(il+2) = m;
02296                   *istk(il+3) = 1;
02297                   x_d = (double *) x;
02298                   ptr_d = (double *) stk(l);
02299                   for (j=0;j<2*m*n;j++) ptr_d[j] = x_d[j];
02300                   break;
02301 
02302        case 80  : /* set header */
02303                   *istk(il) = 8; /*int*/
02304                   *istk(il+1) = n;
02305                   *istk(il+2) = m;
02306                   *istk(il+3) = 4;
02307                   x_i = (int *) x;
02308                   for (j=0;j<m*n;j++)
02309                   {
02310                    ptr_i = (int *) istk(il+4);
02311                    ptr_i[j] = x_i[j];
02312                   }
02313                   break;
02314 
02315        case 81  : /* set header */
02316                   *istk(il) = 8; /*int8*/
02317                   *istk(il+1) = n;
02318                   *istk(il+2) = m;
02319                   *istk(il+3) = 1;
02320                   x_c = (char *) x;
02321                   for (j=0;j<m*n;j++)
02322                   {
02323                    ptr_c = (char *) istk(il+4);
02324                    ptr_c[j] = x_c[j];
02325                   }
02326                   break;
02327 
02328        case 82  : /* set header */
02329                   *istk(il) = 8; /*int16*/
02330                   *istk(il+1) = n;
02331                   *istk(il+2) = m;
02332                   *istk(il+3) = 2;
02333                   x_s = (short *) x;
02334                   for (j=0;j<m*n;j++)
02335                   {
02336                    ptr_s = (short *) istk(il+4);
02337                    ptr_s[j] = x_s[j];
02338                   }
02339                   break;
02340 
02341        case 84  : /* set header */
02342                   *istk(il) = 8; /*int32*/
02343                   *istk(il+1) = n;
02344                   *istk(il+2) = m;
02345                   *istk(il+3) = 4;
02346                   x_l = (long *) x;
02347                   for (j=0;j<m*n;j++)
02348                   {
02349                    ptr_l = (long *) istk(il+4);
02350                    ptr_l[j] = x_l[j];
02351                   }
02352                   break;
02353 
02354        case 800 : /* set header */
02355                   *istk(il) = 8; /*uint*/
02356                   *istk(il+1) = n;
02357                   *istk(il+2) = m;
02358                   *istk(il+3) = 14;
02359                   x_ui = (unsigned int *) x;
02360                   for (j=0;j<m*n;j++)
02361                   {
02362                    ptr_ui = (unsigned int *) istk(il+4);
02363                    ptr_ui[j] = x_ui[j];
02364                   }
02365                   break;
02366 
02367        case 811 : /* set header */
02368                   *istk(il) = 8; /*uint8*/
02369                   *istk(il+1) = n;
02370                   *istk(il+2) = m;
02371                   *istk(il+3) = 11;
02372                   x_uc = (unsigned char *) x;
02373                   for (j=0;j<m*n;j++)
02374                   {
02375                    ptr_uc = (unsigned char *) istk(il+4);
02376                    ptr_uc[j] = x_uc[j];
02377                   }
02378                   break;
02379 
02380        case 812 : /* set header */
02381                   *istk(il) = 8; /*uint16*/
02382                   *istk(il+1) = n;
02383                   *istk(il+2) = m;
02384                   *istk(il+3) = 12;
02385                   x_us = (unsigned short *) x;
02386                   for (j=0;j<m*n;j++)
02387                   {
02388                    ptr_us = (unsigned short *) istk(il+4);
02389                    ptr_us[j] = x_us[j];
02390                   }
02391                   break;
02392 
02393        case 814 : /* set header */
02394                   *istk(il) = 8; /*uint32*/
02395                   *istk(il+1) = n;
02396                   *istk(il+2) = m;
02397                   *istk(il+3) = 14;
02398                   x_ul = (unsigned long *) x;
02399                   for (j=0;j<m*n;j++)
02400                   {
02401                    ptr_ul = (unsigned long *) istk(il+4);
02402                    ptr_ul[j] = x_ul[j];
02403                   }
02404                   break;
02405 
02406        default  : /* set header */
02407                   *istk(il) = 1; /*double real matrix*/
02408                   *istk(il+1) = n;
02409                   *istk(il+2) = m;
02410                   *istk(il+3) = 0;
02411                   x_d = (double *) x;
02412                   for (j=0;j<m*n;j++)
02413                   {
02414                    ptr_d = (double *) stk(il+4);
02415                    ptr_d[j] = x_d[j];
02416                   }
02417                   break;
02418   }
02419 
02420   /* set value in lstk */
02421   *Lstk(Top+1) = l + nm;
02422 
02423   /*return error flag = 0 */
02424   err = 0;
02425   return 0;
02426 }

Here is the caller graph for this function:

void C2F() vvtosci (  ) 

Referenced by createblklist(), sciblk2(), and sciblk2i().

Here is the caller graph for this function:


Variable Documentation

struct { ... } curblk

Referenced by callf(), cdoit(), cosend(), cosini(), cossim(), cossimdaskr(), ddoit(), doit(), edoit(), get_block_number(), getcurblock(), idoit(), intcurblkc(), intscicosimc(), Jdoit(), odoit(), ozdoit(), reinitdoit(), scicos(), and zdoit().

int* il_sim_save [static]

Definition at line 39 of file intcscicos.h.

Referenced by intgetscicosvarsc(), and intscicosimc().

int* il_state_save [static]

Definition at line 38 of file intcscicos.h.

Referenced by intgetscicosvarsc(), and intscicosimc().

integer kfun

Definition at line 40 of file intcscicos.h.

Referenced by bouncexy(), C2F(), cdoit(), cmscope(), cosend(), cosini(), cossim(), cossimdaskr(), cscope(), ddoit(), doit(), edoit(), idoit(), intscicosimc(), Jdoit(), odoit(), ozdoit(), reinitdoit(), scicos(), and zdoit().


Generated on Sun Mar 4 16:11:40 2007 for Scilab [trunk] by  doxygen 1.5.1