genmcuprod.c

Go to the documentation of this file.
00001 #include "machine.h"
00002 typedef signed char integer1;
00003 typedef short integer2;
00004 /*     Copyright INRIA */
00005 static integer c__1 = 1;
00006 #define MCUPROD(Type) {\
00007 Type *A;\
00008     A=(Type *)a;\
00009     if (*job == 0) {\
00010          C2F(gencuprod)(typ,&mn, A, &c__1);\
00011     }\
00012     else if (*job == 1) {\
00013         for (j = 0; j < *n; ++j) {\
00014             C2F(gencuprod)(typ,m, &A[j * (*na) ], &c__1);\
00015         }}\
00016     else if (*job == 2) {\
00017         for (i = 0; i < *m; ++i) {\
00018             C2F(gencuprod)(typ,n, &A[i], na);\
00019         }\
00020     }\
00021 }
00022 
00023 int C2F(genmcuprod)(typ,job, a, na, m, n)
00024      integer *typ, *job, *a, *na, *m, *n;
00025 {
00026   extern integer  C2F(gencuprod)();
00027   static integer  i, j, mn;
00028 
00029   mn=(*m)*(*n);
00030 
00031   switch (*typ) {
00032   case 1:
00033     MCUPROD(integer1);
00034     break;
00035   case 2:
00036     MCUPROD(integer2);
00037     break;
00038   case 4:
00039     MCUPROD(integer);
00040     break;
00041   case 11:
00042     MCUPROD(unsigned char);
00043     break;
00044   case 12:
00045     MCUPROD(unsigned short);
00046     break;
00047   case 14:
00048     MCUPROD(unsigned int);
00049     break;
00050   }
00051   return 0;
00052 }

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