29 {
"BPSK_1/2", { 6500, 7200, 13500, 15000, 29300, 32500, 58500, 65000 }, { -82, -79, -76, -73 }, 0, 1 },
30 {
"QPSK_1/2", { 13000, 14400, 27000, 30000, 58500, 65000, 117000, 130000 }, { -79, -76, -73, -70 }, 1, 1 },
31 {
"QPSK_3/4", { 19500, 21700, 40500, 45000, 87800, 97500, 175500, 195000 }, { -77, -74, -71, -68 }, 2, 1 },
32 {
"16QAM_1/2", { 26000, 28900, 54000, 60000, 117000, 130000, 234000, 260000 }, { -74, -71, -71, -68 }, 3, 1 },
33 {
"16QAM_3/4", { 39000, 43300, 81000, 90000, 175500, 195300, 351000, 390000 }, { -70, -67, -64, -61 }, 4, 1 },
34 {
"64QAM_2/3", { 52000, 57800, 108000, 120000, 234000, 260000, 468000, 520000 }, { -66, -63, -60, -57 }, 5, 1 },
35 {
"64QAM_3/4", { 58500, 65000, 121500, 135000, 263300, 292500, 526500, 585000 }, { -65, -62, -59, -56 }, 6, 1 },
36 {
"64QAM_5/6", { 65000, 72200, 135000, 150000, 292500, 325000, 585000, 650000 }, { -64, -61, -58, -55 }, 7, 1 },
37 {
"256QAM_3/4", { 78500, 86700, 162000, 180000, 351000, 390000, 702000, 780000 }, { -62, -59, -56, -53 }, 8, 1 },
38 {
"256QAM_5/6", { 0, 0, 180000, 200000, 390000, 433300, 780000, 866700 }, { -60, -57, -54, -51 }, 9, 1 },
39 {
"1024QAM_3/4", { 0, 0, 0, 0, 0, 0, 0, 0 }, { -57, -54, -51, -48 }, 10, 1 },
40 {
"1024QAM_5/6", { 0, 0, 0, 0, 0, 0, 0, 0 }, { -55, -52, -49, -46 }, 11, 1 },
42 {
"BPSK_1/2", { 13000, 14400, 27000, 30000, 58500, 65000, 117000, 130000 }, { -82, -79, -76, -73 }, 0, 2 },
43 {
"QPSK_1/2", { 26000, 28900, 54000, 60000, 117000, 130000, 234000, 260000 }, { -79, -76, -73, -70 }, 1, 2 },
44 {
"QPSK_3/4", { 39000, 43300, 81000, 90000, 175500, 195000, 351000, 390000 }, { -77, -74, -71, -68 }, 2, 2 },
45 {
"16QAM_1/2", { 52000, 57800, 108000, 120000, 234000, 260000, 468000, 520000 }, { -74, -71, -71, -68 }, 3, 2 },
46 {
"16QAM_3/4", { 78000, 86700, 162000, 180000, 351000, 390000, 702000, 780000 }, { -70, -67, -64, -61 }, 4, 2 },
47 {
"64QAM_2/3", { 104000, 115600, 216000, 240000, 468000, 520000, 936000, 1040000 }, { -66, -63, -60, -57 }, 5, 2 },
48 {
"64QAM_3/4", { 117000, 130000, 243000, 270000, 526500, 585000, 1053000, 1170000 }, { -65, -62, -59, -56 }, 6, 2 },
49 {
"64QAM_5/6", { 130000, 144400, 270000, 300000, 585000, 650000, 1170000, 1300000 }, { -64, -61, -58, -55 }, 7, 2 },
50 {
"256QAM_3/4", { 156000, 173300, 324000, 360000, 702000, 780000, 1404000, 1560000 }, { -62, -59, -56, -53 }, 8, 2 },
51 {
"256QAM_5/6", { 0, 0, 360000, 400000, 780000, 866700, 1560000, 1733400 }, { -60, -57, -54, -51 }, 9, 2 },
52 {
"1024QAM_3/4", { 0, 0, 0, 0, 0, 0, 0, 0 }, { -57, -54, -51, -48 }, 10, 2 },
53 {
"1024QAM_5/6", { 0, 0, 0, 0, 0, 0, 0, 0 }, { -55, -52, -49, -46 }, 11, 2 },
55 {
"BPSK_1/2", { 19500, 21700, 40500, 45000, 87800, 97500, 175500, 195000 }, { -82, -79, -76, -73 }, 0, 3 },
56 {
"QPSK_1/2", { 39000, 43300, 81000, 90000, 175500, 195000, 351000, 390000 }, { -79, -76, -73, -70 }, 1, 3 },
57 {
"QPSK_3/4", { 58500, 65000, 121500, 135000, 263300, 292500, 526500, 585000 }, { -77, -74, -71, -68 }, 2, 3 },
58 {
"16QAM_1/2", { 78000, 86700, 162000, 180000, 351000, 390000, 702000, 780000 }, { -74, -71, -71, -68 }, 3, 3 },
59 {
"16QAM_3/4", { 117000, 130700, 243000, 270000, 526500, 585000, 1053000, 1170000 }, { -70, -67, -64, -61 }, 4, 3 },
60 {
"64QAM_2/3", { 156000, 173300, 324000, 360000, 702000, 780000, 1404000, 1560000 }, { -66, -63, -60, -57 }, 5, 3 },
61 {
"64QAM_3/4", { 175500, 195000, 364500, 405000, 0, 0, 1579500, 1755000 }, { -65, -62, -59, -56 }, 6, 3 },
62 {
"64QAM_5/6", { 195000, 216700, 405000, 450000, 877500, 975000, 1755000, 1950000 }, { -64, -61, -58, -55 }, 7, 3 },
63 {
"256QAM_3/4", { 234000, 260000, 486000, 540000, 1053000, 117000, 2106000, 2340000 }, { -62, -59, -56, -53 }, 8, 3 },
64 {
"256QAM_5/6", { 260000, 288900, 540000, 600000, 1170000, 130000, 0, 0 }, { -60, -57, -54, -51 }, 9, 3 },
65 {
"1024QAM_3/4", { 0, 0, 0, 0, 0, 0, 0, 0 }, { -57, -54, -51, -48 }, 10, 3 },
66 {
"1024QAM_5/6", { 0, 0, 0, 0, 0, 0, 0, 0 }, { -55, -52, -49, -46 }, 11, 3 },
68 {
"BPSK_1/2", { 26000, 28800, 54000, 60000, 117000, 130000, 234000, 260000 }, { -82, -79, -76, -73 }, 0, 4 },
69 {
"QPSK_1/2", { 52000, 57600, 108000, 120000, 234000, 260000, 468000, 520000 }, { -79, -76, -73, -70 }, 1, 4 },
70 {
"QPSK_3/4", { 78000, 86800, 162000, 180000, 351000, 390000, 702000, 780000 }, { -77, -74, -71, -68 }, 2, 4 },
71 {
"16QAM_1/2", { 104000, 115600, 216000, 240000, 468000, 520000, 936000, 1040000 }, { -74, -71, -71, -68 }, 3, 4 },
72 {
"16QAM_3/4", { 156000, 173200, 324000, 360000, 702000, 780000, 1404000, 1560000 }, { -70, -67, -64, -61 }, 4, 4 },
73 {
"64QAM_2/3", { 208000, 231200, 432000, 480000, 936000, 1040000, 1872000, 2080000 }, { -66, -63, -60, -57 }, 5, 4 },
74 {
"64QAM_3/4", { 234000, 260000, 486000, 540000, 1053000, 1170000, 2106000, 2340000 }, { -65, -62, -59, -56 }, 6, 4 },
75 {
"64QAM_5/6", { 260000, 288800, 540000, 600000, 1170000, 1300000, 2340000, 2600000 }, { -64, -61, -58, -55 }, 7, 4 },
76 {
"256QAM_3/4", { 312000, 346700, 648000, 720000, 1404000, 1560000, 2808000, 3120000 }, { -62, -59, -56, -53 }, 8, 4 },
77 {
"256QAM_5/6", { 0, 0, 720000, 800000, 1560000, 1733300, 3120000, 3466700 }, { -60, -57, -54, -51 }, 9, 4 },
78 {
"1024QAM_3/4", { 0, 0, 0, 0, 0, 0, 0, 0 }, { -57, -54, -51, -48 }, 10, 4 },
79 {
"1024QAM_5/6", { 0, 0, 0, 0, 0, 0, 0, 0 }, { -55, -52, -49, -46 }, 11, 4 }
86 return std::vector<Info>(mcsInfos, mcsInfos +
sizeof(mcsInfos) /
sizeof(
Info));
94 return getRate(tmp.first, tmp.second, bandwidth, shortGI);
113 return std::make_pair(mcsIndex %
NUM_HT_INDEX, (mcsIndex / NUM_HT_INDEX) + 1);
134 switch (bandwidthIndex) {
static unsigned getRate(std::uint8_t mcsIndex, unsigned bandwidth, bool shortGI)
static constexpr unsigned NUM_HT_INDEX
static std::pair< std::uint8_t, std::uint8_t > fromHTIndex(std::uint8_t mcsIndex)
static constexpr unsigned MAX_INDEX
static constexpr unsigned NUM_STREAMS
static std::uint8_t toHTIndex(std::uint8_t index, std::uint8_t streams)
static std::vector< Info > getInfos()
static std::uint8_t toBandwidthIndex(unsigned bandwidth, bool shortGI=false)
static unsigned fromBandwidthIndex(std::uint8_t bandwidthIndex)