genprod.c File Reference

#include "machine.h"
#include "genprod.h"

Include dependency graph for genprod.c:

Go to the source code of this file.

Defines

#define PROD(Type)

Typedefs

typedef signed char integer1
typedef short integer2

Functions

integer C2F() genprod (integer *typ, integer *n, integer *dx, integer *incx)


Define Documentation

#define PROD ( Type   ) 

Value:

{\
Type *DX;\
 DX=(Type *)dx;\
 --DX;\
 if (*incx == 1) {\
   for (i = 1; i <= *n; ++i) dtemp *= (integer)DX[i];\
 }\
 else {\
   i1 = *n * *incx;i2 = *incx;\
   for (i = 1; i2 < 0 ? i >= i1 : i <= i1; i += i2) dtemp *= (integer)DX[i];\
 }\
}

Definition at line 7 of file genprod.c.

Referenced by genprod().


Typedef Documentation

typedef signed char integer1

Definition at line 3 of file genprod.c.

typedef short integer2

Definition at line 4 of file genprod.c.


Function Documentation

integer C2F() genprod ( integer typ,
integer n,
integer dx,
integer incx 
)

Definition at line 20 of file genprod.c.

References i, i1, i2, n, PROD, and typ.

Referenced by genmprod().

00021 {
00022     integer  i1, i2;
00023     static integer i, dtemp;
00024 
00025 
00026     dtemp = 1;
00027     if (*n <= 0) return dtemp;
00028 
00029     switch (*typ) {
00030     case 1:
00031       PROD(integer1);
00032       break;
00033     case 2:
00034       PROD(integer2);
00035       break;
00036     case 4:
00037       PROD(integer);
00038       break;
00039     case 11:
00040       PROD(unsigned char);
00041       break;
00042     case 12:
00043       PROD(unsigned short);
00044       break;
00045     case 14:
00046       PROD(unsigned int);
00047       break;
00048     }
00049     return dtemp;
00050 }

Here is the caller graph for this function:


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