genextrac2.c

Go to the documentation of this file.
00001 #include "machine.h"
00002 #include "genextrac2.h"
00003 typedef signed char integer1;
00004 typedef short integer2;
00005 /*     Copyright INRIA */
00006 
00007 #define EXTRAC2(Type) {\
00008 Type *FROM;\
00009 Type *TO;\
00010     FROM=(Type *)from;\
00011     --FROM;\
00012     TO=(Type *)to;\
00013     --TO;\
00014        l = 1;\
00015        for (j = 1; j <= *nj; ++j) \
00016           for (i = 1; i <= *mi; ++i) {\
00017             TO[l] = FROM[indxi[i]+(indxj[j]-1)*(*m)];\
00018             l = l+1;}\
00019 }
00020 
00021 
00022 int C2F(genextrac2)(integer *typ,integer *mi,integer *nj,integer *indxi,integer *indxj,integer *from,integer *m,integer *to)
00023 {
00024   static integer i, j, l;
00025   --indxi;
00026   --indxj;
00027   switch (*typ) {
00028   case 1:
00029     EXTRAC2(integer1);
00030     break;
00031   case 2:
00032     EXTRAC2(integer2);
00033     break;
00034   case 4:
00035     EXTRAC2(integer);
00036     break;
00037   case 11:
00038     EXTRAC2(unsigned char);
00039     break;
00040   case 12:
00041     EXTRAC2(unsigned short);
00042     break;
00043   case 14:
00044     EXTRAC2(unsigned int);
00045     break;
00046   }
00047   return 0;
00048 }
00049 

Generated on Sun Mar 4 15:03:57 2007 for Scilab [trunk] by  doxygen 1.5.1