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

Function get_array

src/testapi_userdataset.c:18–75  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

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

Callers 1

deploy_testFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected