genmcopy.c File Reference

#include "machine.h"

Include dependency graph for genmcopy.c:

Go to the source code of this file.

Defines

#define MCOPY(Type)

Typedefs

typedef signed char integer1
typedef short integer2

Functions

int C2F() genmcopy (integer *typ, int *a, integer *na, int *b, integer *nb, integer *m, integer *n)


Define Documentation

#define MCOPY ( Type   ) 

Value:

{\
Type *A;\
Type *B;\
    A=(Type *)a;\
    --A;\
    B=(Type *)b;\
    --B;\
    if (*na == *m && *nb == *m) {\
      mn = (*m) * (*n);\
      for (i = 1; i <= mn; ++i) B[i] = A[i];\
    }\
    else {\
    ia = -(*na);ib = -(*nb); \
    for (j = 1; j <= *n; ++j) {\
      ia += *na;ib += *nb;\
      for (i = 1; i <= *m; ++i) B[ib + i] = A[ia + i];\
    }\
    }\
}

Definition at line 6 of file genmcopy.c.


Typedef Documentation

typedef signed char integer1

Definition at line 2 of file genmcopy.c.

typedef short integer2

Definition at line 3 of file genmcopy.c.


Function Documentation

int C2F() genmcopy ( integer typ,
int a,
integer na,
int b,
integer nb,
integer m,
integer n 
)

Definition at line 25 of file genmcopy.c.

References i, ia, ib, j, MCOPY, and typ.

00032 {
00033   static integer i, j, ia, ib, mn;
00034   switch (*typ) {
00035   case 1:
00036     MCOPY(integer1);
00037     break;
00038   case 2:
00039     MCOPY(integer2);
00040     break;
00041   case 4:
00042     MCOPY(integer);
00043     break;
00044   case 11:
00045     MCOPY(unsigned char);
00046     break;
00047   case 12:
00048     MCOPY(unsigned short);
00049     break;
00050   case 14:
00051     MCOPY(unsigned int);
00052     break;
00053   }
00054   return 0;
00055 }


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