mt-Metis
strings.h
Go to the documentation of this file.
1 
13 #ifndef MTMETIS_STRINGS_H
14 #define MTMETIS_STRINGS_H
15 
16 
17 
18 
19 #include <inttypes.h>
20 
21 
22 
23 
24 /******************************************************************************
25 * STRINGS *********************************************************************
26 ******************************************************************************/
27 
28 
29 
30 /* TYPE FORMATS **************************************************************/
31 
32 
33 #define PF_UINT32_T PRIu32
34 #define PF_UINT64_T PRIu64
35 #define PF_INT32_T PRId32
36 #define PF_INT64_T PRId64
37 #define PF_FLOAT_T "0.05f"
38 #define PF_DOUBLE_T "0.05lf"
39 
40 
41 
42 #ifdef MTMETIS_64BIT_VERTICES
43 #define PF_VTX_T PF_UINT64_T
44 #else
45 #define PF_VTX_T PF_UINT32_T
46 #endif
47 #ifdef MTMETIS_64BIT_EDGES
48 #define PF_ADJ_T PF_UINT64_T
49 #else
50 #define PF_ADJ_T PF_UINT32_T
51 #endif
52 #ifdef MTMETIS_64BIT_WEIGHTS
53 #define PF_WGT_T PF_INT64_T
54 #else
55 #define PF_WGT_T PF_INT32_T
56 #endif
57 #ifdef MTMETIS_64BIT_PARTITIONS
58 #define PF_PID_T PF_UINT64_T
59 #else
60 #define PF_PID_T PF_UINT32_T
61 #endif
62 #ifdef MTMETIS_64BIT_THREADS
63 #define PF_TID_T PF_UINT64_T
64 #else
65 #define PF_TID_T PF_UINT32_T
66 #endif
67 #ifdef MTMETIS_DOUBLE_REAL
68 #define PF_REAL_T PF_DOUBLE_T
69 #else
70 #define PF_REAL_T PF_FLOAT_T
71 #endif
72 
73 
74 /* never changes */
75 #define PF_TWGT_T PF_INT64_T
76 
77 
78 
79 /* OPTIONS *******************************************************************/
80 
81 #define MTMETIS_STR_CTYPE_RM "rm"
82 #define MTMETIS_STR_CTYPE_SHEM "shem"
83 #define MTMETIS_STR_CTYPE_FC "fc"
84 
85 #define MTMETIS_STR_CONTYPE_CLS "ls"
86 #define MTMETIS_STR_CONTYPE_DENSE "dense"
87 #define MTMETIS_STR_CONTYPE_SORT "sort"
88 
89 #define MTMETIS_STR_PTYPE_KWAY "kway"
90 #define MTMETIS_STR_PTYPE_ESEP "esep"
91 #define MTMETIS_STR_PTYPE_RB "rb"
92 #define MTMETIS_STR_PTYPE_VSEP "vsep"
93 #define MTMETIS_STR_PTYPE_ND "nd"
94 
95 #define MTMETIS_STR_RTYPE_FM "fm"
96 #define MTMETIS_STR_RTYPE_SFM "sfm"
97 #define MTMETIS_STR_RTYPE_SFG "sfg"
98 #define MTMETIS_STR_RTYPE_GREEDY "greedy"
99 #define MTMETIS_STR_RTYPE_HS "hs"
100 #define MTMETIS_STR_RTYPE_KPM "kpm"
101 
102 #define MTMETIS_STR_VERBOSITY_NONE "none"
103 #define MTMETIS_STR_VERBOSITY_LOW "low"
104 #define MTMETIS_STR_VERBOSITY_MEDIUM "medium"
105 #define MTMETIS_STR_VERBOSITY_HIGH "high"
106 #define MTMETIS_STR_VERBOSITY_MAXIMUM "maximum"
107 
108 #define MTMETIS_STR_DISTRIBUTION_BLOCK "block"
109 #define MTMETIS_STR_DISTRIBUTION_CYCLIC "cyclic"
110 #define MTMETIS_STR_DISTRIBUTION_BLOCKCYCLIC "blockcyclic"
111 
112 #define MTMETIS_STR_IGNORE_NONE "none"
113 #define MTMETIS_STR_IGNORE_VERTEXWEIGHTS "vtx"
114 #define MTMETIS_STR_IGNORE_EDGEWEIGHTS "edge"
115 #define MTMETIS_STR_IGNORE_BOTH "both"
116 
117 #define MTMETIS_STR_SCANTYPE_SQRT "sqrt"
118 #define MTMETIS_STR_SCANTYPE_1PC "1%"
119 #define MTMETIS_STR_SCANTYPE_5PC "5%"
120 #define MTMETIS_STR_SCANTYPE_25PC "25%"
121 #define MTMETIS_STR_SCANTYPE_FULL "full"
122 
123 
124 
125 #endif