34 #if defined(HAVE_CONFIG_H)
35 # include "cs_config.h"
49 #if defined(ENABLE_NLS) && defined(HAVE_GETTEXT)
52 # define _(String) dgettext(PACKAGE, String)
54 # define N_(String) gettext_noop(String)
56 # define N_(String) String
61 # define _(String) (String)
62 # define N_(String) String
63 # define textdomain(String) (String)
64 # define gettext(String) (String)
65 # define dgettext(Domain,String) (String)
66 # define dcgettext(Domain,String,Type) (String)
67 # define bindtextdomain(Domain, Directory) (Domain)
79 #if defined(HAVE_MPI) && !defined(CS_IGNORE_MPI)
83 # if !defined(MPI_VERSION)
84 # define MPI_VERSION 1
89 # define MPI_INFO_NULL 0
94 #if defined(HAVE_OPENMP)
106 #if !defined(__STDC_VERSION__)
107 # define __STDC_VERSION__ 1989
115 #if (__STDC_VERSION__ < 199901L)
117 # if defined(__GNUC__)
118 # define inline __inline__
119 # define restrict __restrict__
129 # ifndef HAVE_RESTRICT
158 #elif HAVE_INTTYPES_H
159 # include <inttypes.h>
166 #if defined(HAVE_SYS_TYPES_H)
167 #include <sys/types.h>
173 # include <stdbool.h>
177 # define _Bool signed char;
185 # define __bool_true_false_are_defined 1
190 #if !defined(HAVE_INT32_T)
191 # if (SIZEOF_INT == 4)
193 # elif (SIZEOF_SHORT == 4)
194 typedef short int32_t;
202 #if !defined(HAVE_INT64_T)
203 # if (SIZEOF_INT == 8)
205 # elif (SIZEOF_LONG == 8)
206 typedef long int64_t;
207 # elif (HAVE_LONG_LONG == 8)
208 typedef long long int64_t;
216 #if !defined(HAVE_UINT32_T)
217 # if (SIZEOF_INT == 4)
218 typedef unsigned uint32_t;
219 # elif (SIZEOF_SHORT == 4)
220 typedef unsigned short uint32_t;
228 #if !defined(HAVE_UINT64_T)
229 # if (SIZEOF_INT == 8)
230 typedef unsigned uint64_t;
231 # elif (SIZEOF_LONG == 8)
232 typedef unsigned long uint64_t;
233 # elif (HAVE_LONG_LONG)
234 typedef unsigned long long uint64_t;
278 #if defined(HAVE_LONG_GNUM)
279 #if (SIZEOF_LONG == 8)
281 #elif (SIZEOF_LONG_LONG == 8)
327 #if defined(HAVE_MPI) && !defined(CS_IGNORE_MPI)
329 # define CS_MPI_INT MPI_INT
330 # define CS_MPI_REAL MPI_DOUBLE
334 # if defined(HAVE_LONG_GNUM)
335 # if (SIZEOF_LONG == 8)
336 # define CS_MPI_GNUM MPI_UNSIGNED_LONG
337 # elif (SIZEOF_LONG_LONG == 8)
338 # if defined(MPI_UNSIGNED_LONG_LONG)
339 # define CS_MPI_GNUM MPI_UNSIGNED_LONG_LONG
340 # elif defined(MPI_LONG_LONG)
341 # define CS_MPI_GNUM MPI_LONG_LONG
344 # if !defined(CS_MPI_GNUM)
348 # define CS_MPI_GNUM MPI_UNSIGNED
351 # define CS_MPI_LNUM MPI_INT
352 # define CS_MPI_COORD MPI_DOUBLE
359 #if defined(HAVE_LONG_GNUM)
360 # define CS_GNUM_TYPE CS_UINT64
361 #elif (SIZEOF_INT == 8)
362 # define CS_GNUM_TYPE CS_UINT64
364 # define CS_GNUM_TYPE CS_UINT32
367 #if (SIZEOF_INT == 8)
368 # define CS_LNUM_TYPE CS_INT64
370 # define CS_LNUM_TYPE CS_INT32
373 #if (SIZEOF_INT == 8)
374 # define CS_INT_TYPE CS_INT64
376 # define CS_INT_TYPE CS_INT32
379 #define CS_REAL_TYPE CS_DOUBLE
380 #define CS_COORD_TYPE CS_DOUBLE
386 #if defined(__bgq__) && defined(__xlc__)
387 # define CS_THR_MIN 1014
389 # define CS_THR_MIN 128
395 #define CS_CL_SIZE 64
401 #define CS_ABS(a) ((a) < 0 ? -(a) : (a))
402 #define CS_MIN(a,b) ((a) < (b) ? (a) : (b))
403 #define CS_MAX(a,b) ((a) > (b) ? (a) : (b))
425 #if defined(__cplusplus)
426 # define BEGIN_C_DECLS extern "C" {
427 # define END_C_DECLS }
429 # define BEGIN_C_DECLS
437 #undef BEGIN_EXAMPLE_SCOPE
438 #undef END_EXAMPLE_SCOPE
440 #define BEGIN_EXAMPLE_SCOPE {
441 #define END_EXAMPLE_SCOPE }
452 #if !defined (__hpux)
453 #define CS_PROCF(x, y) x##_
455 #define CS_PROCF(x, y) x
465 #if defined (__uxpv__)
466 #define CS_ARGF_SUPP_CHAINE
468 #define CS_ARGF_SUPP_CHAINE , ...
489 #if defined(HAVE_MPI) && !defined(CS_IGNORE_MPI)
502 #if defined(HAVE_MPI) && !defined(CS_IGNORE_MPI)
MPI_Comm cs_glob_mpi_comm
Definition: cs_defs.c:169
cs_datatype_t
Definition: cs_defs.h:255
unsigned long cs_gnum_t
global mesh entity number
Definition: cs_defs.h:280
Definition: cs_defs.h:262
const cs_real_t cs_defs_big_r
Definition: cs_defs.c:119
cs_real_t cs_real_2_t[2]
vector of 2 floating-point values
Definition: cs_defs.h:306
Definition: cs_defs.h:261
const cs_real_t cs_defs_infinite_r
Definition: cs_defs.c:116
cs_real_t cs_real_6_t[6]
vector of 6 floating-point values
Definition: cs_defs.h:309
Definition: cs_defs.h:413
cs_real_t cs_real_34_t[3][4]
Definition: cs_defs.h:314
cs_real_t cs_real_66_t[6][6]
6x6 matrix of floating-point values
Definition: cs_defs.h:312
char cs_byte_t
Definition: cs_defs.h:297
cs_interlace_t
Definition: cs_defs.h:411
int cs_int_t
Fortran-compatible integer.
Definition: cs_defs.h:295
Definition: cs_defs.h:257
int cs_glob_n_ranks
Definition: cs_defs.c:165
cs_real_66_t cs_real_662_t[2]
Definition: cs_defs.h:320
Definition: cs_defs.h:264
double cs_coord_t
Definition: cs_defs.h:293
cs_real_t cs_real_4_t[4]
vector of 4 floating-point values
Definition: cs_defs.h:308
Definition: cs_defs.h:414
Definition: cs_defs.h:259
int cs_glob_n_threads
Definition: cs_defs.c:162
MPI_Datatype cs_datatype_to_mpi[]
Definition: cs_defs.c:148
cs_real_33_t cs_real_332_t[2]
vector of 2 3x3 matrices of floating-point values
Definition: cs_defs.h:318
int cs_lnum_2_t[2]
vector of 2 local mesh-entity ids
Definition: cs_defs.h:301
Definition: cs_defs.h:263
cs_real_t cs_real_3_t[3]
vector of 3 floating-point values
Definition: cs_defs.h:307
const cs_real_t cs_defs_pi
Definition: cs_defs.c:122
const size_t cs_datatype_size[]
Definition: cs_defs.c:126
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:292
double cs_coord_3_t[3]
Definition: cs_defs.h:303
Definition: cs_defs.h:258
double cs_real_t
Definition: cs_defs.h:296
cs_real_t cs_real_33_t[3][3]
3x3 matrix of floating-point values
Definition: cs_defs.h:311
const char * cs_datatype_name[]
Definition: cs_defs.c:135
cs_real_t cs_real_63_t[6][3]
Definition: cs_defs.h:316
Definition: cs_defs.h:260
int cs_glob_rank_id
Definition: cs_defs.c:164
const cs_real_t cs_defs_epzero
Definition: cs_defs.c:113