GNU Radio's BLOCKSTREAM Package
types.h
Go to the documentation of this file.
1 #ifndef TYPES_H_
2 #define TYPES_H_
3 
4 #include <cstdint>
5 
6 // type for the bits
7 //using B_8 = signed char;
8 //using B_16 = short;
9 //using B_32 = int;
10 //using B_64 = long long;
11 using B_8 = int8_t;
12 using B_16 = int16_t;
13 using B_32 = int32_t;
14 using B_64 = int64_t;
15 
16 // type for the real numbers (before quantization)
17 using R_8 = float;
18 using R_16 = float;
19 using R_32 = float;
20 using R_64 = double;
21 
22 // type for the real numbers (after quantization)
23 using Q_8 = signed char;
24 using Q_16 = short;
25 using Q_32 = float;
26 using Q_64 = double;
27 
28 // type for the real numbers inside the decoder (could be used or not depending on the decoder)
29 using QD_8 = short;
30 using QD_16 = short;
31 using QD_32 = float;
32 using QD_64 = double;
33 
34 #if defined(PREC_8_BIT)
35  using B = B_8;
36  using R = R_8;
37  using Q = Q_8;
38  using QD = QD_8;
39 #elif defined(PREC_16_BIT)
40  using B = B_16;
41  using R = R_16;
42  using Q = Q_16;
43  using QD = QD_16;
44 #elif defined(PREC_64_BIT)
45  using B = B_64;
46  using R = R_64;
47  using Q = Q_64;
48  using QD = QD_64;
49 #else // PREC_32_BIT
50  using B = B_32;
51  using R = R_32;
52  using Q = Q_32;
53  using QD = QD_32;
54  #ifndef PREC_32_BIT
55  #define PREC_32_BIT
56  #endif
57 #endif
58 
59 #endif /* TYPES_H_ */
QD_32 QD
Definition: types.h:53
int8_t B_8
Definition: types.h:11
double QD_64
Definition: types.h:32
int32_t B_32
Definition: types.h:13
float QD_32
Definition: types.h:31
Q_32 Q
Definition: types.h:52
int16_t B_16
Definition: types.h:12
double R_64
Definition: types.h:20
int64_t B_64
Definition: types.h:14
signed char Q_8
Definition: types.h:23
short Q_16
Definition: types.h:24
R_32 R
Definition: types.h:51
float R_8
Definition: types.h:17
B_32 B
Definition: types.h:50
short QD_16
Definition: types.h:30
double Q_64
Definition: types.h:26
short QD_8
Definition: types.h:29
float Q_32
Definition: types.h:25
float R_16
Definition: types.h:18
float R_32
Definition: types.h:19