8 #include "../fielddefines.h"
10 #if defined(ENABLE_FIELD_BYTES_INT_1)
14 #include "../lintrans.h"
15 #include "../sketch_impl.h"
19 #include "../sketch.h"
22 #ifdef ENABLE_FIELD_INT_2
26 constexpr StatTable2 SQR_TABLE_2({0x1, 0x3});
27 constexpr StatTable2 QRT_TABLE_2({0x2, 0});
28 typedef Field<uint8_t, 2, 3, StatTable2, DynTable2, &SQR_TABLE_2, &QRT_TABLE_2> Field2;
31 #ifdef ENABLE_FIELD_INT_3
35 constexpr StatTable3 SQR_TABLE_3({0x1, 0x4, 0x6});
36 constexpr StatTable3 QRT_TABLE_3({0, 0x4, 0x6});
37 typedef Field<uint8_t, 3, 3, StatTable3, DynTable3, &SQR_TABLE_3, &QRT_TABLE_3> Field3;
40 #ifdef ENABLE_FIELD_INT_4
44 constexpr StatTable4 SQR_TABLE_4({0x1, 0x4, 0x3, 0xc});
45 constexpr StatTable4 QRT_TABLE_4({0x6, 0xa, 0x8, 0});
46 typedef Field<uint8_t, 4, 3, StatTable4, DynTable4, &SQR_TABLE_4, &QRT_TABLE_4> Field4;
49 #ifdef ENABLE_FIELD_INT_5
53 constexpr StatTable5 SQR_TABLE_5({0x1, 0x4, 0x10, 0xa, 0xd});
54 constexpr StatTable5 QRT_TABLE_5({0x14, 0x8, 0xa, 0, 0xe});
55 typedef Field<uint8_t, 5, 5, StatTable5, DynTable5, &SQR_TABLE_5, &QRT_TABLE_5> Field5;
58 #ifdef ENABLE_FIELD_INT_6
62 constexpr StatTable6 SQR_TABLE_6({0x1, 0x4, 0x10, 0x3, 0xc, 0x30});
63 constexpr StatTable6 QRT_TABLE_6({0x3a, 0x26, 0x24, 0x14, 0x20, 0});
64 typedef Field<uint8_t, 6, 3, StatTable6, DynTable6, &SQR_TABLE_6, &QRT_TABLE_6> Field6;
67 #ifdef ENABLE_FIELD_INT_7
71 constexpr StatTable7 SQR_TABLE_7({0x1, 0x4, 0x10, 0x40, 0x6, 0x18, 0x60});
72 constexpr StatTable7 QRT_TABLE_7({0, 0x14, 0x16, 0x72, 0x12, 0x40, 0x7a});
73 typedef Field<uint8_t, 7, 3, StatTable7, DynTable7, &SQR_TABLE_7, &QRT_TABLE_7> Field7;
76 #ifdef ENABLE_FIELD_INT_8
80 constexpr StatTable8 SQR_TABLE_8({0x1, 0x4, 0x10, 0x40, 0x1b, 0x6c, 0xab, 0x9a});
81 constexpr StatTable8 QRT_TABLE_8({0xbc, 0x2a, 0x28, 0x86, 0x2c, 0xde, 0x8e, 0});
82 typedef Field<uint8_t, 8, 27, StatTable8, DynTable8, &SQR_TABLE_8, &QRT_TABLE_8> Field8;
89 #ifdef ENABLE_FIELD_INT_2
92 #ifdef ENABLE_FIELD_INT_3
95 #ifdef ENABLE_FIELD_INT_4
98 #ifdef ENABLE_FIELD_INT_5
101 #ifdef ENABLE_FIELD_INT_6
104 #ifdef ENABLE_FIELD_INT_7
107 #ifdef ENABLE_FIELD_INT_8
110 default:
return nullptr;
A linear transformation constructed using LinTrans tables for sections of bits.
Abstract class for internal representation of a minisketch object.
Sketch * ConstructGeneric1Byte(int bits, int implementation)