wl_13 构造方法

在这里插入图片描述

类代码

类代码public class Ming_gou {
    private String name;
    private int age;
    public Ming_gou(){
        System.out.println("无参构造方法");
    }
    public Ming_gou(String name,int age){
        this.name=name;
        this.age=age;
        System.out.println("全参构造方法");
    }
    public void setName(String name ){
        this.name=name;
    }
    public String getName(){
        return name;
    }
    public void setAge(int age){
        this.age=age;
    }
    public int getAge(){
        return age;
    }

}

对象代码

public class ming_test {
    public static void main(String[] args) {
        Ming_gou one =new Ming_gou(); //无参构造
        System.out.println("==========");
        Ming_gou two = new Ming_gou("wl",20);
        System.out.println("姓名:"+two.getName()+"\n年龄"+ two.getAge());
        two.setAge(50);
        System.out.println("姓名:"+two.getName()+"\n年龄"+ two.getAge());

    }
}
enum rate_set_2g_20m { RATE_SET_2G_20M_0, RATE_SET_2G_20M_1, RATE_SET_2G_20M_2, RATE_SET_2G_20M_3, RATE_SET_2G_20M_4, RATE_SET_2G_20M_5, RATE_SET_2G_20M_6, RATE_SET_2G_20M_7, RATE_SET_2G_20M_8, RATE_SET_2G_20M_9, RATE_SET_2G_20M_10, RATE_SET_2G_20M_11, RATE_SET_2G_20M_12, RATE_SET_2G_20M_13, RATE_SET_2G_20M_14, RATE_SET_2G_20M_15, RATE_SET_2G_20M_16, RATE_SET_2G_20M_17, RATE_SET_2G_20M_18, RATE_SET_2G_20M_19, RATE_SET_2G_20M_20, RATE_SET_2G_20M_21, RATE_SET_2G_20M_22, RATE_SET_2G_20M_23, RATE_SET_2G_20M_24, RATE_SET_2G_20M_25, RATE_SET_2G_20M_26, RATE_SET_2G_20M_27, RATE_SET_2G_20M_28, RATE_SET_2G_20M_29, RATE_SET_2G_20M_30, RATE_SET_2G_20M_31, =, =, =, =, =, =, =, =, =, =, =, =, =, =, = RATE_SET_2G_HT_20M = 32 RATE_SET_2G_HT_20M = 33 RATE_SET_2G_HT_20M = 34 RATE_SET_2G_HT_20M = 32 RATE_SET_2G_HT_20M = 33 RATE_SET_2G_HT_20M = 34 RATE_SET_2G_HT_20M = 32 RATE_SET_2G_HT_20M = 33 RATE_SET_2G_HT_40M = 32 RATE_SET_2G_HT_40M = 33 RATE_SET_2G_HT_40M = 34 RATE_SET_2G_HT_40M = 32 RATE_SET_2G_HT_40M = 33 RATE_SET_2G_HT_40M = 34 RATE_SET_2G_HT_40M = 32 }; static const unsigned char rate_sets_2g_20m[] = { /* 2.4G 20M rate set 0 / 12, WL_RATE_1X1_DSSS_1, WL_RATE_1X1_DSSS_2, WL_RATE_1X1_DSSS_5_5, WL_RATE_1X1_DSSS_11, WL_RATE_1X1_OFDM_6, WL_RATE_1X1_OFDM_9, WL_RATE_1X1_OFDM_12, WL_RATE_1X1_OFDM_18, WL_RATE_1X1_OFDM_24, WL_RATE_1X1_OFDM_36, WL_RATE_1X1_OFDM_48, WL_RATE_1X1_OFDM_54, / 2.4G 20M rate set 1 / 12, WL_RATE_1X1_MCS0, WL_RATE_1X1_MCS1, WL_RATE_1X1_MCS2, WL_RATE_1X1_MCS3, WL_RATE_1X1_MCS4, WL_RATE_1X1_MCS5, WL_RATE_1X1_MCS6, WL_RATE_1X1_MCS7, WL_RATE_1X1_VHT8SS1, WL_RATE_1X1_VHT9SS1, WL_RATE_P_1X1_VHT10SS1, WL_RATE_P_1X1_VHT11SS1, / 2.4G 20M rate set 2 / 12, WL_RATE_1X1_HE0SS1, WL_RATE_1X1_HE1SS1, WL_RATE_1X1_HE2SS1, WL_RATE_1X1_HE3SS1, WL_RATE_1X1_HE4SS1, WL_RATE_1X1_HE5SS1, WL_RATE_1X1_HE6SS1, WL_RATE_1X1_HE7SS1, WL_RATE_1X1_HE8SS1, WL_RATE_1X1_HE9SS1, WL_RATE_1X1_HE10SS1, WL_RATE_1X1_HE11SS1, / 2.4G 20M rate set 3 / 120, WL_RATE_1X2_CDD_OFDM_6, WL_RATE_1X2_CDD_OFDM_9, WL_RATE_1X2_CDD_OFDM_12, WL_RATE_1X2_CDD_OFDM_18, WL_RATE_1X2_CDD_OFDM_24, WL_RATE_1X2_CDD_OFDM_36, WL_RATE_1X2_CDD_OFDM_48, WL_RATE_1X2_CDD_OFDM_54, WL_RATE_1X2_CDD_MCS0, WL_RATE_1X2_CDD_MCS1, WL_RATE_1X2_CDD_MCS2, WL_RATE_1X2_CDD_MCS3, WL_RATE_1X2_CDD_MCS4, WL_RATE_1X2_CDD_MCS5, WL_RATE_1X2_CDD_MCS6, WL_RATE_1X2_CDD_MCS7, WL_RATE_1X2_VHT8SS1, WL_RATE_1X2_VHT9SS1, WL_RATE_2X2_STBC_MCS0, WL_RATE_2X2_STBC_MCS1, WL_RATE_2X2_STBC_MCS2, WL_RATE_2X2_STBC_MCS3, WL_RATE_2X2_STBC_MCS4, WL_RATE_2X2_STBC_MCS5, WL_RATE_2X2_STBC_MCS6, WL_RATE_2X2_STBC_MCS7, WL_RATE_2X2_STBC_VHT8SS1, WL_RATE_2X2_STBC_VHT9SS1, WL_RATE_2X2_SDM_MCS8, WL_RATE_2X2_SDM_MCS9, WL_RATE_2X2_SDM_MCS10, WL_RATE_2X2_SDM_MCS11, WL_RATE_2X2_SDM_MCS12, WL_RATE_2X2_SDM_MCS13, WL_RATE_2X2_SDM_MCS14, WL_RATE_2X2_SDM_MCS15, WL_RATE_2X2_VHT8SS2, WL_RATE_2X2_VHT9SS2, WL_RATE_1X2_TXBF_OFDM_6, WL_RATE_1X2_TXBF_OFDM_9, WL_RATE_1X2_TXBF_OFDM_12, WL_RATE_1X2_TXBF_OFDM_18, WL_RATE_1X2_TXBF_OFDM_24, WL_RATE_1X2_TXBF_OFDM_36, WL_RATE_1X2_TXBF_OFDM_48, WL_RATE_1X2_TXBF_OFDM_54, WL_RATE_1X2_TXBF_MCS0, WL_RATE_1X2_TXBF_MCS1, WL_RATE_1X2_TXBF_MCS2, WL_RATE_1X2_TXBF_MCS3, WL_RATE_1X2_TXBF_MCS4, WL_RATE_1X2_TXBF_MCS5, WL_RATE_1X2_TXBF_MCS6, WL_RATE_1X2_TXBF_MCS7, WL_RATE_1X2_TXBF_VHT8SS1, WL_RATE_1X2_TXBF_VHT9SS1, WL_RATE_2X2_TXBF_SDM_MCS8, WL_RATE_2X2_TXBF_SDM_MCS9, WL_RATE_2X2_TXBF_SDM_MCS10, WL_RATE_2X2_TXBF_SDM_MCS11, WL_RATE_2X2_TXBF_SDM_MCS12, WL_RATE_2X2_TXBF_SDM_MCS13, WL_RATE_2X2_TXBF_SDM_MCS14, WL_RATE_2X2_TXBF_SDM_MCS15, WL_RATE_P_1X2_VHT10SS1, WL_RATE_P_1X2_VHT11SS1, WL_RATE_P_2X2_STBC_VHT10SS1, WL_RATE_P_2X2_STBC_VHT11SS1, WL_RATE_P_1X2_TXBF_VHT10SS1, WL_RATE_P_1X2_TXBF_VHT11SS1, WL_RATE_P_2X2_VHT10SS2, WL_RATE_P_2X2_VHT11SS2, WL_RATE_1X2_HE0SS1, WL_RATE_1X2_HE1SS1, WL_RATE_1X2_HE2SS1, WL_RATE_1X2_HE3SS1, WL_RATE_1X2_HE4SS1, WL_RATE_1X2_HE5SS1, WL_RATE_1X2_HE6SS1, WL_RATE_1X2_HE7SS1, WL_RATE_1X2_HE8SS1, WL_RATE_1X2_HE9SS1, WL_RATE_1X2_HE10SS1, WL_RATE_1X2_HE11SS1, WL_RATE_1X2_TXBF_HE0SS1, WL_RATE_1X2_TXBF_HE1SS1, WL_RATE_1X2_TXBF_HE2SS1, WL_RATE_1X2_TXBF_HE3SS1, WL_RATE_1X2_TXBF_HE4SS1, WL_RATE_1X2_TXBF_HE5SS1, WL_RATE_1X2_TXBF_HE6SS1, WL_RATE_1X2_TXBF_HE7SS1, WL_RATE_1X2_TXBF_HE8SS1, WL_RATE_1X2_TXBF_HE9SS1, WL_RATE_1X2_TXBF_HE10SS1, WL_RATE_1X2_TXBF_HE11SS1, WL_RATE_2X2_HE0SS2, WL_RATE_2X2_HE1SS2, WL_RATE_2X2_HE2SS2, WL_RATE_2X2_HE3SS2, WL_RATE_2X2_HE4SS2, WL_RATE_2X2_HE5SS2, WL_RATE_2X2_HE6SS2, WL_RATE_2X2_HE7SS2, WL_RATE_2X2_HE8SS2, WL_RATE_2X2_HE9SS2, WL_RATE_2X2_HE10SS2, WL_RATE_2X2_HE11SS2, WL_RATE_2X2_TXBF_HE0SS2, WL_RATE_2X2_TXBF_HE1SS2, WL_RATE_2X2_TXBF_HE2SS2, WL_RATE_2X2_TXBF_HE3SS2, WL_RATE_2X2_TXBF_HE4SS2, WL_RATE_2X2_TXBF_HE5SS2, WL_RATE_2X2_TXBF_HE6SS2, WL_RATE_2X2_TXBF_HE7SS2, WL_RATE_2X2_TXBF_HE8SS2, WL_RATE_2X2_TXBF_HE9SS2, WL_RATE_2X2_TXBF_HE10SS2, WL_RATE_2X2_TXBF_HE11SS2, / 2.4G 20M rate set 4 / 124, WL_RATE_1X2_DSSS_1, WL_RATE_1X2_DSSS_2, WL_RATE_1X2_DSSS_5_5, WL_RATE_1X2_DSSS_11, WL_RATE_1X2_CDD_OFDM_6, WL_RATE_1X2_CDD_OFDM_9, WL_RATE_1X2_CDD_OFDM_12, WL_RATE_1X2_CDD_OFDM_18, WL_RATE_1X2_CDD_OFDM_24, WL_RATE_1X2_CDD_OFDM_36, WL_RATE_1X2_CDD_OFDM_48, WL_RATE_1X2_CDD_OFDM_54, WL_RATE_1X2_CDD_MCS0, WL_RATE_1X2_CDD_MCS1, WL_RATE_1X2_CDD_MCS2, WL_RATE_1X2_CDD_MCS3, WL_RATE_1X2_CDD_MCS4, WL_RATE_1X2_CDD_MCS5, WL_RATE_1X2_CDD_MCS6, WL_RATE_1X2_CDD_MCS7, WL_RATE_1X2_VHT8SS1, WL_RATE_1X2_VHT9SS1, WL_RATE_2X2_STBC_MCS0, WL_RATE_2X2_STBC_MCS1, WL_RATE_2X2_STBC_MCS2, WL_RATE_2X2_STBC_MCS3, WL_RATE_2X2_STBC_MCS4, WL_RATE_2X2_STBC_MCS5, WL_RATE_2X2_STBC_MCS6, WL_RATE_2X2_STBC_MCS7, WL_RATE_2X2_STBC_VHT8SS1, WL_RATE_2X2_STBC_VHT9SS1, WL_RATE_2X2_SDM_MCS8, WL_RATE_2X2_SDM_MCS9, WL_RATE_2X2_SDM_MCS10, WL_RATE_2X2_SDM_MCS11, WL_RATE_2X2_SDM_MCS12, WL_RATE_2X2_SDM_MCS13, WL_RATE_2X2_SDM_MCS14, WL_RATE_2X2_SDM_MCS15, WL_RATE_2X2_VHT8SS2, WL_RATE_2X2_VHT9SS2, WL_RATE_1X2_TXBF_OFDM_6, WL_RATE_1X2_TXBF_OFDM_9, WL_RATE_1X2_TXBF_OFDM_12, WL_RATE_1X2_TXBF_OFDM_18, WL_RATE_1X2_TXBF_OFDM_24, WL_RATE_1X2_TXBF_OFDM_36, WL_RATE_1X2_TXBF_OFDM_48, WL_RATE_1X2_TXBF_OFDM_54, WL_RATE_1X2_TXBF_MCS0, WL_RATE_1X2_TXBF_MCS1, WL_RATE_1X2_TXBF_MCS2, WL_RATE_1X2_TXBF_MCS3, WL_RATE_1X2_TXBF_MCS4, WL_RATE_1X2_TXBF_MCS5, WL_RATE_1X2_TXBF_MCS6, WL_RATE_1X2_TXBF_MCS7, WL_RATE_1X2_TXBF_VHT8SS1, WL_RATE_1X2_TXBF_VHT9SS1, WL_RATE_2X2_TXBF_SDM_MCS8, WL_RATE_2X2_TXBF_SDM_MCS9, WL_RATE_2X2_TXBF_SDM_MCS10, WL_RATE_2X2_TXBF_SDM_MCS11, WL_RATE_2X2_TXBF_SDM_MCS12, WL_RATE_2X2_TXBF_SDM_MCS13, WL_RATE_2X2_TXBF_SDM_MCS14, WL_RATE_2X2_TXBF_SDM_MCS15, WL_RATE_P_1X2_VHT10SS1, WL_RATE_P_1X2_VHT11SS1, WL_RATE_P_2X2_STBC_VHT10SS1, WL_RATE_P_2X2_STBC_VHT11SS1, WL_RATE_P_1X2_TXBF_VHT10SS1, WL_RATE_P_1X2_TXBF_VHT11SS1, WL_RATE_P_2X2_VHT10SS2, WL_RATE_P_2X2_VHT11SS2, WL_RATE_1X2_HE0SS1, WL_RATE_1X2_HE1SS1, WL_RATE_1X2_HE2SS1, WL_RATE_1X2_HE3SS1, WL_RATE_1X2_HE4SS1, WL_RATE_1X2_HE5SS1, WL_RATE_1X2_HE6SS1, WL_RATE_1X2_HE7SS1, WL_RATE_1X2_HE8SS1, WL_RATE_1X2_HE9SS1, WL_RATE_1X2_HE10SS1, WL_RATE_1X2_HE11SS1, WL_RATE_1X2_TXBF_HE0SS1, WL_RATE_1X2_TXBF_HE1SS1, WL_RATE_1X2_TXBF_HE2SS1, WL_RATE_1X2_TXBF_HE3SS1, WL_RATE_1X2_TXBF_HE4SS1, WL_RATE_1X2_TXBF_HE5SS1, WL_RATE_1X2_TXBF_HE6SS1, WL_RATE_1X2_TXBF_HE7SS1, WL_RATE_1X2_TXBF_HE8SS1, WL_RATE_1X2_TXBF_HE9SS1, WL_RATE_1X2_TXBF_HE10SS1, WL_RATE_1X2_TXBF_HE11SS1, WL_RATE_2X2_HE0SS2, WL_RATE_2X2_HE1SS2, WL_RATE_2X2_HE2SS2, WL_RATE_2X2_HE3SS2, WL_RATE_2X2_HE4SS2, WL_RATE_2X2_HE5SS2, WL_RATE_2X2_HE6SS2, WL_RATE_2X2_HE7SS2, WL_RATE_2X2_HE8SS2, WL_RATE_2X2_HE9SS2, WL_RATE_2X2_HE10SS2, WL_RATE_2X2_HE11SS2, WL_RATE_2X2_TXBF_HE0SS2, WL_RATE_2X2_TXBF_HE1SS2, WL_RATE_2X2_TXBF_HE2SS2, WL_RATE_2X2_TXBF_HE3SS2, WL_RATE_2X2_TXBF_HE4SS2, WL_RATE_2X2_TXBF_HE5SS2, WL_RATE_2X2_TXBF_HE6SS2, WL_RATE_2X2_TXBF_HE7SS2, WL_RATE_2X2_TXBF_HE8SS2, WL_RATE_2X2_TXBF_HE9SS2, WL_RATE_2X2_TXBF_HE10SS2, WL_RATE_2X2_TXBF_HE11SS2, / 2.4G 20M rate set 5 / 132, WL_RATE_1X2_CDD_OFDM_6, WL_RATE_1X2_CDD_OFDM_9, WL_RATE_1X2_CDD_OFDM_12, WL_RATE_1X2_CDD_OFDM_18, WL_RATE_1X2_CDD_OFDM_24, WL_RATE_1X2_CDD_OFDM_36, WL_RATE_1X2_CDD_OFDM_48, WL_RATE_1X2_CDD_OFDM_54, WL_RATE_1X2_CDD_MCS0, WL_RATE_1X2_CDD_MCS1, WL_RATE_1X2_CDD_MCS2, WL_RATE_1X2_CDD_MCS3, WL_RATE_1X2_CDD_MCS4, WL_RATE_1X2_CDD_MCS5, WL_RATE_1X2_CDD_MCS6, WL_RATE_1X2_CDD_MCS7, WL_RATE_1X2_VHT8SS1, WL_RATE_1X2_VHT9SS1, WL_RATE_2X2_STBC_MCS0, WL_RATE_2X2_STBC_MCS1, WL_RATE_2X2_STBC_MCS2, WL_RATE_2X2_STBC_MCS3, WL_RATE_2X2_STBC_MCS4, WL_RATE_2X2_STBC_MCS5, WL_RATE_2X2_STBC_MCS6, WL_RATE_2X2_STBC_MCS7, WL_RATE_2X2_STBC_VHT8SS1, WL_RATE_2X2_STBC_VHT9SS1, WL_RATE_2X2_SDM_MCS8, WL_RATE_2X2_SDM_MCS9, WL_RATE_2X2_SDM_MCS10, WL_RATE_2X2_SDM_MCS11, WL_RATE_2X2_SDM_MCS12, WL_RATE_2X2_SDM_MCS13, WL_RATE_2X2_SDM_MCS14, WL_RATE_2X2_SDM_MCS15, WL_RATE_2X2_VHT8SS2, WL_RATE_2X2_VHT9SS2, WL_RATE_1X2_TXBF_OFDM_6, WL_RATE_1X2_TXBF_OFDM_9, WL_RATE_1X2_TXBF_OFDM_12, WL_RATE_1X2_TXBF_OFDM_18, WL_RATE_1X2_TXBF_OFDM_24, WL_RATE_1X2_TXBF_OFDM_36, WL_RATE_1X2_TXBF_OFDM_48, WL_RATE_1X2_TXBF_OFDM_54, WL_RATE_1X2_TXBF_MCS0, WL_RATE_1X2_TXBF_MCS1, WL_RATE_1X2_TXBF_MCS2, WL_RATE_1X2_TXBF_MCS3, WL_RATE_1X2_TXBF_MCS4, WL_RATE_1X2_TXBF_MCS5, WL_RATE_1X2_TXBF_MCS6, WL_RATE_1X2_TXBF_MCS7, WL_RATE_1X2_TXBF_VHT8SS1, WL_RATE_1X2_TXBF_VHT9SS1, WL_RATE_2X2_TXBF_SDM_MCS8, WL_RATE_2X2_TXBF_SDM_MCS9, WL_RATE_2X2_TXBF_SDM_MCS10, WL_RATE_2X2_TXBF_SDM_MCS11, WL_RATE_2X2_TXBF_SDM_MCS12, WL_RATE_2X2_TXBF_SDM_MCS13, WL_RATE_2X2_TXBF_SDM_MCS14, WL_RATE_2X2_TXBF_SDM_MCS15, WL_RATE_P_1X2_VHT10SS1, WL_RATE_P_1X2_VHT11SS1, WL_RATE_P_2X2_STBC_VHT10SS1, WL_RATE_P_2X2_STBC_VHT11SS1, WL_RATE_P_1X2_TXBF_VHT10SS1, WL_RATE_P_1X2_TXBF_VHT11SS1, WL_RATE_P_2X2_VHT10SS2, WL_RATE_P_2X2_VHT11SS2, WL_RATE_1X2_HE0SS1, WL_RATE_1X2_HE1SS1, WL_RATE_1X2_HE2SS1, WL_RATE_1X2_HE3SS1, WL_RATE_1X2_HE4SS1, WL_RATE_1X2_HE5SS1, WL_RATE_1X2_HE6SS1, WL_RATE_1X2_HE7SS1, WL_RATE_1X2_HE8SS1, WL_RATE_1X2_HE9SS1, WL_RATE_1X2_HE10SS1, WL_RATE_1X2_HE11SS1, WL_RATE_1X2_TXBF_HE0SS1, WL_RATE_1X2_TXBF_HE1SS1, WL_RATE_1X2_TXBF_HE2SS1, WL_RATE_1X2_TXBF_HE3SS1, WL_RATE_1X2_TXBF_HE4SS1, WL_RATE_1X2_TXBF_HE5SS1, WL_RATE_1X2_TXBF_HE6SS1, WL_RATE_1X2_TXBF_HE7SS1, WL_RATE_1X2_TXBF_HE8SS1, WL_RATE_1X2_TXBF_HE9SS1, WL_RATE_1X2_TXBF_HE10SS1, WL_RATE_1X2_TXBF_HE11SS1, WL_RATE_2X2_HE0SS2, WL_RATE_2X2_HE1SS2, WL_RATE_2X2_HE2SS2, WL_RATE_2X2_HE3SS2, WL_RATE_2X2_HE4SS2, WL_RATE_2X2_HE5SS2, WL_RATE_2X2_HE6SS2, WL_RATE_2X2_HE7SS2, WL_RATE_2X2_HE8SS2, WL_RATE_2X2_HE9SS2, WL_RATE_2X2_HE10SS2, WL_RATE_2X2_HE11SS2, WL_RATE_2X2_TXBF_HE0SS2, WL_RATE_2X2_TXBF_HE1SS2, WL_RATE_2X2_TXBF_HE2SS2, WL_RATE_2X2_TXBF_HE3SS2, WL_RATE_2X2_TXBF_HE4SS2, WL_RATE_2X2_TXBF_HE5SS2, WL_RATE_2X2_TXBF_HE6SS2, WL_RATE_2X2_TXBF_HE7SS2, WL_RATE_2X2_TXBF_HE8SS2, WL_RATE_2X2_TXBF_HE9SS2, WL_RATE_2X2_TXBF_HE10SS2, WL_RATE_2X2_TXBF_HE11SS2, WL_RATE_1X2_EHT12SS1, WL_RATE_1X2_EHT13SS1, WL_RATE_1X2_EHT14SS1, WL_RATE_1X2_EHT15SS1, WL_RATE_1X2_TXBF_EHT12SS1, WL_RATE_1X2_TXBF_EHT13SS1, WL_RATE_1X2_TXBF_EHT14SS1, WL_RATE_1X2_TXBF_EHT15SS1, WL_RATE_2X2_EHT12SS2, WL_RATE_2X2_EHT13SS2, WL_RATE_2X2_TXBF_EHT12SS2, WL_RATE_2X2_TXBF_EHT13SS2, / 2.4G 20M rate set 6 / 144, WL_RATE_1X1_MCS0, WL_RATE_1X1_MCS1, WL_RATE_1X1_MCS2, WL_RATE_1X1_MCS3, WL_RATE_1X1_MCS4, WL_RATE_1X1_MCS5, WL_RATE_1X1_MCS6, WL_RATE_1X1_MCS7, WL_RATE_1X1_VHT8SS1, WL_RATE_1X1_VHT9SS1, WL_RATE_1X2_CDD_OFDM_6, WL_RATE_1X2_CDD_OFDM_9, WL_RATE_1X2_CDD_OFDM_12, WL_RATE_1X2_CDD_OFDM_18, WL_RATE_1X2_CDD_OFDM_24, WL_RATE_1X2_CDD_OFDM_36, WL_RATE_1X2_CDD_OFDM_48, WL_RATE_1X2_CDD_OFDM_54, WL_RATE_1X2_CDD_MCS0, WL_RATE_1X2_CDD_MCS1, WL_RATE_1X2_CDD_MCS2, WL_RATE_1X2_CDD_MCS3, WL_RATE_1X2_CDD_MCS4, WL_RATE_1X2_CDD_MCS5, WL_RATE_1X2_CDD_MCS6, WL_RATE_1X2_CDD_MCS7, WL_RATE_1X2_VHT8SS1, WL_RATE_1X2_VHT9SS1, WL_RATE_2X2_STBC_MCS0, WL_RATE_2X2_STBC_MCS1, WL_RATE_2X2_STBC_MCS2, WL_RATE_2X2_STBC_MCS3, WL_RATE_2X2_STBC_MCS4, WL_RATE_2X2_STBC_MCS5, WL_RATE_2X2_STBC_MCS6, WL_RATE_2X2_STBC_MCS7, WL_RATE_2X2_STBC_VHT8SS1, WL_RATE_2X2_STBC_VHT9SS1, WL_RATE_2X2_SDM_MCS8, WL_RATE_2X2_SDM_MCS9, WL_RATE_2X2_SDM_MCS10, WL_RATE_2X2_SDM_MCS11, WL_RATE_2X2_SDM_MCS12, WL_RATE_2X2_SDM_MCS13, WL_RATE_2X2_SDM_MCS14, WL_RATE_2X2_SDM_MCS15, WL_RATE_2X2_VHT8SS2, WL_RATE_2X2_VHT9SS2, WL_RATE_1X2_TXBF_OFDM_6, WL_RATE_1X2_TXBF_OFDM_9, WL_RATE_1X2_TXBF_OFDM_12, WL_RATE_1X2_TXBF_OFDM_18, WL_RATE_1X2_TXBF_OFDM_24, WL_RATE_1X2_TXBF_OFDM_36, WL_RATE_1X2_TXBF_OFDM_48, WL_RATE_1X2_TXBF_OFDM_54, WL_RATE_1X2_TXBF_MCS0, WL_RATE_1X2_TXBF_MCS1, WL_RATE_1X2_TXBF_MCS2, WL_RATE_1X2_TXBF_MCS3, WL_RATE_1X2_TXBF_MCS4, WL_RATE_1X2_TXBF_MCS5, WL_RATE_1X2_TXBF_MCS6, WL_RATE_1X2_TXBF_MCS7, WL_RATE_1X2_TXBF_VHT8SS1, WL_RATE_1X2_TXBF_VHT9SS1, WL_RATE_2X2_TXBF_SDM_MCS8, WL_RATE_2X2_TXBF_SDM_MCS9, WL_RATE_2X2_TXBF_SDM_MCS10, WL_RATE_2X2_TXBF_SDM_MCS11, WL_RATE_2X2_TXBF_SDM_MCS12, WL_RATE_2X2_TXBF_SDM_MCS13, WL_RATE_2X2_TXBF_SDM_MCS14, WL_RATE_2X2_TXBF_SDM_MCS15, WL_RATE_P_1X1_VHT10SS1, WL_RATE_P_1X1_VHT11SS1, WL_RATE_P_1X2_VHT10SS1, WL_RATE_P_1X2_VHT11SS1, WL_RATE_P_2X2_STBC_VHT10SS1, WL_RATE_P_2X2_STBC_VHT11SS1, WL_RATE_P_1X2_TXBF_VHT10SS1, WL_RATE_P_1X2_TXBF_VHT11SS1, WL_RATE_P_2X2_VHT10SS2, WL_RATE_P_2X2_VHT11SS2, WL_RATE_1X1_HE0SS1, WL_RATE_1X1_HE1SS1, WL_RATE_1X1_HE2SS1, WL_RATE_1X1_HE3SS1, WL_RATE_1X1_HE4SS1, WL_RATE_1X1_HE5SS1, WL_RATE_1X1_HE6SS1, WL_RATE_1X1_HE7SS1, WL_RATE_1X1_HE8SS1, WL_RATE_1X1_HE9SS1, WL_RATE_1X1_HE10SS1, WL_RATE_1X1_HE11SS1, WL_RATE_1X2_HE0SS1, WL_RATE_1X2_HE1SS1, WL_RATE_1X2_HE2SS1, WL_RATE_1X2_HE3SS1, WL_RATE_1X2_HE4SS1, WL_RATE_1X2_HE5SS1, WL_RATE_1X2_HE6SS1, WL_RATE_1X2_HE7SS1, WL_RATE_1X2_HE8SS1, WL_RATE_1X2_HE9SS1, WL_RATE_1X2_HE10SS1, WL_RATE_1X2_HE11SS1, WL_RATE_1X2_TXBF_HE0SS1, WL_RATE_1X2_TXBF_HE1SS1, WL_RATE_1X2_TXBF_HE2SS1, WL_RATE_1X2_TXBF_HE3SS1, WL_RATE_1X2_TXBF_HE4SS1, WL_RATE_1X2_TXBF_HE5SS1, WL_RATE_1X2_TXBF_HE6SS1, WL_RATE_1X2_TXBF_HE7SS1, WL_RATE_1X2_TXBF_HE8SS1, WL_RATE_1X2_TXBF_HE9SS1, WL_RATE_1X2_TXBF_HE10SS1, WL_RATE_1X2_TXBF_HE11SS1, WL_RATE_2X2_HE0SS2, WL_RATE_2X2_HE1SS2, WL_RATE_2X2_HE2SS2, WL_RATE_2X2_HE3SS2, WL_RATE_2X2_HE4SS2, WL_RATE_2X2_HE5SS2, WL_RATE_2X2_HE6SS2, WL_RATE_2X2_HE7SS2, WL_RATE_2X2_HE8SS2, WL_RATE_2X2_HE9SS2, WL_RATE_2X2_HE10SS2, WL_RATE_2X2_HE11SS2, WL_RATE_2X2_TXBF_HE0SS2, WL_RATE_2X2_TXBF_HE1SS2, WL_RATE_2X2_TXBF_HE2SS2, WL_RATE_2X2_TXBF_HE3SS2, WL_RATE_2X2_TXBF_HE4SS2, WL_RATE_2X2_TXBF_HE5SS2, WL_RATE_2X2_TXBF_HE6SS2, WL_RATE_2X2_TXBF_HE7SS2, WL_RATE_2X2_TXBF_HE8SS2, WL_RATE_2X2_TXBF_HE9SS2, WL_RATE_2X2_TXBF_HE10SS2, WL_RATE_2X2_TXBF_HE11SS2, / 2.4G 20M rate set 7 / 15, WL_RATE_2X2_STBC_MCS3, WL_RATE_2X2_STBC_MCS4, WL_RATE_2X2_STBC_MCS5, WL_RATE_2X2_SDM_MCS11, WL_RATE_2X2_SDM_MCS12, WL_RATE_2X2_SDM_MCS13, WL_RATE_2X2_TXBF_SDM_MCS11, WL_RATE_2X2_TXBF_SDM_MCS12, WL_RATE_2X2_TXBF_SDM_MCS13, WL_RATE_2X2_HE3SS2, WL_RATE_2X2_HE4SS2, WL_RATE_2X2_HE5SS2, WL_RATE_2X2_TXBF_HE3SS2, WL_RATE_2X2_TXBF_HE4SS2, WL_RATE_2X2_TXBF_HE5SS2, / 2.4G 20M rate set 8 / 16, WL_RATE_1X1_HE0SS1, WL_RATE_1X1_HE1SS1, WL_RATE_1X1_HE2SS1, WL_RATE_1X1_HE3SS1, WL_RATE_1X1_HE4SS1, WL_RATE_1X1_HE5SS1, WL_RATE_1X1_HE6SS1, WL_RATE_1X1_HE7SS1, WL_RATE_1X1_HE8SS1, WL_RATE_1X1_HE9SS1, WL_RATE_1X1_HE10SS1, WL_RATE_1X1_HE11SS1, WL_RATE_1X1_EHT12SS1, WL_RATE_1X1_EHT13SS1, WL_RATE_1X1_EHT14SS1, WL_RATE_1X1_EHT15SS1, / 2.4G 20M rate set 9 / 22, WL_RATE_1X1_MCS3, WL_RATE_1X1_MCS4, WL_RATE_1X1_MCS5, WL_RATE_1X1_MCS6, WL_RATE_1X1_MCS7, WL_RATE_1X1_VHT8SS1, WL_RATE_1X1_VHT9SS1, WL_RATE_P_1X1_VHT10SS1, WL_RATE_P_1X1_VHT11SS1, WL_RATE_1X1_HE3SS1, WL_RATE_1X1_HE4SS1, WL_RATE_1X1_HE5SS1, WL_RATE_1X1_HE6SS1, WL_RATE_1X1_HE7SS1, WL_RATE_1X1_HE8SS1, WL_RATE_1X1_HE9SS1, WL_RATE_1X1_HE10SS1, WL_RATE_1X1_HE11SS1, WL_RATE_1X1_EHT12SS1, WL_RATE_1X1_EHT13SS1, WL_RATE_1X1_EHT14SS1, WL_RATE_1X1_EHT15SS1, / 2.4G 20M rate set 10 / 24, WL_RATE_1X1_MCS0, WL_RATE_1X1_MCS1, WL_RATE_1X1_MCS2, WL_RATE_1X1_MCS3, WL_RATE_1X1_MCS4, WL_RATE_1X1_MCS5, WL_RATE_1X1_MCS6, WL_RATE_1X1_MCS7, WL_RATE_1X1_VHT8SS1, WL_RATE_1X1_VHT9SS1, WL_RATE_P_1X1_VHT10SS1, WL_RATE_P_1X1_VHT11SS1, WL_RATE_1X1_HE0SS1, WL_RATE_1X1_HE1SS1, WL_RATE_1X1_HE2SS1, WL_RATE_1X1_HE3SS1, WL_RATE_1X1_HE4SS1, WL_RATE_1X1_HE5SS1, WL_RATE_1X1_HE6SS1, WL_RATE_1X1_HE7SS1, WL_RATE_1X1_HE8SS1, WL_RATE_1X1_HE9SS1, WL_RATE_1X1_HE10SS1, WL_RATE_1X1_HE11SS1, / 2.4G 20M rate set 11 / 28, WL_RATE_1X1_MCS0, WL_RATE_1X1_MCS1, WL_RATE_1X1_MCS2, WL_RATE_1X1_MCS3, WL_RATE_1X1_MCS4, WL_RATE_1X1_MCS5, WL_RATE_1X1_MCS6, WL_RATE_1X1_MCS7, WL_RATE_1X1_VHT8SS1, WL_RATE_1X1_VHT9SS1, WL_RATE_P_1X1_VHT10SS1, WL_RATE_P_1X1_VHT11SS1, WL_RATE_1X1_HE0SS1, WL_RATE_1X1_HE1SS1, WL_RATE_1X1_HE2SS1, WL_RATE_1X1_HE3SS1, WL_RATE_1X1_HE4SS1, WL_RATE_1X1_HE5SS1, WL_RATE_1X1_HE6SS1, WL_RATE_1X1_HE7SS1, WL_RATE_1X1_HE8SS1, WL_RATE_1X1_HE9SS1, WL_RATE_1X1_HE10SS1, WL_RATE_1X1_HE11SS1, WL_RATE_1X1_EHT12SS1, WL_RATE_1X1_EHT13SS1, WL_RATE_1X1_EHT14SS1, WL_RATE_1X1_EHT15SS1, / 2.4G 20M rate set 12 / 3, WL_RATE_1X1_OFDM_36, WL_RATE_1X1_OFDM_48, WL_RATE_1X1_OFDM_54, / 2.4G 20M rate set 13 / 30, WL_RATE_2X2_STBC_MCS6, WL_RATE_2X2_STBC_MCS7, WL_RATE_2X2_STBC_VHT8SS1, WL_RATE_2X2_STBC_VHT9SS1, WL_RATE_2X2_SDM_MCS14, WL_RATE_2X2_SDM_MCS15, WL_RATE_2X2_VHT8SS2, WL_RATE_2X2_VHT9SS2, WL_RATE_2X2_TXBF_SDM_MCS14, WL_RATE_2X2_TXBF_SDM_MCS15, WL_RATE_P_2X2_STBC_VHT10SS1, WL_RATE_P_2X2_STBC_VHT11SS1, WL_RATE_P_2X2_VHT10SS2, WL_RATE_P_2X2_VHT11SS2, WL_RATE_2X2_HE6SS2, WL_RATE_2X2_HE7SS2, WL_RATE_2X2_HE8SS2, WL_RATE_2X2_HE9SS2, WL_RATE_2X2_HE10SS2, WL_RATE_2X2_HE11SS2, WL_RATE_2X2_TXBF_HE6SS2, WL_RATE_2X2_TXBF_HE7SS2, WL_RATE_2X2_TXBF_HE8SS2, WL_RATE_2X2_TXBF_HE9SS2, WL_RATE_2X2_TXBF_HE10SS2, WL_RATE_2X2_TXBF_HE11SS2, WL_RATE_2X2_EHT12SS2, WL_RATE_2X2_EHT13SS2, WL_RATE_2X2_TXBF_EHT12SS2, WL_RATE_2X2_TXBF_EHT13SS2, / 2.4G 20M rate set 14 / 32, WL_RATE_1X2_TXBF_OFDM_6, WL_RATE_1X2_TXBF_OFDM_9, WL_RATE_1X2_TXBF_OFDM_12, WL_RATE_1X2_TXBF_OFDM_18, WL_RATE_1X2_TXBF_OFDM_24, WL_RATE_1X2_TXBF_OFDM_36, WL_RATE_1X2_TXBF_OFDM_48, WL_RATE_1X2_TXBF_OFDM_54, WL_RATE_1X2_TXBF_MCS0, WL_RATE_1X2_TXBF_MCS1, WL_RATE_1X2_TXBF_MCS2, WL_RATE_1X2_TXBF_MCS3, WL_RATE_1X2_TXBF_MCS4, WL_RATE_1X2_TXBF_MCS5, WL_RATE_1X2_TXBF_MCS6, WL_RATE_1X2_TXBF_MCS7, WL_RATE_1X2_TXBF_VHT8SS1, WL_RATE_1X2_TXBF_VHT9SS1, WL_RATE_P_1X2_TXBF_VHT10SS1, WL_RATE_P_1X2_TXBF_VHT11SS1, WL_RATE_1X2_TXBF_HE0SS1, WL_RATE_1X2_TXBF_HE1SS1, WL_RATE_1X2_TXBF_HE2SS1, WL_RATE_1X2_TXBF_HE3SS1, WL_RATE_1X2_TXBF_HE4SS1, WL_RATE_1X2_TXBF_HE5SS1, WL_RATE_1X2_TXBF_HE6SS1, WL_RATE_1X2_TXBF_HE7SS1, WL_RATE_1X2_TXBF_HE8SS1, WL_RATE_1X2_TXBF_HE9SS1, WL_RATE_1X2_TXBF_HE10SS1, WL_RATE_1X2_TXBF_HE11SS1, / 2.4G 20M rate set 15 / 37, WL_RATE_1X2_CDD_OFDM_6, WL_RATE_1X2_CDD_OFDM_9, WL_RATE_1X2_CDD_OFDM_12, WL_RATE_1X2_CDD_OFDM_18, WL_RATE_1X2_CDD_OFDM_24, WL_RATE_1X2_CDD_MCS0, WL_RATE_1X2_CDD_MCS1, WL_RATE_1X2_CDD_MCS2, WL_RATE_2X2_STBC_MCS3, WL_RATE_2X2_STBC_MCS4, WL_RATE_2X2_STBC_MCS5, WL_RATE_2X2_SDM_MCS11, WL_RATE_2X2_SDM_MCS12, WL_RATE_2X2_SDM_MCS13, WL_RATE_1X2_TXBF_OFDM_6, WL_RATE_1X2_TXBF_OFDM_9, WL_RATE_1X2_TXBF_OFDM_12, WL_RATE_1X2_TXBF_OFDM_18, WL_RATE_1X2_TXBF_OFDM_24, WL_RATE_1X2_TXBF_MCS0, WL_RATE_1X2_TXBF_MCS1, WL_RATE_1X2_TXBF_MCS2, WL_RATE_2X2_TXBF_SDM_MCS11, WL_RATE_2X2_TXBF_SDM_MCS12, WL_RATE_2X2_TXBF_SDM_MCS13, WL_RATE_1X2_HE0SS1, WL_RATE_1X2_HE1SS1, WL_RATE_1X2_HE2SS1, WL_RATE_1X2_TXBF_HE0SS1, WL_RATE_1X2_TXBF_HE1SS1, WL_RATE_1X2_TXBF_HE2SS1, WL_RATE_2X2_HE3SS2, WL_RATE_2X2_HE4SS2, WL_RATE_2X2_HE5SS2, WL_RATE_2X2_TXBF_HE3SS2, WL_RATE_2X2_TXBF_HE4SS2, WL_RATE_2X2_TXBF_HE5SS2, / 2.4G 20M rate set 16 / 4, WL_RATE_1X1_DSSS_1, WL_RATE_1X1_DSSS_2, WL_RATE_1X1_DSSS_5_5, WL_RATE_1X1_DSSS_11, / 2.4G 20M rate set 17 / 4, WL_RATE_1X2_DSSS_1, WL_RATE_1X2_DSSS_2, WL_RATE_1X2_DSSS_5_5, WL_RATE_1X2_DSSS_11, / 2.4G 20M rate set 18 / 45, WL_RATE_2X2_STBC_MCS3, WL_RATE_2X2_STBC_MCS4, WL_RATE_2X2_STBC_MCS5, WL_RATE_2X2_STBC_MCS6, WL_RATE_2X2_STBC_MCS7, WL_RATE_2X2_STBC_VHT8SS1, WL_RATE_2X2_STBC_VHT9SS1, WL_RATE_2X2_SDM_MCS11, WL_RATE_2X2_SDM_MCS12, WL_RATE_2X2_SDM_MCS13, WL_RATE_2X2_SDM_MCS14, WL_RATE_2X2_SDM_MCS15, WL_RATE_2X2_VHT8SS2, WL_RATE_2X2_VHT9SS2, WL_RATE_2X2_TXBF_SDM_MCS11, WL_RATE_2X2_TXBF_SDM_MCS12, WL_RATE_2X2_TXBF_SDM_MCS13, WL_RATE_2X2_TXBF_SDM_MCS14, WL_RATE_2X2_TXBF_SDM_MCS15, WL_RATE_P_2X2_STBC_VHT10SS1, WL_RATE_P_2X2_STBC_VHT11SS1, WL_RATE_P_2X2_VHT10SS2, WL_RATE_P_2X2_VHT11SS2, WL_RATE_2X2_HE3SS2, WL_RATE_2X2_HE4SS2, WL_RATE_2X2_HE5SS2, WL_RATE_2X2_HE6SS2, WL_RATE_2X2_HE7SS2, WL_RATE_2X2_HE8SS2, WL_RATE_2X2_HE9SS2, WL_RATE_2X2_HE10SS2, WL_RATE_2X2_HE11SS2, WL_RATE_2X2_TXBF_HE3SS2, WL_RATE_2X2_TXBF_HE4SS2, WL_RATE_2X2_TXBF_HE5SS2, WL_RATE_2X2_TXBF_HE6SS2, WL_RATE_2X2_TXBF_HE7SS2, WL_RATE_2X2_TXBF_HE8SS2, WL_RATE_2X2_TXBF_HE9SS2, WL_RATE_2X2_TXBF_HE10SS2, WL_RATE_2X2_TXBF_HE11SS2, WL_RATE_2X2_EHT12SS2, WL_RATE_2X2_EHT13SS2, WL_RATE_2X2_TXBF_EHT12SS2, WL_RATE_2X2_TXBF_EHT13SS2, / 2.4G 20M rate set 19 / 48, WL_RATE_1X2_HE0SS1, WL_RATE_1X2_HE1SS1, WL_RATE_1X2_HE2SS1, WL_RATE_1X2_HE3SS1, WL_RATE_1X2_HE4SS1, WL_RATE_1X2_HE5SS1, WL_RATE_1X2_HE6SS1, WL_RATE_1X2_HE7SS1, WL_RATE_1X2_HE8SS1, WL_RATE_1X2_HE9SS1, WL_RATE_1X2_HE10SS1, WL_RATE_1X2_HE11SS1, WL_RATE_1X2_TXBF_HE0SS1, WL_RATE_1X2_TXBF_HE1SS1, WL_RATE_1X2_TXBF_HE2SS1, WL_RATE_1X2_TXBF_HE3SS1, WL_RATE_1X2_TXBF_HE4SS1, WL_RATE_1X2_TXBF_HE5SS1, WL_RATE_1X2_TXBF_HE6SS1, WL_RATE_1X2_TXBF_HE7SS1, WL_RATE_1X2_TXBF_HE8SS1, WL_RATE_1X2_TXBF_HE9SS1, WL_RATE_1X2_TXBF_HE10SS1, WL_RATE_1X2_TXBF_HE11SS1, WL_RATE_2X2_HE0SS2, WL_RATE_2X2_HE1SS2, WL_RATE_2X2_HE2SS2, WL_RATE_2X2_HE3SS2, WL_RATE_2X2_HE4SS2, WL_RATE_2X2_HE5SS2, WL_RATE_2X2_HE6SS2, WL_RATE_2X2_HE7SS2, WL_RATE_2X2_HE8SS2, WL_RATE_2X2_HE9SS2, WL_RATE_2X2_HE10SS2, WL_RATE_2X2_HE11SS2, WL_RATE_2X2_TXBF_HE0SS2, WL_RATE_2X2_TXBF_HE1SS2, WL_RATE_2X2_TXBF_HE2SS2, WL_RATE_2X2_TXBF_HE3SS2, WL_RATE_2X2_TXBF_HE4SS2, WL_RATE_2X2_TXBF_HE5SS2, WL_RATE_2X2_TXBF_HE6SS2, WL_RATE_2X2_TXBF_HE7SS2, WL_RATE_2X2_TXBF_HE8SS2, WL_RATE_2X2_TXBF_HE9SS2, WL_RATE_2X2_TXBF_HE10SS2, WL_RATE_2X2_TXBF_HE11SS2, / 2.4G 20M rate set 20 / 5, WL_RATE_1X1_OFDM_6, WL_RATE_1X1_OFDM_9, WL_RATE_1X1_OFDM_12, WL_RATE_1X1_OFDM_18, WL_RATE_1X1_OFDM_24, / 2.4G 20M rate set 21 / 52, WL_RATE_1X2_CDD_OFDM_6, WL_RATE_1X2_CDD_OFDM_9, WL_RATE_1X2_CDD_OFDM_12, WL_RATE_1X2_CDD_OFDM_18, WL_RATE_1X2_CDD_OFDM_24, WL_RATE_1X2_CDD_OFDM_36, WL_RATE_1X2_CDD_OFDM_48, WL_RATE_1X2_CDD_OFDM_54, WL_RATE_1X2_CDD_MCS0, WL_RATE_1X2_CDD_MCS1, WL_RATE_1X2_CDD_MCS2, WL_RATE_1X2_CDD_MCS3, WL_RATE_1X2_CDD_MCS4, WL_RATE_1X2_CDD_MCS5, WL_RATE_1X2_CDD_MCS6, WL_RATE_1X2_CDD_MCS7, WL_RATE_1X2_VHT8SS1, WL_RATE_1X2_VHT9SS1, WL_RATE_1X2_TXBF_OFDM_6, WL_RATE_1X2_TXBF_OFDM_9, WL_RATE_1X2_TXBF_OFDM_12, WL_RATE_1X2_TXBF_OFDM_18, WL_RATE_1X2_TXBF_OFDM_24, WL_RATE_1X2_TXBF_OFDM_36, WL_RATE_1X2_TXBF_OFDM_48, WL_RATE_1X2_TXBF_OFDM_54, WL_RATE_1X2_TXBF_MCS0, WL_RATE_1X2_TXBF_MCS1, WL_RATE_1X2_TXBF_MCS2, WL_RATE_1X2_TXBF_MCS3, WL_RATE_1X2_TXBF_MCS4, WL_RATE_1X2_TXBF_MCS5, WL_RATE_1X2_TXBF_MCS6, WL_RATE_1X2_TXBF_MCS7, WL_RATE_1X2_TXBF_VHT8SS1, WL_RATE_1X2_TXBF_VHT9SS1, WL_RATE_P_1X2_VHT10SS1, WL_RATE_P_1X2_VHT11SS1, WL_RATE_P_1X2_TXBF_VHT10SS1, WL_RATE_P_1X2_TXBF_VHT11SS1, WL_RATE_1X2_TXBF_HE0SS1, WL_RATE_1X2_TXBF_HE1SS1, WL_RATE_1X2_TXBF_HE2SS1, WL_RATE_1X2_TXBF_HE3SS1, WL_RATE_1X2_TXBF_HE4SS1, WL_RATE_1X2_TXBF_HE5SS1, WL_RATE_1X2_TXBF_HE6SS1, WL_RATE_1X2_TXBF_HE7SS1, WL_RATE_1X2_TXBF_HE8SS1, WL_RATE_1X2_TXBF_HE9SS1, WL_RATE_1X2_TXBF_HE10SS1, WL_RATE_1X2_TXBF_HE11SS1, / 2.4G 20M rate set 22 / 60, WL_RATE_1X2_HE0SS1, WL_RATE_1X2_HE1SS1, WL_RATE_1X2_HE2SS1, WL_RATE_1X2_HE3SS1, WL_RATE_1X2_HE4SS1, WL_RATE_1X2_HE5SS1, WL_RATE_1X2_HE6SS1, WL_RATE_1X2_HE7SS1, WL_RATE_1X2_HE8SS1, WL_RATE_1X2_HE9SS1, WL_RATE_1X2_HE10SS1, WL_RATE_1X2_HE11SS1, WL_RATE_1X2_TXBF_HE0SS1, WL_RATE_1X2_TXBF_HE1SS1, WL_RATE_1X2_TXBF_HE2SS1, WL_RATE_1X2_TXBF_HE3SS1, WL_RATE_1X2_TXBF_HE4SS1, WL_RATE_1X2_TXBF_HE5SS1, WL_RATE_1X2_TXBF_HE6SS1, WL_RATE_1X2_TXBF_HE7SS1, WL_RATE_1X2_TXBF_HE8SS1, WL_RATE_1X2_TXBF_HE9SS1, WL_RATE_1X2_TXBF_HE10SS1, WL_RATE_1X2_TXBF_HE11SS1, WL_RATE_2X2_HE0SS2, WL_RATE_2X2_HE1SS2, WL_RATE_2X2_HE2SS2, WL_RATE_2X2_HE3SS2, WL_RATE_2X2_HE4SS2, WL_RATE_2X2_HE5SS2, WL_RATE_2X2_HE6SS2, WL_RATE_2X2_HE7SS2, WL_RATE_2X2_HE8SS2, WL_RATE_2X2_HE9SS2, WL_RATE_2X2_HE10SS2, WL_RATE_2X2_HE11SS2, WL_RATE_2X2_TXBF_HE0SS2, WL_RATE_2X2_TXBF_HE1SS2, WL_RATE_2X2_TXBF_HE2SS2, WL_RATE_2X2_TXBF_HE3SS2, WL_RATE_2X2_TXBF_HE4SS2, WL_RATE_2X2_TXBF_HE5SS2, WL_RATE_2X2_TXBF_HE6SS2, WL_RATE_2X2_TXBF_HE7SS2, WL_RATE_2X2_TXBF_HE8SS2, WL_RATE_2X2_TXBF_HE9SS2, WL_RATE_2X2_TXBF_HE10SS2, WL_RATE_2X2_TXBF_HE11SS2, WL_RATE_1X2_EHT12SS1, WL_RATE_1X2_EHT13SS1, WL_RATE_1X2_EHT14SS1, WL_RATE_1X2_EHT15SS1, WL_RATE_1X2_TXBF_EHT12SS1, WL_RATE_1X2_TXBF_EHT13SS1, WL_RATE_1X2_TXBF_EHT14SS1, WL_RATE_1X2_TXBF_EHT15SS1, WL_RATE_2X2_EHT12SS2, WL_RATE_2X2_EHT13SS2, WL_RATE_2X2_TXBF_EHT12SS2, WL_RATE_2X2_TXBF_EHT13SS2, / 2.4G 20M rate set 23 / 64, WL_RATE_1X1_MCS0, WL_RATE_1X1_MCS1, WL_RATE_1X1_MCS2, WL_RATE_1X1_MCS3, WL_RATE_1X1_MCS4, WL_RATE_1X1_MCS5, WL_RATE_1X1_MCS6, WL_RATE_1X1_MCS7, WL_RATE_1X2_CDD_OFDM_6, WL_RATE_1X2_CDD_OFDM_9, WL_RATE_1X2_CDD_OFDM_12, WL_RATE_1X2_CDD_OFDM_18, WL_RATE_1X2_CDD_OFDM_24, WL_RATE_1X2_CDD_OFDM_36, WL_RATE_1X2_CDD_OFDM_48, WL_RATE_1X2_CDD_OFDM_54, WL_RATE_1X2_CDD_MCS0, WL_RATE_1X2_CDD_MCS1, WL_RATE_1X2_CDD_MCS2, WL_RATE_1X2_CDD_MCS3, WL_RATE_1X2_CDD_MCS4, WL_RATE_1X2_CDD_MCS5, WL_RATE_1X2_CDD_MCS6, WL_RATE_1X2_CDD_MCS7, WL_RATE_2X2_STBC_MCS0, WL_RATE_2X2_STBC_MCS1, WL_RATE_2X2_STBC_MCS2, WL_RATE_2X2_STBC_MCS3, WL_RATE_2X2_STBC_MCS4, WL_RATE_2X2_STBC_MCS5, WL_RATE_2X2_STBC_MCS6, WL_RATE_2X2_STBC_MCS7, WL_RATE_2X2_SDM_MCS8, WL_RATE_2X2_SDM_MCS9, WL_RATE_2X2_SDM_MCS10, WL_RATE_2X2_SDM_MCS11, WL_RATE_2X2_SDM_MCS12, WL_RATE_2X2_SDM_MCS13, WL_RATE_2X2_SDM_MCS14, WL_RATE_2X2_SDM_MCS15, WL_RATE_1X2_TXBF_OFDM_6, WL_RATE_1X2_TXBF_OFDM_9, WL_RATE_1X2_TXBF_OFDM_12, WL_RATE_1X2_TXBF_OFDM_18, WL_RATE_1X2_TXBF_OFDM_24, WL_RATE_1X2_TXBF_OFDM_36, WL_RATE_1X2_TXBF_OFDM_48, WL_RATE_1X2_TXBF_OFDM_54, WL_RATE_1X2_TXBF_MCS0, WL_RATE_1X2_TXBF_MCS1, WL_RATE_1X2_TXBF_MCS2, WL_RATE_1X2_TXBF_MCS3, WL_RATE_1X2_TXBF_MCS4, WL_RATE_1X2_TXBF_MCS5, WL_RATE_1X2_TXBF_MCS6, WL_RATE_1X2_TXBF_MCS7, WL_RATE_2X2_TXBF_SDM_MCS8, WL_RATE_2X2_TXBF_SDM_MCS9, WL_RATE_2X2_TXBF_SDM_MCS10, WL_RATE_2X2_TXBF_SDM_MCS11, WL_RATE_2X2_TXBF_SDM_MCS12, WL_RATE_2X2_TXBF_SDM_MCS13, WL_RATE_2X2_TXBF_SDM_MCS14, WL_RATE_2X2_TXBF_SDM_MCS15, / 2.4G 20M rate set 24 / 71, WL_RATE_1X1_MCS0, WL_RATE_1X1_MCS1, WL_RATE_1X1_MCS2, WL_RATE_1X2_CDD_OFDM_36, WL_RATE_1X2_CDD_OFDM_48, WL_RATE_1X2_CDD_OFDM_54, WL_RATE_1X2_CDD_MCS3, WL_RATE_1X2_CDD_MCS4, WL_RATE_1X2_CDD_MCS5, WL_RATE_1X2_CDD_MCS6, WL_RATE_1X2_CDD_MCS7, WL_RATE_1X2_VHT8SS1, WL_RATE_1X2_VHT9SS1, WL_RATE_2X2_STBC_MCS0, WL_RATE_2X2_STBC_MCS1, WL_RATE_2X2_STBC_MCS2, WL_RATE_2X2_SDM_MCS8, WL_RATE_2X2_SDM_MCS9, WL_RATE_2X2_SDM_MCS10, WL_RATE_1X2_TXBF_OFDM_36, WL_RATE_1X2_TXBF_OFDM_48, WL_RATE_1X2_TXBF_OFDM_54, WL_RATE_1X2_TXBF_MCS3, WL_RATE_1X2_TXBF_MCS4, WL_RATE_1X2_TXBF_MCS5, WL_RATE_1X2_TXBF_MCS6, WL_RATE_1X2_TXBF_MCS7, WL_RATE_1X2_TXBF_VHT8SS1, WL_RATE_1X2_TXBF_VHT9SS1, WL_RATE_2X2_TXBF_SDM_MCS8, WL_RATE_2X2_TXBF_SDM_MCS9, WL_RATE_2X2_TXBF_SDM_MCS10, WL_RATE_P_1X2_VHT10SS1, WL_RATE_P_1X2_VHT11SS1, WL_RATE_P_1X2_TXBF_VHT10SS1, WL_RATE_P_1X2_TXBF_VHT11SS1, WL_RATE_1X1_HE0SS1, WL_RATE_1X1_HE1SS1, WL_RATE_1X1_HE2SS1, WL_RATE_1X2_HE3SS1, WL_RATE_1X2_HE4SS1, WL_RATE_1X2_HE5SS1, WL_RATE_1X2_HE6SS1, WL_RATE_1X2_HE7SS1, WL_RATE_1X2_HE8SS1, WL_RATE_1X2_HE9SS1, WL_RATE_1X2_HE10SS1, WL_RATE_1X2_HE11SS1, WL_RATE_1X2_TXBF_HE3SS1, WL_RATE_1X2_TXBF_HE4SS1, WL_RATE_1X2_TXBF_HE5SS1, WL_RATE_1X2_TXBF_HE6SS1, WL_RATE_1X2_TXBF_HE7SS1, WL_RATE_1X2_TXBF_HE8SS1, WL_RATE_1X2_TXBF_HE9SS1, WL_RATE_1X2_TXBF_HE10SS1, WL_RATE_1X2_TXBF_HE11SS1, WL_RATE_2X2_HE0SS2, WL_RATE_2X2_HE1SS2, WL_RATE_2X2_HE2SS2, WL_RATE_2X2_TXBF_HE0SS2, WL_RATE_2X2_TXBF_HE1SS2, WL_RATE_2X2_TXBF_HE2SS2, WL_RATE_1X2_EHT12SS1, WL_RATE_1X2_EHT13SS1, WL_RATE_1X2_EHT14SS1, WL_RATE_1X2_EHT15SS1, WL_RATE_1X2_TXBF_EHT12SS1, WL_RATE_1X2_TXBF_EHT13SS1, WL_RATE_1X2_TXBF_EHT14SS1, WL_RATE_1X2_TXBF_EHT15SS1, / 2.4G 20M rate set 25 / 72, WL_RATE_1X2_CDD_OFDM_6, WL_RATE_1X2_CDD_OFDM_9, WL_RATE_1X2_CDD_OFDM_12, WL_RATE_1X2_CDD_OFDM_18, WL_RATE_1X2_CDD_OFDM_24, WL_RATE_1X2_CDD_OFDM_36, WL_RATE_1X2_CDD_OFDM_48, WL_RATE_1X2_CDD_OFDM_54, WL_RATE_1X2_CDD_MCS0, WL_RATE_1X2_CDD_MCS1, WL_RATE_1X2_CDD_MCS2, WL_RATE_1X2_CDD_MCS3, WL_RATE_1X2_CDD_MCS4, WL_RATE_1X2_CDD_MCS5, WL_RATE_1X2_CDD_MCS6, WL_RATE_1X2_CDD_MCS7, WL_RATE_1X2_VHT8SS1, WL_RATE_1X2_VHT9SS1, WL_RATE_2X2_STBC_MCS0, WL_RATE_2X2_STBC_MCS1, WL_RATE_2X2_STBC_MCS2, WL_RATE_2X2_STBC_MCS3, WL_RATE_2X2_STBC_MCS4, WL_RATE_2X2_STBC_MCS5, WL_RATE_2X2_STBC_MCS6, WL_RATE_2X2_STBC_MCS7, WL_RATE_2X2_STBC_VHT8SS1, WL_RATE_2X2_STBC_VHT9SS1, WL_RATE_2X2_SDM_MCS8, WL_RATE_2X2_SDM_MCS9, WL_RATE_2X2_SDM_MCS10, WL_RATE_2X2_SDM_MCS11, WL_RATE_2X2_SDM_MCS12, WL_RATE_2X2_SDM_MCS13, WL_RATE_2X2_SDM_MCS14, WL_RATE_2X2_SDM_MCS15, WL_RATE_2X2_VHT8SS2, WL_RATE_2X2_VHT9SS2, WL_RATE_1X2_TXBF_OFDM_6, WL_RATE_1X2_TXBF_OFDM_9, WL_RATE_1X2_TXBF_OFDM_12, WL_RATE_1X2_TXBF_OFDM_18, WL_RATE_1X2_TXBF_OFDM_24, WL_RATE_1X2_TXBF_OFDM_36, WL_RATE_1X2_TXBF_OFDM_48, WL_RATE_1X2_TXBF_OFDM_54, WL_RATE_1X2_TXBF_MCS0, WL_RATE_1X2_TXBF_MCS1, WL_RATE_1X2_TXBF_MCS2, WL_RATE_1X2_TXBF_MCS3, WL_RATE_1X2_TXBF_MCS4, WL_RATE_1X2_TXBF_MCS5, WL_RATE_1X2_TXBF_MCS6, WL_RATE_1X2_TXBF_MCS7, WL_RATE_1X2_TXBF_VHT8SS1, WL_RATE_1X2_TXBF_VHT9SS1, WL_RATE_2X2_TXBF_SDM_MCS8, WL_RATE_2X2_TXBF_SDM_MCS9, WL_RATE_2X2_TXBF_SDM_MCS10, WL_RATE_2X2_TXBF_SDM_MCS11, WL_RATE_2X2_TXBF_SDM_MCS12, WL_RATE_2X2_TXBF_SDM_MCS13, WL_RATE_2X2_TXBF_SDM_MCS14, WL_RATE_2X2_TXBF_SDM_MCS15, WL_RATE_P_1X2_VHT10SS1, WL_RATE_P_1X2_VHT11SS1, WL_RATE_P_2X2_STBC_VHT10SS1, WL_RATE_P_2X2_STBC_VHT11SS1, WL_RATE_P_1X2_TXBF_VHT10SS1, WL_RATE_P_1X2_TXBF_VHT11SS1, WL_RATE_P_2X2_VHT10SS2, WL_RATE_P_2X2_VHT11SS2, / 2.4G 20M rate set 26 / 8, WL_RATE_1X1_OFDM_6, WL_RATE_1X1_OFDM_9, WL_RATE_1X1_OFDM_12, WL_RATE_1X1_OFDM_18, WL_RATE_1X1_OFDM_24, WL_RATE_1X1_OFDM_36, WL_RATE_1X1_OFDM_48, WL_RATE_1X1_OFDM_54, / 2.4G 20M rate set 27 / 80, WL_RATE_1X2_DSSS_1, WL_RATE_1X2_DSSS_2, WL_RATE_1X2_DSSS_5_5, WL_RATE_1X2_DSSS_11, WL_RATE_1X1_HE0SS1, WL_RATE_1X1_HE1SS1, WL_RATE_1X1_HE2SS1, WL_RATE_1X1_HE3SS1, WL_RATE_1X1_HE4SS1, WL_RATE_1X1_HE5SS1, WL_RATE_1X1_HE6SS1, WL_RATE_1X1_HE7SS1, WL_RATE_1X1_HE8SS1, WL_RATE_1X1_HE9SS1, WL_RATE_1X1_HE10SS1, WL_RATE_1X1_HE11SS1, WL_RATE_1X2_HE0SS1, WL_RATE_1X2_HE1SS1, WL_RATE_1X2_HE2SS1, WL_RATE_1X2_HE3SS1, WL_RATE_1X2_HE4SS1, WL_RATE_1X2_HE5SS1, WL_RATE_1X2_HE6SS1, WL_RATE_1X2_HE7SS1, WL_RATE_1X2_HE8SS1, WL_RATE_1X2_HE9SS1, WL_RATE_1X2_HE10SS1, WL_RATE_1X2_HE11SS1, WL_RATE_1X2_TXBF_HE0SS1, WL_RATE_1X2_TXBF_HE1SS1, WL_RATE_1X2_TXBF_HE2SS1, WL_RATE_1X2_TXBF_HE3SS1, WL_RATE_1X2_TXBF_HE4SS1, WL_RATE_1X2_TXBF_HE5SS1, WL_RATE_1X2_TXBF_HE6SS1, WL_RATE_1X2_TXBF_HE7SS1, WL_RATE_1X2_TXBF_HE8SS1, WL_RATE_1X2_TXBF_HE9SS1, WL_RATE_1X2_TXBF_HE10SS1, WL_RATE_1X2_TXBF_HE11SS1, WL_RATE_2X2_HE0SS2, WL_RATE_2X2_HE1SS2, WL_RATE_2X2_HE2SS2, WL_RATE_2X2_HE3SS2, WL_RATE_2X2_HE4SS2, WL_RATE_2X2_HE5SS2, WL_RATE_2X2_HE6SS2, WL_RATE_2X2_HE7SS2, WL_RATE_2X2_HE8SS2, WL_RATE_2X2_HE9SS2, WL_RATE_2X2_HE10SS2, WL_RATE_2X2_HE11SS2, WL_RATE_2X2_TXBF_HE0SS2, WL_RATE_2X2_TXBF_HE1SS2, WL_RATE_2X2_TXBF_HE2SS2, WL_RATE_2X2_TXBF_HE3SS2, WL_RATE_2X2_TXBF_HE4SS2, WL_RATE_2X2_TXBF_HE5SS2, WL_RATE_2X2_TXBF_HE6SS2, WL_RATE_2X2_TXBF_HE7SS2, WL_RATE_2X2_TXBF_HE8SS2, WL_RATE_2X2_TXBF_HE9SS2, WL_RATE_2X2_TXBF_HE10SS2, WL_RATE_2X2_TXBF_HE11SS2, WL_RATE_1X1_EHT12SS1, WL_RATE_1X1_EHT13SS1, WL_RATE_1X1_EHT14SS1, WL_RATE_1X1_EHT15SS1, WL_RATE_1X2_EHT12SS1, WL_RATE_1X2_EHT13SS1, WL_RATE_1X2_EHT14SS1, WL_RATE_1X2_EHT15SS1, WL_RATE_1X2_TXBF_EHT12SS1, WL_RATE_1X2_TXBF_EHT13SS1, WL_RATE_1X2_TXBF_EHT14SS1, WL_RATE_1X2_TXBF_EHT15SS1, WL_RATE_2X2_EHT12SS2, WL_RATE_2X2_EHT13SS2, WL_RATE_2X2_TXBF_EHT12SS2, WL_RATE_2X2_TXBF_EHT13SS2, / 2.4G 20M rate set 28 / 84, WL_RATE_1X1_MCS0, WL_RATE_1X1_MCS1, WL_RATE_1X1_MCS2, WL_RATE_1X1_MCS3, WL_RATE_1X1_MCS4, WL_RATE_1X1_MCS5, WL_RATE_1X1_MCS6, WL_RATE_1X1_MCS7, WL_RATE_1X1_VHT8SS1, WL_RATE_1X1_VHT9SS1, WL_RATE_1X2_CDD_OFDM_6, WL_RATE_1X2_CDD_OFDM_9, WL_RATE_1X2_CDD_OFDM_12, WL_RATE_1X2_CDD_OFDM_18, WL_RATE_1X2_CDD_OFDM_24, WL_RATE_1X2_CDD_OFDM_36, WL_RATE_1X2_CDD_OFDM_48, WL_RATE_1X2_CDD_OFDM_54, WL_RATE_1X2_CDD_MCS0, WL_RATE_1X2_CDD_MCS1, WL_RATE_1X2_CDD_MCS2, WL_RATE_1X2_CDD_MCS3, WL_RATE_1X2_CDD_MCS4, WL_RATE_1X2_CDD_MCS5, WL_RATE_1X2_CDD_MCS6, WL_RATE_1X2_CDD_MCS7, WL_RATE_1X2_VHT8SS1, WL_RATE_1X2_VHT9SS1, WL_RATE_2X2_STBC_MCS0, WL_RATE_2X2_STBC_MCS1, WL_RATE_2X2_STBC_MCS2, WL_RATE_2X2_STBC_MCS3, WL_RATE_2X2_STBC_MCS4, WL_RATE_2X2_STBC_MCS5, WL_RATE_2X2_STBC_MCS6, WL_RATE_2X2_STBC_MCS7, WL_RATE_2X2_STBC_VHT8SS1, WL_RATE_2X2_STBC_VHT9SS1, WL_RATE_2X2_SDM_MCS8, WL_RATE_2X2_SDM_MCS9, WL_RATE_2X2_SDM_MCS10, WL_RATE_2X2_SDM_MCS11, WL_RATE_2X2_SDM_MCS12, WL_RATE_2X2_SDM_MCS13, WL_RATE_2X2_SDM_MCS14, WL_RATE_2X2_SDM_MCS15, WL_RATE_2X2_VHT8SS2, WL_RATE_2X2_VHT9SS2, WL_RATE_1X2_TXBF_OFDM_6, WL_RATE_1X2_TXBF_OFDM_9, WL_RATE_1X2_TXBF_OFDM_12, WL_RATE_1X2_TXBF_OFDM_18, WL_RATE_1X2_TXBF_OFDM_24, WL_RATE_1X2_TXBF_OFDM_36, WL_RATE_1X2_TXBF_OFDM_48, WL_RATE_1X2_TXBF_OFDM_54, WL_RATE_1X2_TXBF_MCS0, WL_RATE_1X2_TXBF_MCS1, WL_RATE_1X2_TXBF_MCS2, WL_RATE_1X2_TXBF_MCS3, WL_RATE_1X2_TXBF_MCS4, WL_RATE_1X2_TXBF_MCS5, WL_RATE_1X2_TXBF_MCS6, WL_RATE_1X2_TXBF_MCS7, WL_RATE_1X2_TXBF_VHT8SS1, WL_RATE_1X2_TXBF_VHT9SS1, WL_RATE_2X2_TXBF_SDM_MCS8, WL_RATE_2X2_TXBF_SDM_MCS9, WL_RATE_2X2_TXBF_SDM_MCS10, WL_RATE_2X2_TXBF_SDM_MCS11, WL_RATE_2X2_TXBF_SDM_MCS12, WL_RATE_2X2_TXBF_SDM_MCS13, WL_RATE_2X2_TXBF_SDM_MCS14, WL_RATE_2X2_TXBF_SDM_MCS15, WL_RATE_P_1X1_VHT10SS1, WL_RATE_P_1X1_VHT11SS1, WL_RATE_P_1X2_VHT10SS1, WL_RATE_P_1X2_VHT11SS1, WL_RATE_P_2X2_STBC_VHT10SS1, WL_RATE_P_2X2_STBC_VHT11SS1, WL_RATE_P_1X2_TXBF_VHT10SS1, WL_RATE_P_1X2_TXBF_VHT11SS1, WL_RATE_P_2X2_VHT10SS2, WL_RATE_P_2X2_VHT11SS2, / 2.4G 20M rate set 29 / 87, WL_RATE_1X2_CDD_OFDM_6, WL_RATE_1X2_CDD_OFDM_9, WL_RATE_1X2_CDD_OFDM_12, WL_RATE_1X2_CDD_OFDM_18, WL_RATE_1X2_CDD_OFDM_24, WL_RATE_1X2_CDD_OFDM_36, WL_RATE_1X2_CDD_OFDM_48, WL_RATE_1X2_CDD_OFDM_54, WL_RATE_1X2_CDD_MCS0, WL_RATE_1X2_CDD_MCS1, WL_RATE_1X2_CDD_MCS2, WL_RATE_1X2_CDD_MCS3, WL_RATE_1X2_CDD_MCS4, WL_RATE_1X2_CDD_MCS5, WL_RATE_1X2_CDD_MCS6, WL_RATE_1X2_CDD_MCS7, WL_RATE_1X2_VHT8SS1, WL_RATE_1X2_VHT9SS1, WL_RATE_2X2_STBC_MCS0, WL_RATE_2X2_STBC_MCS1, WL_RATE_2X2_STBC_MCS2, WL_RATE_2X2_SDM_MCS8, WL_RATE_2X2_SDM_MCS9, WL_RATE_2X2_SDM_MCS10, WL_RATE_1X2_TXBF_OFDM_6, WL_RATE_1X2_TXBF_OFDM_9, WL_RATE_1X2_TXBF_OFDM_12, WL_RATE_1X2_TXBF_OFDM_18, WL_RATE_1X2_TXBF_OFDM_24, WL_RATE_1X2_TXBF_OFDM_36, WL_RATE_1X2_TXBF_OFDM_48, WL_RATE_1X2_TXBF_OFDM_54, WL_RATE_1X2_TXBF_MCS0, WL_RATE_1X2_TXBF_MCS1, WL_RATE_1X2_TXBF_MCS2, WL_RATE_1X2_TXBF_MCS3, WL_RATE_1X2_TXBF_MCS4, WL_RATE_1X2_TXBF_MCS5, WL_RATE_1X2_TXBF_MCS6, WL_RATE_1X2_TXBF_MCS7, WL_RATE_1X2_TXBF_VHT8SS1, WL_RATE_1X2_TXBF_VHT9SS1, WL_RATE_2X2_TXBF_SDM_MCS8, WL_RATE_2X2_TXBF_SDM_MCS9, WL_RATE_2X2_TXBF_SDM_MCS10, WL_RATE_P_1X2_VHT10SS1, WL_RATE_P_1X2_VHT11SS1, WL_RATE_P_1X2_TXBF_VHT10SS1, WL_RATE_P_1X2_TXBF_VHT11SS1, WL_RATE_1X2_HE0SS1, WL_RATE_1X2_HE1SS1, WL_RATE_1X2_HE2SS1, WL_RATE_1X2_HE3SS1, WL_RATE_1X2_HE4SS1, WL_RATE_1X2_HE5SS1, WL_RATE_1X2_HE6SS1, WL_RATE_1X2_HE7SS1, WL_RATE_1X2_HE8SS1, WL_RATE_1X2_HE9SS1, WL_RATE_1X2_HE10SS1, WL_RATE_1X2_HE11SS1, WL_RATE_1X2_TXBF_HE0SS1, WL_RATE_1X2_TXBF_HE1SS1, WL_RATE_1X2_TXBF_HE2SS1, WL_RATE_1X2_TXBF_HE3SS1, WL_RATE_1X2_TXBF_HE4SS1, WL_RATE_1X2_TXBF_HE5SS1, WL_RATE_1X2_TXBF_HE6SS1, WL_RATE_1X2_TXBF_HE7SS1, WL_RATE_1X2_TXBF_HE8SS1, WL_RATE_1X2_TXBF_HE9SS1, WL_RATE_1X2_TXBF_HE10SS1, WL_RATE_1X2_TXBF_HE11SS1, WL_RATE_2X2_HE0SS2, WL_RATE_2X2_HE1SS2, WL_RATE_2X2_HE2SS2, WL_RATE_2X2_TXBF_HE0SS2, WL_RATE_2X2_TXBF_HE1SS2, WL_RATE_2X2_TXBF_HE2SS2, WL_RATE_1X2_EHT12SS1, WL_RATE_1X2_EHT13SS1, WL_RATE_1X2_EHT14SS1, WL_RATE_1X2_EHT15SS1, WL_RATE_1X2_TXBF_EHT12SS1, WL_RATE_1X2_TXBF_EHT13SS1, WL_RATE_1X2_TXBF_EHT14SS1, WL_RATE_1X2_TXBF_EHT15SS1, / 2.4G 20M rate set 30 / 92, WL_RATE_1X1_MCS0, WL_RATE_1X1_MCS1, WL_RATE_1X1_MCS2, WL_RATE_1X1_MCS3, WL_RATE_1X1_MCS4, WL_RATE_1X1_MCS5, WL_RATE_1X1_MCS6, WL_RATE_1X1_MCS7, WL_RATE_1X1_VHT8SS1, WL_RATE_1X1_VHT9SS1, WL_RATE_2X2_STBC_MCS0, WL_RATE_2X2_STBC_MCS1, WL_RATE_2X2_STBC_MCS2, WL_RATE_2X2_STBC_MCS3, WL_RATE_2X2_STBC_MCS4, WL_RATE_2X2_STBC_MCS5, WL_RATE_2X2_STBC_MCS6, WL_RATE_2X2_STBC_MCS7, WL_RATE_2X2_STBC_VHT8SS1, WL_RATE_2X2_STBC_VHT9SS1, WL_RATE_2X2_SDM_MCS8, WL_RATE_2X2_SDM_MCS9, WL_RATE_2X2_SDM_MCS10, WL_RATE_2X2_SDM_MCS11, WL_RATE_2X2_SDM_MCS12, WL_RATE_2X2_SDM_MCS13, WL_RATE_2X2_SDM_MCS14, WL_RATE_2X2_SDM_MCS15, WL_RATE_2X2_VHT8SS2, WL_RATE_2X2_VHT9SS2, WL_RATE_2X2_TXBF_SDM_MCS8, WL_RATE_2X2_TXBF_SDM_MCS9, WL_RATE_2X2_TXBF_SDM_MCS10, WL_RATE_2X2_TXBF_SDM_MCS11, WL_RATE_2X2_TXBF_SDM_MCS12, WL_RATE_2X2_TXBF_SDM_MCS13, WL_RATE_2X2_TXBF_SDM_MCS14, WL_RATE_2X2_TXBF_SDM_MCS15, WL_RATE_P_1X1_VHT10SS1, WL_RATE_P_1X1_VHT11SS1, WL_RATE_P_2X2_STBC_VHT10SS1, WL_RATE_P_2X2_STBC_VHT11SS1, WL_RATE_P_2X2_VHT10SS2, WL_RATE_P_2X2_VHT11SS2, WL_RATE_1X1_HE0SS1, WL_RATE_1X1_HE1SS1, WL_RATE_1X1_HE2SS1, WL_RATE_1X1_HE3SS1, WL_RATE_1X1_HE4SS1, WL_RATE_1X1_HE5SS1, WL_RATE_1X1_HE6SS1, WL_RATE_1X1_HE7SS1, WL_RATE_1X1_HE8SS1, WL_RATE_1X1_HE9SS1, WL_RATE_1X1_HE10SS1, WL_RATE_1X1_HE11SS1, WL_RATE_1X2_HE0SS1, WL_RATE_1X2_HE1SS1, WL_RATE_1X2_HE2SS1, WL_RATE_1X2_HE3SS1, WL_RATE_1X2_HE4SS1, WL_RATE_1X2_HE5SS1, WL_RATE_1X2_HE6SS1, WL_RATE_1X2_HE7SS1, WL_RATE_1X2_HE8SS1, WL_RATE_1X2_HE9SS1, WL_RATE_1X2_HE10SS1, WL_RATE_1X2_HE11SS1, WL_RATE_2X2_HE0SS2, WL_RATE_2X2_HE1SS2, WL_RATE_2X2_HE2SS2, WL_RATE_2X2_HE3SS2, WL_RATE_2X2_HE4SS2, WL_RATE_2X2_HE5SS2, WL_RATE_2X2_HE6SS2, WL_RATE_2X2_HE7SS2, WL_RATE_2X2_HE8SS2, WL_RATE_2X2_HE9SS2, WL_RATE_2X2_HE10SS2, WL_RATE_2X2_HE11SS2, WL_RATE_2X2_TXBF_HE0SS2, WL_RATE_2X2_TXBF_HE1SS2, WL_RATE_2X2_TXBF_HE2SS2, WL_RATE_2X2_TXBF_HE3SS2, WL_RATE_2X2_TXBF_HE4SS2, WL_RATE_2X2_TXBF_HE5SS2, WL_RATE_2X2_TXBF_HE6SS2, WL_RATE_2X2_TXBF_HE7SS2, WL_RATE_2X2_TXBF_HE8SS2, WL_RATE_2X2_TXBF_HE9SS2, WL_RATE_2X2_TXBF_HE10SS2, WL_RATE_2X2_TXBF_HE11SS2, / 2.4G 20M rate set 31 */ 92, WL_RATE_1X2_DSSS_1, WL_RATE_1X2_DSSS_2, WL_RATE_1X2_DSSS_5_5, WL_RATE_1X2_DSSS_11, WL_RATE_1X2_CDD_OFDM_6, WL_RATE_1X2_CDD_OFDM_9, WL_RATE_1X2_CDD_OFDM_12, WL_RATE_1X2_CDD_OFDM_18, WL_RATE_1X2_CDD_OFDM_24, WL_RATE_1X2_CDD_OFDM_36, WL_RATE_1X2_CDD_OFDM_48, WL_RATE_1X2_CDD_OFDM_54, WL_RATE_1X2_CDD_MCS0, WL_RATE_1X2_CDD_MCS1, WL_RATE_1X2_CDD_MCS2, WL_RATE_1X2_CDD_MCS3, WL_RATE_1X2_CDD_MCS4, WL_RATE_1X2_CDD_MCS5, WL_RATE_1X2_CDD_MCS6, WL_RATE_1X2_CDD_MCS7, WL_RATE_1X2_VHT8SS1, WL_RATE_1X2_VHT9SS1, WL_RATE_2X2_STBC_MCS0, WL_RATE_2X2_STBC_MCS1, WL_RATE_2X2_STBC_MCS2, WL_RATE_2X2_STBC_MCS3, WL_RATE_2X2_STBC_MCS4, WL_RATE_2X2_STBC_MCS5, WL_RATE_2X2_STBC_MCS6, WL_RATE_2X2_STBC_MCS7, WL_RATE_2X2_STBC_VHT8SS1, WL_RATE_2X2_STBC_VHT9SS1, WL_RATE_2X2_SDM_MCS8, WL_RATE_2X2_SDM_MCS9, WL_RATE_2X2_SDM_MCS10, WL_RATE_2X2_SDM_MCS11, WL_RATE_2X2_SDM_MCS12, WL_RATE_2X2_SDM_MCS13, WL_RATE_2X2_SDM_MCS14, WL_RATE_2X2_SDM_MCS15, WL_RATE_2X2_VHT8SS2, WL_RATE_2X2_VHT9SS2, WL_RATE_2X2_TXBF_SDM_MCS8, WL_RATE_2X2_TXBF_SDM_MCS9, WL_RATE_2X2_TXBF_SDM_MCS10, WL_RATE_2X2_TXBF_SDM_MCS11, WL_RATE_2X2_TXBF_SDM_MCS12, WL_RATE_2X2_TXBF_SDM_MCS13, WL_RATE_2X2_TXBF_SDM_MCS14, WL_RATE_2X2_TXBF_SDM_MCS15, WL_RATE_P_1X2_VHT10SS1, WL_RATE_P_1X2_VHT11SS1, WL_RATE_P_2X2_STBC_VHT10SS1, WL_RATE_P_2X2_STBC_VHT11SS1, WL_RATE_P_2X2_VHT10SS2, WL_RATE_P_2X2_VHT11SS2, WL_RATE_1X2_HE0SS1, WL_RATE_1X2_HE1SS1, WL_RATE_1X2_HE2SS1, WL_RATE_1X2_HE3SS1, WL_RATE_1X2_HE4SS1, WL_RATE_1X2_HE5SS1, WL_RATE_1X2_HE6SS1, WL_RATE_1X2_HE7SS1, WL_RATE_1X2_HE8SS1, WL_RATE_1X2_HE9SS1, WL_RATE_1X2_HE10SS1, WL_RATE_1X2_HE11SS1, WL_RATE_2X2_HE0SS2, WL_RATE_2X2_HE1SS2, WL_RATE_2X2_HE2SS2, WL_RATE_2X2_HE3SS2, WL_RATE_2X2_HE4SS2, WL_RATE_2X2_HE5SS2, WL_RATE_2X2_HE6SS2, WL_RATE_2X2_HE7SS2, WL_RATE_2X2_HE8SS2, WL_RATE_2X2_HE9SS2, WL_RATE_2X2_HE10SS2, WL_RATE_2X2_HE11SS2, WL_RATE_2X2_TXBF_HE0SS2, WL_RATE_2X2_TXBF_HE1SS2, WL_RATE_2X2_TXBF_HE2SS2, WL_RATE_2X2_TXBF_HE3SS2, WL_RATE_2X2_TXBF_HE4SS2, WL_RATE_2X2_TXBF_HE5SS2, WL_RATE_2X2_TXBF_HE6SS2, WL_RATE_2X2_TXBF_HE7SS2, WL_RATE_2X2_TXBF_HE8SS2, WL_RATE_2X2_TXBF_HE9SS2, WL_RATE_2X2_TXBF_HE10SS2, WL_RATE_2X2_TXBF_HE11SS2, 32, WL_RATE_1X4_VHT8SS1, WL_RATE_1X4_VHT9SS1, WL_RATE_P_1X4_VHT10SS1, WL_RATE_P_1X4_VHT11SS1, WL_RATE_2X4_VHT8SS2, WL_RATE_2X4_VHT9SS2, WL_RATE_P_2X4_VHT10SS2, WL_RATE_P_2X4_VHT11SS2, WL_RATE_3X4_VHT8SS3, WL_RATE_3X4_VHT9SS3, WL_RATE_P_3X4_VHT10SS3, WL_RATE_P_3X4_VHT11SS3, WL_RATE_4X4_VHT8SS4, WL_RATE_4X4_VHT9SS4, WL_RATE_P_4X4_VHT10SS4, WL_RATE_P_4X4_VHT11SS4, WL_RATE_2X4_STBC_VHT8SS1, WL_RATE_2X4_STBC_VHT9SS1, WL_RATE_P_2X4_STBC_VHT10SS1, WL_RATE_P_2X4_STBC_VHT11SS1, WL_RATE_1X4_TXBF_VHT8SS1, WL_RATE_1X4_TXBF_VHT9SS1, WL_RATE_P_1X4_TXBF_VHT10SS1, WL_RATE_P_1X4_TXBF_VHT11SS1, WL_RATE_2X4_TXBF_VHT8SS2, WL_RATE_2X4_TXBF_VHT9SS2, WL_RATE_P_2X4_TXBF_VHT10SS2, WL_RATE_P_2X4_TXBF_VHT11SS2, WL_RATE_P_3X4_TXBF_VHT8SS3, WL_RATE_P_3X4_TXBF_VHT9SS3, WL_RATE_P_3X4_TXBF_VHT10SS3, WL_RATE_P_3X4_TXBF_VHT11SS3, 96, WL_RATE_1X4_HE0SS1, WL_RATE_1X4_HE1SS1, WL_RATE_1X4_HE2SS1, WL_RATE_1X4_HE3SS1, WL_RATE_1X4_HE4SS1, WL_RATE_1X4_HE5SS1, WL_RATE_1X4_HE6SS1, WL_RATE_1X4_HE7SS1, WL_RATE_1X4_HE8SS1, WL_RATE_1X4_HE9SS1, WL_RATE_1X4_HE10SS1, WL_RATE_1X4_HE11SS1, WL_RATE_2X4_HE0SS2, WL_RATE_2X4_HE1SS2, WL_RATE_2X4_HE2SS2, WL_RATE_2X4_HE3SS2, WL_RATE_2X4_HE4SS2, WL_RATE_2X4_HE5SS2, WL_RATE_2X4_HE6SS2, WL_RATE_2X4_HE7SS2, WL_RATE_2X4_HE8SS2, WL_RATE_2X4_HE9SS2, WL_RATE_2X4_HE10SS2, WL_RATE_2X4_HE11SS2, WL_RATE_3X4_HE0SS3, WL_RATE_3X4_HE1SS3, WL_RATE_3X4_HE2SS3, WL_RATE_3X4_HE3SS3, WL_RATE_3X4_HE4SS3, WL_RATE_3X4_HE5SS3, WL_RATE_3X4_HE6SS3, WL_RATE_3X4_HE7SS3, WL_RATE_3X4_HE8SS3, WL_RATE_3X4_HE9SS3, WL_RATE_3X4_HE10SS3, WL_RATE_3X4_HE11SS3, WL_RATE_4X4_HE0SS4, WL_RATE_4X4_HE1SS4, WL_RATE_4X4_HE2SS4, WL_RATE_4X4_HE3SS4, WL_RATE_4X4_HE4SS4, WL_RATE_4X4_HE5SS4, WL_RATE_4X4_HE6SS4, WL_RATE_4X4_HE7SS4, WL_RATE_4X4_HE8SS4, WL_RATE_4X4_HE9SS4, WL_RATE_4X4_HE10SS4, WL_RATE_4X4_HE11SS4, WL_RATE_1X4_TXBF_HE0SS1, WL_RATE_1X4_TXBF_HE1SS1, WL_RATE_1X4_TXBF_HE2SS1, WL_RATE_1X4_TXBF_HE3SS1, WL_RATE_1X4_TXBF_HE4SS1, WL_RATE_1X4_TXBF_HE5SS1, WL_RATE_1X4_TXBF_HE6SS1, WL_RATE_1X4_TXBF_HE7SS1, WL_RATE_1X4_TXBF_HE8SS1, WL_RATE_1X4_TXBF_HE9SS1, WL_RATE_1X4_TXBF_HE10SS1, WL_RATE_1X4_TXBF_HE11SS1, WL_RATE_2X4_TXBF_HE0SS2, WL_RATE_2X4_TXBF_HE1SS2, WL_RATE_2X4_TXBF_HE2SS2, WL_RATE_2X4_TXBF_HE3SS2, WL_RATE_2X4_TXBF_HE4SS2, WL_RATE_2X4_TXBF_HE5SS2, WL_RATE_2X4_TXBF_HE6SS2, WL_RATE_2X4_TXBF_HE7SS2, WL_RATE_2X4_TXBF_HE8SS2, WL_RATE_2X4_TXBF_HE9SS2, WL_RATE_2X4_TXBF_HE10SS2, WL_RATE_2X4_TXBF_HE11SS2, WL_RATE_3X4_TXBF_HE0SS3, WL_RATE_3X4_TXBF_HE1SS3, WL_RATE_3X4_TXBF_HE2SS3, WL_RATE_3X4_TXBF_HE3SS3, WL_RATE_3X4_TXBF_HE4SS3, WL_RATE_3X4_TXBF_HE5SS3, WL_RATE_3X4_TXBF_HE6SS3, WL_RATE_3X4_TXBF_HE7SS3, WL_RATE_3X4_TXBF_HE8SS3, WL_RATE_3X4_TXBF_HE9SS3, WL_RATE_3X4_TXBF_HE10SS3, WL_RATE_3X4_TXBF_HE11SS3, WL_RATE_4X4_TXBF_HE0SS4, WL_RATE_4X4_TXBF_HE1SS4, WL_RATE_4X4_TXBF_HE2SS4, WL_RATE_4X4_TXBF_HE3SS4, WL_RATE_4X4_TXBF_HE4SS4, WL_RATE_4X4_TXBF_HE5SS4, WL_RATE_4X4_TXBF_HE6SS4, WL_RATE_4X4_TXBF_HE7SS4, WL_RATE_4X4_TXBF_HE8SS4, WL_RATE_4X4_TXBF_HE9SS4, WL_RATE_4X4_TXBF_HE10SS4, WL_RATE_4X4_TXBF_HE11SS4, 20, WL_RATE_1X4_EHT12SS1, WL_RATE_1X4_EHT13SS1, WL_RATE_1X4_EHT14SS1, WL_RATE_1X4_EHT15SS1, WL_RATE_2X4_EHT12SS2, WL_RATE_2X4_EHT13SS2, WL_RATE_3X4_EHT12SS3, WL_RATE_3X4_EHT13SS3, WL_RATE_4X4_EHT12SS4, WL_RATE_4X4_EHT13SS4, WL_RATE_1X4_TXBF_EHT12SS1, WL_RATE_1X4_TXBF_EHT13SS1, WL_RATE_1X4_TXBF_EHT14SS1, WL_RATE_1X4_TXBF_EHT15SS1, WL_RATE_2X4_TXBF_EHT12SS2, WL_RATE_2X4_TXBF_EHT13SS2, WL_RATE_3X4_TXBF_EHT12SS3, WL_RATE_3X4_TXBF_EHT13SS3, WL_RATE_4X4_TXBF_EHT12SS4, WL_RATE_4X4_TXBF_EHT13SS4, 24, WL_RATE_1X3_VHT8SS1, WL_RATE_1X3_VHT9SS1, WL_RATE_P_1X3_VHT10SS1, WL_RATE_P_1X3_VHT11SS1, WL_RATE_2X3_VHT8SS2, WL_RATE_2X3_VHT9SS2, WL_RATE_P_2X3_VHT10SS2, WL_RATE_P_2X3_VHT11SS2, WL_RATE_3X3_VHT8SS3, WL_RATE_3X3_VHT9SS3, WL_RATE_P_3X3_VHT10SS3, WL_RATE_P_3X3_VHT11SS3, WL_RATE_2X3_STBC_VHT8SS1, WL_RATE_2X3_STBC_VHT9SS1, WL_RATE_P_2X3_STBC_VHT10SS1, WL_RATE_P_2X3_STBC_VHT11SS1, WL_RATE_1X3_TXBF_VHT8SS1, WL_RATE_1X3_TXBF_VHT9SS1, WL_RATE_P_1X3_TXBF_VHT10SS1, WL_RATE_P_1X3_TXBF_VHT11SS1, WL_RATE_2X3_TXBF_VHT8SS2, WL_RATE_2X3_TXBF_VHT9SS2, WL_RATE_P_2X3_TXBF_VHT10SS2, WL_RATE_P_2X3_TXBF_VHT11SS2, 72, WL_RATE_1X3_HE0SS1, WL_RATE_1X3_HE1SS1, WL_RATE_1X3_HE2SS1, WL_RATE_1X3_HE3SS1, WL_RATE_1X3_HE4SS1, WL_RATE_1X3_HE5SS1, WL_RATE_1X3_HE6SS1, WL_RATE_1X3_HE7SS1, WL_RATE_1X3_HE8SS1, WL_RATE_1X3_HE9SS1, WL_RATE_1X3_HE10SS1, WL_RATE_1X3_HE11SS1, WL_RATE_2X3_HE0SS2, WL_RATE_2X3_HE1SS2, WL_RATE_2X3_HE2SS2, WL_RATE_2X3_HE3SS2, WL_RATE_2X3_HE4SS2, WL_RATE_2X3_HE5SS2, WL_RATE_2X3_HE6SS2, WL_RATE_2X3_HE7SS2, WL_RATE_2X3_HE8SS2, WL_RATE_2X3_HE9SS2, WL_RATE_2X3_HE10SS2, WL_RATE_2X3_HE11SS2, WL_RATE_3X3_HE0SS3, WL_RATE_3X3_HE1SS3, WL_RATE_3X3_HE2SS3, WL_RATE_3X3_HE3SS3, WL_RATE_3X3_HE4SS3, WL_RATE_3X3_HE5SS3, WL_RATE_3X3_HE6SS3, WL_RATE_3X3_HE7SS3, WL_RATE_3X3_HE8SS3, WL_RATE_3X3_HE9SS3, WL_RATE_3X3_HE10SS3, WL_RATE_3X3_HE11SS3, WL_RATE_1X3_TXBF_HE0SS1, WL_RATE_1X3_TXBF_HE1SS1, WL_RATE_1X3_TXBF_HE2SS1, WL_RATE_1X3_TXBF_HE3SS1, WL_RATE_1X3_TXBF_HE4SS1, WL_RATE_1X3_TXBF_HE5SS1, WL_RATE_1X3_TXBF_HE6SS1, WL_RATE_1X3_TXBF_HE7SS1, WL_RATE_1X3_TXBF_HE8SS1, WL_RATE_1X3_TXBF_HE9SS1, WL_RATE_1X3_TXBF_HE10SS1, WL_RATE_1X3_TXBF_HE11SS1, WL_RATE_2X3_TXBF_HE0SS2, WL_RATE_2X3_TXBF_HE1SS2, WL_RATE_2X3_TXBF_HE2SS2, WL_RATE_2X3_TXBF_HE3SS2, WL_RATE_2X3_TXBF_HE4SS2, WL_RATE_2X3_TXBF_HE5SS2, WL_RATE_2X3_TXBF_HE6SS2, WL_RATE_2X3_TXBF_HE7SS2, WL_RATE_2X3_TXBF_HE8SS2, WL_RATE_2X3_TXBF_HE9SS2, WL_RATE_2X3_TXBF_HE10SS2, WL_RATE_2X3_TXBF_HE11SS2, WL_RATE_3X3_TXBF_HE0SS3, WL_RATE_3X3_TXBF_HE1SS3, WL_RATE_3X3_TXBF_HE2SS3, WL_RATE_3X3_TXBF_HE3SS3, WL_RATE_3X3_TXBF_HE4SS3, WL_RATE_3X3_TXBF_HE5SS3, WL_RATE_3X3_TXBF_HE6SS3, WL_RATE_3X3_TXBF_HE7SS3, WL_RATE_3X3_TXBF_HE8SS3, WL_RATE_3X3_TXBF_HE9SS3, WL_RATE_3X3_TXBF_HE10SS3, WL_RATE_3X3_TXBF_HE11SS3, 16, WL_RATE_1X3_EHT12SS1, WL_RATE_1X3_EHT13SS1, WL_RATE_1X3_EHT14SS1, WL_RATE_1X3_EHT15SS1, WL_RATE_2X3_EHT12SS2, WL_RATE_2X3_EHT13SS2, WL_RATE_3X3_EHT12SS3, WL_RATE_3X3_EHT13SS3, WL_RATE_1X3_TXBF_EHT12SS1, WL_RATE_1X3_TXBF_EHT13SS1, WL_RATE_1X3_TXBF_EHT14SS1, WL_RATE_1X3_TXBF_EHT15SS1, WL_RATE_2X3_TXBF_EHT12SS2, WL_RATE_2X3_TXBF_EHT13SS2, WL_RATE_3X3_TXBF_EHT12SS3, WL_RATE_3X3_TXBF_EHT13SS3, 20, WL_RATE_1X1_VHT8SS1, WL_RATE_1X1_VHT9SS1, WL_RATE_P_1X1_VHT10SS1, WL_RATE_P_1X1_VHT11SS1, WL_RATE_1X2_VHT8SS1, WL_RATE_1X2_VHT9SS1, WL_RATE_P_1X2_VHT10SS1, WL_RATE_P_1X2_VHT11SS1, WL_RATE_2X2_VHT8SS2, WL_RATE_2X2_VHT9SS2, WL_RATE_P_2X2_VHT10SS2, WL_RATE_P_2X2_VHT11SS2, WL_RATE_2X2_STBC_VHT8SS1, WL_RATE_2X2_STBC_VHT9SS1, WL_RATE_P_2X2_STBC_VHT10SS1, WL_RATE_P_2X2_STBC_VHT11SS1, WL_RATE_1X2_TXBF_VHT8SS1, WL_RATE_1X2_TXBF_VHT9SS1, WL_RATE_P_1X2_TXBF_VHT10SS1, WL_RATE_P_1X2_TXBF_VHT11SS1, 60, WL_RATE_1X1_HE0SS1, WL_RATE_1X1_HE1SS1, WL_RATE_1X1_HE2SS1, WL_RATE_1X1_HE3SS1, WL_RATE_1X1_HE4SS1, WL_RATE_1X1_HE5SS1, WL_RATE_1X1_HE6SS1, WL_RATE_1X1_HE7SS1, WL_RATE_1X1_HE8SS1, WL_RATE_1X1_HE9SS1, WL_RATE_1X1_HE10SS1, WL_RATE_1X1_HE11SS1, WL_RATE_1X2_HE0SS1, WL_RATE_1X2_HE1SS1, WL_RATE_1X2_HE2SS1, WL_RATE_1X2_HE3SS1, WL_RATE_1X2_HE4SS1, WL_RATE_1X2_HE5SS1, WL_RATE_1X2_HE6SS1, WL_RATE_1X2_HE7SS1, WL_RATE_1X2_HE8SS1, WL_RATE_1X2_HE9SS1, WL_RATE_1X2_HE10SS1, WL_RATE_1X2_HE11SS1, WL_RATE_2X2_HE0SS2, WL_RATE_2X2_HE1SS2, WL_RATE_2X2_HE2SS2, WL_RATE_2X2_HE3SS2, WL_RATE_2X2_HE4SS2, WL_RATE_2X2_HE5SS2, WL_RATE_2X2_HE6SS2, WL_RATE_2X2_HE7SS2, WL_RATE_2X2_HE8SS2, WL_RATE_2X2_HE9SS2, WL_RATE_2X2_HE10SS2, WL_RATE_2X2_HE11SS2, WL_RATE_1X2_TXBF_HE0SS1, WL_RATE_1X2_TXBF_HE1SS1, WL_RATE_1X2_TXBF_HE2SS1, WL_RATE_1X2_TXBF_HE3SS1, WL_RATE_1X2_TXBF_HE4SS1, WL_RATE_1X2_TXBF_HE5SS1, WL_RATE_1X2_TXBF_HE6SS1, WL_RATE_1X2_TXBF_HE7SS1, WL_RATE_1X2_TXBF_HE8SS1, WL_RATE_1X2_TXBF_HE9SS1, WL_RATE_1X2_TXBF_HE10SS1, WL_RATE_1X2_TXBF_HE11SS1, WL_RATE_2X2_TXBF_HE0SS2, WL_RATE_2X2_TXBF_HE1SS2, WL_RATE_2X2_TXBF_HE2SS2, WL_RATE_2X2_TXBF_HE3SS2, WL_RATE_2X2_TXBF_HE4SS2, WL_RATE_2X2_TXBF_HE5SS2, WL_RATE_2X2_TXBF_HE6SS2, WL_RATE_2X2_TXBF_HE7SS2, WL_RATE_2X2_TXBF_HE8SS2, WL_RATE_2X2_TXBF_HE9SS2, WL_RATE_2X2_TXBF_HE10SS2, WL_RATE_2X2_TXBF_HE11SS2, 32, WL_RATE_1X4_VHT8SS1, WL_RATE_1X4_VHT9SS1, WL_RATE_P_1X4_VHT10SS1, WL_RATE_P_1X4_VHT11SS1, WL_RATE_2X4_VHT8SS2, WL_RATE_2X4_VHT9SS2, WL_RATE_P_2X4_VHT10SS2, WL_RATE_P_2X4_VHT11SS2, WL_RATE_3X4_VHT8SS3, WL_RATE_3X4_VHT9SS3, WL_RATE_P_3X4_VHT10SS3, WL_RATE_P_3X4_VHT11SS3, WL_RATE_4X4_VHT8SS4, WL_RATE_4X4_VHT9SS4, WL_RATE_P_4X4_VHT10SS4, WL_RATE_P_4X4_VHT11SS4, WL_RATE_2X4_STBC_VHT8SS1, WL_RATE_2X4_STBC_VHT9SS1, WL_RATE_P_2X4_STBC_VHT10SS1, WL_RATE_P_2X4_STBC_VHT11SS1, WL_RATE_1X4_TXBF_VHT8SS1, WL_RATE_1X4_TXBF_VHT9SS1, WL_RATE_P_1X4_TXBF_VHT10SS1, WL_RATE_P_1X4_TXBF_VHT11SS1, WL_RATE_2X4_TXBF_VHT8SS2, WL_RATE_2X4_TXBF_VHT9SS2, WL_RATE_P_2X4_TXBF_VHT10SS2, WL_RATE_P_2X4_TXBF_VHT11SS2, WL_RATE_P_3X4_TXBF_VHT8SS3, WL_RATE_P_3X4_TXBF_VHT9SS3, WL_RATE_P_3X4_TXBF_VHT10SS3, WL_RATE_P_3X4_TXBF_VHT11SS3, 96, WL_RATE_1X4_HE0SS1, WL_RATE_1X4_HE1SS1, WL_RATE_1X4_HE2SS1, WL_RATE_1X4_HE3SS1, WL_RATE_1X4_HE4SS1, WL_RATE_1X4_HE5SS1, WL_RATE_1X4_HE6SS1, WL_RATE_1X4_HE7SS1, WL_RATE_1X4_HE8SS1, WL_RATE_1X4_HE9SS1, WL_RATE_1X4_HE10SS1, WL_RATE_1X4_HE11SS1, WL_RATE_2X4_HE0SS2, WL_RATE_2X4_HE1SS2, WL_RATE_2X4_HE2SS2, WL_RATE_2X4_HE3SS2, WL_RATE_2X4_HE4SS2, WL_RATE_2X4_HE5SS2, WL_RATE_2X4_HE6SS2, WL_RATE_2X4_HE7SS2, WL_RATE_2X4_HE8SS2, WL_RATE_2X4_HE9SS2, WL_RATE_2X4_HE10SS2, WL_RATE_2X4_HE11SS2, WL_RATE_3X4_HE0SS3, WL_RATE_3X4_HE1SS3, WL_RATE_3X4_HE2SS3, WL_RATE_3X4_HE3SS3, WL_RATE_3X4_HE4SS3, WL_RATE_3X4_HE5SS3, WL_RATE_3X4_HE6SS3, WL_RATE_3X4_HE7SS3, WL_RATE_3X4_HE8SS3, WL_RATE_3X4_HE9SS3, WL_RATE_3X4_HE10SS3, WL_RATE_3X4_HE11SS3, WL_RATE_4X4_HE0SS4, WL_RATE_4X4_HE1SS4, WL_RATE_4X4_HE2SS4, WL_RATE_4X4_HE3SS4, WL_RATE_4X4_HE4SS4, WL_RATE_4X4_HE5SS4, WL_RATE_4X4_HE6SS4, WL_RATE_4X4_HE7SS4, WL_RATE_4X4_HE8SS4, WL_RATE_4X4_HE9SS4, WL_RATE_4X4_HE10SS4, WL_RATE_4X4_HE11SS4, WL_RATE_1X4_TXBF_HE0SS1, WL_RATE_1X4_TXBF_HE1SS1, WL_RATE_1X4_TXBF_HE2SS1, WL_RATE_1X4_TXBF_HE3SS1, WL_RATE_1X4_TXBF_HE4SS1, WL_RATE_1X4_TXBF_HE5SS1, WL_RATE_1X4_TXBF_HE6SS1, WL_RATE_1X4_TXBF_HE7SS1, WL_RATE_1X4_TXBF_HE8SS1, WL_RATE_1X4_TXBF_HE9SS1, WL_RATE_1X4_TXBF_HE10SS1, WL_RATE_1X4_TXBF_HE11SS1, WL_RATE_2X4_TXBF_HE0SS2, WL_RATE_2X4_TXBF_HE1SS2, WL_RATE_2X4_TXBF_HE2SS2, WL_RATE_2X4_TXBF_HE3SS2, WL_RATE_2X4_TXBF_HE4SS2, WL_RATE_2X4_TXBF_HE5SS2, WL_RATE_2X4_TXBF_HE6SS2, WL_RATE_2X4_TXBF_HE7SS2, WL_RATE_2X4_TXBF_HE8SS2, WL_RATE_2X4_TXBF_HE9SS2, WL_RATE_2X4_TXBF_HE10SS2, WL_RATE_2X4_TXBF_HE11SS2, WL_RATE_3X4_TXBF_HE0SS3, WL_RATE_3X4_TXBF_HE1SS3, WL_RATE_3X4_TXBF_HE2SS3, WL_RATE_3X4_TXBF_HE3SS3, WL_RATE_3X4_TXBF_HE4SS3, WL_RATE_3X4_TXBF_HE5SS3, WL_RATE_3X4_TXBF_HE6SS3, WL_RATE_3X4_TXBF_HE7SS3, WL_RATE_3X4_TXBF_HE8SS3, WL_RATE_3X4_TXBF_HE9SS3, WL_RATE_3X4_TXBF_HE10SS3, WL_RATE_3X4_TXBF_HE11SS3, WL_RATE_4X4_TXBF_HE0SS4, WL_RATE_4X4_TXBF_HE1SS4, WL_RATE_4X4_TXBF_HE2SS4, WL_RATE_4X4_TXBF_HE3SS4, WL_RATE_4X4_TXBF_HE4SS4, WL_RATE_4X4_TXBF_HE5SS4, WL_RATE_4X4_TXBF_HE6SS4, WL_RATE_4X4_TXBF_HE7SS4, WL_RATE_4X4_TXBF_HE8SS4, WL_RATE_4X4_TXBF_HE9SS4, WL_RATE_4X4_TXBF_HE10SS4, WL_RATE_4X4_TXBF_HE11SS4, 20, WL_RATE_1X4_EHT12SS1, WL_RATE_1X4_EHT13SS1, WL_RATE_1X4_EHT14SS1, WL_RATE_1X4_EHT15SS1, WL_RATE_2X4_EHT12SS2, WL_RATE_2X4_EHT13SS2, WL_RATE_3X4_EHT12SS3, WL_RATE_3X4_EHT13SS3, WL_RATE_4X4_EHT12SS4, WL_RATE_4X4_EHT13SS4, WL_RATE_1X4_TXBF_EHT12SS1, WL_RATE_1X4_TXBF_EHT13SS1, WL_RATE_1X4_TXBF_EHT14SS1, WL_RATE_1X4_TXBF_EHT15SS1, WL_RATE_2X4_TXBF_EHT12SS2, WL_RATE_2X4_TXBF_EHT13SS2, WL_RATE_3X4_TXBF_EHT12SS3, WL_RATE_3X4_TXBF_EHT13SS3, WL_RATE_4X4_TXBF_EHT12SS4, WL_RATE_4X4_TXBF_EHT13SS4, 24, WL_RATE_1X3_VHT8SS1, WL_RATE_1X3_VHT9SS1, WL_RATE_P_1X3_VHT10SS1, WL_RATE_P_1X3_VHT11SS1, WL_RATE_2X3_VHT8SS2, WL_RATE_2X3_VHT9SS2, WL_RATE_P_2X3_VHT10SS2, WL_RATE_P_2X3_VHT11SS2, WL_RATE_3X3_VHT8SS3, WL_RATE_3X3_VHT9SS3, WL_RATE_P_3X3_VHT10SS3, WL_RATE_P_3X3_VHT11SS3, WL_RATE_2X3_STBC_VHT8SS1, WL_RATE_2X3_STBC_VHT9SS1, WL_RATE_P_2X3_STBC_VHT10SS1, WL_RATE_P_2X3_STBC_VHT11SS1, WL_RATE_1X3_TXBF_VHT8SS1, WL_RATE_1X3_TXBF_VHT9SS1, WL_RATE_P_1X3_TXBF_VHT10SS1, WL_RATE_P_1X3_TXBF_VHT11SS1, WL_RATE_2X3_TXBF_VHT8SS2, WL_RATE_2X3_TXBF_VHT9SS2, WL_RATE_P_2X3_TXBF_VHT10SS2, WL_RATE_P_2X3_TXBF_VHT11SS2, 72, WL_RATE_1X3_HE0SS1, WL_RATE_1X3_HE1SS1, WL_RATE_1X3_HE2SS1, WL_RATE_1X3_HE3SS1, WL_RATE_1X3_HE4SS1, WL_RATE_1X3_HE5SS1, WL_RATE_1X3_HE6SS1, WL_RATE_1X3_HE7SS1, WL_RATE_1X3_HE8SS1, WL_RATE_1X3_HE9SS1, WL_RATE_1X3_HE10SS1, WL_RATE_1X3_HE11SS1, WL_RATE_2X3_HE0SS2, WL_RATE_2X3_HE1SS2, WL_RATE_2X3_HE2SS2, WL_RATE_2X3_HE3SS2, WL_RATE_2X3_HE4SS2, WL_RATE_2X3_HE5SS2, WL_RATE_2X3_HE6SS2, WL_RATE_2X3_HE7SS2, WL_RATE_2X3_HE8SS2, WL_RATE_2X3_HE9SS2, WL_RATE_2X3_HE10SS2, WL_RATE_2X3_HE11SS2, WL_RATE_3X3_HE0SS3, WL_RATE_3X3_HE1SS3, WL_RATE_3X3_HE2SS3, WL_RATE_3X3_HE3SS3, WL_RATE_3X3_HE4SS3, WL_RATE_3X3_HE5SS3, WL_RATE_3X3_HE6SS3, WL_RATE_3X3_HE7SS3, WL_RATE_3X3_HE8SS3, WL_RATE_3X3_HE9SS3, WL_RATE_3X3_HE10SS3, WL_RATE_3X3_HE11SS3, WL_RATE_1X3_TXBF_HE0SS1, WL_RATE_1X3_TXBF_HE1SS1, WL_RATE_1X3_TXBF_HE2SS1, WL_RATE_1X3_TXBF_HE3SS1, WL_RATE_1X3_TXBF_HE4SS1, WL_RATE_1X3_TXBF_HE5SS1, WL_RATE_1X3_TXBF_HE6SS1, WL_RATE_1X3_TXBF_HE7SS1, WL_RATE_1X3_TXBF_HE8SS1, WL_RATE_1X3_TXBF_HE9SS1, WL_RATE_1X3_TXBF_HE10SS1, WL_RATE_1X3_TXBF_HE11SS1, WL_RATE_2X3_TXBF_HE0SS2, WL_RATE_2X3_TXBF_HE1SS2, WL_RATE_2X3_TXBF_HE2SS2, WL_RATE_2X3_TXBF_HE3SS2, WL_RATE_2X3_TXBF_HE4SS2, WL_RATE_2X3_TXBF_HE5SS2, WL_RATE_2X3_TXBF_HE6SS2, WL_RATE_2X3_TXBF_HE7SS2, WL_RATE_2X3_TXBF_HE8SS2, WL_RATE_2X3_TXBF_HE9SS2, WL_RATE_2X3_TXBF_HE10SS2, WL_RATE_2X3_TXBF_HE11SS2, WL_RATE_3X3_TXBF_HE0SS3, WL_RATE_3X3_TXBF_HE1SS3, WL_RATE_3X3_TXBF_HE2SS3, WL_RATE_3X3_TXBF_HE3SS3, WL_RATE_3X3_TXBF_HE4SS3, WL_RATE_3X3_TXBF_HE5SS3, WL_RATE_3X3_TXBF_HE6SS3, WL_RATE_3X3_TXBF_HE7SS3, WL_RATE_3X3_TXBF_HE8SS3, WL_RATE_3X3_TXBF_HE9SS3, WL_RATE_3X3_TXBF_HE10SS3, WL_RATE_3X3_TXBF_HE11SS3, 16, WL_RATE_1X3_EHT12SS1, WL_RATE_1X3_EHT13SS1, WL_RATE_1X3_EHT14SS1, WL_RATE_1X3_EHT15SS1, WL_RATE_2X3_EHT12SS2, WL_RATE_2X3_EHT13SS2, WL_RATE_3X3_EHT12SS3, WL_RATE_3X3_EHT13SS3, WL_RATE_1X3_TXBF_EHT12SS1, WL_RATE_1X3_TXBF_EHT13SS1, WL_RATE_1X3_TXBF_EHT14SS1, WL_RATE_1X3_TXBF_EHT15SS1, WL_RATE_2X3_TXBF_EHT12SS2, WL_RATE_2X3_TXBF_EHT13SS2, WL_RATE_3X3_TXBF_EHT12SS3, WL_RATE_3X3_TXBF_EHT13SS3, 16, WL_RATE_1X1_EHT12SS1, WL_RATE_1X1_EHT13SS1, WL_RATE_1X1_EHT14SS1, WL_RATE_1X1_EHT15SS1, WL_RATE_1X2_EHT12SS1, WL_RATE_1X2_EHT13SS1, WL_RATE_1X2_EHT14SS1, WL_RATE_1X2_EHT15SS1, WL_RATE_1X2_TXBF_EHT12SS1, WL_RATE_1X2_TXBF_EHT13SS1, WL_RATE_1X2_TXBF_EHT14SS1, WL_RATE_1X2_TXBF_EHT15SS1, WL_RATE_2X2_EHT12SS2, WL_RATE_2X2_EHT13SS2, WL_RATE_2X2_TXBF_EHT12SS2, WL_RATE_2X2_TXBF_EHT13SS2 }; static const unsigned short rate_sets_index_2g_20m[] = { 0, 13, 26, 39, 160, 285, 418, 563, 579, 596, 619, 644, 673, 677, 708, 741, 779, 784, 789, 835, 884, 890, 943, 1004, 1069, 1141, 1214, 1223, 1304, 1389, 1477, 1570, 1663, 1696, 1793, 1663, 1688, 1761, 1663, 1684, 1663, 1696, 1793, 1663, 1688, 1761, 1663 }; 很明显没有任何改变,我希望参考以下 def _write_back_in_blocks(self): “”“将修改后的 enum 和 table 块写回原 C 文件,基于锚点 block 精准更新”“” self.logger.info(“正在写回修改后的数据…”) if self.dry_run: self.logger.info(“DRY-RUN: 跳过写入文件”) return try: content = self.c_file_path.read_text(encoding='utf-8') # === Step 1: 查找所有锚点位置 === enum_start = content.find(self.start_enum_marker) enum_end = content.find(self.end_enum_marker) table_start = content.find(self.start_table_marker) table_end = content.find(self.end_table_marker) if -1 in (enum_start, enum_end, table_start, table_end): missing = [] if enum_start == -1: missing.append(f"起始 ENUM: {self.start_enum_marker}") if enum_end == -1: missing.append(f"结束 ENUM: {self.end_enum_marker}") if table_start == -1: missing.append(f"起始 TABLE: {self.start_table_marker}") if table_end == -1: missing.append(f"结束 TABLE: {self.end_table_marker}") raise ValueError(f"未找到锚点标记: {missing}") enum_block = content[enum_start:enum_end] table_block = content[table_start:table_end] self.logger.info(f" 修改枚举范围: 第 {self.offset_to_lineno(content, enum_start)} 行 → " f"{self.offset_to_lineno(content, enum_end)} 行") self.logger.info(f" 修改数组范围: 第 {self.offset_to_lineno(content, table_start)} 行 → " f"{self.offset_to_lineno(content, table_end)} 行") replacements = [] # (start, end, replacement) def remove_comments(text): text = re.sub(r'//.*$', '', text, flags=re.MULTILINE) text = re.sub(r'/\*.*?\*/', '', text, flags=re.DOTALL) return text.strip() # === Step 3: 更新 ENUMs === for target in self.locale_targets: enum_name_key = target["enum"] enum_data = self.locale_enums.get(enum_name_key) if not enum_data or "pending_updates" not in enum_data: continue insertions = enum_data["pending_updates"] if not insertions: continue pattern = re.compile( rf'(enum\s+{re.escape(enum_name_key)}\s*\{{)([^}}]*)\}}\s*;', re.DOTALL | re.IGNORECASE ) match = pattern.search(enum_block) if not match: self.logger.warning(f"未找到枚举: {enum_name_key}") continue header_part = match.group(1) body_content = match.group(2) lines = [ln for ln in body_content.split('\n') if ln.strip()] last_line = lines[-1] if lines else "" indent_match = re.match(r'^(\s*)', last_line) line_indent = indent_match.group(1) if indent_match else " " expanded_last = last_line.expandtabs(4) clean_last = remove_comments(last_line) first_macro_match = re.search(r'LOCALE_[A-Z0-9_]+', clean_last) default_indent_len = len(line_indent.replace('\t', ' ')) target_macro_col = default_indent_len if first_macro_match: raw_before = last_line[:first_macro_match.start()] expanded_before = raw_before.expandtabs(4) target_macro_col = len(expanded_before) eq_match = re.search(r'=\s*\d+', clean_last) if eq_match and first_macro_match: eq_abs_start = first_macro_match.start() + eq_match.start() raw_eq_part = last_line[:eq_abs_start] expanded_eq_part = raw_eq_part.expandtabs(4) target_eq_col = len(expanded_eq_part) else: target_eq_col = target_macro_col + 30 new_body = body_content.rstrip() if not new_body.endswith(','): new_body += ',' for macro_name, next_idx in insertions: current_visual_len = len(macro_name.replace('\t', ' ')) padding_to_eq = max(1, target_eq_col - target_macro_col - current_visual_len) formatted_macro = f"{macro_name}{' ' * padding_to_eq}= {next_idx}" visible_macros = len(re.findall(r'LOCALE_[A-Z0-9_]+', clean_last)) MAX_PER_LINE = 4 if visible_macros < MAX_PER_LINE and last_line.strip(): insertion = f" {formatted_macro}," updated_last = last_line.rstrip() + insertion new_body = body_content.rsplit(last_line, 1)[0] + updated_last last_line = updated_last clean_last = remove_comments(last_line) else: raw_indent_len = len(line_indent.replace('\t', ' ')) leading_spaces = max(0, target_macro_col - raw_indent_len) prefix_padding = ' ' * leading_spaces new_line = f"\n{line_indent}{prefix_padding}{formatted_macro}," new_body += new_line last_line = new_line.strip() clean_last = remove_comments(last_line) new_enum = f"{header_part}{new_body}\n}};" full_start = enum_start + match.start() full_end = enum_start + match.end() replacements.append((full_start, full_end, new_enum)) self.logger.debug(f"插入 ENUM: {dict(insertions)}") enum_data.pop("pending_updates", None) # === Step 4: 更新 TABLEs —— 使用 pending_appends 中的数据 === seen = set() table_names = [] for target in self.locale_targets: name = target["table"] if name not in seen: table_names.append(name) seen.add(name) for table_name in table_names: if table_name not in self.power_tables: self.logger.debug(f"跳过未定义的表: {table_name}") continue if table_name not in self.table_pending_appends: self.logger.debug(f"无待插入数据: {table_name}") continue data_to_insert = self.table_pending_appends[table_name] if not data_to_insert: continue pattern = re.compile( rf'(\b{re.escape(table_name)}\s*$$\s*$$\s*=\s*\{{)(.*?)(\}}\s*;\s*)', re.DOTALL | re.IGNORECASE ) match = pattern.search(table_block) if not match: self.logger.warning(f"未找到数组定义: {table_name}") continue header_part = match.group(1) body_content = match.group(2) footer_part = match.group(3) lines = [ln for ln in body_content.split('\n') if ln.strip()] last_line = lines[-1] if lines else "" indent_match = re.match(r'^(\s*)', last_line) line_indent = indent_match.group(1) if indent_match else " " new_body = body_content.rstrip() # ==== 遍历每个待插入的 locale 数据块 ==== for item in data_to_insert: locale_tag = item['locale_tag'] locale_display = locale_tag.replace('_', '-') macro_suffix = locale_tag # 添加注释标记(与原始风格一致) new_body += f"\n{line_indent}/* Locale {locale_display} ({macro_suffix}) */" # 原始行加空格,不 strip,不加额外 indent for raw_line in item['data_lines']: # 仅排除纯空白行(可选),保留所有格式 if raw_line.strip(): # 排除空行 # 使用原始缩进,不再加 {line_indent} new_body += f"\n{line_indent}{raw_line}" # 构造新 table 内容 full_start = table_start + match.start() full_end = table_start + match.end() new_table = f"{header_part}{new_body}\n{footer_part}" replacements.append((full_start, full_end, new_table)) self.logger.debug(f"插入{len(data_to_insert)} 个 Locale 数据块到 {table_name}") # 清除防止重复写入 self.table_pending_appends.pop(table_name, None) # === Step 5: 应用所有替换(倒序避免偏移错乱)=== if not replacements: self.logger.info("无任何修改需要写入") return replacements.sort(key=lambda x: x[0], reverse=True) # 倒序应用 final_content = content for start, end, r in replacements: #self.logger.info(f"增加 [{start}:{end}] → 新内容:\n{r[:150]}...") final_content = final_content[:start] + r + final_content[end:] if content == final_content: self.logger.info("文件内容未发生变化,无需写入") return # 备份原文件 backup_path = self.c_file_path.with_suffix('.c.bak') copy2(self.c_file_path, backup_path) self.logger.info(f"已备份 → {backup_path}") # 写入新内容 self.c_file_path.write_text(final_content, encoding='utf-8') self.logger.info(f"成功写回 C 文件: {self.c_file_path}") self.logger.info(f"共更新 {len(replacements)} 个区块") except Exception as e: self.logger.error(f"写回文件失败: {e}", exc_info=True) raise人家的写入就是没有问题
10-25
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值