MCPcopy Create free account
hub / github.com/GenericMappingTools/gmt / get_array

Function get_array

src/testapi_uservectors.c:32–89  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

30static char *type[] = {"char", "uchar", "short", "ushort", "int", "uint", "long", "ulong", "float", "double"};
31
32void *get_array (unsigned int type, unsigned int set) {
33 /* Create an array of given type (return it as void *) and optionally assign data[k] = k */
34 double *d = NULL;
35 float *f = NULL;
36 uint64_t *ul = NULL;
37 int64_t *sl = NULL;
38 unsigned int *ui = NULL;
39 int *si = NULL;
40 unsigned short int *uh = NULL;
41 short int *sh = NULL;
42 unsigned char *uc = NULL;
43 char *sc = NULL;
44 void *vector = NULL;
45 unsigned int k;
46 switch (type) {
47 case GMT_DOUBLE:
48 d = vector = calloc (NROWS, sizeof (double));
49 if (set) for (k = 0; k < NROWS; k++) d[k] = k;
50 break;
51 case GMT_FLOAT:
52 f = vector = calloc (NROWS, sizeof (float));
53 if (set) for (k = 0; k < NROWS; k++) f[k] = k;
54 break;
55 case GMT_ULONG:
56 ul = vector = calloc (NROWS, sizeof (uint64_t));
57 if (set) for (k = 0; k < NROWS; k++) ul[k] = k;
58 break;
59 case GMT_LONG:
60 sl = vector = calloc (NROWS, sizeof (int64_t));
61 if (set) for (k = 0; k < NROWS; k++) sl[k] = k;
62 break;
63 case GMT_UINT:
64 ui = vector = calloc (NROWS, sizeof (unsigned int));
65 if (set) for (k = 0; k < NROWS; k++) ui[k] = k;
66 break;
67 case GMT_INT:
68 si = vector = calloc (NROWS, sizeof (int));
69 if (set) for (k = 0; k < NROWS; k++) si[k] = k;
70 break;
71 case GMT_USHORT:
72 uh = vector = calloc (NROWS, sizeof (unsigned short int));
73 if (set) for (k = 0; k < NROWS; k++) uh[k] = k;
74 break;
75 case GMT_SHORT:
76 sh = vector = calloc (NROWS, sizeof (short int));
77 if (set) for (k = 0; k < NROWS; k++) sh[k] = k;
78 break;
79 case GMT_UCHAR:
80 uc = vector = calloc (NROWS, sizeof (unsigned char));
81 if (set) for (k = 0; k < NROWS; k++) uc[k] = k;
82 break;
83 case GMT_CHAR:
84 sc = vector = calloc (NROWS, sizeof (char));
85 if (set) for (k = 0; k < NROWS; k++) sc[k] = k;
86 break;
87 }
88 return (vector);
89}

Callers 1

deploy_testFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected