Belle II Software  release-05-02-19
common.h
1 
2 /*
3  * common.h - common includes and parameters
4  *
5  * this file is part of PJFry library
6  * Copyright 2011 Valery Yundin
7  */
8 
9 #ifndef QUL_COMMON_H
10 #define QUL_COMMON_H
11 
12 #ifdef HAVE_CONFIG_H
13 # include "config.h"
14 #endif /* HAVE_CONFIG_H */
15 
16 #include <complex>
17 #include <limits>
18 #include <inttypes.h>
19 // #include <stdint.h>
20 
21 #include <cassert>
22 #ifndef NDEBUG
23 #include <cstdio> // DEBUG
24 #endif
25 
26 typedef std::complex<double> ncomplex;
27 // typedef long long int int64_t;
28 
29 // Forward declarations
30 class ICache;
31 
32 class MCache;
33 class MCache5;
34 
35 class Minor5;
36 
37 class Kinem5;
38 class Kinem4;
39 class Kinem3;
40 class Kinem2;
41 
42 #define CONST __attribute__ ((const))
43 #define PURE __attribute__ ((pure))
44 
45 #ifdef USE_GOLEM_MODE
46 # define USE_ZERO_CHORD "1" /* calculate formfactors for zero-chord */
47 # define USE_GOLEM_MODE_6 "1" /* support 6-pinched kinematics */
48 # define USE_GOLEM_ZERO_CHECK "1" /* enable checks for i,j,k==s,t,u */
49 #endif
50 
51 // Approx 1% slowdown
52 #define USE_SMART_INSERT "1" /* before adding new, delete same old entries in MCache2,3 */
53 
54 #define USE_DIRTY_RESET "1" /* when told to clear caches, just set len=0 */
55 
56 #endif /* QUL_COMMON_H */
57