@@ -65,7 +65,7 @@ struct du_high_unit_ssb_config {
6565// / Common uplink parameters of a cell.
6666struct du_high_unit_ul_common_config {
6767 // / Maximum transmit power allowed in this serving cell. Values: {-30,...,33}dBm.
68- optional<int > p_max;
68+ std:: optional<int > p_max;
6969 // / Maximum number of PUCCH grants per slot.
7070 unsigned max_pucchs_per_slot = 31U ;
7171 // / Maximum number of PUSCH + PUCCH grants per slot.
@@ -236,7 +236,7 @@ struct du_high_unit_pucch_config {
236236 unsigned f2_max_nof_rbs = 1 ;
237237 // / \brief Maximum payload in bits that can be carried by PUCCH Format 2. Values {-1,...,11}.
238238 // / Value -1 to unset. If this is set, \ref f2_max_nof_rbs is ignored.
239- optional<unsigned > max_payload_bits;
239+ std:: optional<unsigned > max_payload_bits;
240240 // / Set true for PUCCH Format 2 intra-slot frequency hopping. This field is ignored if f2_nof_symbols == 1.
241241 bool f2_intraslot_freq_hopping = false ;
242242 // / Max code rate.
@@ -254,7 +254,7 @@ struct du_high_unit_pucch_config {
254254struct du_high_unit_phy_cell_group_config {
255255 // / \brief \c p-NR-FR1, part of \c PhysicalCellGroupConfig, TS 38.331. Values: {-30,...,33}.
256256 // / The maximum total TX power to be used by the UE in this NR cell group across all serving cells in FR1.
257- optional<int > p_nr_fr1;
257+ std:: optional<int > p_nr_fr1;
258258};
259259
260260// / TDD pattern configuration. See TS 38.331, \c TDD-UL-DL-Pattern.
@@ -273,8 +273,8 @@ struct tdd_ul_dl_pattern_unit_config {
273273
274274// / TDD configuration. See TS 38.331, \c TDD-UL-DL-ConfigCommon.
275275struct du_high_unit_tdd_ul_dl_config {
276- tdd_ul_dl_pattern_unit_config pattern1;
277- optional<tdd_ul_dl_pattern_unit_config> pattern2;
276+ tdd_ul_dl_pattern_unit_config pattern1;
277+ std:: optional<tdd_ul_dl_pattern_unit_config> pattern2;
278278};
279279
280280// / Paging related configuration. See TS 38.331, PCCH-Config.
@@ -294,24 +294,24 @@ struct du_high_unit_paging_config {
294294// / PDCCH Common configuration.
295295struct pdcch_common_unit_config {
296296 // / CORESET#0 index as per tables in TS 38.213, clause 13.
297- optional<unsigned > coreset0_index;
297+ std:: optional<unsigned > coreset0_index;
298298 // / Number of PDCCH candidates per aggregation level for SearchSpace#1. The aggregation level for the array element
299299 // / with index "x" is L=1U << x. The possible values for each element are {0, 1, 2, 3, 4, 5, 6, 8}.
300300 std::array<uint8_t , 5 > ss1_n_candidates = {0 , 0 , 1 , 0 , 0 };
301301 // / SearchSpace#0 index as per tables in TS 38.213, clause 13.
302302 unsigned ss0_index = 0 ;
303303 // / Maximum CORESET#0 duration in OFDM symbols to consider when deriving CORESET#0 index.
304- optional<uint8_t > max_coreset0_duration;
304+ std:: optional<uint8_t > max_coreset0_duration;
305305};
306306
307307// / PDCCH Dedicated configuration.
308308struct pdcch_dedicated_unit_config {
309309 // / Starting Common Resource Block (CRB) number for CORESET 1 relative to CRB 0.
310- optional<unsigned > coreset1_rb_start;
310+ std:: optional<unsigned > coreset1_rb_start;
311311 // / Length of CORESET 1 in number of CRBs.
312- optional<unsigned > coreset1_l_crb;
312+ std:: optional<unsigned > coreset1_l_crb;
313313 // / Duration of CORESET 1 in number of OFDM symbols.
314- optional<unsigned > coreset1_duration;
314+ std:: optional<unsigned > coreset1_duration;
315315 // / Number of PDCCH candidates per aggregation level for SearchSpace#2. The aggregation level for the array element
316316 // / with index "x" is L=1U << x. The possible values for each element are {0, 1, 2, 3, 4, 5, 6, 8}.
317317 // / NOTE: A value of {0, 0, 0, 0, 0} lets the gNB decide nof. candidates for SearchSpace#2.
@@ -382,13 +382,13 @@ struct du_high_unit_csi_config {
382382 unsigned csi_rs_period_msec = 20 ;
383383 // / \brief Slot offset for measurement CSI-RS resources. If not set, it is automatically derived to avoid collisions
384384 // / with SSB and SIB1.
385- optional<unsigned > meas_csi_slot_offset;
385+ std:: optional<unsigned > meas_csi_slot_offset;
386386 // / \brief Slot offset of the first CSI-RS resource used for tracking. If not set, it is automatically derived to
387387 // / avoid collisions with SSB and SIB1.
388- optional<unsigned > tracking_csi_slot_offset;
388+ std:: optional<unsigned > tracking_csi_slot_offset;
389389 // / \brief Slot offset for the zp-CSI-RS resources. If not set, it is automatically derived to avoid collisions with
390390 // / SSB and SIB1.
391- optional<unsigned > zp_csi_slot_offset;
391+ std:: optional<unsigned > zp_csi_slot_offset;
392392 // / \brief \c powerControlOffset, part of \c NZP-CSI-RS-Resource, as per TS 38.331.
393393 // / Power offset of PDSCH RE to NZP CSI-RS RE. Value in dB {-8,...,15}.
394394 int pwr_ctrl_offset = 0 ;
@@ -404,7 +404,7 @@ struct mac_bsr_unit_config {
404404 // / 2560, 5120, 10240}.
405405 unsigned retx_bsr_timer = 80 ;
406406 // / Logical Channel SR delay timer in nof. subframes. Values {20, 40, 64, 128, 512, 1024, 2560}.
407- optional<unsigned > lc_sr_delay_timer;
407+ std:: optional<unsigned > lc_sr_delay_timer;
408408};
409409
410410// / MAC Power Headroom Reporting configuration.
@@ -418,7 +418,7 @@ struct mac_phr_unit_config {
418418struct mac_sr_unit_config {
419419 // / \brief \c sr-ProhibitTimer, or timer for SR transmission on PUCCH.
420420 // / Values are in ms. Values: {1, 2, 4, 8, 16, 32, 64, 128}. When the field is absent, the UE applies the value 0.
421- optional<unsigned > sr_prohibit_timer;
421+ std:: optional<unsigned > sr_prohibit_timer;
422422 // / \brief \c sr-TransMax possible values, or maximum number of SR transmissions.
423423 // / Values: {4, 8, 16, 32, 64}.
424424 unsigned sr_trans_max = 64 ;
@@ -437,7 +437,7 @@ struct du_high_unit_mac_cell_group_config {
437437// / PRACH application configuration.
438438struct du_high_unit_prach_config {
439439 // / PRACH configuration index. If not specified, it is automatically derived to fit in an UL slot.
440- optional<unsigned > prach_config_index;
440+ std:: optional<unsigned > prach_config_index;
441441 // / PRACH root sequence index.
442442 unsigned prach_root_sequence_index = 1 ;
443443 // / Zero correlation zone
@@ -448,11 +448,11 @@ struct du_high_unit_prach_config {
448448 // / valid.
449449 int preamble_rx_target_pw = -100 ;
450450 // / Total number of PRACH preambles used for contention based and contention free 4-step or 2-step random access.
451- optional<unsigned > total_nof_ra_preambles;
451+ std:: optional<unsigned > total_nof_ra_preambles;
452452 // / Offset of lowest PRACH transmission occasion in frequency domain respective to PRB 0. To minimize interference
453453 // / with the PUCCH, the user should leave some guardband between the PUCCH CRBs and the PRACH PRBs.
454454 // / Possible values: {0,...,MAX_NOF_PRB - 1}.
455- optional<unsigned > prach_frequency_start;
455+ std:: optional<unsigned > prach_frequency_start;
456456 // / Max number of RA preamble transmissions performed before declaring a failure. Values {3, 4, 5, 6, 7, 8, 10, 20,
457457 // / 50, 100, 200}.
458458 uint8_t preamble_trans_max = 7 ;
@@ -479,7 +479,7 @@ struct du_high_unit_base_cell_config {
479479 // / Common subcarrier spacing for the entire resource grid. It must be supported by the band SS raster.
480480 subcarrier_spacing common_scs = subcarrier_spacing::kHz15 ;
481481 // / NR band.
482- optional<nr_band> band;
482+ std:: optional<nr_band> band;
483483 // / Channel bandwidth in MHz.
484484 bs_channel_bandwidth_fr1 channel_bw_mhz = bs_channel_bandwidth_fr1::MHz20;
485485 // / Number of antennas in downlink.
@@ -515,7 +515,7 @@ struct du_high_unit_base_cell_config {
515515 // / MAC Cell Gropup parameters.
516516 du_high_unit_mac_cell_group_config mcg_cfg;
517517 // / TDD slot configuration.
518- optional<du_high_unit_tdd_ul_dl_config> tdd_ul_dl_cfg;
518+ std:: optional<du_high_unit_tdd_ul_dl_config> tdd_ul_dl_cfg;
519519 // / Paging configuration.
520520 du_high_unit_paging_config paging_cfg;
521521 // / CSI configuration.
@@ -530,7 +530,7 @@ struct du_high_unit_test_mode_ue_config {
530530 // / \brief Delay, in slots, before the MAC test mode auto-generates the UCI/CRC indication to pass to the scheduler.
531531 // / This feature should be avoided if the OFH/UL PHY are operational, otherwise the auto-generated indications
532532 // / may interfere with the UL PHY HARQ handling.
533- optional<unsigned > auto_ack_indication_delay;
533+ std:: optional<unsigned > auto_ack_indication_delay;
534534 // / Whether PDSCH grants are automatically assigned to the test UE.
535535 bool pdsch_active = true ;
536536 // / Whether PUSCH grants are automatically assigned to the test UE.
@@ -729,7 +729,7 @@ struct du_high_unit_config {
729729 // / Configuration for testing purposes.
730730 du_high_unit_test_mode_config test_mode_cfg = {};
731731 // / NTN configuration.
732- optional<ntn_config> ntn_cfg;
732+ std:: optional<ntn_config> ntn_cfg;
733733 // / \brief Cell configuration.
734734 // /
735735 // / \note Add one cell by default.
0 commit comments