From d270518d69e157cda4ba578de521a20c9cfe1f00 Mon Sep 17 00:00:00 2001 From: Francisco Paisana Date: Tue, 10 Dec 2019 16:50:01 +0000 Subject: [PATCH] updated rrc to new srsasn1 version --- lib/include/srslte/asn1/asn1_utils.h | 746 +- lib/include/srslte/asn1/rrc_asn1.h | 5362 ++++----- lib/src/asn1/asn1_utils.cc | 954 +- lib/src/asn1/rrc_asn1.cc | 15475 ++++++++++++------------- lib/src/asn1/rrc_asn1_enum.cc | 103 +- lib/src/asn1/rrc_asn1_utils.cc | 6 +- lib/test/asn1/rrc_asn1_test.cc | 66 +- srsenb/src/enb_cfg_parser.cc | 6 +- srsenb/src/phy/phy.cc | 4 +- srsenb/src/stack/rrc/rrc.cc | 14 +- srsue/src/stack/rrc/rrc.cc | 16 +- 11 files changed, 11120 insertions(+), 11632 deletions(-) diff --git a/lib/include/srslte/asn1/asn1_utils.h b/lib/include/srslte/asn1/asn1_utils.h index 912579b52..be70f3f50 100644 --- a/lib/include/srslte/asn1/asn1_utils.h +++ b/lib/include/srslte/asn1/asn1_utils.h @@ -26,14 +26,24 @@ #include #include #include +#include +#include #include #include /* va_list, va_start, va_arg, va_end */ #include #include +#include namespace asn1 { -#define ASN_16K 16383 +#define ASN_16K 16384 +#define ASN_64K 65536 + +template +constexpr Integer ceil_frac(Integer n, Integer d) +{ + return (n + (d - 1)) / d; +} /************************ logging @@ -59,7 +69,7 @@ void log_error_code(SRSASN_CODE code, const char* filename, int line); #define HANDLE_CODE(ret) \ { \ - SRSASN_CODE macrocode = (ret); \ + SRSASN_CODE macrocode = ((ret)); \ if (macrocode != SRSASN_SUCCESS) { \ log_error_code(macrocode, __FILE__, __LINE__); \ return macrocode; \ @@ -129,7 +139,7 @@ public: using const_iterator = const T*; dyn_array() = default; - dyn_array(uint32_t new_size) : size_(new_size), cap_(new_size) { data_ = new T[size_]; } + explicit dyn_array(uint32_t new_size) : size_(new_size), cap_(new_size) { data_ = new T[size_]; } dyn_array(const dyn_array& other) { size_ = other.size_; @@ -243,6 +253,98 @@ private: uint32_t current_size; }; +/** + * This array does small buffer optimization. The array has a small stack (Nthres elements) to store elements. Once + * the number of elements exceeds this stack, the array allocs on the heap. + * @tparam T + * @tparam Nthres number of elements T that can be stored in the stack + */ +template +class ext_array +{ +public: + static const uint32_t small_buffer_size = Nthres; + ext_array() : size_(0), head(&small_buffer.data[0]) {} + explicit ext_array(uint32_t new_size) : ext_array() { resize(new_size); } + ext_array(const ext_array& other) : ext_array(other.size_) + { + std::copy(other.head, other.head + other.size_, head); + } + ext_array(ext_array&& other) noexcept + { + size_ = other.size(); + if (other.is_in_small_buffer()) { + head = &small_buffer.data[0]; + std::copy(other.data(), other.data() + other.size(), head); + } else { + head = other.head; + small_buffer.cap_ = other.small_buffer.cap_; + other.head = &other.small_buffer.data[0]; + other.size_ = 0; + } + } + ~ext_array() + { + if (not is_in_small_buffer()) { + delete[] head; + } + } + ext_array& operator=(const ext_array& other) + { + if (this != &other) { + resize(other.size()); + std::copy(other.data(), other.data() + other.size(), head); + } + return *this; + } + + uint32_t size() const { return size_; } + uint32_t capacity() const { return is_in_small_buffer() ? Nthres : small_buffer.cap_; } + T& operator[](uint32_t index) { return head[index]; } + const T& operator[](uint32_t index) const { return head[index]; } + T* data() { return &head[0]; } + const T* data() const { return &head[0]; } + T& back() { return head[size() - 1]; } + const T& back() const { return head[size() - 1]; } + bool operator==(const ext_array& other) const + { + return other.size() == size() and std::equal(other.data(), other.data() + other.size(), data()); + } + void push_back(const T& elem) + { + resize(size() + 1); + head[size() - 1] = elem; + } + void resize(uint32_t new_size) + { + if (new_size == size_) { + return; + } + if (capacity() >= new_size) { + size_ = new_size; + return; + } + T* old_data = head; + uint32_t newcap = new_size + 5; + head = new T[newcap]; + std::copy(&small_buffer.data[0], &small_buffer.data[size_], head); + size_ = new_size; + if (old_data != &small_buffer.data[0]) { + delete[] old_data; + } + small_buffer.cap_ = newcap; + } + bool is_in_small_buffer() const { return head == &small_buffer.data[0]; } + +private: + union { + T data[Nthres]; + uint32_t cap_; + } small_buffer; + uint32_t size_; + T* head; +}; + /********************* ext packing *********************/ @@ -250,6 +352,15 @@ private: SRSASN_CODE pack_unsupported_ext_flag(bit_ref& bref, bool ext); SRSASN_CODE unpack_unsupported_ext_flag(bool& ext, bit_ref& bref); +/************************ + asn1 null packing +************************/ + +struct asn1_null_t { + SRSASN_CODE pack(bit_ref& bref) const { return SRSASN_SUCCESS; } + SRSASN_CODE unpack(bit_ref& bref) const { return SRSASN_SUCCESS; } +}; + /************************ enum packing ************************/ @@ -337,66 +448,26 @@ public: }; /************************ - integer packing + PER encoding ************************/ -// Constrained Whole Number +/* X.691 - Section 10.5 - Constrained Whole Number */ template -SRSASN_CODE pack_unalign_integer(bit_ref& bref, IntType n, IntType lb, IntType ub); +SRSASN_CODE pack_constrained_whole_number(bit_ref& bref, IntType n, IntType lb, IntType ub, bool aligned); template -SRSASN_CODE unpack_unalign_integer(IntType& n, bit_ref& bref, IntType lb, IntType ub); -template -struct UnalignedIntegerPacker { - UnalignedIntegerPacker(IntType lb_, IntType ub_) : lb(lb_), ub(ub_) {} - const IntType lb; - const IntType ub; - SRSASN_CODE pack(bit_ref& bref, IntType n) const; - SRSASN_CODE unpack(IntType& n, bit_ref& bref) const; -}; +SRSASN_CODE unpack_constrained_whole_number(IntType& n, bit_ref& bref, IntType lb, IntType ub, bool aligned); -template -struct unaligned_integer { - IntType value; - unaligned_integer() = default; - unaligned_integer(IntType value_) : value(value_) {} - operator IntType() { return value; } - SRSASN_CODE pack(bit_ref& bref) const { return pack_unalign_integer(bref, value, lb, ub); } - SRSASN_CODE unpack(bit_ref& bref) { return unpack_unalign_integer(value, bref, lb, ub); } -}; - -template -SRSASN_CODE pack_align_integer(bit_ref& bref, IntType n, IntType lb, IntType ub); -template -SRSASN_CODE unpack_align_integer(IntType& intval, bit_ref& bref, IntType lb, IntType ub); -template -struct AlignedIntegerPacker { - AlignedIntegerPacker(IntType lb_, IntType ub_); - IntType lb; - IntType ub; - SRSASN_CODE pack(bit_ref& bref, IntType n); - SRSASN_CODE unpack(IntType& n, bit_ref& bref); -}; - -// Normally Small non-negative whole number +/* X.691 - Section 10.6 - Normally small non-negative whole Number */ template -SRSASN_CODE pack_norm_small_integer(bit_ref& bref, UintType n); +SRSASN_CODE pack_norm_small_non_neg_whole_number(bit_ref& bref, UintType n); template -SRSASN_CODE unpack_norm_small_integer(UintType& n, bit_ref& bref); +SRSASN_CODE unpack_norm_small_non_neg_whole_number(UintType& n, bit_ref& bref); -// Unconstrained Whole Number -// FIXME: Implement -inline SRSASN_CODE pack_unconstrained_integer(bit_ref& bref, int64_t n) -{ - // TODO - srsasn_log_print(LOG_LEVEL_ERROR, "Not implemented\n"); - return SRSASN_SUCCESS; -} -inline SRSASN_CODE unpack_unconstrained_integer(int64_t& n, bit_ref& bref) -{ - // TODO - srsasn_log_print(LOG_LEVEL_ERROR, "Not implemented\n"); - return SRSASN_SUCCESS; -} +/* X.691 - Section 10.8 - Unconstrained Whole Number */ +template +SRSASN_CODE pack_unconstrained_whole_number(bit_ref& bref, IntType n, bool aligned); +template +SRSASN_CODE unpack_unconstrained_whole_number(IntType& n, bit_ref& bref, bool aligned); /************************ length determinant @@ -404,13 +475,66 @@ inline SRSASN_CODE unpack_unconstrained_integer(int64_t& n, bit_ref& bref) // Pack as whole constrained number template -SRSASN_CODE pack_length(bit_ref& bref, IntType n, IntType lb, IntType ub); +SRSASN_CODE pack_length(bit_ref& bref, IntType n, IntType lb, IntType ub, bool aligned = false); template -SRSASN_CODE unpack_length(IntType& n, bit_ref& bref, IntType lb, IntType ub); +SRSASN_CODE unpack_length(IntType& n, bit_ref& bref, IntType lb, IntType ub, bool aligned = false); // Pack as a small non-negative whole number -SRSASN_CODE pack_length(bit_ref& ref, uint32_t val); -SRSASN_CODE unpack_length(uint32_t& val, bit_ref& ref); +SRSASN_CODE pack_length(bit_ref& ref, uint32_t val, bool aligned = false); +SRSASN_CODE unpack_length(uint32_t& val, bit_ref& ref, bool aligned = false); + +/************************ + Integer +************************/ + +template +SRSASN_CODE pack_integer(bit_ref& bref, + IntType n, + IntType lb = std::numeric_limits::min(), + IntType ub = std::numeric_limits::max(), + bool has_ext = false, + bool aligned = false); +template +SRSASN_CODE unpack_integer(IntType& n, + bit_ref& bref, + IntType lb = std::numeric_limits::min(), + IntType ub = std::numeric_limits::max(), + bool has_ext = false, + bool aligned = false); +// unconstrained case +template +SRSASN_CODE pack_unconstrained_integer(bit_ref& bref, IntType n, bool has_ext = false, bool aligned = false); +template +SRSASN_CODE unpack_unconstrained_integer(IntType& n, bit_ref& bref, bool has_ext = false, bool aligned = false); + +template +struct integer_packer { + integer_packer(IntType lb_, IntType ub_, bool has_ext_ = false, bool aligned_ = false); + SRSASN_CODE pack(bit_ref& bref, IntType n); + SRSASN_CODE unpack(IntType& n, bit_ref& bref); + IntType lb; + IntType ub; + bool has_ext; + bool aligned; +}; + +template ::min(), + IntType UB = std::numeric_limits::max(), + bool Ext = false, + bool Al = false> +class integer +{ +public: + static const IntType ub = UB, lb = LB; + static const bool has_ext = Ext, is_aligned = Al; + IntType value; + integer() = default; + integer(IntType value_) : value(value_) {} + operator IntType() { return value; } + SRSASN_CODE pack(bit_ref& bref) const { return pack_integer(bref, value, lb, ub, has_ext, is_aligned); } + SRSASN_CODE unpack(bit_ref& bref) { return unpack_integer(value, bref, lb, ub, has_ext, is_aligned); } +}; /************************ General Packer/Unpacker @@ -459,7 +583,7 @@ void string_to_octstring(uint8_t* ptr, const std::string& str); fixed_octstring ************************/ -template +template class fixed_octstring { public: @@ -469,9 +593,9 @@ public: uint8_t* data() { return &octets_[0]; } const uint8_t* data() const { return &octets_[0]; } - static uint32_t size() { return N; } - std::string to_string() const { return octstring_to_string(&octets_[0], N); } - fixed_octstring& from_string(const std::string& hexstr) + static uint32_t size() { return N; } + std::string to_string() const { return octstring_to_string(&octets_[0], N); } + fixed_octstring& from_string(const std::string& hexstr) { if (hexstr.size() != 2 * N) { srsasn_log_print(LOG_LEVEL_ERROR, "The provided hex string size is not valid (%d!=2*%d).\n", hexstr.size(), N); @@ -480,8 +604,8 @@ public: } return *this; } - uint64_t to_number() const { return octstring_to_number(&octets_[0], size()); } - fixed_octstring& from_number(uint64_t val) + uint64_t to_number() const { return octstring_to_number(&octets_[0], size()); } + fixed_octstring& from_number(uint64_t val) { number_to_octstring(&octets_[0], val, size()); return *this; @@ -494,24 +618,31 @@ private: std::array octets_; }; -template -SRSASN_CODE fixed_octstring::pack(bit_ref& bref) const +/** + * X.691 Section 16 - Encoding the octetstring type + * @tparam N - number of items + * @tparam ext - aligned variant + * @param bref + * @return + */ +template +SRSASN_CODE fixed_octstring::pack(bit_ref& bref) const { - // if(N > 2) { // X.691 Sec.16 - // bref.align_bytes_zero(); - // } + if (aligned and N > 2) { + bref.align_bytes_zero(); + } for (uint32_t i = 0; i < size(); ++i) { - bref.pack(octets_[i], 8); + HANDLE_CODE(bref.pack(octets_[i], 8)); } return SRSASN_SUCCESS; } -template -SRSASN_CODE fixed_octstring::unpack(bit_ref& bref) +template +SRSASN_CODE fixed_octstring::unpack(bit_ref& bref) { - // if(N > 2) { // X.691 Sec.16 - // bref.align_bytes_zero(); - // } + if (aligned and N > 2) { + bref.align_bytes_zero(); + } for (uint32_t i = 0; i < size(); ++i) { HANDLE_CODE(bref.unpack(octets_[i], 8)); } @@ -522,26 +653,29 @@ SRSASN_CODE fixed_octstring::unpack(bit_ref& bref) dyn_octstring ************************/ -class dyn_octstring +template +class unbounded_octstring { public: - dyn_octstring() = default; - dyn_octstring(uint32_t new_size) : octets_(new_size) {} + static const bool aligned = Al; + + unbounded_octstring() = default; + explicit unbounded_octstring(uint32_t new_size) : octets_(new_size) {} const uint8_t& operator[](uint32_t idx) const { return octets_[idx]; } uint8_t& operator[](uint32_t idx) { return octets_[idx]; } - bool operator==(const dyn_octstring& other) const { return octets_ == other.octets_; } + bool operator==(const unbounded_octstring& other) const { return octets_ == other.octets_; } void resize(uint32_t new_size) { octets_.resize(new_size); } uint32_t size() const { return octets_.size(); } uint8_t* data() { return &octets_[0]; } const uint8_t* data() const { return &octets_[0]; } - SRSASN_CODE pack(bit_ref& ie_ref) const; - SRSASN_CODE unpack(bit_ref& ie_ref); - std::string to_string() const; - dyn_octstring& from_string(const std::string& hexstr); - uint64_t to_number() const { return octstring_to_number(&octets_[0], size()); } - dyn_octstring& from_number(uint64_t val) + SRSASN_CODE pack(bit_ref& ie_ref) const; + SRSASN_CODE unpack(bit_ref& ie_ref); + std::string to_string() const; + unbounded_octstring& from_string(const std::string& hexstr); + uint64_t to_number() const { return octstring_to_number(&octets_[0], size()); } + unbounded_octstring& from_number(uint64_t val) { number_to_octstring(&octets_[0], val, size()); return *this; @@ -551,6 +685,8 @@ private: dyn_array octets_; }; +using dyn_octstring = unbounded_octstring; + /********************* common bitstring *********************/ @@ -563,16 +699,16 @@ inline bool bitstring_get(const uint8_t* ptr, uint32_t idx) { uint32_t byte_idx = idx / 8; uint32_t offset = idx % 8; - return (ptr[byte_idx] & (1 << offset)) > 0; + return (ptr[byte_idx] & (1u << offset)) > 0; } inline void bitstring_set(uint8_t* ptr, uint32_t idx, bool value) { uint32_t byte_idx = idx / 8; uint32_t offset = idx % 8; if (value) { - ptr[byte_idx] |= (1 << offset); + ptr[byte_idx] |= (1u << offset); } else { - ptr[byte_idx] &= ((uint16_t)(1 << 8) - 1) - (1 << offset); + ptr[byte_idx] &= ((uint16_t)(1u << 8) - 1) - (1 << offset); } } @@ -586,10 +722,13 @@ SRSASN_CODE pack_fixed_bitstring(bit_ref& bref, const uint8_t* buf, uint32_t nbi SRSASN_CODE unpack_fixed_bitstring(uint8_t* buf, bit_ref& bref, uint32_t nbits); SRSASN_CODE unpack_fixed_bitstring(uint8_t* buf, bool& ext, bit_ref& bref, uint32_t nbits); -template +template class fixed_bitstring { public: + using type_t = fixed_bitstring; + static const bool has_ext = Ext, is_aligned = Al; + fixed_bitstring() { memset(&octets_[0], 0, nof_octets()); } fixed_bitstring(const std::string& s) { @@ -601,18 +740,15 @@ public: for (uint32_t i = 0; i < N; ++i) this->set(N - i - 1, s[i] == '1'); } - bool get(uint32_t idx) const { return bitstring_get(&octets_[0], idx); } - void set(uint32_t idx, bool value) { bitstring_set(&octets_[0], idx, value); } - bool operator==(const fixed_bitstring& other) const { return octets_ == other.octets_; } - bool operator==(const char* other_str) const - { - return strlen(other_str) == N and (*this) == fixed_bitstring(other_str); - } - uint32_t nof_octets() const { return (uint32_t)ceilf(N / 8.0f); } - uint32_t length() const { return N; } - std::string to_string() const { return bitstring_to_string(&octets_[0], length()); } - uint64_t to_number() const { return bitstring_to_number(&octets_[0], length()); } - fixed_bitstring& from_number(uint64_t val) + bool get(uint32_t idx) const { return bitstring_get(&octets_[0], idx); } + void set(uint32_t idx, bool value) { bitstring_set(&octets_[0], idx, value); } + bool operator==(const type_t& other) const { return octets_ == other.octets_; } + bool operator==(const char* other_str) const { return strlen(other_str) == N and (*this) == type_t(other_str); } + uint32_t nof_octets() const { return (uint32_t)ceilf(N / 8.0f); } + uint32_t length() const { return N; } + std::string to_string() const { return bitstring_to_string(&octets_[0], length()); } + uint64_t to_number() const { return bitstring_to_number(&octets_[0], length()); } + type_t& from_number(uint64_t val) { number_to_bitstring(&octets_[0], val, length()); return *this; @@ -621,53 +757,193 @@ public: const uint8_t* data() const { return &octets_[0]; } SRSASN_CODE pack(bit_ref& bref) const { return pack_fixed_bitstring(bref, data(), N); } - SRSASN_CODE pack(bit_ref& bref, bool ext) const { return pack_fixed_bitstring(bref, data(), N, ext); } SRSASN_CODE unpack(bit_ref& bref) { return unpack_fixed_bitstring(data(), bref, N); } - SRSASN_CODE unpack(bit_ref& bref, bool& ext) { return unpack_fixed_bitstring(data(), ext, bref, N); } private: std::array octets_; // ceil(N/8.0) }; /********************* - dyn_bitstring + bounded_bitstring *********************/ -class dyn_bitstring +namespace bitstring_utils { +SRSASN_CODE +pack(bit_ref& bref, const uint8_t* data, uint32_t size, uint32_t lb, uint32_t ub, bool has_ext, bool is_aligned); +SRSASN_CODE unpack_length_prefix(uint32_t& len, bit_ref& bref, uint32_t lb, uint32_t ub, bool has_ext, bool is_aligned); +SRSASN_CODE unpack_bitfield(uint8_t* buf, bit_ref& bref, uint32_t n, uint32_t lb, uint32_t ub, bool is_aligned); +SRSASN_CODE +unpack_fixed_bitstring(uint8_t* buf, bit_ref& bref, uint32_t nof_bits, bool has_ext = false, bool is_aligned = false); +} // namespace bitstring_utils + +template +class base_bitstring { +protected: + using derived_t = BitStringType; + public: - dyn_bitstring() : n_bits(0) {} - dyn_bitstring(uint32_t n_bits_); - dyn_bitstring(const char* s); + bool get(uint32_t idx) const { return bitstring_get(derived()->data(), idx); } + void set(uint32_t idx, bool value) { bitstring_set(derived()->data(), idx, value); } + uint32_t nof_octets() const { return ceil_frac(derived()->length(), 8u); } - bool operator==(const dyn_bitstring& other) const { return octets_ == other.octets_; } - bool operator==(const char* other_str) const; - bool get(uint32_t idx) const { return bitstring_get(&octets_[0], idx); } - void set(uint32_t idx, bool value) { bitstring_set(&octets_[0], idx, value); } + std::string to_string() const { return bitstring_to_string(derived()->data(), derived()->length()); } + derived_t& from_string(const std::string& s) + { + if (s.size() < derived_t::lb or s.size() > derived_t::ub) { + srsasn_log_print(LOG_LEVEL_ERROR, + "The provided string size=%d is not withing the bounds [%d, %d]\n", + s.size(), + derived_t::lb, + derived_t::ub); + } else { + derived()->resize(s.size()); + for (uint32_t i = 0; i < s.size(); ++i) { + set(s.size() - i - 1, s[i] == '1'); + } + } + return *derived(); + } + uint64_t to_number() const { return bitstring_to_number(derived()->data(), derived()->length()); } + derived_t& from_number(uint64_t val) + { + uint32_t nof_bits = (uint32_t)ceilf(log2(val)); + if (nof_bits > derived()->length()) { + derived()->resize(nof_bits); + } + number_to_bitstring(derived()->data(), val, derived()->length()); + return *derived(); + } - void resize(uint32_t new_size); - uint32_t length() const { return n_bits; } - uint32_t nof_octets() const { return (uint32_t)ceilf(length() / 8.0f); } - std::string to_string() const { return bitstring_to_string(&octets_[0], length()); } - uint64_t to_number() const { return bitstring_to_number(&octets_[0], length()); } - dyn_bitstring& from_number(uint64_t val) + bool operator==(const base_bitstring& other) const { - number_to_bitstring(&octets_[0], val, length()); - return *this; + return derived()->length() == other.derived()->length() and + std::equal(derived()->data(), derived()->data() + derived()->nof_octets(), other.derived()->data()); + } + bool operator==(const char* other_str) const + { + return strlen(other_str) == derived()->length() and (*this) == derived_t{}.from_string(other_str); + } + + SRSASN_CODE pack(bit_ref& bref) const + { + return bitstring_utils::pack(bref, + derived()->data(), + derived()->length(), + derived_t::lb, + derived_t::ub, + derived_t::has_ext, + derived_t::is_aligned); + } + SRSASN_CODE unpack(bit_ref& bref) + { + // X.691, subclause 15.11 + uint32_t nbits; + HANDLE_CODE(bitstring_utils::unpack_length_prefix( + nbits, bref, derived_t::lb, derived_t::ub, derived_t::has_ext, derived_t::is_aligned)); + derived()->resize(nbits); + return bitstring_utils::unpack_bitfield( + derived()->data(), bref, nbits, derived_t::lb, derived_t::ub, derived_t::is_aligned); } + +private: + derived_t* derived() { return static_cast(this); } + const derived_t* derived() const { return static_cast(this); } +}; + +template +class bounded_bitstring : public base_bitstring > +{ + using base_t = base_bitstring >; + +public: + static const uint32_t lb = LB, ub = UB; + static const bool has_ext = ext, is_aligned = aligned; + + explicit bounded_bitstring(uint32_t siz_ = 0) { resize(siz_); } + const uint8_t* data() const { return &octets_[0]; } uint8_t* data() { return &octets_[0]; } + uint32_t length() const { return nof_bits; } + void resize(uint32_t new_size) + { + nof_bits = new_size; + octets_.resize(this->nof_octets()); + memset(data(), 0, this->nof_octets()); + } + +private: + bounded_array octets_; + uint32_t nof_bits = 0; +}; + +/********************* + dyn_bitstring +*********************/ + +template +class unbounded_bitstring : public base_bitstring > +{ + using base_t = base_bitstring >; + +public: + static const uint32_t lb = 0, ub = std::numeric_limits::max(); + static const bool has_ext = Ext, is_aligned = Al; - SRSASN_CODE pack(bit_ref& bref, uint32_t lb = 0, uint32_t ub = 0) const; - SRSASN_CODE pack(bit_ref& bref, bool ext, uint32_t lb = 0, uint32_t ub = 0) const; - SRSASN_CODE unpack(bit_ref& bref, uint32_t lb = 0, uint32_t ub = 0); - SRSASN_CODE unpack(bit_ref& bref, bool& ext, uint32_t lb = 0, uint32_t ub = 0); + explicit unbounded_bitstring(uint32_t siz_ = 0) { resize(siz_); } + + const uint8_t* data() const { return &octets_[0]; } + uint8_t* data() { return &octets_[0]; } + uint32_t length() const { return n_bits; } + void resize(uint32_t new_size) + { + n_bits = new_size; + octets_.resize(this->nof_octets()); + memset(data(), 0, this->nof_octets()); // resize always resets content + } private: dyn_array octets_; uint32_t n_bits; }; +using dyn_bitstring = unbounded_bitstring; + +// class dyn_bitstring +//{ +// public: +// dyn_bitstring() = default; +// dyn_bitstring(uint32_t n_bits_); +// dyn_bitstring(const char* s); +// +// bool operator==(const dyn_bitstring& other) const { return octets_ == other.octets_; } +// bool operator==(const char* other_str) const; +// bool get(uint32_t idx) const { return bitstring_get(&octets_[0], idx); } +// void set(uint32_t idx, bool value) { bitstring_set(&octets_[0], idx, value); } +// +// void resize(uint32_t new_size); +// uint32_t length() const { return n_bits; } +// uint32_t nof_octets() const { return (uint32_t)ceilf(length() / 8.0f); } +// std::string to_string() const { return bitstring_to_string(&octets_[0], length()); } +// uint64_t to_number() const { return bitstring_to_number(&octets_[0], length()); } +// dyn_bitstring& from_number(uint64_t val) +// { +// number_to_bitstring(&octets_[0], val, length()); +// return *this; +// } +// const uint8_t* data() const { return &octets_[0]; } +// uint8_t* data() { return &octets_[0]; } +// +// SRSASN_CODE pack(bit_ref& bref, uint32_t lb = 0, uint32_t ub = 0) const; +// SRSASN_CODE pack(bit_ref& bref, bool ext, uint32_t lb = 0, uint32_t ub = 0) const; +// SRSASN_CODE unpack(bit_ref& bref, uint32_t lb = 0, uint32_t ub = 0); +// SRSASN_CODE unpack(bit_ref& bref, bool& ext, uint32_t lb = 0, uint32_t ub = 0); +// +// private: +// dyn_array octets_; +// uint32_t n_bits = 0; +//}; + /********************* fixed sequence of *********************/ @@ -729,9 +1005,14 @@ struct FixedSeqOfPacker { *********************/ template -SRSASN_CODE pack_dyn_seq_of(bit_ref& bref, const ArrayType& seqof, uint32_t lb, uint32_t ub, ItemPacker packer) +SRSASN_CODE pack_dyn_seq_of(bit_ref& bref, + const ArrayType& seqof, + uint32_t lb, + uint32_t ub, + ItemPacker packer, + bool aligned = false) { - HANDLE_CODE(pack_length(bref, seqof.size(), lb, ub)); + HANDLE_CODE(pack_length(bref, seqof.size(), lb, ub, aligned)); for (uint32_t i = 0; i < seqof.size(); ++i) { HANDLE_CODE(packer.pack(bref, seqof[i])); } @@ -739,9 +1020,9 @@ SRSASN_CODE pack_dyn_seq_of(bit_ref& bref, const ArrayType& seqof, uint32_t lb, } template -SRSASN_CODE pack_dyn_seq_of(bit_ref& bref, const ArrayType& seqof, uint32_t lb, uint32_t ub) +SRSASN_CODE pack_dyn_seq_of(bit_ref& bref, const ArrayType& seqof, uint32_t lb, uint32_t ub, bool aligned = false) { - HANDLE_CODE(pack_length(bref, seqof.size(), lb, ub)); + HANDLE_CODE(pack_length(bref, seqof.size(), lb, ub, aligned)); for (uint32_t i = 0; i < seqof.size(); ++i) { HANDLE_CODE(seqof[i].pack(bref)); } @@ -749,10 +1030,15 @@ SRSASN_CODE pack_dyn_seq_of(bit_ref& bref, const ArrayType& seqof, uint32_t lb, } template -SRSASN_CODE unpack_dyn_seq_of(ArrayType& seqof, bit_ref& bref, uint32_t lb, uint32_t ub, ItemUnpacker unpacker) +SRSASN_CODE unpack_dyn_seq_of(ArrayType& seqof, + bit_ref& bref, + uint32_t lb, + uint32_t ub, + ItemUnpacker unpacker, + bool aligned = false) { uint32_t nof_items; - HANDLE_CODE(unpack_length(nof_items, bref, lb, ub)); + HANDLE_CODE(unpack_length(nof_items, bref, lb, ub, aligned)); seqof.resize(nof_items); for (uint32_t i = 0; i < nof_items; ++i) { HANDLE_CODE(unpacker.unpack(seqof[i], bref)); @@ -761,10 +1047,10 @@ SRSASN_CODE unpack_dyn_seq_of(ArrayType& seqof, bit_ref& bref, uint32_t lb, uint } template -SRSASN_CODE unpack_dyn_seq_of(ArrayType& seqof, bit_ref& bref, uint32_t lb, uint32_t ub) +SRSASN_CODE unpack_dyn_seq_of(ArrayType& seqof, bit_ref& bref, uint32_t lb, uint32_t ub, bool aligned = false) { uint32_t nof_items; - HANDLE_CODE(unpack_length(nof_items, bref, lb, ub)); + HANDLE_CODE(unpack_length(nof_items, bref, lb, ub, aligned)); seqof.resize(nof_items); for (uint32_t i = 0; i < nof_items; ++i) { HANDLE_CODE(seqof[i].unpack(bref)); @@ -790,87 +1076,50 @@ struct SeqOfPacker { uint32_t ub; }; -template +template struct dyn_seq_of : public dyn_array { - SeqOfPacker packer; - dyn_seq_of() : packer(lb, ub, Packer()) {} - dyn_seq_of(const dyn_array& other) : dyn_array(other), packer(lb, ub, Packer()) {} - SRSASN_CODE pack(bit_ref& bref) const { return packer.pack(bref, *this); } - SRSASN_CODE unpack(bit_ref& bref) { return packer.unpack(*this, bref); } + dyn_seq_of() = default; + dyn_seq_of(const dyn_array& other) : dyn_array(other) {} + SRSASN_CODE pack(bit_ref& bref) const { return pack_dyn_seq_of(bref, *this, lb, ub, aligned); } + SRSASN_CODE unpack(bit_ref& bref) { return unpack_dyn_seq_of(*this, bref, lb, ub, aligned); } }; /********************* - choice utils + printable string *********************/ -union alignment_t { - char c; - float f; - uint32_t i; - uint64_t i2; - double d; - long double d2; - uint32_t* ptr; -}; -#define MAX2(a, b) ((a) > (b)) ? (a) : (b) -#define MAX4(a, b, c, d) MAX2((MAX2(a, b)), MAX2(c, d)) -#define MAX8(a, b, c, d, e, f, g, h) MAX2((MAX4(a, b, c, d)), (MAX4(e, f, g, h))) -#define MAX12(a, b, c, d, e, f, g, h, i, j, k, l) MAX2((MAX8(a, b, c, d, e, f, g, h)), (MAX4(i, j, k, l))) -#define MAX16(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) \ - MAX2((MAX8(a, b, c, d, e, f, g, h)), (MAX8(i, j, k, l, m, n, o, p))) -#define MAX32( \ - a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, a1, b1, c1, d1, e1, f1, g1, h1, i1, j1, k1, l1, m1, n1, o1, p1) \ - MAX2((MAX16(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p)), \ - (MAX16(a1, b1, c1, d1, e1, f1, g1, h1, i1, j1, k1, l1, m1, n1, o1, p1))) - -template -class choice_buffer_t +/* X.691 - Section 27 - Character Restricted String */ +namespace asn_string_utils { +SRSASN_CODE +pack(bit_ref& bref, const std::string& s, size_t lb, size_t ub, size_t alb, size_t aub, bool ext, bool aligned); +SRSASN_CODE unpack(std::string& s, bit_ref& bref, size_t lb, size_t ub, size_t alb, size_t aub, bool ext, bool aligned); +} // namespace asn_string_utils + +template ::max(), + bool ext = false, + bool aligned = false> +class asn_string { public: - struct __attribute__((__may_alias__)) bytes { - uint8_t buf_[MAX2(SIZE, 8)]; - uint8_t* data() { return &buf_[0]; } - const uint8_t* data() const { return &buf_[0]; } - }; - - template - T& get() - { - return *((T*)buffer.buf_.data()); - } - template - const T& get() const - { - return *((T*)buffer.buf_.data()); - } - template - void destroy() - { - ((T*)buffer.buf_.data())->~T(); - } - template - void init() - { - new (buffer.buf_.data()) T(); - } - template - void init(const T& other) - { - new (buffer.buf_.data()) T(other); - } - template - void set(const T& other) - { - get() = other; - } + SRSASN_CODE pack(bit_ref& bref) const { return asn_string_utils::pack(bref, str, LB, UB, ALB, AUB, ext, aligned); } + SRSASN_CODE unpack(bit_ref& bref) { return asn_string_utils::unpack(str, bref, LB, UB, ALB, AUB, ext, aligned); } + char& operator[](std::size_t idx) { return str[idx]; } + const char& operator[](std::size_t idx) const { return str[idx]; } + void resize(std::size_t newsize) { str.resize(newsize); } + std::size_t size() const { return str.size(); } + std::string to_string() const { return str; } + void from_string(std::string s) { str = std::move(s); } private: - union { - alignment_t a_; - bytes buf_; - } buffer; + std::string str; }; +template ::max(), bool ext = false, bool aligned = false> +using printable_string = asn_string<32, 122, ALB, AUB, ext, aligned>; + /********************* copy_ptr *********************/ @@ -935,6 +1184,80 @@ copy_ptr make_copy_ptr(const T& t) return copy_ptr(new T(t)); } +/********************* + choice utils +*********************/ + +union alignment_t { + char c; + float f; + uint32_t i; + uint64_t i2; + double d; + long double d2; + uint32_t* ptr; +}; + +template +struct static_max; + +template +struct static_max { + static const std::size_t value = arg; +}; + +template +struct static_max { + static const std::size_t value = + arg1 >= arg2 ? static_max::value : static_max::value; +}; + +template +struct choice_buffer_base_t { + static const std::size_t data_size = Size; + static const std::size_t data_align = Align; + using buffer_t = typename std::aligned_storage::type; + buffer_t buffer; + + template + T& get() + { + return *(reinterpret_cast(&buffer)); + } + template + const T& get() const + { + return *(reinterpret_cast(&buffer)); + } + template + void destroy() + { + get().~T(); + } + template + void init() + { + new (&buffer) T(); + } + template + void init(const T& other) + { + new (&buffer) T(other); + } + template + void set(const T& other) + { + get() = other; + } +}; + +template +struct choice_buffer_t : public choice_buffer_base_t::value, + static_max::value> { +}; + +using pod_choice_buffer_t = choice_buffer_t<>; + /********************* ext group *********************/ @@ -946,7 +1269,7 @@ public: SRSASN_CODE pack(bit_ref& bref) const; private: - bounded_array groups; + ext_array groups; }; class ext_groups_unpacker_guard @@ -960,10 +1283,10 @@ public: SRSASN_CODE unpack(bit_ref& bref); private: - bounded_array groups; - const uint32_t nof_supported_groups; - uint32_t nof_unpacked_groups = 0; - bit_ref* bref_tracker = nullptr; + ext_array groups; + const uint32_t nof_supported_groups; + uint32_t nof_unpacked_groups = 0; + bit_ref* bref_tracker = nullptr; }; /********************* @@ -973,7 +1296,7 @@ private: class varlength_field_pack_guard { public: - varlength_field_pack_guard(bit_ref& bref); + explicit varlength_field_pack_guard(bit_ref& bref, bool align_ = false); ~varlength_field_pack_guard(); private: @@ -981,18 +1304,19 @@ private: // bit_ref bref0; bit_ref* bref_tracker; uint8_t buffer[1024]; + bool align; }; class varlength_field_unpack_guard { public: - varlength_field_unpack_guard(bit_ref& bref); + explicit varlength_field_unpack_guard(bit_ref& bref, bool align = false); ~varlength_field_unpack_guard(); private: bit_ref bref0; - bit_ref* bref_tracker; - uint32_t len; + bit_ref* bref_tracker = nullptr; + uint32_t len = 0; }; /******************* diff --git a/lib/include/srslte/asn1/rrc_asn1.h b/lib/include/srslte/asn1/rrc_asn1.h index b57ef799b..c61cfa29e 100644 --- a/lib/include/srslte/asn1/rrc_asn1.h +++ b/lib/include/srslte/asn1/rrc_asn1.h @@ -214,7 +214,7 @@ ItemType convert_enum_idx(ItemType* array, uint32_t nof_types, uint32_t enum_val #define ASN1_RRC_MAX_PSSCH_TX_CFG_R14 16 #define ASN1_RRC_MAX_QUANT_SETS_NR_R15 2 #define ASN1_RRC_MAX_QCI_R13 6 -#define ASN1_RRC_MAX_RAT_CAPABILITIES 8 +#define ASN1_RRC_MAX_RAT_CAP 8 #define ASN1_RRC_MAX_RE_MAP_QCL_R11 4 #define ASN1_RRC_MAX_REPORT_CFG_ID 32 #define ASN1_RRC_MAX_RESERV_PERIOD_R14 16 @@ -358,7 +358,6 @@ typedef mib_s bcch_bch_msg_type_s; // BCCH-BCH-Message ::= SEQUENCE struct bcch_bch_msg_s { - // member variables bcch_bch_msg_type_s msg; // sequence methods @@ -395,7 +394,6 @@ typedef mib_mbms_r14_s bcch_bch_msg_type_mbms_r14_s; // BCCH-BCH-Message-MBMS ::= SEQUENCE struct bcch_bch_msg_mbms_s { - // member variables bcch_bch_msg_type_mbms_r14_s msg; // sequence methods @@ -424,11 +422,11 @@ struct gnss_id_r15_s { void to_json(json_writer& j) const; }; -// MCC ::= SEQUENCE (SIZE (3)) OF INTEGER +// MCC ::= SEQUENCE (SIZE (3)) OF INTEGER (0..9) using mcc_l = std::array; -// MNC ::= SEQUENCE (SIZE (2..3)) OF INTEGER -typedef bounded_array mnc_l; +// MNC ::= SEQUENCE (SIZE (2..3)) OF INTEGER (0..9) +using mnc_l = bounded_array; // SBAS-ID-r15 ::= SEQUENCE struct sbas_id_r15_s { @@ -452,7 +450,6 @@ struct sbas_id_r15_s { // PLMN-Identity ::= SEQUENCE struct plmn_id_s { - // member variables bool mcc_present = false; mcc_l mcc; mnc_l mnc; @@ -571,8 +568,8 @@ struct plmn_id_info_r15_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -600,8 +597,8 @@ struct plmn_id_info_r15_s { void to_json(json_writer& j) const; }; -// PosSIB-MappingInfo-r15 ::= SEQUENCE (SIZE (1..maxSIB)) OF PosSIB-Type-r15 -typedef dyn_array pos_sib_map_info_r15_l; +// PosSIB-MappingInfo-r15 ::= SEQUENCE (SIZE (1..32)) OF PosSIB-Type-r15 +using pos_sib_map_info_r15_l = dyn_array; // CellIdentity-5GC-r15 ::= CHOICE struct cell_id_minus5_gc_r15_c { @@ -655,8 +652,8 @@ struct cell_id_minus5_gc_r15_c { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -679,8 +676,8 @@ struct plmn_id_info_v1530_s { void to_json(json_writer& j) const; }; -// PLMN-IdentityList-r15 ::= SEQUENCE (SIZE (1..maxPLMN-r11)) OF PLMN-IdentityInfo-r15 -typedef dyn_array plmn_id_list_r15_l; +// PLMN-IdentityList-r15 ::= SEQUENCE (SIZE (1..6)) OF PLMN-IdentityInfo-r15 +using plmn_id_list_r15_l = dyn_array; // PosSchedulingInfo-r15 ::= SEQUENCE struct pos_sched_info_r15_s { @@ -705,10 +702,9 @@ struct pos_sched_info_r15_s { // CellAccessRelatedInfo-5GC-r15 ::= SEQUENCE struct cell_access_related_info_minus5_gc_r15_s { - // member variables bool ran_area_code_r15_present = false; plmn_id_list_r15_l plmn_id_list_r15; - uint8_t ran_area_code_r15 = 0; + uint16_t ran_area_code_r15 = 0; fixed_bitstring<24> tac_minus5_gc_r15; cell_id_minus5_gc_r15_c cell_id_minus5_gc_r15; @@ -740,7 +736,6 @@ struct cell_sel_info_ce_v1530_s { // MCS-PSSCH-Range-r15 ::= SEQUENCE struct mcs_pssch_range_r15_s { - // member variables uint8_t min_mcs_pssch_r15 = 0; uint8_t max_mcs_pssch_r15 = 0; @@ -769,14 +764,14 @@ struct plmn_id_info_s { void to_json(json_writer& j) const; }; -// PLMN-IdentityList-v1530 ::= SEQUENCE (SIZE (1..maxPLMN-r11)) OF PLMN-IdentityInfo-v1530 -typedef dyn_array plmn_id_list_v1530_l; +// PLMN-IdentityList-v1530 ::= SEQUENCE (SIZE (1..6)) OF PLMN-IdentityInfo-v1530 +using plmn_id_list_v1530_l = dyn_array; -// PosSchedulingInfoList-r15 ::= SEQUENCE (SIZE (1..maxSI-Message)) OF PosSchedulingInfo-r15 -typedef dyn_array pos_sched_info_list_r15_l; +// PosSchedulingInfoList-r15 ::= SEQUENCE (SIZE (1..32)) OF PosSchedulingInfo-r15 +using pos_sched_info_list_r15_l = dyn_array; -// SL-PriorityList-r13 ::= SEQUENCE (SIZE (1..maxSL-Prio-r13)) OF INTEGER -typedef bounded_array sl_prio_list_r13_l; +// SL-PriorityList-r13 ::= SEQUENCE (SIZE (1..8)) OF INTEGER (1..8) +using sl_prio_list_r13_l = bounded_array; // SL-TxPower-r14 ::= CHOICE struct sl_tx_pwr_r14_c { @@ -829,12 +824,11 @@ struct alpha_r12_opts { }; typedef enumerated alpha_r12_e; -// PLMN-IdentityList ::= SEQUENCE (SIZE (1..maxPLMN-r11)) OF PLMN-IdentityInfo -typedef dyn_array plmn_id_list_l; +// PLMN-IdentityList ::= SEQUENCE (SIZE (1..6)) OF PLMN-IdentityInfo +using plmn_id_list_l = dyn_array; // SL-MinT2Value-r15 ::= SEQUENCE struct sl_min_t2_value_r15_s { - // member variables sl_prio_list_r13_l prio_list_r15; uint8_t min_t2_value_r15 = 10; @@ -846,7 +840,7 @@ struct sl_min_t2_value_r15_s { // SL-PPPP-TxConfigIndex-r14 ::= SEQUENCE struct sl_pppp_tx_cfg_idx_r14_s { - typedef bounded_array tx_cfg_idx_list_r14_l_; + using tx_cfg_idx_list_r14_l_ = bounded_array; // member variables uint8_t prio_thres_r14 = 1; @@ -862,7 +856,7 @@ struct sl_pppp_tx_cfg_idx_r14_s { // SL-PPPP-TxConfigIndex-v1530 ::= SEQUENCE struct sl_pppp_tx_cfg_idx_v1530_s { - typedef dyn_array mcs_pssch_range_list_r15_l_; + using mcs_pssch_range_list_r15_l_ = dyn_array; // member variables bool mcs_pssch_range_list_r15_present = false; @@ -902,7 +896,6 @@ struct sl_pssch_tx_params_r14_s { // SL-PSSCH-TxParameters-v1530 ::= SEQUENCE struct sl_pssch_tx_params_v1530_s { - // member variables uint8_t min_mcs_pssch_r15 = 0; uint8_t max_mcs_pssch_r15 = 0; @@ -1015,8 +1008,8 @@ struct sib_type1_v1530_ies_s { std::string to_string() const; }; - typedef enumerated cell_barred_minus5_gc_crs_r15_e_; - typedef dyn_array cell_access_related_info_list_minus5_gc_r15_l_; + typedef enumerated cell_barred_minus5_gc_crs_r15_e_; + using cell_access_related_info_list_minus5_gc_r15_l_ = dyn_array; // member variables cell_barred_minus5_gc_r15_e_ cell_barred_minus5_gc_r15; @@ -1032,7 +1025,7 @@ struct sib_type1_v1530_ies_s { bool pos_sched_info_list_r15_present = false; bool cell_access_related_info_minus5_gc_r15_present = false; bool ims_emergency_support5_gc_r15_present = false; - bool e_call_over_ims_support5_gc_r15_present = false; + bool ecall_over_ims_support5_gc_r15_present = false; bool non_crit_ext_present = false; cell_sel_info_ce_v1530_s cell_sel_info_ce_v1530; crs_intf_mitig_cfg_r15_c_ crs_intf_mitig_cfg_r15; @@ -1057,7 +1050,6 @@ struct tdd_cfg_v1450_s { // CellAccessRelatedInfo-r14 ::= SEQUENCE struct cell_access_related_info_r14_s { - // member variables plmn_id_list_l plmn_id_list_r14; fixed_bitstring<16> tac_r14; fixed_bitstring<28> cell_id_r14; @@ -1070,7 +1062,6 @@ struct cell_access_related_info_r14_s { // CellSelectionInfoCE1-v1360 ::= SEQUENCE struct cell_sel_info_ce1_v1360_s { - // member variables int8_t delta_rx_lev_min_ce1_v1360 = -8; // sequence methods @@ -1081,7 +1072,6 @@ struct cell_sel_info_ce1_v1360_s { // NS-PmaxValue-v10l0 ::= SEQUENCE struct ns_pmax_value_v10l0_s { - // member variables bool add_spec_emission_v10l0_present = false; uint16_t add_spec_emission_v10l0 = 33; @@ -1092,10 +1082,10 @@ struct ns_pmax_value_v10l0_s { }; // SL-CBR-PPPP-TxConfigList-r14 ::= SEQUENCE (SIZE (1..8)) OF SL-PPPP-TxConfigIndex-r14 -typedef dyn_array sl_cbr_pppp_tx_cfg_list_r14_l; +using sl_cbr_pppp_tx_cfg_list_r14_l = dyn_array; // SL-CBR-PPPP-TxConfigList-v1530 ::= SEQUENCE (SIZE (1..8)) OF SL-PPPP-TxConfigIndex-v1530 -typedef dyn_array sl_cbr_pppp_tx_cfg_list_v1530_l; +using sl_cbr_pppp_tx_cfg_list_v1530_l = dyn_array; // SL-CP-Len-r12 ::= ENUMERATED struct sl_cp_len_r12_opts { @@ -1105,8 +1095,8 @@ struct sl_cp_len_r12_opts { }; typedef enumerated sl_cp_len_r12_e; -// SL-MinT2ValueList-r15 ::= SEQUENCE (SIZE (1..maxSL-Prio-r13)) OF SL-MinT2Value-r15 -typedef dyn_array sl_min_t2_value_list_r15_l; +// SL-MinT2ValueList-r15 ::= SEQUENCE (SIZE (1..8)) OF SL-MinT2Value-r15 +using sl_min_t2_value_list_r15_l = dyn_array; // SL-OffsetIndicator-r12 ::= CHOICE struct sl_offset_ind_r12_c { @@ -1160,15 +1150,14 @@ struct sl_offset_ind_r12_c { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; // SL-P2X-ResourceSelectionConfig-r14 ::= SEQUENCE struct sl_p2_x_res_sel_cfg_r14_s { - // member variables bool partial_sensing_r14_present = false; bool random_sel_r14_present = false; @@ -1207,13 +1196,11 @@ struct sl_pssch_tx_cfg_r14_s { void to_json(json_writer& j) const; }; -// SL-RestrictResourceReservationPeriodList-r14 ::= SEQUENCE (SIZE (1..maxReservationPeriod-r14)) OF -// SL-RestrictResourceReservationPeriod-r14 -typedef bounded_array sl_restrict_res_reserv_period_list_r14_l; +// SL-RestrictResourceReservationPeriodList-r14 ::= SEQUENCE (SIZE (1..16)) OF SL-RestrictResourceReservationPeriod-r14 +using sl_restrict_res_reserv_period_list_r14_l = bounded_array; // SL-SyncAllowed-r14 ::= SEQUENCE struct sl_sync_allowed_r14_s { - // member variables bool gnss_sync_r14_present = false; bool enb_sync_r14_present = false; bool ue_sync_r14_present = false; @@ -1226,7 +1213,6 @@ struct sl_sync_allowed_r14_s { // SL-TxParameters-r12 ::= SEQUENCE struct sl_tx_params_r12_s { - // member variables alpha_r12_e alpha_r12; int8_t p0_r12 = -126; @@ -1365,8 +1351,8 @@ struct sf_bitmap_sl_r12_c { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -1515,15 +1501,14 @@ struct sf_bitmap_sl_r14_c { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; // SystemInformationBlockType1-v1450-IEs ::= SEQUENCE struct sib_type1_v1450_ies_s { - // member variables bool tdd_cfg_v1450_present = false; bool non_crit_ext_present = false; tdd_cfg_v1450_s tdd_cfg_v1450; @@ -1619,7 +1604,6 @@ typedef enumerated bandclass_cdma2000_e; // InterFreqCarrierFreqInfo-v1360 ::= SEQUENCE struct inter_freq_carrier_freq_info_v1360_s { - // member variables bool cell_sel_info_ce1_v1360_present = false; cell_sel_info_ce1_v1360_s cell_sel_info_ce1_v1360; @@ -1629,12 +1613,11 @@ struct inter_freq_carrier_freq_info_v1360_s { void to_json(json_writer& j) const; }; -// NS-PmaxList-v10l0 ::= SEQUENCE (SIZE (1..maxNS-Pmax-r10)) OF NS-PmaxValue-v10l0 -typedef dyn_array ns_pmax_list_v10l0_l; +// NS-PmaxList-v10l0 ::= SEQUENCE (SIZE (1..8)) OF NS-PmaxValue-v10l0 +using ns_pmax_list_v10l0_l = dyn_array; // NS-PmaxValue-r10 ::= SEQUENCE struct ns_pmax_value_r10_s { - // member variables bool add_pmax_r10_present = false; int8_t add_pmax_r10 = -30; uint8_t add_spec_emission = 1; @@ -1645,8 +1628,8 @@ struct ns_pmax_value_r10_s { void to_json(json_writer& j) const; }; -// PhysCellIdList-r13 ::= SEQUENCE (SIZE (1.. maxSL-DiscCells-r13)) OF INTEGER -typedef bounded_array pci_list_r13_l; +// PhysCellIdList-r13 ::= SEQUENCE (SIZE (1..16)) OF INTEGER (0..503) +using pci_list_r13_l = bounded_array; // SL-CommResourcePoolV2X-r14 ::= SEQUENCE struct sl_comm_res_pool_v2x_r14_s { @@ -1701,7 +1684,6 @@ struct sl_comm_res_pool_v2x_r14_s { }; typedef enumerated num_subch_r14_e_; struct rx_params_ncell_r14_s_ { - // member variables bool tdd_cfg_r14_present = false; tdd_cfg_s tdd_cfg_r14; uint8_t sync_cfg_idx_r14 = 0; @@ -1747,12 +1729,11 @@ struct sl_comm_res_pool_v2x_r14_s { void to_json(json_writer& j) const; }; -// SL-PSSCH-TxConfigList-r14 ::= SEQUENCE (SIZE (1..maxPSSCH-TxConfig-r14)) OF SL-PSSCH-TxConfig-r14 -typedef dyn_array sl_pssch_tx_cfg_list_r14_l; +// SL-PSSCH-TxConfigList-r14 ::= SEQUENCE (SIZE (1..16)) OF SL-PSSCH-TxConfig-r14 +using sl_pssch_tx_cfg_list_r14_l = dyn_array; // SL-PoolSelectionConfig-r12 ::= SEQUENCE struct sl_pool_sel_cfg_r12_s { - // member variables uint8_t thresh_low_r12 = 0; uint8_t thresh_high_r12 = 0; @@ -1765,13 +1746,11 @@ struct sl_pool_sel_cfg_r12_s { // SL-SyncConfigNFreq-r13 ::= SEQUENCE struct sl_sync_cfg_nfreq_r13_s { struct async_params_r13_s_ { - // member variables sl_cp_len_r12_e sync_cp_len_r13; uint8_t sync_offset_ind_r13 = 0; uint8_t slssid_r13 = 0; }; struct tx_params_r13_s_ { - // member variables bool sync_info_reserved_r13_present = false; bool sync_tx_periodic_r13_present = false; sl_tx_params_r12_s sync_tx_params_r13; @@ -1821,7 +1800,6 @@ struct sl_sync_cfg_nfreq_r13_s { // SL-TF-ResourceConfig-r12 ::= SEQUENCE struct sl_tf_res_cfg_r12_s { - // member variables uint8_t prb_num_r12 = 1; uint8_t prb_start_r12 = 0; uint8_t prb_end_r12 = 0; @@ -1834,15 +1812,15 @@ struct sl_tf_res_cfg_r12_s { void to_json(json_writer& j) const; }; -// SL-ThresPSSCH-RSRP-List-r14 ::= SEQUENCE (SIZE (64)) OF INTEGER +// SL-ThresPSSCH-RSRP-List-r14 ::= SEQUENCE (SIZE (64)) OF INTEGER (0..66) using sl_thres_pssch_rsrp_list_r14_l = std::array; // SystemInformationBlockType1-v1430-IEs ::= SEQUENCE struct sib_type1_v1430_ies_s { - typedef dyn_array cell_access_related_info_list_r14_l_; + using cell_access_related_info_list_r14_l_ = dyn_array; // member variables - bool e_call_over_ims_support_r14_present = false; + bool ecall_over_ims_support_r14_present = false; bool tdd_cfg_v1430_present = false; bool cell_access_related_info_list_r14_present = false; bool non_crit_ext_present = false; @@ -1878,7 +1856,6 @@ struct tdd_cfg_v1130_s { // BandClassInfoCDMA2000 ::= SEQUENCE struct band_class_info_cdma2000_s { - // member variables bool ext = false; bool cell_resel_prio_present = false; bandclass_cdma2000_e band_class; @@ -1895,7 +1872,6 @@ struct band_class_info_cdma2000_s { // CellSelectionInfoCE1-r13 ::= SEQUENCE struct cell_sel_info_ce1_r13_s { - // member variables bool q_qual_min_rsrq_ce1_r13_present = false; int8_t q_rx_lev_min_ce1_r13 = -70; int8_t q_qual_min_rsrq_ce1_r13 = -34; @@ -1906,18 +1882,18 @@ struct cell_sel_info_ce1_r13_s { void to_json(json_writer& j) const; }; -// InterFreqCarrierFreqList-v13a0 ::= SEQUENCE (SIZE (1.. maxFreq)) OF InterFreqCarrierFreqInfo-v1360 -typedef dyn_array inter_freq_carrier_freq_list_v13a0_l; +// InterFreqCarrierFreqList-v13a0 ::= SEQUENCE (SIZE (1..8)) OF InterFreqCarrierFreqInfo-v1360 +using inter_freq_carrier_freq_list_v13a0_l = dyn_array; -// MultiBandInfoList-v10l0 ::= SEQUENCE (SIZE (1..maxMultiBands)) OF NS-PmaxList-v10l0 -typedef dyn_array multi_band_info_list_v10l0_l; +// MultiBandInfoList-v10l0 ::= SEQUENCE (SIZE (1..8)) OF NS-PmaxList-v10l0 +using multi_band_info_list_v10l0_l = dyn_array; -// NS-PmaxList-r10 ::= SEQUENCE (SIZE (1..maxNS-Pmax-r10)) OF NS-PmaxValue-r10 -typedef dyn_array ns_pmax_list_r10_l; +// NS-PmaxList-r10 ::= SEQUENCE (SIZE (1..8)) OF NS-PmaxValue-r10 +using ns_pmax_list_r10_l = dyn_array; // NeighCellsPerBandclassCDMA2000-r11 ::= SEQUENCE struct neigh_cells_per_bandclass_cdma2000_r11_s { - typedef dyn_array pci_list_r11_l_; + using pci_list_r11_l_ = dyn_array; // member variables uint16_t arfcn = 0; @@ -1929,17 +1905,17 @@ struct neigh_cells_per_bandclass_cdma2000_r11_s { void to_json(json_writer& j) const; }; -// PhysCellIdListCDMA2000 ::= SEQUENCE (SIZE (1..16)) OF INTEGER -typedef bounded_array pci_list_cdma2000_l; +// PhysCellIdListCDMA2000 ::= SEQUENCE (SIZE (1..16)) OF INTEGER (0..511) +using pci_list_cdma2000_l = bounded_array; -// PhysCellIdListCDMA2000-v920 ::= SEQUENCE (SIZE (0..24)) OF INTEGER -typedef bounded_array pci_list_cdma2000_v920_l; +// PhysCellIdListCDMA2000-v920 ::= SEQUENCE (SIZE (0..24)) OF INTEGER (0..511) +using pci_list_cdma2000_v920_l = bounded_array; -// SL-CommRxPoolListV2X-r14 ::= SEQUENCE (SIZE (1..maxSL-V2X-RxPool-r14)) OF SL-CommResourcePoolV2X-r14 -typedef dyn_array sl_comm_rx_pool_list_v2x_r14_l; +// SL-CommRxPoolListV2X-r14 ::= SEQUENCE (SIZE (1..16)) OF SL-CommResourcePoolV2X-r14 +using sl_comm_rx_pool_list_v2x_r14_l = dyn_array; -// SL-CommTxPoolListV2X-r14 ::= SEQUENCE (SIZE (1..maxSL-V2X-TxPool-r14)) OF SL-CommResourcePoolV2X-r14 -typedef dyn_array sl_comm_tx_pool_list_v2x_r14_l; +// SL-CommTxPoolListV2X-r14 ::= SEQUENCE (SIZE (1..8)) OF SL-CommResourcePoolV2X-r14 +using sl_comm_tx_pool_list_v2x_r14_l = dyn_array; // SL-CommTxPoolSensingConfig-r14 ::= SEQUENCE struct sl_comm_tx_pool_sensing_cfg_r14_s { @@ -1953,7 +1929,6 @@ struct sl_comm_tx_pool_sensing_cfg_r14_s { }; typedef enumerated prob_res_keep_r14_e_; struct p2x_sensing_cfg_r14_s_ { - // member variables uint8_t min_num_candidate_sf_r14 = 1; fixed_bitstring<10> gap_candidate_sensing_r14; }; @@ -2076,7 +2051,6 @@ struct sl_disc_res_pool_r12_s { ue_sel_res_cfg_r12_s_ ue_sel_res_cfg_r12; }; struct rx_params_r12_s_ { - // member variables bool tdd_cfg_r12_present = false; tdd_cfg_s tdd_cfg_r12; uint8_t sync_cfg_idx_r12 = 0; @@ -2122,7 +2096,6 @@ struct sl_disc_res_pool_r12_s { }; struct rx_params_add_neigh_freq_r13_c_ { struct setup_s_ { - // member variables pci_list_r13_l pci_r13; }; typedef setup_e types; @@ -2170,7 +2143,7 @@ struct sl_disc_res_pool_r12_s { // member variables bool ul_carrier_freq_present = false; bool ul_bw_present = false; - uint16_t ul_carrier_freq = 0; + uint32_t ul_carrier_freq = 0; ul_bw_e_ ul_bw; uint8_t add_spec_emission = 1; }; @@ -2221,7 +2194,6 @@ struct sl_disc_res_pool_r12_s { struct tx_params_add_neigh_freq_v1370_c_ { struct setup_s_ { struct freq_info_v1370_s_ { - // member variables uint16_t add_spec_emission_v1370 = 33; }; @@ -2284,8 +2256,8 @@ struct sl_disc_res_pool_r12_s { void to_json(json_writer& j) const; }; -// SL-SyncConfigListNFreqV2X-r14 ::= SEQUENCE (SIZE (1..maxSL-V2X-SyncConfig-r14)) OF SL-SyncConfigNFreq-r13 -typedef dyn_array sl_sync_cfg_list_nfreq_v2x_r14_l; +// SL-SyncConfigListNFreqV2X-r14 ::= SEQUENCE (SIZE (1..16)) OF SL-SyncConfigNFreq-r13 +using sl_sync_cfg_list_nfreq_v2x_r14_l = dyn_array; // SL-ZoneConfig-r14 ::= SEQUENCE struct sl_zone_cfg_r14_s { @@ -2320,7 +2292,6 @@ struct sl_zone_cfg_r14_s { // SystemInformationBlockType1-v1360-IEs ::= SEQUENCE struct sib_type1_v1360_ies_s { - // member variables bool cell_sel_info_ce1_v1360_present = false; bool non_crit_ext_present = false; cell_sel_info_ce1_v1360_s cell_sel_info_ce1_v1360; @@ -2332,12 +2303,11 @@ struct sib_type1_v1360_ies_s { void to_json(json_writer& j) const; }; -// BandClassListCDMA2000 ::= SEQUENCE (SIZE (1..maxCDMA-BandClass)) OF BandClassInfoCDMA2000 -typedef dyn_array band_class_list_cdma2000_l; +// BandClassListCDMA2000 ::= SEQUENCE (SIZE (1..32)) OF BandClassInfoCDMA2000 +using band_class_list_cdma2000_l = dyn_array; // InterFreqCarrierFreqInfo-v10l0 ::= SEQUENCE struct inter_freq_carrier_freq_info_v10l0_s { - // member variables bool freq_band_info_v10l0_present = false; bool multi_band_info_list_v10l0_present = false; ns_pmax_list_v10l0_l freq_band_info_v10l0; @@ -2351,7 +2321,6 @@ struct inter_freq_carrier_freq_info_v10l0_s { // MultiBandInfo-v9e0 ::= SEQUENCE struct multi_band_info_v9e0_s { - // member variables bool freq_band_ind_v9e0_present = false; uint16_t freq_band_ind_v9e0 = 65; @@ -2361,12 +2330,12 @@ struct multi_band_info_v9e0_s { void to_json(json_writer& j) const; }; -// MultiBandInfoList-v10j0 ::= SEQUENCE (SIZE (1..maxMultiBands)) OF NS-PmaxList-r10 -typedef dyn_array multi_band_info_list_v10j0_l; +// MultiBandInfoList-v10j0 ::= SEQUENCE (SIZE (1..8)) OF NS-PmaxList-r10 +using multi_band_info_list_v10j0_l = dyn_array; // NeighCellCDMA2000-r11 ::= SEQUENCE struct neigh_cell_cdma2000_r11_s { - typedef dyn_array neigh_freq_info_list_r11_l_; + using neigh_freq_info_list_r11_l_ = dyn_array; // member variables bandclass_cdma2000_e band_class; @@ -2380,7 +2349,6 @@ struct neigh_cell_cdma2000_r11_s { // NeighCellsPerBandclassCDMA2000 ::= SEQUENCE struct neigh_cells_per_bandclass_cdma2000_s { - // member variables uint16_t arfcn = 0; pci_list_cdma2000_l pci_list; @@ -2392,7 +2360,6 @@ struct neigh_cells_per_bandclass_cdma2000_s { // NeighCellsPerBandclassCDMA2000-v920 ::= SEQUENCE struct neigh_cells_per_bandclass_cdma2000_v920_s { - // member variables pci_list_cdma2000_v920_l pci_list_v920; // sequence methods @@ -2486,7 +2453,6 @@ typedef enumerated q_offset_range_e; // RedistributionNeighCell-r13 ::= SEQUENCE struct redist_neigh_cell_r13_s { - // member variables uint16_t pci_r13 = 0; uint8_t redist_factor_cell_r13 = 1; @@ -2496,12 +2462,11 @@ struct redist_neigh_cell_r13_s { void to_json(json_writer& j) const; }; -// SL-DiscTxPoolList-r12 ::= SEQUENCE (SIZE (1..maxSL-TxPool-r12)) OF SL-DiscResourcePool-r12 -typedef dyn_array sl_disc_tx_pool_list_r12_l; +// SL-DiscTxPoolList-r12 ::= SEQUENCE (SIZE (1..4)) OF SL-DiscResourcePool-r12 +using sl_disc_tx_pool_list_r12_l = dyn_array; // SL-DiscTxPowerInfo-r12 ::= SEQUENCE struct sl_disc_tx_pwr_info_r12_s { - // member variables bool ext = false; int8_t disc_max_tx_pwr_r12 = -30; // ... @@ -2514,7 +2479,6 @@ struct sl_disc_tx_pwr_info_r12_s { // SL-V2X-FreqSelectionConfig-r15 ::= SEQUENCE struct sl_v2x_freq_sel_cfg_r15_s { - // member variables bool thresh_cbr_freq_resel_r15_present = false; bool thresh_cbr_freq_keeping_r15_present = false; sl_prio_list_r13_l prio_list_r15; @@ -2529,7 +2493,6 @@ struct sl_v2x_freq_sel_cfg_r15_s { // SL-V2X-InterFreqUE-Config-r14 ::= SEQUENCE struct sl_v2x_inter_freq_ue_cfg_r14_s { - // member variables bool ext = false; bool pci_list_r14_present = false; bool type_tx_sync_r14_present = false; @@ -2580,13 +2543,13 @@ struct sched_info_br_r13_s { void to_json(json_writer& j) const; }; -// SecondaryPreRegistrationZoneIdListHRPD ::= SEQUENCE (SIZE (1..2)) OF INTEGER -typedef bounded_array secondary_pre_regist_zone_id_list_hrpd_l; +// SecondaryPreRegistrationZoneIdListHRPD ::= SEQUENCE (SIZE (1..2)) OF INTEGER (0..255) +using secondary_pre_regist_zone_id_list_hrpd_l = bounded_array; // SpeedStateScaleFactors ::= SEQUENCE struct speed_state_scale_factors_s { struct sf_medium_opts { - enum options { o_dot25, o_dot5, o_dot75, l_dot0, nulltype } value; + enum options { odot25, odot5, odot75, ldot0, nulltype } value; typedef float number_type; std::string to_string() const; @@ -2595,7 +2558,7 @@ struct speed_state_scale_factors_s { }; typedef enumerated sf_medium_e_; struct sf_high_opts { - enum options { o_dot25, o_dot5, o_dot75, l_dot0, nulltype } value; + enum options { odot25, odot5, odot75, ldot0, nulltype } value; typedef float number_type; std::string to_string() const; @@ -2616,7 +2579,6 @@ struct speed_state_scale_factors_s { // SystemInformationBlockType1-v1350-IEs ::= SEQUENCE struct sib_type1_v1350_ies_s { - // member variables bool cell_sel_info_ce1_r13_present = false; bool non_crit_ext_present = false; cell_sel_info_ce1_r13_s cell_sel_info_ce1_r13; @@ -2630,7 +2592,6 @@ struct sib_type1_v1350_ies_s { // SystemInformationBlockType5-v13a0-IEs ::= SEQUENCE struct sib_type5_v13a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool inter_freq_carrier_freq_list_v13a0_present = false; bool non_crit_ext_present = false; @@ -2645,7 +2606,6 @@ struct sib_type5_v13a0_ies_s { // AC-BarringConfig1XRTT-r9 ::= SEQUENCE struct ac_barr_cfg1_xrtt_r9_s { - // member variables uint8_t ac_barr0to9_r9 = 0; uint8_t ac_barr10_r9 = 0; uint8_t ac_barr11_r9 = 0; @@ -2722,7 +2682,6 @@ struct barr_per_acdc_category_r13_s { // CSFB-RegistrationParam1XRTT ::= SEQUENCE struct csfb_regist_param1_xrtt_s { - // member variables fixed_bitstring<15> sid; fixed_bitstring<16> nid; bool multiple_sid = false; @@ -2751,12 +2710,12 @@ struct csfb_regist_param1_xrtt_v920_s { void to_json(json_writer& j) const; }; -// CellList-r15 ::= SEQUENCE (SIZE (1.. maxCellMeasIdle-r15)) OF PhysCellIdRange -typedef dyn_array cell_list_r15_l; +// CellList-r15 ::= SEQUENCE (SIZE (1..8)) OF PhysCellIdRange +using cell_list_r15_l = dyn_array; // CellReselectionParametersCDMA2000-r11 ::= SEQUENCE struct cell_resel_params_cdma2000_r11_s { - typedef dyn_array neigh_cell_list_r11_l_; + using neigh_cell_list_r11_l_ = dyn_array; // member variables bool t_resel_cdma2000_sf_present = false; @@ -2773,7 +2732,6 @@ struct cell_resel_params_cdma2000_r11_s { // CellSelectionInfoCE-r13 ::= SEQUENCE struct cell_sel_info_ce_r13_s { - // member variables bool q_qual_min_rsrq_ce_r13_present = false; int8_t q_rx_lev_min_ce_r13 = -70; int8_t q_qual_min_rsrq_ce_r13 = -34; @@ -2827,12 +2785,11 @@ struct cell_sel_info_nfreq_r13_s { void to_json(json_writer& j) const; }; -// ExplicitListOfARFCNs ::= SEQUENCE (SIZE (0..31)) OF INTEGER -typedef bounded_array explicit_list_of_arfcns_l; +// ExplicitListOfARFCNs ::= SEQUENCE (SIZE (0..31)) OF INTEGER (0..1023) +using explicit_list_of_arfcns_l = bounded_array; // InterFreqCarrierFreqInfo-v10j0 ::= SEQUENCE struct inter_freq_carrier_freq_info_v10j0_s { - // member variables bool freq_band_info_r10_present = false; bool multi_band_info_list_v10j0_present = false; ns_pmax_list_r10_l freq_band_info_r10; @@ -2846,7 +2803,6 @@ struct inter_freq_carrier_freq_info_v10j0_s { // InterFreqNeighCellInfo ::= SEQUENCE struct inter_freq_neigh_cell_info_s { - // member variables uint16_t pci = 0; q_offset_range_e q_offset_cell; @@ -2856,12 +2812,11 @@ struct inter_freq_neigh_cell_info_s { void to_json(json_writer& j) const; }; -// MultiBandInfoList-v9e0 ::= SEQUENCE (SIZE (1..maxMultiBands)) OF MultiBandInfo-v9e0 -typedef dyn_array multi_band_info_list_v9e0_l; +// MultiBandInfoList-v9e0 ::= SEQUENCE (SIZE (1..8)) OF MultiBandInfo-v9e0 +using multi_band_info_list_v9e0_l = dyn_array; // NS-PmaxValueNR-r15 ::= SEQUENCE struct ns_pmax_value_nr_r15_s { - // member variables bool add_pmax_nr_r15_present = false; int8_t add_pmax_nr_r15 = -30; uint8_t add_spec_emission_nr_r15 = 0; @@ -2873,10 +2828,10 @@ struct ns_pmax_value_nr_r15_s { }; // NeighCellsPerBandclassListCDMA2000 ::= SEQUENCE (SIZE (1..16)) OF NeighCellsPerBandclassCDMA2000 -typedef dyn_array neigh_cells_per_bandclass_list_cdma2000_l; +using neigh_cells_per_bandclass_list_cdma2000_l = dyn_array; // NeighCellsPerBandclassListCDMA2000-v920 ::= SEQUENCE (SIZE (1..16)) OF NeighCellsPerBandclassCDMA2000-v920 -typedef dyn_array neigh_cells_per_bandclass_list_cdma2000_v920_l; +using neigh_cells_per_bandclass_list_cdma2000_v920_l = dyn_array; // PLMN-IdentityInfo2-r12 ::= CHOICE struct plmn_id_info2_r12_c { @@ -2930,8 +2885,8 @@ struct plmn_id_info2_r12_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -2962,7 +2917,7 @@ struct prach_params_ce_r13_s { uint8_t to_number() const; }; typedef enumerated num_repeat_per_preamb_attempt_r13_e_; - typedef bounded_array mpdcch_nbs_to_monitor_r13_l_; + using mpdcch_nbs_to_monitor_r13_l_ = bounded_array; struct mpdcch_num_repeat_ra_r13_opts { enum options { r1, r2, r4, r8, r16, r32, r64, r128, r256, nulltype } value; typedef uint16_t number_type; @@ -2998,11 +2953,10 @@ struct prach_params_ce_r13_s { // PreRegistrationInfoHRPD ::= SEQUENCE struct pre_regist_info_hrpd_s { - // member variables bool pre_regist_zone_id_present = false; bool secondary_pre_regist_zone_id_list_present = false; bool pre_regist_allowed = false; - uint8_t pre_regist_zone_id = 0; + uint16_t pre_regist_zone_id = 0; secondary_pre_regist_zone_id_list_hrpd_l secondary_pre_regist_zone_id_list; // sequence methods @@ -3014,7 +2968,6 @@ struct pre_regist_info_hrpd_s { // RACH-CE-LevelInfo-r13 ::= SEQUENCE struct rach_ce_level_info_r13_s { struct preamb_map_info_r13_s_ { - // member variables uint8_t first_preamb_r13 = 0; uint8_t last_preamb_r13 = 0; }; @@ -3082,13 +3035,13 @@ struct rach_ce_level_info_r13_s { void to_json(json_writer& j) const; }; -// RedistributionNeighCellList-r13 ::= SEQUENCE (SIZE (1..maxCellInter)) OF RedistributionNeighCell-r13 -typedef dyn_array redist_neigh_cell_list_r13_l; +// RedistributionNeighCellList-r13 ::= SEQUENCE (SIZE (1..16)) OF RedistributionNeighCell-r13 +using redist_neigh_cell_list_r13_l = dyn_array; // SL-AllowedCarrierFreqList-r15 ::= SEQUENCE struct sl_allowed_carrier_freq_list_r15_s { - typedef bounded_array allowed_carrier_freq_set1_l_; - typedef bounded_array allowed_carrier_freq_set2_l_; + using allowed_carrier_freq_set1_l_ = bounded_array; + using allowed_carrier_freq_set2_l_ = bounded_array; // member variables allowed_carrier_freq_set1_l_ allowed_carrier_freq_set1; @@ -3100,13 +3053,13 @@ struct sl_allowed_carrier_freq_list_r15_s { void to_json(json_writer& j) const; }; -// SL-DestinationInfoList-r12 ::= SEQUENCE (SIZE (1..maxSL-Dest-r12)) OF BIT STRING -typedef bounded_array, 16> sl_dest_info_list_r12_l; +// SL-DestinationInfoList-r12 ::= SEQUENCE (SIZE (1..16)) OF BIT STRING (SIZE (24)) +using sl_dest_info_list_r12_l = bounded_array, 16>; -// SL-DiscRxPoolList-r12 ::= SEQUENCE (SIZE (1..maxSL-RxPool-r12)) OF SL-DiscResourcePool-r12 -typedef dyn_array sl_disc_rx_pool_list_r12_l; +// SL-DiscRxPoolList-r12 ::= SEQUENCE (SIZE (1..16)) OF SL-DiscResourcePool-r12 +using sl_disc_rx_pool_list_r12_l = dyn_array; -// SL-DiscTxPowerInfoList-r12 ::= SEQUENCE (SIZE (maxSL-DiscPowerClass-r12)) OF SL-DiscTxPowerInfo-r12 +// SL-DiscTxPowerInfoList-r12 ::= SEQUENCE (SIZE (3)) OF SL-DiscTxPowerInfo-r12 using sl_disc_tx_pwr_info_list_r12_l = std::array; // SL-DiscTxResourcesInterFreq-r13 ::= CHOICE @@ -3153,20 +3106,20 @@ private: sl_disc_tx_pool_list_r12_l c; }; -// SL-SyncConfigListNFreq-r13 ::= SEQUENCE (SIZE (1..maxSL-SyncConfig-r12)) OF SL-SyncConfigNFreq-r13 -typedef dyn_array sl_sync_cfg_list_nfreq_r13_l; +// SL-SyncConfigListNFreq-r13 ::= SEQUENCE (SIZE (1..16)) OF SL-SyncConfigNFreq-r13 +using sl_sync_cfg_list_nfreq_r13_l = dyn_array; // SL-V2X-FreqSelectionConfigList-r15 ::= SEQUENCE (SIZE (1..8)) OF SL-V2X-FreqSelectionConfig-r15 -typedef dyn_array sl_v2x_freq_sel_cfg_list_r15_l; +using sl_v2x_freq_sel_cfg_list_r15_l = dyn_array; -// SL-V2X-UE-ConfigList-r14 ::= SEQUENCE (SIZE (1.. maxCellIntra)) OF SL-V2X-InterFreqUE-Config-r14 -typedef dyn_array sl_v2x_ue_cfg_list_r14_l; +// SL-V2X-UE-ConfigList-r14 ::= SEQUENCE (SIZE (1..16)) OF SL-V2X-InterFreqUE-Config-r14 +using sl_v2x_ue_cfg_list_r14_l = dyn_array; -// SchedulingInfoList-BR-r13 ::= SEQUENCE (SIZE (1..maxSI-Message)) OF SchedulingInfo-BR-r13 -typedef dyn_array sched_info_list_br_r13_l; +// SchedulingInfoList-BR-r13 ::= SEQUENCE (SIZE (1..32)) OF SchedulingInfo-BR-r13 +using sched_info_list_br_r13_l = dyn_array; -// SystemInfoValueTagList-r13 ::= SEQUENCE (SIZE (1..maxSI-Message)) OF INTEGER -typedef bounded_array sys_info_value_tag_list_r13_l; +// SystemInfoValueTagList-r13 ::= SEQUENCE (SIZE (1..32)) OF INTEGER (0..3) +using sys_info_value_tag_list_r13_l = bounded_array; // SystemInformationBlockType1-v1320-IEs ::= SEQUENCE struct sib_type1_v1320_ies_s { @@ -3246,8 +3199,8 @@ struct sib_type1_v1320_ies_s { } private: - types type_; - choice_buffer_t c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -3318,8 +3271,8 @@ struct sib_type1_v1320_ies_s { } private: - types type_; - choice_buffer_t c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -3350,10 +3303,9 @@ struct sib_type1_v1320_ies_s { // SystemInformationBlockType2-v10m0-IEs ::= SEQUENCE struct sib_type2_v10m0_ies_s { struct freq_info_v10l0_s_ { - // member variables uint16_t add_spec_emission_v10l0 = 33; }; - typedef bounded_array multi_band_info_list_v10l0_l_; + using multi_band_info_list_v10l0_l_ = bounded_array; // member variables bool freq_info_v10l0_present = false; @@ -3370,7 +3322,7 @@ struct sib_type2_v10m0_ies_s { // SystemInformationBlockType5-v10l0-IEs ::= SEQUENCE struct sib_type5_v10l0_ies_s { - typedef dyn_array inter_freq_carrier_freq_list_v10l0_l_; + using inter_freq_carrier_freq_list_v10l0_l_ = dyn_array; // member variables bool inter_freq_carrier_freq_list_v10l0_present = false; @@ -3437,8 +3389,8 @@ struct sys_time_info_cdma2000_s { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -3455,7 +3407,6 @@ struct sys_time_info_cdma2000_s { // UAC-BarringPerCat-r15 ::= SEQUENCE struct uac_barr_per_cat_r15_s { - // member variables uint8_t access_category_r15 = 1; uint8_t uac_barr_info_set_idx_r15 = 1; @@ -3496,14 +3447,13 @@ struct ac_barr_cfg_s { void to_json(json_writer& j) const; }; -// BarringPerACDC-CategoryList-r13 ::= SEQUENCE (SIZE (1..maxACDC-Cat-r13)) OF BarringPerACDC-Category-r13 -typedef dyn_array barr_per_acdc_category_list_r13_l; +// BarringPerACDC-CategoryList-r13 ::= SEQUENCE (SIZE (1..16)) OF BarringPerACDC-Category-r13 +using barr_per_acdc_category_list_r13_l = dyn_array; // CarrierFreqsGERAN ::= SEQUENCE struct carrier_freqs_geran_s { struct following_arfcns_c_ { struct equally_spaced_arfcns_s_ { - // member variables uint8_t arfcn_spacing = 1; uint8_t nof_following_arfcns = 0; }; @@ -3572,9 +3522,8 @@ struct carrier_freqs_geran_s { } private: - types type_; - choice_buffer_t - c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -3592,7 +3541,7 @@ struct carrier_freqs_geran_s { // CellReselectionSubPriority-r13 ::= ENUMERATED struct cell_resel_sub_prio_r13_opts { - enum options { o_dot2, o_dot4, o_dot6, o_dot8, nulltype } value; + enum options { odot2, odot4, odot6, odot8, nulltype } value; typedef float number_type; std::string to_string() const; @@ -3603,7 +3552,6 @@ typedef enumerated cell_resel_sub_prio_r13_e; // CellSelectionInfo-v1250 ::= SEQUENCE struct cell_sel_info_v1250_s { - // member variables int8_t q_qual_min_rsrq_on_all_symbols_r12 = -34; // sequence methods @@ -3679,7 +3627,7 @@ struct edt_prach_params_ce_r15_s { uint16_t to_number() const; }; typedef enumerated prach_start_sf_r15_e_; - typedef bounded_array mpdcch_nbs_to_monitor_r15_l_; + using mpdcch_nbs_to_monitor_r15_l_ = bounded_array; // member variables bool prach_start_sf_r15_present = false; @@ -3727,12 +3675,11 @@ struct filt_coef_opts { }; typedef enumerated filt_coef_e; -// InterFreqBlackCellList ::= SEQUENCE (SIZE (1..maxCellBlack)) OF PhysCellIdRange -typedef dyn_array inter_freq_black_cell_list_l; +// InterFreqBlackCellList ::= SEQUENCE (SIZE (1..16)) OF PhysCellIdRange +using inter_freq_black_cell_list_l = dyn_array; // InterFreqCarrierFreqInfo-v9e0 ::= SEQUENCE struct inter_freq_carrier_freq_info_v9e0_s { - // member variables bool dl_carrier_freq_v9e0_present = false; bool multi_band_info_list_v9e0_present = false; uint32_t dl_carrier_freq_v9e0 = 65536; @@ -3744,14 +3691,14 @@ struct inter_freq_carrier_freq_info_v9e0_s { void to_json(json_writer& j) const; }; -// InterFreqNeighCellList ::= SEQUENCE (SIZE (1..maxCellInter)) OF InterFreqNeighCellInfo -typedef dyn_array inter_freq_neigh_cell_list_l; +// InterFreqNeighCellList ::= SEQUENCE (SIZE (1..16)) OF InterFreqNeighCellInfo +using inter_freq_neigh_cell_list_l = dyn_array; -// InterFreqNeighHSDN-CellList-r15 ::= SEQUENCE (SIZE (1..maxCellInter)) OF PhysCellIdRange -typedef dyn_array inter_freq_neigh_hsdn_cell_list_r15_l; +// InterFreqNeighHSDN-CellList-r15 ::= SEQUENCE (SIZE (1..16)) OF PhysCellIdRange +using inter_freq_neigh_hsdn_cell_list_r15_l = dyn_array; -// MBMS-SAI-List-r11 ::= SEQUENCE (SIZE (1..maxSAI-MBMS-r11)) OF INTEGER -typedef dyn_array mbms_sai_list_r11_l; +// MBMS-SAI-List-r11 ::= SEQUENCE (SIZE (1..64)) OF INTEGER (0..65535) +using mbms_sai_list_r11_l = dyn_array; // MTC-SSB-NR-r15 ::= SEQUENCE struct mtc_ssb_nr_r15_s { @@ -3868,8 +3815,8 @@ struct mtc_ssb_nr_r15_s { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -3901,7 +3848,6 @@ struct meas_idle_carrier_eutra_r15_s { }; typedef enumerated report_quantities_e_; struct quality_thres_r15_s_ { - // member variables bool idle_rsrp_thres_r15_present = false; bool idle_rsrq_thres_r15_present = false; uint8_t idle_rsrp_thres_r15 = 0; @@ -3927,24 +3873,23 @@ struct meas_idle_carrier_eutra_r15_s { void to_json(json_writer& j) const; }; -// MultiBandInfoList ::= SEQUENCE (SIZE (1..maxMultiBands)) OF INTEGER -typedef bounded_array multi_band_info_list_l; +// MultiBandInfoList ::= SEQUENCE (SIZE (1..8)) OF INTEGER (1..64) +using multi_band_info_list_l = bounded_array; -// MultiBandInfoList-r11 ::= SEQUENCE (SIZE (1..maxMultiBands)) OF INTEGER -typedef bounded_array multi_band_info_list_r11_l; +// MultiBandInfoList-r11 ::= SEQUENCE (SIZE (1..8)) OF INTEGER (1..256) +using multi_band_info_list_r11_l = bounded_array; -// MultiFrequencyBandListNR-r15 ::= SEQUENCE (SIZE (1.. maxMultiBandsNR-r15)) OF INTEGER -typedef bounded_array multi_freq_band_list_nr_r15_l; +// MultiFrequencyBandListNR-r15 ::= SEQUENCE (SIZE (1..32)) OF INTEGER (1..1024) +using multi_freq_band_list_nr_r15_l = bounded_array; -// N1PUCCH-AN-InfoList-r13 ::= SEQUENCE (SIZE(1..maxCE-Level-r13)) OF INTEGER -typedef bounded_array n1_pucch_an_info_list_r13_l; +// N1PUCCH-AN-InfoList-r13 ::= SEQUENCE (SIZE (1..4)) OF INTEGER (0..2047) +using n1_pucch_an_info_list_r13_l = bounded_array; // NS-PmaxListNR-r15 ::= SEQUENCE (SIZE (1..8)) OF NS-PmaxValueNR-r15 -typedef dyn_array ns_pmax_list_nr_r15_l; +using ns_pmax_list_nr_r15_l = dyn_array; // NeighCellCDMA2000 ::= SEQUENCE struct neigh_cell_cdma2000_s { - // member variables bandclass_cdma2000_e band_class; neigh_cells_per_bandclass_list_cdma2000_l neigh_cells_per_freq_list; @@ -3956,7 +3901,6 @@ struct neigh_cell_cdma2000_s { // NeighCellCDMA2000-v920 ::= SEQUENCE struct neigh_cell_cdma2000_v920_s { - // member variables neigh_cells_per_bandclass_list_cdma2000_v920_l neigh_cells_per_freq_list_v920; // sequence methods @@ -3965,12 +3909,11 @@ struct neigh_cell_cdma2000_v920_s { void to_json(json_writer& j) const; }; -// PLMN-IdentityList4-r12 ::= SEQUENCE (SIZE (1..maxPLMN-r11)) OF PLMN-IdentityInfo2-r12 -typedef dyn_array plmn_id_list4_r12_l; +// PLMN-IdentityList4-r12 ::= SEQUENCE (SIZE (1..6)) OF PLMN-IdentityInfo2-r12 +using plmn_id_list4_r12_l = dyn_array; // PRACH-ConfigInfo ::= SEQUENCE struct prach_cfg_info_s { - // member variables uint8_t prach_cfg_idx = 0; bool high_speed_flag = false; uint8_t zero_correlation_zone_cfg = 0; @@ -3982,8 +3925,8 @@ struct prach_cfg_info_s { void to_json(json_writer& j) const; }; -// PRACH-ParametersListCE-r13 ::= SEQUENCE (SIZE(1..maxCE-Level-r13)) OF PRACH-ParametersCE-r13 -typedef dyn_array prach_params_list_ce_r13_l; +// PRACH-ParametersListCE-r13 ::= SEQUENCE (SIZE (1..4)) OF PRACH-ParametersCE-r13 +using prach_params_list_ce_r13_l = dyn_array; // ParametersCDMA2000-r11 ::= SEQUENCE struct params_cdma2000_r11_s { @@ -4024,13 +3967,11 @@ struct params_cdma2000_r11_s { sys_time_info_cdma2000_s c; }; struct params_hrpd_r11_s_ { - // member variables bool cell_resel_params_hrpd_r11_present = false; pre_regist_info_hrpd_s pre_regist_info_hrpd_r11; cell_resel_params_cdma2000_r11_s cell_resel_params_hrpd_r11; }; struct params1_xrtt_r11_s_ { - // member variables bool csfb_regist_param1_xrtt_r11_present = false; bool csfb_regist_param1_xrtt_ext_r11_present = false; bool long_code_state1_xrtt_r11_present = false; @@ -4120,15 +4061,14 @@ struct preamb_trans_max_opts { }; typedef enumerated preamb_trans_max_e; -// RACH-CE-LevelInfoList-r13 ::= SEQUENCE (SIZE (1..maxCE-Level-r13)) OF RACH-CE-LevelInfo-r13 -typedef dyn_array rach_ce_level_info_list_r13_l; +// RACH-CE-LevelInfoList-r13 ::= SEQUENCE (SIZE (1..4)) OF RACH-CE-LevelInfo-r13 +using rach_ce_level_info_list_r13_l = dyn_array; -// RSRP-ThresholdsPrachInfoList-r13 ::= SEQUENCE (SIZE(1..3)) OF INTEGER -typedef bounded_array rsrp_thress_prach_info_list_r13_l; +// RSRP-ThresholdsPrachInfoList-r13 ::= SEQUENCE (SIZE (1..3)) OF INTEGER (0..97) +using rsrp_thress_prach_info_list_r13_l = bounded_array; // RedistributionInterFreqInfo-r13 ::= SEQUENCE struct redist_inter_freq_info_r13_s { - // member variables bool redist_factor_freq_r13_present = false; bool redist_neigh_cell_list_r13_present = false; uint8_t redist_factor_freq_r13 = 1; @@ -4140,12 +4080,11 @@ struct redist_inter_freq_info_r13_s { void to_json(json_writer& j) const; }; -// SL-CBR-Levels-Config-r14 ::= SEQUENCE (SIZE (1..maxCBR-Level-r14)) OF INTEGER -typedef bounded_array sl_cbr_levels_cfg_r14_l; +// SL-CBR-Levels-Config-r14 ::= SEQUENCE (SIZE (1..16)) OF INTEGER (0..100) +using sl_cbr_levels_cfg_r14_l = bounded_array; // SL-CBR-PSSCH-TxConfig-r14 ::= SEQUENCE struct sl_cbr_pssch_tx_cfg_r14_s { - // member variables uint16_t cr_limit_r14 = 0; sl_pssch_tx_params_r14_s tx_params_r14; @@ -4157,7 +4096,6 @@ struct sl_cbr_pssch_tx_cfg_r14_s { // SL-DiscConfigOtherInterFreq-r13 ::= SEQUENCE struct sl_disc_cfg_other_inter_freq_r13_s { - // member variables bool tx_pwr_info_r13_present = false; bool ref_carrier_common_r13_present = false; bool disc_sync_cfg_r13_present = false; @@ -4255,8 +4193,8 @@ struct sl_inter_freq_info_v2x_r14_s { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -4288,7 +4226,6 @@ struct sl_inter_freq_info_v2x_r14_s { // SL-PPPR-Dest-CarrierFreq ::= SEQUENCE struct sl_pppr_dest_carrier_freq_s { - // member variables bool dest_info_list_r15_present = false; bool allowed_carrier_freq_list_r15_present = false; sl_dest_info_list_r12_l dest_info_list_r15; @@ -4330,7 +4267,6 @@ typedef enumerated sl_period_comm_r12_e; // SL-ResourcesInterFreq-r13 ::= SEQUENCE struct sl_res_inter_freq_r13_s { - // member variables bool disc_rx_res_inter_freq_r13_present = false; bool disc_tx_res_inter_freq_r13_present = false; sl_disc_rx_pool_list_r12_l disc_rx_res_inter_freq_r13; @@ -4345,7 +4281,6 @@ struct sl_res_inter_freq_r13_s { // SL-SyncConfig-r12 ::= SEQUENCE struct sl_sync_cfg_r12_s { struct tx_params_r12_s_ { - // member variables bool sync_info_reserved_r12_present = false; sl_tx_params_r12_s sync_tx_params_r12; uint8_t sync_tx_thresh_ic_r12 = 0; @@ -4398,9 +4333,8 @@ struct sl_sync_cfg_r12_s { // SS-RSSI-Measurement-r15 ::= SEQUENCE struct ss_rssi_meas_r15_s { - // member variables - dyn_bitstring meas_slots_r15; - uint8_t end_symbol_r15 = 0; + bounded_bitstring<1, 80> meas_slots_r15; + uint8_t end_symbol_r15 = 0; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -4410,7 +4344,6 @@ struct ss_rssi_meas_r15_s { // SystemInformationBlockType1-v10l0-IEs ::= SEQUENCE struct sib_type1_v10l0_ies_s { - // member variables bool freq_band_info_v10l0_present = false; bool multi_band_info_list_v10l0_present = false; bool non_crit_ext_present = false; @@ -4495,8 +4428,8 @@ struct sib_type1_v1310_ies_s { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -4525,7 +4458,7 @@ struct sib_type1_v1310_ies_s { // member variables bool hyper_sfn_r13_present = false; - bool e_drx_allowed_r13_present = false; + bool edrx_allowed_r13_present = false; bool cell_sel_info_ce_r13_present = false; bool bw_reduced_access_related_info_r13_present = false; bool non_crit_ext_present = false; @@ -4542,7 +4475,6 @@ struct sib_type1_v1310_ies_s { // SystemInformationBlockType2-v9i0-IEs ::= SEQUENCE struct sib_type2_v9i0_ies_s { - // member variables bool non_crit_ext_present = false; bool dummy_present = false; dyn_octstring non_crit_ext; @@ -4555,7 +4487,7 @@ struct sib_type2_v9i0_ies_s { // SystemInformationBlockType5-v10j0-IEs ::= SEQUENCE struct sib_type5_v10j0_ies_s { - typedef dyn_array inter_freq_carrier_freq_list_v10j0_l_; + using inter_freq_carrier_freq_list_v10j0_l_ = dyn_array; // member variables bool inter_freq_carrier_freq_list_v10j0_present = false; @@ -4571,7 +4503,6 @@ struct sib_type5_v10j0_ies_s { // ThresholdListNR-r15 ::= SEQUENCE struct thres_list_nr_r15_s { - // member variables bool nr_rsrp_r15_present = false; bool nr_rsrq_r15_present = false; bool nr_sinr_r15_present = false; @@ -4585,8 +4516,8 @@ struct thres_list_nr_r15_s { void to_json(json_writer& j) const; }; -// UAC-BarringPerCatList-r15 ::= SEQUENCE (SIZE (1..maxAccessCat-1-r15)) OF UAC-BarringPerCat-r15 -typedef dyn_array uac_barr_per_cat_list_r15_l; +// UAC-BarringPerCatList-r15 ::= SEQUENCE (SIZE (1..63)) OF UAC-BarringPerCat-r15 +using uac_barr_per_cat_list_r15_l = dyn_array; // UDT-Restricting-r13 ::= SEQUENCE struct udt_restricting_r13_s { @@ -4612,7 +4543,6 @@ struct udt_restricting_r13_s { // UL-ReferenceSignalsPUSCH ::= SEQUENCE struct ul_ref_sigs_pusch_s { - // member variables bool group_hop_enabled = false; uint8_t group_assign_pusch = 0; bool seq_hop_enabled = false; @@ -4626,7 +4556,6 @@ struct ul_ref_sigs_pusch_s { // WLAN-Identifiers-r12 ::= SEQUENCE struct wlan_ids_r12_s { - // member variables bool ext = false; bool ssid_r12_present = false; bool bssid_r12_present = false; @@ -4689,7 +4618,6 @@ typedef enumerated wlan_backhaul_rate_r12_e; // AC-BarringPerPLMN-r12 ::= SEQUENCE struct ac_barr_per_plmn_r12_s { struct ac_barr_info_r12_s_ { - // member variables bool ac_barr_for_mo_sig_r12_present = false; bool ac_barr_for_mo_data_r12_present = false; bool ac_barr_for_emergency_r12 = false; @@ -4719,7 +4647,6 @@ struct ac_barr_per_plmn_r12_s { // ACDC-BarringPerPLMN-r13 ::= SEQUENCE struct acdc_barr_per_plmn_r13_s { - // member variables uint8_t plmn_id_idx_r13 = 1; bool acdc_only_for_hplmn_r13 = false; barr_per_acdc_category_list_r13_l barr_per_acdc_category_list_r13; @@ -4760,7 +4687,6 @@ struct bcch_cfg_v1310_s { // CIOT-OptimisationPLMN-r13 ::= SEQUENCE struct ciot_optim_plmn_r13_s { - // member variables bool up_cio_t_eps_optim_r13_present = false; bool cp_cio_t_eps_optim_r13_present = false; bool attach_without_pdn_connect_r13_present = false; @@ -4773,7 +4699,7 @@ struct ciot_optim_plmn_r13_s { // CarrierFreqInfoUTRA-FDD-v8h0 ::= SEQUENCE struct carrier_freq_info_utra_fdd_v8h0_s { - typedef bounded_array multi_band_info_list_l_; + using multi_band_info_list_l_ = bounded_array; // member variables bool multi_band_info_list_present = false; @@ -4788,7 +4714,7 @@ struct carrier_freq_info_utra_fdd_v8h0_s { // CarrierFreqNR-r15 ::= SEQUENCE struct carrier_freq_nr_r15_s { struct subcarrier_spacing_ssb_r15_opts { - enum options { k_hz15, k_hz30, k_hz120, k_hz240, nulltype } value; + enum options { khz15, khz30, khz120, khz240, nulltype } value; typedef uint8_t number_type; std::string to_string() const; @@ -4796,7 +4722,6 @@ struct carrier_freq_nr_r15_s { }; typedef enumerated subcarrier_spacing_ssb_r15_e_; struct thresh_x_q_r15_s_ { - // member variables uint8_t thresh_x_high_q_r15 = 0; uint8_t thresh_x_low_q_r15 = 0; }; @@ -4845,7 +4770,6 @@ struct carrier_freq_nr_r15_s { // CarrierFreqUTRA-FDD ::= SEQUENCE struct carrier_freq_utra_fdd_s { struct thresh_x_q_r9_s_ { - // member variables uint8_t thresh_x_high_q_r9 = 0; uint8_t thresh_x_low_q_r9 = 0; }; @@ -4873,11 +4797,10 @@ struct carrier_freq_utra_fdd_s { // CarrierFreqUTRA-FDD-Ext-r12 ::= SEQUENCE struct carrier_freq_utra_fdd_ext_r12_s { struct thresh_x_q_r12_s_ { - // member variables uint8_t thresh_x_high_q_r12 = 0; uint8_t thresh_x_low_q_r12 = 0; }; - typedef bounded_array multi_band_info_list_r12_l_; + using multi_band_info_list_r12_l_ = bounded_array; // member variables bool ext = false; @@ -4904,7 +4827,6 @@ struct carrier_freq_utra_fdd_ext_r12_s { // CarrierFreqUTRA-TDD ::= SEQUENCE struct carrier_freq_utra_tdd_s { - // member variables bool ext = false; bool cell_resel_prio_present = false; uint16_t carrier_freq = 0; @@ -4923,7 +4845,6 @@ struct carrier_freq_utra_tdd_s { // CarrierFreqUTRA-TDD-r12 ::= SEQUENCE struct carrier_freq_utra_tdd_r12_s { - // member variables bool ext = false; bool cell_resel_prio_r12_present = false; bool reduced_meas_performance_r12_present = false; @@ -4944,7 +4865,6 @@ struct carrier_freq_utra_tdd_r12_s { // CarrierFreqsInfoGERAN ::= SEQUENCE struct carrier_freqs_info_geran_s { struct common_info_s_ { - // member variables bool cell_resel_prio_present = false; bool p_max_geran_present = false; uint8_t cell_resel_prio = 0; @@ -4969,7 +4889,6 @@ struct carrier_freqs_info_geran_s { // CellSelectionInfo-v1130 ::= SEQUENCE struct cell_sel_info_v1130_s { - // member variables int8_t q_qual_min_wb_r11 = -34; // sequence methods @@ -4997,8 +4916,8 @@ struct eab_cfg_r11_s { void to_json(json_writer& j) const; }; -// EUTRA-CarrierList-r15 ::= SEQUENCE (SIZE (1..maxFreqIdle-r15)) OF MeasIdleCarrierEUTRA-r15 -typedef dyn_array eutra_carrier_list_r15_l; +// EUTRA-CarrierList-r15 ::= SEQUENCE (SIZE (1..8)) OF MeasIdleCarrierEUTRA-r15 +using eutra_carrier_list_r15_l = dyn_array; // FreqHoppingParameters-r13 ::= SEQUENCE struct freq_hop_params_r13_s { @@ -5077,8 +4996,8 @@ struct freq_hop_params_r13_s { } private: - types type_; - choice_buffer_t c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -5149,8 +5068,8 @@ struct freq_hop_params_r13_s { } private: - types type_; - choice_buffer_t c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -5221,8 +5140,8 @@ struct freq_hop_params_r13_s { } private: - types type_; - choice_buffer_t c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -5293,8 +5212,8 @@ struct freq_hop_params_r13_s { } private: - types type_; - choice_buffer_t c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -5321,7 +5240,6 @@ struct freq_hop_params_r13_s { // HighSpeedConfig-r14 ::= SEQUENCE struct high_speed_cfg_r14_s { - // member variables bool high_speed_enhanced_meas_flag_r14_present = false; bool high_speed_enhanced_demod_flag_r14_present = false; @@ -5342,7 +5260,6 @@ struct high_speed_cfg_v1530_s { // InterFreqCarrierFreqInfo ::= SEQUENCE struct inter_freq_carrier_freq_info_s { struct thresh_x_q_r9_s_ { - // member variables uint8_t thresh_x_high_q_r9 = 0; uint8_t thresh_x_low_q_r9 = 0; }; @@ -5355,7 +5272,7 @@ struct inter_freq_carrier_freq_info_s { bool q_offset_freq_present = false; bool inter_freq_neigh_cell_list_present = false; bool inter_freq_black_cell_list_present = false; - uint16_t dl_carrier_freq = 0; + uint32_t dl_carrier_freq = 0; int8_t q_rx_lev_min = -70; int8_t p_max = -30; uint8_t t_resel_eutra = 0; @@ -5387,7 +5304,6 @@ struct inter_freq_carrier_freq_info_s { // InterFreqCarrierFreqInfo-r12 ::= SEQUENCE struct inter_freq_carrier_freq_info_r12_s { struct thresh_x_q_r12_s_ { - // member variables uint8_t thresh_x_high_q_r12 = 0; uint8_t thresh_x_low_q_r12 = 0; }; @@ -5435,7 +5351,6 @@ struct inter_freq_carrier_freq_info_r12_s { // InterFreqCarrierFreqInfo-v1250 ::= SEQUENCE struct inter_freq_carrier_freq_info_v1250_s { - // member variables bool reduced_meas_performance_r12_present = false; bool q_qual_min_rsrq_on_all_symbols_r12_present = false; int8_t q_qual_min_rsrq_on_all_symbols_r12 = -34; @@ -5448,7 +5363,6 @@ struct inter_freq_carrier_freq_info_v1250_s { // InterFreqCarrierFreqInfo-v1310 ::= SEQUENCE struct inter_freq_carrier_freq_info_v1310_s { - // member variables bool cell_resel_sub_prio_r13_present = false; bool redist_inter_freq_info_r13_present = false; bool cell_sel_info_ce_r13_present = false; @@ -5466,7 +5380,6 @@ struct inter_freq_carrier_freq_info_v1310_s { // InterFreqCarrierFreqInfo-v1350 ::= SEQUENCE struct inter_freq_carrier_freq_info_v1350_s { - // member variables bool cell_sel_info_ce1_r13_present = false; cell_sel_info_ce1_r13_s cell_sel_info_ce1_r13; @@ -5478,7 +5391,6 @@ struct inter_freq_carrier_freq_info_v1350_s { // InterFreqCarrierFreqInfo-v1530 ::= SEQUENCE struct inter_freq_carrier_freq_info_v1530_s { - // member variables bool inter_freq_neigh_hsdn_cell_list_r15_present = false; bool cell_sel_info_ce_v1530_present = false; bool hsdn_ind_r15 = false; @@ -5493,7 +5405,6 @@ struct inter_freq_carrier_freq_info_v1530_s { // InterFreqCarrierFreqInfo-v8h0 ::= SEQUENCE struct inter_freq_carrier_freq_info_v8h0_s { - // member variables bool multi_band_info_list_present = false; multi_band_info_list_l multi_band_info_list; @@ -5505,7 +5416,6 @@ struct inter_freq_carrier_freq_info_v8h0_s { // IntraFreqNeighCellInfo ::= SEQUENCE struct intra_freq_neigh_cell_info_s { - // member variables bool ext = false; uint16_t pci = 0; q_offset_range_e q_offset_cell; @@ -5539,7 +5449,6 @@ struct mbms_carrier_type_r14_s { // MBMS-SAI-InterFreq-r11 ::= SEQUENCE struct mbms_sai_inter_freq_r11_s { - // member variables uint32_t dl_carrier_freq_r11 = 0; mbms_sai_list_r11_l mbms_sai_list_r11; @@ -5551,7 +5460,6 @@ struct mbms_sai_inter_freq_r11_s { // MBMS-SAI-InterFreq-v1140 ::= SEQUENCE struct mbms_sai_inter_freq_v1140_s { - // member variables bool multi_band_info_list_r11_present = false; multi_band_info_list_r11_l multi_band_info_list_r11; @@ -5640,7 +5548,7 @@ struct mbsfn_area_info_r9_s { // member variables bool ext = false; - uint8_t mbsfn_area_id_r9 = 0; + uint16_t mbsfn_area_id_r9 = 0; non_mbsfn_region_len_e_ non_mbsfn_region_len; uint8_t notif_ind_r9 = 0; mcch_cfg_r9_s_ mcch_cfg_r9; @@ -5719,8 +5627,8 @@ struct mbsfn_sf_cfg_s { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -5791,8 +5699,8 @@ struct mbsfn_sf_cfg_v1430_s { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -5807,10 +5715,10 @@ struct mbsfn_sf_cfg_v1430_s { }; // NeighCellListCDMA2000 ::= SEQUENCE (SIZE (1..16)) OF NeighCellCDMA2000 -typedef dyn_array neigh_cell_list_cdma2000_l; +using neigh_cell_list_cdma2000_l = dyn_array; // NeighCellListCDMA2000-v920 ::= SEQUENCE (SIZE (1..16)) OF NeighCellCDMA2000-v920 -typedef dyn_array neigh_cell_list_cdma2000_v920_l; +using neigh_cell_list_cdma2000_v920_l = dyn_array; // PCCH-Config ::= SEQUENCE struct pcch_cfg_s { @@ -5885,7 +5793,6 @@ struct pcch_cfg_v1310_s { // PDSCH-ConfigCommon ::= SEQUENCE struct pdsch_cfg_common_s { - // member variables int8_t ref_sig_pwr = -60; uint8_t p_b = 0; @@ -5928,7 +5835,6 @@ struct pdsch_cfg_common_v1310_s { // PLMN-Info-r15 ::= SEQUENCE struct plmn_info_r15_s { - // member variables bool upper_layer_ind_r15_present = false; // sequence methods @@ -5939,7 +5845,6 @@ struct plmn_info_r15_s { // PRACH-Config-v1430 ::= SEQUENCE struct prach_cfg_v1430_s { - // member variables uint16_t root_seq_idx_high_speed_r14 = 0; uint8_t zero_correlation_zone_cfg_high_speed_r14 = 0; uint8_t prach_cfg_idx_high_speed_r14 = 0; @@ -5953,7 +5858,6 @@ struct prach_cfg_v1430_s { // PRACH-ConfigSIB ::= SEQUENCE struct prach_cfg_sib_s { - // member variables uint16_t root_seq_idx = 0; prach_cfg_info_s prach_cfg_info; @@ -6033,8 +5937,8 @@ struct prach_cfg_sib_v1310_s { } private: - types type_; - choice_buffer_t c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -6055,7 +5959,7 @@ struct prach_cfg_sib_v1310_s { // PRACH-ConfigSIB-v1530 ::= SEQUENCE struct prach_cfg_sib_v1530_s { - typedef dyn_array edt_prach_params_list_ce_r15_l_; + using edt_prach_params_list_ce_r15_l_ = dyn_array; // member variables edt_prach_params_list_ce_r15_l_ edt_prach_params_list_ce_r15; @@ -6079,8 +5983,8 @@ struct pucch_cfg_common_s { // member variables delta_pucch_shift_e_ delta_pucch_shift; - uint8_t n_rb_cqi = 0; - uint8_t n_cs_an = 0; + uint8_t nrb_cqi = 0; + uint8_t ncs_an = 0; uint16_t n1_pucch_an = 0; // sequence methods @@ -6404,7 +6308,6 @@ struct rss_cfg_r15_s { // ReferenceTime-r15 ::= SEQUENCE struct ref_time_r15_s { - // member variables uint32_t ref_days_r15 = 0; uint32_t ref_seconds_r15 = 0; uint16_t ref_milli_seconds_r15 = 0; @@ -6523,13 +6426,13 @@ struct sib8_per_plmn_r11_s { void to_json(json_writer& j) const; }; -// SL-AnchorCarrierFreqList-V2X-r14 ::= SEQUENCE (SIZE (1..maxFreqV2X-r14)) OF INTEGER -typedef bounded_array sl_anchor_carrier_freq_list_v2x_r14_l; +// SL-AnchorCarrierFreqList-V2X-r14 ::= SEQUENCE (SIZE (1..8)) OF INTEGER (0..262143) +using sl_anchor_carrier_freq_list_v2x_r14_l = bounded_array; // SL-CBR-CommonTxConfigList-r14 ::= SEQUENCE struct sl_cbr_common_tx_cfg_list_r14_s { - typedef dyn_array cbr_range_common_cfg_list_r14_l_; - typedef dyn_array sl_cbr_pssch_tx_cfg_list_r14_l_; + using cbr_range_common_cfg_list_r14_l_ = dyn_array; + using sl_cbr_pssch_tx_cfg_list_r14_l_ = dyn_array; // member variables cbr_range_common_cfg_list_r14_l_ cbr_range_common_cfg_list_r14; @@ -6543,7 +6446,6 @@ struct sl_cbr_common_tx_cfg_list_r14_s { // SL-CarrierFreqInfo-r12 ::= SEQUENCE struct sl_carrier_freq_info_r12_s { - // member variables bool plmn_id_list_r12_present = false; uint32_t carrier_freq_r12 = 0; plmn_id_list4_r12_l plmn_id_list_r12; @@ -6556,7 +6458,6 @@ struct sl_carrier_freq_info_r12_s { // SL-CarrierFreqInfo-v1310 ::= SEQUENCE struct sl_carrier_freq_info_v1310_s { - // member variables bool ext = false; bool disc_res_non_ps_r13_present = false; bool disc_res_ps_r13_present = false; @@ -6575,19 +6476,16 @@ struct sl_carrier_freq_info_v1310_s { // SL-CommResourcePool-r12 ::= SEQUENCE struct sl_comm_res_pool_r12_s { struct ue_sel_res_cfg_r12_s_ { - // member variables - bool trpt_subset_r12_present = false; - sl_tf_res_cfg_r12_s data_tf_res_cfg_r12; - dyn_bitstring trpt_subset_r12; + bool trpt_subset_r12_present = false; + sl_tf_res_cfg_r12_s data_tf_res_cfg_r12; + bounded_bitstring<3, 5> trpt_subset_r12; }; struct rx_params_ncell_r12_s_ { - // member variables bool tdd_cfg_r12_present = false; tdd_cfg_s tdd_cfg_r12; uint8_t sync_cfg_idx_r12 = 0; }; struct tx_params_r12_s_ { - // member variables sl_tx_params_r12_s sc_tx_params_r12; sl_tx_params_r12_s data_tx_params_r12; }; @@ -6615,13 +6513,13 @@ struct sl_comm_res_pool_r12_s { void to_json(json_writer& j) const; }; -// SL-InterFreqInfoListV2X-r14 ::= SEQUENCE (SIZE (0..maxFreqV2X-1-r14)) OF SL-InterFreqInfoV2X-r14 -typedef dyn_array sl_inter_freq_info_list_v2x_r14_l; +// SL-InterFreqInfoListV2X-r14 ::= SEQUENCE (SIZE (0..7)) OF SL-InterFreqInfoV2X-r14 +using sl_inter_freq_info_list_v2x_r14_l = dyn_array; // SL-PPPP-TxConfigIndex-r15 ::= SEQUENCE struct sl_pppp_tx_cfg_idx_r15_s { - typedef bounded_array tx_cfg_idx_list_r15_l_; - typedef dyn_array mcs_pssch_range_list_r15_l_; + using tx_cfg_idx_list_r15_l_ = bounded_array; + using mcs_pssch_range_list_r15_l_ = dyn_array; // member variables uint8_t prio_thres_r15 = 1; @@ -6636,11 +6534,11 @@ struct sl_pppp_tx_cfg_idx_r15_s { void to_json(json_writer& j) const; }; -// SL-PPPR-Dest-CarrierFreqList-r15 ::= SEQUENCE (SIZE (1..maxSL-Dest-r12)) OF SL-PPPR-Dest-CarrierFreq -typedef dyn_array sl_pppr_dest_carrier_freq_list_r15_l; +// SL-PPPR-Dest-CarrierFreqList-r15 ::= SEQUENCE (SIZE (1..16)) OF SL-PPPR-Dest-CarrierFreq +using sl_pppr_dest_carrier_freq_list_r15_l = dyn_array; -// SL-SyncConfigListV2X-r14 ::= SEQUENCE (SIZE (1.. maxSL-V2X-SyncConfig-r14)) OF SL-SyncConfig-r12 -typedef dyn_array sl_sync_cfg_list_v2x_r14_l; +// SL-SyncConfigListV2X-r14 ::= SEQUENCE (SIZE (1..16)) OF SL-SyncConfig-r12 +using sl_sync_cfg_list_v2x_r14_l = dyn_array; // SoundingRS-UL-ConfigCommon ::= CHOICE struct srs_ul_cfg_common_c { @@ -6719,7 +6617,6 @@ private: // SystemInformationBlockType1-v10j0-IEs ::= SEQUENCE struct sib_type1_v10j0_ies_s { - // member variables bool freq_band_info_r10_present = false; bool multi_band_info_list_v10j0_present = false; bool non_crit_ext_present = false; @@ -6736,7 +6633,6 @@ struct sib_type1_v10j0_ies_s { // SystemInformationBlockType1-v1250-IEs ::= SEQUENCE struct sib_type1_v1250_ies_s { struct cell_access_related_info_v1250_s_ { - // member variables bool category0_allowed_r12_present = false; }; @@ -6756,7 +6652,6 @@ struct sib_type1_v1250_ies_s { // SystemInformationBlockType2-v9e0-IEs ::= SEQUENCE struct sib_type2_v9e0_ies_s { - // member variables bool ul_carrier_freq_v9e0_present = false; bool non_crit_ext_present = false; uint32_t ul_carrier_freq_v9e0 = 65536; @@ -6770,7 +6665,6 @@ struct sib_type2_v9e0_ies_s { // SystemInformationBlockType3-v10l0-IEs ::= SEQUENCE struct sib_type3_v10l0_ies_s { - // member variables bool freq_band_info_v10l0_present = false; bool multi_band_info_list_v10l0_present = false; bool non_crit_ext_present = false; @@ -6785,7 +6679,7 @@ struct sib_type3_v10l0_ies_s { // SystemInformationBlockType5-v9e0-IEs ::= SEQUENCE struct sib_type5_v9e0_ies_s { - typedef dyn_array inter_freq_carrier_freq_list_v9e0_l_; + using inter_freq_carrier_freq_list_v9e0_l_ = dyn_array; // member variables bool inter_freq_carrier_freq_list_v9e0_present = false; @@ -6884,8 +6778,8 @@ struct uac_barr_per_plmn_r15_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -6903,7 +6797,6 @@ struct uac_barr_per_plmn_r15_s { // UDT-RestrictingPerPLMN-r13 ::= SEQUENCE struct udt_restricting_per_plmn_r13_s { - // member variables bool udt_restricting_r13_present = false; uint8_t plmn_id_idx_r13 = 1; udt_restricting_r13_s udt_restricting_r13; @@ -6926,7 +6819,6 @@ typedef enumerated ul_cp_len_e; // UplinkPowerControlCommon ::= SEQUENCE struct ul_pwr_ctrl_common_s { - // member variables int8_t p0_nominal_pusch = -126; alpha_r12_e alpha; int8_t p0_nominal_pucch = -127; @@ -6978,52 +6870,44 @@ struct ul_pwr_ctrl_common_v1020_s { void to_json(json_writer& j) const; }; -// WLAN-Id-List-r12 ::= SEQUENCE (SIZE (1..maxWLAN-Id-r12)) OF WLAN-Identifiers-r12 -typedef dyn_array wlan_id_list_r12_l; +// WLAN-Id-List-r12 ::= SEQUENCE (SIZE (1..16)) OF WLAN-Identifiers-r12 +using wlan_id_list_r12_l = dyn_array; // WLAN-OffloadConfig-r12 ::= SEQUENCE struct wlan_offload_cfg_r12_s { struct thres_rsrp_r12_s_ { - // member variables uint8_t thres_rsrp_low_r12 = 0; uint8_t thres_rsrp_high_r12 = 0; }; struct thres_rsrq_r12_s_ { - // member variables uint8_t thres_rsrq_low_r12 = 0; uint8_t thres_rsrq_high_r12 = 0; }; struct thres_rsrq_on_all_symbols_with_wb_r12_s_ { - // member variables uint8_t thres_rsrq_on_all_symbols_with_wb_low_r12 = 0; uint8_t thres_rsrq_on_all_symbols_with_wb_high_r12 = 0; }; struct thres_rsrq_on_all_symbols_r12_s_ { - // member variables uint8_t thres_rsrq_on_all_symbols_low_r12 = 0; uint8_t thres_rsrq_on_all_symbols_high_r12 = 0; }; struct thres_rsrq_wb_r12_s_ { - // member variables uint8_t thres_rsrq_wb_low_r12 = 0; uint8_t thres_rsrq_wb_high_r12 = 0; }; struct thres_ch_utilization_r12_s_ { - // member variables - uint8_t thres_ch_utilization_low_r12 = 0; - uint8_t thres_ch_utilization_high_r12 = 0; + uint16_t thres_ch_utilization_low_r12 = 0; + uint16_t thres_ch_utilization_high_r12 = 0; }; struct thres_backhaul_bw_r12_s_ { - // member variables wlan_backhaul_rate_r12_e thres_backhaul_dl_bw_low_r12; wlan_backhaul_rate_r12_e thres_backhaul_dl_bw_high_r12; wlan_backhaul_rate_r12_e thres_backhaul_ul_bw_low_r12; wlan_backhaul_rate_r12_e thres_backhaul_ul_bw_high_r12; }; struct thres_wlan_rssi_r12_s_ { - // member variables - uint8_t thres_wlan_rssi_low_r12 = 0; - uint8_t thres_wlan_rssi_high_r12 = 0; + uint16_t thres_wlan_rssi_low_r12 = 0; + uint16_t thres_wlan_rssi_high_r12 = 0; }; // member variables @@ -7123,12 +7007,11 @@ struct wus_cfg_r15_s { void to_json(json_writer& j) const; }; -// AC-BarringPerPLMN-List-r12 ::= SEQUENCE (SIZE (1.. maxPLMN-r11)) OF AC-BarringPerPLMN-r12 -typedef dyn_array ac_barr_per_plmn_list_r12_l; +// AC-BarringPerPLMN-List-r12 ::= SEQUENCE (SIZE (1..6)) OF AC-BarringPerPLMN-r12 +using ac_barr_per_plmn_list_r12_l = dyn_array; // ACDC-BarringForCommon-r13 ::= SEQUENCE struct acdc_barr_for_common_r13_s { - // member variables bool acdc_hplm_nonly_r13 = false; barr_per_acdc_category_list_r13_l barr_per_acdc_category_list_r13; @@ -7138,15 +7021,14 @@ struct acdc_barr_for_common_r13_s { void to_json(json_writer& j) const; }; -// ACDC-BarringPerPLMN-List-r13 ::= SEQUENCE (SIZE (1.. maxPLMN-r11)) OF ACDC-BarringPerPLMN-r13 -typedef dyn_array acdc_barr_per_plmn_list_r13_l; +// ACDC-BarringPerPLMN-List-r13 ::= SEQUENCE (SIZE (1..6)) OF ACDC-BarringPerPLMN-r13 +using acdc_barr_per_plmn_list_r13_l = dyn_array; -// CIOT-EPS-OptimisationInfo-r13 ::= SEQUENCE (SIZE (1.. maxPLMN-r11)) OF CIOT-OptimisationPLMN-r13 -typedef dyn_array ciot_eps_optim_info_r13_l; +// CIOT-EPS-OptimisationInfo-r13 ::= SEQUENCE (SIZE (1..6)) OF CIOT-OptimisationPLMN-r13 +using ciot_eps_optim_info_r13_l = dyn_array; // CarrierFreqInfoUTRA-v1250 ::= SEQUENCE struct carrier_freq_info_utra_v1250_s { - // member variables bool reduced_meas_performance_r12_present = false; // sequence methods @@ -7155,23 +7037,23 @@ struct carrier_freq_info_utra_v1250_s { void to_json(json_writer& j) const; }; -// CarrierFreqListNR-r15 ::= SEQUENCE (SIZE (1..maxFreq)) OF CarrierFreqNR-r15 -typedef dyn_array carrier_freq_list_nr_r15_l; +// CarrierFreqListNR-r15 ::= SEQUENCE (SIZE (1..8)) OF CarrierFreqNR-r15 +using carrier_freq_list_nr_r15_l = dyn_array; -// CarrierFreqListUTRA-FDD ::= SEQUENCE (SIZE (1..maxUTRA-FDD-Carrier)) OF CarrierFreqUTRA-FDD -typedef dyn_array carrier_freq_list_utra_fdd_l; +// CarrierFreqListUTRA-FDD ::= SEQUENCE (SIZE (1..16)) OF CarrierFreqUTRA-FDD +using carrier_freq_list_utra_fdd_l = dyn_array; -// CarrierFreqListUTRA-FDD-Ext-r12 ::= SEQUENCE (SIZE (1..maxUTRA-FDD-Carrier)) OF CarrierFreqUTRA-FDD-Ext-r12 -typedef dyn_array carrier_freq_list_utra_fdd_ext_r12_l; +// CarrierFreqListUTRA-FDD-Ext-r12 ::= SEQUENCE (SIZE (1..16)) OF CarrierFreqUTRA-FDD-Ext-r12 +using carrier_freq_list_utra_fdd_ext_r12_l = dyn_array; -// CarrierFreqListUTRA-TDD ::= SEQUENCE (SIZE (1..maxUTRA-TDD-Carrier)) OF CarrierFreqUTRA-TDD -typedef dyn_array carrier_freq_list_utra_tdd_l; +// CarrierFreqListUTRA-TDD ::= SEQUENCE (SIZE (1..16)) OF CarrierFreqUTRA-TDD +using carrier_freq_list_utra_tdd_l = dyn_array; -// CarrierFreqListUTRA-TDD-Ext-r12 ::= SEQUENCE (SIZE (1..maxUTRA-TDD-Carrier)) OF CarrierFreqUTRA-TDD-r12 -typedef dyn_array carrier_freq_list_utra_tdd_ext_r12_l; +// CarrierFreqListUTRA-TDD-Ext-r12 ::= SEQUENCE (SIZE (1..16)) OF CarrierFreqUTRA-TDD-r12 +using carrier_freq_list_utra_tdd_ext_r12_l = dyn_array; -// CarrierFreqsInfoListGERAN ::= SEQUENCE (SIZE (1..maxGNFG)) OF CarrierFreqsInfoGERAN -typedef dyn_array carrier_freqs_info_list_geran_l; +// CarrierFreqsInfoListGERAN ::= SEQUENCE (SIZE (1..16)) OF CarrierFreqsInfoGERAN +using carrier_freqs_info_list_geran_l = dyn_array; // CellReselectionInfoCommon-v1460 ::= SEQUENCE struct cell_resel_info_common_v1460_s { @@ -7195,7 +7077,6 @@ struct cell_resel_info_common_v1460_s { // CellReselectionInfoHSDN-r15 ::= SEQUENCE struct cell_resel_info_hsdn_r15_s { - // member variables uint8_t cell_equivalent_size_r15 = 2; // sequence methods @@ -7206,7 +7087,6 @@ struct cell_resel_info_hsdn_r15_s { // CellReselectionParametersCDMA2000 ::= SEQUENCE struct cell_resel_params_cdma2000_s { - // member variables bool t_resel_cdma2000_sf_present = false; band_class_list_cdma2000_l band_class_list; neigh_cell_list_cdma2000_l neigh_cell_list; @@ -7221,7 +7101,6 @@ struct cell_resel_params_cdma2000_s { // CellReselectionParametersCDMA2000-v920 ::= SEQUENCE struct cell_resel_params_cdma2000_v920_s { - // member variables neigh_cell_list_cdma2000_v920_l neigh_cell_list_v920; // sequence methods @@ -7232,7 +7111,6 @@ struct cell_resel_params_cdma2000_v920_s { // CellReselectionServingFreqInfo-v1310 ::= SEQUENCE struct cell_resel_serving_freq_info_v1310_s { - // member variables cell_resel_sub_prio_r13_e cell_resel_sub_prio_r13; // sequence methods @@ -7243,7 +7121,6 @@ struct cell_resel_serving_freq_info_v1310_s { // CellSelectionInfo-v920 ::= SEQUENCE struct cell_sel_info_v920_s { - // member variables bool q_qual_min_offset_r9_present = false; int8_t q_qual_min_r9 = -34; uint8_t q_qual_min_offset_r9 = 1; @@ -7256,7 +7133,6 @@ struct cell_sel_info_v920_s { // EAB-ConfigPLMN-r11 ::= SEQUENCE struct eab_cfg_plmn_r11_s { - // member variables bool eab_cfg_r11_present = false; eab_cfg_r11_s eab_cfg_r11; @@ -7266,50 +7142,50 @@ struct eab_cfg_plmn_r11_s { void to_json(json_writer& j) const; }; -// InterFreqCarrierFreqList ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqCarrierFreqInfo -typedef dyn_array inter_freq_carrier_freq_list_l; +// InterFreqCarrierFreqList ::= SEQUENCE (SIZE (1..8)) OF InterFreqCarrierFreqInfo +using inter_freq_carrier_freq_list_l = dyn_array; -// InterFreqCarrierFreqList-v1250 ::= SEQUENCE (SIZE (1.. maxFreq)) OF InterFreqCarrierFreqInfo-v1250 -typedef dyn_array inter_freq_carrier_freq_list_v1250_l; +// InterFreqCarrierFreqList-v1250 ::= SEQUENCE (SIZE (1..8)) OF InterFreqCarrierFreqInfo-v1250 +using inter_freq_carrier_freq_list_v1250_l = dyn_array; -// InterFreqCarrierFreqList-v1310 ::= SEQUENCE (SIZE (1.. maxFreq)) OF InterFreqCarrierFreqInfo-v1310 -typedef dyn_array inter_freq_carrier_freq_list_v1310_l; +// InterFreqCarrierFreqList-v1310 ::= SEQUENCE (SIZE (1..8)) OF InterFreqCarrierFreqInfo-v1310 +using inter_freq_carrier_freq_list_v1310_l = dyn_array; -// InterFreqCarrierFreqList-v1350 ::= SEQUENCE (SIZE (1.. maxFreq)) OF InterFreqCarrierFreqInfo-v1350 -typedef dyn_array inter_freq_carrier_freq_list_v1350_l; +// InterFreqCarrierFreqList-v1350 ::= SEQUENCE (SIZE (1..8)) OF InterFreqCarrierFreqInfo-v1350 +using inter_freq_carrier_freq_list_v1350_l = dyn_array; -// InterFreqCarrierFreqList-v1530 ::= SEQUENCE (SIZE (1.. maxFreq)) OF InterFreqCarrierFreqInfo-v1530 -typedef dyn_array inter_freq_carrier_freq_list_v1530_l; +// InterFreqCarrierFreqList-v1530 ::= SEQUENCE (SIZE (1..8)) OF InterFreqCarrierFreqInfo-v1530 +using inter_freq_carrier_freq_list_v1530_l = dyn_array; -// InterFreqCarrierFreqListExt-r12 ::= SEQUENCE (SIZE (1.. maxFreq)) OF InterFreqCarrierFreqInfo-r12 -typedef dyn_array inter_freq_carrier_freq_list_ext_r12_l; +// InterFreqCarrierFreqListExt-r12 ::= SEQUENCE (SIZE (1..8)) OF InterFreqCarrierFreqInfo-r12 +using inter_freq_carrier_freq_list_ext_r12_l = dyn_array; -// InterFreqCarrierFreqListExt-v1280 ::= SEQUENCE (SIZE (1.. maxFreq)) OF InterFreqCarrierFreqInfo-v10j0 -typedef dyn_array inter_freq_carrier_freq_list_ext_v1280_l; +// InterFreqCarrierFreqListExt-v1280 ::= SEQUENCE (SIZE (1..8)) OF InterFreqCarrierFreqInfo-v10j0 +using inter_freq_carrier_freq_list_ext_v1280_l = dyn_array; -// InterFreqCarrierFreqListExt-v1310 ::= SEQUENCE (SIZE (1.. maxFreq)) OF InterFreqCarrierFreqInfo-v1310 -typedef dyn_array inter_freq_carrier_freq_list_ext_v1310_l; +// InterFreqCarrierFreqListExt-v1310 ::= SEQUENCE (SIZE (1..8)) OF InterFreqCarrierFreqInfo-v1310 +using inter_freq_carrier_freq_list_ext_v1310_l = dyn_array; -// InterFreqCarrierFreqListExt-v1350 ::= SEQUENCE (SIZE (1.. maxFreq)) OF InterFreqCarrierFreqInfo-v1350 -typedef dyn_array inter_freq_carrier_freq_list_ext_v1350_l; +// InterFreqCarrierFreqListExt-v1350 ::= SEQUENCE (SIZE (1..8)) OF InterFreqCarrierFreqInfo-v1350 +using inter_freq_carrier_freq_list_ext_v1350_l = dyn_array; -// InterFreqCarrierFreqListExt-v1360 ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqCarrierFreqInfo-v1360 -typedef dyn_array inter_freq_carrier_freq_list_ext_v1360_l; +// InterFreqCarrierFreqListExt-v1360 ::= SEQUENCE (SIZE (1..8)) OF InterFreqCarrierFreqInfo-v1360 +using inter_freq_carrier_freq_list_ext_v1360_l = dyn_array; -// InterFreqCarrierFreqListExt-v1530 ::= SEQUENCE (SIZE (1..maxFreq)) OF InterFreqCarrierFreqInfo-v1530 -typedef dyn_array inter_freq_carrier_freq_list_ext_v1530_l; +// InterFreqCarrierFreqListExt-v1530 ::= SEQUENCE (SIZE (1..8)) OF InterFreqCarrierFreqInfo-v1530 +using inter_freq_carrier_freq_list_ext_v1530_l = dyn_array; -// IntraFreqBlackCellList ::= SEQUENCE (SIZE (1..maxCellBlack)) OF PhysCellIdRange -typedef dyn_array intra_freq_black_cell_list_l; +// IntraFreqBlackCellList ::= SEQUENCE (SIZE (1..16)) OF PhysCellIdRange +using intra_freq_black_cell_list_l = dyn_array; -// IntraFreqNeighCellList ::= SEQUENCE (SIZE (1..maxCellIntra)) OF IntraFreqNeighCellInfo -typedef dyn_array intra_freq_neigh_cell_list_l; +// IntraFreqNeighCellList ::= SEQUENCE (SIZE (1..16)) OF IntraFreqNeighCellInfo +using intra_freq_neigh_cell_list_l = dyn_array; -// IntraFreqNeighHSDN-CellList-r15 ::= SEQUENCE (SIZE (1..maxCellIntra)) OF PhysCellIdRange -typedef dyn_array intra_freq_neigh_hsdn_cell_list_r15_l; +// IntraFreqNeighHSDN-CellList-r15 ::= SEQUENCE (SIZE (1..16)) OF PhysCellIdRange +using intra_freq_neigh_hsdn_cell_list_r15_l = dyn_array; -// MBMS-InterFreqCarrierTypeList-r14 ::= SEQUENCE (SIZE (1..maxFreq)) OF MBMS-CarrierType-r14 -typedef dyn_array mbms_inter_freq_carrier_type_list_r14_l; +// MBMS-InterFreqCarrierTypeList-r14 ::= SEQUENCE (SIZE (1..8)) OF MBMS-CarrierType-r14 +using mbms_inter_freq_carrier_type_list_r14_l = dyn_array; // MBMS-NotificationConfig-r9 ::= SEQUENCE struct mbms_notif_cfg_r9_s { @@ -7335,7 +7211,6 @@ struct mbms_notif_cfg_r9_s { // MBMS-NotificationConfig-v1430 ::= SEQUENCE struct mbms_notif_cfg_v1430_s { - // member variables uint8_t notif_sf_idx_v1430 = 7; // sequence methods @@ -7344,24 +7219,23 @@ struct mbms_notif_cfg_v1430_s { void to_json(json_writer& j) const; }; -// MBMS-SAI-InterFreqList-r11 ::= SEQUENCE (SIZE (1..maxFreq)) OF MBMS-SAI-InterFreq-r11 -typedef dyn_array mbms_sai_inter_freq_list_r11_l; +// MBMS-SAI-InterFreqList-r11 ::= SEQUENCE (SIZE (1..8)) OF MBMS-SAI-InterFreq-r11 +using mbms_sai_inter_freq_list_r11_l = dyn_array; -// MBMS-SAI-InterFreqList-v1140 ::= SEQUENCE (SIZE (1..maxFreq)) OF MBMS-SAI-InterFreq-v1140 -typedef dyn_array mbms_sai_inter_freq_list_v1140_l; +// MBMS-SAI-InterFreqList-v1140 ::= SEQUENCE (SIZE (1..8)) OF MBMS-SAI-InterFreq-v1140 +using mbms_sai_inter_freq_list_v1140_l = dyn_array; -// MBSFN-AreaInfoList-r9 ::= SEQUENCE (SIZE(1..maxMBSFN-Area)) OF MBSFN-AreaInfo-r9 -typedef dyn_array mbsfn_area_info_list_r9_l; +// MBSFN-AreaInfoList-r9 ::= SEQUENCE (SIZE (1..8)) OF MBSFN-AreaInfo-r9 +using mbsfn_area_info_list_r9_l = dyn_array; -// MBSFN-SubframeConfigList ::= SEQUENCE (SIZE (1..maxMBSFN-Allocations)) OF MBSFN-SubframeConfig -typedef dyn_array mbsfn_sf_cfg_list_l; +// MBSFN-SubframeConfigList ::= SEQUENCE (SIZE (1..8)) OF MBSFN-SubframeConfig +using mbsfn_sf_cfg_list_l = dyn_array; -// MBSFN-SubframeConfigList-v1430 ::= SEQUENCE (SIZE (1..maxMBSFN-Allocations)) OF MBSFN-SubframeConfig-v1430 -typedef dyn_array mbsfn_sf_cfg_list_v1430_l; +// MBSFN-SubframeConfigList-v1430 ::= SEQUENCE (SIZE (1..8)) OF MBSFN-SubframeConfig-v1430 +using mbsfn_sf_cfg_list_v1430_l = dyn_array; // MeasIdleConfigSIB-r15 ::= SEQUENCE struct meas_idle_cfg_sib_r15_s { - // member variables bool ext = false; eutra_carrier_list_r15_l meas_idle_carrier_list_eutra_r15; // ... @@ -7403,12 +7277,11 @@ struct mob_state_params_s { void to_json(json_writer& j) const; }; -// PLMN-InfoList-r15 ::= SEQUENCE (SIZE (1..maxPLMN-r11)) OF PLMN-Info-r15 -typedef dyn_array plmn_info_list_r15_l; +// PLMN-InfoList-r15 ::= SEQUENCE (SIZE (1..6)) OF PLMN-Info-r15 +using plmn_info_list_r15_l = dyn_array; // RadioResourceConfigCommonSIB ::= SEQUENCE struct rr_cfg_common_sib_s { - // member variables bool ext = false; rach_cfg_common_s rach_cfg_common; bcch_cfg_s bcch_cfg; @@ -7589,10 +7462,10 @@ struct sc_mcch_sched_info_r14_s { assert_choice_type("sf160", type_.to_string(), "schedulingPeriodStartOffsetSCPTM-r14"); return c.get(); } - uint8_t& sf256() + uint16_t& sf256() { assert_choice_type("sf256", type_.to_string(), "schedulingPeriodStartOffsetSCPTM-r14"); - return c.get(); + return c.get(); } uint16_t& sf320() { @@ -7669,10 +7542,10 @@ struct sc_mcch_sched_info_r14_s { assert_choice_type("sf160", type_.to_string(), "schedulingPeriodStartOffsetSCPTM-r14"); return c.get(); } - const uint8_t& sf256() const + const uint16_t& sf256() const { assert_choice_type("sf256", type_.to_string(), "schedulingPeriodStartOffsetSCPTM-r14"); - return c.get(); + return c.get(); } const uint16_t& sf320() const { @@ -7749,10 +7622,10 @@ struct sc_mcch_sched_info_r14_s { set(types::sf160); return c.get(); } - uint8_t& set_sf256() + uint16_t& set_sf256() { set(types::sf256); - return c.get(); + return c.get(); } uint16_t& set_sf320() { @@ -7791,8 +7664,8 @@ struct sc_mcch_sched_info_r14_s { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -7810,29 +7683,29 @@ struct sc_mcch_sched_info_r14_s { void to_json(json_writer& j) const; }; -// SIB-MappingInfo ::= SEQUENCE (SIZE (0..maxSIB-1)) OF SIB-Type -typedef bounded_array sib_map_info_l; +// SIB-MappingInfo ::= SEQUENCE (SIZE (0..31)) OF SIB-Type +using sib_map_info_l = bounded_array; -// SIB8-PerPLMN-List-r11 ::= SEQUENCE (SIZE (1..maxPLMN-r11)) OF SIB8-PerPLMN-r11 -typedef dyn_array sib8_per_plmn_list_r11_l; +// SIB8-PerPLMN-List-r11 ::= SEQUENCE (SIZE (1..6)) OF SIB8-PerPLMN-r11 +using sib8_per_plmn_list_r11_l = dyn_array; // SL-CBR-PPPP-TxConfigList-r15 ::= SEQUENCE (SIZE (1..8)) OF SL-PPPP-TxConfigIndex-r15 -typedef dyn_array sl_cbr_pppp_tx_cfg_list_r15_l; +using sl_cbr_pppp_tx_cfg_list_r15_l = dyn_array; -// SL-CarrierFreqInfoList-r12 ::= SEQUENCE (SIZE (1..maxFreq)) OF SL-CarrierFreqInfo-r12 -typedef dyn_array sl_carrier_freq_info_list_r12_l; +// SL-CarrierFreqInfoList-r12 ::= SEQUENCE (SIZE (1..8)) OF SL-CarrierFreqInfo-r12 +using sl_carrier_freq_info_list_r12_l = dyn_array; -// SL-CarrierFreqInfoList-v1310 ::= SEQUENCE (SIZE (1..maxFreq)) OF SL-CarrierFreqInfo-v1310 -typedef dyn_array sl_carrier_freq_info_list_v1310_l; +// SL-CarrierFreqInfoList-v1310 ::= SEQUENCE (SIZE (1..8)) OF SL-CarrierFreqInfo-v1310 +using sl_carrier_freq_info_list_v1310_l = dyn_array; -// SL-CommRxPoolList-r12 ::= SEQUENCE (SIZE (1..maxSL-RxPool-r12)) OF SL-CommResourcePool-r12 -typedef dyn_array sl_comm_rx_pool_list_r12_l; +// SL-CommRxPoolList-r12 ::= SEQUENCE (SIZE (1..16)) OF SL-CommResourcePool-r12 +using sl_comm_rx_pool_list_r12_l = dyn_array; -// SL-CommTxPoolList-r12 ::= SEQUENCE (SIZE (1..maxSL-TxPool-r12)) OF SL-CommResourcePool-r12 -typedef dyn_array sl_comm_tx_pool_list_r12_l; +// SL-CommTxPoolList-r12 ::= SEQUENCE (SIZE (1..4)) OF SL-CommResourcePool-r12 +using sl_comm_tx_pool_list_r12_l = dyn_array; -// SL-CommTxPoolListExt-r13 ::= SEQUENCE (SIZE (1..maxSL-TxPool-v1310)) OF SL-CommResourcePool-r12 -typedef dyn_array sl_comm_tx_pool_list_ext_r13_l; +// SL-CommTxPoolListExt-r13 ::= SEQUENCE (SIZE (1..4)) OF SL-CommResourcePool-r12 +using sl_comm_tx_pool_list_ext_r13_l = dyn_array; // SL-DiscConfigRelayUE-r13 ::= SEQUENCE struct sl_disc_cfg_relay_ue_r13_s { @@ -7893,12 +7766,11 @@ struct sl_disc_cfg_remote_ue_r13_s { void to_json(json_writer& j) const; }; -// SL-SyncConfigList-r12 ::= SEQUENCE (SIZE (1..maxSL-SyncConfig-r12)) OF SL-SyncConfig-r12 -typedef dyn_array sl_sync_cfg_list_r12_l; +// SL-SyncConfigList-r12 ::= SEQUENCE (SIZE (1..16)) OF SL-SyncConfig-r12 +using sl_sync_cfg_list_r12_l = dyn_array; // SL-V2X-ConfigCommon-r14 ::= SEQUENCE struct sl_v2x_cfg_common_r14_s { - // member variables bool v2x_comm_rx_pool_r14_present = false; bool v2x_comm_tx_pool_normal_common_r14_present = false; bool p2x_comm_tx_pool_normal_common_r14_present = false; @@ -7934,7 +7806,6 @@ struct sl_v2x_cfg_common_r14_s { // SL-V2X-PacketDuplicationConfig-r15 ::= SEQUENCE struct sl_v2x_packet_dupl_cfg_r15_s { - // member variables bool ext = false; bool allowed_carrier_freq_cfg_r15_present = false; uint8_t thresh_sl_reliability_r15 = 1; @@ -7947,12 +7818,11 @@ struct sl_v2x_packet_dupl_cfg_r15_s { void to_json(json_writer& j) const; }; -// SL-V2X-SyncFreqList-r15 ::= SEQUENCE (SIZE (1..maxFreqV2X-r14)) OF INTEGER -typedef bounded_array sl_v2x_sync_freq_list_r15_l; +// SL-V2X-SyncFreqList-r15 ::= SEQUENCE (SIZE (1..8)) OF INTEGER (0..262143) +using sl_v2x_sync_freq_list_r15_l = bounded_array; // SystemInformationBlockType1-v1130-IEs ::= SEQUENCE struct sib_type1_v1130_ies_s { - // member variables bool tdd_cfg_v1130_present = false; bool cell_sel_info_v1130_present = false; bool non_crit_ext_present = false; @@ -7968,7 +7838,6 @@ struct sib_type1_v1130_ies_s { // SystemInformationBlockType1-v9e0-IEs ::= SEQUENCE struct sib_type1_v9e0_ies_s { - // member variables bool freq_band_ind_v9e0_present = false; bool multi_band_info_list_v9e0_present = false; bool non_crit_ext_present = false; @@ -7984,7 +7853,7 @@ struct sib_type1_v9e0_ies_s { // SystemInformationBlockType2-v8h0-IEs ::= SEQUENCE struct sib_type2_v8h0_ies_s { - typedef bounded_array multi_band_info_list_l_; + using multi_band_info_list_l_ = bounded_array; // member variables bool multi_band_info_list_present = false; @@ -8000,7 +7869,6 @@ struct sib_type2_v8h0_ies_s { // SystemInformationBlockType3-v10j0-IEs ::= SEQUENCE struct sib_type3_v10j0_ies_s { - // member variables bool freq_band_info_r10_present = false; bool multi_band_info_list_v10j0_present = false; bool non_crit_ext_present = false; @@ -8016,7 +7884,7 @@ struct sib_type3_v10j0_ies_s { // SystemInformationBlockType5-v8h0-IEs ::= SEQUENCE struct sib_type5_v8h0_ies_s { - typedef dyn_array inter_freq_carrier_freq_list_v8h0_l_; + using inter_freq_carrier_freq_list_v8h0_l_ = dyn_array; // member variables bool inter_freq_carrier_freq_list_v8h0_present = false; @@ -8032,7 +7900,7 @@ struct sib_type5_v8h0_ies_s { // SystemInformationBlockType6-v8h0-IEs ::= SEQUENCE struct sib_type6_v8h0_ies_s { - typedef dyn_array carrier_freq_list_utra_fdd_v8h0_l_; + using carrier_freq_list_utra_fdd_v8h0_l_ = dyn_array; // member variables bool carrier_freq_list_utra_fdd_v8h0_present = false; @@ -8057,7 +7925,6 @@ typedef enumerated time_align_timer_e; // TimeReferenceInfo-r15 ::= SEQUENCE struct time_ref_info_r15_s { - // member variables bool uncertainty_r15_present = false; bool time_info_type_r15_present = false; bool ref_sfn_r15_present = false; @@ -8079,14 +7946,14 @@ struct uac_ac1_select_assist_info_r15_opts { }; typedef enumerated uac_ac1_select_assist_info_r15_e; -// UAC-BarringInfoSetList-r15 ::= SEQUENCE (SIZE (1..maxBarringInfoSet-r15)) OF UAC-BarringInfoSet-r15 -typedef dyn_array uac_barr_info_set_list_r15_l; +// UAC-BarringInfoSetList-r15 ::= SEQUENCE (SIZE (1..8)) OF UAC-BarringInfoSet-r15 +using uac_barr_info_set_list_r15_l = dyn_array; -// UAC-BarringPerPLMN-List-r15 ::= SEQUENCE (SIZE (1.. maxPLMN-r11)) OF UAC-BarringPerPLMN-r15 -typedef dyn_array uac_barr_per_plmn_list_r15_l; +// UAC-BarringPerPLMN-List-r15 ::= SEQUENCE (SIZE (1..6)) OF UAC-BarringPerPLMN-r15 +using uac_barr_per_plmn_list_r15_l = dyn_array; -// UDT-RestrictingPerPLMN-List-r13 ::= SEQUENCE (SIZE (1..maxPLMN-r11)) OF UDT-RestrictingPerPLMN-r13 -typedef dyn_array udt_restricting_per_plmn_list_r13_l; +// UDT-RestrictingPerPLMN-List-r13 ::= SEQUENCE (SIZE (1..6)) OF UDT-RestrictingPerPLMN-r13 +using udt_restricting_per_plmn_list_r13_l = dyn_array; // UE-TimersAndConstants ::= SEQUENCE struct ue_timers_and_consts_s { @@ -8200,7 +8067,6 @@ struct ue_timers_and_consts_s { // WLAN-OffloadInfoPerPLMN-r12 ::= SEQUENCE struct wlan_offload_info_per_plmn_r12_s { - // member variables bool ext = false; bool wlan_offload_cfg_common_r12_present = false; bool wlan_id_list_r12_present = false; @@ -8237,7 +8103,6 @@ struct sched_info_s { // SystemInformation-v8a0-IEs ::= SEQUENCE struct sys_info_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -8250,7 +8115,6 @@ struct sys_info_v8a0_ies_s { // SystemInformationBlockPos-r15 ::= SEQUENCE struct sib_pos_r15_s { - // member variables bool ext = false; bool late_non_crit_ext_present = false; dyn_octstring assist_data_sib_elem_r15; @@ -8265,7 +8129,6 @@ struct sib_pos_r15_s { // SystemInformationBlockType1-v8h0-IEs ::= SEQUENCE struct sib_type1_v8h0_ies_s { - // member variables bool multi_band_info_list_present = false; bool non_crit_ext_present = false; multi_band_info_list_l multi_band_info_list; @@ -8279,7 +8142,6 @@ struct sib_type1_v8h0_ies_s { // SystemInformationBlockType1-v920-IEs ::= SEQUENCE struct sib_type1_v920_ies_s { - // member variables bool ims_emergency_support_r9_present = false; bool cell_sel_info_v920_present = false; bool non_crit_ext_present = false; @@ -8294,7 +8156,6 @@ struct sib_type1_v920_ies_s { // SystemInformationBlockType10 ::= SEQUENCE struct sib_type10_s { - // member variables bool ext = false; bool dummy_present = false; fixed_bitstring<16> msg_id; @@ -8372,7 +8233,6 @@ struct sib_type12_r9_s { // SystemInformationBlockType13-r9 ::= SEQUENCE struct sib_type13_r9_s { - // member variables bool ext = false; bool late_non_crit_ext_present = false; mbsfn_area_info_list_r9_l mbsfn_area_info_list_r9; @@ -8391,7 +8251,7 @@ struct sib_type13_r9_s { // SystemInformationBlockType14-r11 ::= SEQUENCE struct sib_type14_r11_s { struct eab_param_r11_c_ { - typedef dyn_array eab_per_plmn_list_r11_l_; + using eab_per_plmn_list_r11_l_ = dyn_array; struct types_opts { enum options { eab_common_r11, eab_per_plmn_list_r11, nulltype } value; @@ -8442,8 +8302,8 @@ struct sib_type14_r11_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -8475,7 +8335,6 @@ struct sib_type14_r11_s { // SystemInformationBlockType15-r11 ::= SEQUENCE struct sib_type15_r11_s { - // member variables bool ext = false; bool mbms_sai_intra_freq_r11_present = false; bool mbms_sai_inter_freq_list_r11_present = false; @@ -8499,7 +8358,6 @@ struct sib_type15_r11_s { // SystemInformationBlockType16-r11 ::= SEQUENCE struct sib_type16_r11_s { struct time_info_r11_s_ { - // member variables bool day_light_saving_time_r11_present = false; bool leap_seconds_r11_present = false; bool local_time_offset_r11_present = false; @@ -8527,7 +8385,7 @@ struct sib_type16_r11_s { // SystemInformationBlockType17-r12 ::= SEQUENCE struct sib_type17_r12_s { - typedef dyn_array wlan_offload_info_per_plmn_list_r12_l_; + using wlan_offload_info_per_plmn_list_r12_l_ = dyn_array; // member variables bool ext = false; @@ -8546,7 +8404,6 @@ struct sib_type17_r12_s { // SystemInformationBlockType18-r12 ::= SEQUENCE struct sib_type18_r12_s { struct comm_cfg_r12_s_ { - // member variables bool comm_tx_pool_normal_common_r12_present = false; bool comm_tx_pool_exceptional_r12_present = false; bool comm_sync_cfg_r12_present = false; @@ -8577,7 +8434,6 @@ struct sib_type18_r12_s { // SystemInformationBlockType19-r12 ::= SEQUENCE struct sib_type19_r12_s { struct disc_cfg_r12_s_ { - // member variables bool disc_tx_pool_common_r12_present = false; bool disc_tx_pwr_info_r12_present = false; bool disc_sync_cfg_r12_present = false; @@ -8587,18 +8443,15 @@ struct sib_type19_r12_s { sl_sync_cfg_list_r12_l disc_sync_cfg_r12; }; struct disc_cfg_v1310_s_ { - // member variables bool disc_inter_freq_list_v1310_present = false; bool gap_requests_allowed_common_present = false; sl_carrier_freq_info_list_v1310_l disc_inter_freq_list_v1310; }; struct disc_cfg_relay_r13_s_ { - // member variables sl_disc_cfg_relay_ue_r13_s relay_ue_cfg_r13; sl_disc_cfg_remote_ue_r13_s remote_ue_cfg_r13; }; struct disc_cfg_ps_minus13_s_ { - // member variables bool disc_tx_pool_ps_common_r13_present = false; sl_disc_rx_pool_list_r12_l disc_rx_pool_ps_r13; sl_disc_tx_pool_list_r12_l disc_tx_pool_ps_common_r13; @@ -8627,7 +8480,6 @@ struct sib_type19_r12_s { // SystemInformationBlockType2 ::= SEQUENCE struct sib_type2_s { struct ac_barr_info_s_ { - // member variables bool ac_barr_for_mo_sig_present = false; bool ac_barr_for_mo_data_present = false; bool ac_barr_for_emergency = false; @@ -8647,7 +8499,7 @@ struct sib_type2_s { // member variables bool ul_carrier_freq_present = false; bool ul_bw_present = false; - uint16_t ul_carrier_freq = 0; + uint32_t ul_carrier_freq = 0; ul_bw_e_ ul_bw; uint8_t add_spec_emission = 1; }; @@ -8684,7 +8536,7 @@ struct sib_type2_s { bool use_full_resume_id_r13_present = false; copy_ptr udt_restricting_for_common_r13; copy_ptr udt_restricting_per_plmn_list_r13; - copy_ptr c_io_t_eps_optim_info_r13; + copy_ptr cio_t_eps_optim_info_r13; // group 6 bool unicast_freq_hop_ind_r13_present = false; // group 7 @@ -8817,8 +8669,8 @@ struct sib_type20_r13_s { } private: - types type_; - choice_buffer_t c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -8919,7 +8771,6 @@ struct sib_type20_r13_s { // SystemInformationBlockType21-r14 ::= SEQUENCE struct sib_type21_r14_s { - // member variables bool ext = false; bool sl_v2x_cfg_common_r14_present = false; bool late_non_crit_ext_present = false; @@ -8935,7 +8786,6 @@ struct sib_type21_r14_s { // SystemInformationBlockType24-r15 ::= SEQUENCE struct sib_type24_r15_s { - // member variables bool ext = false; bool carrier_freq_list_nr_r15_present = false; bool t_resel_nr_sf_r15_present = false; @@ -8955,7 +8805,7 @@ struct sib_type24_r15_s { // SystemInformationBlockType25-r15 ::= SEQUENCE struct sib_type25_r15_s { struct uac_ac1_select_assist_info_r15_c_ { - typedef bounded_array individual_plmn_list_r15_l_; + using individual_plmn_list_r15_l_ = bounded_array; struct types_opts { enum options { plmn_common_r15, individual_plmn_list_r15, nulltype } value; @@ -9006,8 +8856,8 @@ struct sib_type25_r15_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -9033,7 +8883,6 @@ struct sib_type25_r15_s { // SystemInformationBlockType26-r15 ::= SEQUENCE struct sib_type26_r15_s { - // member variables bool ext = false; bool v2x_inter_freq_info_list_r15_present = false; bool cbr_pssch_tx_cfg_list_r15_present = false; @@ -9120,14 +8969,12 @@ struct sib_type3_s { speed_state_resel_pars_s_ speed_state_resel_pars; }; struct cell_resel_serving_freq_info_s_ { - // member variables bool s_non_intra_search_present = false; uint8_t s_non_intra_search = 0; uint8_t thresh_serving_low = 0; uint8_t cell_resel_prio = 0; }; struct intra_freq_cell_resel_info_s_ { - // member variables bool p_max_present = false; bool s_intra_search_present = false; bool allowed_meas_bw_present = false; @@ -9142,12 +8989,10 @@ struct sib_type3_s { speed_state_scale_factors_s t_resel_eutra_sf; }; struct s_intra_search_v920_s_ { - // member variables uint8_t s_intra_search_p_r9 = 0; uint8_t s_intra_search_q_r9 = 0; }; struct s_non_intra_search_v920_s_ { - // member variables uint8_t s_non_intra_search_p_r9 = 0; uint8_t s_non_intra_search_q_r9 = 0; }; @@ -9198,7 +9043,6 @@ struct sib_type3_s { // SystemInformationBlockType4 ::= SEQUENCE struct sib_type4_s { - // member variables bool ext = false; bool intra_freq_neigh_cell_list_present = false; bool intra_freq_black_cell_list_present = false; @@ -9220,7 +9064,6 @@ struct sib_type4_s { // SystemInformationBlockType5 ::= SEQUENCE struct sib_type5_s { - // member variables bool ext = false; inter_freq_carrier_freq_list_l inter_freq_carrier_freq_list; // ... @@ -9255,8 +9098,8 @@ struct sib_type5_s { // SystemInformationBlockType6 ::= SEQUENCE struct sib_type6_s { - typedef dyn_array carrier_freq_list_utra_fdd_v1250_l_; - typedef dyn_array carrier_freq_list_utra_tdd_v1250_l_; + using carrier_freq_list_utra_fdd_v1250_l_ = dyn_array; + using carrier_freq_list_utra_tdd_v1250_l_ = dyn_array; // member variables bool ext = false; @@ -9284,7 +9127,6 @@ struct sib_type6_s { // SystemInformationBlockType7 ::= SEQUENCE struct sib_type7_s { - // member variables bool ext = false; bool t_resel_geran_sf_present = false; bool carrier_freqs_info_list_present = false; @@ -9304,13 +9146,11 @@ struct sib_type7_s { // SystemInformationBlockType8 ::= SEQUENCE struct sib_type8_s { struct params_hrpd_s_ { - // member variables bool cell_resel_params_hrpd_present = false; pre_regist_info_hrpd_s pre_regist_info_hrpd; cell_resel_params_cdma2000_s cell_resel_params_hrpd; }; struct params1_xrtt_s_ { - // member variables bool csfb_regist_param1_xrtt_present = false; bool long_code_state1_xrtt_present = false; bool cell_resel_params1_xrtt_present = false; @@ -9352,7 +9192,6 @@ struct sib_type8_s { // SystemInformationBlockType9 ::= SEQUENCE struct sib_type9_s { - // member variables bool ext = false; bool hnb_name_present = false; dyn_octstring hnb_name; @@ -9824,12 +9663,12 @@ struct pos_sys_info_r15_ies_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; - typedef dyn_array pos_sib_type_and_info_r15_l_; + using pos_sib_type_and_info_r15_l_ = dyn_array; // member variables bool late_non_crit_ext_present = false; @@ -9843,8 +9682,8 @@ struct pos_sys_info_r15_ies_s { void to_json(json_writer& j) const; }; -// SchedulingInfoList ::= SEQUENCE (SIZE (1..maxSI-Message)) OF SchedulingInfo -typedef dyn_array sched_info_list_l; +// SchedulingInfoList ::= SEQUENCE (SIZE (1..32)) OF SchedulingInfo +using sched_info_list_l = dyn_array; struct sib_info_item_c { struct types_opts { @@ -9895,232 +9734,232 @@ struct sib_info_item_c { // getters sib_type2_s& sib2() { - assert_choice_type("sib2", type_.to_string(), ""); + assert_choice_type("sib2", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type3_s& sib3() { - assert_choice_type("sib3", type_.to_string(), ""); + assert_choice_type("sib3", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type4_s& sib4() { - assert_choice_type("sib4", type_.to_string(), ""); + assert_choice_type("sib4", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type5_s& sib5() { - assert_choice_type("sib5", type_.to_string(), ""); + assert_choice_type("sib5", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type6_s& sib6() { - assert_choice_type("sib6", type_.to_string(), ""); + assert_choice_type("sib6", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type7_s& sib7() { - assert_choice_type("sib7", type_.to_string(), ""); + assert_choice_type("sib7", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type8_s& sib8() { - assert_choice_type("sib8", type_.to_string(), ""); + assert_choice_type("sib8", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type9_s& sib9() { - assert_choice_type("sib9", type_.to_string(), ""); + assert_choice_type("sib9", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type10_s& sib10() { - assert_choice_type("sib10", type_.to_string(), ""); + assert_choice_type("sib10", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type11_s& sib11() { - assert_choice_type("sib11", type_.to_string(), ""); + assert_choice_type("sib11", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type12_r9_s& sib12_v920() { - assert_choice_type("sib12-v920", type_.to_string(), ""); + assert_choice_type("sib12-v920", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type13_r9_s& sib13_v920() { - assert_choice_type("sib13-v920", type_.to_string(), ""); + assert_choice_type("sib13-v920", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type14_r11_s& sib14_v1130() { - assert_choice_type("sib14-v1130", type_.to_string(), ""); + assert_choice_type("sib14-v1130", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type15_r11_s& sib15_v1130() { - assert_choice_type("sib15-v1130", type_.to_string(), ""); + assert_choice_type("sib15-v1130", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type16_r11_s& sib16_v1130() { - assert_choice_type("sib16-v1130", type_.to_string(), ""); + assert_choice_type("sib16-v1130", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type17_r12_s& sib17_v1250() { - assert_choice_type("sib17-v1250", type_.to_string(), ""); + assert_choice_type("sib17-v1250", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type18_r12_s& sib18_v1250() { - assert_choice_type("sib18-v1250", type_.to_string(), ""); + assert_choice_type("sib18-v1250", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type19_r12_s& sib19_v1250() { - assert_choice_type("sib19-v1250", type_.to_string(), ""); + assert_choice_type("sib19-v1250", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type20_r13_s& sib20_v1310() { - assert_choice_type("sib20-v1310", type_.to_string(), ""); + assert_choice_type("sib20-v1310", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type21_r14_s& sib21_v1430() { - assert_choice_type("sib21-v1430", type_.to_string(), ""); + assert_choice_type("sib21-v1430", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type24_r15_s& sib24_v1530() { - assert_choice_type("sib24-v1530", type_.to_string(), ""); + assert_choice_type("sib24-v1530", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type25_r15_s& sib25_v1530() { - assert_choice_type("sib25-v1530", type_.to_string(), ""); + assert_choice_type("sib25-v1530", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type26_r15_s& sib26_v1530() { - assert_choice_type("sib26-v1530", type_.to_string(), ""); + assert_choice_type("sib26-v1530", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type2_s& sib2() const { - assert_choice_type("sib2", type_.to_string(), ""); + assert_choice_type("sib2", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type3_s& sib3() const { - assert_choice_type("sib3", type_.to_string(), ""); + assert_choice_type("sib3", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type4_s& sib4() const { - assert_choice_type("sib4", type_.to_string(), ""); + assert_choice_type("sib4", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type5_s& sib5() const { - assert_choice_type("sib5", type_.to_string(), ""); + assert_choice_type("sib5", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type6_s& sib6() const { - assert_choice_type("sib6", type_.to_string(), ""); + assert_choice_type("sib6", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type7_s& sib7() const { - assert_choice_type("sib7", type_.to_string(), ""); + assert_choice_type("sib7", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type8_s& sib8() const { - assert_choice_type("sib8", type_.to_string(), ""); + assert_choice_type("sib8", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type9_s& sib9() const { - assert_choice_type("sib9", type_.to_string(), ""); + assert_choice_type("sib9", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type10_s& sib10() const { - assert_choice_type("sib10", type_.to_string(), ""); + assert_choice_type("sib10", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type11_s& sib11() const { - assert_choice_type("sib11", type_.to_string(), ""); + assert_choice_type("sib11", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type12_r9_s& sib12_v920() const { - assert_choice_type("sib12-v920", type_.to_string(), ""); + assert_choice_type("sib12-v920", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type13_r9_s& sib13_v920() const { - assert_choice_type("sib13-v920", type_.to_string(), ""); + assert_choice_type("sib13-v920", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type14_r11_s& sib14_v1130() const { - assert_choice_type("sib14-v1130", type_.to_string(), ""); + assert_choice_type("sib14-v1130", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type15_r11_s& sib15_v1130() const { - assert_choice_type("sib15-v1130", type_.to_string(), ""); + assert_choice_type("sib15-v1130", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type16_r11_s& sib16_v1130() const { - assert_choice_type("sib16-v1130", type_.to_string(), ""); + assert_choice_type("sib16-v1130", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type17_r12_s& sib17_v1250() const { - assert_choice_type("sib17-v1250", type_.to_string(), ""); + assert_choice_type("sib17-v1250", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type18_r12_s& sib18_v1250() const { - assert_choice_type("sib18-v1250", type_.to_string(), ""); + assert_choice_type("sib18-v1250", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type19_r12_s& sib19_v1250() const { - assert_choice_type("sib19-v1250", type_.to_string(), ""); + assert_choice_type("sib19-v1250", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type20_r13_s& sib20_v1310() const { - assert_choice_type("sib20-v1310", type_.to_string(), ""); + assert_choice_type("sib20-v1310", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type21_r14_s& sib21_v1430() const { - assert_choice_type("sib21-v1430", type_.to_string(), ""); + assert_choice_type("sib21-v1430", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type24_r15_s& sib24_v1530() const { - assert_choice_type("sib24-v1530", type_.to_string(), ""); + assert_choice_type("sib24-v1530", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type25_r15_s& sib25_v1530() const { - assert_choice_type("sib25-v1530", type_.to_string(), ""); + assert_choice_type("sib25-v1530", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } const sib_type26_r15_s& sib26_v1530() const { - assert_choice_type("sib26-v1530", type_.to_string(), ""); + assert_choice_type("sib26-v1530", type_.to_string(), "sib-TypeAndInfo-item"); return c.get(); } sib_type2_s& set_sib2() @@ -10241,38 +10080,29 @@ struct sib_info_item_c { private: types type_; - choice_buffer_t + choice_buffer_t c; void destroy_(); @@ -10280,8 +10110,8 @@ private: // SystemInformation-r8-IEs ::= SEQUENCE struct sys_info_r8_ies_s { - typedef sib_info_item_c sib_type_and_info_item_c_; - typedef dyn_array sib_type_and_info_l_; + typedef sib_info_item_c sib_type_and_info_item_c_; + using sib_type_and_info_l_ = dyn_array; // member variables bool non_crit_ext_present = false; @@ -10296,7 +10126,6 @@ struct sys_info_r8_ies_s { // SystemInformationBlockType1-v890-IEs ::= SEQUENCE struct sib_type1_v890_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -10347,8 +10176,8 @@ struct sys_info_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -10402,8 +10231,8 @@ struct sys_info_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -10444,7 +10273,6 @@ struct sib_type1_s { fixed_bitstring<27> csg_id; }; struct cell_sel_info_s_ { - // member variables bool q_rx_lev_min_offset_present = false; int8_t q_rx_lev_min = -70; uint8_t q_rx_lev_min_offset = 1; @@ -10533,8 +10361,8 @@ struct bcch_dl_sch_msg_type_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -10575,15 +10403,14 @@ struct bcch_dl_sch_msg_type_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; // BCCH-DL-SCH-Message ::= SEQUENCE struct bcch_dl_sch_msg_s { - // member variables bcch_dl_sch_msg_type_c msg; // sequence methods @@ -10653,8 +10480,8 @@ struct bcch_dl_sch_msg_type_br_r13_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -10695,15 +10522,14 @@ struct bcch_dl_sch_msg_type_br_r13_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; // BCCH-DL-SCH-Message-BR ::= SEQUENCE struct bcch_dl_sch_msg_br_s { - // member variables bcch_dl_sch_msg_type_br_r13_c msg; // sequence methods @@ -10731,8 +10557,8 @@ struct sib_type_mbms_r14_opts { }; typedef enumerated sib_type_mbms_r14_e; -// SIB-MappingInfo-MBMS-r14 ::= SEQUENCE (SIZE (0..maxSIB-1)) OF SIB-Type-MBMS-r14 -typedef bounded_array sib_map_info_mbms_r14_l; +// SIB-MappingInfo-MBMS-r14 ::= SEQUENCE (SIZE (0..31)) OF SIB-Type-MBMS-r14 +using sib_map_info_mbms_r14_l = bounded_array; // SchedulingInfo-MBMS-r14 ::= SEQUENCE struct sched_info_mbms_r14_s { @@ -10777,11 +10603,11 @@ struct non_mbsfn_sf_cfg_r14_s { void to_json(json_writer& j) const; }; -// PLMN-IdentityList-MBMS-r14 ::= SEQUENCE (SIZE (1..maxPLMN-r11)) OF PLMN-Identity -typedef dyn_array plmn_id_list_mbms_r14_l; +// PLMN-IdentityList-MBMS-r14 ::= SEQUENCE (SIZE (1..6)) OF PLMN-Identity +using plmn_id_list_mbms_r14_l = dyn_array; -// SchedulingInfoList-MBMS-r14 ::= SEQUENCE (SIZE (1..maxSI-Message)) OF SchedulingInfo-MBMS-r14 -typedef dyn_array sched_info_list_mbms_r14_l; +// SchedulingInfoList-MBMS-r14 ::= SEQUENCE (SIZE (1..32)) OF SchedulingInfo-MBMS-r14 +using sched_info_list_mbms_r14_l = dyn_array; // SystemInformation-MBMS-r14 ::= SystemInformation typedef sys_info_s sys_info_mbms_r14_s; @@ -10789,7 +10615,6 @@ typedef sys_info_s sys_info_mbms_r14_s; // SystemInformationBlockType1-MBMS-r14 ::= SEQUENCE struct sib_type1_mbms_r14_s { struct cell_access_related_info_r14_s_ { - // member variables plmn_id_list_mbms_r14_l plmn_id_list_r14; fixed_bitstring<16> tac_r14; fixed_bitstring<28> cell_id_r14; @@ -10801,8 +10626,8 @@ struct sib_type1_mbms_r14_s { std::string to_string() const; uint8_t to_number() const; }; - typedef enumerated si_win_len_r14_e_; - typedef dyn_array cell_access_related_info_list_r14_l_; + typedef enumerated si_win_len_r14_e_; + using cell_access_related_info_list_r14_l_ = dyn_array; // member variables bool multi_band_info_list_r14_present = false; @@ -10882,8 +10707,8 @@ struct bcch_dl_sch_msg_type_mbms_r14_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -10924,15 +10749,14 @@ struct bcch_dl_sch_msg_type_mbms_r14_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; // BCCH-DL-SCH-Message-MBMS ::= SEQUENCE struct bcch_dl_sch_msg_mbms_s { - // member variables bcch_dl_sch_msg_type_mbms_r14_c msg; // sequence methods @@ -10955,20 +10779,17 @@ typedef enumerated nzp_freq_density_r14_e; struct p_c_and_cbsr_r13_s { struct cbsr_sel_r13_c_ { struct non_precoded_r13_s_ { - // member variables dyn_bitstring codebook_subset_restrict1_r13; dyn_bitstring codebook_subset_restrict2_r13; }; - struct beamformed_k1a_r13_s_ { - // member variables + struct bf_k1a_r13_s_ { dyn_bitstring codebook_subset_restrict3_r13; }; - struct beamformed_kn_r13_s_ { - // member variables + struct bf_kn_r13_s_ { dyn_bitstring codebook_subset_restrict_r13; }; struct types_opts { - enum options { non_precoded_r13, beamformed_k1a_r13, beamformed_kn_r13, nulltype } value; + enum options { non_precoded_r13, bf_k1a_r13, bf_kn_r13, nulltype } value; typedef uint8_t number_type; std::string to_string() const; @@ -10992,51 +10813,50 @@ struct p_c_and_cbsr_r13_s { assert_choice_type("nonPrecoded-r13", type_.to_string(), "cbsr-Selection-r13"); return c.get(); } - beamformed_k1a_r13_s_& beamformed_k1a_r13() + bf_k1a_r13_s_& bf_k1a_r13() { assert_choice_type("beamformedK1a-r13", type_.to_string(), "cbsr-Selection-r13"); - return c.get(); + return c.get(); } - beamformed_kn_r13_s_& beamformed_kn_r13() + bf_kn_r13_s_& bf_kn_r13() { assert_choice_type("beamformedKN-r13", type_.to_string(), "cbsr-Selection-r13"); - return c.get(); + return c.get(); } const non_precoded_r13_s_& non_precoded_r13() const { assert_choice_type("nonPrecoded-r13", type_.to_string(), "cbsr-Selection-r13"); return c.get(); } - const beamformed_k1a_r13_s_& beamformed_k1a_r13() const + const bf_k1a_r13_s_& bf_k1a_r13() const { assert_choice_type("beamformedK1a-r13", type_.to_string(), "cbsr-Selection-r13"); - return c.get(); + return c.get(); } - const beamformed_kn_r13_s_& beamformed_kn_r13() const + const bf_kn_r13_s_& bf_kn_r13() const { assert_choice_type("beamformedKN-r13", type_.to_string(), "cbsr-Selection-r13"); - return c.get(); + return c.get(); } non_precoded_r13_s_& set_non_precoded_r13() { set(types::non_precoded_r13); return c.get(); } - beamformed_k1a_r13_s_& set_beamformed_k1a_r13() + bf_k1a_r13_s_& set_bf_k1a_r13() { - set(types::beamformed_k1a_r13); - return c.get(); + set(types::bf_k1a_r13); + return c.get(); } - beamformed_kn_r13_s_& set_beamformed_kn_r13() + bf_kn_r13_s_& set_bf_kn_r13() { - set(types::beamformed_kn_r13); - return c.get(); + set(types::bf_kn_r13); + return c.get(); } private: - types type_; - choice_buffer_t - c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -11055,7 +10875,6 @@ struct p_c_and_cbsr_r13_s { // CSI-RS-Config-NZP-v1430 ::= SEQUENCE struct csi_rs_cfg_nzp_v1430_s { - // member variables bool tx_comb_r14_present = false; bool freq_density_r14_present = false; uint8_t tx_comb_r14 = 0; @@ -11107,7 +10926,6 @@ struct csi_rs_cfg_nzp_r11_s { typedef enumerated crs_ports_count_r11_e_; struct mbsfn_sf_cfg_list_r11_c_ { struct setup_s_ { - // member variables mbsfn_sf_cfg_list_l sf_cfg_list; }; typedef setup_e types; @@ -11149,7 +10967,6 @@ struct csi_rs_cfg_nzp_r11_s { }; struct mbsfn_sf_cfg_list_v1430_c_ { struct setup_s_ { - // member variables mbsfn_sf_cfg_list_v1430_l sf_cfg_list_v1430; }; typedef setup_e types; @@ -11212,7 +11029,6 @@ struct csi_rs_cfg_nzp_r11_s { // NZP-ResourceConfig-r13 ::= SEQUENCE struct nzp_res_cfg_r13_s { - // member variables bool ext = false; uint8_t res_cfg_r13 = 0; // ... @@ -11229,11 +11045,10 @@ struct nzp_res_cfg_r13_s { }; // P-C-AndCBSR-Pair-r13 ::= SEQUENCE (SIZE (1..2)) OF P-C-AndCBSR-r13 -typedef dyn_array p_c_and_cbsr_pair_r13_l; +using p_c_and_cbsr_pair_r13_l = dyn_array; // P-C-AndCBSR-r15 ::= SEQUENCE struct p_c_and_cbsr_r15_s { - // member variables int8_t p_c_r15 = -8; dyn_bitstring codebook_subset_restrict4_r15; @@ -11244,23 +11059,23 @@ struct p_c_and_cbsr_r15_s { }; // CSI-RS-ConfigBeamformed-r14 ::= SEQUENCE -struct csi_rs_cfg_beamformed_r14_s { - typedef bounded_array csi_rs_cfg_nzp_id_list_ext_r14_l_; - typedef bounded_array csi_im_cfg_id_list_r14_l_; - typedef dyn_array p_c_and_cbsr_per_res_cfg_list_r14_l_; - typedef bounded_array ace_for4_tx_per_res_cfg_list_r14_l_; - typedef dyn_array csi_rs_cfg_nzp_ap_list_r14_l_; - - // member variables - bool csi_rs_cfg_nzp_id_list_ext_r14_present = false; - bool csi_im_cfg_id_list_r14_present = false; - bool p_c_and_cbsr_per_res_cfg_list_r14_present = false; - bool ace_for4_tx_per_res_cfg_list_r14_present = false; - bool alternative_codebook_enabled_beamformed_r14_present = false; - bool ch_meas_restrict_r14_present = false; - bool csi_rs_cfg_nzp_ap_list_r14_present = false; - bool nzp_res_cfg_original_v1430_present = false; - bool csi_rs_nzp_activation_r14_present = false; +struct csi_rs_cfg_bf_r14_s { + using csi_rs_cfg_nzp_id_list_ext_r14_l_ = bounded_array; + using csi_im_cfg_id_list_r14_l_ = bounded_array; + using p_c_and_cbsr_per_res_cfg_list_r14_l_ = dyn_array; + using ace_for4_tx_per_res_cfg_list_r14_l_ = bounded_array; + using csi_rs_cfg_nzp_ap_list_r14_l_ = dyn_array; + + // member variables + bool csi_rs_cfg_nzp_id_list_ext_r14_present = false; + bool csi_im_cfg_id_list_r14_present = false; + bool p_c_and_cbsr_per_res_cfg_list_r14_present = false; + bool ace_for4_tx_per_res_cfg_list_r14_present = false; + bool alt_codebook_enabled_bf_r14_present = false; + bool ch_meas_restrict_r14_present = false; + bool csi_rs_cfg_nzp_ap_list_r14_present = false; + bool nzp_res_cfg_original_v1430_present = false; + bool csi_rs_nzp_activation_r14_present = false; csi_rs_cfg_nzp_id_list_ext_r14_l_ csi_rs_cfg_nzp_id_list_ext_r14; csi_im_cfg_id_list_r14_l_ csi_im_cfg_id_list_r14; p_c_and_cbsr_per_res_cfg_list_r14_l_ p_c_and_cbsr_per_res_cfg_list_r14; @@ -11278,7 +11093,7 @@ struct csi_rs_cfg_beamformed_r14_s { // CSI-RS-ConfigNZP-EMIMO-r13 ::= CHOICE struct csi_rs_cfg_nzp_emimo_r13_c { struct setup_s_ { - typedef dyn_array nzp_res_cfg_list_r13_l_; + using nzp_res_cfg_list_r13_l_ = dyn_array; struct cdm_type_r13_opts { enum options { cdm2, cdm4, nulltype } value; typedef uint8_t number_type; @@ -11326,7 +11141,7 @@ private: // CSI-RS-ConfigNZP-EMIMO-v1430 ::= SEQUENCE struct csi_rs_cfg_nzp_emimo_v1430_s { - typedef dyn_array nzp_res_cfg_list_ext_r14_l_; + using nzp_res_cfg_list_ext_r14_l_ = dyn_array; // member variables bool cdm_type_v1430_present = false; @@ -11339,7 +11154,7 @@ struct csi_rs_cfg_nzp_emimo_v1430_s { }; // P-C-AndCBSR-Pair-r15 ::= SEQUENCE (SIZE (1..2)) OF P-C-AndCBSR-r15 -typedef dyn_array p_c_and_cbsr_pair_r15_l; +using p_c_and_cbsr_pair_r15_l = dyn_array; // CQI-ReportModeAperiodic ::= ENUMERATED struct cqi_report_mode_aperiodic_opts { @@ -11352,19 +11167,19 @@ struct cqi_report_mode_aperiodic_opts { typedef enumerated cqi_report_mode_aperiodic_e; // CSI-RS-ConfigBeamformed-r13 ::= SEQUENCE -struct csi_rs_cfg_beamformed_r13_s { - typedef bounded_array csi_rs_cfg_nzp_id_list_ext_r13_l_; - typedef bounded_array csi_im_cfg_id_list_r13_l_; - typedef dyn_array p_c_and_cbsr_per_res_cfg_list_r13_l_; - typedef bounded_array ace_for4_tx_per_res_cfg_list_r13_l_; - - // member variables - bool csi_rs_cfg_nzp_id_list_ext_r13_present = false; - bool csi_im_cfg_id_list_r13_present = false; - bool p_c_and_cbsr_per_res_cfg_list_r13_present = false; - bool ace_for4_tx_per_res_cfg_list_r13_present = false; - bool alternative_codebook_enabled_beamformed_r13_present = false; - bool ch_meas_restrict_r13_present = false; +struct csi_rs_cfg_bf_r13_s { + using csi_rs_cfg_nzp_id_list_ext_r13_l_ = bounded_array; + using csi_im_cfg_id_list_r13_l_ = bounded_array; + using p_c_and_cbsr_per_res_cfg_list_r13_l_ = dyn_array; + using ace_for4_tx_per_res_cfg_list_r13_l_ = bounded_array; + + // member variables + bool csi_rs_cfg_nzp_id_list_ext_r13_present = false; + bool csi_im_cfg_id_list_r13_present = false; + bool p_c_and_cbsr_per_res_cfg_list_r13_present = false; + bool ace_for4_tx_per_res_cfg_list_r13_present = false; + bool alt_codebook_enabled_bf_r13_present = false; + bool ch_meas_restrict_r13_present = false; csi_rs_cfg_nzp_id_list_ext_r13_l_ csi_rs_cfg_nzp_id_list_ext_r13; csi_im_cfg_id_list_r13_l_ csi_im_cfg_id_list_r13; p_c_and_cbsr_per_res_cfg_list_r13_l_ p_c_and_cbsr_per_res_cfg_list_r13; @@ -11377,8 +11192,8 @@ struct csi_rs_cfg_beamformed_r13_s { }; // CSI-RS-ConfigBeamformed-v1430 ::= SEQUENCE -struct csi_rs_cfg_beamformed_v1430_s { - typedef dyn_array csi_rs_cfg_nzp_ap_list_r14_l_; +struct csi_rs_cfg_bf_v1430_s { + using csi_rs_cfg_nzp_ap_list_r14_l_ = dyn_array; // member variables bool csi_rs_cfg_nzp_ap_list_r14_present = false; @@ -11406,25 +11221,25 @@ struct csi_rs_cfg_emimo2_r14_c { SRSASN_CODE unpack(bit_ref& bref); void to_json(json_writer& j) const; // getters - csi_rs_cfg_beamformed_r14_s& setup() + csi_rs_cfg_bf_r14_s& setup() { assert_choice_type("setup", type_.to_string(), "CSI-RS-ConfigEMIMO2-r14"); return c; } - const csi_rs_cfg_beamformed_r14_s& setup() const + const csi_rs_cfg_bf_r14_s& setup() const { assert_choice_type("setup", type_.to_string(), "CSI-RS-ConfigEMIMO2-r14"); return c; } - csi_rs_cfg_beamformed_r14_s& set_setup() + csi_rs_cfg_bf_r14_s& set_setup() { set(types::setup); return c; } private: - types type_; - csi_rs_cfg_beamformed_r14_s c; + types type_; + csi_rs_cfg_bf_r14_s c; }; // CSI-RS-ConfigNonPrecoded-r13 ::= SEQUENCE @@ -11461,7 +11276,7 @@ struct csi_rs_cfg_non_precoded_r13_s { uint8_t to_number() const; }; typedef enumerated codebook_over_sampling_rate_cfg_o2_r13_e_; - typedef bounded_array csi_im_cfg_id_list_r13_l_; + using csi_im_cfg_id_list_r13_l_ = bounded_array; // member variables bool p_c_and_cbsr_list_r13_present = false; @@ -11552,7 +11367,6 @@ struct csi_rs_cfg_non_precoded_v1480_s { // CSI-RS-ConfigNonPrecoded-v1530 ::= SEQUENCE struct csi_rs_cfg_non_precoded_v1530_s { - // member variables bool p_c_and_cbsr_list_r15_present = false; p_c_and_cbsr_pair_r15_l p_c_and_cbsr_list_r15; @@ -11564,7 +11378,6 @@ struct csi_rs_cfg_non_precoded_v1530_s { // P-C-AndCBSR-r11 ::= SEQUENCE struct p_c_and_cbsr_r11_s { - // member variables int8_t p_c_r11 = -8; dyn_bitstring codebook_subset_restrict_r11; @@ -11576,7 +11389,6 @@ struct p_c_and_cbsr_r11_s { // CQI-ReportAperiodicProc-r11 ::= SEQUENCE struct cqi_report_aperiodic_proc_r11_s { - // member variables cqi_report_mode_aperiodic_e cqi_report_mode_aperiodic_r11; bool trigger01_r11 = false; bool trigger10_r11 = false; @@ -11590,7 +11402,6 @@ struct cqi_report_aperiodic_proc_r11_s { // CQI-ReportAperiodicProc-v1310 ::= SEQUENCE struct cqi_report_aperiodic_proc_v1310_s { - // member variables bool trigger001_r13 = false; bool trigger010_r13 = false; bool trigger011_r13 = false; @@ -11607,7 +11418,6 @@ struct cqi_report_aperiodic_proc_v1310_s { // CQI-ReportBothProc-r11 ::= SEQUENCE struct cqi_report_both_proc_r11_s { - // member variables bool ri_ref_csi_process_id_r11_present = false; bool pmi_ri_report_r11_present = false; uint8_t ri_ref_csi_process_id_r11 = 1; @@ -11621,7 +11431,6 @@ struct cqi_report_both_proc_r11_s { // CRI-ReportConfig-r13 ::= CHOICE struct cri_report_cfg_r13_c { struct setup_s_ { - // member variables bool cri_cfg_idx2_r13_present = false; uint16_t cri_cfg_idx_r13 = 0; uint16_t cri_cfg_idx2_r13 = 0; @@ -11660,11 +11469,10 @@ private: // CSI-RS-ConfigEMIMO-Hybrid-r14 ::= CHOICE struct csi_rs_cfg_emimo_hybrid_r14_c { struct setup_s_ { - // member variables bool periodicity_offset_idx_r14_present = false; - bool e_mimo_type2_r14_present = false; + bool emimo_type2_r14_present = false; uint16_t periodicity_offset_idx_r14 = 0; - csi_rs_cfg_emimo2_r14_c e_mimo_type2_r14; + csi_rs_cfg_emimo2_r14_c emimo_type2_r14; }; typedef setup_e types; @@ -11701,7 +11509,7 @@ private: struct csi_rs_cfg_emimo_r13_c { struct setup_c_ { struct types_opts { - enum options { non_precoded_r13, beamformed_r13, nulltype } value; + enum options { non_precoded_r13, bf_r13, nulltype } value; std::string to_string() const; }; @@ -11723,35 +11531,35 @@ struct csi_rs_cfg_emimo_r13_c { assert_choice_type("nonPrecoded-r13", type_.to_string(), "setup"); return c.get(); } - csi_rs_cfg_beamformed_r13_s& beamformed_r13() + csi_rs_cfg_bf_r13_s& bf_r13() { assert_choice_type("beamformed-r13", type_.to_string(), "setup"); - return c.get(); + return c.get(); } const csi_rs_cfg_non_precoded_r13_s& non_precoded_r13() const { assert_choice_type("nonPrecoded-r13", type_.to_string(), "setup"); return c.get(); } - const csi_rs_cfg_beamformed_r13_s& beamformed_r13() const + const csi_rs_cfg_bf_r13_s& bf_r13() const { assert_choice_type("beamformed-r13", type_.to_string(), "setup"); - return c.get(); + return c.get(); } csi_rs_cfg_non_precoded_r13_s& set_non_precoded_r13() { set(types::non_precoded_r13); return c.get(); } - csi_rs_cfg_beamformed_r13_s& set_beamformed_r13() + csi_rs_cfg_bf_r13_s& set_bf_r13() { - set(types::beamformed_r13); - return c.get(); + set(types::bf_r13); + return c.get(); } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -11790,7 +11598,7 @@ private: struct csi_rs_cfg_emimo_v1430_c { struct setup_c_ { struct types_opts { - enum options { non_precoded_v1430, beamformed_v1430, nulltype } value; + enum options { non_precoded_v1430, bf_v1430, nulltype } value; std::string to_string() const; }; @@ -11812,35 +11620,35 @@ struct csi_rs_cfg_emimo_v1430_c { assert_choice_type("nonPrecoded-v1430", type_.to_string(), "setup"); return c.get(); } - csi_rs_cfg_beamformed_v1430_s& beamformed_v1430() + csi_rs_cfg_bf_v1430_s& bf_v1430() { assert_choice_type("beamformed-v1430", type_.to_string(), "setup"); - return c.get(); + return c.get(); } const csi_rs_cfg_non_precoded_v1430_s& non_precoded_v1430() const { assert_choice_type("nonPrecoded-v1430", type_.to_string(), "setup"); return c.get(); } - const csi_rs_cfg_beamformed_v1430_s& beamformed_v1430() const + const csi_rs_cfg_bf_v1430_s& bf_v1430() const { assert_choice_type("beamformed-v1430", type_.to_string(), "setup"); - return c.get(); + return c.get(); } csi_rs_cfg_non_precoded_v1430_s& set_non_precoded_v1430() { set(types::non_precoded_v1430); return c.get(); } - csi_rs_cfg_beamformed_v1430_s& set_beamformed_v1430() + csi_rs_cfg_bf_v1430_s& set_bf_v1430() { - set(types::beamformed_v1430); - return c.get(); + set(types::bf_v1430); + return c.get(); } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -11879,7 +11687,7 @@ private: struct csi_rs_cfg_emimo_v1480_c { struct setup_c_ { struct types_opts { - enum options { non_precoded_v1480, beamformed_v1480, nulltype } value; + enum options { non_precoded_v1480, bf_v1480, nulltype } value; std::string to_string() const; }; @@ -11901,35 +11709,35 @@ struct csi_rs_cfg_emimo_v1480_c { assert_choice_type("nonPrecoded-v1480", type_.to_string(), "setup"); return c.get(); } - csi_rs_cfg_beamformed_v1430_s& beamformed_v1480() + csi_rs_cfg_bf_v1430_s& bf_v1480() { assert_choice_type("beamformed-v1480", type_.to_string(), "setup"); - return c.get(); + return c.get(); } const csi_rs_cfg_non_precoded_v1480_s& non_precoded_v1480() const { assert_choice_type("nonPrecoded-v1480", type_.to_string(), "setup"); return c.get(); } - const csi_rs_cfg_beamformed_v1430_s& beamformed_v1480() const + const csi_rs_cfg_bf_v1430_s& bf_v1480() const { assert_choice_type("beamformed-v1480", type_.to_string(), "setup"); - return c.get(); + return c.get(); } csi_rs_cfg_non_precoded_v1480_s& set_non_precoded_v1480() { set(types::non_precoded_v1480); return c.get(); } - csi_rs_cfg_beamformed_v1430_s& set_beamformed_v1480() + csi_rs_cfg_bf_v1430_s& set_bf_v1480() { - set(types::beamformed_v1480); - return c.get(); + set(types::bf_v1480); + return c.get(); } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -12018,7 +11826,7 @@ private: }; // P-C-AndCBSR-Pair-r13a ::= SEQUENCE (SIZE (1..2)) OF P-C-AndCBSR-r11 -typedef dyn_array p_c_and_cbsr_pair_r13a_l; +using p_c_and_cbsr_pair_r13a_l = dyn_array; // CQI-ReportPeriodicProcExt-r11 ::= SEQUENCE struct cqi_report_periodic_proc_ext_r11_s { @@ -12101,14 +11909,13 @@ struct cqi_report_periodic_proc_ext_r11_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; struct csi_cfg_idx_r11_c_ { struct setup_s_ { - // member variables bool ri_cfg_idx2_r11_present = false; uint16_t cqi_pmi_cfg_idx2_r11 = 0; uint16_t ri_cfg_idx2_r11 = 0; @@ -12176,7 +11983,6 @@ struct cqi_report_periodic_proc_ext_r11_s { // CSI-IM-Config-r11 ::= SEQUENCE struct csi_im_cfg_r11_s { - // member variables bool ext = false; uint8_t csi_im_cfg_id_r11 = 1; uint8_t res_cfg_r11 = 0; @@ -12194,7 +12000,6 @@ struct csi_im_cfg_r11_s { // CSI-IM-ConfigExt-r12 ::= SEQUENCE struct csi_im_cfg_ext_r12_s { - // member variables bool ext = false; uint8_t csi_im_cfg_id_v1250 = 4; uint8_t res_cfg_r12 = 0; @@ -12215,8 +12020,8 @@ struct csi_im_cfg_ext_r12_s { // CSI-Process-r11 ::= SEQUENCE struct csi_process_r11_s { struct csi_im_cfg_id_list_r12_c_ { - typedef bounded_array setup_l_; - typedef setup_e types; + using setup_l_ = bounded_array; + typedef setup_e types; // choice methods csi_im_cfg_id_list_r12_c_() = default; @@ -12354,24 +12159,24 @@ struct csi_process_r11_s { cqi_report_aperiodic_proc_r11_s cqi_report_aperiodic_proc_r11; // ... // group 0 - bool alternative_codebook_enabled_for4_tx_proc_r12_present = false; + bool alt_codebook_enabled_for4_tx_proc_r12_present = false; copy_ptr csi_im_cfg_id_list_r12; copy_ptr cqi_report_aperiodic_proc2_r12; // group 1 copy_ptr cqi_report_aperiodic_proc_v1310; copy_ptr cqi_report_aperiodic_proc2_v1310; - copy_ptr e_mimo_type_r13; + copy_ptr emimo_type_r13; // group 2 bool advanced_codebook_enabled_r14_present = false; copy_ptr dummy; - copy_ptr e_mimo_hybrid_r14; + copy_ptr emimo_hybrid_r14; bool advanced_codebook_enabled_r14 = false; // group 3 - copy_ptr e_mimo_type_v1480; + copy_ptr emimo_type_v1480; // group 4 bool fe_comp_csi_enabled_v1530_present = false; bool fe_comp_csi_enabled_v1530 = false; - copy_ptr e_mimo_type_v1530; + copy_ptr emimo_type_v1530; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -12379,37 +12184,35 @@ struct csi_process_r11_s { void to_json(json_writer& j) const; }; -// CQI-ReportPeriodicProcExtToAddModList-r11 ::= SEQUENCE (SIZE (1..maxCQI-ProcExt-r11)) OF -// CQI-ReportPeriodicProcExt-r11 -typedef dyn_array cqi_report_periodic_proc_ext_to_add_mod_list_r11_l; +// CQI-ReportPeriodicProcExtToAddModList-r11 ::= SEQUENCE (SIZE (1..3)) OF CQI-ReportPeriodicProcExt-r11 +using cqi_report_periodic_proc_ext_to_add_mod_list_r11_l = dyn_array; -// CQI-ReportPeriodicProcExtToReleaseList-r11 ::= SEQUENCE (SIZE (1..maxCQI-ProcExt-r11)) OF INTEGER -typedef bounded_array cqi_report_periodic_proc_ext_to_release_list_r11_l; +// CQI-ReportPeriodicProcExtToReleaseList-r11 ::= SEQUENCE (SIZE (1..3)) OF INTEGER (1..3) +using cqi_report_periodic_proc_ext_to_release_list_r11_l = bounded_array; -// CSI-IM-ConfigToAddModList-r11 ::= SEQUENCE (SIZE (1..maxCSI-IM-r11)) OF CSI-IM-Config-r11 -typedef dyn_array csi_im_cfg_to_add_mod_list_r11_l; +// CSI-IM-ConfigToAddModList-r11 ::= SEQUENCE (SIZE (1..3)) OF CSI-IM-Config-r11 +using csi_im_cfg_to_add_mod_list_r11_l = dyn_array; -// CSI-IM-ConfigToAddModListExt-r13 ::= SEQUENCE (SIZE (1..maxCSI-IM-v1310)) OF CSI-IM-ConfigExt-r12 -typedef dyn_array csi_im_cfg_to_add_mod_list_ext_r13_l; +// CSI-IM-ConfigToAddModListExt-r13 ::= SEQUENCE (SIZE (1..20)) OF CSI-IM-ConfigExt-r12 +using csi_im_cfg_to_add_mod_list_ext_r13_l = dyn_array; -// CSI-IM-ConfigToReleaseList-r11 ::= SEQUENCE (SIZE (1..maxCSI-IM-r11)) OF INTEGER -typedef bounded_array csi_im_cfg_to_release_list_r11_l; +// CSI-IM-ConfigToReleaseList-r11 ::= SEQUENCE (SIZE (1..3)) OF INTEGER (1..3) +using csi_im_cfg_to_release_list_r11_l = bounded_array; -// CSI-IM-ConfigToReleaseListExt-r13 ::= SEQUENCE (SIZE (1..maxCSI-IM-v1310)) OF INTEGER -typedef bounded_array csi_im_cfg_to_release_list_ext_r13_l; +// CSI-IM-ConfigToReleaseListExt-r13 ::= SEQUENCE (SIZE (1..20)) OF INTEGER (5..24) +using csi_im_cfg_to_release_list_ext_r13_l = bounded_array; -// CSI-ProcessToAddModList-r11 ::= SEQUENCE (SIZE (1..maxCSI-Proc-r11)) OF CSI-Process-r11 -typedef dyn_array csi_process_to_add_mod_list_r11_l; +// CSI-ProcessToAddModList-r11 ::= SEQUENCE (SIZE (1..4)) OF CSI-Process-r11 +using csi_process_to_add_mod_list_r11_l = dyn_array; -// CSI-ProcessToReleaseList-r11 ::= SEQUENCE (SIZE (1..maxCSI-Proc-r11)) OF INTEGER -typedef bounded_array csi_process_to_release_list_r11_l; +// CSI-ProcessToReleaseList-r11 ::= SEQUENCE (SIZE (1..4)) OF INTEGER (1..4) +using csi_process_to_release_list_r11_l = bounded_array; -// DCI7-CandidatesPerAL-SPDCCH-r15 ::= SEQUENCE (SIZE(1..4)) OF INTEGER -typedef bounded_array dci7_candidates_per_al_spdcch_r15_l; +// DCI7-CandidatesPerAL-SPDCCH-r15 ::= SEQUENCE (SIZE (1..4)) OF INTEGER (0..6) +using dci7_candidates_per_al_spdcch_r15_l = bounded_array; // N4SPUCCH-Resource-r15 ::= SEQUENCE struct n4_spucch_res_r15_s { - // member variables uint8_t n4start_prb_r15 = 0; uint8_t n4nof_prb_r15 = 0; @@ -12481,7 +12284,7 @@ struct poll_pdu_r15_opts { p8192_r15, p12288_r15, p16384_r15, - p_infinity, + pinfinity, nulltype } value; typedef int16_t number_type; @@ -12709,7 +12512,6 @@ typedef enumerated t_status_prohibit_e; // ZeroTxPowerCSI-RS-r12 ::= SEQUENCE struct zero_tx_pwr_csi_rs_r12_s { - // member variables fixed_bitstring<16> zero_tx_pwr_res_cfg_list_r12; uint8_t zero_tx_pwr_sf_cfg_r12 = 0; @@ -12723,7 +12525,6 @@ struct zero_tx_pwr_csi_rs_r12_s { struct cqi_report_aperiodic_r10_c { struct setup_s_ { struct aperiodic_csi_trigger_r10_s_ { - // member variables fixed_bitstring<8> trigger1_r10; fixed_bitstring<8> trigger2_r10; }; @@ -12821,7 +12622,6 @@ private: struct cqi_report_aperiodic_v1310_c { struct setup_s_ { struct aperiodic_csi_trigger_v1310_s_ { - // member variables fixed_bitstring<32> trigger1_r13; fixed_bitstring<32> trigger2_r13; fixed_bitstring<32> trigger3_r13; @@ -12831,7 +12631,6 @@ struct cqi_report_aperiodic_v1310_c { }; struct aperiodic_csi_trigger2_r13_c_ { struct setup_s_ { - // member variables fixed_bitstring<32> trigger1_sf_set_ind_r13; fixed_bitstring<32> trigger2_sf_set_ind_r13; fixed_bitstring<32> trigger3_sf_set_ind_r13; @@ -12911,17 +12710,14 @@ private: struct cqi_report_aperiodic_hybrid_r14_s { struct triggers_r14_c_ { struct one_bit_r14_s_ { - // member variables fixed_bitstring<8> trigger1_ind_r14; }; struct two_bit_r14_s_ { - // member variables fixed_bitstring<8> trigger01_ind_r14; fixed_bitstring<8> trigger10_ind_r14; fixed_bitstring<8> trigger11_ind_r14; }; struct three_bit_r14_s_ { - // member variables fixed_bitstring<32> trigger001_ind_r14; fixed_bitstring<32> trigger010_ind_r14; fixed_bitstring<32> trigger011_ind_r14; @@ -12997,8 +12793,8 @@ struct cqi_report_aperiodic_hybrid_r14_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -13015,7 +12811,6 @@ struct cqi_report_aperiodic_hybrid_r14_s { // CQI-ReportBoth-r11 ::= SEQUENCE struct cqi_report_both_r11_s { - // member variables bool csi_im_cfg_to_release_list_r11_present = false; bool csi_im_cfg_to_add_mod_list_r11_present = false; bool csi_process_to_release_list_r11_present = false; @@ -13033,7 +12828,6 @@ struct cqi_report_both_r11_s { // CQI-ReportBoth-v1250 ::= SEQUENCE struct cqi_report_both_v1250_s { - // member variables bool csi_im_cfg_to_release_list_ext_r12_present = false; bool csi_im_cfg_to_add_mod_list_ext_r12_present = false; uint8_t csi_im_cfg_to_release_list_ext_r12 = 4; @@ -13047,7 +12841,6 @@ struct cqi_report_both_v1250_s { // CQI-ReportBoth-v1310 ::= SEQUENCE struct cqi_report_both_v1310_s { - // member variables bool csi_im_cfg_to_release_list_ext_r13_present = false; bool csi_im_cfg_to_add_mod_list_ext_r13_present = false; csi_im_cfg_to_release_list_ext_r13_l csi_im_cfg_to_release_list_ext_r13; @@ -13141,14 +12934,13 @@ struct cqi_report_periodic_r10_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; struct csi_cfg_idx_r10_c_ { struct setup_s_ { - // member variables bool ri_cfg_idx2_r10_present = false; uint16_t cqi_pmi_cfg_idx2_r10 = 0; uint16_t ri_cfg_idx2_r10 = 0; @@ -13230,7 +13022,6 @@ private: // CQI-ReportPeriodic-v1130 ::= SEQUENCE struct cqi_report_periodic_v1130_s { - // member variables bool simul_ack_nack_and_cqi_format3_r11_present = false; bool cqi_report_periodic_proc_ext_to_release_list_r11_present = false; bool cqi_report_periodic_proc_ext_to_add_mod_list_r11_present = false; @@ -13245,7 +13036,6 @@ struct cqi_report_periodic_v1130_s { // CQI-ReportPeriodic-v1310 ::= SEQUENCE struct cqi_report_periodic_v1310_s { - // member variables bool cri_report_cfg_r13_present = false; bool simul_ack_nack_and_cqi_format4_format5_r13_present = false; cri_report_cfg_r13_c cri_report_cfg_r13; @@ -13279,7 +13069,6 @@ struct cqi_report_periodic_v1320_s { // DL-AM-RLC-r15 ::= SEQUENCE struct dl_am_rlc_r15_s { - // member variables t_reordering_e t_reordering_r15; t_status_prohibit_e t_status_prohibit_r15; bool extended_rlc_li_field_r15 = false; @@ -13292,7 +13081,6 @@ struct dl_am_rlc_r15_s { // DL-UM-RLC-r15 ::= SEQUENCE struct dl_um_rlc_r15_s { - // member variables sn_field_len_r15_e sn_field_len_r15; t_reordering_e t_reordering_r15; @@ -13372,8 +13160,8 @@ struct meas_sf_pattern_r10_c { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -13427,8 +13215,8 @@ struct meas_sf_pattern_r10_c { } private: - types type_; - choice_buffer_t), sizeof(sf_pattern_tdd_r10_c_))> c; + types type_; + choice_buffer_t, sf_pattern_tdd_r10_c_> c; void destroy_(); }; @@ -13463,7 +13251,7 @@ typedef enumerated poll_byte_e; // PollPDU ::= ENUMERATED struct poll_pdu_opts { - enum options { p4, p8, p16, p32, p64, p128, p256, p_infinity, nulltype } value; + enum options { p4, p8, p16, p32, p64, p128, p256, pinfinity, nulltype } value; typedef int16_t number_type; std::string to_string() const; @@ -13485,15 +13273,14 @@ struct spdcch_elems_r15_c { std::string to_string() const; }; - typedef enumerated tx_type_r15_e_; - typedef bounded_array dci7_candidates_per_al_pdcch_r15_l_; - typedef dyn_array dci7_candidate_sets_per_al_spdcch_r15_l_; + typedef enumerated tx_type_r15_e_; + using dci7_candidates_per_al_pdcch_r15_l_ = bounded_array; + using dci7_candidate_sets_per_al_spdcch_r15_l_ = dyn_array; struct res_block_assign_r15_s_ { - // member variables uint8_t num_rb_in_freq_domain_r15 = 2; fixed_bitstring<98> res_block_assign_r15; }; - typedef bounded_array al_start_point_spdcch_r15_l_; + using al_start_point_spdcch_r15_l_ = bounded_array; struct sf_type_r15_opts { enum options { mbsfn, nonmbsfn, all, nulltype } value; @@ -13571,9 +13358,9 @@ private: // SPUCCH-Elements-r15 ::= CHOICE struct spucch_elems_r15_c { struct setup_s_ { - typedef bounded_array n1_subslot_spucch_an_list_r15_l_; - typedef dyn_array n4_spucch_slot_res_r15_l_; - typedef dyn_array n4_spucch_subslot_res_r15_l_; + using n1_subslot_spucch_an_list_r15_l_ = bounded_array; + using n4_spucch_slot_res_r15_l_ = dyn_array; + using n4_spucch_subslot_res_r15_l_ = dyn_array; // member variables bool n1_subslot_spucch_an_list_r15_present = false; @@ -13680,8 +13467,8 @@ struct tpc_idx_c { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -13712,7 +13499,6 @@ struct ul_am_rlc_r15_s { // UL-UM-RLC ::= SEQUENCE struct ul_um_rlc_s { - // member variables sn_field_len_e sn_field_len; // sequence methods @@ -13758,7 +13544,6 @@ private: struct cqi_report_cfg_r10_s { struct csi_sf_pattern_cfg_r10_c_ { struct setup_s_ { - // member variables meas_sf_pattern_r10_c csi_meas_sf_set1_r10; meas_sf_pattern_r10_c csi_meas_sf_set2_r10; }; @@ -13811,7 +13596,6 @@ struct cqi_report_cfg_r10_s { // CQI-ReportConfig-v1130 ::= SEQUENCE struct cqi_report_cfg_v1130_s { - // member variables cqi_report_periodic_v1130_s cqi_report_periodic_v1130; cqi_report_both_r11_s cqi_report_both_r11; @@ -13825,7 +13609,6 @@ struct cqi_report_cfg_v1130_s { struct cqi_report_cfg_v1250_s { struct csi_sf_pattern_cfg_r12_c_ { struct setup_s_ { - // member variables fixed_bitstring<10> csi_meas_sf_sets_r12; }; typedef setup_e types; @@ -13885,7 +13668,6 @@ struct cqi_report_cfg_v1250_s { // CQI-ReportConfig-v1310 ::= SEQUENCE struct cqi_report_cfg_v1310_s { - // member variables bool cqi_report_both_v1310_present = false; bool cqi_report_aperiodic_v1310_present = false; bool cqi_report_periodic_v1310_present = false; @@ -13901,7 +13683,6 @@ struct cqi_report_cfg_v1310_s { // CQI-ReportConfig-v1320 ::= SEQUENCE struct cqi_report_cfg_v1320_s { - // member variables bool cqi_report_periodic_v1320_present = false; cqi_report_periodic_v1320_s cqi_report_periodic_v1320; @@ -13913,7 +13694,6 @@ struct cqi_report_cfg_v1320_s { // CQI-ReportConfig-v1430 ::= SEQUENCE struct cqi_report_cfg_v1430_s { - // member variables bool cqi_report_aperiodic_hybrid_r14_present = false; cqi_report_aperiodic_hybrid_r14_s cqi_report_aperiodic_hybrid_r14; @@ -13989,7 +13769,7 @@ struct csi_rs_cfg_r10_s { struct csi_rs_cfg_v1250_s { struct ds_zero_tx_pwr_csi_rs_r12_c_ { struct setup_s_ { - typedef dyn_array zero_tx_pwr_csi_rs_list_r12_l_; + using zero_tx_pwr_csi_rs_list_r12_l_ = dyn_array; // member variables zero_tx_pwr_csi_rs_list_r12_l_ zero_tx_pwr_csi_rs_list_r12; @@ -14039,9 +13819,8 @@ struct csi_rs_cfg_v1250_s { // CSI-RS-Config-v1310 ::= SEQUENCE struct csi_rs_cfg_v1310_s { - // member variables - bool e_mimo_type_r13_present = false; - csi_rs_cfg_emimo_r13_c e_mimo_type_r13; + bool emimo_type_r13_present = false; + csi_rs_cfg_emimo_r13_c emimo_type_r13; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -14051,12 +13830,11 @@ struct csi_rs_cfg_v1310_s { // CSI-RS-Config-v1430 ::= SEQUENCE struct csi_rs_cfg_v1430_s { - // member variables bool dummy_present = false; - bool e_mimo_hybrid_r14_present = false; + bool emimo_hybrid_r14_present = false; bool advanced_codebook_enabled_r14_present = false; csi_rs_cfg_emimo_v1430_c dummy; - csi_rs_cfg_emimo_hybrid_r14_c e_mimo_hybrid_r14; + csi_rs_cfg_emimo_hybrid_r14_c emimo_hybrid_r14; bool advanced_codebook_enabled_r14 = false; // sequence methods @@ -14067,7 +13845,6 @@ struct csi_rs_cfg_v1430_s { // CSI-RS-ConfigZP-r11 ::= SEQUENCE struct csi_rs_cfg_zp_r11_s { - // member variables bool ext = false; uint8_t csi_rs_cfg_zp_id_r11 = 1; fixed_bitstring<16> res_cfg_list_r11; @@ -14082,7 +13859,6 @@ struct csi_rs_cfg_zp_r11_s { // DL-AM-RLC ::= SEQUENCE struct dl_am_rlc_s { - // member variables t_reordering_e t_reordering; t_status_prohibit_e t_status_prohibit; @@ -14094,7 +13870,6 @@ struct dl_am_rlc_s { // DL-UM-RLC ::= SEQUENCE struct dl_um_rlc_s { - // member variables sn_field_len_e sn_field_len; t_reordering_e t_reordering; @@ -14172,8 +13947,8 @@ struct epdcch_set_cfg_r11_s { typedef enumerated num_prb_pairs_r11_e_; // member variables - num_prb_pairs_r11_e_ num_prb_pairs_r11; - dyn_bitstring res_block_assign_r11; + num_prb_pairs_r11_e_ num_prb_pairs_r11; + bounded_bitstring<4, 38> res_block_assign_r11; }; struct csi_rs_cfg_zp_id2_r12_c_ { typedef setup_e types; @@ -14304,8 +14079,8 @@ struct epdcch_set_cfg_r11_s { } private: - types type_; - choice_buffer_t c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -14382,14 +14157,12 @@ struct epdcch_set_cfg_r11_s { struct enable256_qam_r14_c { struct setup_c_ { struct tpc_sf_set_cfgured_r14_s_ { - // member variables bool sf_set1_dci_format0_r14 = false; bool sf_set1_dci_format4_r14 = false; bool sf_set2_dci_format0_r14 = false; bool sf_set2_dci_format4_r14 = false; }; struct tpc_sf_set_not_cfgured_r14_s_ { - // member variables bool dci_format0_r14 = false; bool dci_format4_r14 = false; }; @@ -14443,8 +14216,8 @@ struct enable256_qam_r14_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -14535,7 +14308,6 @@ struct lc_ch_cfg_s { typedef enumerated bit_rate_query_prohibit_timer_r14_e_; struct allowed_tti_lens_r15_c_ { struct setup_s_ { - // member variables bool short_tti_r15 = false; bool sf_tti_r15 = false; }; @@ -14690,7 +14462,6 @@ struct pdsch_re_map_qcl_cfg_r11_s { typedef enumerated crs_ports_count_r11_e_; struct mbsfn_sf_cfg_list_r11_c_ { struct setup_s_ { - // member variables mbsfn_sf_cfg_list_l sf_cfg_list; }; typedef setup_e types; @@ -14741,7 +14512,6 @@ struct pdsch_re_map_qcl_cfg_r11_s { }; struct mbsfn_sf_cfg_list_v1430_c_ { struct setup_s_ { - // member variables mbsfn_sf_cfg_list_v1430_l sf_cfg_list_v1430; }; typedef setup_e types; @@ -14870,21 +14640,17 @@ typedef enumerated poll_pdu_v1310_e; struct rlc_cfg_r15_s { struct mode_r15_c_ { struct am_r15_s_ { - // member variables ul_am_rlc_r15_s ul_am_rlc_r15; dl_am_rlc_r15_s dl_am_rlc_r15; }; struct um_bi_dir_r15_s_ { - // member variables ul_um_rlc_s ul_um_rlc_r15; dl_um_rlc_r15_s dl_um_rlc_r15; }; struct um_uni_dir_ul_r15_s_ { - // member variables ul_um_rlc_s ul_um_rlc_r15; }; struct um_uni_dir_dl_r15_s_ { - // member variables dl_um_rlc_r15_s dl_um_rlc_r15; }; struct types_opts { @@ -14967,10 +14733,8 @@ struct rlc_cfg_r15_s { } private: - types type_; - choice_buffer_t - c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -14989,13 +14753,13 @@ struct rlc_cfg_r15_s { }; // SPDCCH-Set-r15 ::= SEQUENCE (SIZE (1..4)) OF SPDCCH-Elements-r15 -typedef dyn_array spdcch_set_r15_l; +using spdcch_set_r15_l = dyn_array; // SPUCCH-Set-r15 ::= SEQUENCE (SIZE (1..4)) OF SPUCCH-Elements-r15 -typedef dyn_array spucch_set_r15_l; +using spucch_set_r15_l = dyn_array; -// SR-SubslotSPUCCH-ResourceList-r15 ::= SEQUENCE (SIZE(1..4)) OF INTEGER -typedef bounded_array sr_subslot_spucch_res_list_r15_l; +// SR-SubslotSPUCCH-ResourceList-r15 ::= SEQUENCE (SIZE (1..4)) OF INTEGER (0..1319) +using sr_subslot_spucch_res_list_r15_l = bounded_array; // SRS-AntennaPort ::= ENUMERATED struct srs_ant_port_opts { @@ -15018,7 +14782,6 @@ typedef enumerated short_tti_len_r15_e; // TPC-PDCCH-Config ::= CHOICE struct tpc_pdcch_cfg_c { struct setup_s_ { - // member variables fixed_bitstring<16> tpc_rnti; tpc_idx_c tpc_idx; }; @@ -15326,8 +15089,8 @@ struct ant_info_ded_stti_r15_c { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -15468,7 +15231,6 @@ struct cqi_report_periodic_c { struct setup_s_ { struct cqi_format_ind_periodic_c_ { struct subband_cqi_s_ { - // member variables uint8_t k = 1; }; struct types_opts { @@ -15601,7 +15363,6 @@ struct crs_assist_info_r13_s { // CRS-AssistanceInfo-r15 ::= SEQUENCE struct crs_assist_info_r15_s { - // member variables bool crs_intf_mitig_enabled_minus15_present = false; uint16_t pci_r15 = 0; @@ -15614,7 +15375,6 @@ struct crs_assist_info_r15_s { // CSI-RS-Config-r15 ::= CHOICE struct csi_rs_cfg_r15_c { struct setup_s_ { - // member variables bool csi_rs_cfg_r10_present = false; bool csi_rs_cfg_v1250_present = false; bool csi_rs_cfg_v1310_present = false; @@ -15655,16 +15415,16 @@ private: setup_s_ c; }; -// CSI-RS-ConfigNZPToAddModList-r15 ::= SEQUENCE (SIZE (1..maxCSI-RS-NZP-r13)) OF CSI-RS-ConfigNZP-r11 -typedef dyn_array csi_rs_cfg_nzp_to_add_mod_list_r15_l; +// CSI-RS-ConfigNZPToAddModList-r15 ::= SEQUENCE (SIZE (1..24)) OF CSI-RS-ConfigNZP-r11 +using csi_rs_cfg_nzp_to_add_mod_list_r15_l = dyn_array; -// CSI-RS-ConfigNZPToReleaseList-r15 ::= SEQUENCE (SIZE (1..maxCSI-RS-NZP-r13)) OF INTEGER -typedef bounded_array csi_rs_cfg_nzp_to_release_list_r15_l; +// CSI-RS-ConfigNZPToReleaseList-r15 ::= SEQUENCE (SIZE (1..24)) OF INTEGER (1..24) +using csi_rs_cfg_nzp_to_release_list_r15_l = bounded_array; // CSI-RS-ConfigZP-ApList-r14 ::= CHOICE struct csi_rs_cfg_zp_ap_list_r14_c { - typedef dyn_array setup_l_; - typedef setup_e types; + using setup_l_ = dyn_array; + typedef setup_e types; // choice methods csi_rs_cfg_zp_ap_list_r14_c() = default; @@ -15695,16 +15455,15 @@ private: setup_l_ c; }; -// CSI-RS-ConfigZPToAddModList-r11 ::= SEQUENCE (SIZE (1..maxCSI-RS-ZP-r11)) OF CSI-RS-ConfigZP-r11 -typedef dyn_array csi_rs_cfg_zp_to_add_mod_list_r11_l; +// CSI-RS-ConfigZPToAddModList-r11 ::= SEQUENCE (SIZE (1..4)) OF CSI-RS-ConfigZP-r11 +using csi_rs_cfg_zp_to_add_mod_list_r11_l = dyn_array; -// CSI-RS-ConfigZPToReleaseList-r11 ::= SEQUENCE (SIZE (1..maxCSI-RS-ZP-r11)) OF INTEGER -typedef bounded_array csi_rs_cfg_zp_to_release_list_r11_l; +// CSI-RS-ConfigZPToReleaseList-r11 ::= SEQUENCE (SIZE (1..4)) OF INTEGER (1..4) +using csi_rs_cfg_zp_to_release_list_r11_l = bounded_array; // DMRS-Config-r11 ::= CHOICE struct dmrs_cfg_r11_c { struct setup_s_ { - // member variables uint16_t scrambling_id_r11 = 0; uint16_t scrambling_id2_r11 = 0; }; @@ -15741,7 +15500,6 @@ private: // DMRS-Config-v1310 ::= SEQUENCE struct dmrs_cfg_v1310_s { - // member variables bool dmrs_table_alt_r13_present = false; // sequence methods @@ -15880,7 +15638,6 @@ struct eimta_main_cfg_serv_cell_r12_c { typedef enumerated eimta_harq_ref_cfg_r12_e_; struct mbsfn_sf_cfg_list_v1250_c_ { struct setup_s_ { - // member variables mbsfn_sf_cfg_list_l sf_cfg_list_r12; }; typedef setup_e types; @@ -15950,15 +15707,14 @@ private: setup_s_ c; }; -// EPDCCH-SetConfigToAddModList-r11 ::= SEQUENCE (SIZE(1..maxEPDCCH-Set-r11)) OF EPDCCH-SetConfig-r11 -typedef dyn_array epdcch_set_cfg_to_add_mod_list_r11_l; +// EPDCCH-SetConfigToAddModList-r11 ::= SEQUENCE (SIZE (1..2)) OF EPDCCH-SetConfig-r11 +using epdcch_set_cfg_to_add_mod_list_r11_l = dyn_array; -// EPDCCH-SetConfigToReleaseList-r11 ::= SEQUENCE (SIZE(1..maxEPDCCH-Set-r11)) OF INTEGER -typedef bounded_array epdcch_set_cfg_to_release_list_r11_l; +// EPDCCH-SetConfigToReleaseList-r11 ::= SEQUENCE (SIZE (1..2)) OF INTEGER (0..1) +using epdcch_set_cfg_to_release_list_r11_l = bounded_array; // Format4-resource-r13 ::= SEQUENCE struct format4_res_r13_s { - // member variables uint8_t start_prb_format4_r13 = 0; uint8_t nof_prb_format4_r13 = 0; @@ -15970,7 +15726,6 @@ struct format4_res_r13_s { // Format5-resource-r13 ::= SEQUENCE struct format5_res_r13_s { - // member variables uint8_t start_prb_format5_r13 = 0; uint8_t cdm_idx_format5_r13 = 0; @@ -15980,11 +15735,11 @@ struct format5_res_r13_s { void to_json(json_writer& j) const; }; -// N1PUCCH-AN-CS-r10 ::= SEQUENCE (SIZE (1..4)) OF INTEGER -typedef bounded_array n1_pucch_an_cs_r10_l; +// N1PUCCH-AN-CS-r10 ::= SEQUENCE (SIZE (1..4)) OF INTEGER (0..2047) +using n1_pucch_an_cs_r10_l = bounded_array; -// N1PUCCH-AN-PersistentList ::= SEQUENCE (SIZE (1..4)) OF INTEGER -typedef bounded_array n1_pucch_an_persistent_list_l; +// N1PUCCH-AN-PersistentList ::= SEQUENCE (SIZE (1..4)) OF INTEGER (0..2047) +using n1_pucch_an_persistent_list_l = bounded_array; // NeighCellsInfo-r12 ::= SEQUENCE struct neigh_cells_info_r12_s { @@ -15996,7 +15751,7 @@ struct neigh_cells_info_r12_s { uint8_t to_number() const; }; typedef enumerated crs_ports_count_r12_e_; - typedef bounded_array p_a_list_r12_l_; + using p_a_list_r12_l_ = bounded_array; // member variables bool ext = false; @@ -16037,7 +15792,6 @@ struct pdcp_cfg_s { }; typedef enumerated discard_timer_e_; struct rlc_am_s_ { - // member variables bool status_report_required = false; }; struct rlc_um_s_ { @@ -16056,7 +15810,6 @@ struct pdcp_cfg_s { struct hdr_compress_c_ { struct rohc_s_ { struct profiles_s_ { - // member variables bool profile0x0001 = false; bool profile0x0002 = false; bool profile0x0003 = false; @@ -16396,7 +16149,6 @@ struct pdcp_cfg_s { struct ul_only_hdr_compress_r14_c_ { struct rohc_r14_s_ { struct profiles_r14_s_ { - // member variables bool profile0x0006_r14 = false; }; @@ -16452,7 +16204,7 @@ struct pdcp_cfg_s { }; typedef enumerated buffer_size_r15_e_; struct dictionary_r15_opts { - enum options { sip_sdp, operator_type, nulltype } value; + enum options { sip_sdp, operator_value, nulltype } value; std::string to_string() const; }; @@ -16567,10 +16319,10 @@ struct pucch_cfg_ded_v1530_s { // PUCCH-Format3-Conf-r13 ::= SEQUENCE struct pucch_format3_conf_r13_s { - typedef bounded_array n3_pucch_an_list_r13_l_; + using n3_pucch_an_list_r13_l_ = bounded_array; struct two_ant_port_activ_pucch_format3_r13_c_ { struct setup_s_ { - typedef bounded_array n3_pucch_an_list_p1_r13_l_; + using n3_pucch_an_list_p1_r13_l_ = bounded_array; // member variables n3_pucch_an_list_p1_r13_l_ n3_pucch_an_list_p1_r13; @@ -16618,11 +16370,11 @@ struct pucch_format3_conf_r13_s { void to_json(json_writer& j) const; }; -// RE-MappingQCLConfigToAddModList-r11 ::= SEQUENCE (SIZE (1..maxRE-MapQCL-r11)) OF PDSCH-RE-MappingQCL-Config-r11 -typedef dyn_array re_map_qcl_cfg_to_add_mod_list_r11_l; +// RE-MappingQCLConfigToAddModList-r11 ::= SEQUENCE (SIZE (1..4)) OF PDSCH-RE-MappingQCL-Config-r11 +using re_map_qcl_cfg_to_add_mod_list_r11_l = dyn_array; -// RE-MappingQCLConfigToReleaseList-r11 ::= SEQUENCE (SIZE (1..maxRE-MapQCL-r11)) OF INTEGER -typedef bounded_array re_map_qcl_cfg_to_release_list_r11_l; +// RE-MappingQCLConfigToReleaseList-r11 ::= SEQUENCE (SIZE (1..4)) OF INTEGER (1..4) +using re_map_qcl_cfg_to_release_list_r11_l = bounded_array; // RLC-BearerConfig-r15 ::= CHOICE struct rlc_bearer_cfg_r15_c { @@ -16678,8 +16430,8 @@ struct rlc_bearer_cfg_r15_c { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -16725,21 +16477,17 @@ private: // RLC-Config ::= CHOICE struct rlc_cfg_c { struct am_s_ { - // member variables ul_am_rlc_s ul_am_rlc; dl_am_rlc_s dl_am_rlc; }; struct um_bi_dir_s_ { - // member variables ul_um_rlc_s ul_um_rlc; dl_um_rlc_s dl_um_rlc; }; struct um_uni_dir_ul_s_ { - // member variables ul_um_rlc_s ul_um_rlc; }; struct um_uni_dir_dl_s_ { - // member variables dl_um_rlc_s dl_um_rlc; }; struct types_opts { @@ -16822,15 +16570,14 @@ struct rlc_cfg_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; // RLC-Config-v1250 ::= SEQUENCE struct rlc_cfg_v1250_s { - // member variables bool ul_extended_rlc_li_field_r12 = false; bool dl_extended_rlc_li_field_r12 = false; @@ -16842,7 +16589,6 @@ struct rlc_cfg_v1250_s { // RLC-Config-v1310 ::= SEQUENCE struct rlc_cfg_v1310_s { - // member variables bool poll_pdu_v1310_present = false; bool ul_extended_rlc_am_sn_r13 = false; bool dl_extended_rlc_am_sn_r13 = false; @@ -16857,7 +16603,6 @@ struct rlc_cfg_v1310_s { // RLC-Config-v1430 ::= CHOICE struct rlc_cfg_v1430_c { struct setup_s_ { - // member variables poll_byte_r14_e poll_byte_r14; }; typedef setup_e types; @@ -16936,7 +16681,6 @@ private: // RRCConnectionReject-v1320-IEs ::= SEQUENCE struct rrc_conn_reject_v1320_ies_s { - // member variables bool rrc_suspend_ind_r13_present = false; bool non_crit_ext_present = false; @@ -17072,13 +16816,11 @@ struct sps_cfg_ul_c { }; typedef enumerated implicit_release_after_e_; struct p0_persistent_s_ { - // member variables int8_t p0_nominal_pusch_persistent = -126; int8_t p0_ue_pusch_persistent = -8; }; struct p0_persistent_sf_set2_r12_c_ { struct setup_s_ { - // member variables int8_t p0_nominal_pusch_persistent_sf_set2_r12 = -126; int8_t p0_ue_pusch_persistent_sf_set2_r12 = -8; }; @@ -17236,20 +16978,20 @@ struct sps_cfg_ul_stti_r15_c { struct setup_s_ { struct semi_persist_sched_interv_ul_stti_r15_opts { enum options { - s_tti1, - s_tti2, - s_tti3, - s_tti4, - s_tti6, - s_tti8, - s_tti12, - s_tti16, - s_tti20, - s_tti40, - s_tti60, - s_tti80, - s_tti120, - s_tti240, + stti1, + stti2, + stti3, + stti4, + stti6, + stti8, + stti12, + stti16, + stti20, + stti40, + stti60, + stti80, + stti120, + stti240, spare2, spare1, nulltype @@ -17269,13 +17011,11 @@ struct sps_cfg_ul_stti_r15_c { }; typedef enumerated implicit_release_after_e_; struct p0_persistent_r15_s_ { - // member variables int8_t p0_nominal_spusch_persistent_r15 = -126; int8_t p0_ue_spusch_persistent_r15 = -8; }; struct p0_persistent_sf_set2_r15_c_ { struct setup_s_ { - // member variables int8_t p0_nominal_spusch_persistent_sf_set2_r15 = -126; int8_t p0_ue_spusch_persistent_sf_set2_r15 = -8; }; @@ -17362,7 +17102,7 @@ struct sps_cfg_ul_stti_r15_c { p0_persistent_r15_s_ p0_persistent_r15; p0_persistent_sf_set2_r15_c_ p0_persistent_sf_set2_r15; uint8_t nof_conf_ul_sps_processes_stti_r15 = 1; - uint8_t s_tti_start_time_ul_r15 = 0; + uint8_t stti_start_time_ul_r15 = 0; tpc_pdcch_cfg_c tpc_pdcch_cfg_pusch_sps_r15; cyclic_shift_sps_s_tti_r15_e_ cyclic_shift_sps_s_tti_r15; bool ifdma_cfg_sps_r15 = false; @@ -17408,7 +17148,7 @@ private: struct spucch_cfg_r15_c { struct setup_s_ { struct two_ant_port_activ_spucch_format3_r15_s_ { - typedef bounded_array n3_spucch_an_list_r15_l_; + using n3_spucch_an_list_r15_l_ = bounded_array; // member variables n3_spucch_an_list_r15_l_ n3_spucch_an_list_r15; @@ -17453,7 +17193,6 @@ private: // SRS-CC-SetIndex-r14 ::= SEQUENCE struct srs_cc_set_idx_r14_s { - // member variables uint8_t cc_set_idx_r14 = 0; uint8_t cc_idx_in_one_cc_set_r14 = 0; @@ -17571,7 +17310,6 @@ struct srs_cfg_ap_v1310_s { // STAG-ToAddMod-r11 ::= SEQUENCE struct stag_to_add_mod_r11_s { - // member variables bool ext = false; uint8_t stag_id_r11 = 1; time_align_timer_e time_align_timer_stag_r11; @@ -17641,7 +17379,6 @@ private: // ShortTTI-r15 ::= SEQUENCE struct short_tti_r15_s { - // member variables bool dl_stti_len_r15_present = false; bool ul_stti_len_r15_present = false; short_tti_len_r15_e dl_stti_len_r15; @@ -17728,9 +17465,9 @@ private: // SlotOrSubslotPUSCH-Config-r15 ::= CHOICE struct slot_or_subslot_pusch_cfg_r15_c { struct setup_s_ { - typedef bounded_array beta_offset_subslot_ack_idx_r15_l_; - typedef bounded_array beta_offset2_subslot_ack_idx_r15_l_; - typedef bounded_array beta_offset_subslot_ri_idx_r15_l_; + using beta_offset_subslot_ack_idx_r15_l_ = bounded_array; + using beta_offset2_subslot_ack_idx_r15_l_ = bounded_array; + using beta_offset_subslot_ri_idx_r15_l_ = bounded_array; // member variables bool ext = false; @@ -17838,7 +17575,6 @@ private: // UplinkPowerControlDedicatedSTTI-r15 ::= SEQUENCE struct ul_pwr_ctrl_ded_stti_r15_s { - // member variables bool delta_tx_d_offset_list_spucch_r15_present = false; bool accumulation_enabled_stti_r15 = false; delta_tx_d_offset_list_spucch_r15_s delta_tx_d_offset_list_spucch_r15; @@ -18011,8 +17747,8 @@ struct ant_info_ded_s { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -18146,8 +17882,7 @@ struct ant_info_ded_r10_s { // AntennaInfoDedicated-v1250 ::= SEQUENCE struct ant_info_ded_v1250_s { - // member variables - bool alternative_codebook_enabled_for4_tx_r12 = false; + bool alt_codebook_enabled_for4_tx_r12 = false; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -18157,7 +17892,6 @@ struct ant_info_ded_v1250_s { // AntennaInfoDedicated-v1430 ::= SEQUENCE struct ant_info_ded_v1430_s { - // member variables bool ce_ue_tx_ant_sel_cfg_r14_present = false; // sequence methods @@ -18305,8 +18039,8 @@ struct ant_info_ded_v920_s { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -18345,7 +18079,6 @@ struct ant_info_ul_r10_s { // BandClassPriority1XRTT ::= SEQUENCE struct band_class_prio1_xrtt_s { - // member variables bandclass_cdma2000_e band_class; uint8_t cell_resel_prio = 0; @@ -18357,7 +18090,6 @@ struct band_class_prio1_xrtt_s { // BandClassPriorityHRPD ::= SEQUENCE struct band_class_prio_hrpd_s { - // member variables bandclass_cdma2000_e band_class; uint8_t cell_resel_prio = 0; @@ -18369,7 +18101,6 @@ struct band_class_prio_hrpd_s { // CFI-Config-r15 ::= SEQUENCE struct cfi_cfg_r15_s { - // member variables bool cfi_sf_non_mbsfn_r15_present = false; bool cfi_slot_subslot_non_mbsfn_r15_present = false; bool cfi_sf_mbsfn_r15_present = false; @@ -18404,7 +18135,6 @@ struct cfi_pattern_cfg_r15_s { // CQI-ReportConfig ::= SEQUENCE struct cqi_report_cfg_s { - // member variables bool cqi_report_mode_aperiodic_present = false; bool cqi_report_periodic_present = false; cqi_report_mode_aperiodic_e cqi_report_mode_aperiodic; @@ -18440,7 +18170,6 @@ struct cqi_report_cfg_v1530_s { // CQI-ReportConfig-v920 ::= SEQUENCE struct cqi_report_cfg_v920_s { - // member variables bool cqi_mask_r9_present = false; bool pmi_ri_report_r9_present = false; @@ -18450,20 +18179,19 @@ struct cqi_report_cfg_v920_s { void to_json(json_writer& j) const; }; -// CRS-AssistanceInfoList-r11 ::= SEQUENCE (SIZE (1..maxCellReport)) OF CRS-AssistanceInfo-r11 -typedef dyn_array crs_assist_info_list_r11_l; +// CRS-AssistanceInfoList-r11 ::= SEQUENCE (SIZE (1..8)) OF CRS-AssistanceInfo-r11 +using crs_assist_info_list_r11_l = dyn_array; -// CRS-AssistanceInfoList-r13 ::= SEQUENCE (SIZE (1..maxCellReport)) OF CRS-AssistanceInfo-r13 -typedef dyn_array crs_assist_info_list_r13_l; +// CRS-AssistanceInfoList-r13 ::= SEQUENCE (SIZE (1..8)) OF CRS-AssistanceInfo-r13 +using crs_assist_info_list_r13_l = dyn_array; -// CRS-AssistanceInfoList-r15 ::= SEQUENCE (SIZE (1..maxCellReport)) OF CRS-AssistanceInfo-r15 -typedef dyn_array crs_assist_info_list_r15_l; +// CRS-AssistanceInfoList-r15 ::= SEQUENCE (SIZE (1..8)) OF CRS-AssistanceInfo-r15 +using crs_assist_info_list_r15_l = dyn_array; // CSI-RS-Config-v1480 ::= SEQUENCE struct csi_rs_cfg_v1480_s { - // member variables - bool e_mimo_type_v1480_present = false; - csi_rs_cfg_emimo_v1480_c e_mimo_type_v1480; + bool emimo_type_v1480_present = false; + csi_rs_cfg_emimo_v1480_c emimo_type_v1480; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -18473,9 +18201,8 @@ struct csi_rs_cfg_v1480_s { // CSI-RS-Config-v1530 ::= SEQUENCE struct csi_rs_cfg_v1530_s { - // member variables - bool e_mimo_type_v1530_present = false; - csi_rs_cfg_emimo_v1530_c e_mimo_type_v1530; + bool emimo_type_v1530_present = false; + csi_rs_cfg_emimo_v1530_c emimo_type_v1530; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -18483,17 +18210,17 @@ struct csi_rs_cfg_v1530_s { void to_json(json_writer& j) const; }; -// CSI-RS-ConfigNZPToAddModList-r11 ::= SEQUENCE (SIZE (1..maxCSI-RS-NZP-r11)) OF CSI-RS-ConfigNZP-r11 -typedef dyn_array csi_rs_cfg_nzp_to_add_mod_list_r11_l; +// CSI-RS-ConfigNZPToAddModList-r11 ::= SEQUENCE (SIZE (1..3)) OF CSI-RS-ConfigNZP-r11 +using csi_rs_cfg_nzp_to_add_mod_list_r11_l = dyn_array; -// CSI-RS-ConfigNZPToAddModListExt-r13 ::= SEQUENCE (SIZE (1..maxCSI-RS-NZP-v1310)) OF CSI-RS-ConfigNZP-r11 -typedef dyn_array csi_rs_cfg_nzp_to_add_mod_list_ext_r13_l; +// CSI-RS-ConfigNZPToAddModListExt-r13 ::= SEQUENCE (SIZE (1..21)) OF CSI-RS-ConfigNZP-r11 +using csi_rs_cfg_nzp_to_add_mod_list_ext_r13_l = dyn_array; -// CSI-RS-ConfigNZPToReleaseList-r11 ::= SEQUENCE (SIZE (1..maxCSI-RS-NZP-r11)) OF INTEGER -typedef bounded_array csi_rs_cfg_nzp_to_release_list_r11_l; +// CSI-RS-ConfigNZPToReleaseList-r11 ::= SEQUENCE (SIZE (1..3)) OF INTEGER (1..3) +using csi_rs_cfg_nzp_to_release_list_r11_l = bounded_array; -// CSI-RS-ConfigNZPToReleaseListExt-r13 ::= SEQUENCE (SIZE (1..maxCSI-RS-NZP-v1310)) OF INTEGER -typedef bounded_array csi_rs_cfg_nzp_to_release_list_ext_r13_l; +// CSI-RS-ConfigNZPToReleaseListExt-r13 ::= SEQUENCE (SIZE (1..21)) OF INTEGER (4..24) +using csi_rs_cfg_nzp_to_release_list_ext_r13_l = bounded_array; // DRB-ToAddMod ::= SEQUENCE struct drb_to_add_mod_s { @@ -18713,10 +18440,10 @@ struct drx_cfg_c { assert_choice_type("sf160", type_.to_string(), "longDRX-CycleStartOffset"); return c.get(); } - uint8_t& sf256() + uint16_t& sf256() { assert_choice_type("sf256", type_.to_string(), "longDRX-CycleStartOffset"); - return c.get(); + return c.get(); } uint16_t& sf320() { @@ -18793,10 +18520,10 @@ struct drx_cfg_c { assert_choice_type("sf160", type_.to_string(), "longDRX-CycleStartOffset"); return c.get(); } - const uint8_t& sf256() const + const uint16_t& sf256() const { assert_choice_type("sf256", type_.to_string(), "longDRX-CycleStartOffset"); - return c.get(); + return c.get(); } const uint16_t& sf320() const { @@ -18873,10 +18600,10 @@ struct drx_cfg_c { set(types::sf160); return c.get(); } - uint8_t& set_sf256() + uint16_t& set_sf256() { set(types::sf256); - return c.get(); + return c.get(); } uint16_t& set_sf320() { @@ -18915,8 +18642,8 @@ struct drx_cfg_c { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -19157,8 +18884,8 @@ struct drx_cfg_v1130_s { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -19178,7 +18905,6 @@ struct drx_cfg_v1130_s { // DRX-Config-v1310 ::= SEQUENCE struct drx_cfg_v1310_s { struct long_drx_cycle_start_offset_v1310_s_ { - // member variables uint8_t sf60_v1310 = 0; }; @@ -19208,7 +18934,6 @@ struct epdcch_cfg_r11_s { struct setup_s_ { struct sf_pattern_cfg_r11_c_ { struct setup_s_ { - // member variables meas_sf_pattern_r10_c sf_pattern_r11; }; typedef setup_e types; @@ -19294,8 +19019,7 @@ struct epdcch_cfg_r11_s { // FreqPriorityEUTRA ::= SEQUENCE struct freq_prio_eutra_s { - // member variables - uint16_t carrier_freq = 0; + uint32_t carrier_freq = 0; uint8_t cell_resel_prio = 0; // sequence methods @@ -19306,7 +19030,6 @@ struct freq_prio_eutra_s { // FreqPriorityEUTRA-r12 ::= SEQUENCE struct freq_prio_eutra_r12_s { - // member variables uint32_t carrier_freq_r12 = 0; uint8_t cell_resel_prio_r12 = 0; @@ -19318,7 +19041,6 @@ struct freq_prio_eutra_r12_s { // FreqPriorityEUTRA-v1310 ::= SEQUENCE struct freq_prio_eutra_v1310_s { - // member variables bool cell_resel_sub_prio_r13_present = false; cell_resel_sub_prio_r13_e cell_resel_sub_prio_r13; @@ -19330,7 +19052,6 @@ struct freq_prio_eutra_v1310_s { // FreqPriorityNR-r15 ::= SEQUENCE struct freq_prio_nr_r15_s { - // member variables bool cell_resel_sub_prio_r15_present = false; uint32_t carrier_freq_r15 = 0; uint8_t cell_resel_prio_r15 = 0; @@ -19344,7 +19065,6 @@ struct freq_prio_nr_r15_s { // FreqPriorityUTRA-FDD ::= SEQUENCE struct freq_prio_utra_fdd_s { - // member variables uint16_t carrier_freq = 0; uint8_t cell_resel_prio = 0; @@ -19356,7 +19076,6 @@ struct freq_prio_utra_fdd_s { // FreqPriorityUTRA-TDD ::= SEQUENCE struct freq_prio_utra_tdd_s { - // member variables uint16_t carrier_freq = 0; uint8_t cell_resel_prio = 0; @@ -19368,7 +19087,6 @@ struct freq_prio_utra_tdd_s { // FreqsPriorityGERAN ::= SEQUENCE struct freqs_prio_geran_s { - // member variables carrier_freqs_geran_s carrier_freqs; uint8_t cell_resel_prio = 0; @@ -19378,16 +19096,15 @@ struct freqs_prio_geran_s { void to_json(json_writer& j) const; }; -// NeighCellsToAddModList-r12 ::= SEQUENCE (SIZE (1..maxNeighCell-r12)) OF NeighCellsInfo-r12 -typedef dyn_array neigh_cells_to_add_mod_list_r12_l; +// NeighCellsToAddModList-r12 ::= SEQUENCE (SIZE (1..8)) OF NeighCellsInfo-r12 +using neigh_cells_to_add_mod_list_r12_l = dyn_array; -// NeighCellsToReleaseList-r12 ::= SEQUENCE (SIZE (1..maxNeighCell-r12)) OF INTEGER -typedef bounded_array neigh_cells_to_release_list_r12_l; +// NeighCellsToReleaseList-r12 ::= SEQUENCE (SIZE (1..8)) OF INTEGER (0..503) +using neigh_cells_to_release_list_r12_l = bounded_array; // PDCCH-CandidateReductions-r13 ::= CHOICE struct pdcch_candidate_reductions_r13_c { struct setup_s_ { - // member variables pdcch_candidate_reduction_value_r13_e pdcch_candidate_reduction_al1_r13; pdcch_candidate_reduction_value_r13_e pdcch_candidate_reduction_al2_r13; pdcch_candidate_reduction_value_r13_e pdcch_candidate_reduction_al3_r13; @@ -19494,7 +19211,6 @@ struct pdsch_cfg_ded_v1280_s { // PDSCH-ConfigDedicated-v1310 ::= SEQUENCE struct pdsch_cfg_ded_v1310_s { - // member variables bool dmrs_cfg_pdsch_v1310_present = false; dmrs_cfg_v1310_s dmrs_cfg_pdsch_v1310; @@ -19541,7 +19257,7 @@ struct pdsch_cfg_ded_v1430_s { // PDSCH-ConfigDedicated-v1530 ::= SEQUENCE struct pdsch_cfg_ded_v1530_s { struct alt_mcs_table_scaling_cfg_r15_opts { - enum options { o_dot5, o_dot625, o_dot75, o_dot875, nulltype } value; + enum options { odot5, odot625, odot75, odot875, nulltype } value; typedef float number_type; std::string to_string() const; @@ -19553,7 +19269,7 @@ struct pdsch_cfg_ded_v1530_s { // member variables bool qcl_operation_v1530_present = false; bool tbs_idx_alt3_r15_present = false; - bool ce_cqi_alternative_table_cfg_r15_present = false; + bool ce_cqi_alt_table_cfg_r15_present = false; bool ce_pdsch_minus64_qam_cfg_r15_present = false; bool ce_pdsch_flex_start_prb_alloc_cfg_r15_present = false; bool alt_mcs_table_scaling_cfg_r15_present = false; @@ -19685,10 +19401,10 @@ struct pucch_cfg_ded_r13_s { typedef enumerated tdd_ack_nack_feedback_mode_r13_e_; struct pucch_format_r13_c_ { struct format3_r13_s_ { - typedef bounded_array n3_pucch_an_list_r13_l_; + using n3_pucch_an_list_r13_l_ = bounded_array; struct two_ant_port_activ_pucch_format3_r13_c_ { struct setup_s_ { - typedef bounded_array n3_pucch_an_list_p1_r13_l_; + using n3_pucch_an_list_p1_r13_l_ = bounded_array; // member variables n3_pucch_an_list_p1_r13_l_ n3_pucch_an_list_p1_r13; @@ -19733,8 +19449,8 @@ struct pucch_cfg_ded_r13_s { struct ch_sel_r13_s_ { struct n1_pucch_an_cs_r13_c_ { struct setup_s_ { - typedef dyn_array n1_pucch_an_cs_list_r13_l_; - typedef bounded_array n1_pucch_an_cs_list_p1_r13_l_; + using n1_pucch_an_cs_list_r13_l_ = dyn_array; + using n1_pucch_an_cs_list_p1_r13_l_ = bounded_array; // member variables n1_pucch_an_cs_list_r13_l_ n1_pucch_an_cs_list_r13; @@ -19776,8 +19492,8 @@ struct pucch_cfg_ded_r13_s { n1_pucch_an_cs_r13_c_ n1_pucch_an_cs_r13; }; struct format4_r13_s_ { - using format4_res_cfg_r13_l_ = std::array; - typedef dyn_array format4_multi_csi_res_cfg_r13_l_; + using format4_res_cfg_r13_l_ = std::array; + using format4_multi_csi_res_cfg_r13_l_ = dyn_array; // member variables bool format4_multi_csi_res_cfg_r13_present = false; @@ -19874,22 +19590,20 @@ struct pucch_cfg_ded_r13_s { } private: - types type_; - choice_buffer_t - c; + types type_; + choice_buffer_t c; void destroy_(); }; - struct n_pucch_param_r13_c_ { + struct npucch_param_r13_c_ { struct setup_s_ { - // member variables - uint16_t n_pucch_id_r13 = 0; + uint16_t npucch_id_r13 = 0; uint16_t n1_pucch_an_r13 = 0; }; typedef setup_e types; // choice methods - n_pucch_param_r13_c_() = default; + npucch_param_r13_c_() = default; void set(types::options e = types::nulltype); types type() const { return type_; } SRSASN_CODE pack(bit_ref& bref) const; @@ -19918,7 +19632,6 @@ struct pucch_cfg_ded_r13_s { }; struct nka_pucch_param_r13_c_ { struct setup_s_ { - // member variables uint16_t nka_pucch_an_r13 = 0; }; typedef setup_e types; @@ -20053,8 +19766,8 @@ struct pucch_cfg_ded_r13_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -20095,7 +19808,7 @@ struct pucch_cfg_ded_r13_s { bool two_ant_port_activ_pucch_format1a1b_r13_present = false; bool simul_pucch_pusch_r13_present = false; bool n1_pucch_an_rep_p1_r13_present = false; - bool n_pucch_param_r13_present = false; + bool npucch_param_r13_present = false; bool nka_pucch_param_r13_present = false; bool codebooksize_determination_r13_present = false; bool maximum_payload_coderate_r13_present = false; @@ -20104,7 +19817,7 @@ struct pucch_cfg_ded_r13_s { tdd_ack_nack_feedback_mode_r13_e_ tdd_ack_nack_feedback_mode_r13; pucch_format_r13_c_ pucch_format_r13; uint16_t n1_pucch_an_rep_p1_r13 = 0; - n_pucch_param_r13_c_ n_pucch_param_r13; + npucch_param_r13_c_ npucch_param_r13; nka_pucch_param_r13_c_ nka_pucch_param_r13; bool spatial_bundling_pucch_r13 = false; bool spatial_bundling_pusch_r13 = false; @@ -20125,7 +19838,7 @@ struct pucch_cfg_ded_v1020_s { struct ch_sel_r10_s_ { struct n1_pucch_an_cs_r10_c_ { struct setup_s_ { - typedef dyn_array n1_pucch_an_cs_list_r10_l_; + using n1_pucch_an_cs_list_r10_l_ = dyn_array; // member variables n1_pucch_an_cs_list_r10_l_ n1_pucch_an_cs_list_r10; @@ -20217,8 +19930,8 @@ struct pucch_cfg_ded_v1020_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -20241,7 +19954,7 @@ struct pucch_cfg_ded_v1020_s { struct pucch_cfg_ded_v1130_s { struct n1_pucch_an_cs_v1130_c_ { struct setup_s_ { - typedef bounded_array n1_pucch_an_cs_list_p1_r11_l_; + using n1_pucch_an_cs_list_p1_r11_l_ = bounded_array; // member variables n1_pucch_an_cs_list_p1_r11_l_ n1_pucch_an_cs_list_p1_r11; @@ -20276,16 +19989,15 @@ struct pucch_cfg_ded_v1130_s { types type_; setup_s_ c; }; - struct n_pucch_param_r11_c_ { + struct npucch_param_r11_c_ { struct setup_s_ { - // member variables - uint16_t n_pucch_id_r11 = 0; + uint16_t npucch_id_r11 = 0; uint16_t n1_pucch_an_r11 = 0; }; typedef setup_e types; // choice methods - n_pucch_param_r11_c_() = default; + npucch_param_r11_c_() = default; void set(types::options e = types::nulltype); types type() const { return type_; } SRSASN_CODE pack(bit_ref& bref) const; @@ -20315,9 +20027,9 @@ struct pucch_cfg_ded_v1130_s { // member variables bool n1_pucch_an_cs_v1130_present = false; - bool n_pucch_param_r11_present = false; + bool npucch_param_r11_present = false; n1_pucch_an_cs_v1130_c_ n1_pucch_an_cs_v1130; - n_pucch_param_r11_c_ n_pucch_param_r11; + npucch_param_r11_c_ npucch_param_r11; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -20329,7 +20041,6 @@ struct pucch_cfg_ded_v1130_s { struct pucch_cfg_ded_v1250_s { struct nka_pucch_param_r12_c_ { struct setup_s_ { - // member variables uint16_t nka_pucch_an_r12 = 0; }; typedef setup_e types; @@ -20395,7 +20106,6 @@ struct pucch_cfg_ded_v1430_s { // PUSCH-ConfigDedicated ::= SEQUENCE struct pusch_cfg_ded_s { - // member variables uint8_t beta_offset_ack_idx = 0; uint8_t beta_offset_ri_idx = 0; uint8_t beta_offset_cqi_idx = 0; @@ -20409,7 +20119,6 @@ struct pusch_cfg_ded_s { // PUSCH-ConfigDedicated-r13 ::= SEQUENCE struct pusch_cfg_ded_r13_s { struct beta_offset_mc_r13_s_ { - // member variables bool beta_offset2_ack_idx_mc_r13_present = false; uint8_t beta_offset_ack_idx_mc_r13 = 0; uint8_t beta_offset2_ack_idx_mc_r13 = 0; @@ -20418,9 +20127,8 @@ struct pusch_cfg_ded_r13_s { }; struct pusch_dmrs_r11_c_ { struct setup_s_ { - // member variables - uint16_t n_pusch_id_r13 = 0; - uint16_t n_dmrs_csh_id_r13 = 0; + uint16_t npusch_id_r13 = 0; + uint16_t ndmrs_csh_id_r13 = 0; }; typedef setup_e types; @@ -20455,7 +20163,6 @@ struct pusch_cfg_ded_r13_s { struct uci_on_pusch_c_ { struct setup_s_ { struct beta_offset_mc_r12_s_ { - // member variables bool beta_offset2_ack_idx_mc_sf_set2_r13_present = false; uint8_t beta_offset_ack_idx_mc_sf_set2_r13 = 0; uint8_t beta_offset2_ack_idx_mc_sf_set2_r13 = 0; @@ -20528,7 +20235,6 @@ struct pusch_cfg_ded_r13_s { // PUSCH-ConfigDedicated-v1020 ::= SEQUENCE struct pusch_cfg_ded_v1020_s { struct beta_offset_mc_r10_s_ { - // member variables uint8_t beta_offset_ack_idx_mc_r10 = 0; uint8_t beta_offset_ri_idx_mc_r10 = 0; uint8_t beta_offset_cqi_idx_mc_r10 = 0; @@ -20550,9 +20256,8 @@ struct pusch_cfg_ded_v1020_s { struct pusch_cfg_ded_v1130_s { struct pusch_dmrs_r11_c_ { struct setup_s_ { - // member variables - uint16_t n_pusch_id_r11 = 0; - uint16_t n_dmrs_csh_id_r11 = 0; + uint16_t npusch_id_r11 = 0; + uint16_t ndmrs_csh_id_r11 = 0; }; typedef setup_e types; @@ -20599,7 +20304,6 @@ struct pusch_cfg_ded_v1250_s { struct uci_on_pusch_c_ { struct setup_s_ { struct beta_offset_mc_r12_s_ { - // member variables uint8_t beta_offset_ack_idx_mc_sf_set2_r12 = 0; uint8_t beta_offset_ri_idx_mc_sf_set2_r12 = 0; uint8_t beta_offset_cqi_idx_mc_sf_set2_r12 = 0; @@ -20654,7 +20358,6 @@ struct pusch_cfg_ded_v1250_s { // PUSCH-ConfigDedicated-v1430 ::= SEQUENCE struct pusch_cfg_ded_v1430_s { - // member variables bool ce_pusch_nb_max_tbs_r14_present = false; bool ce_pusch_max_bw_r14_present = false; bool tdd_pusch_up_pts_r14_present = false; @@ -20673,7 +20376,6 @@ struct pusch_cfg_ded_v1430_s { struct pusch_cfg_ded_v1530_s { struct ce_pusch_flex_start_prb_alloc_cfg_r15_c_ { struct setup_s_ { - // member variables bool offset_ce_mode_b_r15_present = false; int8_t offset_ce_mode_b_r15 = -1; }; @@ -20709,7 +20411,6 @@ struct pusch_cfg_ded_v1530_s { }; struct ce_pusch_sub_prb_cfg_r15_c_ { struct setup_s_ { - // member variables bool location_ce_mode_b_r15_present = false; uint8_t location_ce_mode_b_r15 = 0; uint8_t six_tone_cyclic_shift_r15 = 0; @@ -20827,8 +20528,8 @@ struct pusch_enhance_cfg_r14_c { } private: - types type_; - choice_buffer_t c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -20901,7 +20602,6 @@ typedef enumerated periodic_bsr_timer_r12_e; // PhysicalConfigDedicatedSTTI-r15 ::= CHOICE struct phys_cfg_ded_stti_r15_c { struct setup_s_ { - // member variables bool ant_info_ded_stti_r15_present = false; bool ant_info_ul_stti_r15_present = false; bool pucch_cfg_ded_v1530_present = false; @@ -20940,8 +20640,8 @@ struct phys_cfg_ded_stti_r15_c { slot_or_subslot_pusch_cfg_r15_c slot_or_subslot_pusch_cfg_r15; spdcch_cfg_r15_c spdcch_cfg_r15; spucch_cfg_r15_c spucch_cfg_r15; - bool srs_dci7_triggering_cfg_r15 = false; - bool short_processing_time_r15 = false; + bool srs_dci7_trigger_cfg_r15 = false; + bool short_processing_time_r15 = false; short_tti_r15_s short_tti_r15; }; typedef setup_e types; @@ -21051,7 +20751,6 @@ struct sps_cfg_dl_c { typedef enumerated semi_persist_sched_interv_dl_e_; struct two_ant_port_activ_r10_c_ { struct setup_s_ { - // member variables n1_pucch_an_persistent_list_l n1_pucch_an_persistent_list_p1_r10; }; typedef setup_e types; @@ -21130,29 +20829,29 @@ private: setup_s_ c; }; -// SPS-ConfigSL-ToAddModList-r14 ::= SEQUENCE (SIZE (1..maxConfigSPS-r14)) OF SPS-ConfigSL-r14 -typedef dyn_array sps_cfg_sl_to_add_mod_list_r14_l; +// SPS-ConfigSL-ToAddModList-r14 ::= SEQUENCE (SIZE (1..8)) OF SPS-ConfigSL-r14 +using sps_cfg_sl_to_add_mod_list_r14_l = dyn_array; -// SPS-ConfigSL-ToReleaseList-r14 ::= SEQUENCE (SIZE (1..maxConfigSPS-r14)) OF INTEGER -typedef bounded_array sps_cfg_sl_to_release_list_r14_l; +// SPS-ConfigSL-ToReleaseList-r14 ::= SEQUENCE (SIZE (1..8)) OF INTEGER (1..8) +using sps_cfg_sl_to_release_list_r14_l = bounded_array; -// SPS-ConfigUL-STTI-ToAddModList-r15 ::= SEQUENCE (SIZE (1..maxConfigSPS-r15)) OF SPS-ConfigUL-STTI-r15 -typedef dyn_array sps_cfg_ul_stti_to_add_mod_list_r15_l; +// SPS-ConfigUL-STTI-ToAddModList-r15 ::= SEQUENCE (SIZE (1..6)) OF SPS-ConfigUL-STTI-r15 +using sps_cfg_ul_stti_to_add_mod_list_r15_l = dyn_array; -// SPS-ConfigUL-STTI-ToReleaseList-r15 ::= SEQUENCE (SIZE (1..maxConfigSPS-r15)) OF INTEGER -typedef bounded_array sps_cfg_ul_stti_to_release_list_r15_l; +// SPS-ConfigUL-STTI-ToReleaseList-r15 ::= SEQUENCE (SIZE (1..6)) OF INTEGER (1..6) +using sps_cfg_ul_stti_to_release_list_r15_l = bounded_array; -// SPS-ConfigUL-ToAddModList-r14 ::= SEQUENCE (SIZE (1..maxConfigSPS-r14)) OF SPS-ConfigUL -typedef dyn_array sps_cfg_ul_to_add_mod_list_r14_l; +// SPS-ConfigUL-ToAddModList-r14 ::= SEQUENCE (SIZE (1..8)) OF SPS-ConfigUL +using sps_cfg_ul_to_add_mod_list_r14_l = dyn_array; -// SPS-ConfigUL-ToAddModList-r15 ::= SEQUENCE (SIZE (1..maxConfigSPS-r15)) OF SPS-ConfigUL -typedef dyn_array sps_cfg_ul_to_add_mod_list_r15_l; +// SPS-ConfigUL-ToAddModList-r15 ::= SEQUENCE (SIZE (1..6)) OF SPS-ConfigUL +using sps_cfg_ul_to_add_mod_list_r15_l = dyn_array; -// SPS-ConfigUL-ToReleaseList-r14 ::= SEQUENCE (SIZE (1..maxConfigSPS-r14)) OF INTEGER -typedef bounded_array sps_cfg_ul_to_release_list_r14_l; +// SPS-ConfigUL-ToReleaseList-r14 ::= SEQUENCE (SIZE (1..8)) OF INTEGER (1..8) +using sps_cfg_ul_to_release_list_r14_l = bounded_array; -// SPS-ConfigUL-ToReleaseList-r15 ::= SEQUENCE (SIZE (1..maxConfigSPS-r15)) OF INTEGER -typedef bounded_array sps_cfg_ul_to_release_list_r15_l; +// SPS-ConfigUL-ToReleaseList-r15 ::= SEQUENCE (SIZE (1..6)) OF INTEGER (1..6) +using sps_cfg_ul_to_release_list_r15_l = bounded_array; // SRB-ToAddMod ::= SEQUENCE struct srb_to_add_mod_s { @@ -21253,7 +20952,7 @@ struct srb_to_add_mod_s { // SRS-TPC-PDCCH-Config-r14 ::= CHOICE struct srs_tpc_pdcch_cfg_r14_c { struct setup_s_ { - typedef dyn_array srs_cc_set_idxlist_r14_l_; + using srs_cc_set_idxlist_r14_l_ = dyn_array; // member variables bool srs_cc_set_idxlist_r14_present = false; @@ -21293,11 +20992,11 @@ private: setup_s_ c; }; -// STAG-ToAddModList-r11 ::= SEQUENCE (SIZE (1..maxSTAG-r11)) OF STAG-ToAddMod-r11 -typedef dyn_array stag_to_add_mod_list_r11_l; +// STAG-ToAddModList-r11 ::= SEQUENCE (SIZE (1..3)) OF STAG-ToAddMod-r11 +using stag_to_add_mod_list_r11_l = dyn_array; -// STAG-ToReleaseList-r11 ::= SEQUENCE (SIZE (1..maxSTAG-r11)) OF INTEGER -typedef bounded_array stag_to_release_list_r11_l; +// STAG-ToReleaseList-r11 ::= SEQUENCE (SIZE (1..3)) OF INTEGER (1..3) +using stag_to_release_list_r11_l = bounded_array; // SchedulingRequestConfig ::= CHOICE struct sched_request_cfg_c { @@ -21349,7 +21048,6 @@ private: // SchedulingRequestConfig-v1020 ::= SEQUENCE struct sched_request_cfg_v1020_s { - // member variables bool sr_pucch_res_idx_p1_r10_present = false; uint16_t sr_pucch_res_idx_p1_r10 = 0; @@ -21429,7 +21127,6 @@ private: // SoundingRS-UL-ConfigDedicated-v1020 ::= SEQUENCE struct srs_ul_cfg_ded_v1020_s { - // member variables srs_ant_port_e srs_ant_port_r10; // sequence methods @@ -21500,10 +21197,9 @@ private: // SoundingRS-UL-ConfigDedicatedAperiodic-r10 ::= CHOICE struct srs_ul_cfg_ded_aperiodic_r10_c { struct setup_s_ { - typedef dyn_array srs_cfg_ap_dci_format4_r10_l_; + using srs_cfg_ap_dci_format4_r10_l_ = dyn_array; struct srs_activ_ap_r10_c_ { struct setup_s_ { - // member variables bool ext = false; srs_cfg_ap_r10_s srs_cfg_ap_dci_format0_r10; srs_cfg_ap_r10_s srs_cfg_ap_dci_format1a2b2c_r10; @@ -21581,10 +21277,9 @@ private: // SoundingRS-UL-ConfigDedicatedAperiodic-v1310 ::= CHOICE struct srs_ul_cfg_ded_aperiodic_v1310_c { struct setup_s_ { - typedef dyn_array srs_cfg_ap_dci_format4_v1310_l_; + using srs_cfg_ap_dci_format4_v1310_l_ = dyn_array; struct srs_activ_ap_v1310_c_ { struct setup_s_ { - // member variables bool srs_cfg_ap_dci_format0_v1310_present = false; bool srs_cfg_ap_dci_format1a2b2c_v1310_present = false; srs_cfg_ap_v1310_s srs_cfg_ap_dci_format0_v1310; @@ -21669,10 +21364,9 @@ struct srs_ul_cfg_ded_aperiodic_up_pts_ext_r13_c { uint8_t to_number() const; }; typedef enumerated srs_up_pts_add_r13_e_; - typedef dyn_array srs_cfg_ap_dci_format4_r13_l_; + using srs_cfg_ap_dci_format4_r13_l_ = dyn_array; struct srs_activ_ap_r13_c_ { struct setup_s_ { - // member variables srs_cfg_ap_r13_s srs_cfg_ap_dci_format0_r13; srs_cfg_ap_r13_s srs_cfg_ap_dci_format1a2b2c_r13; }; @@ -21850,7 +21544,7 @@ struct ul_pwr_ctrl_ded_s { delta_mcs_enabled_e_ delta_mcs_enabled; bool accumulation_enabled = false; int8_t p0_ue_pucch = -8; - uint8_t p_srs_offset = 0; + uint8_t psrs_offset = 0; filt_coef_e filt_coef; // sequence methods @@ -21861,11 +21555,10 @@ struct ul_pwr_ctrl_ded_s { // UplinkPowerControlDedicated-v1020 ::= SEQUENCE struct ul_pwr_ctrl_ded_v1020_s { - // member variables bool delta_tx_d_offset_list_pucch_r10_present = false; - bool p_srs_offset_ap_r10_present = false; + bool psrs_offset_ap_r10_present = false; delta_tx_d_offset_list_pucch_r10_s delta_tx_d_offset_list_pucch_r10; - uint8_t p_srs_offset_ap_r10 = 0; + uint8_t psrs_offset_ap_r10 = 0; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -21875,12 +21568,11 @@ struct ul_pwr_ctrl_ded_v1020_s { // UplinkPowerControlDedicated-v1130 ::= SEQUENCE struct ul_pwr_ctrl_ded_v1130_s { - // member variables - bool p_srs_offset_v1130_present = false; - bool p_srs_offset_ap_v1130_present = false; + bool psrs_offset_v1130_present = false; + bool psrs_offset_ap_v1130_present = false; bool delta_tx_d_offset_list_pucch_v1130_present = false; - uint8_t p_srs_offset_v1130 = 16; - uint8_t p_srs_offset_ap_v1130 = 16; + uint8_t psrs_offset_v1130 = 16; + uint8_t psrs_offset_ap_v1130 = 16; delta_tx_d_offset_list_pucch_v1130_s delta_tx_d_offset_list_pucch_v1130; // sequence methods @@ -21893,7 +21585,6 @@ struct ul_pwr_ctrl_ded_v1130_s { struct ul_pwr_ctrl_ded_v1250_s { struct set2_pwr_ctrl_param_c_ { struct setup_s_ { - // member variables fixed_bitstring<10> tpc_sf_set_r12; int8_t p0_nominal_pusch_sf_set2_r12 = -126; alpha_r12_e alpha_sf_set2_r12; @@ -21941,7 +21632,6 @@ struct ul_pwr_ctrl_ded_v1250_s { // UplinkPowerControlDedicated-v1530 ::= SEQUENCE struct ul_pwr_ctrl_ded_v1530_s { - // member variables bool alpha_ue_r15_present = false; bool p0_ue_pusch_r15_present = false; alpha_r12_e alpha_ue_r15; @@ -21953,15 +21643,14 @@ struct ul_pwr_ctrl_ded_v1530_s { void to_json(json_writer& j) const; }; -// BandClassPriorityList1XRTT ::= SEQUENCE (SIZE (1..maxCDMA-BandClass)) OF BandClassPriority1XRTT -typedef dyn_array band_class_prio_list1_xrtt_l; +// BandClassPriorityList1XRTT ::= SEQUENCE (SIZE (1..32)) OF BandClassPriority1XRTT +using band_class_prio_list1_xrtt_l = dyn_array; -// BandClassPriorityListHRPD ::= SEQUENCE (SIZE (1..maxCDMA-BandClass)) OF BandClassPriorityHRPD -typedef dyn_array band_class_prio_list_hrpd_l; +// BandClassPriorityListHRPD ::= SEQUENCE (SIZE (1..32)) OF BandClassPriorityHRPD +using band_class_prio_list_hrpd_l = dyn_array; // CarrierFreqCDMA2000 ::= SEQUENCE struct carrier_freq_cdma2000_s { - // member variables bandclass_cdma2000_e band_class; uint16_t arfcn = 0; @@ -21971,24 +21660,23 @@ struct carrier_freq_cdma2000_s { void to_json(json_writer& j) const; }; -// CarrierFreqListUTRA-TDD-r10 ::= SEQUENCE (SIZE (1..maxFreqUTRA-TDD-r10)) OF INTEGER -typedef bounded_array carrier_freq_list_utra_tdd_r10_l; +// CarrierFreqListUTRA-TDD-r10 ::= SEQUENCE (SIZE (1..6)) OF INTEGER (0..16383) +using carrier_freq_list_utra_tdd_r10_l = bounded_array; -// DRB-ToAddModList ::= SEQUENCE (SIZE (1..maxDRB)) OF DRB-ToAddMod -typedef dyn_array drb_to_add_mod_list_l; +// DRB-ToAddModList ::= SEQUENCE (SIZE (1..11)) OF DRB-ToAddMod +using drb_to_add_mod_list_l = dyn_array; -// DRB-ToAddModList-r15 ::= SEQUENCE (SIZE (1..maxDRB-r15)) OF DRB-ToAddMod -typedef dyn_array drb_to_add_mod_list_r15_l; +// DRB-ToAddModList-r15 ::= SEQUENCE (SIZE (1..15)) OF DRB-ToAddMod +using drb_to_add_mod_list_r15_l = dyn_array; -// DRB-ToReleaseList ::= SEQUENCE (SIZE (1..maxDRB)) OF INTEGER -typedef bounded_array drb_to_release_list_l; +// DRB-ToReleaseList ::= SEQUENCE (SIZE (1..11)) OF INTEGER (1..32) +using drb_to_release_list_l = bounded_array; -// DRB-ToReleaseList-r15 ::= SEQUENCE (SIZE (1..maxDRB-r15)) OF INTEGER -typedef bounded_array drb_to_release_list_r15_l; +// DRB-ToReleaseList-r15 ::= SEQUENCE (SIZE (1..15)) OF INTEGER (1..32) +using drb_to_release_list_r15_l = bounded_array; // FreqPriorityEUTRA-v9e0 ::= SEQUENCE struct freq_prio_eutra_v9e0_s { - // member variables bool carrier_freq_v9e0_present = false; uint32_t carrier_freq_v9e0 = 65536; @@ -21998,29 +21686,29 @@ struct freq_prio_eutra_v9e0_s { void to_json(json_writer& j) const; }; -// FreqPriorityListEUTRA ::= SEQUENCE (SIZE (1..maxFreq)) OF FreqPriorityEUTRA -typedef dyn_array freq_prio_list_eutra_l; +// FreqPriorityListEUTRA ::= SEQUENCE (SIZE (1..8)) OF FreqPriorityEUTRA +using freq_prio_list_eutra_l = dyn_array; -// FreqPriorityListEUTRA-v1310 ::= SEQUENCE (SIZE (1..maxFreq)) OF FreqPriorityEUTRA-v1310 -typedef dyn_array freq_prio_list_eutra_v1310_l; +// FreqPriorityListEUTRA-v1310 ::= SEQUENCE (SIZE (1..8)) OF FreqPriorityEUTRA-v1310 +using freq_prio_list_eutra_v1310_l = dyn_array; -// FreqPriorityListExtEUTRA-r12 ::= SEQUENCE (SIZE (1..maxFreq)) OF FreqPriorityEUTRA-r12 -typedef dyn_array freq_prio_list_ext_eutra_r12_l; +// FreqPriorityListExtEUTRA-r12 ::= SEQUENCE (SIZE (1..8)) OF FreqPriorityEUTRA-r12 +using freq_prio_list_ext_eutra_r12_l = dyn_array; -// FreqPriorityListExtEUTRA-v1310 ::= SEQUENCE (SIZE (1..maxFreq)) OF FreqPriorityEUTRA-v1310 -typedef dyn_array freq_prio_list_ext_eutra_v1310_l; +// FreqPriorityListExtEUTRA-v1310 ::= SEQUENCE (SIZE (1..8)) OF FreqPriorityEUTRA-v1310 +using freq_prio_list_ext_eutra_v1310_l = dyn_array; -// FreqPriorityListNR-r15 ::= SEQUENCE (SIZE (1..maxFreq)) OF FreqPriorityNR-r15 -typedef dyn_array freq_prio_list_nr_r15_l; +// FreqPriorityListNR-r15 ::= SEQUENCE (SIZE (1..8)) OF FreqPriorityNR-r15 +using freq_prio_list_nr_r15_l = dyn_array; -// FreqPriorityListUTRA-FDD ::= SEQUENCE (SIZE (1..maxUTRA-FDD-Carrier)) OF FreqPriorityUTRA-FDD -typedef dyn_array freq_prio_list_utra_fdd_l; +// FreqPriorityListUTRA-FDD ::= SEQUENCE (SIZE (1..16)) OF FreqPriorityUTRA-FDD +using freq_prio_list_utra_fdd_l = dyn_array; -// FreqPriorityListUTRA-TDD ::= SEQUENCE (SIZE (1..maxUTRA-TDD-Carrier)) OF FreqPriorityUTRA-TDD -typedef dyn_array freq_prio_list_utra_tdd_l; +// FreqPriorityListUTRA-TDD ::= SEQUENCE (SIZE (1..16)) OF FreqPriorityUTRA-TDD +using freq_prio_list_utra_tdd_l = dyn_array; -// FreqsPriorityListGERAN ::= SEQUENCE (SIZE (1..maxGNFG)) OF FreqsPriorityGERAN -typedef dyn_array freqs_prio_list_geran_l; +// FreqsPriorityListGERAN ::= SEQUENCE (SIZE (1..16)) OF FreqsPriorityGERAN +using freqs_prio_list_geran_l = dyn_array; // MAC-MainConfig ::= SEQUENCE struct mac_main_cfg_s { @@ -22105,25 +21793,25 @@ struct mac_main_cfg_s { setup_s_ c; }; struct mac_main_cfg_v1020_s_ { - struct s_cell_deactivation_timer_r10_opts { + struct scell_deactivation_timer_r10_opts { enum options { rf2, rf4, rf8, rf16, rf32, rf64, rf128, spare, nulltype } value; typedef uint8_t number_type; std::string to_string() const; uint8_t to_number() const; }; - typedef enumerated s_cell_deactivation_timer_r10_e_; + typedef enumerated scell_deactivation_timer_r10_e_; // member variables - bool s_cell_deactivation_timer_r10_present = false; - bool extended_bsr_sizes_r10_present = false; - bool extended_phr_r10_present = false; - s_cell_deactivation_timer_r10_e_ s_cell_deactivation_timer_r10; + bool scell_deactivation_timer_r10_present = false; + bool extended_bsr_sizes_r10_present = false; + bool extended_phr_r10_present = false; + scell_deactivation_timer_r10_e_ scell_deactivation_timer_r10; }; struct dual_connect_phr_c_ { struct setup_s_ { struct phr_mode_other_cg_r12_opts { - enum options { real, virtual_type, nulltype } value; + enum options { real, virtual_value, nulltype } value; std::string to_string() const; }; @@ -22206,7 +21894,7 @@ struct mac_main_cfg_s { types type_; setup_s_ c; }; - struct e_drx_cfg_cycle_start_offset_r13_c_ { + struct edrx_cfg_cycle_start_offset_r13_c_ { struct setup_c_ { struct types_opts { enum options { sf5120, sf10240, nulltype } value; @@ -22260,15 +21948,15 @@ struct mac_main_cfg_s { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; typedef setup_e types; // choice methods - e_drx_cfg_cycle_start_offset_r13_c_() = default; + edrx_cfg_cycle_start_offset_r13_c_() = default; void set(types::options e = types::nulltype); types type() const { return type_; } SRSASN_CODE pack(bit_ref& bref) const; @@ -22328,7 +22016,6 @@ struct mac_main_cfg_s { }; struct skip_ul_tx_r14_c_ { struct setup_s_ { - // member variables bool skip_ul_tx_sps_r14_present = false; bool skip_ul_tx_dynamic_r14_present = false; }; @@ -22364,7 +22051,6 @@ struct mac_main_cfg_s { }; struct data_inactivity_timer_cfg_r14_c_ { struct setup_s_ { - // member variables data_inactivity_timer_r14_e data_inactivity_timer_r14; }; typedef setup_e types; @@ -22474,14 +22160,14 @@ struct mac_main_cfg_s { }; struct dormant_state_timers_r15_c_ { struct setup_s_ { - struct s_cell_hibernation_timer_r15_opts { + struct scell_hibernation_timer_r15_opts { enum options { rf2, rf4, rf8, rf16, rf32, rf64, rf128, spare, nulltype } value; typedef uint8_t number_type; std::string to_string() const; uint8_t to_number() const; }; - typedef enumerated s_cell_hibernation_timer_r15_e_; + typedef enumerated scell_hibernation_timer_r15_e_; struct dormant_scell_deactivation_timer_r15_opts { enum options { rf2, @@ -22510,9 +22196,9 @@ struct mac_main_cfg_s { typedef enumerated dormant_scell_deactivation_timer_r15_e_; // member variables - bool s_cell_hibernation_timer_r15_present = false; + bool scell_hibernation_timer_r15_present = false; bool dormant_scell_deactivation_timer_r15_present = false; - s_cell_hibernation_timer_r15_e_ s_cell_hibernation_timer_r15; + scell_hibernation_timer_r15_e_ scell_hibernation_timer_r15; dormant_scell_deactivation_timer_r15_e_ dormant_scell_deactivation_timer_r15; }; typedef setup_e types; @@ -22571,10 +22257,10 @@ struct mac_main_cfg_s { copy_ptr dual_connect_phr; copy_ptr lc_ch_sr_cfg_r12; // group 4 - bool extended_phr2_r13_present = false; - copy_ptr drx_cfg_v1310; - bool extended_phr2_r13 = false; - copy_ptr e_drx_cfg_cycle_start_offset_r13; + bool extended_phr2_r13_present = false; + copy_ptr drx_cfg_v1310; + bool extended_phr2_r13 = false; + copy_ptr edrx_cfg_cycle_start_offset_r13; // group 5 copy_ptr drx_cfg_r13; // group 6 @@ -22630,7 +22316,6 @@ private: // NAICS-AssistanceInfo-r12 ::= CHOICE struct naics_assist_info_r12_c { struct setup_s_ { - // member variables bool neigh_cells_to_release_list_r12_present = false; bool neigh_cells_to_add_mod_list_r12_present = false; bool serv_cellp_a_r12_present = false; @@ -22844,7 +22529,6 @@ struct phys_cfg_ded_s { }; struct add_spec_emission_ca_r10_c_ { struct setup_s_ { - // member variables uint8_t add_spec_emission_pcell_r10 = 1; }; typedef setup_e types; @@ -22915,8 +22599,8 @@ struct phys_cfg_ded_s { setup_e_ c; }; struct type_a_srs_tpc_pdcch_group_r14_c_ { - typedef dyn_array setup_l_; - typedef setup_e types; + using setup_l_ = dyn_array; + typedef setup_e types; // choice methods type_a_srs_tpc_pdcch_group_r14_c_() = default; @@ -23001,10 +22685,10 @@ struct phys_cfg_ded_s { types type_; setup_s_ c; }; - typedef dyn_array srs_ul_periodic_cfg_ded_list_r14_l_; - typedef dyn_array srs_ul_periodic_cfg_ded_up_pts_ext_list_r14_l_; - typedef dyn_array srs_ul_aperiodic_cfg_ded_list_r14_l_; - typedef dyn_array srs_ul_cfg_ded_ap_up_pts_ext_list_r14_l_; + using srs_ul_periodic_cfg_ded_list_r14_l_ = dyn_array; + using srs_ul_periodic_cfg_ded_up_pts_ext_list_r14_l_ = dyn_array; + using srs_ul_aperiodic_cfg_ded_list_r14_l_ = dyn_array; + using srs_ul_cfg_ded_ap_up_pts_ext_list_r14_l_ = dyn_array; struct semi_static_cfi_cfg_r15_c_ { struct setup_c_ { struct types_opts { @@ -23057,8 +22741,8 @@ struct phys_cfg_ded_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -23461,7 +23145,6 @@ private: // RRCConnectionReject-v1020-IEs ::= SEQUENCE struct rrc_conn_reject_v1020_ies_s { - // member variables bool extended_wait_time_r10_present = false; bool non_crit_ext_present = false; uint16_t extended_wait_time_r10 = 1; @@ -23475,7 +23158,6 @@ struct rrc_conn_reject_v1020_ies_s { // SPS-Config ::= SEQUENCE struct sps_cfg_s { - // member variables bool semi_persist_sched_c_rnti_present = false; bool sps_cfg_dl_present = false; bool sps_cfg_ul_present = false; @@ -23491,7 +23173,6 @@ struct sps_cfg_s { // SPS-Config-v1430 ::= SEQUENCE struct sps_cfg_v1430_s { - // member variables bool ul_sps_v_rnti_r14_present = false; bool sl_sps_v_rnti_r14_present = false; bool sps_cfg_ul_to_add_mod_list_r14_present = false; @@ -23513,7 +23194,6 @@ struct sps_cfg_v1430_s { // SPS-Config-v1530 ::= SEQUENCE struct sps_cfg_v1530_s { - // member variables bool semi_persist_sched_c_rnti_r15_present = false; bool sps_cfg_dl_present = false; bool sps_cfg_ul_stti_to_add_mod_list_r15_present = false; @@ -23537,10 +23217,10 @@ struct sps_cfg_v1530_s { using srb_to_add_mod_ext_list_r15_l = std::array; // SRB-ToAddModList ::= SEQUENCE (SIZE (1..2)) OF SRB-ToAddMod -typedef dyn_array srb_to_add_mod_list_l; +using srb_to_add_mod_list_l = dyn_array; -// SRB-ToReleaseListDupl-r15 ::= SEQUENCE (SIZE (1..2)) OF INTEGER -typedef bounded_array srb_to_release_list_dupl_r15_l; +// SRB-ToReleaseListDupl-r15 ::= SEQUENCE (SIZE (1..2)) OF INTEGER (1..2) +using srb_to_release_list_dupl_r15_l = bounded_array; // IdleModeMobilityControlInfo ::= SEQUENCE struct idle_mode_mob_ctrl_info_s { @@ -23586,7 +23266,7 @@ struct idle_mode_mob_ctrl_info_s { // IdleModeMobilityControlInfo-v9e0 ::= SEQUENCE struct idle_mode_mob_ctrl_info_v9e0_s { - typedef dyn_array freq_prio_list_eutra_v9e0_l_; + using freq_prio_list_eutra_v9e0_l_ = dyn_array; // member variables freq_prio_list_eutra_v9e0_l_ freq_prio_list_eutra_v9e0; @@ -23599,7 +23279,6 @@ struct idle_mode_mob_ctrl_info_v9e0_s { // RRCConnectionReestablishment-v8a0-IEs ::= SEQUENCE struct rrc_conn_reest_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -23612,7 +23291,6 @@ struct rrc_conn_reest_v8a0_ies_s { // RRCConnectionReestablishmentReject-v8a0-IEs ::= SEQUENCE struct rrc_conn_reest_reject_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -23625,7 +23303,6 @@ struct rrc_conn_reest_reject_v8a0_ies_s { // RRCConnectionReject-v8a0-IEs ::= SEQUENCE struct rrc_conn_reject_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -23639,7 +23316,6 @@ struct rrc_conn_reject_v8a0_ies_s { // RRCConnectionSetup-v8a0-IEs ::= SEQUENCE struct rrc_conn_setup_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -23931,17 +23607,14 @@ struct redirected_carrier_info_r15_ies_c { } private: - types type_; - choice_buffer_t - c; + types type_; + choice_buffer_t c; void destroy_(); }; // RRCConnectionReestablishment-r8-IEs ::= SEQUENCE struct rrc_conn_reest_r8_ies_s { - // member variables bool non_crit_ext_present = false; rr_cfg_ded_s rr_cfg_ded; uint8_t next_hop_chaining_count = 0; @@ -23955,7 +23628,6 @@ struct rrc_conn_reest_r8_ies_s { // RRCConnectionReestablishmentReject-r8-IEs ::= SEQUENCE struct rrc_conn_reest_reject_r8_ies_s { - // member variables bool non_crit_ext_present = false; rrc_conn_reest_reject_v8a0_ies_s non_crit_ext; @@ -23967,7 +23639,6 @@ struct rrc_conn_reest_reject_r8_ies_s { // RRCConnectionReject-r8-IEs ::= SEQUENCE struct rrc_conn_reject_r8_ies_s { - // member variables bool non_crit_ext_present = false; uint8_t wait_time = 1; rrc_conn_reject_v8a0_ies_s non_crit_ext; @@ -23980,7 +23651,6 @@ struct rrc_conn_reject_r8_ies_s { // RRCConnectionSetup-r8-IEs ::= SEQUENCE struct rrc_conn_setup_r8_ies_s { - // member variables bool non_crit_ext_present = false; rr_cfg_ded_s rr_cfg_ded; rrc_conn_setup_v8a0_ies_s non_crit_ext; @@ -23993,7 +23663,6 @@ struct rrc_conn_setup_r8_ies_s { // RRCEarlyDataComplete-r15-IEs ::= SEQUENCE struct rrc_early_data_complete_r15_ies_s { - // member variables bool ded_info_nas_r15_present = false; bool extended_wait_time_r15_present = false; bool idle_mode_mob_ctrl_info_r15_present = false; @@ -24090,8 +23759,8 @@ struct rrc_conn_reest_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -24144,8 +23813,8 @@ struct rrc_conn_reest_reject_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -24228,8 +23897,8 @@ struct rrc_conn_reject_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -24312,8 +23981,8 @@ struct rrc_conn_setup_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -24366,8 +24035,8 @@ struct rrc_early_data_complete_r15_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -24464,10 +24133,8 @@ struct dl_ccch_msg_type_c { } private: - types type_; - choice_buffer_t - c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -24545,8 +24212,8 @@ struct dl_ccch_msg_type_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -24602,15 +24269,14 @@ struct dl_ccch_msg_type_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; // DL-CCCH-Message ::= SEQUENCE struct dl_ccch_msg_s { - // member variables dl_ccch_msg_type_c msg; // sequence methods @@ -24632,7 +24298,6 @@ typedef enumerated pdcch_candidate_red // PDCCH-CandidateReductionsLAA-UL-r14 ::= CHOICE struct pdcch_candidate_reductions_laa_ul_r14_c { struct setup_s_ { - // member variables pdcch_candidate_reduction_value_r13_e pdcch_candidate_reduction_al1_r14; pdcch_candidate_reduction_value_r13_e pdcch_candidate_reduction_al2_r14; pdcch_candidate_reduction_value_r14_e pdcch_candidate_reduction_al3_r14; @@ -24682,7 +24347,7 @@ struct aul_cfg_r15_c { }; typedef enumerated tx_mode_ul_aul_r15_e_; struct aul_start_partial_bw_inside_mcot_r15_opts { - enum options { o34, o43, o52, o61, o_os1, nulltype } value; + enum options { o34, o43, o52, o61, oos1, nulltype } value; typedef uint8_t number_type; std::string to_string() const; @@ -24690,7 +24355,7 @@ struct aul_cfg_r15_c { }; typedef enumerated aul_start_partial_bw_inside_mcot_r15_e_; struct aul_start_partial_bw_outside_mcot_r15_opts { - enum options { o16, o25, o34, o43, o52, o61, o_os1, nulltype } value; + enum options { o16, o25, o34, o43, o52, o61, oos1, nulltype } value; typedef uint8_t number_type; std::string to_string() const; @@ -24783,7 +24448,6 @@ struct cqi_report_periodic_scell_r15_c { struct setup_s_ { struct csi_sf_pattern_dormant_r15_c_ { struct setup_s_ { - // member variables meas_sf_pattern_r10_c csi_meas_sf_set1_r15; meas_sf_pattern_r10_c csi_meas_sf_set2_r15; }; @@ -24896,8 +24560,8 @@ struct cqi_report_periodic_scell_r15_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -24944,7 +24608,6 @@ private: // CrossCarrierSchedulingConfigLAA-UL-r14 ::= SEQUENCE struct cross_carrier_sched_cfg_laa_ul_r14_s { - // member variables uint8_t sched_cell_id_r14 = 0; uint8_t cif_in_sched_cell_r14 = 1; @@ -25006,8 +24669,8 @@ struct lbt_cfg_r14_c { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -25055,7 +24718,6 @@ struct pdcch_cfg_laa_r14_s { // PUSCH-ModeConfigLAA-r15 ::= SEQUENCE struct pusch_mode_cfg_laa_r15_s { - // member variables bool laa_pusch_mode1 = false; bool laa_pusch_mode2 = false; bool laa_pusch_mode3 = false; @@ -25069,7 +24731,6 @@ struct pusch_mode_cfg_laa_r15_s { // SoundingRS-UL-ConfigDedicatedAperiodic-v1430 ::= CHOICE struct srs_ul_cfg_ded_aperiodic_v1430_c { struct setup_s_ { - // member variables bool srs_sf_ind_r14_present = false; uint8_t srs_sf_ind_r14 = 1; }; @@ -25106,7 +24767,6 @@ private: // CQI-ReportConfigSCell-r10 ::= SEQUENCE struct cqi_report_cfg_scell_r10_s { - // member variables bool cqi_report_mode_aperiodic_r10_present = false; bool cqi_report_periodic_scell_r10_present = false; bool pmi_ri_report_r10_present = false; @@ -25225,8 +24885,8 @@ struct cqi_short_cfg_scell_r15_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -25273,11 +24933,9 @@ private: struct cross_carrier_sched_cfg_r10_s { struct sched_cell_info_r10_c_ { struct own_r10_s_ { - // member variables bool cif_presence_r10 = false; }; struct other_r10_s_ { - // member variables uint8_t sched_cell_id_r10 = 0; uint8_t pdsch_start_r10 = 1; }; @@ -25331,8 +24989,8 @@ struct cross_carrier_sched_cfg_r10_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -25350,11 +25008,9 @@ struct cross_carrier_sched_cfg_r10_s { struct cross_carrier_sched_cfg_r13_s { struct sched_cell_info_r13_c_ { struct own_r13_s_ { - // member variables bool cif_presence_r13 = false; }; struct other_r13_s_ { - // member variables uint8_t sched_cell_id_r13 = 0; uint8_t pdsch_start_r13 = 1; uint8_t cif_in_sched_cell_r13 = 1; @@ -25409,8 +25065,8 @@ struct cross_carrier_sched_cfg_r13_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -25659,7 +25315,6 @@ struct laa_scell_cfg_r13_s { struct laa_scell_cfg_v1430_s { struct cross_carrier_sched_cfg_ul_r14_c_ { struct setup_s_ { - // member variables cross_carrier_sched_cfg_laa_ul_r14_s cross_carrier_sched_cfg_laa_ul_r14; }; typedef setup_e types; @@ -25712,7 +25367,6 @@ struct laa_scell_cfg_v1430_s { // LAA-SCellConfiguration-v1530 ::= SEQUENCE struct laa_scell_cfg_v1530_s { - // member variables bool aul_cfg_r15_present = false; bool pusch_mode_cfg_laa_r15_present = false; aul_cfg_r15_c aul_cfg_r15; @@ -25726,7 +25380,6 @@ struct laa_scell_cfg_v1530_s { // PDCCH-ConfigSCell-r13 ::= SEQUENCE struct pdcch_cfg_scell_r13_s { - // member variables bool skip_monitoring_dci_format0_minus1_a_r13_present = false; // sequence methods @@ -25737,7 +25390,6 @@ struct pdcch_cfg_scell_r13_s { // PDSCH-ConfigDedicatedSCell-v1430 ::= SEQUENCE struct pdsch_cfg_ded_scell_v1430_s { - // member variables bool tbs_idx_alt2_r14_present = false; // sequence methods @@ -25791,7 +25443,6 @@ struct pucch_cfg_ded_v1370_s { // PUSCH-ConfigDedicatedSCell-r10 ::= SEQUENCE struct pusch_cfg_ded_scell_r10_s { - // member variables bool group_hop_disabled_r10_present = false; bool dmrs_with_occ_activ_r10_present = false; @@ -25803,7 +25454,6 @@ struct pusch_cfg_ded_scell_r10_s { // PUSCH-ConfigDedicatedSCell-v1430 ::= SEQUENCE struct pusch_cfg_ded_scell_v1430_s { - // member variables bool enable256_qam_r14_present = false; enable256_qam_r14_c enable256_qam_r14; @@ -25817,7 +25467,6 @@ struct pusch_cfg_ded_scell_v1430_s { struct pusch_cfg_ded_scell_v1530_s { struct uci_on_pusch_r15_c_ { struct setup_s_ { - // member variables uint8_t beta_offset_aul_r15 = 0; }; typedef setup_e types; @@ -25912,7 +25561,7 @@ private: // SoundingRS-AperiodicSet-r14 ::= SEQUENCE struct srs_aperiodic_set_r14_s { - typedef dyn_array srs_cc_set_idx_list_r14_l_; + using srs_cc_set_idx_list_r14_l_ = dyn_array; // member variables bool srs_cc_set_idx_list_r14_present = false; @@ -25927,7 +25576,7 @@ struct srs_aperiodic_set_r14_s { // SoundingRS-AperiodicSetUpPTsExt-r14 ::= SEQUENCE struct srs_aperiodic_set_up_pts_ext_r14_s { - typedef dyn_array srs_cc_set_idx_list_r14_l_; + using srs_cc_set_idx_list_r14_l_ = dyn_array; // member variables bool srs_cc_set_idx_list_r14_present = false; @@ -25943,7 +25592,6 @@ struct srs_aperiodic_set_up_pts_ext_r14_s { // TPC-PDCCH-ConfigSCell-r13 ::= CHOICE struct tpc_pdcch_cfg_scell_r13_c { struct setup_s_ { - // member variables tpc_idx_c tpc_idx_pucch_scell_r13; }; typedef setup_e types; @@ -25979,7 +25627,6 @@ private: // UplinkPUSCH-LessPowerControlDedicated-v1430 ::= SEQUENCE struct ul_pusch_less_pwr_ctrl_ded_v1430_s { - // member variables bool p0_ue_periodic_srs_r14_present = false; bool p0_ue_aperiodic_srs_r14_present = false; int8_t p0_ue_periodic_srs_r14 = -8; @@ -26003,20 +25650,20 @@ struct ul_pwr_ctrl_ded_scell_r10_s { }; typedef enumerated delta_mcs_enabled_r10_e_; struct pathloss_ref_linking_r10_opts { - enum options { p_cell, s_cell, nulltype } value; + enum options { pcell, scell, nulltype } value; std::string to_string() const; }; typedef enumerated pathloss_ref_linking_r10_e_; // member variables - bool p_srs_offset_ap_r10_present = false; - bool filt_coef_r10_present = false; - int8_t p0_ue_pusch_r10 = -8; + bool psrs_offset_ap_r10_present = false; + bool filt_coef_r10_present = false; + int8_t p0_ue_pusch_r10 = -8; delta_mcs_enabled_r10_e_ delta_mcs_enabled_r10; bool accumulation_enabled_r10 = false; - uint8_t p_srs_offset_r10 = 0; - uint8_t p_srs_offset_ap_r10 = 0; + uint8_t psrs_offset_r10 = 0; + uint8_t psrs_offset_ap_r10 = 0; filt_coef_e filt_coef_r10; pathloss_ref_linking_r10_e_ pathloss_ref_linking_r10; @@ -26028,7 +25675,6 @@ struct ul_pwr_ctrl_ded_scell_r10_s { // UplinkPowerControlDedicatedSCell-v1310 ::= SEQUENCE struct ul_pwr_ctrl_ded_scell_v1310_s { - // member variables bool delta_tx_d_offset_list_pucch_r10_present = false; int8_t p0_ue_pucch = -8; delta_tx_d_offset_list_pucch_r10_s delta_tx_d_offset_list_pucch_r10; @@ -26061,7 +25707,6 @@ struct ant_info_common_s { // HighSpeedConfigSCell-r14 ::= SEQUENCE struct high_speed_cfg_scell_r14_s { - // member variables bool high_speed_enhanced_demod_flag_r14_present = false; // sequence methods @@ -26072,7 +25717,6 @@ struct high_speed_cfg_scell_r14_s { // MAC-MainConfigSCell-r11 ::= SEQUENCE struct mac_main_cfg_scell_r11_s { - // member variables bool ext = false; bool stag_id_r11_present = false; uint8_t stag_id_r11 = 1; @@ -26086,7 +25730,6 @@ struct mac_main_cfg_scell_r11_s { // PRACH-Config ::= SEQUENCE struct prach_cfg_s { - // member variables bool prach_cfg_info_present = false; uint16_t root_seq_idx = 0; prach_cfg_info_s prach_cfg_info; @@ -26099,7 +25742,6 @@ struct prach_cfg_s { // PRACH-ConfigSCell-r10 ::= SEQUENCE struct prach_cfg_scell_r10_s { - // member variables uint8_t prach_cfg_idx_r10 = 0; // sequence methods @@ -26111,7 +25753,6 @@ struct prach_cfg_scell_r10_s { // PhysicalConfigDedicatedSCell-r10 ::= SEQUENCE struct phys_cfg_ded_scell_r10_s { struct non_ul_cfg_r10_s_ { - // member variables bool ant_info_r10_present = false; bool cross_carrier_sched_cfg_r10_present = false; bool csi_rs_cfg_r10_present = false; @@ -26122,7 +25763,6 @@ struct phys_cfg_ded_scell_r10_s { pdsch_cfg_ded_s pdsch_cfg_ded_r10; }; struct ul_cfg_r10_s_ { - // member variables bool ant_info_ul_r10_present = false; bool pusch_cfg_ded_scell_r10_present = false; bool ul_pwr_ctrl_ded_scell_r10_present = false; @@ -26140,7 +25780,6 @@ struct phys_cfg_ded_scell_r10_s { }; struct pucch_scell_c_ { struct setup_s_ { - // member variables bool pucch_cfg_ded_r13_present = false; bool sched_request_cfg_r13_present = false; bool tpc_pdcch_cfg_pucch_scell_r13_present = false; @@ -26182,10 +25821,10 @@ struct phys_cfg_ded_scell_r10_s { types type_; setup_s_ c; }; - typedef dyn_array srs_ul_periodic_cfg_ded_list_r14_l_; - typedef dyn_array srs_ul_periodic_cfg_ded_up_pts_ext_list_r14_l_; - typedef dyn_array srs_ul_aperiodic_cfg_ded_list_r14_l_; - typedef dyn_array srs_ul_cfg_ded_ap_up_pts_ext_list_r14_l_; + using srs_ul_periodic_cfg_ded_list_r14_l_ = dyn_array; + using srs_ul_periodic_cfg_ded_up_pts_ext_list_r14_l_ = dyn_array; + using srs_ul_aperiodic_cfg_ded_list_r14_l_ = dyn_array; + using srs_ul_cfg_ded_ap_up_pts_ext_list_r14_l_ = dyn_array; struct must_cfg_r14_c_ { struct setup_s_ { struct k_max_r14_opts { @@ -26293,8 +25932,8 @@ struct phys_cfg_ded_scell_r10_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -26514,7 +26153,6 @@ struct phys_cfg_ded_scell_r10_s { struct phys_cfg_ded_scell_v1370_s { struct pucch_scell_v1370_c_ { struct setup_s_ { - // member variables bool pucch_cfg_ded_v1370_present = false; pucch_cfg_ded_v1370_s pucch_cfg_ded_v1370; }; @@ -26561,7 +26199,6 @@ struct phys_cfg_ded_scell_v1370_s { // RACH-ConfigCommonSCell-r11 ::= SEQUENCE struct rach_cfg_common_scell_r11_s { struct ra_supervision_info_r11_s_ { - // member variables preamb_trans_max_e preamb_trans_max_r11; }; @@ -26579,7 +26216,6 @@ struct rach_cfg_common_scell_r11_s { // UplinkPowerControlCommon-v1530 ::= SEQUENCE struct ul_pwr_ctrl_common_v1530_s { - // member variables delta_flist_spucch_r15_c delta_flist_spucch_r15; // sequence methods @@ -26590,7 +26226,6 @@ struct ul_pwr_ctrl_common_v1530_s { // UplinkPowerControlCommonPUSCH-LessCell-v1430 ::= SEQUENCE struct ul_pwr_ctrl_common_pusch_less_cell_v1430_s { - // member variables bool p0_nominal_periodic_srs_r14_present = false; bool p0_nominal_aperiodic_srs_r14_present = false; bool alpha_srs_r14_present = false; @@ -26606,7 +26241,6 @@ struct ul_pwr_ctrl_common_pusch_less_cell_v1430_s { // UplinkPowerControlCommonSCell-r10 ::= SEQUENCE struct ul_pwr_ctrl_common_scell_r10_s { - // member variables int8_t p0_nominal_pusch_r10 = -126; alpha_r12_e alpha_r10; @@ -26618,7 +26252,6 @@ struct ul_pwr_ctrl_common_scell_r10_s { // UplinkPowerControlCommonSCell-v1130 ::= SEQUENCE struct ul_pwr_ctrl_common_scell_v1130_s { - // member variables int8_t delta_preamb_msg3_r11 = -1; // sequence methods @@ -26757,7 +26390,7 @@ struct rr_cfg_common_scell_r10_s { // member variables bool ul_carrier_freq_r10_present = false; bool ul_bw_r10_present = false; - uint16_t ul_carrier_freq_r10 = 0; + uint32_t ul_carrier_freq_r10 = 0; ul_bw_r10_e_ ul_bw_r10; uint8_t add_spec_emission_scell_r10 = 1; }; @@ -26851,7 +26484,6 @@ struct rr_cfg_common_scell_r10_s { // RadioResourceConfigDedicatedSCell-r10 ::= SEQUENCE struct rr_cfg_ded_scell_r10_s { - // member variables bool ext = false; bool phys_cfg_ded_scell_r10_present = false; phys_cfg_ded_scell_r10_s phys_cfg_ded_scell_r10; @@ -26879,7 +26511,6 @@ struct rr_cfg_ded_scell_r10_s { // SCellToAddModExt-r13 ::= SEQUENCE struct scell_to_add_mod_ext_r13_s { struct cell_identif_r13_s_ { - // member variables uint16_t pci_r13 = 0; uint32_t dl_carrier_freq_r13 = 0; }; @@ -26889,7 +26520,7 @@ struct scell_to_add_mod_ext_r13_s { bool rr_cfg_common_scell_r13_present = false; bool rr_cfg_ded_scell_r13_present = false; bool ant_info_ded_scell_r13_present = false; - uint8_t s_cell_idx_r13 = 1; + uint8_t scell_idx_r13 = 1; cell_identif_r13_s_ cell_identif_r13; rr_cfg_common_scell_r10_s rr_cfg_common_scell_r13; rr_cfg_ded_scell_r10_s rr_cfg_ded_scell_r13; @@ -26913,7 +26544,6 @@ typedef enumerated ciphering_algorithm_r12_e // SCellConfigCommon-r15 ::= SEQUENCE struct scell_cfg_common_r15_s { - // member variables bool rr_cfg_common_scell_r15_present = false; bool rr_cfg_ded_scell_r15_present = false; bool ant_info_ded_scell_r15_present = false; @@ -26927,15 +26557,14 @@ struct scell_cfg_common_r15_s { void to_json(json_writer& j) const; }; -// SCellToAddModListExt-r13 ::= SEQUENCE (SIZE (1..maxSCell-r13)) OF SCellToAddModExt-r13 -typedef dyn_array scell_to_add_mod_list_ext_r13_l; +// SCellToAddModListExt-r13 ::= SEQUENCE (SIZE (1..31)) OF SCellToAddModExt-r13 +using scell_to_add_mod_list_ext_r13_l = dyn_array; -// SCellToReleaseListExt-r13 ::= SEQUENCE (SIZE (1..maxSCell-r13)) OF INTEGER -typedef bounded_array scell_to_release_list_ext_r13_l; +// SCellToReleaseListExt-r13 ::= SEQUENCE (SIZE (1..31)) OF INTEGER (1..31) +using scell_to_release_list_ext_r13_l = bounded_array; // SL-DiscTxPoolToAddMod-r12 ::= SEQUENCE struct sl_disc_tx_pool_to_add_mod_r12_s { - // member variables uint8_t pool_id_r12 = 1; sl_disc_res_pool_r12_s pool_r12; @@ -26947,7 +26576,6 @@ struct sl_disc_tx_pool_to_add_mod_r12_s { // SL-TF-IndexPair-r12b ::= SEQUENCE struct sl_tf_idx_pair_r12b_s { - // member variables bool disc_sf_idx_r12b_present = false; bool disc_prb_idx_r12b_present = false; uint8_t disc_sf_idx_r12b = 0; @@ -26961,14 +26589,13 @@ struct sl_tf_idx_pair_r12b_s { // SCellGroupToAddMod-r15 ::= SEQUENCE struct scell_group_to_add_mod_r15_s { - // member variables - bool s_cell_cfg_common_r15_present = false; - bool s_cell_to_release_list_r15_present = false; - bool s_cell_to_add_mod_list_r15_present = false; - uint8_t s_cell_group_idx_r15 = 1; - scell_cfg_common_r15_s s_cell_cfg_common_r15; - scell_to_release_list_ext_r13_l s_cell_to_release_list_r15; - scell_to_add_mod_list_ext_r13_l s_cell_to_add_mod_list_r15; + bool scell_cfg_common_r15_present = false; + bool scell_to_release_list_r15_present = false; + bool scell_to_add_mod_list_r15_present = false; + uint8_t scell_group_idx_r15 = 1; + scell_cfg_common_r15_s scell_cfg_common_r15; + scell_to_release_list_ext_r13_l scell_to_release_list_r15; + scell_to_add_mod_list_ext_r13_l scell_to_add_mod_list_r15; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -26976,8 +26603,8 @@ struct scell_group_to_add_mod_r15_s { void to_json(json_writer& j) const; }; -// SL-DiscTxPoolToAddModList-r12 ::= SEQUENCE (SIZE (1..maxSL-TxPool-r12)) OF SL-DiscTxPoolToAddMod-r12 -typedef dyn_array sl_disc_tx_pool_to_add_mod_list_r12_l; +// SL-DiscTxPoolToAddModList-r12 ::= SEQUENCE (SIZE (1..4)) OF SL-DiscTxPoolToAddMod-r12 +using sl_disc_tx_pool_to_add_mod_list_r12_l = dyn_array; // SL-HoppingConfigDisc-r12 ::= SEQUENCE struct sl_hop_cfg_disc_r12_s { @@ -27001,11 +26628,11 @@ struct sl_hop_cfg_disc_r12_s { void to_json(json_writer& j) const; }; -// SL-TF-IndexPairList-r12b ::= SEQUENCE (SIZE (1..maxSL-TF-IndexPair-r12)) OF SL-TF-IndexPair-r12b -typedef dyn_array sl_tf_idx_pair_list_r12b_l; +// SL-TF-IndexPairList-r12b ::= SEQUENCE (SIZE (1..64)) OF SL-TF-IndexPair-r12b +using sl_tf_idx_pair_list_r12b_l = dyn_array; -// SL-TxPoolToReleaseList-r12 ::= SEQUENCE (SIZE (1..maxSL-TxPool-r12)) OF INTEGER -typedef bounded_array sl_tx_pool_to_release_list_r12_l; +// SL-TxPoolToReleaseList-r12 ::= SEQUENCE (SIZE (1..4)) OF INTEGER (1..4) +using sl_tx_pool_to_release_list_r12_l = bounded_array; // SecurityAlgorithmConfig ::= SEQUENCE struct security_algorithm_cfg_s { @@ -27032,7 +26659,6 @@ struct security_algorithm_cfg_s { struct drb_to_add_mod_scg_r12_s { struct drb_type_r12_c_ { struct scg_r12_s_ { - // member variables bool eps_bearer_id_r12_present = false; bool pdcp_cfg_r12_present = false; uint8_t eps_bearer_id_r12 = 0; @@ -27104,7 +26730,6 @@ struct drb_to_add_mod_scg_r12_s { // IKE-Identity-r13 ::= SEQUENCE struct ike_id_r13_s { - // member variables dyn_octstring id_i_r13; // sequence methods @@ -27167,15 +26792,14 @@ struct ip_address_r13_c { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; // PhysicalConfigDedicated-v1370 ::= SEQUENCE struct phys_cfg_ded_v1370_s { - // member variables bool pucch_cfg_ded_v1370_present = false; pucch_cfg_ded_v1370_s pucch_cfg_ded_v1370; @@ -27187,7 +26811,7 @@ struct phys_cfg_ded_v1370_s { // RAN-AreaConfig-r15 ::= SEQUENCE struct ran_area_cfg_r15_s { - typedef bounded_array ran_area_code_list_r15_l_; + using ran_area_code_list_r15_l_ = bounded_array; // member variables bool ran_area_code_list_r15_present = false; @@ -27203,7 +26827,6 @@ struct ran_area_cfg_r15_s { // RadioResourceConfigCommonSCell-v10l0 ::= SEQUENCE struct rr_cfg_common_scell_v10l0_s { struct ul_cfg_v10l0_s_ { - // member variables uint16_t add_spec_emission_scell_v10l0 = 33; }; @@ -27220,7 +26843,6 @@ struct rr_cfg_common_scell_v10l0_s { struct rr_cfg_common_scell_v1440_s { struct ul_cfg_v1440_s_ { struct ul_freq_info_v1440_s_ { - // member variables uint16_t add_spec_emission_scell_v1440 = 33; }; @@ -27237,15 +26859,14 @@ struct rr_cfg_common_scell_v1440_s { void to_json(json_writer& j) const; }; -// SCellGroupToAddModList-r15 ::= SEQUENCE (SIZE (1..maxSCellGroups-r15)) OF SCellGroupToAddMod-r15 -typedef dyn_array scell_group_to_add_mod_list_r15_l; +// SCellGroupToAddModList-r15 ::= SEQUENCE (SIZE (1..4)) OF SCellGroupToAddMod-r15 +using scell_group_to_add_mod_list_r15_l = dyn_array; -// SCellGroupToReleaseList-r15 ::= SEQUENCE (SIZE (1..maxSCellGroups-r15)) OF INTEGER -typedef bounded_array scell_group_to_release_list_r15_l; +// SCellGroupToReleaseList-r15 ::= SEQUENCE (SIZE (1..4)) OF INTEGER (1..4) +using scell_group_to_release_list_r15_l = bounded_array; // SL-DiscTxConfigScheduled-r13 ::= SEQUENCE struct sl_disc_tx_cfg_sched_r13_s { - // member variables bool ext = false; bool disc_tx_cfg_r13_present = false; bool disc_tf_idx_list_r13_present = false; @@ -27263,7 +26884,6 @@ struct sl_disc_tx_cfg_sched_r13_s { // SL-DiscTxPoolDedicated-r13 ::= SEQUENCE struct sl_disc_tx_pool_ded_r13_s { - // member variables bool pool_to_release_list_r13_present = false; bool pool_to_add_mod_list_r13_present = false; sl_tx_pool_to_release_list_r12_l pool_to_release_list_r13; @@ -27275,12 +26895,11 @@ struct sl_disc_tx_pool_ded_r13_s { void to_json(json_writer& j) const; }; -// SL-ReliabilityList-r15 ::= SEQUENCE (SIZE (1..maxSL-Reliability-r15)) OF INTEGER -typedef bounded_array sl_reliability_list_r15_l; +// SL-ReliabilityList-r15 ::= SEQUENCE (SIZE (1..8)) OF INTEGER (1..8) +using sl_reliability_list_r15_l = bounded_array; // SL-TxPoolToAddMod-r14 ::= SEQUENCE struct sl_tx_pool_to_add_mod_r14_s { - // member variables uint8_t pool_id_r14 = 1; sl_comm_res_pool_v2x_r14_s pool_r14; @@ -27294,7 +26913,6 @@ struct sl_tx_pool_to_add_mod_r14_s { struct security_cfg_ho_v1530_s { struct ho_type_v1530_c_ { struct intra5_gc_r15_s_ { - // member variables bool security_algorithm_cfg_r15_present = false; bool nas_container_r15_present = false; security_algorithm_cfg_s security_algorithm_cfg_r15; @@ -27303,12 +26921,10 @@ struct security_cfg_ho_v1530_s { dyn_octstring nas_container_r15; }; struct ngc_to_epc_r15_s_ { - // member variables security_algorithm_cfg_s security_algorithm_cfg_r15; uint8_t next_hop_chaining_count_r15 = 0; }; struct epc_to_ngc_r15_s_ { - // member variables security_algorithm_cfg_s security_algorithm_cfg_r15; dyn_octstring nas_container_r15; }; @@ -27379,8 +26995,8 @@ struct security_cfg_ho_v1530_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -27478,12 +27094,11 @@ struct ul_pwr_ctrl_common_ps_cell_r12_s { void to_json(json_writer& j) const; }; -// WLAN-Id-List-r13 ::= SEQUENCE (SIZE (1..maxWLAN-Id-r13)) OF WLAN-Identifiers-r12 -typedef dyn_array wlan_id_list_r13_l; +// WLAN-Id-List-r13 ::= SEQUENCE (SIZE (1..32)) OF WLAN-Identifiers-r12 +using wlan_id_list_r13_l = dyn_array; // WLAN-SuspendConfig-r14 ::= SEQUENCE struct wlan_suspend_cfg_r14_s { - // member variables bool wlan_suspend_resume_allowed_r14_present = false; bool wlan_suspend_triggers_status_report_r14_present = false; bool wlan_suspend_resume_allowed_r14 = false; @@ -27495,21 +27110,20 @@ struct wlan_suspend_cfg_r14_s { void to_json(json_writer& j) const; }; -// DRB-ToAddModListSCG-r12 ::= SEQUENCE (SIZE (1..maxDRB)) OF DRB-ToAddModSCG-r12 -typedef dyn_array drb_to_add_mod_list_scg_r12_l; +// DRB-ToAddModListSCG-r12 ::= SEQUENCE (SIZE (1..11)) OF DRB-ToAddModSCG-r12 +using drb_to_add_mod_list_scg_r12_l = dyn_array; -// DRB-ToAddModListSCG-r15 ::= SEQUENCE (SIZE (1..maxDRB-r15)) OF DRB-ToAddModSCG-r12 -typedef dyn_array drb_to_add_mod_list_scg_r15_l; +// DRB-ToAddModListSCG-r15 ::= SEQUENCE (SIZE (1..15)) OF DRB-ToAddModSCG-r12 +using drb_to_add_mod_list_scg_r15_l = dyn_array; -// LogicalChGroupInfoList-r13 ::= SEQUENCE (SIZE (1..maxLCG-r13)) OF SL-PriorityList-r13 -typedef dyn_array lc_ch_group_info_list_r13_l; +// LogicalChGroupInfoList-r13 ::= SEQUENCE (SIZE (1..4)) OF SL-PriorityList-r13 +using lc_ch_group_info_list_r13_l = dyn_array; -// LogicalChGroupInfoList-v1530 ::= SEQUENCE (SIZE (1..maxLCG-r13)) OF SL-ReliabilityList-r15 -typedef dyn_array lc_ch_group_info_list_v1530_l; +// LogicalChGroupInfoList-v1530 ::= SEQUENCE (SIZE (1..4)) OF SL-ReliabilityList-r15 +using lc_ch_group_info_list_v1530_l = dyn_array; // MAC-MainConfigSL-r12 ::= SEQUENCE struct mac_main_cfg_sl_r12_s { - // member variables bool periodic_bsr_timer_sl_present = false; periodic_bsr_timer_r12_e periodic_bsr_timer_sl; retx_bsr_timer_r12_e retx_bsr_timer_sl; @@ -27522,7 +27136,7 @@ struct mac_main_cfg_sl_r12_s { // PLMN-RAN-AreaCell-r15 ::= SEQUENCE struct plmn_ran_area_cell_r15_s { - typedef bounded_array, 32> ran_area_cells_r15_l_; + using ran_area_cells_r15_l_ = bounded_array, 32>; // member variables bool plmn_id_r15_present = false; @@ -27537,7 +27151,7 @@ struct plmn_ran_area_cell_r15_s { // PLMN-RAN-AreaConfig-r15 ::= SEQUENCE struct plmn_ran_area_cfg_r15_s { - typedef dyn_array ran_area_r15_l_; + using ran_area_r15_l_ = dyn_array; // member variables bool plmn_id_r15_present = false; @@ -27552,7 +27166,6 @@ struct plmn_ran_area_cfg_r15_s { // RACH-ConfigDedicated ::= SEQUENCE struct rach_cfg_ded_s { - // member variables uint8_t ra_preamb_idx = 0; uint8_t ra_prach_mask_idx = 0; @@ -27617,8 +27230,8 @@ struct rach_skip_r14_s { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -27718,19 +27331,19 @@ private: // RRCConnectionReconfiguration-v1530-IEs ::= SEQUENCE struct rrc_conn_recfg_v1530_ies_s { - typedef bounded_array ded_info_nas_list_r15_l_; + using ded_info_nas_list_r15_l_ = bounded_array; // member variables - bool security_cfg_ho_v1530_present = false; - bool s_cell_group_to_release_list_r15_present = false; - bool s_cell_group_to_add_mod_list_r15_present = false; - bool ded_info_nas_list_r15_present = false; - bool p_max_ue_fr1_r15_present = false; - bool smtc_r15_present = false; - bool non_crit_ext_present = false; + bool security_cfg_ho_v1530_present = false; + bool scell_group_to_release_list_r15_present = false; + bool scell_group_to_add_mod_list_r15_present = false; + bool ded_info_nas_list_r15_present = false; + bool p_max_ue_fr1_r15_present = false; + bool smtc_r15_present = false; + bool non_crit_ext_present = false; security_cfg_ho_v1530_s security_cfg_ho_v1530; - scell_group_to_release_list_r15_l s_cell_group_to_release_list_r15; - scell_group_to_add_mod_list_r15_l s_cell_group_to_add_mod_list_r15; + scell_group_to_release_list_r15_l scell_group_to_release_list_r15; + scell_group_to_add_mod_list_r15_l scell_group_to_add_mod_list_r15; ded_info_nas_list_r15_l_ ded_info_nas_list_r15; int8_t p_max_ue_fr1_r15 = -30; mtc_ssb_nr_r15_s smtc_r15; @@ -27743,7 +27356,6 @@ struct rrc_conn_recfg_v1530_ies_s { // RadioResourceConfigCommonPSCell-r12 ::= SEQUENCE struct rr_cfg_common_ps_cell_r12_s { - // member variables bool ext = false; rr_cfg_common_scell_r10_s basic_fields_r12; pucch_cfg_common_s pucch_cfg_common_r12; @@ -27763,7 +27375,6 @@ struct rr_cfg_common_ps_cell_r12_s { // RadioResourceConfigCommonPSCell-v12f0 ::= SEQUENCE struct rr_cfg_common_ps_cell_v12f0_s { - // member variables rr_cfg_common_scell_v10l0_s basic_fields_v12f0; // sequence methods @@ -27774,7 +27385,6 @@ struct rr_cfg_common_ps_cell_v12f0_s { // RadioResourceConfigCommonPSCell-v1440 ::= SEQUENCE struct rr_cfg_common_ps_cell_v1440_s { - // member variables rr_cfg_common_scell_v1440_s basic_fields_v1440; // sequence methods @@ -27785,7 +27395,6 @@ struct rr_cfg_common_ps_cell_v1440_s { // RadioResourceConfigDedicatedPSCell-r12 ::= SEQUENCE struct rr_cfg_ded_ps_cell_r12_s { - // member variables bool ext = false; bool phys_cfg_ded_ps_cell_r12_present = false; bool sps_cfg_r12_present = false; @@ -27812,7 +27421,6 @@ struct rr_cfg_ded_ps_cell_r12_s { // RadioResourceConfigDedicatedPSCell-v1370 ::= SEQUENCE struct rr_cfg_ded_ps_cell_v1370_s { - // member variables bool phys_cfg_ded_ps_cell_v1370_present = false; phys_cfg_ded_v1370_s phys_cfg_ded_ps_cell_v1370; @@ -27825,23 +27433,22 @@ struct rr_cfg_ded_ps_cell_v1370_s { // SCellToAddMod-r10 ::= SEQUENCE struct scell_to_add_mod_r10_s { struct cell_identif_r10_s_ { - // member variables uint16_t pci_r10 = 0; - uint16_t dl_carrier_freq_r10 = 0; + uint32_t dl_carrier_freq_r10 = 0; }; - struct s_cell_state_r15_opts { + struct scell_state_r15_opts { enum options { activ, dormant, nulltype } value; std::string to_string() const; }; - typedef enumerated s_cell_state_r15_e_; + typedef enumerated scell_state_r15_e_; // member variables bool ext = false; bool cell_identif_r10_present = false; bool rr_cfg_common_scell_r10_present = false; bool rr_cfg_ded_scell_r10_present = false; - uint8_t s_cell_idx_r10 = 1; + uint8_t scell_idx_r10 = 1; cell_identif_r10_s_ cell_identif_r10; rr_cfg_common_scell_r10_s rr_cfg_common_scell_r10; rr_cfg_ded_scell_r10_s rr_cfg_ded_scell_r10; @@ -27855,8 +27462,8 @@ struct scell_to_add_mod_r10_s { bool srs_switch_from_serv_cell_idx_r14_present = false; uint8_t srs_switch_from_serv_cell_idx_r14 = 0; // group 3 - bool s_cell_state_r15_present = false; - s_cell_state_r15_e_ s_cell_state_r15; + bool scell_state_r15_present = false; + scell_state_r15_e_ scell_state_r15; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -27866,7 +27473,6 @@ struct scell_to_add_mod_r10_s { // SCellToAddMod-v10l0 ::= SEQUENCE struct scell_to_add_mod_v10l0_s { - // member variables bool rr_cfg_common_scell_v10l0_present = false; rr_cfg_common_scell_v10l0_s rr_cfg_common_scell_v10l0; @@ -27878,7 +27484,6 @@ struct scell_to_add_mod_v10l0_s { // SCellToAddModExt-v1370 ::= SEQUENCE struct scell_to_add_mod_ext_v1370_s { - // member variables bool rr_cfg_common_scell_v1370_present = false; rr_cfg_common_scell_v10l0_s rr_cfg_common_scell_v1370; @@ -27890,12 +27495,12 @@ struct scell_to_add_mod_ext_v1370_s { // SCellToAddModExt-v1430 ::= SEQUENCE struct scell_to_add_mod_ext_v1430_s { - struct s_cell_state_r15_opts { + struct scell_state_r15_opts { enum options { activ, dormant, nulltype } value; std::string to_string() const; }; - typedef enumerated s_cell_state_r15_e_; + typedef enumerated scell_state_r15_e_; // member variables bool ext = false; @@ -27903,8 +27508,8 @@ struct scell_to_add_mod_ext_v1430_s { uint8_t srs_switch_from_serv_cell_idx_r14 = 0; // ... // group 0 - bool s_cell_state_r15_present = false; - s_cell_state_r15_e_ s_cell_state_r15; + bool scell_state_r15_present = false; + scell_state_r15_e_ scell_state_r15; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -27915,7 +27520,7 @@ struct scell_to_add_mod_ext_v1430_s { // SL-DiscTxRefCarrierDedicated-r13 ::= CHOICE struct sl_disc_tx_ref_carrier_ded_r13_c { struct types_opts { - enum options { p_cell, s_cell, nulltype } value; + enum options { pcell, scell, nulltype } value; std::string to_string() const; }; @@ -27929,19 +27534,19 @@ struct sl_disc_tx_ref_carrier_ded_r13_c { SRSASN_CODE unpack(bit_ref& bref); void to_json(json_writer& j) const; // getters - uint8_t& s_cell() + uint8_t& scell() { assert_choice_type("sCell", type_.to_string(), "SL-DiscTxRefCarrierDedicated-r13"); return c; } - const uint8_t& s_cell() const + const uint8_t& scell() const { assert_choice_type("sCell", type_.to_string(), "SL-DiscTxRefCarrierDedicated-r13"); return c; } - uint8_t& set_s_cell() + uint8_t& set_scell() { - set(types::s_cell); + set(types::scell); return c; } @@ -28003,8 +27608,8 @@ struct sl_disc_tx_res_r13_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -28068,10 +27673,10 @@ struct sl_gap_pattern_r13_s { typedef enumerated gap_period_r13_e_; // member variables - bool ext = false; - gap_period_r13_e_ gap_period_r13; - sl_offset_ind_r12_c gap_offset_r12; - dyn_bitstring gap_sf_bitmap_r13; + bool ext = false; + gap_period_r13_e_ gap_period_r13; + sl_offset_ind_r12_c gap_offset_r12; + bounded_bitstring<1, 10240> gap_sf_bitmap_r13; // ... // sequence methods @@ -28080,11 +27685,11 @@ struct sl_gap_pattern_r13_s { void to_json(json_writer& j) const; }; -// SL-TxPoolToAddModListV2X-r14 ::= SEQUENCE (SIZE (1.. maxSL-V2X-TxPool-r14)) OF SL-TxPoolToAddMod-r14 -typedef dyn_array sl_tx_pool_to_add_mod_list_v2x_r14_l; +// SL-TxPoolToAddModListV2X-r14 ::= SEQUENCE (SIZE (1..8)) OF SL-TxPoolToAddMod-r14 +using sl_tx_pool_to_add_mod_list_v2x_r14_l = dyn_array; -// SL-TxPoolToReleaseListV2X-r14 ::= SEQUENCE (SIZE (1.. maxSL-V2X-TxPool-r14)) OF INTEGER -typedef bounded_array sl_tx_pool_to_release_list_v2x_r14_l; +// SL-TxPoolToReleaseListV2X-r14 ::= SEQUENCE (SIZE (1..8)) OF INTEGER (1..8) +using sl_tx_pool_to_release_list_v2x_r14_l = bounded_array; // SubframeAssignment-r15 ::= ENUMERATED struct sf_assign_r15_opts { @@ -28098,14 +27703,13 @@ typedef enumerated sf_assign_r15_e; // TunnelConfigLWIP-r13 ::= SEQUENCE struct tunnel_cfg_lwip_r13_s { - // member variables bool ext = false; ip_address_r13_c ip_address_r13; ike_id_r13_s ike_id_r13; // ... // group 0 bool lwip_counter_r13_present = false; - uint16_t lwip_counter_r13 = 0; + uint32_t lwip_counter_r13 = 0; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -28115,24 +27719,24 @@ struct tunnel_cfg_lwip_r13_s { // WLAN-MobilityConfig-r13 ::= SEQUENCE struct wlan_mob_cfg_r13_s { - struct association_timer_r13_opts { + struct assoc_timer_r13_opts { enum options { s10, s30, s60, s120, s240, nulltype } value; typedef uint8_t number_type; std::string to_string() const; uint8_t to_number() const; }; - typedef enumerated association_timer_r13_e_; + typedef enumerated assoc_timer_r13_e_; // member variables - bool ext = false; - bool wlan_to_release_list_r13_present = false; - bool wlan_to_add_list_r13_present = false; - bool association_timer_r13_present = false; - bool success_report_requested_r13_present = false; - wlan_id_list_r13_l wlan_to_release_list_r13; - wlan_id_list_r13_l wlan_to_add_list_r13; - association_timer_r13_e_ association_timer_r13; + bool ext = false; + bool wlan_to_release_list_r13_present = false; + bool wlan_to_add_list_r13_present = false; + bool assoc_timer_r13_present = false; + bool success_report_requested_r13_present = false; + wlan_id_list_r13_l wlan_to_release_list_r13; + wlan_id_list_r13_l wlan_to_add_list_r13; + assoc_timer_r13_e_ assoc_timer_r13; // ... // group 0 copy_ptr wlan_suspend_cfg_r14; @@ -28153,12 +27757,11 @@ typedef enumerated ca_bw_class_r10_e; // LWA-Config-r13 ::= SEQUENCE struct lwa_cfg_r13_s { - // member variables bool ext = false; bool lwa_mob_cfg_r13_present = false; bool lwa_wt_counter_r13_present = false; wlan_mob_cfg_r13_s lwa_mob_cfg_r13; - uint16_t lwa_wt_counter_r13 = 0; + uint32_t lwa_wt_counter_r13 = 0; // ... // group 0 bool wt_mac_address_r14_present = false; @@ -28172,7 +27775,6 @@ struct lwa_cfg_r13_s { // LWIP-Config-r13 ::= SEQUENCE struct lwip_cfg_r13_s { - // member variables bool ext = false; bool lwip_mob_cfg_r13_present = false; bool tunnel_cfg_lwip_r13_present = false; @@ -28217,16 +27819,15 @@ struct mob_ctrl_info_scg_r12_s { void to_json(json_writer& j) const; }; -// PLMN-RAN-AreaCellList-r15 ::= SEQUENCE (SIZE (1..maxPLMN-r15)) OF PLMN-RAN-AreaCell-r15 -typedef dyn_array plmn_ran_area_cell_list_r15_l; +// PLMN-RAN-AreaCellList-r15 ::= SEQUENCE (SIZE (1..8)) OF PLMN-RAN-AreaCell-r15 +using plmn_ran_area_cell_list_r15_l = dyn_array; -// PLMN-RAN-AreaConfigList-r15 ::= SEQUENCE (SIZE (1..maxPLMN-r15)) OF PLMN-RAN-AreaConfig-r15 -typedef dyn_array plmn_ran_area_cfg_list_r15_l; +// PLMN-RAN-AreaConfigList-r15 ::= SEQUENCE (SIZE (1..8)) OF PLMN-RAN-AreaConfig-r15 +using plmn_ran_area_cfg_list_r15_l = dyn_array; // PSCellToAddMod-r12 ::= SEQUENCE struct ps_cell_to_add_mod_r12_s { struct cell_identif_r12_s_ { - // member variables uint16_t pci_r12 = 0; uint32_t dl_carrier_freq_r12 = 0; }; @@ -28236,7 +27837,7 @@ struct ps_cell_to_add_mod_r12_s { bool cell_identif_r12_present = false; bool rr_cfg_common_ps_cell_r12_present = false; bool rr_cfg_ded_ps_cell_r12_present = false; - uint8_t s_cell_idx_r12 = 1; + uint8_t scell_idx_r12 = 1; cell_identif_r12_s_ cell_identif_r12; rr_cfg_common_ps_cell_r12_s rr_cfg_common_ps_cell_r12; rr_cfg_ded_ps_cell_r12_s rr_cfg_ded_ps_cell_r12; @@ -28244,8 +27845,8 @@ struct ps_cell_to_add_mod_r12_s { // group 0 copy_ptr ant_info_ded_ps_cell_v1280; // group 1 - bool s_cell_idx_r13_present = false; - uint8_t s_cell_idx_r13 = 1; + bool scell_idx_r13_present = false; + uint8_t scell_idx_r13 = 1; // group 2 copy_ptr rr_cfg_ded_ps_cell_v1370; @@ -28257,7 +27858,6 @@ struct ps_cell_to_add_mod_r12_s { // PSCellToAddMod-v12f0 ::= SEQUENCE struct ps_cell_to_add_mod_v12f0_s { - // member variables bool rr_cfg_common_ps_cell_r12_present = false; rr_cfg_common_ps_cell_v12f0_s rr_cfg_common_ps_cell_r12; @@ -28269,7 +27869,6 @@ struct ps_cell_to_add_mod_v12f0_s { // PSCellToAddMod-v1440 ::= SEQUENCE struct ps_cell_to_add_mod_v1440_s { - // member variables bool rr_cfg_common_ps_cell_r14_present = false; rr_cfg_common_ps_cell_v1440_s rr_cfg_common_ps_cell_r14; @@ -28283,7 +27882,6 @@ struct ps_cell_to_add_mod_v1440_s { struct rclwi_cfg_r13_s { struct cmd_c_ { struct steer_to_wlan_r13_s_ { - // member variables wlan_id_list_r12_l mob_cfg_r13; }; struct types_opts { @@ -28337,7 +27935,6 @@ struct rclwi_cfg_r13_s { struct rrc_conn_recfg_v1510_ies_s { struct nr_cfg_r15_c_ { struct setup_s_ { - // member variables bool nr_secondary_cell_group_cfg_r15_present = false; bool p_max_eutra_r15_present = false; bool endc_release_and_add_r15 = false; @@ -28376,7 +27973,6 @@ struct rrc_conn_recfg_v1510_ies_s { }; struct tdm_pattern_cfg_r15_c_ { struct setup_s_ { - // member variables sf_assign_r15_e sf_assign_r15; uint8_t harq_offset_r15 = 0; }; @@ -28419,7 +28015,7 @@ struct rrc_conn_recfg_v1510_ies_s { bool tdm_pattern_cfg_r15_present = false; bool non_crit_ext_present = false; nr_cfg_r15_c_ nr_cfg_r15; - uint16_t sk_counter_r15 = 0; + uint32_t sk_counter_r15 = 0; dyn_octstring nr_radio_bearer_cfg1_r15; dyn_octstring nr_radio_bearer_cfg2_r15; tdm_pattern_cfg_r15_c_ tdm_pattern_cfg_r15; @@ -28433,7 +28029,6 @@ struct rrc_conn_recfg_v1510_ies_s { // RadioResourceConfigDedicatedSCG-r12 ::= SEQUENCE struct rr_cfg_ded_scg_r12_s { - // member variables bool ext = false; bool drb_to_add_mod_list_scg_r12_present = false; bool mac_main_cfg_scg_r12_present = false; @@ -28451,24 +28046,23 @@ struct rr_cfg_ded_scg_r12_s { void to_json(json_writer& j) const; }; -// SCellToAddModList-r10 ::= SEQUENCE (SIZE (1..maxSCell-r10)) OF SCellToAddMod-r10 -typedef dyn_array scell_to_add_mod_list_r10_l; +// SCellToAddModList-r10 ::= SEQUENCE (SIZE (1..4)) OF SCellToAddMod-r10 +using scell_to_add_mod_list_r10_l = dyn_array; -// SCellToAddModList-v10l0 ::= SEQUENCE (SIZE (1..maxSCell-r10)) OF SCellToAddMod-v10l0 -typedef dyn_array scell_to_add_mod_list_v10l0_l; +// SCellToAddModList-v10l0 ::= SEQUENCE (SIZE (1..4)) OF SCellToAddMod-v10l0 +using scell_to_add_mod_list_v10l0_l = dyn_array; -// SCellToAddModListExt-v1370 ::= SEQUENCE (SIZE (1..maxSCell-r13)) OF SCellToAddModExt-v1370 -typedef dyn_array scell_to_add_mod_list_ext_v1370_l; +// SCellToAddModListExt-v1370 ::= SEQUENCE (SIZE (1..31)) OF SCellToAddModExt-v1370 +using scell_to_add_mod_list_ext_v1370_l = dyn_array; -// SCellToAddModListExt-v1430 ::= SEQUENCE (SIZE (1..maxSCell-r13)) OF SCellToAddModExt-v1430 -typedef dyn_array scell_to_add_mod_list_ext_v1430_l; +// SCellToAddModListExt-v1430 ::= SEQUENCE (SIZE (1..31)) OF SCellToAddModExt-v1430 +using scell_to_add_mod_list_ext_v1430_l = dyn_array; -// SCellToReleaseList-r10 ::= SEQUENCE (SIZE (1..maxSCell-r10)) OF INTEGER -typedef bounded_array scell_to_release_list_r10_l; +// SCellToReleaseList-r10 ::= SEQUENCE (SIZE (1..4)) OF INTEGER (1..7) +using scell_to_release_list_r10_l = bounded_array; // SL-CommTxPoolToAddMod-r12 ::= SEQUENCE struct sl_comm_tx_pool_to_add_mod_r12_s { - // member variables uint8_t pool_id_r12 = 1; sl_comm_res_pool_r12_s pool_r12; @@ -28480,7 +28074,6 @@ struct sl_comm_tx_pool_to_add_mod_r12_s { // SL-CommTxPoolToAddModExt-r13 ::= SEQUENCE struct sl_comm_tx_pool_to_add_mod_ext_r13_s { - // member variables uint8_t pool_id_v1310 = 5; sl_comm_res_pool_r12_s pool_r13; @@ -28492,7 +28085,6 @@ struct sl_comm_tx_pool_to_add_mod_ext_r13_s { // SL-DiscTxResourceInfoPerFreq-r13 ::= SEQUENCE struct sl_disc_tx_res_info_per_freq_r13_s { - // member variables bool ext = false; bool disc_tx_res_r13_present = false; bool disc_tx_res_ps_r13_present = false; @@ -28511,12 +28103,11 @@ struct sl_disc_tx_res_info_per_freq_r13_s { void to_json(json_writer& j) const; }; -// SL-GapPatternList-r13 ::= SEQUENCE (SIZE (1..maxSL-GP-r13)) OF SL-GapPattern-r13 -typedef dyn_array sl_gap_pattern_list_r13_l; +// SL-GapPatternList-r13 ::= SEQUENCE (SIZE (1..8)) OF SL-GapPattern-r13 +using sl_gap_pattern_list_r13_l = dyn_array; // SL-TF-IndexPair-r12 ::= SEQUENCE struct sl_tf_idx_pair_r12_s { - // member variables bool disc_sf_idx_r12_present = false; bool disc_prb_idx_r12_present = false; uint8_t disc_sf_idx_r12 = 1; @@ -28533,7 +28124,6 @@ struct sl_v2x_cfg_ded_r14_s { struct comm_tx_res_r14_c_ { struct setup_c_ { struct sched_r14_s_ { - // member variables bool v2x_sched_pool_r14_present = false; bool mcs_r14_present = false; fixed_bitstring<16> sl_v_rnti_r14; @@ -28544,7 +28134,6 @@ struct sl_v2x_cfg_ded_r14_s { }; struct ue_sel_r14_s_ { struct v2x_comm_tx_pool_normal_ded_r14_s_ { - // member variables bool pool_to_release_list_r14_present = false; bool pool_to_add_mod_list_r14_present = false; bool v2x_comm_tx_pool_sensing_cfg_r14_present = false; @@ -28606,8 +28195,8 @@ struct sl_v2x_cfg_ded_r14_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -28644,14 +28233,12 @@ struct sl_v2x_cfg_ded_r14_s { struct comm_tx_res_v1530_c_ { struct setup_c_ { struct sched_v1530_s_ { - // member variables bool lc_ch_group_info_list_v1530_present = false; bool mcs_r15_present = false; lc_ch_group_info_list_v1530_l lc_ch_group_info_list_v1530; uint8_t mcs_r15 = 0; }; struct ue_sel_v1530_s_ { - // member variables bool v2x_freq_sel_cfg_list_r15_present = false; sl_v2x_freq_sel_cfg_list_r15_l v2x_freq_sel_cfg_list_r15; }; @@ -28705,8 +28292,8 @@ struct sl_v2x_cfg_ded_r14_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -28768,7 +28355,6 @@ struct sl_v2x_cfg_ded_r14_s { // BandIndication-r14 ::= SEQUENCE struct band_ind_r14_s { - // member variables bool ca_bw_class_ul_r14_present = false; uint16_t band_eutra_r14 = 1; ca_bw_class_r10_e ca_bw_class_dl_r14; @@ -28783,7 +28369,6 @@ struct band_ind_r14_s { // LWA-Configuration-r13 ::= CHOICE struct lwa_cfg_r13_c { struct setup_s_ { - // member variables lwa_cfg_r13_s lwa_cfg_r13; }; typedef setup_e types; @@ -28820,7 +28405,6 @@ private: // LWIP-Configuration-r13 ::= CHOICE struct lwip_cfg_r13_c { struct setup_s_ { - // member variables lwip_cfg_r13_s lwip_cfg_r13; }; typedef setup_e types; @@ -28856,7 +28440,6 @@ private: // MeasCSI-RS-Config-r12 ::= SEQUENCE struct meas_csi_rs_cfg_r12_s { - // member variables bool ext = false; uint8_t meas_csi_rs_id_r12 = 1; uint16_t pci_r12 = 0; @@ -28874,7 +28457,6 @@ struct meas_csi_rs_cfg_r12_s { // PhysCellIdRangeUTRA-FDD-r9 ::= SEQUENCE struct pci_range_utra_fdd_r9_s { - // member variables bool range_r9_present = false; uint16_t start_r9 = 0; uint16_t range_r9 = 2; @@ -28887,7 +28469,6 @@ struct pci_range_utra_fdd_r9_s { // PowerCoordinationInfo-r12 ::= SEQUENCE struct pwr_coordination_info_r12_s { - // member variables uint8_t p_me_nb_r12 = 1; uint8_t p_se_nb_r12 = 1; uint8_t pwr_ctrl_mode_r12 = 1; @@ -28950,8 +28531,8 @@ struct ran_notif_area_info_r15_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -28959,7 +28540,6 @@ private: // RCLWI-Configuration-r13 ::= CHOICE struct rclwi_cfg_r13_c { struct setup_s_ { - // member variables rclwi_cfg_r13_s rclwi_cfg_r13; }; typedef setup_e types; @@ -28995,14 +28575,13 @@ private: // RRCConnectionReconfiguration-v1430-IEs ::= SEQUENCE struct rrc_conn_recfg_v1430_ies_s { - // member variables - bool sl_v2x_cfg_ded_r14_present = false; - bool s_cell_to_add_mod_list_ext_v1430_present = false; - bool per_cc_gap_ind_request_r14_present = false; - bool sib_type2_ded_r14_present = false; - bool non_crit_ext_present = false; + bool sl_v2x_cfg_ded_r14_present = false; + bool scell_to_add_mod_list_ext_v1430_present = false; + bool per_cc_gap_ind_request_r14_present = false; + bool sib_type2_ded_r14_present = false; + bool non_crit_ext_present = false; sl_v2x_cfg_ded_r14_s sl_v2x_cfg_ded_r14; - scell_to_add_mod_list_ext_v1430_l s_cell_to_add_mod_list_ext_v1430; + scell_to_add_mod_list_ext_v1430_l scell_to_add_mod_list_ext_v1430; dyn_octstring sib_type2_ded_r14; rrc_conn_recfg_v1510_ies_s non_crit_ext; @@ -29014,7 +28593,6 @@ struct rrc_conn_recfg_v1430_ies_s { // RadioResourceConfigDedicated-v1370 ::= SEQUENCE struct rr_cfg_ded_v1370_s { - // member variables bool phys_cfg_ded_v1370_present = false; phys_cfg_ded_v1370_s phys_cfg_ded_v1370; @@ -29026,29 +28604,28 @@ struct rr_cfg_ded_v1370_s { // SCG-ConfigPartSCG-r12 ::= SEQUENCE struct scg_cfg_part_scg_r12_s { - // member variables - bool ext = false; - bool rr_cfg_ded_scg_r12_present = false; - bool s_cell_to_release_list_scg_r12_present = false; - bool p_scell_to_add_mod_r12_present = false; - bool s_cell_to_add_mod_list_scg_r12_present = false; - bool mob_ctrl_info_scg_r12_present = false; + bool ext = false; + bool rr_cfg_ded_scg_r12_present = false; + bool scell_to_release_list_scg_r12_present = false; + bool pscell_to_add_mod_r12_present = false; + bool scell_to_add_mod_list_scg_r12_present = false; + bool mob_ctrl_info_scg_r12_present = false; rr_cfg_ded_scg_r12_s rr_cfg_ded_scg_r12; - scell_to_release_list_r10_l s_cell_to_release_list_scg_r12; - ps_cell_to_add_mod_r12_s p_scell_to_add_mod_r12; - scell_to_add_mod_list_r10_l s_cell_to_add_mod_list_scg_r12; + scell_to_release_list_r10_l scell_to_release_list_scg_r12; + ps_cell_to_add_mod_r12_s pscell_to_add_mod_r12; + scell_to_add_mod_list_r10_l scell_to_add_mod_list_scg_r12; mob_ctrl_info_scg_r12_s mob_ctrl_info_scg_r12; // ... // group 0 - copy_ptr s_cell_to_release_list_scg_ext_r13; - copy_ptr s_cell_to_add_mod_list_scg_ext_r13; + copy_ptr scell_to_release_list_scg_ext_r13; + copy_ptr scell_to_add_mod_list_scg_ext_r13; // group 1 - copy_ptr s_cell_to_add_mod_list_scg_ext_v1370; + copy_ptr scell_to_add_mod_list_scg_ext_v1370; // group 2 - copy_ptr p_scell_to_add_mod_v1440; + copy_ptr pscell_to_add_mod_v1440; // group 3 - copy_ptr s_cell_group_to_release_list_scg_r15; - copy_ptr s_cell_group_to_add_mod_list_scg_r15; + copy_ptr scell_group_to_release_list_scg_r15; + copy_ptr scell_group_to_add_mod_list_scg_r15; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -29058,11 +28635,10 @@ struct scg_cfg_part_scg_r12_s { // SCG-ConfigPartSCG-v12f0 ::= SEQUENCE struct scg_cfg_part_scg_v12f0_s { - // member variables - bool p_scell_to_add_mod_v12f0_present = false; - bool s_cell_to_add_mod_list_scg_v12f0_present = false; - ps_cell_to_add_mod_v12f0_s p_scell_to_add_mod_v12f0; - scell_to_add_mod_list_v10l0_l s_cell_to_add_mod_list_scg_v12f0; + bool pscell_to_add_mod_v12f0_present = false; + bool scell_to_add_mod_list_scg_v12f0_present = false; + ps_cell_to_add_mod_v12f0_s pscell_to_add_mod_v12f0; + scell_to_add_mod_list_v10l0_l scell_to_add_mod_list_scg_v12f0; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -29070,19 +28646,19 @@ struct scg_cfg_part_scg_v12f0_s { void to_json(json_writer& j) const; }; -// SL-CommTxPoolToAddModList-r12 ::= SEQUENCE (SIZE (1..maxSL-TxPool-r12)) OF SL-CommTxPoolToAddMod-r12 -typedef dyn_array sl_comm_tx_pool_to_add_mod_list_r12_l; +// SL-CommTxPoolToAddModList-r12 ::= SEQUENCE (SIZE (1..4)) OF SL-CommTxPoolToAddMod-r12 +using sl_comm_tx_pool_to_add_mod_list_r12_l = dyn_array; -// SL-CommTxPoolToAddModListExt-r13 ::= SEQUENCE (SIZE (1..maxSL-TxPool-v1310)) OF SL-CommTxPoolToAddModExt-r13 -typedef dyn_array sl_comm_tx_pool_to_add_mod_list_ext_r13_l; +// SL-CommTxPoolToAddModListExt-r13 ::= SEQUENCE (SIZE (1..4)) OF SL-CommTxPoolToAddModExt-r13 +using sl_comm_tx_pool_to_add_mod_list_ext_r13_l = dyn_array; -// SL-DiscSysInfoToReportFreqList-r13 ::= SEQUENCE (SIZE (1..maxFreq)) OF INTEGER -typedef bounded_array sl_disc_sys_info_to_report_freq_list_r13_l; +// SL-DiscSysInfoToReportFreqList-r13 ::= SEQUENCE (SIZE (1..8)) OF INTEGER (0..262143) +using sl_disc_sys_info_to_report_freq_list_r13_l = bounded_array; // SL-DiscTxInfoInterFreqListAdd-r13 ::= SEQUENCE struct sl_disc_tx_info_inter_freq_list_add_r13_s { - typedef dyn_array disc_tx_freq_to_add_mod_list_r13_l_; - typedef bounded_array disc_tx_freq_to_release_list_r13_l_; + using disc_tx_freq_to_add_mod_list_r13_l_ = dyn_array; + using disc_tx_freq_to_release_list_r13_l_ = bounded_array; // member variables bool ext = false; @@ -29100,7 +28676,6 @@ struct sl_disc_tx_info_inter_freq_list_add_r13_s { // SL-GapConfig-r13 ::= SEQUENCE struct sl_gap_cfg_r13_s { - // member variables sl_gap_pattern_list_r13_l gap_pattern_list_r13; // sequence methods @@ -29109,15 +28684,14 @@ struct sl_gap_cfg_r13_s { void to_json(json_writer& j) const; }; -// SL-TF-IndexPairList-r12 ::= SEQUENCE (SIZE (1..maxSL-TF-IndexPair-r12)) OF SL-TF-IndexPair-r12 -typedef dyn_array sl_tf_idx_pair_list_r12_l; +// SL-TF-IndexPairList-r12 ::= SEQUENCE (SIZE (1..64)) OF SL-TF-IndexPair-r12 +using sl_tf_idx_pair_list_r12_l = dyn_array; -// SL-TxPoolToReleaseListExt-r13 ::= SEQUENCE (SIZE (1..maxSL-TxPool-v1310)) OF INTEGER -typedef bounded_array sl_tx_pool_to_release_list_ext_r13_l; +// SL-TxPoolToReleaseListExt-r13 ::= SEQUENCE (SIZE (1..4)) OF INTEGER (5..8) +using sl_tx_pool_to_release_list_ext_r13_l = bounded_array; // AltTTT-CellsToAddMod-r12 ::= SEQUENCE struct alt_ttt_cells_to_add_mod_r12_s { - // member variables uint8_t cell_idx_r12 = 1; pci_range_s pci_range_r12; @@ -29127,15 +28701,14 @@ struct alt_ttt_cells_to_add_mod_r12_s { void to_json(json_writer& j) const; }; -// BT-NameList-r15 ::= SEQUENCE (SIZE (1..maxBT-Name-r15)) OF OCTET STRING -typedef bounded_array bt_name_list_r15_l; +// BT-NameList-r15 ::= SEQUENCE (SIZE (1..4)) OF OCTET STRING (SIZE (1..248)) +using bt_name_list_r15_l = bounded_array; -// BandCombination-r14 ::= SEQUENCE (SIZE (1..maxSimultaneousBands-r10)) OF BandIndication-r14 -typedef dyn_array band_combination_r14_l; +// BandCombination-r14 ::= SEQUENCE (SIZE (1..64)) OF BandIndication-r14 +using band_combination_r14_l = dyn_array; // BlackCellsToAddMod ::= SEQUENCE struct black_cells_to_add_mod_s { - // member variables uint8_t cell_idx = 1; pci_range_s pci_range; @@ -29147,7 +28720,6 @@ struct black_cells_to_add_mod_s { // CellsToAddMod ::= SEQUENCE struct cells_to_add_mod_s { - // member variables uint8_t cell_idx = 1; uint16_t pci = 0; q_offset_range_e cell_individual_offset; @@ -29160,7 +28732,6 @@ struct cells_to_add_mod_s { // CellsToAddModCDMA2000 ::= SEQUENCE struct cells_to_add_mod_cdma2000_s { - // member variables uint8_t cell_idx = 1; uint16_t pci = 0; @@ -29172,7 +28743,6 @@ struct cells_to_add_mod_cdma2000_s { // CellsToAddModNR-r15 ::= SEQUENCE struct cells_to_add_mod_nr_r15_s { - // member variables uint8_t cell_idx_r15 = 1; uint16_t pci_r15 = 0; @@ -29184,7 +28754,6 @@ struct cells_to_add_mod_nr_r15_s { // CellsToAddModUTRA-FDD ::= SEQUENCE struct cells_to_add_mod_utra_fdd_s { - // member variables uint8_t cell_idx = 1; uint16_t pci = 0; @@ -29196,7 +28765,6 @@ struct cells_to_add_mod_utra_fdd_s { // CellsToAddModUTRA-TDD ::= SEQUENCE struct cells_to_add_mod_utra_tdd_s { - // member variables uint8_t cell_idx = 1; uint8_t pci = 0; @@ -29208,7 +28776,6 @@ struct cells_to_add_mod_utra_tdd_s { // FlightPathInfoReportConfig-r15 ::= SEQUENCE struct flight_path_info_report_cfg_r15_s { - // member variables bool include_time_stamp_r15_present = false; uint8_t max_way_point_num_r15 = 1; @@ -29218,11 +28785,11 @@ struct flight_path_info_report_cfg_r15_s { void to_json(json_writer& j) const; }; -// MeasCSI-RS-ToAddModList-r12 ::= SEQUENCE (SIZE (1..maxCSI-RS-Meas-r12)) OF MeasCSI-RS-Config-r12 -typedef dyn_array meas_csi_rs_to_add_mod_list_r12_l; +// MeasCSI-RS-ToAddModList-r12 ::= SEQUENCE (SIZE (1..96)) OF MeasCSI-RS-Config-r12 +using meas_csi_rs_to_add_mod_list_r12_l = dyn_array; -// MeasCSI-RS-ToRemoveList-r12 ::= SEQUENCE (SIZE (1..maxCSI-RS-Meas-r12)) OF INTEGER -typedef dyn_array meas_csi_rs_to_rem_list_r12_l; +// MeasCSI-RS-ToRemoveList-r12 ::= SEQUENCE (SIZE (1..96)) OF INTEGER (1..96) +using meas_csi_rs_to_rem_list_r12_l = dyn_array; // MeasIdleConfigDedicated-r15 ::= SEQUENCE struct meas_idle_cfg_ded_r15_s { @@ -29248,11 +28815,11 @@ struct meas_idle_cfg_ded_r15_s { void to_json(json_writer& j) const; }; -// MeasSubframeCellList-r10 ::= SEQUENCE (SIZE (1..maxCellMeas)) OF PhysCellIdRange -typedef dyn_array meas_sf_cell_list_r10_l; +// MeasSubframeCellList-r10 ::= SEQUENCE (SIZE (1..32)) OF PhysCellIdRange +using meas_sf_cell_list_r10_l = dyn_array; -// PhysCellIdRangeUTRA-FDDList-r9 ::= SEQUENCE (SIZE (1..maxPhysCellIdRange-r9)) OF PhysCellIdRangeUTRA-FDD-r9 -typedef dyn_array pci_range_utra_fdd_list_r9_l; +// PhysCellIdRangeUTRA-FDDList-r9 ::= SEQUENCE (SIZE (1..4)) OF PhysCellIdRangeUTRA-FDD-r9 +using pci_range_utra_fdd_list_r9_l = dyn_array; // RRC-InactiveConfig-r15 ::= SEQUENCE struct rrc_inactive_cfg_r15_s { @@ -29294,15 +28861,14 @@ struct rrc_inactive_cfg_r15_s { // RRCConnectionReconfiguration-v1310-IEs ::= SEQUENCE struct rrc_conn_recfg_v1310_ies_s { - // member variables - bool s_cell_to_release_list_ext_r13_present = false; - bool s_cell_to_add_mod_list_ext_r13_present = false; - bool lwa_cfg_r13_present = false; - bool lwip_cfg_r13_present = false; - bool rclwi_cfg_r13_present = false; - bool non_crit_ext_present = false; - scell_to_release_list_ext_r13_l s_cell_to_release_list_ext_r13; - scell_to_add_mod_list_ext_r13_l s_cell_to_add_mod_list_ext_r13; + bool scell_to_release_list_ext_r13_present = false; + bool scell_to_add_mod_list_ext_r13_present = false; + bool lwa_cfg_r13_present = false; + bool lwip_cfg_r13_present = false; + bool rclwi_cfg_r13_present = false; + bool non_crit_ext_present = false; + scell_to_release_list_ext_r13_l scell_to_release_list_ext_r13; + scell_to_add_mod_list_ext_r13_l scell_to_add_mod_list_ext_r13; lwa_cfg_r13_c lwa_cfg_r13; lwip_cfg_r13_c lwip_cfg_r13; rclwi_cfg_r13_c rclwi_cfg_r13; @@ -29316,12 +28882,11 @@ struct rrc_conn_recfg_v1310_ies_s { // RRCConnectionReconfiguration-v1370-IEs ::= SEQUENCE struct rrc_conn_recfg_v1370_ies_s { - // member variables - bool rr_cfg_ded_v1370_present = false; - bool s_cell_to_add_mod_list_ext_v1370_present = false; - bool non_crit_ext_present = false; + bool rr_cfg_ded_v1370_present = false; + bool scell_to_add_mod_list_ext_v1370_present = false; + bool non_crit_ext_present = false; rr_cfg_ded_v1370_s rr_cfg_ded_v1370; - scell_to_add_mod_list_ext_v1370_l s_cell_to_add_mod_list_ext_v1370; + scell_to_add_mod_list_ext_v1370_l scell_to_add_mod_list_ext_v1370; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -29333,11 +28898,10 @@ struct rrc_conn_recfg_v1370_ies_s { struct scg_cfg_r12_c { struct setup_s_ { struct scg_cfg_part_mcg_r12_s_ { - // member variables bool ext = false; bool scg_counter_r12_present = false; bool pwr_coordination_info_r12_present = false; - uint16_t scg_counter_r12 = 0; + uint32_t scg_counter_r12 = 0; pwr_coordination_info_r12_s pwr_coordination_info_r12; // ... }; @@ -29382,7 +28946,6 @@ private: // SCG-Configuration-v12f0 ::= CHOICE struct scg_cfg_v12f0_c { struct setup_s_ { - // member variables bool scg_cfg_part_scg_v12f0_present = false; scg_cfg_part_scg_v12f0_s scg_cfg_part_scg_v12f0; }; @@ -29422,7 +28985,6 @@ struct sl_comm_cfg_r12_s { struct comm_tx_res_r12_c_ { struct setup_c_ { struct sched_r12_s_ { - // member variables bool mcs_r12_present = false; fixed_bitstring<16> sl_rnti_r12; mac_main_cfg_sl_r12_s mac_main_cfg_r12; @@ -29431,7 +28993,6 @@ struct sl_comm_cfg_r12_s { }; struct ue_sel_r12_s_ { struct comm_tx_pool_normal_ded_r12_s_ { - // member variables bool pool_to_release_list_r12_present = false; bool pool_to_add_mod_list_r12_present = false; sl_tx_pool_to_release_list_r12_l pool_to_release_list_r12; @@ -29491,8 +29052,8 @@ struct sl_comm_cfg_r12_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -29529,13 +29090,11 @@ struct sl_comm_cfg_r12_s { struct comm_tx_res_v1310_c_ { struct setup_c_ { struct sched_v1310_s_ { - // member variables lc_ch_group_info_list_r13_l lc_ch_group_info_list_r13; bool multiple_tx_r13 = false; }; struct ue_sel_v1310_s_ { struct comm_tx_pool_normal_ded_ext_r13_s_ { - // member variables bool pool_to_release_list_ext_r13_present = false; bool pool_to_add_mod_list_ext_r13_present = false; sl_tx_pool_to_release_list_ext_r13_l pool_to_release_list_ext_r13; @@ -29595,8 +29154,8 @@ struct sl_comm_cfg_r12_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -29652,7 +29211,6 @@ struct sl_disc_cfg_r12_s { struct disc_tx_res_r12_c_ { struct setup_c_ { struct sched_r12_s_ { - // member variables bool disc_tx_cfg_r12_present = false; bool disc_tf_idx_list_r12_present = false; bool disc_hop_cfg_r12_present = false; @@ -29662,7 +29220,6 @@ struct sl_disc_cfg_r12_s { }; struct ue_sel_r12_s_ { struct disc_tx_pool_ded_r12_s_ { - // member variables bool pool_to_release_list_r12_present = false; bool pool_to_add_mod_list_r12_present = false; sl_tx_pool_to_release_list_r12_l pool_to_release_list_r12; @@ -29723,8 +29280,8 @@ struct sl_disc_cfg_r12_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -29760,7 +29317,6 @@ struct sl_disc_cfg_r12_s { }; struct disc_tf_idx_list_v1260_c_ { struct setup_s_ { - // member variables sl_tf_idx_pair_list_r12b_l disc_tf_idx_list_r12b; }; typedef setup_e types; @@ -29796,7 +29352,6 @@ struct sl_disc_cfg_r12_s { struct disc_tx_res_ps_r13_c_ { struct setup_c_ { struct ue_sel_r13_s_ { - // member variables sl_disc_tx_pool_ded_r13_s disc_tx_pool_ps_ded_r13; }; struct types_opts { @@ -29849,8 +29404,8 @@ struct sl_disc_cfg_r12_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -29886,7 +29441,6 @@ struct sl_disc_cfg_r12_s { }; struct disc_tx_inter_freq_info_r13_c_ { struct setup_s_ { - // member variables bool disc_tx_carrier_freq_r13_present = false; bool disc_tx_ref_carrier_ded_r13_present = false; bool disc_tx_info_inter_freq_list_add_r13_present = false; @@ -30061,7 +29615,6 @@ struct sl_sync_tx_ctrl_r12_s { // UECapabilityEnquiry-v1530-IEs ::= SEQUENCE struct ue_cap_enquiry_v1530_ies_s { - // member variables bool request_stti_spt_cap_r15_present = false; bool eutra_nr_only_r15_present = false; bool non_crit_ext_present = false; @@ -30072,15 +29625,14 @@ struct ue_cap_enquiry_v1530_ies_s { void to_json(json_writer& j) const; }; -// WLAN-ChannelList-r13 ::= SEQUENCE (SIZE (1..maxWLAN-Channels-r13)) OF INTEGER -typedef bounded_array wlan_ch_list_r13_l; +// WLAN-ChannelList-r13 ::= SEQUENCE (SIZE (1..16)) OF INTEGER (0..255) +using wlan_ch_list_r13_l = bounded_array; -// WLAN-NameList-r15 ::= SEQUENCE (SIZE (1..maxWLAN-Name-r15)) OF OCTET STRING -typedef bounded_array wlan_name_list_r15_l; +// WLAN-NameList-r15 ::= SEQUENCE (SIZE (1..4)) OF OCTET STRING (SIZE (1..32)) +using wlan_name_list_r15_l = bounded_array; // WhiteCellsToAddMod-r13 ::= SEQUENCE struct white_cells_to_add_mod_r13_s { - // member variables uint8_t cell_idx_r13 = 1; pci_range_s pci_range_r13; @@ -30090,8 +29642,8 @@ struct white_cells_to_add_mod_r13_s { void to_json(json_writer& j) const; }; -// AltTTT-CellsToAddModList-r12 ::= SEQUENCE (SIZE (1..maxCellMeas)) OF AltTTT-CellsToAddMod-r12 -typedef dyn_array alt_ttt_cells_to_add_mod_list_r12_l; +// AltTTT-CellsToAddModList-r12 ::= SEQUENCE (SIZE (1..32)) OF AltTTT-CellsToAddMod-r12 +using alt_ttt_cells_to_add_mod_list_r12_l = dyn_array; // BT-NameListConfig-r15 ::= CHOICE struct bt_name_list_cfg_r15_c { @@ -30126,11 +29678,11 @@ private: bt_name_list_r15_l c; }; -// BandCombinationList-r14 ::= SEQUENCE (SIZE (1..maxBandComb-r13)) OF BandCombination-r14 -typedef dyn_array band_combination_list_r14_l; +// BandCombinationList-r14 ::= SEQUENCE (SIZE (1..384)) OF BandCombination-r14 +using band_combination_list_r14_l = dyn_array; -// BlackCellsToAddModList ::= SEQUENCE (SIZE (1..maxCellMeas)) OF BlackCellsToAddMod -typedef dyn_array black_cells_to_add_mod_list_l; +// BlackCellsToAddModList ::= SEQUENCE (SIZE (1..32)) OF BlackCellsToAddMod +using black_cells_to_add_mod_list_l = dyn_array; // CDMA2000-Type ::= ENUMERATED struct cdma2000_type_opts { @@ -30144,7 +29696,6 @@ typedef enumerated cdma2000_type_e; // CSG-AllowedReportingCells-r9 ::= SEQUENCE struct csg_allowed_report_cells_r9_s { - // member variables bool pci_range_utra_fdd_list_r9_present = false; pci_range_utra_fdd_list_r9_l pci_range_utra_fdd_list_r9; @@ -30154,12 +29705,11 @@ struct csg_allowed_report_cells_r9_s { void to_json(json_writer& j) const; }; -// CandidateServingFreqListNR-r15 ::= SEQUENCE (SIZE (1..maxFreqIDC-r11)) OF INTEGER -typedef bounded_array candidate_serving_freq_list_nr_r15_l; +// CandidateServingFreqListNR-r15 ::= SEQUENCE (SIZE (1..32)) OF INTEGER (0..3279165) +using candidate_serving_freq_list_nr_r15_l = bounded_array; // CarrierFreqGERAN ::= SEQUENCE struct carrier_freq_geran_s { - // member variables uint16_t arfcn = 0; band_ind_geran_e band_ind; @@ -30169,23 +29719,23 @@ struct carrier_freq_geran_s { void to_json(json_writer& j) const; }; -// CellIndexList ::= SEQUENCE (SIZE (1..maxCellMeas)) OF INTEGER -typedef bounded_array cell_idx_list_l; +// CellIndexList ::= SEQUENCE (SIZE (1..32)) OF INTEGER (1..32) +using cell_idx_list_l = bounded_array; -// CellsToAddModList ::= SEQUENCE (SIZE (1..maxCellMeas)) OF CellsToAddMod -typedef dyn_array cells_to_add_mod_list_l; +// CellsToAddModList ::= SEQUENCE (SIZE (1..32)) OF CellsToAddMod +using cells_to_add_mod_list_l = dyn_array; -// CellsToAddModListCDMA2000 ::= SEQUENCE (SIZE (1..maxCellMeas)) OF CellsToAddModCDMA2000 -typedef dyn_array cells_to_add_mod_list_cdma2000_l; +// CellsToAddModListCDMA2000 ::= SEQUENCE (SIZE (1..32)) OF CellsToAddModCDMA2000 +using cells_to_add_mod_list_cdma2000_l = dyn_array; -// CellsToAddModListNR-r15 ::= SEQUENCE (SIZE (1..maxCellMeas)) OF CellsToAddModNR-r15 -typedef dyn_array cells_to_add_mod_list_nr_r15_l; +// CellsToAddModListNR-r15 ::= SEQUENCE (SIZE (1..32)) OF CellsToAddModNR-r15 +using cells_to_add_mod_list_nr_r15_l = dyn_array; -// CellsToAddModListUTRA-FDD ::= SEQUENCE (SIZE (1..maxCellMeas)) OF CellsToAddModUTRA-FDD -typedef dyn_array cells_to_add_mod_list_utra_fdd_l; +// CellsToAddModListUTRA-FDD ::= SEQUENCE (SIZE (1..32)) OF CellsToAddModUTRA-FDD +using cells_to_add_mod_list_utra_fdd_l = dyn_array; -// CellsToAddModListUTRA-TDD ::= SEQUENCE (SIZE (1..maxCellMeas)) OF CellsToAddModUTRA-TDD -typedef dyn_array cells_to_add_mod_list_utra_tdd_l; +// CellsToAddModListUTRA-TDD ::= SEQUENCE (SIZE (1..32)) OF CellsToAddModUTRA-TDD +using cells_to_add_mod_list_utra_tdd_l = dyn_array; // MeasCycleSCell-r10 ::= ENUMERATED struct meas_cycle_scell_r10_opts { @@ -30268,8 +29818,8 @@ struct meas_ds_cfg_r12_c { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -30324,8 +29874,8 @@ struct meas_ds_cfg_r12_c { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -30718,8 +30268,8 @@ struct meas_gap_cfg_c { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -30760,7 +30310,6 @@ private: // MeasRSSI-ReportConfig-r13 ::= SEQUENCE struct meas_rssi_report_cfg_r13_s { - // member variables bool ch_occupancy_thres_r13_present = false; uint8_t ch_occupancy_thres_r13 = 0; @@ -30796,7 +30345,6 @@ struct meas_sensing_cfg_r15_s { // MeasSubframePatternConfigNeigh-r10 ::= CHOICE struct meas_sf_pattern_cfg_neigh_r10_c { struct setup_s_ { - // member variables bool meas_sf_cell_list_r10_present = false; meas_sf_pattern_r10_c meas_sf_pattern_neigh_r10; meas_sf_cell_list_r10_l meas_sf_cell_list_r10; @@ -30834,7 +30382,6 @@ private: // MobilityControlInfo-v10l0 ::= SEQUENCE struct mob_ctrl_info_v10l0_s { - // member variables bool add_spec_emission_v10l0_present = false; uint16_t add_spec_emission_v10l0 = 33; @@ -30846,7 +30393,6 @@ struct mob_ctrl_info_v10l0_s { // PhysCellIdGERAN ::= SEQUENCE struct pci_geran_s { - // member variables fixed_bitstring<3> network_colour_code; fixed_bitstring<3> base_station_colour_code; @@ -30858,7 +30404,6 @@ struct pci_geran_s { // QuantityConfigRS-NR-r15 ::= SEQUENCE struct quant_cfg_rs_nr_r15_s { - // member variables bool filt_coeff_rsrp_r15_present = false; bool filt_coeff_rsrq_r15_present = false; bool filt_coef_sinr_r13_present = false; @@ -31002,7 +30547,6 @@ struct rrc_conn_recfg_v1250_ies_s { // RRCConnectionReconfiguration-v12f0-IEs ::= SEQUENCE struct rrc_conn_recfg_v12f0_ies_s { - // member variables bool scg_cfg_v12f0_present = false; bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; @@ -31048,7 +30592,7 @@ struct rrc_conn_release_v1530_ies_s { // RS-ConfigSSB-NR-r15 ::= SEQUENCE struct rs_cfg_ssb_nr_r15_s { struct subcarrier_spacing_ssb_r15_opts { - enum options { k_hz15, k_hz30, k_hz120, k_hz240, nulltype } value; + enum options { khz15, khz30, khz120, khz240, nulltype } value; typedef uint8_t number_type; std::string to_string() const; @@ -31131,7 +30675,6 @@ typedef enumerated report_interv_e; // ReportQuantityNR-r15 ::= SEQUENCE struct report_quant_nr_r15_s { - // member variables bool ss_rsrp = false; bool ss_rsrq = false; bool ss_sinr = false; @@ -31144,7 +30687,6 @@ struct report_quant_nr_r15_s { // ReportQuantityWLAN-r13 ::= SEQUENCE struct report_quant_wlan_r13_s { - // member variables bool ext = false; bool band_request_wlan_r13_present = false; bool carrier_info_request_wlan_r13_present = false; @@ -31161,15 +30703,14 @@ struct report_quant_wlan_r13_s { void to_json(json_writer& j) const; }; -// SystemInfoListGERAN ::= SEQUENCE (SIZE (1..maxGERAN-SI)) OF OCTET STRING -typedef bounded_array sys_info_list_geran_l; +// SystemInfoListGERAN ::= SEQUENCE (SIZE (1..10)) OF OCTET STRING (SIZE (1..23)) +using sys_info_list_geran_l = bounded_array; // TargetMBSFN-Area-r12 ::= SEQUENCE struct target_mbsfn_area_r12_s { - // member variables bool ext = false; bool mbsfn_area_id_r12_present = false; - uint8_t mbsfn_area_id_r12 = 0; + uint16_t mbsfn_area_id_r12 = 0; uint32_t carrier_freq_r12 = 0; // ... @@ -31231,8 +30772,8 @@ struct thres_eutra_c { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -31304,8 +30845,8 @@ struct thres_nr_r15_c { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -31364,8 +30905,8 @@ struct thres_utra_c { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -31398,12 +30939,11 @@ struct time_to_trigger_opts { }; typedef enumerated time_to_trigger_e; -// Tx-ResourcePoolMeasList-r14 ::= SEQUENCE (SIZE (1..maxSL-PoolToMeasure-r14)) OF INTEGER -typedef dyn_array tx_res_pool_meas_list_r14_l; +// Tx-ResourcePoolMeasList-r14 ::= SEQUENCE (SIZE (1..72)) OF INTEGER (1..72) +using tx_res_pool_meas_list_r14_l = dyn_array; // UECapabilityEnquiry-v1510-IEs ::= SEQUENCE struct ue_cap_enquiry_v1510_ies_s { - // member variables bool requested_freq_bands_nr_mrdc_r15_present = false; bool non_crit_ext_present = false; dyn_octstring requested_freq_bands_nr_mrdc_r15; @@ -31417,7 +30957,6 @@ struct ue_cap_enquiry_v1510_ies_s { // UEInformationRequest-v1530-IEs ::= SEQUENCE struct ue_info_request_v1530_ies_s { - // member variables bool idle_mode_meas_req_r15_present = false; bool flight_path_info_req_r15_present = false; bool non_crit_ext_present = false; @@ -31518,7 +31057,7 @@ struct wlan_carrier_info_r13_s { bool operating_class_r13_present = false; bool country_code_r13_present = false; bool ch_nums_r13_present = false; - uint8_t operating_class_r13 = 0; + uint16_t operating_class_r13 = 0; country_code_r13_e_ country_code_r13; wlan_ch_list_r13_l ch_nums_r13; // ... @@ -31562,12 +31101,11 @@ private: wlan_name_list_r15_l c; }; -// WhiteCellsToAddModList-r13 ::= SEQUENCE (SIZE (1..maxCellMeas)) OF WhiteCellsToAddMod-r13 -typedef dyn_array white_cells_to_add_mod_list_r13_l; +// WhiteCellsToAddModList-r13 ::= SEQUENCE (SIZE (1..32)) OF WhiteCellsToAddMod-r13 +using white_cells_to_add_mod_list_r13_l = dyn_array; // CellInfoGERAN-r9 ::= SEQUENCE struct cell_info_geran_r9_s { - // member variables pci_geran_s pci_r9; carrier_freq_geran_s carrier_freq_r9; sys_info_list_geran_l sys_info_r9; @@ -31580,7 +31118,6 @@ struct cell_info_geran_r9_s { // CellInfoUTRA-FDD-r9 ::= SEQUENCE struct cell_info_utra_fdd_r9_s { - // member variables uint16_t pci_r9 = 0; dyn_octstring utra_bcch_container_r9; @@ -31592,7 +31129,6 @@ struct cell_info_utra_fdd_r9_s { // CellInfoUTRA-TDD-r10 ::= SEQUENCE struct cell_info_utra_tdd_r10_s { - // member variables uint8_t pci_r10 = 0; uint16_t carrier_freq_r10 = 0; dyn_octstring utra_bcch_container_r10; @@ -31605,7 +31141,6 @@ struct cell_info_utra_tdd_r10_s { // CellInfoUTRA-TDD-r9 ::= SEQUENCE struct cell_info_utra_tdd_r9_s { - // member variables uint8_t pci_r9 = 0; dyn_octstring utra_bcch_container_r9; @@ -31617,7 +31152,6 @@ struct cell_info_utra_tdd_r9_s { // DRB-CountMSB-Info ::= SEQUENCE struct drb_count_msb_info_s { - // member variables uint8_t drb_id = 1; uint32_t count_msb_ul = 0; uint32_t count_msb_dl = 0; @@ -31705,7 +31239,6 @@ struct idc_cfg_r11_s { // LoggedMeasurementConfiguration-v1530-IEs ::= SEQUENCE struct logged_meas_cfg_v1530_ies_s { - // member variables bool bt_name_list_r15_present = false; bool wlan_name_list_r15_present = false; bool non_crit_ext_present = false; @@ -31720,7 +31253,6 @@ struct logged_meas_cfg_v1530_ies_s { // MeasGapConfigPerCC-r14 ::= SEQUENCE struct meas_gap_cfg_per_cc_r14_s { - // member variables uint8_t serv_cell_id_r14 = 0; meas_gap_cfg_c meas_gap_cfg_cc_r14; @@ -31732,7 +31264,6 @@ struct meas_gap_cfg_per_cc_r14_s { // MeasObjectCDMA2000 ::= SEQUENCE struct meas_obj_cdma2000_s { - // member variables bool ext = false; bool search_win_size_present = false; bool offset_freq_present = false; @@ -31804,7 +31335,7 @@ struct meas_obj_eutra_s { bool black_cells_to_rem_list_present = false; bool black_cells_to_add_mod_list_present = false; bool cell_for_which_to_report_cgi_present = false; - uint16_t carrier_freq = 0; + uint32_t carrier_freq = 0; allowed_meas_bw_e allowed_meas_bw; bool presence_ant_port1 = false; fixed_bitstring<2> neigh_cell_cfg; @@ -31851,7 +31382,6 @@ struct meas_obj_eutra_s { // MeasObjectEUTRA-v9e0 ::= SEQUENCE struct meas_obj_eutra_v9e0_s { - // member variables uint32_t carrier_freq_v9e0 = 65536; // sequence methods @@ -31862,7 +31392,6 @@ struct meas_obj_eutra_v9e0_s { // MeasObjectGERAN ::= SEQUENCE struct meas_obj_geran_s { - // member variables bool ext = false; bool offset_freq_present = false; bool ncc_permitted_present = false; @@ -31881,7 +31410,7 @@ struct meas_obj_geran_s { // MeasObjectNR-r15 ::= SEQUENCE struct meas_obj_nr_r15_s { - typedef bounded_array cells_for_which_to_report_sftd_r15_l_; + using cells_for_which_to_report_sftd_r15_l_ = bounded_array; struct band_nr_r15_c_ { typedef setup_e types; @@ -31999,8 +31528,8 @@ struct meas_obj_utra_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -32055,8 +31584,8 @@ struct meas_obj_utra_s { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -32088,8 +31617,8 @@ struct meas_obj_utra_s { // MeasObjectWLAN-r13 ::= SEQUENCE struct meas_obj_wlan_r13_s { struct carrier_freq_r13_c_ { - typedef bounded_array band_ind_list_wlan_r13_l_; - typedef dyn_array carrier_info_list_wlan_r13_l_; + using band_ind_list_wlan_r13_l_ = bounded_array; + using carrier_info_list_wlan_r13_l_ = dyn_array; struct types_opts { enum options { band_ind_list_wlan_r13, carrier_info_list_wlan_r13, nulltype } value; @@ -32140,8 +31669,8 @@ struct meas_obj_wlan_r13_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -32164,7 +31693,6 @@ struct meas_obj_wlan_r13_s { // ObtainLocationConfig-r11 ::= SEQUENCE struct obtain_location_cfg_r11_s { - // member variables bool obtain_location_r11_present = false; // sequence methods @@ -32240,7 +31768,6 @@ private: // QuantityConfigNR-r15 ::= SEQUENCE struct quant_cfg_nr_r15_s { - // member variables bool meas_quant_rs_idx_nr_r15_present = false; quant_cfg_rs_nr_r15_s meas_quant_cell_nr_r15; quant_cfg_rs_nr_r15_s meas_quant_rs_idx_nr_r15; @@ -32253,13 +31780,12 @@ struct quant_cfg_nr_r15_s { // RRCConnectionReconfiguration-v10l0-IEs ::= SEQUENCE struct rrc_conn_recfg_v10l0_ies_s { - // member variables - bool mob_ctrl_info_v10l0_present = false; - bool s_cell_to_add_mod_list_v10l0_present = false; - bool late_non_crit_ext_present = false; - bool non_crit_ext_present = false; + bool mob_ctrl_info_v10l0_present = false; + bool scell_to_add_mod_list_v10l0_present = false; + bool late_non_crit_ext_present = false; + bool non_crit_ext_present = false; mob_ctrl_info_v10l0_s mob_ctrl_info_v10l0; - scell_to_add_mod_list_v10l0_l s_cell_to_add_mod_list_v10l0; + scell_to_add_mod_list_v10l0_l scell_to_add_mod_list_v10l0; dyn_octstring late_non_crit_ext; rrc_conn_recfg_v12f0_ies_s non_crit_ext; @@ -32271,7 +31797,6 @@ struct rrc_conn_recfg_v10l0_ies_s { // RRCConnectionReconfiguration-v1130-IEs ::= SEQUENCE struct rrc_conn_recfg_v1130_ies_s { - // member variables bool sib_type1_ded_r11_present = false; bool non_crit_ext_present = false; dyn_octstring sib_type1_ded_r11; @@ -32285,7 +31810,6 @@ struct rrc_conn_recfg_v1130_ies_s { // RRCConnectionRelease-v1320-IEs ::= SEQUENCE struct rrc_conn_release_v1320_ies_s { - // member variables bool resume_id_r13_present = false; bool non_crit_ext_present = false; fixed_bitstring<40> resume_id_r13; @@ -32300,58 +31824,46 @@ struct rrc_conn_release_v1320_ies_s { struct eutra_event_s { struct event_id_c_ { struct event_a1_s_ { - // member variables thres_eutra_c a1_thres; }; struct event_a2_s_ { - // member variables thres_eutra_c a2_thres; }; struct event_a3_s_ { - // member variables int8_t a3_offset = -30; bool report_on_leave = false; }; struct event_a4_s_ { - // member variables thres_eutra_c a4_thres; }; struct event_a5_s_ { - // member variables thres_eutra_c a5_thres1; thres_eutra_c a5_thres2; }; struct event_a6_r10_s_ { - // member variables int8_t a6_offset_r10 = -30; bool a6_report_on_leave_r10 = false; }; struct event_c1_r12_s_ { - // member variables uint8_t c1_thres_r12 = 0; bool c1_report_on_leave_r12 = false; }; struct event_c2_r12_s_ { - // member variables uint8_t c2_ref_csi_rs_r12 = 1; int8_t c2_offset_r12 = -30; bool c2_report_on_leave_r12 = false; }; struct event_v1_r14_s_ { - // member variables uint8_t v1_thres_r14 = 0; }; struct event_v2_r14_s_ { - // member variables uint8_t v2_thres_r14 = 0; }; struct event_h1_r15_s_ { - // member variables uint16_t h1_thres_offset_r15 = 0; uint8_t h1_hysteresis_minus15 = 1; }; struct event_h2_r15_s_ { - // member variables uint16_t h2_thres_offset_r15 = 0; uint8_t h2_hysteresis_minus15 = 1; }; @@ -32571,22 +32083,18 @@ struct eutra_event_s { private: types type_; - choice_buffer_t + choice_buffer_t c; void destroy_(); @@ -32668,8 +32176,8 @@ struct report_cfg_eutra_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -32693,11 +32201,11 @@ struct report_cfg_eutra_s { int8_t to_number() const; }; typedef enumerated report_amount_e_; - struct alternative_time_to_trigger_r12_c_ { + struct alt_time_to_trigger_r12_c_ { typedef setup_e types; // choice methods - alternative_time_to_trigger_r12_c_() = default; + alt_time_to_trigger_r12_c_() = default; void set(types::options e = types::nulltype); types type() const { return type_; } SRSASN_CODE pack(bit_ref& bref) const; @@ -32735,9 +32243,9 @@ struct report_cfg_eutra_s { // member variables bool trigger_quant_v1310_present = false; - bool a_n_thres1_r13_present = false; + bool an_thres1_r13_present = false; bool a5_thres2_r13_present = false; - uint8_t a_n_thres1_r13 = 0; + uint8_t an_thres1_r13 = 0; uint8_t a5_thres2_r13 = 0; report_quant_v1310_e_ report_quant_v1310; }; @@ -32794,19 +32302,19 @@ struct report_cfg_eutra_s { bool include_location_info_r10_present = false; bool report_add_neigh_meas_r10_present = false; // group 2 - bool use_t312_r12_present = false; - bool use_ps_cell_r12_present = false; - bool report_strongest_csi_rss_r12_present = false; - bool report_crs_meas_r12_present = false; - bool trigger_quant_csi_rs_r12_present = false; - copy_ptr alternative_time_to_trigger_r12; - bool use_t312_r12 = false; - bool use_ps_cell_r12 = false; - copy_ptr a_n_thres1_v1250; - copy_ptr a5_thres2_v1250; - bool report_strongest_csi_rss_r12 = false; - bool report_crs_meas_r12 = false; - bool trigger_quant_csi_rs_r12 = false; + bool use_t312_r12_present = false; + bool use_ps_cell_r12_present = false; + bool report_strongest_csi_rss_r12_present = false; + bool report_crs_meas_r12_present = false; + bool trigger_quant_csi_rs_r12_present = false; + copy_ptr alt_time_to_trigger_r12; + bool use_t312_r12 = false; + bool use_ps_cell_r12 = false; + copy_ptr an_thres1_v1250; + copy_ptr a5_thres2_v1250; + bool report_strongest_csi_rss_r12 = false; + bool report_crs_meas_r12 = false; + bool trigger_quant_csi_rs_r12 = false; // group 3 bool report_sstd_meas_r13_present = false; bool use_white_cell_list_r13_present = false; @@ -32827,11 +32335,11 @@ struct report_cfg_eutra_s { uint8_t max_report_rs_idx_r15 = 0; // group 7 bool purpose_r15_present = false; - bool nof_triggering_cells_r15_present = false; + bool nof_trigger_cells_r15_present = false; bool a4_a5_report_on_leave_r15_present = false; copy_ptr include_bt_meas_r15; copy_ptr include_wlan_meas_r15; - uint8_t nof_triggering_cells_r15 = 2; + uint8_t nof_trigger_cells_r15 = 2; bool a4_a5_report_on_leave_r15 = false; // sequence methods @@ -32912,8 +32420,8 @@ struct report_cfg_inter_rat_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -32988,8 +32496,8 @@ struct report_cfg_inter_rat_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -32999,25 +32507,20 @@ struct report_cfg_inter_rat_s { b2_thres2_c_ b2_thres2; }; struct event_w1_r13_s_ { - // member variables uint8_t w1_thres_r13 = 0; }; struct event_w2_r13_s_ { - // member variables uint8_t w2_thres1_r13 = 0; uint8_t w2_thres2_r13 = 0; }; struct event_w3_r13_s_ { - // member variables uint8_t w3_thres_r13 = 0; }; struct event_b1_nr_r15_s_ { - // member variables thres_nr_r15_c b1_thres_nr_r15; bool report_on_leave_r15 = false; }; struct event_b2_nr_r15_s_ { - // member variables thres_eutra_c b2_thres1_r15; thres_nr_r15_c b2_thres2_nr_r15; bool report_on_leave_r15 = false; @@ -33158,14 +32661,13 @@ struct report_cfg_inter_rat_s { private: types type_; - choice_buffer_t + choice_buffer_t c; void destroy_(); @@ -33237,8 +32739,8 @@ struct report_cfg_inter_rat_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -33282,7 +32784,7 @@ struct report_cfg_inter_rat_s { int8_t c; }; struct report_sftd_meas_r15_opts { - enum options { p_scell, neighbor_cells, nulltype } value; + enum options { pscell, neighbor_cells, nulltype } value; std::string to_string() const; }; @@ -33327,7 +32829,6 @@ struct report_cfg_inter_rat_s { // ReportProximityConfig-r9 ::= SEQUENCE struct report_proximity_cfg_r9_s { - // member variables bool proximity_ind_eutra_r9_present = false; bool proximity_ind_utra_r9_present = false; @@ -33337,12 +32838,12 @@ struct report_proximity_cfg_r9_s { void to_json(json_writer& j) const; }; -// TargetMBSFN-AreaList-r12 ::= SEQUENCE (SIZE (0..maxMBSFN-Area)) OF TargetMBSFN-Area-r12 -typedef dyn_array target_mbsfn_area_list_r12_l; +// TargetMBSFN-AreaList-r12 ::= SEQUENCE (SIZE (0..8)) OF TargetMBSFN-Area-r12 +using target_mbsfn_area_list_r12_l = dyn_array; // TrackingAreaCodeList-v1130 ::= SEQUENCE struct tac_list_v1130_s { - typedef dyn_array plmn_id_per_tac_list_r11_l_; + using plmn_id_per_tac_list_r11_l_ = dyn_array; // member variables plmn_id_per_tac_list_r11_l_ plmn_id_per_tac_list_r11; @@ -33355,7 +32856,6 @@ struct tac_list_v1130_s { // UECapabilityEnquiry-v1430-IEs ::= SEQUENCE struct ue_cap_enquiry_v1430_ies_s { - // member variables bool request_diff_fallback_comb_list_r14_present = false; bool non_crit_ext_present = false; band_combination_list_r14_l request_diff_fallback_comb_list_r14; @@ -33369,7 +32869,6 @@ struct ue_cap_enquiry_v1430_ies_s { // UEInformationRequest-v1250-IEs ::= SEQUENCE struct ue_info_request_v1250_ies_s { - // member variables bool mob_history_report_req_r12_present = false; bool non_crit_ext_present = false; ue_info_request_v1530_ies_s non_crit_ext; @@ -33382,7 +32881,6 @@ struct ue_info_request_v1250_ies_s { // AreaConfiguration-v1130 ::= SEQUENCE struct area_cfg_v1130_s { - // member variables tac_list_v1130_s tac_list_v1130; // sequence methods @@ -33393,7 +32891,6 @@ struct area_cfg_v1130_s { // CellGlobalIdEUTRA ::= SEQUENCE struct cell_global_id_eutra_s { - // member variables plmn_id_s plmn_id; fixed_bitstring<28> cell_id; @@ -33403,24 +32900,23 @@ struct cell_global_id_eutra_s { void to_json(json_writer& j) const; }; -// CellInfoListGERAN-r9 ::= SEQUENCE (SIZE (1..maxCellInfoGERAN-r9)) OF CellInfoGERAN-r9 -typedef dyn_array cell_info_list_geran_r9_l; +// CellInfoListGERAN-r9 ::= SEQUENCE (SIZE (1..32)) OF CellInfoGERAN-r9 +using cell_info_list_geran_r9_l = dyn_array; -// CellInfoListUTRA-FDD-r9 ::= SEQUENCE (SIZE (1..maxCellInfoUTRA-r9)) OF CellInfoUTRA-FDD-r9 -typedef dyn_array cell_info_list_utra_fdd_r9_l; +// CellInfoListUTRA-FDD-r9 ::= SEQUENCE (SIZE (1..16)) OF CellInfoUTRA-FDD-r9 +using cell_info_list_utra_fdd_r9_l = dyn_array; -// CellInfoListUTRA-TDD-r10 ::= SEQUENCE (SIZE (1..maxCellInfoUTRA-r9)) OF CellInfoUTRA-TDD-r10 -typedef dyn_array cell_info_list_utra_tdd_r10_l; +// CellInfoListUTRA-TDD-r10 ::= SEQUENCE (SIZE (1..16)) OF CellInfoUTRA-TDD-r10 +using cell_info_list_utra_tdd_r10_l = dyn_array; -// CellInfoListUTRA-TDD-r9 ::= SEQUENCE (SIZE (1..maxCellInfoUTRA-r9)) OF CellInfoUTRA-TDD-r9 -typedef dyn_array cell_info_list_utra_tdd_r9_l; +// CellInfoListUTRA-TDD-r9 ::= SEQUENCE (SIZE (1..16)) OF CellInfoUTRA-TDD-r9 +using cell_info_list_utra_tdd_r9_l = dyn_array; -// DRB-CountMSB-InfoListExt-r15 ::= SEQUENCE (SIZE (1..maxDRBExt-r15)) OF DRB-CountMSB-Info -typedef dyn_array drb_count_msb_info_list_ext_r15_l; +// DRB-CountMSB-InfoListExt-r15 ::= SEQUENCE (SIZE (1..4)) OF DRB-CountMSB-Info +using drb_count_msb_info_list_ext_r15_l = dyn_array; // HandoverFromEUTRAPreparationRequest-v1020-IEs ::= SEQUENCE struct ho_from_eutra_prep_request_v1020_ies_s { - // member variables bool dual_rx_tx_redirect_ind_r10_present = false; bool redirect_carrier_cdma2000_minus1_xrtt_r10_present = false; bool non_crit_ext_present = false; @@ -33434,7 +32930,6 @@ struct ho_from_eutra_prep_request_v1020_ies_s { // LoggedMeasurementConfiguration-v1250-IEs ::= SEQUENCE struct logged_meas_cfg_v1250_ies_s { - // member variables bool target_mbsfn_area_list_r12_present = false; bool non_crit_ext_present = false; target_mbsfn_area_list_r12_l target_mbsfn_area_list_r12; @@ -33446,15 +32941,14 @@ struct logged_meas_cfg_v1250_ies_s { void to_json(json_writer& j) const; }; -// MeasGapConfigToAddModList-r14 ::= SEQUENCE (SIZE (1..maxServCell-r13)) OF MeasGapConfigPerCC-r14 -typedef dyn_array meas_gap_cfg_to_add_mod_list_r14_l; +// MeasGapConfigToAddModList-r14 ::= SEQUENCE (SIZE (1..32)) OF MeasGapConfigPerCC-r14 +using meas_gap_cfg_to_add_mod_list_r14_l = dyn_array; -// MeasGapConfigToRemoveList-r14 ::= SEQUENCE (SIZE (1..maxServCell-r13)) OF INTEGER -typedef bounded_array meas_gap_cfg_to_rem_list_r14_l; +// MeasGapConfigToRemoveList-r14 ::= SEQUENCE (SIZE (1..32)) OF INTEGER (0..31) +using meas_gap_cfg_to_rem_list_r14_l = bounded_array; // MeasIdToAddMod ::= SEQUENCE struct meas_id_to_add_mod_s { - // member variables uint8_t meas_id = 1; uint8_t meas_obj_id = 1; uint8_t report_cfg_id = 1; @@ -33467,7 +32961,6 @@ struct meas_id_to_add_mod_s { // MeasIdToAddMod-v1310 ::= SEQUENCE struct meas_id_to_add_mod_v1310_s { - // member variables bool meas_obj_id_v1310_present = false; uint8_t meas_obj_id_v1310 = 33; @@ -33479,7 +32972,6 @@ struct meas_id_to_add_mod_v1310_s { // MeasIdToAddModExt-r12 ::= SEQUENCE struct meas_id_to_add_mod_ext_r12_s { - // member variables uint8_t meas_id_v1250 = 33; uint8_t meas_obj_id_r12 = 1; uint8_t report_cfg_id_r12 = 1; @@ -33615,14 +33107,12 @@ struct meas_obj_to_add_mod_s { private: types type_; - choice_buffer_t + choice_buffer_t c; void destroy_(); @@ -33640,7 +33130,6 @@ struct meas_obj_to_add_mod_s { // MeasObjectToAddMod-v9e0 ::= SEQUENCE struct meas_obj_to_add_mod_v9e0_s { - // member variables bool meas_obj_eutra_v9e0_present = false; meas_obj_eutra_v9e0_s meas_obj_eutra_v9e0; @@ -33775,14 +33264,12 @@ struct meas_obj_to_add_mod_ext_r13_s { private: types type_; - choice_buffer_t + choice_buffer_t c; void destroy_(); @@ -33800,7 +33287,6 @@ struct meas_obj_to_add_mod_ext_r13_s { // MobilityFromEUTRACommand-v1530-IEs ::= SEQUENCE struct mob_from_eutra_cmd_v1530_ies_s { - // member variables bool smtc_r15_present = false; bool non_crit_ext_present = false; mtc_ssb_nr_r15_s smtc_r15; @@ -34088,7 +33574,7 @@ struct other_cfg_r9_s { }; // PLMN-IdentityList3-r11 ::= SEQUENCE (SIZE (1..16)) OF PLMN-Identity -typedef dyn_array plmn_id_list3_r11_l; +using plmn_id_list3_r11_l = dyn_array; // PRACH-Config-v1310 ::= SEQUENCE struct prach_cfg_v1310_s { @@ -34160,8 +33646,8 @@ struct prach_cfg_v1310_s { } private: - types type_; - choice_buffer_t c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -34204,7 +33690,6 @@ struct quant_cfg_cdma2000_s { // QuantityConfigEUTRA ::= SEQUENCE struct quant_cfg_eutra_s { - // member variables bool filt_coef_rsrp_present = false; bool filt_coef_rsrq_present = false; filt_coef_e filt_coef_rsrp; @@ -34218,7 +33703,6 @@ struct quant_cfg_eutra_s { // QuantityConfigEUTRA-v1250 ::= SEQUENCE struct quant_cfg_eutra_v1250_s { - // member variables bool filt_coef_csi_rsrp_r12_present = false; filt_coef_e filt_coef_csi_rsrp_r12; @@ -34230,7 +33714,6 @@ struct quant_cfg_eutra_v1250_s { // QuantityConfigEUTRA-v1310 ::= SEQUENCE struct quant_cfg_eutra_v1310_s { - // member variables bool filt_coef_rs_sinr_r13_present = false; filt_coef_e filt_coef_rs_sinr_r13; @@ -34242,7 +33725,6 @@ struct quant_cfg_eutra_v1310_s { // QuantityConfigGERAN ::= SEQUENCE struct quant_cfg_geran_s { - // member variables bool filt_coef_present = false; filt_coef_e filt_coef; @@ -34252,8 +33734,8 @@ struct quant_cfg_geran_s { void to_json(json_writer& j) const; }; -// QuantityConfigNRList-r15 ::= SEQUENCE (SIZE (1..maxQuantSetsNR-r15)) OF QuantityConfigNR-r15 -typedef dyn_array quant_cfg_nr_list_r15_l; +// QuantityConfigNRList-r15 ::= SEQUENCE (SIZE (1..2)) OF QuantityConfigNR-r15 +using quant_cfg_nr_list_r15_l = dyn_array; // QuantityConfigUTRA ::= SEQUENCE struct quant_cfg_utra_s { @@ -34279,7 +33761,6 @@ struct quant_cfg_utra_s { // QuantityConfigUTRA-v1020 ::= SEQUENCE struct quant_cfg_utra_v1020_s { - // member variables bool filt_coef2_fdd_r10_present = false; filt_coef_e filt_coef2_fdd_r10; @@ -34291,7 +33772,6 @@ struct quant_cfg_utra_v1020_s { // QuantityConfigWLAN-r13 ::= SEQUENCE struct quant_cfg_wlan_r13_s { - // member variables bool filt_coef_r13_present = false; filt_coef_e filt_coef_r13; @@ -34303,12 +33783,11 @@ struct quant_cfg_wlan_r13_s { // RRCConnectionReconfiguration-v1020-IEs ::= SEQUENCE struct rrc_conn_recfg_v1020_ies_s { - // member variables - bool s_cell_to_release_list_r10_present = false; - bool s_cell_to_add_mod_list_r10_present = false; - bool non_crit_ext_present = false; - scell_to_release_list_r10_l s_cell_to_release_list_r10; - scell_to_add_mod_list_r10_l s_cell_to_add_mod_list_r10; + bool scell_to_release_list_r10_present = false; + bool scell_to_add_mod_list_r10_present = false; + bool non_crit_ext_present = false; + scell_to_release_list_r10_l scell_to_release_list_r10; + scell_to_add_mod_list_r10_l scell_to_add_mod_list_r10; rrc_conn_recfg_v1130_ies_s non_crit_ext; // sequence methods @@ -34319,7 +33798,6 @@ struct rrc_conn_recfg_v1020_ies_s { // RRCConnectionReconfiguration-v10i0-IEs ::= SEQUENCE struct rrc_conn_recfg_v10i0_ies_s { - // member variables bool ant_info_ded_pcell_v10i0_present = false; bool non_crit_ext_present = false; ant_info_ded_v10i0_s ant_info_ded_pcell_v10i0; @@ -34333,7 +33811,6 @@ struct rrc_conn_recfg_v10i0_ies_s { // RRCConnectionRelease-v1020-IEs ::= SEQUENCE struct rrc_conn_release_v1020_ies_s { - // member variables bool extended_wait_time_r10_present = false; bool non_crit_ext_present = false; uint16_t extended_wait_time_r10 = 1; @@ -34347,7 +33824,6 @@ struct rrc_conn_release_v1020_ies_s { // RRCConnectionResume-v1530-IEs ::= SEQUENCE struct rrc_conn_resume_v1530_ies_s { - // member variables bool full_cfg_r15_present = false; bool non_crit_ext_present = false; @@ -34359,7 +33835,6 @@ struct rrc_conn_resume_v1530_ies_s { // RedirectedCarrierInfo-v9e0 ::= SEQUENCE struct redirected_carrier_info_v9e0_s { - // member variables uint32_t eutra_v9e0 = 65536; // sequence methods @@ -34421,8 +33896,8 @@ struct report_cfg_to_add_mod_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -34439,7 +33914,6 @@ struct report_cfg_to_add_mod_s { // UECapabilityEnquiry-v1310-IEs ::= SEQUENCE struct ue_cap_enquiry_v1310_ies_s { - // member variables bool request_reduced_format_r13_present = false; bool request_skip_fallback_comb_r13_present = false; bool requested_max_ccs_dl_r13_present = false; @@ -34458,7 +33932,6 @@ struct ue_cap_enquiry_v1310_ies_s { // UEInformationRequest-v1130-IEs ::= SEQUENCE struct ue_info_request_v1130_ies_s { - // member variables bool conn_est_fail_report_req_r11_present = false; bool non_crit_ext_present = false; ue_info_request_v1250_ies_s non_crit_ext; @@ -34537,10 +34010,9 @@ struct carrier_bw_eutra_s { // CarrierFreqEUTRA ::= SEQUENCE struct carrier_freq_eutra_s { - // member variables bool ul_carrier_freq_present = false; - uint16_t dl_carrier_freq = 0; - uint16_t ul_carrier_freq = 0; + uint32_t dl_carrier_freq = 0; + uint32_t ul_carrier_freq = 0; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -34550,7 +34022,6 @@ struct carrier_freq_eutra_s { // CarrierFreqEUTRA-v9e0 ::= SEQUENCE struct carrier_freq_eutra_v9e0_s { - // member variables bool ul_carrier_freq_v9e0_present = false; uint32_t dl_carrier_freq_v9e0 = 0; uint32_t ul_carrier_freq_v9e0 = 0; @@ -34564,7 +34035,7 @@ struct carrier_freq_eutra_v9e0_s { // CarrierInfoNR-r15 ::= SEQUENCE struct carrier_info_nr_r15_s { struct subcarrier_spacing_ssb_r15_opts { - enum options { k_hz15, k_hz30, k_hz120, k_hz240, nulltype } value; + enum options { khz15, khz30, khz120, khz240, nulltype } value; typedef uint8_t number_type; std::string to_string() const; @@ -34585,11 +34056,10 @@ struct carrier_info_nr_r15_s { }; // CellGlobalIdList-r10 ::= SEQUENCE (SIZE (1..32)) OF CellGlobalIdEUTRA -typedef dyn_array cell_global_id_list_r10_l; +using cell_global_id_list_r10_l = dyn_array; // CounterCheck-v1530-IEs ::= SEQUENCE struct counter_check_v1530_ies_s { - // member variables bool drb_count_msb_info_list_ext_r15_present = false; bool non_crit_ext_present = false; drb_count_msb_info_list_ext_r15_l drb_count_msb_info_list_ext_r15; @@ -34602,7 +34072,6 @@ struct counter_check_v1530_ies_s { // HandoverFromEUTRAPreparationRequest-v920-IEs ::= SEQUENCE struct ho_from_eutra_prep_request_v920_ies_s { - // member variables bool concurr_prep_cdma2000_hrpd_r9_present = false; bool non_crit_ext_present = false; bool concurr_prep_cdma2000_hrpd_r9 = false; @@ -34616,7 +34085,6 @@ struct ho_from_eutra_prep_request_v920_ies_s { // LoggedMeasurementConfiguration-v1130-IEs ::= SEQUENCE struct logged_meas_cfg_v1130_ies_s { - // member variables bool plmn_id_list_r11_present = false; bool area_cfg_v1130_present = false; bool non_crit_ext_present = false; @@ -34995,8 +34463,8 @@ struct meas_gap_cfg_dense_prs_r15_c { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -35038,7 +34506,6 @@ private: // MeasGapConfigPerCC-List-r14 ::= CHOICE struct meas_gap_cfg_per_cc_list_r14_c { struct setup_s_ { - // member variables bool meas_gap_cfg_to_rem_list_r14_present = false; bool meas_gap_cfg_to_add_mod_list_r14_present = false; meas_gap_cfg_to_rem_list_r14_l meas_gap_cfg_to_rem_list_r14; @@ -35122,38 +34589,38 @@ private: setup_s_ c; }; -// MeasIdToAddModList ::= SEQUENCE (SIZE (1..maxMeasId)) OF MeasIdToAddMod -typedef dyn_array meas_id_to_add_mod_list_l; +// MeasIdToAddModList ::= SEQUENCE (SIZE (1..32)) OF MeasIdToAddMod +using meas_id_to_add_mod_list_l = dyn_array; -// MeasIdToAddModList-v1310 ::= SEQUENCE (SIZE (1..maxMeasId)) OF MeasIdToAddMod-v1310 -typedef dyn_array meas_id_to_add_mod_list_v1310_l; +// MeasIdToAddModList-v1310 ::= SEQUENCE (SIZE (1..32)) OF MeasIdToAddMod-v1310 +using meas_id_to_add_mod_list_v1310_l = dyn_array; -// MeasIdToAddModListExt-r12 ::= SEQUENCE (SIZE (1..maxMeasId)) OF MeasIdToAddModExt-r12 -typedef dyn_array meas_id_to_add_mod_list_ext_r12_l; +// MeasIdToAddModListExt-r12 ::= SEQUENCE (SIZE (1..32)) OF MeasIdToAddModExt-r12 +using meas_id_to_add_mod_list_ext_r12_l = dyn_array; -// MeasIdToAddModListExt-v1310 ::= SEQUENCE (SIZE (1..maxMeasId)) OF MeasIdToAddMod-v1310 -typedef dyn_array meas_id_to_add_mod_list_ext_v1310_l; +// MeasIdToAddModListExt-v1310 ::= SEQUENCE (SIZE (1..32)) OF MeasIdToAddMod-v1310 +using meas_id_to_add_mod_list_ext_v1310_l = dyn_array; -// MeasIdToRemoveList ::= SEQUENCE (SIZE (1..maxMeasId)) OF INTEGER -typedef bounded_array meas_id_to_rem_list_l; +// MeasIdToRemoveList ::= SEQUENCE (SIZE (1..32)) OF INTEGER (1..32) +using meas_id_to_rem_list_l = bounded_array; -// MeasIdToRemoveListExt-r12 ::= SEQUENCE (SIZE (1..maxMeasId)) OF INTEGER -typedef bounded_array meas_id_to_rem_list_ext_r12_l; +// MeasIdToRemoveListExt-r12 ::= SEQUENCE (SIZE (1..32)) OF INTEGER (33..64) +using meas_id_to_rem_list_ext_r12_l = bounded_array; -// MeasObjectToAddModList ::= SEQUENCE (SIZE (1..maxObjectId)) OF MeasObjectToAddMod -typedef dyn_array meas_obj_to_add_mod_list_l; +// MeasObjectToAddModList ::= SEQUENCE (SIZE (1..32)) OF MeasObjectToAddMod +using meas_obj_to_add_mod_list_l = dyn_array; -// MeasObjectToAddModList-v9e0 ::= SEQUENCE (SIZE (1..maxObjectId)) OF MeasObjectToAddMod-v9e0 -typedef dyn_array meas_obj_to_add_mod_list_v9e0_l; +// MeasObjectToAddModList-v9e0 ::= SEQUENCE (SIZE (1..32)) OF MeasObjectToAddMod-v9e0 +using meas_obj_to_add_mod_list_v9e0_l = dyn_array; -// MeasObjectToAddModListExt-r13 ::= SEQUENCE (SIZE (1..maxObjectId)) OF MeasObjectToAddModExt-r13 -typedef dyn_array meas_obj_to_add_mod_list_ext_r13_l; +// MeasObjectToAddModListExt-r13 ::= SEQUENCE (SIZE (1..32)) OF MeasObjectToAddModExt-r13 +using meas_obj_to_add_mod_list_ext_r13_l = dyn_array; -// MeasObjectToRemoveList ::= SEQUENCE (SIZE (1..maxObjectId)) OF INTEGER -typedef bounded_array meas_obj_to_rem_list_l; +// MeasObjectToRemoveList ::= SEQUENCE (SIZE (1..32)) OF INTEGER (1..32) +using meas_obj_to_rem_list_l = bounded_array; -// MeasObjectToRemoveListExt-r13 ::= SEQUENCE (SIZE (1..maxObjectId)) OF INTEGER -typedef bounded_array meas_obj_to_rem_list_ext_r13_l; +// MeasObjectToRemoveListExt-r13 ::= SEQUENCE (SIZE (1..32)) OF INTEGER (33..64) +using meas_obj_to_rem_list_ext_r13_l = bounded_array; // MeasScaleFactor-r12 ::= ENUMERATED struct meas_scale_factor_r12_opts { @@ -35167,7 +34634,6 @@ typedef enumerated meas_scale_factor_r12_e; // MobilityControlInfoV2X-r14 ::= SEQUENCE struct mob_ctrl_info_v2x_r14_s { - // member variables bool v2x_comm_tx_pool_exceptional_r14_present = false; bool v2x_comm_rx_pool_r14_present = false; bool v2x_comm_sync_cfg_r14_present = false; @@ -35185,7 +34651,6 @@ struct mob_ctrl_info_v2x_r14_s { // MobilityFromEUTRACommand-v8d0-IEs ::= SEQUENCE struct mob_from_eutra_cmd_v8d0_ies_s { - // member variables bool band_ind_present = false; bool non_crit_ext_present = false; band_ind_geran_e band_ind; @@ -35198,7 +34663,6 @@ struct mob_from_eutra_cmd_v8d0_ies_s { // MobilityFromEUTRACommand-v960-IEs ::= SEQUENCE struct mob_from_eutra_cmd_v960_ies_s { - // member variables bool band_ind_present = false; bool non_crit_ext_present = false; band_ind_geran_e band_ind; @@ -35212,7 +34676,6 @@ struct mob_from_eutra_cmd_v960_ies_s { // QuantityConfig ::= SEQUENCE struct quant_cfg_s { - // member variables bool ext = false; bool quant_cfg_eutra_present = false; bool quant_cfg_utra_present = false; @@ -35251,7 +34714,6 @@ typedef enumerated rat_type_e; // RRCConnectionReconfiguration-v8m0-IEs ::= SEQUENCE struct rrc_conn_recfg_v8m0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -35265,7 +34727,6 @@ struct rrc_conn_recfg_v8m0_ies_s { // RRCConnectionReconfiguration-v920-IEs ::= SEQUENCE struct rrc_conn_recfg_v920_ies_s { - // member variables bool other_cfg_r9_present = false; bool full_cfg_r9_present = false; bool non_crit_ext_present = false; @@ -35362,10 +34823,10 @@ struct rrc_conn_release_v920_ies_s { private: types type_; - choice_buffer_t + choice_buffer_t c; void destroy_(); @@ -35385,7 +34846,6 @@ struct rrc_conn_release_v920_ies_s { // RRCConnectionRelease-v9e0-IEs ::= SEQUENCE struct rrc_conn_release_v9e0_ies_s { - // member variables bool redirected_carrier_info_v9e0_present = false; bool idle_mode_mob_ctrl_info_v9e0_present = false; bool non_crit_ext_present = false; @@ -35400,12 +34860,11 @@ struct rrc_conn_release_v9e0_ies_s { // RRCConnectionResume-v1510-IEs ::= SEQUENCE struct rrc_conn_resume_v1510_ies_s { - // member variables bool sk_counter_r15_present = false; bool nr_radio_bearer_cfg1_r15_present = false; bool nr_radio_bearer_cfg2_r15_present = false; bool non_crit_ext_present = false; - uint16_t sk_counter_r15 = 0; + uint32_t sk_counter_r15 = 0; dyn_octstring nr_radio_bearer_cfg1_r15; dyn_octstring nr_radio_bearer_cfg2_r15; rrc_conn_resume_v1530_ies_s non_crit_ext; @@ -35418,7 +34877,6 @@ struct rrc_conn_resume_v1510_ies_s { // RadioResourceConfigCommon ::= SEQUENCE struct rr_cfg_common_s { - // member variables bool ext = false; bool rach_cfg_common_present = false; bool pdsch_cfg_common_present = false; @@ -35472,11 +34930,11 @@ struct rr_cfg_common_s { void to_json(json_writer& j) const; }; -// ReportConfigToAddModList ::= SEQUENCE (SIZE (1..maxReportConfigId)) OF ReportConfigToAddMod -typedef dyn_array report_cfg_to_add_mod_list_l; +// ReportConfigToAddModList ::= SEQUENCE (SIZE (1..32)) OF ReportConfigToAddMod +using report_cfg_to_add_mod_list_l = dyn_array; -// ReportConfigToRemoveList ::= SEQUENCE (SIZE (1..maxReportConfigId)) OF INTEGER -typedef bounded_array report_cfg_to_rem_list_l; +// ReportConfigToRemoveList ::= SEQUENCE (SIZE (1..32)) OF INTEGER (1..32) +using report_cfg_to_rem_list_l = bounded_array; // SI-OrPSI-GERAN ::= CHOICE struct si_or_psi_geran_c { @@ -35530,18 +34988,18 @@ struct si_or_psi_geran_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; -// TrackingAreaCodeList-r10 ::= SEQUENCE (SIZE (1..8)) OF BIT STRING -typedef bounded_array, 8> tac_list_r10_l; +// TrackingAreaCodeList-r10 ::= SEQUENCE (SIZE (1..8)) OF BIT STRING (SIZE (16)) +using tac_list_r10_l = bounded_array, 8>; // UECapabilityEnquiry-v1180-IEs ::= SEQUENCE struct ue_cap_enquiry_v1180_ies_s { - typedef bounded_array requested_freq_bands_r11_l_; + using requested_freq_bands_r11_l_ = bounded_array; // member variables bool requested_freq_bands_r11_present = false; @@ -35557,7 +35015,6 @@ struct ue_cap_enquiry_v1180_ies_s { // UEInformationRequest-v1020-IEs ::= SEQUENCE struct ue_info_request_v1020_ies_s { - // member variables bool log_meas_report_req_r10_present = false; bool non_crit_ext_present = false; ue_info_request_v1130_ies_s non_crit_ext; @@ -35620,15 +35077,14 @@ struct area_cfg_r10_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; // CSFBParametersResponseCDMA2000-v8a0-IEs ::= SEQUENCE struct csfb_params_resp_cdma2000_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -35651,7 +35107,6 @@ struct cell_change_order_s { typedef enumerated t304_e_; struct target_rat_type_c_ { struct geran_s_ { - // member variables bool network_ctrl_order_present = false; bool sys_info_present = false; pci_geran_s pci; @@ -35691,7 +35146,6 @@ struct cell_change_order_s { // CounterCheck-v8a0-IEs ::= SEQUENCE struct counter_check_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -35705,7 +35159,6 @@ struct counter_check_v8a0_ies_s { // DLInformationTransfer-v8a0-IEs ::= SEQUENCE struct dl_info_transfer_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -35716,8 +35169,8 @@ struct dl_info_transfer_v8a0_ies_s { void to_json(json_writer& j) const; }; -// DRB-CountMSB-InfoList ::= SEQUENCE (SIZE (1..maxDRB)) OF DRB-CountMSB-Info -typedef dyn_array drb_count_msb_info_list_l; +// DRB-CountMSB-InfoList ::= SEQUENCE (SIZE (1..11)) OF DRB-CountMSB-Info +using drb_count_msb_info_list_l = dyn_array; // E-CSFB-r9 ::= SEQUENCE struct e_csfb_r9_s { @@ -35779,7 +35232,6 @@ struct ho_s { // HandoverFromEUTRAPreparationRequest-v890-IEs ::= SEQUENCE struct ho_from_eutra_prep_request_v890_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -35793,7 +35245,6 @@ struct ho_from_eutra_prep_request_v890_ies_s { // LoggedMeasurementConfiguration-v1080-IEs ::= SEQUENCE struct logged_meas_cfg_v1080_ies_s { - // member variables bool late_non_crit_ext_r10_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext_r10; @@ -35829,7 +35280,6 @@ typedef enumerated logging_interv_r10_e; struct meas_cfg_s { struct speed_state_pars_c_ { struct setup_s_ { - // member variables mob_state_params_s mob_state_params; speed_state_scale_factors_s time_to_trigger_sf; }; @@ -36042,7 +35492,6 @@ struct mob_ctrl_info_s { // MobilityFromEUTRACommand-v8a0-IEs ::= SEQUENCE struct mob_from_eutra_cmd_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -36056,7 +35505,6 @@ struct mob_from_eutra_cmd_v8a0_ies_s { // MobilityFromEUTRACommand-v930-IEs ::= SEQUENCE struct mob_from_eutra_cmd_v930_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -36121,8 +35569,8 @@ struct rn_sf_cfg_r10_s { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -36247,8 +35695,8 @@ struct rn_sf_cfg_r10_s { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -36365,8 +35813,8 @@ struct rn_sf_cfg_r10_s { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -36423,8 +35871,8 @@ struct rn_sf_cfg_r10_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -36470,21 +35918,20 @@ struct rn_sf_cfg_r10_s { } private: - types type_; - choice_buffer_t c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; struct pucch_cfg_r10_c_ { struct tdd_c_ { struct ch_sel_mux_bundling_s_ { - typedef bounded_array n1_pucch_an_list_r10_l_; + using n1_pucch_an_list_r10_l_ = bounded_array; // member variables n1_pucch_an_list_r10_l_ n1_pucch_an_list_r10; }; struct fallback_for_format3_s_ { - // member variables bool n1_pucch_an_p1_r10_present = false; uint16_t n1_pucch_an_p0_r10 = 0; uint16_t n1_pucch_an_p1_r10 = 0; @@ -36541,13 +35988,12 @@ struct rn_sf_cfg_r10_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; struct fdd_s_ { - // member variables bool n1_pucch_an_p1_r10_present = false; uint16_t n1_pucch_an_p0_r10 = 0; uint16_t n1_pucch_an_p1_r10 = 0; @@ -36602,8 +36048,8 @@ struct rn_sf_cfg_r10_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -36634,7 +36080,6 @@ struct rn_sf_cfg_r10_s { // RN-SystemInfo-r10 ::= SEQUENCE struct rn_sys_info_r10_s { - // member variables bool ext = false; bool sib_type1_r10_present = false; bool sib_type2_r10_present = false; @@ -36650,7 +36095,6 @@ struct rn_sys_info_r10_s { // RRCConnectionReconfiguration-v890-IEs ::= SEQUENCE struct rrc_conn_recfg_v890_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -36664,7 +36108,6 @@ struct rrc_conn_recfg_v890_ies_s { // RRCConnectionRelease-v890-IEs ::= SEQUENCE struct rrc_conn_release_v890_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -36678,7 +36121,6 @@ struct rrc_conn_release_v890_ies_s { // RRCConnectionResume-v1430-IEs ::= SEQUENCE struct rrc_conn_resume_v1430_ies_s { - // member variables bool other_cfg_r14_present = false; bool rrc_conn_resume_v1510_ies_present = false; other_cfg_r9_s other_cfg_r14; @@ -36721,10 +36163,10 @@ struct redirected_carrier_info_c { SRSASN_CODE unpack(bit_ref& bref); void to_json(json_writer& j) const; // getters - uint16_t& eutra() + uint32_t& eutra() { assert_choice_type("eutra", type_.to_string(), "RedirectedCarrierInfo"); - return c.get(); + return c.get(); } carrier_freqs_geran_s& geran() { @@ -36761,10 +36203,10 @@ struct redirected_carrier_info_c { assert_choice_type("nr-r15", type_.to_string(), "RedirectedCarrierInfo"); return c.get(); } - const uint16_t& eutra() const + const uint32_t& eutra() const { assert_choice_type("eutra", type_.to_string(), "RedirectedCarrierInfo"); - return c.get(); + return c.get(); } const carrier_freqs_geran_s& geran() const { @@ -36801,10 +36243,10 @@ struct redirected_carrier_info_c { assert_choice_type("nr-r15", type_.to_string(), "RedirectedCarrierInfo"); return c.get(); } - uint16_t& set_eutra() + uint32_t& set_eutra() { set(types::eutra); - return c.get(); + return c.get(); } carrier_freqs_geran_s& set_geran() { @@ -36844,10 +36286,10 @@ struct redirected_carrier_info_c { private: types type_; - choice_buffer_t + choice_buffer_t c; void destroy_(); @@ -36865,14 +36307,12 @@ typedef enumerated release_cause_e; struct security_cfg_ho_s { struct ho_type_c_ { struct intra_lte_s_ { - // member variables bool security_algorithm_cfg_present = false; security_algorithm_cfg_s security_algorithm_cfg; bool key_change_ind = false; uint8_t next_hop_chaining_count = 0; }; struct inter_rat_s_ { - // member variables security_algorithm_cfg_s security_algorithm_cfg; fixed_octstring<6> nas_security_param_to_eutra; }; @@ -36926,8 +36366,8 @@ struct security_cfg_ho_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -36945,7 +36385,6 @@ struct security_cfg_ho_s { // SecurityConfigSMC ::= SEQUENCE struct security_cfg_smc_s { - // member variables bool ext = false; security_algorithm_cfg_s security_algorithm_cfg; // ... @@ -36958,7 +36397,6 @@ struct security_cfg_smc_s { // SecurityModeCommand-v8a0-IEs ::= SEQUENCE struct security_mode_cmd_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -36971,7 +36409,6 @@ struct security_mode_cmd_v8a0_ies_s { // TraceReference-r10 ::= SEQUENCE struct trace_ref_r10_s { - // member variables plmn_id_s plmn_id_r10; fixed_octstring<3> trace_id_r10; @@ -36981,12 +36418,11 @@ struct trace_ref_r10_s { void to_json(json_writer& j) const; }; -// UE-CapabilityRequest ::= SEQUENCE (SIZE (1..maxRAT-Capabilities)) OF RAT-Type -typedef bounded_array ue_cap_request_l; +// UE-CapabilityRequest ::= SEQUENCE (SIZE (1..8)) OF RAT-Type +using ue_cap_request_l = bounded_array; // UECapabilityEnquiry-v8a0-IEs ::= SEQUENCE struct ue_cap_enquiry_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -37000,7 +36436,6 @@ struct ue_cap_enquiry_v8a0_ies_s { // UEInformationRequest-v930-IEs ::= SEQUENCE struct ue_info_request_v930_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -37014,7 +36449,6 @@ struct ue_info_request_v930_ies_s { // CSFBParametersResponseCDMA2000-r8-IEs ::= SEQUENCE struct csfb_params_resp_cdma2000_r8_ies_s { - // member variables bool non_crit_ext_present = false; fixed_bitstring<32> rand; dyn_octstring mob_params; @@ -37028,7 +36462,6 @@ struct csfb_params_resp_cdma2000_r8_ies_s { // CounterCheck-r8-IEs ::= SEQUENCE struct counter_check_r8_ies_s { - // member variables bool non_crit_ext_present = false; drb_count_msb_info_list_l drb_count_msb_info_list; counter_check_v8a0_ies_s non_crit_ext; @@ -37107,8 +36540,8 @@ struct dl_info_transfer_r15_ies_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -37195,8 +36628,8 @@ struct dl_info_transfer_r8_ies_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -37214,7 +36647,6 @@ struct dl_info_transfer_r8_ies_s { // HandoverFromEUTRAPreparationRequest-r8-IEs ::= SEQUENCE struct ho_from_eutra_prep_request_r8_ies_s { - // member variables bool rand_present = false; bool mob_params_present = false; bool non_crit_ext_present = false; @@ -37231,7 +36663,6 @@ struct ho_from_eutra_prep_request_r8_ies_s { // LoggedMeasurementConfiguration-r10-IEs ::= SEQUENCE struct logged_meas_cfg_r10_ies_s { - // member variables bool area_cfg_r10_present = false; bool non_crit_ext_present = false; trace_ref_r10_s trace_ref_r10; @@ -37302,8 +36733,8 @@ struct mob_from_eutra_cmd_r8_ies_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -37388,8 +36819,8 @@ struct mob_from_eutra_cmd_r9_ies_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -37408,7 +36839,6 @@ struct mob_from_eutra_cmd_r9_ies_s { // RNReconfiguration-r10-IEs ::= SEQUENCE struct rn_recfg_r10_ies_s { - // member variables bool rn_sys_info_r10_present = false; bool rn_sf_cfg_r10_present = false; bool late_non_crit_ext_present = false; @@ -37425,7 +36855,7 @@ struct rn_recfg_r10_ies_s { // RRCConnectionReconfiguration-r8-IEs ::= SEQUENCE struct rrc_conn_recfg_r8_ies_s { - typedef bounded_array ded_info_nas_list_l_; + using ded_info_nas_list_l_ = bounded_array; // member variables bool meas_cfg_present = false; @@ -37449,7 +36879,6 @@ struct rrc_conn_recfg_r8_ies_s { // RRCConnectionRelease-r8-IEs ::= SEQUENCE struct rrc_conn_release_r8_ies_s { - // member variables bool redirected_carrier_info_present = false; bool idle_mode_mob_ctrl_info_present = false; bool non_crit_ext_present = false; @@ -37466,7 +36895,6 @@ struct rrc_conn_release_r8_ies_s { // RRCConnectionResume-r13-IEs ::= SEQUENCE struct rrc_conn_resume_r13_ies_s { - // member variables bool rr_cfg_ded_r13_present = false; bool meas_cfg_r13_present = false; bool ant_info_ded_pcell_r13_present = false; @@ -37488,7 +36916,6 @@ struct rrc_conn_resume_r13_ies_s { // SecurityModeCommand-r8-IEs ::= SEQUENCE struct security_mode_cmd_r8_ies_s { - // member variables bool non_crit_ext_present = false; security_cfg_smc_s security_cfg_smc; security_mode_cmd_v8a0_ies_s non_crit_ext; @@ -37501,7 +36928,6 @@ struct security_mode_cmd_r8_ies_s { // UECapabilityEnquiry-r8-IEs ::= SEQUENCE struct ue_cap_enquiry_r8_ies_s { - // member variables bool non_crit_ext_present = false; ue_cap_request_l ue_cap_request; ue_cap_enquiry_v8a0_ies_s non_crit_ext; @@ -37514,7 +36940,6 @@ struct ue_cap_enquiry_r8_ies_s { // UEInformationRequest-r9-IEs ::= SEQUENCE struct ue_info_request_r9_ies_s { - // member variables bool non_crit_ext_present = false; bool rach_report_req_r9 = false; bool rlf_report_req_r9 = false; @@ -37566,8 +36991,8 @@ struct csfb_params_resp_cdma2000_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -37651,8 +37076,8 @@ struct counter_check_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -37721,8 +37146,8 @@ struct dl_info_transfer_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -37756,8 +37181,8 @@ struct dl_info_transfer_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -37841,8 +37266,8 @@ struct ho_from_eutra_prep_request_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -37926,8 +37351,8 @@ struct logged_meas_cfg_r10_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -37995,8 +37420,8 @@ struct mob_from_eutra_cmd_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -38030,8 +37455,8 @@ struct mob_from_eutra_cmd_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -38115,8 +37540,8 @@ struct rn_recfg_r10_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -38200,8 +37625,8 @@ struct rrc_conn_recfg_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -38285,8 +37710,8 @@ struct rrc_conn_release_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -38370,8 +37795,8 @@ struct rrc_conn_resume_r13_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -38455,8 +37880,8 @@ struct security_mode_cmd_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -38540,8 +37965,8 @@ struct ue_cap_enquiry_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -38625,8 +38050,8 @@ struct ue_info_request_r9_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -38880,22 +38305,19 @@ struct dl_dcch_msg_type_c { private: types type_; - choice_buffer_t + choice_buffer_t c; void destroy_(); @@ -38937,15 +38359,14 @@ struct dl_dcch_msg_type_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; // DL-DCCH-Message ::= SEQUENCE struct dl_dcch_msg_s { - // member variables dl_dcch_msg_type_c msg; // sequence methods @@ -39007,8 +38428,8 @@ struct tmgi_r9_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -39025,7 +38446,6 @@ struct tmgi_r9_s { // MBMS-SessionInfo-r9 ::= SEQUENCE struct mbms_session_info_r9_s { - // member variables bool ext = false; bool session_id_r9_present = false; tmgi_r9_s tmgi_r9; @@ -39039,8 +38459,8 @@ struct mbms_session_info_r9_s { void to_json(json_writer& j) const; }; -// MBMS-SessionInfoList-r9 ::= SEQUENCE (SIZE (0..maxSessionPerPMCH)) OF MBMS-SessionInfo-r9 -typedef dyn_array mbms_session_info_list_r9_l; +// MBMS-SessionInfoList-r9 ::= SEQUENCE (SIZE (0..29)) OF MBMS-SessionInfo-r9 +using mbms_session_info_list_r9_l = dyn_array; // PMCH-Config-r12 ::= SEQUENCE struct pmch_cfg_r12_s { @@ -39095,8 +38515,8 @@ struct pmch_cfg_r12_s { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -39133,12 +38553,11 @@ struct pmch_cfg_r12_s { void to_json(json_writer& j) const; }; -// CommonSF-AllocPatternList-r14 ::= SEQUENCE (SIZE (1..maxMBSFN-Allocations)) OF MBSFN-SubframeConfig-v1430 -typedef dyn_array common_sf_alloc_pattern_list_r14_l; +// CommonSF-AllocPatternList-r14 ::= SEQUENCE (SIZE (1..8)) OF MBSFN-SubframeConfig-v1430 +using common_sf_alloc_pattern_list_r14_l = dyn_array; // PMCH-InfoExt-r12 ::= SEQUENCE struct pmch_info_ext_r12_s { - // member variables bool ext = false; pmch_cfg_r12_s pmch_cfg_r12; mbms_session_info_list_r9_l mbms_session_info_list_r12; @@ -39152,7 +38571,6 @@ struct pmch_info_ext_r12_s { // MBSFNAreaConfiguration-v1430-IEs ::= SEQUENCE struct mbsfn_area_cfg_v1430_ies_s { - // member variables bool non_crit_ext_present = false; common_sf_alloc_pattern_list_r14_l common_sf_alloc_r14; @@ -39186,12 +38604,11 @@ struct pmch_cfg_r9_s { void to_json(json_writer& j) const; }; -// PMCH-InfoListExt-r12 ::= SEQUENCE (SIZE (0..maxPMCH-PerMBSFN)) OF PMCH-InfoExt-r12 -typedef dyn_array pmch_info_list_ext_r12_l; +// PMCH-InfoListExt-r12 ::= SEQUENCE (SIZE (0..15)) OF PMCH-InfoExt-r12 +using pmch_info_list_ext_r12_l = dyn_array; // CountingRequestInfo-r10 ::= SEQUENCE struct count_request_info_r10_s { - // member variables bool ext = false; tmgi_r9_s tmgi_r10; // ... @@ -39204,7 +38621,6 @@ struct count_request_info_r10_s { // MBSFNAreaConfiguration-v1250-IEs ::= SEQUENCE struct mbsfn_area_cfg_v1250_ies_s { - // member variables bool pmch_info_list_ext_r12_present = false; bool non_crit_ext_present = false; pmch_info_list_ext_r12_l pmch_info_list_ext_r12; @@ -39218,7 +38634,6 @@ struct mbsfn_area_cfg_v1250_ies_s { // PMCH-Info-r9 ::= SEQUENCE struct pmch_info_r9_s { - // member variables bool ext = false; pmch_cfg_r9_s pmch_cfg_r9; mbms_session_info_list_r9_l mbms_session_info_list_r9; @@ -39230,15 +38645,14 @@ struct pmch_info_r9_s { void to_json(json_writer& j) const; }; -// CommonSF-AllocPatternList-r9 ::= SEQUENCE (SIZE (1..maxMBSFN-Allocations)) OF MBSFN-SubframeConfig -typedef dyn_array common_sf_alloc_pattern_list_r9_l; +// CommonSF-AllocPatternList-r9 ::= SEQUENCE (SIZE (1..8)) OF MBSFN-SubframeConfig +using common_sf_alloc_pattern_list_r9_l = dyn_array; -// CountingRequestList-r10 ::= SEQUENCE (SIZE (1..maxServiceCount)) OF CountingRequestInfo-r10 -typedef dyn_array count_request_list_r10_l; +// CountingRequestList-r10 ::= SEQUENCE (SIZE (1..16)) OF CountingRequestInfo-r10 +using count_request_list_r10_l = dyn_array; // MBSFNAreaConfiguration-v930-IEs ::= SEQUENCE struct mbsfn_area_cfg_v930_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -39250,12 +38664,11 @@ struct mbsfn_area_cfg_v930_ies_s { void to_json(json_writer& j) const; }; -// PMCH-InfoList-r9 ::= SEQUENCE (SIZE (0..maxPMCH-PerMBSFN)) OF PMCH-Info-r9 -typedef dyn_array pmch_info_list_r9_l; +// PMCH-InfoList-r9 ::= SEQUENCE (SIZE (0..15)) OF PMCH-Info-r9 +using pmch_info_list_r9_l = dyn_array; // MBMSCountingRequest-r10 ::= SEQUENCE struct mbms_count_request_r10_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; count_request_list_r10_l count_request_list_r10; @@ -39371,8 +38784,8 @@ struct mcch_msg_type_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -39428,15 +38841,14 @@ struct mcch_msg_type_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; // MCCH-Message ::= SEQUENCE struct mcch_msg_s { - // member variables mcch_msg_type_c msg; // sequence methods @@ -39447,7 +38859,6 @@ struct mcch_msg_s { // Paging-v1530-IEs ::= SEQUENCE struct paging_v1530_ies_s { - // member variables bool access_type_present = false; bool non_crit_ext_present = false; @@ -39457,12 +38868,11 @@ struct paging_v1530_ies_s { void to_json(json_writer& j) const; }; -// IMSI ::= SEQUENCE (SIZE (6..21)) OF INTEGER -typedef bounded_array imsi_l; +// IMSI ::= SEQUENCE (SIZE (6..21)) OF INTEGER (0..9) +using imsi_l = bounded_array; // Paging-v1310-IEs ::= SEQUENCE struct paging_v1310_ies_s { - // member variables bool redist_ind_r13_present = false; bool sys_info_mod_e_drx_r13_present = false; bool non_crit_ext_present = false; @@ -39476,7 +38886,6 @@ struct paging_v1310_ies_s { // S-TMSI ::= SEQUENCE struct s_tmsi_s { - // member variables fixed_bitstring<8> mmec; fixed_bitstring<32> m_tmsi; @@ -39488,7 +38897,6 @@ struct s_tmsi_s { // Paging-v1130-IEs ::= SEQUENCE struct paging_v1130_ies_s { - // member variables bool eab_param_mod_r11_present = false; bool non_crit_ext_present = false; paging_v1310_ies_s non_crit_ext; @@ -39583,15 +38991,14 @@ struct paging_ue_id_c { } private: - types type_; - choice_buffer_t), sizeof(imsi_l), sizeof(s_tmsi_s), 0)> c; + types type_; + choice_buffer_t, imsi_l, s_tmsi_s> c; void destroy_(); }; // Paging-v920-IEs ::= SEQUENCE struct paging_v920_ies_s { - // member variables bool cmas_ind_r9_present = false; bool non_crit_ext_present = false; paging_v1130_ies_s non_crit_ext; @@ -39625,7 +39032,6 @@ struct paging_record_s { // Paging-v890-IEs ::= SEQUENCE struct paging_v890_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -39637,12 +39043,11 @@ struct paging_v890_ies_s { void to_json(json_writer& j) const; }; -// PagingRecordList ::= SEQUENCE (SIZE (1..maxPageRec)) OF PagingRecord -typedef dyn_array paging_record_list_l; +// PagingRecordList ::= SEQUENCE (SIZE (1..16)) OF PagingRecord +using paging_record_list_l = dyn_array; // Paging ::= SEQUENCE struct paging_s { - // member variables bool paging_record_list_present = false; bool sys_info_mod_present = false; bool etws_ind_present = false; @@ -39715,15 +39120,14 @@ struct pcch_msg_type_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; // PCCH-Message ::= SEQUENCE struct pcch_msg_s { - // member variables pcch_msg_type_c msg; // sequence methods @@ -39734,7 +39138,6 @@ struct pcch_msg_s { // MBMSSessionInfo-r13 ::= SEQUENCE struct mbms_session_info_r13_s { - // member variables bool session_id_r13_present = false; tmgi_r9_s tmgi_r13; fixed_octstring<1> session_id_r13; @@ -39860,10 +39263,10 @@ struct sc_mtch_sched_info_br_r14_s { assert_choice_type("sf160", type_.to_string(), "schedulingPeriodStartOffsetSCPTM-r14"); return c.get(); } - uint8_t& sf256() + uint16_t& sf256() { assert_choice_type("sf256", type_.to_string(), "schedulingPeriodStartOffsetSCPTM-r14"); - return c.get(); + return c.get(); } uint16_t& sf320() { @@ -39940,10 +39343,10 @@ struct sc_mtch_sched_info_br_r14_s { assert_choice_type("sf160", type_.to_string(), "schedulingPeriodStartOffsetSCPTM-r14"); return c.get(); } - const uint8_t& sf256() const + const uint16_t& sf256() const { assert_choice_type("sf256", type_.to_string(), "schedulingPeriodStartOffsetSCPTM-r14"); - return c.get(); + return c.get(); } const uint16_t& sf320() const { @@ -40020,10 +39423,10 @@ struct sc_mtch_sched_info_br_r14_s { set(types::sf160); return c.get(); } - uint8_t& set_sf256() + uint16_t& set_sf256() { set(types::sf256); - return c.get(); + return c.get(); } uint16_t& set_sf320() { @@ -40062,8 +39465,8 @@ struct sc_mtch_sched_info_br_r14_s { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -40214,10 +39617,10 @@ struct sc_mtch_sched_info_r13_s { assert_choice_type("sf160", type_.to_string(), "schedulingPeriodStartOffsetSCPTM-r13"); return c.get(); } - uint8_t& sf256() + uint16_t& sf256() { assert_choice_type("sf256", type_.to_string(), "schedulingPeriodStartOffsetSCPTM-r13"); - return c.get(); + return c.get(); } uint16_t& sf320() { @@ -40294,10 +39697,10 @@ struct sc_mtch_sched_info_r13_s { assert_choice_type("sf160", type_.to_string(), "schedulingPeriodStartOffsetSCPTM-r13"); return c.get(); } - const uint8_t& sf256() const + const uint16_t& sf256() const { assert_choice_type("sf256", type_.to_string(), "schedulingPeriodStartOffsetSCPTM-r13"); - return c.get(); + return c.get(); } const uint16_t& sf320() const { @@ -40374,10 +39777,10 @@ struct sc_mtch_sched_info_r13_s { set(types::sf160); return c.get(); } - uint8_t& set_sf256() + uint16_t& set_sf256() { set(types::sf256); - return c.get(); + return c.get(); } uint16_t& set_sf320() { @@ -40416,8 +39819,8 @@ struct sc_mtch_sched_info_r13_s { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -40437,7 +39840,6 @@ struct sc_mtch_sched_info_r13_s { // PCI-ARFCN-r13 ::= SEQUENCE struct pci_arfcn_r13_s { - // member variables bool carrier_freq_r13_present = false; uint16_t pci_r13 = 0; uint32_t carrier_freq_r13 = 0; @@ -40526,8 +39928,8 @@ struct sc_mtch_info_br_r14_s { } private: - types type_; - choice_buffer_t c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -40638,18 +40040,17 @@ struct sc_mtch_info_r13_s { void to_json(json_writer& j) const; }; -// SC-MTCH-InfoList-BR-r14 ::= SEQUENCE (SIZE (0..maxSC-MTCH-BR-r14)) OF SC-MTCH-Info-BR-r14 -typedef dyn_array sc_mtch_info_list_br_r14_l; +// SC-MTCH-InfoList-BR-r14 ::= SEQUENCE (SIZE (0..128)) OF SC-MTCH-Info-BR-r14 +using sc_mtch_info_list_br_r14_l = dyn_array; -// SC-MTCH-InfoList-r13 ::= SEQUENCE (SIZE (0..maxSC-MTCH-r13)) OF SC-MTCH-Info-r13 -typedef dyn_array sc_mtch_info_list_r13_l; +// SC-MTCH-InfoList-r13 ::= SEQUENCE (SIZE (0..1023)) OF SC-MTCH-Info-r13 +using sc_mtch_info_list_r13_l = dyn_array; -// SCPTM-NeighbourCellList-r13 ::= SEQUENCE (SIZE (1..maxNeighCell-SCPTM-r13)) OF PCI-ARFCN-r13 -typedef dyn_array scptm_neighbour_cell_list_r13_l; +// SCPTM-NeighbourCellList-r13 ::= SEQUENCE (SIZE (1..8)) OF PCI-ARFCN-r13 +using scptm_neighbour_cell_list_r13_l = dyn_array; // SCPTMConfiguration-v1340 ::= SEQUENCE struct scptm_cfg_v1340_s { - // member variables bool p_b_r13_present = false; bool non_crit_ext_present = false; uint8_t p_b_r13 = 0; @@ -40662,7 +40063,6 @@ struct scptm_cfg_v1340_s { // SCPTMConfiguration-BR-r14 ::= SEQUENCE struct scptm_cfg_br_r14_s { - // member variables bool scptm_neighbour_cell_list_r14_present = false; bool p_b_r14_present = false; bool late_non_crit_ext_present = false; @@ -40680,7 +40080,6 @@ struct scptm_cfg_br_r14_s { // SCPTMConfiguration-r13 ::= SEQUENCE struct scptm_cfg_r13_s { - // member variables bool scptm_neighbour_cell_list_r13_present = false; bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; @@ -40791,8 +40190,8 @@ struct sc_mcch_msg_type_r13_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -40848,15 +40247,14 @@ struct sc_mcch_msg_type_r13_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; // SC-MCCH-Message-r13 ::= SEQUENCE struct sc_mcch_msg_r13_s { - // member variables sc_mcch_msg_type_r13_c msg; // sequence methods @@ -40935,15 +40333,14 @@ struct init_ue_id_c { } private: - types type_; - choice_buffer_t), sizeof(s_tmsi_s))> c; + types type_; + choice_buffer_t, s_tmsi_s> c; void destroy_(); }; // ReestabUE-Identity ::= SEQUENCE struct reestab_ue_id_s { - // member variables fixed_bitstring<16> c_rnti; uint16_t pci = 0; fixed_bitstring<16> short_mac_i; @@ -40988,7 +40385,7 @@ struct resume_cause_r15_opts { mt_access, mo_sig, mo_data, - rna_update, + rna_upd, mo_voice_call, spare1, nulltype @@ -41000,7 +40397,6 @@ typedef enumerated resume_cause_r15_e; // RRCConnectionReestablishmentRequest-r8-IEs ::= SEQUENCE struct rrc_conn_reest_request_r8_ies_s { - // member variables reestab_ue_id_s ue_id; reest_cause_e reest_cause; fixed_bitstring<2> spare; @@ -41013,7 +40409,6 @@ struct rrc_conn_reest_request_r8_ies_s { // RRCConnectionRequest-r8-IEs ::= SEQUENCE struct rrc_conn_request_r8_ies_s { - // member variables init_ue_id_c ue_id; establishment_cause_e establishment_cause; fixed_bitstring<1> spare; @@ -41077,8 +40472,8 @@ struct rrc_conn_resume_request_minus5_gc_r15_ies_s { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -41148,8 +40543,8 @@ struct rrc_conn_resume_request_r13_ies_s { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -41225,8 +40620,8 @@ struct rrc_conn_reest_request_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -41278,8 +40673,8 @@ struct rrc_conn_request_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -41346,10 +40741,8 @@ struct rrc_conn_resume_request_r13_s { } private: - types type_; - choice_buffer_t - c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -41401,8 +40794,8 @@ struct rrc_early_data_request_r15_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -41469,8 +40862,8 @@ struct ul_ccch_msg_type_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -41569,8 +40962,8 @@ struct ul_ccch_msg_type_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -41626,8 +41019,8 @@ struct ul_ccch_msg_type_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -41683,15 +41076,14 @@ struct ul_ccch_msg_type_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; // UL-CCCH-Message ::= SEQUENCE struct ul_ccch_msg_s { - // member variables ul_ccch_msg_type_c msg; // sequence methods @@ -41754,15 +41146,14 @@ struct cell_global_id_cdma2000_c { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; // AdditionalSI-Info-r9 ::= SEQUENCE struct add_si_info_r9_s { - // member variables bool csg_member_status_r9_present = false; bool csg_id_r9_present = false; fixed_bitstring<27> csg_id_r9; @@ -41776,7 +41167,6 @@ struct add_si_info_r9_s { // BLER-Result-r12 ::= SEQUENCE struct bler_result_r12_s { struct blocks_rx_r12_s_ { - // member variables fixed_bitstring<3> n_r12; fixed_bitstring<8> m_r12; }; @@ -41793,7 +41183,6 @@ struct bler_result_r12_s { // CellGlobalIdUTRA ::= SEQUENCE struct cell_global_id_utra_s { - // member variables plmn_id_s plmn_id; fixed_bitstring<28> cell_id; @@ -41806,7 +41195,6 @@ struct cell_global_id_utra_s { // MeasResultCDMA2000 ::= SEQUENCE struct meas_result_cdma2000_s { struct meas_result_s_ { - // member variables bool ext = false; bool pilot_pn_phase_present = false; uint16_t pilot_pn_phase = 0; @@ -41827,11 +41215,10 @@ struct meas_result_cdma2000_s { }; // PLMN-IdentityList2 ::= SEQUENCE (SIZE (1..5)) OF PLMN-Identity -typedef dyn_array plmn_id_list2_l; +using plmn_id_list2_l = dyn_array; // CellGlobalIdGERAN ::= SEQUENCE struct cell_global_id_geran_s { - // member variables plmn_id_s plmn_id; fixed_bitstring<16> location_area_code; fixed_bitstring<16> cell_id; @@ -41844,7 +41231,6 @@ struct cell_global_id_geran_s { // DataBLER-MCH-Result-r12 ::= SEQUENCE struct data_bler_mch_result_r12_s { - // member variables uint8_t mch_idx_r12 = 1; bler_result_r12_s data_bler_result_r12; @@ -41857,7 +41243,6 @@ struct data_bler_mch_result_r12_s { // MeasResultEUTRA ::= SEQUENCE struct meas_result_eutra_s { struct cgi_info_s_ { - // member variables bool plmn_id_list_present = false; cell_global_id_eutra_s cell_global_id; fixed_bitstring<16> tac; @@ -41865,14 +41250,13 @@ struct meas_result_eutra_s { }; struct meas_result_s_ { struct cgi_info_v1310_s_ { - // member variables bool freq_band_ind_r13_present = false; bool multi_band_info_list_r13_present = false; bool freq_band_ind_prio_r13_present = false; uint16_t freq_band_ind_r13 = 1; multi_band_info_list_r11_l multi_band_info_list_r13; }; - typedef dyn_array cgi_info_minus5_gc_r15_l_; + using cgi_info_minus5_gc_r15_l_ = dyn_array; // member variables bool ext = false; @@ -41918,7 +41302,6 @@ struct meas_result_eutra_s { // MeasResultIdleEUTRA-r15 ::= SEQUENCE struct meas_result_idle_eutra_r15_s { struct meas_result_r15_s_ { - // member variables uint8_t rsrp_result_r15 = 0; int8_t rsrq_result_r15 = -30; }; @@ -41936,8 +41319,8 @@ struct meas_result_idle_eutra_r15_s { void to_json(json_writer& j) const; }; -// MeasResultListCDMA2000 ::= SEQUENCE (SIZE (1..maxCellReport)) OF MeasResultCDMA2000 -typedef dyn_array meas_result_list_cdma2000_l; +// MeasResultListCDMA2000 ::= SEQUENCE (SIZE (1..8)) OF MeasResultCDMA2000 +using meas_result_list_cdma2000_l = dyn_array; // MeasResultUTRA ::= SEQUENCE struct meas_result_utra_s { @@ -41992,13 +41375,12 @@ struct meas_result_utra_s { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; struct cgi_info_s_ { - // member variables bool location_area_code_present = false; bool routing_area_code_present = false; bool plmn_id_list_present = false; @@ -42008,7 +41390,6 @@ struct meas_result_utra_s { plmn_id_list2_l plmn_id_list; }; struct meas_result_s_ { - // member variables bool ext = false; bool utra_rscp_present = false; bool utra_ec_n0_present = false; @@ -42038,12 +41419,11 @@ struct meas_result_utra_s { void to_json(json_writer& j) const; }; -// PLMN-IdentityListNR-r15 ::= SEQUENCE (SIZE (1.. maxPLMN-NR-r15)) OF PLMN-Identity -typedef dyn_array plmn_id_list_nr_r15_l; +// PLMN-IdentityListNR-r15 ::= SEQUENCE (SIZE (1..12)) OF PLMN-Identity +using plmn_id_list_nr_r15_l = dyn_array; // RegisteredAMF-r15 ::= SEQUENCE struct registered_amf_r15_s { - // member variables bool plmn_id_r15_present = false; plmn_id_s plmn_id_r15; fixed_bitstring<24> amf_id_r15; @@ -42106,14 +41486,14 @@ struct s_nssai_r15_c { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; -// DataBLER-MCH-ResultList-r12 ::= SEQUENCE (SIZE (1.. maxPMCH-PerMBSFN)) OF DataBLER-MCH-Result-r12 -typedef dyn_array data_bler_mch_result_list_r12_l; +// DataBLER-MCH-ResultList-r12 ::= SEQUENCE (SIZE (1..15)) OF DataBLER-MCH-Result-r12 +using data_bler_mch_result_list_r12_l = dyn_array; // LocationInfo-r10 ::= SEQUENCE struct location_info_r10_s { @@ -42255,8 +41635,8 @@ struct location_info_r10_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -42311,8 +41691,8 @@ struct location_info_r10_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -42337,13 +41717,11 @@ struct location_info_r10_s { // MeasResultGERAN ::= SEQUENCE struct meas_result_geran_s { struct cgi_info_s_ { - // member variables bool routing_area_code_present = false; cell_global_id_geran_s cell_global_id; fixed_bitstring<8> routing_area_code; }; struct meas_result_s_ { - // member variables bool ext = false; uint8_t rssi = 0; // ... @@ -42362,18 +41740,17 @@ struct meas_result_geran_s { void to_json(json_writer& j) const; }; -// MeasResultIdleListEUTRA-r15 ::= SEQUENCE (SIZE (1..maxCellMeasIdle-r15)) OF MeasResultIdleEUTRA-r15 -typedef dyn_array meas_result_idle_list_eutra_r15_l; +// MeasResultIdleListEUTRA-r15 ::= SEQUENCE (SIZE (1..8)) OF MeasResultIdleEUTRA-r15 +using meas_result_idle_list_eutra_r15_l = dyn_array; -// MeasResultListEUTRA ::= SEQUENCE (SIZE (1..maxCellReport)) OF MeasResultEUTRA -typedef dyn_array meas_result_list_eutra_l; +// MeasResultListEUTRA ::= SEQUENCE (SIZE (1..8)) OF MeasResultEUTRA +using meas_result_list_eutra_l = dyn_array; -// MeasResultListUTRA ::= SEQUENCE (SIZE (1..maxCellReport)) OF MeasResultUTRA -typedef dyn_array meas_result_list_utra_l; +// MeasResultListUTRA ::= SEQUENCE (SIZE (1..8)) OF MeasResultUTRA +using meas_result_list_utra_l = dyn_array; // MeasResultNR-r15 ::= SEQUENCE struct meas_result_nr_r15_s { - // member variables bool ext = false; bool rsrp_result_r15_present = false; bool rsrq_result_r15_present = false; @@ -42391,7 +41768,6 @@ struct meas_result_nr_r15_s { // MeasResultsCDMA2000 ::= SEQUENCE struct meas_results_cdma2000_s { - // member variables bool pre_regist_status_hrpd = false; meas_result_list_cdma2000_l meas_result_list_cdma2000; @@ -42403,12 +41779,11 @@ struct meas_results_cdma2000_s { // PLMN-IdentityInfoNR-r15 ::= SEQUENCE struct plmn_id_info_nr_r15_s { - // member variables bool tac_r15_present = false; bool ran_area_code_r15_present = false; plmn_id_list_nr_r15_l plmn_id_list_r15; fixed_bitstring<24> tac_r15; - uint8_t ran_area_code_r15 = 0; + uint16_t ran_area_code_r15 = 0; fixed_bitstring<36> cell_id_r15; // sequence methods @@ -42419,7 +41794,7 @@ struct plmn_id_info_nr_r15_s { // RRCConnectionSetupComplete-v1530-IEs ::= SEQUENCE struct rrc_conn_setup_complete_v1530_ies_s { - typedef dyn_array s_nssai_list_r15_l_; + using s_nssai_list_r15_l_ = dyn_array; struct ng_minus5_g_s_tmsi_bits_r15_c_ { struct types_opts { enum options { ng_minus5_g_s_tmsi_r15, ng_minus5_g_s_tmsi_part2_r15, nulltype } value; @@ -42471,8 +41846,8 @@ struct rrc_conn_setup_complete_v1530_ies_s { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -42499,7 +41874,6 @@ struct rrc_conn_setup_complete_v1530_ies_s { // RSRQ-Type-r12 ::= SEQUENCE struct rsrq_type_r12_s { - // member variables bool all_symbols_r12 = false; bool wide_band_r12 = false; @@ -42530,7 +41904,7 @@ struct wlan_rtt_r15_s { bool rtt_accuracy_r15_present = false; uint32_t rtt_value_r15 = 0; rtt_units_r15_e_ rtt_units_r15; - uint8_t rtt_accuracy_r15 = 0; + uint16_t rtt_accuracy_r15 = 0; // ... // sequence methods @@ -42539,19 +41913,18 @@ struct wlan_rtt_r15_s { void to_json(json_writer& j) const; }; -// AffectedCarrierFreqComb-r15 ::= SEQUENCE (SIZE (1..maxServCell-r13)) OF INTEGER -typedef bounded_array affected_carrier_freq_comb_r15_l; +// AffectedCarrierFreqComb-r15 ::= SEQUENCE (SIZE (1..32)) OF INTEGER (1..64) +using affected_carrier_freq_comb_r15_l = bounded_array; -// AffectedCarrierFreqCombNR-r15 ::= SEQUENCE (SIZE (1..maxServCellNR-r15)) OF INTEGER -typedef bounded_array affected_carrier_freq_comb_nr_r15_l; +// AffectedCarrierFreqCombNR-r15 ::= SEQUENCE (SIZE (1..16)) OF INTEGER (0..3279165) +using affected_carrier_freq_comb_nr_r15_l = bounded_array; // LogMeasResultBT-r15 ::= SEQUENCE struct log_meas_result_bt_r15_s { - // member variables bool ext = false; bool rssi_bt_r15_present = false; fixed_bitstring<48> bt_addr_r15; - int8_t rssi_bt_r15 = -128; + int16_t rssi_bt_r15 = -128; // ... // sequence methods @@ -42562,7 +41935,6 @@ struct log_meas_result_bt_r15_s { // LogMeasResultWLAN-r15 ::= SEQUENCE struct log_meas_result_wlan_r15_s { - // member variables bool ext = false; bool rssi_wlan_r15_present = false; bool rtt_wlan_r15_present = false; @@ -42579,7 +41951,6 @@ struct log_meas_result_wlan_r15_s { // MeasResult2CDMA2000-r9 ::= SEQUENCE struct meas_result2_cdma2000_r9_s { - // member variables carrier_freq_cdma2000_s carrier_freq_r9; meas_results_cdma2000_s meas_result_list_r9; @@ -42591,8 +41962,7 @@ struct meas_result2_cdma2000_r9_s { // MeasResult2EUTRA-r9 ::= SEQUENCE struct meas_result2_eutra_r9_s { - // member variables - uint16_t carrier_freq_r9 = 0; + uint32_t carrier_freq_r9 = 0; meas_result_list_eutra_l meas_result_list_r9; // sequence methods @@ -42603,7 +41973,6 @@ struct meas_result2_eutra_r9_s { // MeasResult2EUTRA-v1250 ::= SEQUENCE struct meas_result2_eutra_v1250_s { - // member variables bool rsrq_type_r12_present = false; rsrq_type_r12_s rsrq_type_r12; @@ -42615,7 +41984,6 @@ struct meas_result2_eutra_v1250_s { // MeasResult2EUTRA-v9e0 ::= SEQUENCE struct meas_result2_eutra_v9e0_s { - // member variables bool carrier_freq_v9e0_present = false; uint32_t carrier_freq_v9e0 = 65536; @@ -42627,7 +41995,6 @@ struct meas_result2_eutra_v9e0_s { // MeasResult2UTRA-r9 ::= SEQUENCE struct meas_result2_utra_r9_s { - // member variables uint16_t carrier_freq_r9 = 0; meas_result_list_utra_l meas_result_list_r9; @@ -42640,7 +42007,6 @@ struct meas_result2_utra_r9_s { // MeasResultIdle-r15 ::= SEQUENCE struct meas_result_idle_r15_s { struct meas_result_serving_cell_r15_s_ { - // member variables uint8_t rsrp_result_r15 = 0; int8_t rsrq_result_r15 = -30; }; @@ -42678,14 +42044,13 @@ struct meas_result_idle_r15_s { void to_json(json_writer& j) const; }; -// MeasResultListGERAN ::= SEQUENCE (SIZE (1..maxCellReport)) OF MeasResultGERAN -typedef dyn_array meas_result_list_geran_l; +// MeasResultListGERAN ::= SEQUENCE (SIZE (1..8)) OF MeasResultGERAN +using meas_result_list_geran_l = dyn_array; // MeasResultMBSFN-r12 ::= SEQUENCE struct meas_result_mbsfn_r12_s { struct mbsfn_area_r12_s_ { - // member variables - uint8_t mbsfn_area_id_r12 = 0; + uint16_t mbsfn_area_id_r12 = 0; uint32_t carrier_freq_r12 = 0; }; @@ -42708,7 +42073,6 @@ struct meas_result_mbsfn_r12_s { // MeasResultSSB-Index-r15 ::= SEQUENCE struct meas_result_ssb_idx_r15_s { - // member variables bool ext = false; bool meas_result_ssb_idx_r15_present = false; uint8_t ssb_idx_r15 = 0; @@ -42721,8 +42085,8 @@ struct meas_result_ssb_idx_r15_s { void to_json(json_writer& j) const; }; -// PLMN-IdentityInfoListNR-r15 ::= SEQUENCE (SIZE (1..maxPLMN-NR-r15)) OF PLMN-IdentityInfoNR-r15 -typedef dyn_array plmn_id_info_list_nr_r15_l; +// PLMN-IdentityInfoListNR-r15 ::= SEQUENCE (SIZE (1..12)) OF PLMN-IdentityInfoNR-r15 +using plmn_id_info_list_nr_r15_l = dyn_array; // PerCC-GapIndication-r14 ::= SEQUENCE struct per_cc_gap_ind_r14_s { @@ -42745,7 +42109,6 @@ struct per_cc_gap_ind_r14_s { // RRCConnectionReconfigurationComplete-v1530-IEs ::= SEQUENCE struct rrc_conn_recfg_complete_v1530_ies_s { - // member variables bool log_meas_available_bt_r15_present = false; bool log_meas_available_wlan_r15_present = false; bool flight_path_info_available_r15_present = false; @@ -42759,10 +42122,9 @@ struct rrc_conn_recfg_complete_v1530_ies_s { // RRCConnectionSetupComplete-v1430-IEs ::= SEQUENCE struct rrc_conn_setup_complete_v1430_ies_s { - // member variables bool dcn_id_r14_present = false; bool non_crit_ext_present = false; - uint16_t dcn_id_r14 = 0; + uint32_t dcn_id_r14 = 0; rrc_conn_setup_complete_v1530_ies_s non_crit_ext; // sequence methods @@ -42773,7 +42135,6 @@ struct rrc_conn_setup_complete_v1430_ies_s { // VictimSystemType-r11 ::= SEQUENCE struct victim_sys_type_r11_s { - // member variables bool gps_r11_present = false; bool glonass_r11_present = false; bool bds_r11_present = false; @@ -42791,7 +42152,6 @@ struct victim_sys_type_r11_s { struct visited_cell_info_r12_s { struct visited_cell_id_r12_c_ { struct pci_arfcn_r12_s_ { - // member variables uint16_t pci_r12 = 0; uint32_t carrier_freq_r12 = 0; }; @@ -42845,8 +42205,8 @@ struct visited_cell_info_r12_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -42866,7 +42226,6 @@ struct visited_cell_info_r12_s { // WayPointLocation-r15 ::= SEQUENCE struct way_point_location_r15_s { - // member variables bool time_stamp_r15_present = false; location_info_r10_s way_point_location_r15; fixed_bitstring<48> time_stamp_r15; @@ -42886,7 +42245,6 @@ struct affected_carrier_freq_comb_info_mrdc_r15_s { }; typedef enumerated interference_direction_mrdc_r15_e_; struct affected_carrier_freq_comb_mrdc_r15_s_ { - // member variables bool affected_carrier_freq_comb_eutra_r15_present = false; affected_carrier_freq_comb_r15_l affected_carrier_freq_comb_eutra_r15; affected_carrier_freq_comb_nr_r15_l affected_carrier_freq_comb_nr_r15; @@ -42907,9 +42265,8 @@ struct affected_carrier_freq_comb_info_mrdc_r15_s { // CGI-InfoNR-r15 ::= SEQUENCE struct cgi_info_nr_r15_s { struct no_sib1_r15_s_ { - // member variables - uint8_t ssb_subcarrier_offset_r15 = 0; - uint8_t pdcch_cfg_sib1_r15 = 0; + uint8_t ssb_subcarrier_offset_r15 = 0; + uint16_t pdcch_cfg_sib1_r15 = 0; }; // member variables @@ -42930,7 +42287,7 @@ struct cgi_info_nr_r15_s { // FlightPathInfoReport-r15 ::= SEQUENCE struct flight_path_info_report_r15_s { - typedef dyn_array flight_path_r15_l_; + using flight_path_r15_l_ = dyn_array; // member variables bool flight_path_r15_present = false; @@ -42943,45 +42300,44 @@ struct flight_path_info_report_r15_s { void to_json(json_writer& j) const; }; -// LogMeasResultListBT-r15 ::= SEQUENCE (SIZE (1..maxBT-IdReport-r15)) OF LogMeasResultBT-r15 -typedef dyn_array log_meas_result_list_bt_r15_l; +// LogMeasResultListBT-r15 ::= SEQUENCE (SIZE (1..32)) OF LogMeasResultBT-r15 +using log_meas_result_list_bt_r15_l = dyn_array; -// LogMeasResultListWLAN-r15 ::= SEQUENCE (SIZE (1..maxWLAN-Id-Report-r14)) OF LogMeasResultWLAN-r15 -typedef dyn_array log_meas_result_list_wlan_r15_l; +// LogMeasResultListWLAN-r15 ::= SEQUENCE (SIZE (1..32)) OF LogMeasResultWLAN-r15 +using log_meas_result_list_wlan_r15_l = dyn_array; -// MeasResultList2CDMA2000-r9 ::= SEQUENCE (SIZE (1..maxFreq)) OF MeasResult2CDMA2000-r9 -typedef dyn_array meas_result_list2_cdma2000_r9_l; +// MeasResultList2CDMA2000-r9 ::= SEQUENCE (SIZE (1..8)) OF MeasResult2CDMA2000-r9 +using meas_result_list2_cdma2000_r9_l = dyn_array; -// MeasResultList2EUTRA-r9 ::= SEQUENCE (SIZE (1..maxFreq)) OF MeasResult2EUTRA-r9 -typedef dyn_array meas_result_list2_eutra_r9_l; +// MeasResultList2EUTRA-r9 ::= SEQUENCE (SIZE (1..8)) OF MeasResult2EUTRA-r9 +using meas_result_list2_eutra_r9_l = dyn_array; -// MeasResultList2EUTRA-v1250 ::= SEQUENCE (SIZE (1..maxFreq)) OF MeasResult2EUTRA-v1250 -typedef dyn_array meas_result_list2_eutra_v1250_l; +// MeasResultList2EUTRA-v1250 ::= SEQUENCE (SIZE (1..8)) OF MeasResult2EUTRA-v1250 +using meas_result_list2_eutra_v1250_l = dyn_array; -// MeasResultList2EUTRA-v9e0 ::= SEQUENCE (SIZE (1..maxFreq)) OF MeasResult2EUTRA-v9e0 -typedef dyn_array meas_result_list2_eutra_v9e0_l; +// MeasResultList2EUTRA-v9e0 ::= SEQUENCE (SIZE (1..8)) OF MeasResult2EUTRA-v9e0 +using meas_result_list2_eutra_v9e0_l = dyn_array; -// MeasResultList2GERAN-r10 ::= SEQUENCE (SIZE (1..maxCellListGERAN)) OF MeasResultListGERAN -typedef dyn_array meas_result_list2_geran_r10_l; +// MeasResultList2GERAN-r10 ::= SEQUENCE (SIZE (1..3)) OF MeasResultListGERAN +using meas_result_list2_geran_r10_l = dyn_array; -// MeasResultList2UTRA-r9 ::= SEQUENCE (SIZE (1..maxFreq)) OF MeasResult2UTRA-r9 -typedef dyn_array meas_result_list2_utra_r9_l; +// MeasResultList2UTRA-r9 ::= SEQUENCE (SIZE (1..8)) OF MeasResult2UTRA-r9 +using meas_result_list2_utra_r9_l = dyn_array; -// MeasResultListIdle-r15 ::= SEQUENCE (SIZE (1..maxIdleMeasCarriers-r15)) OF MeasResultIdle-r15 -typedef dyn_array meas_result_list_idle_r15_l; +// MeasResultListIdle-r15 ::= SEQUENCE (SIZE (1..3)) OF MeasResultIdle-r15 +using meas_result_list_idle_r15_l = dyn_array; -// MeasResultListMBSFN-r12 ::= SEQUENCE (SIZE (1..maxMBSFN-Area)) OF MeasResultMBSFN-r12 -typedef dyn_array meas_result_list_mbsfn_r12_l; +// MeasResultListMBSFN-r12 ::= SEQUENCE (SIZE (1..8)) OF MeasResultMBSFN-r12 +using meas_result_list_mbsfn_r12_l = dyn_array; -// MeasResultSSB-IndexList-r15 ::= SEQUENCE (SIZE (1..maxRS-IndexReport-r15)) OF MeasResultSSB-Index-r15 -typedef dyn_array meas_result_ssb_idx_list_r15_l; +// MeasResultSSB-IndexList-r15 ::= SEQUENCE (SIZE (1..32)) OF MeasResultSSB-Index-r15 +using meas_result_ssb_idx_list_r15_l = dyn_array; -// PerCC-GapIndicationList-r14 ::= SEQUENCE (SIZE (1..maxServCell-r13)) OF PerCC-GapIndication-r14 -typedef dyn_array per_cc_gap_ind_list_r14_l; +// PerCC-GapIndicationList-r14 ::= SEQUENCE (SIZE (1..32)) OF PerCC-GapIndication-r14 +using per_cc_gap_ind_list_r14_l = dyn_array; // RRCConnectionReconfigurationComplete-v1510-IEs ::= SEQUENCE struct rrc_conn_recfg_complete_v1510_ies_s { - // member variables bool scg_cfg_resp_nr_r15_present = false; bool non_crit_ext_present = false; dyn_octstring scg_cfg_resp_nr_r15; @@ -42995,7 +42351,6 @@ struct rrc_conn_recfg_complete_v1510_ies_s { // RRCConnectionReestablishmentComplete-v1530-IEs ::= SEQUENCE struct rrc_conn_reest_complete_v1530_ies_s { - // member variables bool log_meas_available_bt_r15_present = false; bool log_meas_available_wlan_r15_present = false; bool flight_path_info_available_r15_present = false; @@ -43009,7 +42364,6 @@ struct rrc_conn_reest_complete_v1530_ies_s { // RRCConnectionSetupComplete-v1330-IEs ::= SEQUENCE struct rrc_conn_setup_complete_v1330_ies_s { - // member variables bool ue_ce_need_ul_gaps_r13_present = false; bool non_crit_ext_present = false; rrc_conn_setup_complete_v1430_ies_s non_crit_ext; @@ -43020,18 +42374,16 @@ struct rrc_conn_setup_complete_v1330_ies_s { void to_json(json_writer& j) const; }; -// VisitedCellInfoList-r12 ::= SEQUENCE (SIZE (1..maxCellHistory-r12)) OF VisitedCellInfo-r12 -typedef dyn_array visited_cell_info_list_r12_l; +// VisitedCellInfoList-r12 ::= SEQUENCE (SIZE (1..16)) OF VisitedCellInfo-r12 +using visited_cell_info_list_r12_l = dyn_array; // LogMeasInfo-r10 ::= SEQUENCE struct log_meas_info_r10_s { struct meas_result_serv_cell_r10_s_ { - // member variables uint8_t rsrp_result_r10 = 0; uint8_t rsrq_result_r10 = 0; }; struct meas_result_neigh_cells_r10_s_ { - // member variables bool meas_result_list_eutra_r10_present = false; bool meas_result_list_utra_r10_present = false; bool meas_result_list_geran_r10_present = false; @@ -43077,7 +42429,7 @@ struct log_meas_info_r10_s { // MRDC-AssistanceInfo-r15 ::= SEQUENCE struct mrdc_assist_info_r15_s { - typedef dyn_array affected_carrier_freq_comb_info_list_mrdc_r15_l_; + using affected_carrier_freq_comb_info_list_mrdc_r15_l_ = dyn_array; // member variables bool ext = false; @@ -43092,7 +42444,6 @@ struct mrdc_assist_info_r15_s { // MeasResultCellNR-r15 ::= SEQUENCE struct meas_result_cell_nr_r15_s { - // member variables bool ext = false; bool meas_result_rs_idx_list_r15_present = false; uint16_t pci_r15 = 0; @@ -43113,7 +42464,6 @@ typedef visited_cell_info_list_r12_l mob_history_report_r12_l; // RRCConnectionReconfigurationComplete-v1430-IEs ::= SEQUENCE struct rrc_conn_recfg_complete_v1430_ies_s { - // member variables bool per_cc_gap_ind_list_r14_present = false; bool num_freq_effective_r14_present = false; bool num_freq_effective_reduced_r14_present = false; @@ -43131,7 +42481,6 @@ struct rrc_conn_recfg_complete_v1430_ies_s { // RRCConnectionReestablishmentComplete-v1250-IEs ::= SEQUENCE struct rrc_conn_reest_complete_v1250_ies_s { - // member variables bool log_meas_available_mbsfn_r12_present = false; bool non_crit_ext_present = false; rrc_conn_reest_complete_v1530_ies_s non_crit_ext; @@ -43144,7 +42493,6 @@ struct rrc_conn_reest_complete_v1250_ies_s { // RRCConnectionSetupComplete-v1320-IEs ::= SEQUENCE struct rrc_conn_setup_complete_v1320_ies_s { - // member variables bool ce_mode_b_r13_present = false; bool s_tmsi_r13_present = false; bool attach_without_pdn_connect_r13_present = false; @@ -43162,7 +42510,6 @@ struct rrc_conn_setup_complete_v1320_ies_s { // TrafficPatternInfo-v1530 ::= SEQUENCE struct traffic_pattern_info_v1530_s { - // member variables bool traffic_dest_r15_present = false; bool reliability_info_sl_r15_present = false; fixed_bitstring<24> traffic_dest_r15; @@ -43176,7 +42523,6 @@ struct traffic_pattern_info_v1530_s { // UEInformationResponse-v1530-IEs ::= SEQUENCE struct ue_info_resp_v1530_ies_s { - // member variables bool meas_result_list_idle_r15_present = false; bool flight_path_info_report_r15_present = false; bool non_crit_ext_present = false; @@ -43191,7 +42537,6 @@ struct ue_info_resp_v1530_ies_s { // AffectedCarrierFreq-v1310 ::= SEQUENCE struct affected_carrier_freq_v1310_s { - // member variables bool carrier_freq_v1310_present = false; uint8_t carrier_freq_v1310 = 33; @@ -43201,19 +42546,17 @@ struct affected_carrier_freq_v1310_s { void to_json(json_writer& j) const; }; -// AffectedCarrierFreqComb-r13 ::= SEQUENCE (SIZE (2..maxServCell-r13)) OF INTEGER -typedef bounded_array affected_carrier_freq_comb_r13_l; +// AffectedCarrierFreqComb-r13 ::= SEQUENCE (SIZE (2..32)) OF INTEGER (1..64) +using affected_carrier_freq_comb_r13_l = bounded_array; // ConnEstFailReport-r11 ::= SEQUENCE struct conn_est_fail_report_r11_s { struct meas_result_failed_cell_r11_s_ { - // member variables bool rsrq_result_r11_present = false; uint8_t rsrp_result_r11 = 0; uint8_t rsrq_result_r11 = 0; }; struct meas_result_neigh_cells_r11_s_ { - // member variables bool meas_result_list_eutra_r11_present = false; bool meas_result_list_utra_r11_present = false; bool meas_result_list_geran_r11_present = false; @@ -43259,10 +42602,9 @@ struct conn_est_fail_report_r11_s { // DRB-CountInfo ::= SEQUENCE struct drb_count_info_s { - // member variables uint8_t drb_id = 1; - uint32_t count_ul = 0; - uint32_t count_dl = 0; + uint64_t count_ul = 0; + uint64_t count_dl = 0; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -43272,7 +42614,6 @@ struct drb_count_info_s { // InDeviceCoexIndication-v1530-IEs ::= SEQUENCE struct in_dev_coex_ind_v1530_ies_s { - // member variables bool mrdc_assist_info_r15_present = false; bool non_crit_ext_present = false; mrdc_assist_info_r15_s mrdc_assist_info_r15; @@ -43283,15 +42624,14 @@ struct in_dev_coex_ind_v1530_ies_s { void to_json(json_writer& j) const; }; -// LogMeasInfoList-r10 ::= SEQUENCE (SIZE (1..maxLogMeasReport-r10)) OF LogMeasInfo-r10 -typedef dyn_array log_meas_info_list_r10_l; +// LogMeasInfoList-r10 ::= SEQUENCE (SIZE (1..520)) OF LogMeasInfo-r10 +using log_meas_info_list_r10_l = dyn_array; -// MeasResultCellListNR-r15 ::= SEQUENCE (SIZE (1..maxCellReport)) OF MeasResultCellNR-r15 -typedef dyn_array meas_result_cell_list_nr_r15_l; +// MeasResultCellListNR-r15 ::= SEQUENCE (SIZE (1..8)) OF MeasResultCellNR-r15 +using meas_result_cell_list_nr_r15_l = dyn_array; // RRCConnectionReconfigurationComplete-v1250-IEs ::= SEQUENCE struct rrc_conn_recfg_complete_v1250_ies_s { - // member variables bool log_meas_available_mbsfn_r12_present = false; bool non_crit_ext_present = false; rrc_conn_recfg_complete_v1430_ies_s non_crit_ext; @@ -43304,7 +42644,6 @@ struct rrc_conn_recfg_complete_v1250_ies_s { // RRCConnectionReestablishmentComplete-v1130-IEs ::= SEQUENCE struct rrc_conn_reest_complete_v1130_ies_s { - // member variables bool conn_est_fail_info_available_r11_present = false; bool non_crit_ext_present = false; rrc_conn_reest_complete_v1250_ies_s non_crit_ext; @@ -43340,7 +42679,6 @@ struct rrc_conn_setup_complete_v1250_ies_s { // SL-V2X-CommTxResourceReq-r14 ::= SEQUENCE struct sl_v2x_comm_tx_res_req_r14_s { - // member variables bool carrier_freq_comm_tx_r14_present = false; bool v2x_type_tx_sync_r14_present = false; bool v2x_dest_info_list_r14_present = false; @@ -43354,12 +42692,11 @@ struct sl_v2x_comm_tx_res_req_r14_s { void to_json(json_writer& j) const; }; -// TrafficPatternInfoList-v1530 ::= SEQUENCE (SIZE (1..maxTrafficPattern-r14)) OF TrafficPatternInfo-v1530 -typedef dyn_array traffic_pattern_info_list_v1530_l; +// TrafficPatternInfoList-v1530 ::= SEQUENCE (SIZE (1..8)) OF TrafficPatternInfo-v1530 +using traffic_pattern_info_list_v1530_l = dyn_array; // UEInformationResponse-v1250-IEs ::= SEQUENCE struct ue_info_resp_v1250_ies_s { - // member variables bool mob_history_report_r12_present = false; bool non_crit_ext_present = false; mob_history_report_r12_l mob_history_report_r12; @@ -43371,21 +42708,20 @@ struct ue_info_resp_v1250_ies_s { void to_json(json_writer& j) const; }; -// AffectedCarrierFreqComb-r11 ::= SEQUENCE (SIZE (2..maxServCell-r10)) OF INTEGER -typedef bounded_array affected_carrier_freq_comb_r11_l; +// AffectedCarrierFreqComb-r11 ::= SEQUENCE (SIZE (2..5)) OF INTEGER (1..32) +using affected_carrier_freq_comb_r11_l = bounded_array; -// AffectedCarrierFreqCombList-r13 ::= SEQUENCE (SIZE (1..maxCombIDC-r11)) OF AffectedCarrierFreqComb-r13 -typedef dyn_array affected_carrier_freq_comb_list_r13_l; +// AffectedCarrierFreqCombList-r13 ::= SEQUENCE (SIZE (1..128)) OF AffectedCarrierFreqComb-r13 +using affected_carrier_freq_comb_list_r13_l = dyn_array; -// AffectedCarrierFreqList-v1310 ::= SEQUENCE (SIZE (1..maxFreqIDC-r11)) OF AffectedCarrierFreq-v1310 -typedef dyn_array affected_carrier_freq_list_v1310_l; +// AffectedCarrierFreqList-v1310 ::= SEQUENCE (SIZE (1..32)) OF AffectedCarrierFreq-v1310 +using affected_carrier_freq_list_v1310_l = dyn_array; -// DRB-CountInfoListExt-r15 ::= SEQUENCE (SIZE (1..maxDRBExt-r15)) OF DRB-CountInfo -typedef dyn_array drb_count_info_list_ext_r15_l; +// DRB-CountInfoListExt-r15 ::= SEQUENCE (SIZE (1..4)) OF DRB-CountInfo +using drb_count_info_list_ext_r15_l = dyn_array; // FailureReportSCG-v12d0 ::= SEQUENCE struct fail_report_scg_v12d0_s { - // member variables bool meas_result_neigh_cells_v12d0_present = false; meas_result_list2_eutra_v9e0_l meas_result_neigh_cells_v12d0; @@ -43465,8 +42801,8 @@ struct idc_sf_pattern_r11_c { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -43520,15 +42856,14 @@ struct idc_sf_pattern_r11_c { } private: - types type_; - choice_buffer_t), sizeof(sf_pattern_tdd_r11_c_))> c; + types type_; + choice_buffer_t, sf_pattern_tdd_r11_c_> c; void destroy_(); }; // InDeviceCoexIndication-v1360-IEs ::= SEQUENCE struct in_dev_coex_ind_v1360_ies_s { - // member variables bool hardware_sharing_problem_r13_present = false; bool non_crit_ext_present = false; in_dev_coex_ind_v1530_ies_s non_crit_ext; @@ -43541,7 +42876,6 @@ struct in_dev_coex_ind_v1360_ies_s { // LogMeasReport-r10 ::= SEQUENCE struct log_meas_report_r10_s { - // member variables bool ext = false; bool log_meas_available_r10_present = false; fixed_bitstring<48> absolute_time_stamp_r10; @@ -43562,7 +42896,6 @@ struct log_meas_report_r10_s { // MBMS-ServiceInfo-r13 ::= SEQUENCE struct mbms_service_info_r13_s { - // member variables tmgi_r9_s tmgi_r13; // sequence methods @@ -43573,7 +42906,6 @@ struct mbms_service_info_r13_s { // MeasResultCBR-r14 ::= SEQUENCE struct meas_result_cbr_r14_s { - // member variables bool cbr_pscch_r14_present = false; uint8_t pool_id_r14 = 1; uint8_t cbr_pssch_r14 = 0; @@ -43587,7 +42919,6 @@ struct meas_result_cbr_r14_s { // MeasResultCSI-RS-r12 ::= SEQUENCE struct meas_result_csi_rs_r12_s { - // member variables bool ext = false; uint8_t meas_csi_rs_id_r12 = 1; uint8_t csi_rsrp_result_r12 = 0; @@ -43601,7 +42932,6 @@ struct meas_result_csi_rs_r12_s { // MeasResultCellSFTD-r15 ::= SEQUENCE struct meas_result_cell_sftd_r15_s { - // member variables bool rsrp_result_r15_present = false; uint16_t pci_r15 = 0; uint16_t sfn_offset_result_r15 = 0; @@ -43616,7 +42946,6 @@ struct meas_result_cell_sftd_r15_s { // MeasResultFreqFailNR-r15 ::= SEQUENCE struct meas_result_freq_fail_nr_r15_s { - // member variables bool ext = false; bool meas_result_cell_list_r15_present = false; uint32_t carrier_freq_r15 = 0; @@ -43632,22 +42961,18 @@ struct meas_result_freq_fail_nr_r15_s { // MeasResultServFreq-r10 ::= SEQUENCE struct meas_result_serv_freq_r10_s { struct meas_result_scell_r10_s_ { - // member variables uint8_t rsrp_result_scell_r10 = 0; uint8_t rsrq_result_scell_r10 = 0; }; struct meas_result_best_neigh_cell_r10_s_ { - // member variables uint16_t pci_r10 = 0; uint8_t rsrp_result_ncell_r10 = 0; uint8_t rsrq_result_ncell_r10 = 0; }; struct meas_result_scell_v1310_s_ { - // member variables uint8_t rs_sinr_result_r13 = 0; }; struct meas_result_best_neigh_cell_v1310_s_ { - // member variables uint8_t rs_sinr_result_r13 = 0; }; @@ -43677,14 +43002,12 @@ struct meas_result_serv_freq_r10_s { // MeasResultServFreq-r13 ::= SEQUENCE struct meas_result_serv_freq_r13_s { struct meas_result_scell_r13_s_ { - // member variables bool rs_sinr_result_r13_present = false; uint8_t rsrp_result_scell_r13 = 0; int8_t rsrq_result_scell_r13 = -30; uint8_t rs_sinr_result_r13 = 0; }; struct meas_result_best_neigh_cell_r13_s_ { - // member variables bool rs_sinr_result_r13_present = false; uint16_t pci_r13 = 0; uint8_t rsrp_result_ncell_r13 = 0; @@ -43692,7 +43015,6 @@ struct meas_result_serv_freq_r13_s { uint8_t rs_sinr_result_r13 = 0; }; struct meas_result_best_neigh_cell_v1360_s_ { - // member variables int8_t rsrp_result_ncell_v1360 = -17; }; @@ -43715,7 +43037,6 @@ struct meas_result_serv_freq_r13_s { // MeasResultServFreqNR-r15 ::= SEQUENCE struct meas_result_serv_freq_nr_r15_s { - // member variables bool ext = false; bool meas_result_scell_r15_present = false; bool meas_result_best_neigh_cell_r15_present = false; @@ -43732,7 +43053,6 @@ struct meas_result_serv_freq_nr_r15_s { // MeasResultWLAN-r13 ::= SEQUENCE struct meas_result_wlan_r13_s { - // member variables bool ext = false; bool carrier_info_wlan_r13_present = false; bool band_wlan_r13_present = false; @@ -43749,8 +43069,8 @@ struct meas_result_wlan_r13_s { uint16_t available_admission_capacity_wlan_r13 = 0; wlan_backhaul_rate_r12_e backhaul_dl_bw_wlan_r13; wlan_backhaul_rate_r12_e backhaul_ul_bw_wlan_r13; - uint8_t ch_utilization_wlan_r13 = 0; - uint16_t station_count_wlan_r13 = 0; + uint16_t ch_utilization_wlan_r13 = 0; + uint32_t station_count_wlan_r13 = 0; // ... // sequence methods @@ -43762,12 +43082,10 @@ struct meas_result_wlan_r13_s { // OverheatingAssistance-r14 ::= SEQUENCE struct overheat_assist_r14_s { struct reduced_ue_category_s_ { - // member variables uint8_t reduced_ue_category_dl = 0; uint8_t reduced_ue_category_ul = 0; }; struct reduced_max_ccs_s_ { - // member variables uint8_t reduced_ccs_dl = 0; uint8_t reduced_ccs_ul = 0; }; @@ -43786,7 +43104,6 @@ struct overheat_assist_r14_s { // RLF-Report-v9e0 ::= SEQUENCE struct rlf_report_v9e0_s { - // member variables meas_result_list2_eutra_v9e0_l meas_result_list_eutra_v9e0; // sequence methods @@ -43797,7 +43114,6 @@ struct rlf_report_v9e0_s { // RRCConnectionReconfigurationComplete-v1130-IEs ::= SEQUENCE struct rrc_conn_recfg_complete_v1130_ies_s { - // member variables bool conn_est_fail_info_available_r11_present = false; bool non_crit_ext_present = false; rrc_conn_recfg_complete_v1250_ies_s non_crit_ext; @@ -43810,7 +43126,6 @@ struct rrc_conn_recfg_complete_v1130_ies_s { // RRCConnectionReestablishmentComplete-v1020-IEs ::= SEQUENCE struct rrc_conn_reest_complete_v1020_ies_s { - // member variables bool log_meas_available_r10_present = false; bool non_crit_ext_present = false; rrc_conn_reest_complete_v1130_ies_s non_crit_ext; @@ -43823,7 +43138,6 @@ struct rrc_conn_reest_complete_v1020_ies_s { // RRCConnectionSetupComplete-v1130-IEs ::= SEQUENCE struct rrc_conn_setup_complete_v1130_ies_s { - // member variables bool conn_est_fail_info_available_r11_present = false; bool non_crit_ext_present = false; rrc_conn_setup_complete_v1250_ies_s non_crit_ext; @@ -43837,7 +43151,6 @@ struct rrc_conn_setup_complete_v1130_ies_s { // SL-DiscSysInfoReport-r13 ::= SEQUENCE struct sl_disc_sys_info_report_r13_s { struct disc_cell_sel_info_r13_s_ { - // member variables bool q_rx_lev_min_offset_r13_present = false; int8_t q_rx_lev_min_r13 = -70; uint8_t q_rx_lev_min_offset_r13 = 1; @@ -43889,12 +43202,11 @@ struct sl_disc_sys_info_report_r13_s { bool ul_carrier_freq_r13_present = false; bool ul_bw_r13_present = false; bool add_spec_emission_r13_present = false; - uint16_t ul_carrier_freq_r13 = 0; + uint32_t ul_carrier_freq_r13 = 0; ul_bw_r13_e_ ul_bw_r13; uint8_t add_spec_emission_r13 = 1; }; struct freq_info_v1370_s_ { - // member variables uint16_t add_spec_emission_v1370 = 33; }; @@ -43938,7 +43250,6 @@ struct sl_disc_sys_info_report_r13_s { // SL-DiscTxResourceReq-r13 ::= SEQUENCE struct sl_disc_tx_res_req_r13_s { - // member variables bool carrier_freq_disc_tx_r13_present = false; uint8_t carrier_freq_disc_tx_r13 = 1; uint8_t disc_tx_res_req_r13 = 1; @@ -43951,7 +43262,6 @@ struct sl_disc_tx_res_req_r13_s { // SL-GapFreqInfo-r13 ::= SEQUENCE struct sl_gap_freq_info_r13_s { - // member variables bool carrier_freq_r13_present = false; uint32_t carrier_freq_r13 = 0; sl_gap_pattern_list_r13_l gap_pattern_list_r13; @@ -43962,15 +43272,14 @@ struct sl_gap_freq_info_r13_s { void to_json(json_writer& j) const; }; -// SL-V2X-CommFreqList-r14 ::= SEQUENCE (SIZE (1..maxFreqV2X-r14)) OF INTEGER -typedef bounded_array sl_v2x_comm_freq_list_r14_l; +// SL-V2X-CommFreqList-r14 ::= SEQUENCE (SIZE (1..8)) OF INTEGER (0..7) +using sl_v2x_comm_freq_list_r14_l = bounded_array; -// SL-V2X-CommTxFreqList-r14 ::= SEQUENCE (SIZE (1..maxFreqV2X-r14)) OF SL-V2X-CommTxResourceReq-r14 -typedef dyn_array sl_v2x_comm_tx_freq_list_r14_l; +// SL-V2X-CommTxFreqList-r14 ::= SEQUENCE (SIZE (1..8)) OF SL-V2X-CommTxResourceReq-r14 +using sl_v2x_comm_tx_freq_list_r14_l = dyn_array; // SensingResult-r15 ::= SEQUENCE struct sensing_result_r15_s { - // member variables uint16_t res_idx_r15 = 1; // sequence methods @@ -43981,7 +43290,6 @@ struct sensing_result_r15_s { // SidelinkUEInformation-v1530-IEs ::= SEQUENCE struct sidelink_ue_info_v1530_ies_s { - // member variables bool reliability_info_list_sl_r15_present = false; bool non_crit_ext_present = false; sl_reliability_list_r15_l reliability_info_list_sl_r15; @@ -44063,7 +43371,6 @@ struct ue_radio_paging_info_r12_s { // UEAssistanceInformation-v1530-IEs ::= SEQUENCE struct ueassist_info_v1530_ies_s { struct sps_assist_info_v1530_s_ { - // member variables traffic_pattern_info_list_v1530_l traffic_pattern_info_list_sl_v1530; }; @@ -44080,7 +43387,6 @@ struct ueassist_info_v1530_ies_s { // UEInformationResponse-v1130-IEs ::= SEQUENCE struct ue_info_resp_v1130_ies_s { - // member variables bool conn_est_fail_report_r11_present = false; bool non_crit_ext_present = false; conn_est_fail_report_r11_s conn_est_fail_report_r11; @@ -44134,8 +43440,8 @@ struct affected_carrier_freq_r11_s { void to_json(json_writer& j) const; }; -// AffectedCarrierFreqCombList-r11 ::= SEQUENCE (SIZE (1..maxCombIDC-r11)) OF AffectedCarrierFreqComb-r11 -typedef dyn_array affected_carrier_freq_comb_list_r11_l; +// AffectedCarrierFreqCombList-r11 ::= SEQUENCE (SIZE (1..128)) OF AffectedCarrierFreqComb-r11 +using affected_carrier_freq_comb_list_r11_l = dyn_array; // BW-Preference-r14 ::= SEQUENCE struct bw_pref_r14_s { @@ -44172,7 +43478,6 @@ struct bw_pref_r14_s { // CounterCheckResponse-v1530-IEs ::= SEQUENCE struct counter_check_resp_v1530_ies_s { - // member variables bool drb_count_info_list_ext_r15_present = false; bool non_crit_ext_present = false; drb_count_info_list_ext_r15_l drb_count_info_list_ext_r15; @@ -44185,7 +43490,6 @@ struct counter_check_resp_v1530_ies_s { // CountingResponseInfo-r10 ::= SEQUENCE struct count_resp_info_r10_s { - // member variables bool ext = false; uint8_t count_resp_service_r10 = 0; // ... @@ -44304,18 +43608,17 @@ struct delay_budget_report_r14_c { } private: - types type_; - choice_buffer_t c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; -// IDC-SubframePatternList-r11 ::= SEQUENCE (SIZE (1..maxSubframePatternIDC-r11)) OF IDC-SubframePattern-r11 -typedef dyn_array idc_sf_pattern_list_r11_l; +// IDC-SubframePatternList-r11 ::= SEQUENCE (SIZE (1..8)) OF IDC-SubframePattern-r11 +using idc_sf_pattern_list_r11_l = dyn_array; // InDeviceCoexIndication-v1310-IEs ::= SEQUENCE struct in_dev_coex_ind_v1310_ies_s { - // member variables bool affected_carrier_freq_list_v1310_present = false; bool affected_carrier_freq_comb_list_r13_present = false; bool non_crit_ext_present = false; @@ -44329,18 +43632,17 @@ struct in_dev_coex_ind_v1310_ies_s { void to_json(json_writer& j) const; }; -// MBMS-ServiceList-r13 ::= SEQUENCE (SIZE (0..maxMBMS-ServiceListPerUE-r13)) OF MBMS-ServiceInfo-r13 -typedef dyn_array mbms_service_list_r13_l; +// MBMS-ServiceList-r13 ::= SEQUENCE (SIZE (0..15)) OF MBMS-ServiceInfo-r13 +using mbms_service_list_r13_l = dyn_array; -// MeasResultCSI-RS-List-r12 ::= SEQUENCE (SIZE (1..maxCellReport)) OF MeasResultCSI-RS-r12 -typedef dyn_array meas_result_csi_rs_list_r12_l; +// MeasResultCSI-RS-List-r12 ::= SEQUENCE (SIZE (1..8)) OF MeasResultCSI-RS-r12 +using meas_result_csi_rs_list_r12_l = dyn_array; -// MeasResultCellListSFTD-r15 ::= SEQUENCE (SIZE (1..maxCellSFTD)) OF MeasResultCellSFTD-r15 -typedef dyn_array meas_result_cell_list_sftd_r15_l; +// MeasResultCellListSFTD-r15 ::= SEQUENCE (SIZE (1..3)) OF MeasResultCellSFTD-r15 +using meas_result_cell_list_sftd_r15_l = dyn_array; // MeasResultForECID-r9 ::= SEQUENCE struct meas_result_for_ecid_r9_s { - // member variables uint16_t ue_rx_tx_time_diff_result_r9 = 0; fixed_bitstring<10> current_sfn_r9; @@ -44352,7 +43654,6 @@ struct meas_result_for_ecid_r9_s { // MeasResultForRSSI-r13 ::= SEQUENCE struct meas_result_for_rssi_r13_s { - // member variables bool ext = false; uint8_t rssi_result_r13 = 0; uint8_t ch_occupancy_r13 = 0; @@ -44364,21 +43665,20 @@ struct meas_result_for_rssi_r13_s { void to_json(json_writer& j) const; }; -// MeasResultFreqListFailNR-r15 ::= SEQUENCE (SIZE (1..maxFreqNR-r15)) OF MeasResultFreqFailNR-r15 -typedef dyn_array meas_result_freq_list_fail_nr_r15_l; +// MeasResultFreqListFailNR-r15 ::= SEQUENCE (SIZE (1..5)) OF MeasResultFreqFailNR-r15 +using meas_result_freq_list_fail_nr_r15_l = dyn_array; -// MeasResultListCBR-r14 ::= SEQUENCE (SIZE (1..maxCBR-Report-r14)) OF MeasResultCBR-r14 -typedef dyn_array meas_result_list_cbr_r14_l; +// MeasResultListCBR-r14 ::= SEQUENCE (SIZE (1..72)) OF MeasResultCBR-r14 +using meas_result_list_cbr_r14_l = dyn_array; -// MeasResultListWLAN-r13 ::= SEQUENCE (SIZE (1..maxCellReport)) OF MeasResultWLAN-r13 -typedef dyn_array meas_result_list_wlan_r13_l; +// MeasResultListWLAN-r13 ::= SEQUENCE (SIZE (1..8)) OF MeasResultWLAN-r13 +using meas_result_list_wlan_r13_l = dyn_array; -// MeasResultListWLAN-r14 ::= SEQUENCE (SIZE (1..maxWLAN-Id-Report-r14)) OF MeasResultWLAN-r13 -typedef dyn_array meas_result_list_wlan_r14_l; +// MeasResultListWLAN-r14 ::= SEQUENCE (SIZE (1..32)) OF MeasResultWLAN-r13 +using meas_result_list_wlan_r14_l = dyn_array; // MeasResultSSTD-r13 ::= SEQUENCE struct meas_result_sstd_r13_s { - // member variables uint16_t sfn_offset_result_r13 = 0; int8_t frame_boundary_offset_result_r13 = -5; uint8_t sf_boundary_offset_result_r13 = 0; @@ -44391,7 +43691,7 @@ struct meas_result_sstd_r13_s { // MeasResultSensing-r15 ::= SEQUENCE struct meas_result_sensing_r15_s { - typedef dyn_array sensing_result_r15_l_; + using sensing_result_r15_l_ = dyn_array; // member variables uint16_t sl_sf_ref_r15 = 0; @@ -44403,18 +43703,17 @@ struct meas_result_sensing_r15_s { void to_json(json_writer& j) const; }; -// MeasResultServFreqList-r10 ::= SEQUENCE (SIZE (1..maxServCell-r10)) OF MeasResultServFreq-r10 -typedef dyn_array meas_result_serv_freq_list_r10_l; +// MeasResultServFreqList-r10 ::= SEQUENCE (SIZE (1..5)) OF MeasResultServFreq-r10 +using meas_result_serv_freq_list_r10_l = dyn_array; -// MeasResultServFreqListExt-r13 ::= SEQUENCE (SIZE (1..maxServCell-r13)) OF MeasResultServFreq-r13 -typedef dyn_array meas_result_serv_freq_list_ext_r13_l; +// MeasResultServFreqListExt-r13 ::= SEQUENCE (SIZE (1..32)) OF MeasResultServFreq-r13 +using meas_result_serv_freq_list_ext_r13_l = dyn_array; -// MeasResultServFreqListNR-r15 ::= SEQUENCE (SIZE (1..maxServCell-r13)) OF MeasResultServFreqNR-r15 -typedef dyn_array meas_result_serv_freq_list_nr_r15_l; +// MeasResultServFreqListNR-r15 ::= SEQUENCE (SIZE (1..32)) OF MeasResultServFreqNR-r15 +using meas_result_serv_freq_list_nr_r15_l = dyn_array; // RRCConnectionReconfigurationComplete-v1020-IEs ::= SEQUENCE struct rrc_conn_recfg_complete_v1020_ies_s { - // member variables bool rlf_info_available_r10_present = false; bool log_meas_available_r10_present = false; bool non_crit_ext_present = false; @@ -44428,7 +43727,6 @@ struct rrc_conn_recfg_complete_v1020_ies_s { // RRCConnectionReestablishmentComplete-v8a0-IEs ::= SEQUENCE struct rrc_conn_reest_complete_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -44834,15 +44132,15 @@ struct rstd_inter_freq_info_r10_s { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; // member variables bool ext = false; - uint16_t carrier_freq_r10 = 0; + uint32_t carrier_freq_r10 = 0; uint8_t meas_prs_offset_r10 = 0; // ... // group 0 @@ -44859,7 +44157,6 @@ struct rstd_inter_freq_info_r10_s { // SCGFailureInformation-v12d0-IEs ::= SEQUENCE struct scg_fail_info_v12d0_ies_s { - // member variables bool fail_report_scg_v12d0_present = false; bool non_crit_ext_present = false; fail_report_scg_v12d0_s fail_report_scg_v12d0; @@ -44872,7 +44169,6 @@ struct scg_fail_info_v12d0_ies_s { // SL-CommTxResourceReq-r12 ::= SEQUENCE struct sl_comm_tx_res_req_r12_s { - // member variables bool carrier_freq_r12_present = false; uint32_t carrier_freq_r12 = 0; sl_dest_info_list_r12_l dest_info_list_r12; @@ -44883,19 +44179,17 @@ struct sl_comm_tx_res_req_r12_s { void to_json(json_writer& j) const; }; -// SL-DiscSysInfoReportFreqList-r13 ::= SEQUENCE (SIZE (1.. maxSL-DiscSysInfoReportFreq-r13)) OF -// SL-DiscSysInfoReport-r13 -typedef dyn_array sl_disc_sys_info_report_freq_list_r13_l; +// SL-DiscSysInfoReportFreqList-r13 ::= SEQUENCE (SIZE (1..8)) OF SL-DiscSysInfoReport-r13 +using sl_disc_sys_info_report_freq_list_r13_l = dyn_array; -// SL-DiscTxResourceReqPerFreqList-r13 ::= SEQUENCE (SIZE (1..maxFreq)) OF SL-DiscTxResourceReq-r13 -typedef dyn_array sl_disc_tx_res_req_per_freq_list_r13_l; +// SL-DiscTxResourceReqPerFreqList-r13 ::= SEQUENCE (SIZE (1..8)) OF SL-DiscTxResourceReq-r13 +using sl_disc_tx_res_req_per_freq_list_r13_l = dyn_array; -// SL-GapRequest-r13 ::= SEQUENCE (SIZE (1..maxFreq)) OF SL-GapFreqInfo-r13 -typedef dyn_array sl_gap_request_r13_l; +// SL-GapRequest-r13 ::= SEQUENCE (SIZE (1..8)) OF SL-GapFreqInfo-r13 +using sl_gap_request_r13_l = dyn_array; // SidelinkUEInformation-v1430-IEs ::= SEQUENCE struct sidelink_ue_info_v1430_ies_s { - // member variables bool v2x_comm_rx_interested_freq_list_r14_present = false; bool p2x_comm_tx_type_r14_present = false; bool v2x_comm_tx_res_req_r14_present = false; @@ -44910,12 +44204,11 @@ struct sidelink_ue_info_v1430_ies_s { void to_json(json_writer& j) const; }; -// TrafficPatternInfoList-r14 ::= SEQUENCE (SIZE (1..maxTrafficPattern-r14)) OF TrafficPatternInfo-r14 -typedef dyn_array traffic_pattern_info_list_r14_l; +// TrafficPatternInfoList-r14 ::= SEQUENCE (SIZE (1..8)) OF TrafficPatternInfo-r14 +using traffic_pattern_info_list_r14_l = dyn_array; // UE-CapabilityRAT-Container ::= SEQUENCE struct ue_cap_rat_container_s { - // member variables rat_type_e rat_type; dyn_octstring ue_cap_rat_container; @@ -44927,7 +44220,6 @@ struct ue_cap_rat_container_s { // UEAssistanceInformation-v1450-IEs ::= SEQUENCE struct ueassist_info_v1450_ies_s { - // member variables bool overheat_assist_r14_present = false; bool non_crit_ext_present = false; overheat_assist_r14_s overheat_assist_r14; @@ -44941,7 +44233,6 @@ struct ueassist_info_v1450_ies_s { // UECapabilityInformation-v1250-IEs ::= SEQUENCE struct ue_cap_info_v1250_ies_s { - // member variables bool ue_radio_paging_info_r12_present = false; bool non_crit_ext_present = false; ue_radio_paging_info_r12_s ue_radio_paging_info_r12; @@ -44954,7 +44245,6 @@ struct ue_cap_info_v1250_ies_s { // UEInformationResponse-v1020-IEs ::= SEQUENCE struct ue_info_resp_v1020_ies_s { - // member variables bool log_meas_report_r10_present = false; bool non_crit_ext_present = false; log_meas_report_r10_s log_meas_report_r10; @@ -44968,7 +44258,6 @@ struct ue_info_resp_v1020_ies_s { // UEInformationResponse-v9e0-IEs ::= SEQUENCE struct ue_info_resp_v9e0_ies_s { - // member variables bool rlf_report_v9e0_present = false; bool non_crit_ext_present = false; rlf_report_v9e0_s rlf_report_v9e0; @@ -44979,8 +44268,8 @@ struct ue_info_resp_v9e0_ies_s { void to_json(json_writer& j) const; }; -// UL-PDCP-DelayResultList-r13 ::= SEQUENCE (SIZE (1..maxQCI-r13)) OF UL-PDCP-DelayResult-r13 -typedef dyn_array ul_pdcp_delay_result_list_r13_l; +// UL-PDCP-DelayResultList-r13 ::= SEQUENCE (SIZE (1..6)) OF UL-PDCP-DelayResult-r13 +using ul_pdcp_delay_result_list_r13_l = dyn_array; // WLAN-Status-v1430 ::= ENUMERATED struct wlan_status_v1430_opts { @@ -44990,12 +44279,11 @@ struct wlan_status_v1430_opts { }; typedef enumerated wlan_status_v1430_e; -// AffectedCarrierFreqList-r11 ::= SEQUENCE (SIZE (1..maxFreqIDC-r11)) OF AffectedCarrierFreq-r11 -typedef dyn_array affected_carrier_freq_list_r11_l; +// AffectedCarrierFreqList-r11 ::= SEQUENCE (SIZE (1..32)) OF AffectedCarrierFreq-r11 +using affected_carrier_freq_list_r11_l = dyn_array; // CSFBParametersRequestCDMA2000-v8a0-IEs ::= SEQUENCE struct csfb_params_request_cdma2000_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -45006,12 +44294,11 @@ struct csfb_params_request_cdma2000_v8a0_ies_s { void to_json(json_writer& j) const; }; -// CarrierFreqListMBMS-r11 ::= SEQUENCE (SIZE (1..maxFreqMBMS-r11)) OF INTEGER -typedef bounded_array carrier_freq_list_mbms_r11_l; +// CarrierFreqListMBMS-r11 ::= SEQUENCE (SIZE (1..5)) OF INTEGER (0..262143) +using carrier_freq_list_mbms_r11_l = bounded_array; // CounterCheckResponse-v8a0-IEs ::= SEQUENCE struct counter_check_resp_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -45023,11 +44310,11 @@ struct counter_check_resp_v8a0_ies_s { void to_json(json_writer& j) const; }; -// CountingResponseList-r10 ::= SEQUENCE (SIZE (1..maxServiceCount)) OF CountingResponseInfo-r10 -typedef dyn_array count_resp_list_r10_l; +// CountingResponseList-r10 ::= SEQUENCE (SIZE (1..16)) OF CountingResponseInfo-r10 +using count_resp_list_r10_l = dyn_array; -// DRB-CountInfoList ::= SEQUENCE (SIZE (0..maxDRB)) OF DRB-CountInfo -typedef dyn_array drb_count_info_list_l; +// DRB-CountInfoList ::= SEQUENCE (SIZE (0..11)) OF DRB-CountInfo +using drb_count_info_list_l = dyn_array; // FailureReportSCG-NR-r15 ::= SEQUENCE struct fail_report_scg_nr_r15_s { @@ -45096,7 +44383,6 @@ struct fail_report_scg_r12_s { // InDeviceCoexIndication-v11d0-IEs ::= SEQUENCE struct in_dev_coex_ind_v11d0_ies_s { struct ul_ca_assist_info_r11_s_ { - // member variables bool affected_carrier_freq_comb_list_r11_present = false; affected_carrier_freq_comb_list_r11_l affected_carrier_freq_comb_list_r11; victim_sys_type_r11_s victim_sys_type_r11; @@ -45116,7 +44402,6 @@ struct in_dev_coex_ind_v11d0_ies_s { // MBMSInterestIndication-v1310-IEs ::= SEQUENCE struct mbms_interest_ind_v1310_ies_s { - // member variables bool mbms_services_r13_present = false; bool non_crit_ext_present = false; mbms_service_list_r13_l mbms_services_r13; @@ -45130,7 +44415,6 @@ struct mbms_interest_ind_v1310_ies_s { // MeasResults ::= SEQUENCE struct meas_results_s { struct meas_result_pcell_s_ { - // member variables uint8_t rsrp_result = 0; uint8_t rsrq_result = 0; }; @@ -45241,20 +44525,16 @@ struct meas_results_s { private: types type_; - choice_buffer_t + choice_buffer_t c; void destroy_(); }; struct meas_result_pcell_v1310_s_ { - // member variables uint8_t rs_sinr_result_r13 = 0; }; @@ -45307,7 +44587,6 @@ struct meas_results_s { // MeasurementReport-v8a0-IEs ::= SEQUENCE struct meas_report_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -45320,7 +44599,6 @@ struct meas_report_v8a0_ies_s { // ProximityIndication-v930-IEs ::= SEQUENCE struct proximity_ind_v930_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -45334,13 +44612,11 @@ struct proximity_ind_v930_ies_s { // RLF-Report-r9 ::= SEQUENCE struct rlf_report_r9_s { struct meas_result_last_serv_cell_r9_s_ { - // member variables bool rsrq_result_r9_present = false; uint8_t rsrp_result_r9 = 0; uint8_t rsrq_result_r9 = 0; }; struct meas_result_neigh_cells_r9_s_ { - // member variables bool meas_result_list_eutra_r9_present = false; bool meas_result_list_utra_r9_present = false; bool meas_result_list_geran_r9_present = false; @@ -45352,9 +44628,8 @@ struct rlf_report_r9_s { }; struct failed_pcell_id_r10_c_ { struct pci_arfcn_r10_s_ { - // member variables uint16_t pci_r10 = 0; - uint16_t carrier_freq_r10 = 0; + uint32_t carrier_freq_r10 = 0; }; struct types_opts { enum options { cell_global_id_r10, pci_arfcn_r10, nulltype } value; @@ -45406,8 +44681,8 @@ struct rlf_report_r9_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -45418,7 +44693,6 @@ struct rlf_report_r9_s { }; typedef enumerated conn_fail_type_r10_e_; struct failed_pcell_id_v1090_s_ { - // member variables uint32_t carrier_freq_v1090 = 65536; }; struct basic_fields_r11_s_ { @@ -45488,8 +44762,8 @@ struct rlf_report_r9_s { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -45552,8 +44826,8 @@ struct rlf_report_r9_s { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -45563,7 +44837,6 @@ struct rlf_report_r9_s { pci_r11_c_ pci_r11; }; struct failed_pcell_id_v1250_s_ { - // member variables fixed_bitstring<16> tac_failed_pcell_r12; }; @@ -45611,7 +44884,6 @@ struct rlf_report_r9_s { // RRCConnectionReconfigurationComplete-v8a0-IEs ::= SEQUENCE struct rrc_conn_recfg_complete_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -45625,7 +44897,6 @@ struct rrc_conn_recfg_complete_v8a0_ies_s { // RRCConnectionReestablishmentComplete-v920-IEs ::= SEQUENCE struct rrc_conn_reest_complete_v920_ies_s { - // member variables bool rlf_info_available_r9_present = false; bool non_crit_ext_present = false; rrc_conn_reest_complete_v8a0_ies_s non_crit_ext; @@ -45638,7 +44909,6 @@ struct rrc_conn_reest_complete_v920_ies_s { // RRCConnectionResumeComplete-v1530-IEs ::= SEQUENCE struct rrc_conn_resume_complete_v1530_ies_s { - // member variables bool log_meas_available_bt_r15_present = false; bool log_meas_available_wlan_r15_present = false; bool idle_meas_available_r15_present = false; @@ -45653,7 +44923,6 @@ struct rrc_conn_resume_complete_v1530_ies_s { // RRCConnectionSetupComplete-v8a0-IEs ::= SEQUENCE struct rrc_conn_setup_complete_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -45665,12 +44934,11 @@ struct rrc_conn_setup_complete_v8a0_ies_s { void to_json(json_writer& j) const; }; -// RSTD-InterFreqInfoList-r10 ::= SEQUENCE (SIZE(1..maxRSTD-Freq-r10)) OF RSTD-InterFreqInfo-r10 -typedef dyn_array rstd_inter_freq_info_list_r10_l; +// RSTD-InterFreqInfoList-r10 ::= SEQUENCE (SIZE (1..3)) OF RSTD-InterFreqInfo-r10 +using rstd_inter_freq_info_list_r10_l = dyn_array; // RegisteredMME ::= SEQUENCE struct registered_mme_s { - // member variables bool plmn_id_present = false; plmn_id_s plmn_id; fixed_bitstring<16> mmegi; @@ -45684,7 +44952,6 @@ struct registered_mme_s { // SCGFailureInformation-v1310-IEs ::= SEQUENCE struct scg_fail_info_v1310_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -45697,7 +44964,6 @@ struct scg_fail_info_v1310_ies_s { // SecurityModeComplete-v8a0-IEs ::= SEQUENCE struct security_mode_complete_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -45710,7 +44976,6 @@ struct security_mode_complete_v8a0_ies_s { // SecurityModeFailure-v8a0-IEs ::= SEQUENCE struct security_mode_fail_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -45739,7 +45004,6 @@ struct sidelink_ue_info_v1310_ies_s { ue_type_r13_e_ ue_type_r13; }; struct disc_tx_res_req_v1310_s_ { - // member variables bool carrier_freq_disc_tx_r13_present = false; bool disc_tx_res_req_add_freq_r13_present = false; uint8_t carrier_freq_disc_tx_r13 = 1; @@ -45793,7 +45057,7 @@ struct tdm_assist_info_r11_c { // member variables bool drx_offset_r11_present = false; drx_cycle_len_r11_e_ drx_cycle_len_r11; - uint8_t drx_offset_r11 = 0; + uint16_t drx_offset_r11 = 0; drx_active_time_r11_e_ drx_active_time_r11; }; struct types_opts { @@ -45846,19 +45110,18 @@ struct tdm_assist_info_r11_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; -// UE-CapabilityRAT-ContainerList ::= SEQUENCE (SIZE (0..maxRAT-Capabilities)) OF UE-CapabilityRAT-Container -typedef dyn_array ue_cap_rat_container_list_l; +// UE-CapabilityRAT-ContainerList ::= SEQUENCE (SIZE (0..8)) OF UE-CapabilityRAT-Container +using ue_cap_rat_container_list_l = dyn_array; // UEAssistanceInformation-v1430-IEs ::= SEQUENCE struct ueassist_info_v1430_ies_s { struct sps_assist_info_r14_s_ { - // member variables bool traffic_pattern_info_list_sl_r14_present = false; bool traffic_pattern_info_list_ul_r14_present = false; traffic_pattern_info_list_r14_l traffic_pattern_info_list_sl_r14; @@ -45906,7 +45169,6 @@ struct ueassist_info_v1430_ies_s { // UECapabilityInformation-v8a0-IEs ::= SEQUENCE struct ue_cap_info_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -45920,7 +45182,6 @@ struct ue_cap_info_v8a0_ies_s { // UEInformationResponse-v930-IEs ::= SEQUENCE struct ue_info_resp_v930_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -45934,7 +45195,6 @@ struct ue_info_resp_v930_ies_s { // ULHandoverPreparationTransfer-v8a0-IEs ::= SEQUENCE struct ul_ho_prep_transfer_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -45947,7 +45207,6 @@ struct ul_ho_prep_transfer_v8a0_ies_s { // ULInformationTransfer-v8a0-IEs ::= SEQUENCE struct ul_info_transfer_v8a0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -45960,7 +45219,7 @@ struct ul_info_transfer_v8a0_ies_s { // WLAN-Status-r13 ::= ENUMERATED struct wlan_status_r13_opts { - enum options { successful_association, fail_wlan_radio_link, fail_wlan_unavailable, fail_timeout, nulltype } value; + enum options { successful_assoc, fail_wlan_radio_link, fail_wlan_unavailable, fail_timeout, nulltype } value; std::string to_string() const; }; @@ -45968,7 +45227,6 @@ typedef enumerated wlan_status_r13_e; // WLANConnectionStatusReport-v1430-IEs ::= SEQUENCE struct wlan_conn_status_report_v1430_ies_s { - // member variables bool non_crit_ext_present = false; wlan_status_v1430_e wlan_status_v1430; @@ -45980,7 +45238,6 @@ struct wlan_conn_status_report_v1430_ies_s { // CSFBParametersRequestCDMA2000-r8-IEs ::= SEQUENCE struct csfb_params_request_cdma2000_r8_ies_s { - // member variables bool non_crit_ext_present = false; csfb_params_request_cdma2000_v8a0_ies_s non_crit_ext; @@ -45992,7 +45249,6 @@ struct csfb_params_request_cdma2000_r8_ies_s { // CounterCheckResponse-r8-IEs ::= SEQUENCE struct counter_check_resp_r8_ies_s { - // member variables bool non_crit_ext_present = false; drb_count_info_list_l drb_count_info_list; counter_check_resp_v8a0_ies_s non_crit_ext; @@ -46039,7 +45295,6 @@ struct failed_lc_ch_info_r15_s { // InDeviceCoexIndication-r11-IEs ::= SEQUENCE struct in_dev_coex_ind_r11_ies_s { - // member variables bool affected_carrier_freq_list_r11_present = false; bool tdm_assist_info_r11_present = false; bool late_non_crit_ext_present = false; @@ -46059,7 +45314,6 @@ struct in_dev_coex_ind_r11_ies_s { struct inter_freq_rstd_meas_ind_r10_ies_s { struct rstd_inter_freq_ind_r10_c_ { struct start_s_ { - // member variables rstd_inter_freq_info_list_r10_l rstd_inter_freq_info_list_r10; }; struct types_opts { @@ -46112,7 +45366,6 @@ struct inter_freq_rstd_meas_ind_r10_ies_s { // MBMSCountingResponse-r10-IEs ::= SEQUENCE struct mbms_count_resp_r10_ies_s { - // member variables bool mbsfn_area_idx_r10_present = false; bool count_resp_list_r10_present = false; bool late_non_crit_ext_present = false; @@ -46129,7 +45382,6 @@ struct mbms_count_resp_r10_ies_s { // MBMSInterestIndication-r11-IEs ::= SEQUENCE struct mbms_interest_ind_r11_ies_s { - // member variables bool mbms_freq_list_r11_present = false; bool mbms_prio_r11_present = false; bool late_non_crit_ext_present = false; @@ -46168,7 +45420,6 @@ struct meas_report_app_layer_r15_ies_s { // MeasurementReport-r8-IEs ::= SEQUENCE struct meas_report_r8_ies_s { - // member variables bool non_crit_ext_present = false; meas_results_s meas_results; meas_report_v8a0_ies_s non_crit_ext; @@ -46208,10 +45459,10 @@ struct proximity_ind_r9_ies_s { SRSASN_CODE unpack(bit_ref& bref); void to_json(json_writer& j) const; // getters - uint16_t& eutra_r9() + uint32_t& eutra_r9() { assert_choice_type("eutra-r9", type_.to_string(), "carrierFreq-r9"); - return c.get(); + return c.get(); } uint16_t& utra_r9() { @@ -46223,10 +45474,10 @@ struct proximity_ind_r9_ies_s { assert_choice_type("eutra2-v9e0", type_.to_string(), "carrierFreq-r9"); return c.get(); } - const uint16_t& eutra_r9() const + const uint32_t& eutra_r9() const { assert_choice_type("eutra-r9", type_.to_string(), "carrierFreq-r9"); - return c.get(); + return c.get(); } const uint16_t& utra_r9() const { @@ -46238,10 +45489,10 @@ struct proximity_ind_r9_ies_s { assert_choice_type("eutra2-v9e0", type_.to_string(), "carrierFreq-r9"); return c.get(); } - uint16_t& set_eutra_r9() + uint32_t& set_eutra_r9() { set(types::eutra_r9); - return c.get(); + return c.get(); } uint16_t& set_utra_r9() { @@ -46255,8 +45506,8 @@ struct proximity_ind_r9_ies_s { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; @@ -46275,7 +45526,6 @@ struct proximity_ind_r9_ies_s { // RNReconfigurationComplete-r10-IEs ::= SEQUENCE struct rn_recfg_complete_r10_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -46288,7 +45538,6 @@ struct rn_recfg_complete_r10_ies_s { // RRCConnectionReconfigurationComplete-r8-IEs ::= SEQUENCE struct rrc_conn_recfg_complete_r8_ies_s { - // member variables bool non_crit_ext_present = false; rrc_conn_recfg_complete_v8a0_ies_s non_crit_ext; @@ -46300,7 +45549,6 @@ struct rrc_conn_recfg_complete_r8_ies_s { // RRCConnectionReestablishmentComplete-r8-IEs ::= SEQUENCE struct rrc_conn_reest_complete_r8_ies_s { - // member variables bool non_crit_ext_present = false; rrc_conn_reest_complete_v920_ies_s non_crit_ext; @@ -46344,7 +45592,6 @@ struct rrc_conn_resume_complete_r13_ies_s { // RRCConnectionSetupComplete-r8-IEs ::= SEQUENCE struct rrc_conn_setup_complete_r8_ies_s { - // member variables bool registered_mme_present = false; bool non_crit_ext_present = false; uint8_t sel_plmn_id = 1; @@ -46360,7 +45607,6 @@ struct rrc_conn_setup_complete_r8_ies_s { // SCGFailureInformation-r12-IEs ::= SEQUENCE struct scg_fail_info_r12_ies_s { - // member variables bool fail_report_scg_r12_present = false; bool non_crit_ext_present = false; fail_report_scg_r12_s fail_report_scg_r12; @@ -46374,7 +45620,6 @@ struct scg_fail_info_r12_ies_s { // SCGFailureInformationNR-r15-IEs ::= SEQUENCE struct scg_fail_info_nr_r15_ies_s { - // member variables bool fail_report_scg_nr_r15_present = false; bool non_crit_ext_present = false; fail_report_scg_nr_r15_s fail_report_scg_nr_r15; @@ -46387,7 +45632,6 @@ struct scg_fail_info_nr_r15_ies_s { // SecurityModeComplete-r8-IEs ::= SEQUENCE struct security_mode_complete_r8_ies_s { - // member variables bool non_crit_ext_present = false; security_mode_complete_v8a0_ies_s non_crit_ext; @@ -46399,7 +45643,6 @@ struct security_mode_complete_r8_ies_s { // SecurityModeFailure-r8-IEs ::= SEQUENCE struct security_mode_fail_r8_ies_s { - // member variables bool non_crit_ext_present = false; security_mode_fail_v8a0_ies_s non_crit_ext; @@ -46411,7 +45654,6 @@ struct security_mode_fail_r8_ies_s { // SidelinkUEInformation-r12-IEs ::= SEQUENCE struct sidelink_ue_info_r12_ies_s { - // member variables bool comm_rx_interested_freq_r12_present = false; bool comm_tx_res_req_r12_present = false; bool disc_rx_interest_r12_present = false; @@ -46455,7 +45697,6 @@ struct ueassist_info_r11_ies_s { // UECapabilityInformation-r8-IEs ::= SEQUENCE struct ue_cap_info_r8_ies_s { - // member variables bool non_crit_ext_present = false; ue_cap_rat_container_list_l ue_cap_rat_container_list; ue_cap_info_v8a0_ies_s non_crit_ext; @@ -46469,7 +45710,6 @@ struct ue_cap_info_r8_ies_s { // UEInformationResponse-r9-IEs ::= SEQUENCE struct ue_info_resp_r9_ies_s { struct rach_report_r9_s_ { - // member variables uint8_t nof_preambs_sent_r9 = 1; bool contention_detected_r9 = false; }; @@ -46490,7 +45730,6 @@ struct ue_info_resp_r9_ies_s { // ULHandoverPreparationTransfer-r8-IEs ::= SEQUENCE struct ul_ho_prep_transfer_r8_ies_s { - // member variables bool meid_present = false; bool non_crit_ext_present = false; cdma2000_type_e cdma2000_type; @@ -46572,8 +45811,8 @@ struct ul_info_transfer_r8_ies_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -46591,7 +45830,6 @@ struct ul_info_transfer_r8_ies_s { // ULInformationTransferMRDC-r15-IEs ::= SEQUENCE struct ul_info_transfer_mrdc_r15_ies_s { - // member variables bool ul_dcch_msg_nr_r15_present = false; bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; @@ -46606,7 +45844,6 @@ struct ul_info_transfer_mrdc_r15_ies_s { // WLANConnectionStatusReport-r13-IEs ::= SEQUENCE struct wlan_conn_status_report_r13_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; wlan_status_r13_e wlan_status_r13; @@ -46659,8 +45896,8 @@ struct csfb_params_request_cdma2000_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -46712,8 +45949,8 @@ struct counter_check_resp_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -46730,7 +45967,6 @@ struct counter_check_resp_s { // FailureInformation-r15 ::= SEQUENCE struct fail_info_r15_s { - // member variables bool failed_lc_ch_info_r15_present = false; failed_lc_ch_info_r15_s failed_lc_ch_info_r15; @@ -46809,8 +46045,8 @@ struct in_dev_coex_ind_r11_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -46893,8 +46129,8 @@ struct inter_freq_rstd_meas_ind_r10_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -46977,8 +46213,8 @@ struct mbms_count_resp_r10_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -47061,8 +46297,8 @@ struct mbms_interest_ind_r11_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -47114,8 +46350,8 @@ struct meas_report_app_layer_r15_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -47198,8 +46434,8 @@ struct meas_report_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -47282,8 +46518,8 @@ struct proximity_ind_r9_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -47366,8 +46602,8 @@ struct rn_recfg_complete_r10_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -47420,8 +46656,8 @@ struct rrc_conn_recfg_complete_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -47474,8 +46710,8 @@ struct rrc_conn_reest_complete_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -47528,8 +46764,8 @@ struct rrc_conn_resume_complete_r13_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -47613,8 +46849,8 @@ struct rrc_conn_setup_complete_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -47698,8 +46934,8 @@ struct scg_fail_info_r12_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -47782,8 +47018,8 @@ struct scg_fail_info_nr_r15_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -47835,8 +47071,8 @@ struct security_mode_complete_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -47889,8 +47125,8 @@ struct security_mode_fail_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -47974,8 +47210,8 @@ struct sidelink_ue_info_r12_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -48058,8 +47294,8 @@ struct ueassist_info_r11_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -48142,8 +47378,8 @@ struct ue_cap_info_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -48227,8 +47463,8 @@ struct ue_info_resp_r9_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -48312,8 +47548,8 @@ struct ul_ho_prep_transfer_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -48396,8 +47632,8 @@ struct ul_info_transfer_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -48480,8 +47716,8 @@ struct ul_info_transfer_mrdc_r15_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -48564,8 +47800,8 @@ struct wlan_conn_status_report_r13_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -48863,22 +48099,22 @@ struct ul_dcch_msg_type_c { private: types type_; - choice_buffer_t + choice_buffer_t c; void destroy_(); @@ -49089,22 +48325,17 @@ struct ul_dcch_msg_type_c { private: types type_; - choice_buffer_t + choice_buffer_t c; void destroy_(); @@ -49146,8 +48377,8 @@ struct ul_dcch_msg_type_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -49203,15 +48434,14 @@ struct ul_dcch_msg_type_c { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; // UL-DCCH-Message ::= SEQUENCE struct ul_dcch_msg_s { - // member variables ul_dcch_msg_type_c msg; // sequence methods @@ -49222,7 +48452,6 @@ struct ul_dcch_msg_s { // InterFreqBandInfo ::= SEQUENCE struct inter_freq_band_info_s { - // member variables bool inter_freq_need_for_gaps = false; // sequence methods @@ -49233,7 +48462,6 @@ struct inter_freq_band_info_s { // InterRAT-BandInfo ::= SEQUENCE struct inter_rat_band_info_s { - // member variables bool inter_rat_need_for_gaps = false; // sequence methods @@ -49242,15 +48470,14 @@ struct inter_rat_band_info_s { void to_json(json_writer& j) const; }; -// InterFreqBandList ::= SEQUENCE (SIZE (1..maxBands)) OF InterFreqBandInfo -typedef dyn_array inter_freq_band_list_l; +// InterFreqBandList ::= SEQUENCE (SIZE (1..64)) OF InterFreqBandInfo +using inter_freq_band_list_l = dyn_array; -// InterRAT-BandList ::= SEQUENCE (SIZE (1..maxBands)) OF InterRAT-BandInfo -typedef dyn_array inter_rat_band_list_l; +// InterRAT-BandList ::= SEQUENCE (SIZE (1..64)) OF InterRAT-BandInfo +using inter_rat_band_list_l = dyn_array; // BandInfoEUTRA ::= SEQUENCE struct band_info_eutra_s { - // member variables bool inter_rat_band_list_present = false; inter_freq_band_list_l inter_freq_band_list; inter_rat_band_list_l inter_rat_band_list; @@ -49261,8 +48488,8 @@ struct band_info_eutra_s { void to_json(json_writer& j) const; }; -// BandCombinationListEUTRA-r10 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandInfoEUTRA -typedef dyn_array band_combination_list_eutra_r10_l; +// BandCombinationListEUTRA-r10 ::= SEQUENCE (SIZE (1..128)) OF BandInfoEUTRA +using band_combination_list_eutra_r10_l = dyn_array; // MIMO-CapabilityDL-r10 ::= ENUMERATED struct mimo_cap_dl_r10_opts { @@ -49286,7 +48513,6 @@ typedef enumerated mimo_cap_ul_r10_e; // CA-MIMO-ParametersDL-r10 ::= SEQUENCE struct ca_mimo_params_dl_r10_s { - // member variables bool supported_mimo_cap_dl_r10_present = false; ca_bw_class_r10_e ca_bw_class_dl_r10; mimo_cap_dl_r10_e supported_mimo_cap_dl_r10; @@ -49299,7 +48525,6 @@ struct ca_mimo_params_dl_r10_s { // CA-MIMO-ParametersUL-r10 ::= SEQUENCE struct ca_mimo_params_ul_r10_s { - // member variables bool supported_mimo_cap_ul_r10_present = false; ca_bw_class_r10_e ca_bw_class_ul_r10; mimo_cap_ul_r10_e supported_mimo_cap_ul_r10; @@ -49310,15 +48535,14 @@ struct ca_mimo_params_ul_r10_s { void to_json(json_writer& j) const; }; -// BandParametersDL-r10 ::= SEQUENCE (SIZE (1..maxBandwidthClass-r10)) OF CA-MIMO-ParametersDL-r10 -typedef dyn_array band_params_dl_r10_l; +// BandParametersDL-r10 ::= SEQUENCE (SIZE (1..16)) OF CA-MIMO-ParametersDL-r10 +using band_params_dl_r10_l = dyn_array; -// BandParametersUL-r10 ::= SEQUENCE (SIZE (1..maxBandwidthClass-r10)) OF CA-MIMO-ParametersUL-r10 -typedef dyn_array band_params_ul_r10_l; +// BandParametersUL-r10 ::= SEQUENCE (SIZE (1..16)) OF CA-MIMO-ParametersUL-r10 +using band_params_ul_r10_l = dyn_array; // BandParameters-r10 ::= SEQUENCE struct band_params_r10_s { - // member variables bool band_params_ul_r10_present = false; bool band_params_dl_r10_present = false; uint8_t band_eutra_r10 = 1; @@ -49331,8 +48555,8 @@ struct band_params_r10_s { void to_json(json_writer& j) const; }; -// BandCombinationParameters-r10 ::= SEQUENCE (SIZE (1..maxSimultaneousBands-r10)) OF BandParameters-r10 -typedef dyn_array band_combination_params_r10_l; +// BandCombinationParameters-r10 ::= SEQUENCE (SIZE (1..64)) OF BandParameters-r10 +using band_combination_params_r10_l = dyn_array; // BandParameters-r11 ::= SEQUENCE struct band_params_r11_s { @@ -49362,16 +48586,16 @@ struct band_params_r11_s { // BandCombinationParameters-r11 ::= SEQUENCE struct band_combination_params_r11_s { - typedef dyn_array band_param_list_r11_l_; + using band_param_list_r11_l_ = dyn_array; // member variables - bool ext = false; - bool supported_bw_combination_set_r11_present = false; - bool multiple_timing_advance_r11_present = false; - bool simul_rx_tx_r11_present = false; - band_param_list_r11_l_ band_param_list_r11; - dyn_bitstring supported_bw_combination_set_r11; - band_info_eutra_s band_info_eutra_r11; + bool ext = false; + bool supported_bw_combination_set_r11_present = false; + bool multiple_timing_advance_r11_present = false; + bool simul_rx_tx_r11_present = false; + band_param_list_r11_l_ band_param_list_r11; + bounded_bitstring<1, 32> supported_bw_combination_set_r11; + band_info_eutra_s band_info_eutra_r11; // ... // sequence methods @@ -49406,7 +48630,7 @@ struct intra_band_contiguous_cc_info_r12_s { // CA-MIMO-ParametersDL-r13 ::= SEQUENCE struct ca_mimo_params_dl_r13_s { - typedef dyn_array intra_band_contiguous_cc_info_list_r13_l_; + using intra_band_contiguous_cc_info_list_r13_l_ = dyn_array; // member variables bool supported_mimo_cap_dl_r13_present = false; @@ -49455,7 +48679,7 @@ struct band_params_r13_s { // BandCombinationParameters-r13 ::= SEQUENCE struct band_combination_params_r13_s { - typedef dyn_array band_param_list_r13_l_; + using band_param_list_r13_l_ = dyn_array; struct dc_support_r13_s_ { struct supported_cell_grouping_r13_c_ { struct types_opts { @@ -49525,8 +48749,8 @@ struct band_combination_params_r13_s { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -49538,19 +48762,19 @@ struct band_combination_params_r13_s { }; // member variables - bool different_fallback_supported_r13_present = false; - bool supported_bw_combination_set_r13_present = false; - bool multiple_timing_advance_r13_present = false; - bool simul_rx_tx_r13_present = false; - bool dc_support_r13_present = false; - bool supported_naics_minus2_crs_ap_r13_present = false; - bool comm_supported_bands_per_bc_r13_present = false; - band_param_list_r13_l_ band_param_list_r13; - dyn_bitstring supported_bw_combination_set_r13; - band_info_eutra_s band_info_eutra_r13; - dc_support_r13_s_ dc_support_r13; - dyn_bitstring supported_naics_minus2_crs_ap_r13; - dyn_bitstring comm_supported_bands_per_bc_r13; + bool different_fallback_supported_r13_present = false; + bool supported_bw_combination_set_r13_present = false; + bool multiple_timing_advance_r13_present = false; + bool simul_rx_tx_r13_present = false; + bool dc_support_r13_present = false; + bool supported_naics_minus2_crs_ap_r13_present = false; + bool comm_supported_bands_per_bc_r13_present = false; + band_param_list_r13_l_ band_param_list_r13; + bounded_bitstring<1, 32> supported_bw_combination_set_r13; + band_info_eutra_s band_info_eutra_r13; + dc_support_r13_s_ dc_support_r13; + bounded_bitstring<1, 8> supported_naics_minus2_crs_ap_r13; + bounded_bitstring<1, 64> comm_supported_bands_per_bc_r13; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -49560,7 +48784,6 @@ struct band_combination_params_r13_s { // BandParameters-v1090 ::= SEQUENCE struct band_params_v1090_s { - // member variables bool ext = false; bool band_eutra_v1090_present = false; uint16_t band_eutra_v1090 = 65; @@ -49572,12 +48795,11 @@ struct band_params_v1090_s { void to_json(json_writer& j) const; }; -// BandCombinationParameters-v1090 ::= SEQUENCE (SIZE (1..maxSimultaneousBands-r10)) OF BandParameters-v1090 -typedef dyn_array band_combination_params_v1090_l; +// BandCombinationParameters-v1090 ::= SEQUENCE (SIZE (1..64)) OF BandParameters-v1090 +using band_combination_params_v1090_l = dyn_array; // CA-MIMO-ParametersDL-v10i0 ::= SEQUENCE struct ca_mimo_params_dl_v10i0_s { - // member variables bool four_layer_tm3_tm4_r10_present = false; // sequence methods @@ -49588,7 +48810,7 @@ struct ca_mimo_params_dl_v10i0_s { // BandParameters-v10i0 ::= SEQUENCE struct band_params_v10i0_s { - typedef dyn_array band_params_dl_v10i0_l_; + using band_params_dl_v10i0_l_ = dyn_array; // member variables band_params_dl_v10i0_l_ band_params_dl_v10i0; @@ -49601,7 +48823,7 @@ struct band_params_v10i0_s { // BandCombinationParameters-v10i0 ::= SEQUENCE struct band_combination_params_v10i0_s { - typedef dyn_array band_param_list_v10i0_l_; + using band_param_list_v10i0_l_ = dyn_array; // member variables bool band_param_list_v10i0_present = false; @@ -49635,7 +48857,7 @@ struct band_params_v1130_s { // BandCombinationParameters-v1130 ::= SEQUENCE struct band_combination_params_v1130_s { - typedef dyn_array band_param_list_r11_l_; + using band_param_list_r11_l_ = dyn_array; // member variables bool ext = false; @@ -49722,8 +48944,8 @@ struct band_combination_params_v1250_s { } private: - types type_; - choice_buffer_t)> c; + types type_; + choice_buffer_t > c; void destroy_(); }; @@ -49735,13 +48957,13 @@ struct band_combination_params_v1250_s { }; // member variables - bool ext = false; - bool dc_support_r12_present = false; - bool supported_naics_minus2_crs_ap_r12_present = false; - bool comm_supported_bands_per_bc_r12_present = false; - dc_support_r12_s_ dc_support_r12; - dyn_bitstring supported_naics_minus2_crs_ap_r12; - dyn_bitstring comm_supported_bands_per_bc_r12; + bool ext = false; + bool dc_support_r12_present = false; + bool supported_naics_minus2_crs_ap_r12_present = false; + bool comm_supported_bands_per_bc_r12_present = false; + dc_support_r12_s_ dc_support_r12; + bounded_bitstring<1, 8> supported_naics_minus2_crs_ap_r12; + bounded_bitstring<1, 64> comm_supported_bands_per_bc_r12; // ... // sequence methods @@ -49752,7 +48974,7 @@ struct band_combination_params_v1250_s { // CA-MIMO-ParametersDL-v1270 ::= SEQUENCE struct ca_mimo_params_dl_v1270_s { - typedef dyn_array intra_band_contiguous_cc_info_list_r12_l_; + using intra_band_contiguous_cc_info_list_r12_l_ = dyn_array; // member variables intra_band_contiguous_cc_info_list_r12_l_ intra_band_contiguous_cc_info_list_r12; @@ -49765,7 +48987,7 @@ struct ca_mimo_params_dl_v1270_s { // BandParameters-v1270 ::= SEQUENCE struct band_params_v1270_s { - typedef dyn_array band_params_dl_v1270_l_; + using band_params_dl_v1270_l_ = dyn_array; // member variables band_params_dl_v1270_l_ band_params_dl_v1270; @@ -49778,7 +49000,7 @@ struct band_params_v1270_s { // BandCombinationParameters-v1270 ::= SEQUENCE struct band_combination_params_v1270_s { - typedef dyn_array band_param_list_v1270_l_; + using band_param_list_v1270_l_ = dyn_array; // member variables bool band_param_list_v1270_present = false; @@ -49791,11 +49013,10 @@ struct band_combination_params_v1270_s { }; // MIMO-BeamformedCapabilities-r13 ::= SEQUENCE -struct mimo_beamformed_capabilities_r13_s { - // member variables - bool n_max_list_r13_present = false; - uint8_t k_max_r13 = 1; - dyn_bitstring n_max_list_r13; +struct mimo_bf_cap_r13_s { + bool n_max_list_r13_present = false; + uint8_t k_max_r13 = 1; + bounded_bitstring<1, 7> n_max_list_r13; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -49803,12 +49024,11 @@ struct mimo_beamformed_capabilities_r13_s { void to_json(json_writer& j) const; }; -// MIMO-BeamformedCapabilityList-r13 ::= SEQUENCE (SIZE (1..maxCSI-Proc-r11)) OF MIMO-BeamformedCapabilities-r13 -typedef dyn_array mimo_beamformed_cap_list_r13_l; +// MIMO-BeamformedCapabilityList-r13 ::= SEQUENCE (SIZE (1..4)) OF MIMO-BeamformedCapabilities-r13 +using mimo_bf_cap_list_r13_l = dyn_array; // MIMO-NonPrecodedCapabilities-r13 ::= SEQUENCE -struct mimo_non_precoded_capabilities_r13_s { - // member variables +struct mimo_non_precoded_cap_r13_s { bool cfg1_r13_present = false; bool cfg2_r13_present = false; bool cfg3_r13_present = false; @@ -49822,12 +49042,11 @@ struct mimo_non_precoded_capabilities_r13_s { // MIMO-CA-ParametersPerBoBCPerTM-r13 ::= SEQUENCE struct mimo_ca_params_per_bo_bc_per_tm_r13_s { - // member variables - bool non_precoded_r13_present = false; - bool beamformed_r13_present = false; - bool dmrs_enhance_r13_present = false; - mimo_non_precoded_capabilities_r13_s non_precoded_r13; - mimo_beamformed_cap_list_r13_l beamformed_r13; + bool non_precoded_r13_present = false; + bool bf_r13_present = false; + bool dmrs_enhance_r13_present = false; + mimo_non_precoded_cap_r13_s non_precoded_r13; + mimo_bf_cap_list_r13_l bf_r13; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -49837,7 +49056,6 @@ struct mimo_ca_params_per_bo_bc_per_tm_r13_s { // MIMO-CA-ParametersPerBoBC-r13 ::= SEQUENCE struct mimo_ca_params_per_bo_bc_r13_s { - // member variables bool params_tm9_r13_present = false; bool params_tm10_r13_present = false; mimo_ca_params_per_bo_bc_per_tm_r13_s params_tm9_r13; @@ -49851,7 +49069,6 @@ struct mimo_ca_params_per_bo_bc_r13_s { // BandParameters-v1320 ::= SEQUENCE struct band_params_v1320_s { - // member variables mimo_ca_params_per_bo_bc_r13_s band_params_dl_v1320; // sequence methods @@ -49862,7 +49079,7 @@ struct band_params_v1320_s { // BandCombinationParameters-v1320 ::= SEQUENCE struct band_combination_params_v1320_s { - typedef dyn_array band_param_list_v1320_l_; + using band_param_list_v1320_l_ = dyn_array; // member variables bool band_param_list_v1320_present = false; @@ -49877,7 +49094,6 @@ struct band_combination_params_v1320_s { // BandParameters-v1380 ::= SEQUENCE struct band_params_v1380_s { - // member variables bool tx_ant_switch_dl_r13_present = false; bool tx_ant_switch_ul_r13_present = false; uint8_t tx_ant_switch_dl_r13 = 1; @@ -49891,7 +49107,7 @@ struct band_params_v1380_s { // BandCombinationParameters-v1380 ::= SEQUENCE struct band_combination_params_v1380_s { - typedef dyn_array band_param_list_v1380_l_; + using band_param_list_v1380_l_ = dyn_array; // member variables bool band_param_list_v1380_present = false; @@ -49905,7 +49121,6 @@ struct band_combination_params_v1380_s { // MIMO-CA-ParametersPerBoBCPerTM-v1430 ::= SEQUENCE struct mimo_ca_params_per_bo_bc_per_tm_v1430_s { - // member variables bool csi_report_np_r14_present = false; bool csi_report_advanced_r14_present = false; @@ -49917,7 +49132,6 @@ struct mimo_ca_params_per_bo_bc_per_tm_v1430_s { // MIMO-CA-ParametersPerBoBC-v1430 ::= SEQUENCE struct mimo_ca_params_per_bo_bc_v1430_s { - // member variables bool params_tm9_v1430_present = false; bool params_tm10_v1430_present = false; mimo_ca_params_per_bo_bc_per_tm_v1430_s params_tm9_v1430; @@ -50005,7 +49219,6 @@ struct retuning_time_info_r14_s { // UL-256QAM-perCC-Info-r14 ::= SEQUENCE struct ul_minus256_qam_per_cc_info_r14_s { - // member variables bool ul_minus256_qam_per_cc_r14_present = false; // sequence methods @@ -50016,8 +49229,8 @@ struct ul_minus256_qam_per_cc_info_r14_s { // BandParameters-v1430 ::= SEQUENCE struct band_params_v1430_s { - typedef dyn_array ul_minus256_qam_per_cc_info_list_r14_l_; - typedef dyn_array retuning_time_info_band_list_r14_l_; + using ul_minus256_qam_per_cc_info_list_r14_l_ = dyn_array; + using retuning_time_info_band_list_r14_l_ = dyn_array; // member variables bool band_params_dl_v1430_present = false; @@ -50036,15 +49249,15 @@ struct band_params_v1430_s { // BandCombinationParameters-v1430 ::= SEQUENCE struct band_combination_params_v1430_s { - typedef dyn_array band_param_list_v1430_l_; + using band_param_list_v1430_l_ = dyn_array; // member variables - bool band_param_list_v1430_present = false; - bool v2x_supported_tx_band_comb_list_per_bc_r14_present = false; - bool v2x_supported_rx_band_comb_list_per_bc_r14_present = false; - band_param_list_v1430_l_ band_param_list_v1430; - dyn_bitstring v2x_supported_tx_band_comb_list_per_bc_r14; - dyn_bitstring v2x_supported_rx_band_comb_list_per_bc_r14; + bool band_param_list_v1430_present = false; + bool v2x_supported_tx_band_comb_list_per_bc_r14_present = false; + bool v2x_supported_rx_band_comb_list_per_bc_r14_present = false; + band_param_list_v1430_l_ band_param_list_v1430; + bounded_bitstring<1, 384> v2x_supported_tx_band_comb_list_per_bc_r14; + bounded_bitstring<1, 384> v2x_supported_rx_band_comb_list_per_bc_r14; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -50054,7 +49267,6 @@ struct band_combination_params_v1430_s { // MUST-Parameters-r14 ::= SEQUENCE struct must_params_r14_s { - // member variables bool must_tm234_up_to2_tx_r14_present = false; bool must_tm89_up_to_one_interfering_layer_r14_present = false; bool must_tm10_up_to_one_interfering_layer_r14_present = false; @@ -50069,7 +49281,6 @@ struct must_params_r14_s { // BandParameters-v1450 ::= SEQUENCE struct band_params_v1450_s { - // member variables bool must_cap_per_band_r14_present = false; must_params_r14_s must_cap_per_band_r14; @@ -50081,7 +49292,7 @@ struct band_params_v1450_s { // BandCombinationParameters-v1450 ::= SEQUENCE struct band_combination_params_v1450_s { - typedef dyn_array band_param_list_v1450_l_; + using band_param_list_v1450_l_ = dyn_array; // member variables bool band_param_list_v1450_present = false; @@ -50116,7 +49327,6 @@ struct mimo_ca_params_per_bo_bc_per_tm_v1470_s { // MIMO-CA-ParametersPerBoBC-v1470 ::= SEQUENCE struct mimo_ca_params_per_bo_bc_v1470_s { - // member variables mimo_ca_params_per_bo_bc_per_tm_v1470_s params_tm9_v1470; mimo_ca_params_per_bo_bc_per_tm_v1470_s params_tm10_v1470; @@ -50128,7 +49338,6 @@ struct mimo_ca_params_per_bo_bc_v1470_s { // BandParameters-v1470 ::= SEQUENCE struct band_params_v1470_s { - // member variables bool band_params_dl_v1470_present = false; mimo_ca_params_per_bo_bc_v1470_s band_params_dl_v1470; @@ -50140,7 +49349,7 @@ struct band_params_v1470_s { // BandCombinationParameters-v1470 ::= SEQUENCE struct band_combination_params_v1470_s { - typedef dyn_array band_param_list_v1470_l_; + using band_param_list_v1470_l_ = dyn_array; // member variables bool band_param_list_v1470_present = false; @@ -50156,7 +49365,6 @@ struct band_combination_params_v1470_s { // DL-UL-CCs-r15 ::= SEQUENCE struct dl_ul_ccs_r15_s { - // member variables bool max_num_dl_ccs_r15_present = false; bool max_num_ul_ccs_r15_present = false; uint8_t max_num_dl_ccs_r15 = 1; @@ -50170,7 +49378,7 @@ struct dl_ul_ccs_r15_s { // CA-MIMO-ParametersDL-r15 ::= SEQUENCE struct ca_mimo_params_dl_r15_s { - typedef dyn_array intra_band_contiguous_cc_info_list_r15_l_; + using intra_band_contiguous_cc_info_list_r15_l_ = dyn_array; // member variables bool supported_mimo_cap_dl_r15_present = false; @@ -50187,7 +49395,6 @@ struct ca_mimo_params_dl_r15_s { // CA-MIMO-ParametersUL-r15 ::= SEQUENCE struct ca_mimo_params_ul_r15_s { - // member variables bool supported_mimo_cap_ul_r15_present = false; mimo_cap_ul_r10_e supported_mimo_cap_ul_r15; @@ -50199,9 +49406,9 @@ struct ca_mimo_params_ul_r15_s { // STTI-SupportedCombinations-r15 ::= SEQUENCE struct stti_supported_combinations_r15_s { - typedef dyn_array combination_minus22_minus27_r15_l_; - typedef dyn_array combination_minus77_minus22_r15_l_; - typedef dyn_array combination_minus77_minus27_r15_l_; + using combination_minus22_minus27_r15_l_ = dyn_array; + using combination_minus77_minus22_r15_l_ = dyn_array; + using combination_minus77_minus27_r15_l_ = dyn_array; // member variables bool combination_minus22_r15_present = false; @@ -50225,14 +49432,14 @@ struct stti_supported_combinations_r15_s { // STTI-SPT-BandParameters-r15 ::= SEQUENCE struct stti_spt_band_params_r15_s { - struct s_tti_supported_csi_proc_r15_opts { + struct stti_supported_csi_proc_r15_opts { enum options { n1, n3, n4, nulltype } value; typedef uint8_t number_type; std::string to_string() const; uint8_t to_number() const; }; - typedef enumerated s_tti_supported_csi_proc_r15_e_; + typedef enumerated stti_supported_csi_proc_r15_e_; // member variables bool ext = false; @@ -50240,20 +49447,20 @@ struct stti_spt_band_params_r15_s { bool dl_minus1024_qam_subslot_ta_minus1_r15_present = false; bool dl_minus1024_qam_subslot_ta_minus2_r15_present = false; bool simul_tx_different_tx_dur_r15_present = false; - bool s_tti_ca_mimo_params_dl_r15_present = false; - bool s_tti_fd_mimo_coexistence_present = false; - bool s_tti_mimo_ca_params_per_bo_bcs_r15_present = false; - bool s_tti_mimo_ca_params_per_bo_bcs_v1530_present = false; - bool s_tti_supported_combinations_r15_present = false; - bool s_tti_supported_csi_proc_r15_present = false; + bool stti_ca_mimo_params_dl_r15_present = false; + bool stti_fd_mimo_coexistence_present = false; + bool stti_mimo_ca_params_per_bo_bcs_r15_present = false; + bool stti_mimo_ca_params_per_bo_bcs_v1530_present = false; + bool stti_supported_combinations_r15_present = false; + bool stti_supported_csi_proc_r15_present = false; bool ul_minus256_qam_slot_r15_present = false; bool ul_minus256_qam_subslot_r15_present = false; - ca_mimo_params_dl_r15_s s_tti_ca_mimo_params_dl_r15; - ca_mimo_params_ul_r15_s s_tti_ca_mimo_params_ul_r15; - mimo_ca_params_per_bo_bc_r13_s s_tti_mimo_ca_params_per_bo_bcs_r15; - mimo_ca_params_per_bo_bc_v1430_s s_tti_mimo_ca_params_per_bo_bcs_v1530; - stti_supported_combinations_r15_s s_tti_supported_combinations_r15; - s_tti_supported_csi_proc_r15_e_ s_tti_supported_csi_proc_r15; + ca_mimo_params_dl_r15_s stti_ca_mimo_params_dl_r15; + ca_mimo_params_ul_r15_s stti_ca_mimo_params_ul_r15; + mimo_ca_params_per_bo_bc_r13_s stti_mimo_ca_params_per_bo_bcs_r15; + mimo_ca_params_per_bo_bc_v1430_s stti_mimo_ca_params_per_bo_bcs_v1530; + stti_supported_combinations_r15_s stti_supported_combinations_r15; + stti_supported_csi_proc_r15_e_ stti_supported_csi_proc_r15; // ... // sequence methods @@ -50264,7 +49471,6 @@ struct stti_spt_band_params_r15_s { // BandParameters-v1530 ::= SEQUENCE struct band_params_v1530_s { - // member variables bool ue_tx_ant_sel_srs_minus1_t4_r_r15_present = false; bool ue_tx_ant_sel_srs_minus2_t4_r_minus2_pairs_r15_present = false; bool ue_tx_ant_sel_srs_minus2_t4_r_minus3_pairs_r15_present = false; @@ -50282,7 +49488,6 @@ struct band_params_v1530_s { // SPT-Parameters-r15 ::= SEQUENCE struct spt_params_r15_s { - // member variables bool frame_structure_type_spt_r15_present = false; bool max_num_ccs_spt_r15_present = false; fixed_bitstring<3> frame_structure_type_spt_r15; @@ -50296,7 +49501,7 @@ struct spt_params_r15_s { // BandCombinationParameters-v1530 ::= SEQUENCE struct band_combination_params_v1530_s { - typedef dyn_array band_param_list_v1530_l_; + using band_param_list_v1530_l_ = dyn_array; // member variables bool band_param_list_v1530_present = false; @@ -50312,9 +49517,8 @@ struct band_combination_params_v1530_s { // BandCombinationParametersExt-r10 ::= SEQUENCE struct band_combination_params_ext_r10_s { - // member variables - bool supported_bw_combination_set_r10_present = false; - dyn_bitstring supported_bw_combination_set_r10; + bool supported_bw_combination_set_r10_present = false; + bounded_bitstring<1, 32> supported_bw_combination_set_r10; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -50322,8 +49526,8 @@ struct band_combination_params_ext_r10_s { void to_json(json_writer& j) const; }; -// BandListEUTRA ::= SEQUENCE (SIZE (1..maxBands)) OF BandInfoEUTRA -typedef dyn_array band_list_eutra_l; +// BandListEUTRA ::= SEQUENCE (SIZE (1..64)) OF BandInfoEUTRA +using band_list_eutra_l = dyn_array; // V2X-BandwidthClass-r14 ::= ENUMERATED struct v2x_bw_class_r14_opts { @@ -50335,12 +49539,11 @@ struct v2x_bw_class_r14_opts { }; typedef enumerated v2x_bw_class_r14_e; -// V2X-BandwidthClassSL-r14 ::= SEQUENCE (SIZE (1..maxBandwidthClass-r10)) OF V2X-BandwidthClass-r14 -typedef bounded_array v2x_bw_class_sl_r14_l; +// V2X-BandwidthClassSL-r14 ::= SEQUENCE (SIZE (1..16)) OF V2X-BandwidthClass-r14 +using v2x_bw_class_sl_r14_l = bounded_array; // BandParametersRxSL-r14 ::= SEQUENCE struct band_params_rx_sl_r14_s { - // member variables bool v2x_high_reception_r14_present = false; v2x_bw_class_sl_r14_l v2x_bw_class_rx_sl_r14; @@ -50352,7 +49555,6 @@ struct band_params_rx_sl_r14_s { // BandParametersTxSL-r14 ::= SEQUENCE struct band_params_tx_sl_r14_s { - // member variables bool v2x_e_nb_sched_r14_present = false; bool v2x_high_pwr_r14_present = false; v2x_bw_class_sl_r14_l v2x_bw_class_tx_sl_r14; @@ -50389,14 +49591,13 @@ struct feature_set_dl_per_cc_r15_s { // MIMO-CA-ParametersPerBoBCPerTM-r15 ::= SEQUENCE struct mimo_ca_params_per_bo_bc_per_tm_r15_s { - // member variables - bool non_precoded_r13_present = false; - bool beamformed_r13_present = false; - bool dmrs_enhance_r13_present = false; - bool csi_report_np_r14_present = false; - bool csi_report_advanced_r14_present = false; - mimo_non_precoded_capabilities_r13_s non_precoded_r13; - mimo_beamformed_cap_list_r13_l beamformed_r13; + bool non_precoded_r13_present = false; + bool bf_r13_present = false; + bool dmrs_enhance_r13_present = false; + bool csi_report_np_r14_present = false; + bool csi_report_advanced_r14_present = false; + mimo_non_precoded_cap_r13_s non_precoded_r13; + mimo_bf_cap_list_r13_l bf_r13; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -50406,7 +49607,6 @@ struct mimo_ca_params_per_bo_bc_per_tm_r15_s { // MIMO-CA-ParametersPerBoBC-r15 ::= SEQUENCE struct mimo_ca_params_per_bo_bc_r15_s { - // member variables bool params_tm9_r15_present = false; bool params_tm10_r15_present = false; mimo_ca_params_per_bo_bc_per_tm_r15_s params_tm9_r15; @@ -50420,7 +49620,7 @@ struct mimo_ca_params_per_bo_bc_r15_s { // FeatureSetDL-r15 ::= SEQUENCE struct feature_set_dl_r15_s { - typedef bounded_array feature_set_per_cc_list_dl_r15_l_; + using feature_set_per_cc_list_dl_r15_l_ = bounded_array; // member variables bool mimo_ca_params_per_bo_bc_r15_present = false; @@ -50435,7 +49635,6 @@ struct feature_set_dl_r15_s { // FeatureSetUL-PerCC-r15 ::= SEQUENCE struct feature_set_ul_per_cc_r15_s { - // member variables bool supported_mimo_cap_ul_r15_present = false; bool ul_minus256_qam_r15_present = false; mimo_cap_ul_r10_e supported_mimo_cap_ul_r15; @@ -50448,7 +49647,7 @@ struct feature_set_ul_per_cc_r15_s { // FeatureSetUL-r15 ::= SEQUENCE struct feature_set_ul_r15_s { - typedef bounded_array feature_set_per_cc_list_ul_r15_l_; + using feature_set_per_cc_list_ul_r15_l_ = bounded_array; // member variables feature_set_per_cc_list_ul_r15_l_ feature_set_per_cc_list_ul_r15; @@ -50461,10 +49660,10 @@ struct feature_set_ul_r15_s { // FeatureSetsEUTRA-r15 ::= SEQUENCE struct feature_sets_eutra_r15_s { - typedef dyn_array feature_sets_dl_r15_l_; - typedef dyn_array feature_sets_dl_per_cc_r15_l_; - typedef dyn_array feature_sets_ul_r15_l_; - typedef dyn_array feature_sets_ul_per_cc_r15_l_; + using feature_sets_dl_r15_l_ = dyn_array; + using feature_sets_dl_per_cc_r15_l_ = dyn_array; + using feature_sets_ul_r15_l_ = dyn_array; + using feature_sets_ul_per_cc_r15_l_ = dyn_array; // member variables bool ext = false; @@ -50484,11 +49683,11 @@ struct feature_sets_eutra_r15_s { void to_json(json_writer& j) const; }; -// FreqBandIndicatorListEUTRA-r12 ::= SEQUENCE (SIZE (1..maxBands)) OF INTEGER -typedef dyn_array freq_band_ind_list_eutra_r12_l; +// FreqBandIndicatorListEUTRA-r12 ::= SEQUENCE (SIZE (1..64)) OF INTEGER (1..256) +using freq_band_ind_list_eutra_r12_l = dyn_array; -// SupportedBandList1XRTT ::= SEQUENCE (SIZE (1..maxCDMA-BandClass)) OF BandclassCDMA2000 -typedef bounded_array supported_band_list1_xrtt_l; +// SupportedBandList1XRTT ::= SEQUENCE (SIZE (1..32)) OF BandclassCDMA2000 +using supported_band_list1_xrtt_l = bounded_array; // IRAT-ParametersCDMA2000-1XRTT ::= SEQUENCE struct irat_params_cdma2000_minus1_xrtt_s { @@ -50516,8 +49715,8 @@ struct irat_params_cdma2000_minus1_xrtt_s { void to_json(json_writer& j) const; }; -// SupportedBandListHRPD ::= SEQUENCE (SIZE (1..maxCDMA-BandClass)) OF BandclassCDMA2000 -typedef bounded_array supported_band_list_hrpd_l; +// SupportedBandListHRPD ::= SEQUENCE (SIZE (1..32)) OF BandclassCDMA2000 +using supported_band_list_hrpd_l = bounded_array; // IRAT-ParametersCDMA2000-HRPD ::= SEQUENCE struct irat_params_cdma2000_hrpd_s { @@ -50572,12 +49771,11 @@ struct supported_band_geran_opts { }; typedef enumerated supported_band_geran_e; -// SupportedBandListGERAN ::= SEQUENCE (SIZE (1..maxBands)) OF SupportedBandGERAN -typedef dyn_array supported_band_list_geran_l; +// SupportedBandListGERAN ::= SEQUENCE (SIZE (1..64)) OF SupportedBandGERAN +using supported_band_list_geran_l = dyn_array; // IRAT-ParametersGERAN ::= SEQUENCE struct irat_params_geran_s { - // member variables supported_band_list_geran_l supported_band_list_geran; bool inter_rat_ps_ho_to_geran = false; @@ -50589,7 +49787,6 @@ struct irat_params_geran_s { // SupportedBandNR-r15 ::= SEQUENCE struct supported_band_nr_r15_s { - // member variables uint16_t band_nr_r15 = 1; // sequence methods @@ -50598,12 +49795,11 @@ struct supported_band_nr_r15_s { void to_json(json_writer& j) const; }; -// SupportedBandListNR-r15 ::= SEQUENCE (SIZE (1..maxBandsNR-r15)) OF SupportedBandNR-r15 -typedef dyn_array supported_band_list_nr_r15_l; +// SupportedBandListNR-r15 ::= SEQUENCE (SIZE (1..1024)) OF SupportedBandNR-r15 +using supported_band_list_nr_r15_l = dyn_array; // IRAT-ParametersNR-r15 ::= SEQUENCE struct irat_params_nr_r15_s { - // member variables bool en_dc_r15_present = false; bool event_b2_r15_present = false; bool supported_band_list_nr_r15_present = false; @@ -50658,12 +49854,11 @@ struct supported_band_utra_fdd_opts { }; typedef enumerated supported_band_utra_fdd_e; -// SupportedBandListUTRA-FDD ::= SEQUENCE (SIZE (1..maxBands)) OF SupportedBandUTRA-FDD -typedef dyn_array supported_band_list_utra_fdd_l; +// SupportedBandListUTRA-FDD ::= SEQUENCE (SIZE (1..64)) OF SupportedBandUTRA-FDD +using supported_band_list_utra_fdd_l = dyn_array; // IRAT-ParametersUTRA-FDD ::= SEQUENCE struct irat_params_utra_fdd_s { - // member variables supported_band_list_utra_fdd_l supported_band_list_utra_fdd; // sequence methods @@ -50680,12 +49875,11 @@ struct supported_band_utra_tdd128_opts { }; typedef enumerated supported_band_utra_tdd128_e; -// SupportedBandListUTRA-TDD128 ::= SEQUENCE (SIZE (1..maxBands)) OF SupportedBandUTRA-TDD128 -typedef dyn_array supported_band_list_utra_tdd128_l; +// SupportedBandListUTRA-TDD128 ::= SEQUENCE (SIZE (1..64)) OF SupportedBandUTRA-TDD128 +using supported_band_list_utra_tdd128_l = dyn_array; // IRAT-ParametersUTRA-TDD128 ::= SEQUENCE struct irat_params_utra_tdd128_s { - // member variables supported_band_list_utra_tdd128_l supported_band_list_utra_tdd128; // sequence methods @@ -50702,12 +49896,11 @@ struct supported_band_utra_tdd384_opts { }; typedef enumerated supported_band_utra_tdd384_e; -// SupportedBandListUTRA-TDD384 ::= SEQUENCE (SIZE (1..maxBands)) OF SupportedBandUTRA-TDD384 -typedef dyn_array supported_band_list_utra_tdd384_l; +// SupportedBandListUTRA-TDD384 ::= SEQUENCE (SIZE (1..64)) OF SupportedBandUTRA-TDD384 +using supported_band_list_utra_tdd384_l = dyn_array; // IRAT-ParametersUTRA-TDD384 ::= SEQUENCE struct irat_params_utra_tdd384_s { - // member variables supported_band_list_utra_tdd384_l supported_band_list_utra_tdd384; // sequence methods @@ -50724,12 +49917,11 @@ struct supported_band_utra_tdd768_opts { }; typedef enumerated supported_band_utra_tdd768_e; -// SupportedBandListUTRA-TDD768 ::= SEQUENCE (SIZE (1..maxBands)) OF SupportedBandUTRA-TDD768 -typedef dyn_array supported_band_list_utra_tdd768_l; +// SupportedBandListUTRA-TDD768 ::= SEQUENCE (SIZE (1..64)) OF SupportedBandUTRA-TDD768 +using supported_band_list_utra_tdd768_l = dyn_array; // IRAT-ParametersUTRA-TDD768 ::= SEQUENCE struct irat_params_utra_tdd768_s { - // member variables supported_band_list_utra_tdd768_l supported_band_list_utra_tdd768; // sequence methods @@ -50740,7 +49932,7 @@ struct irat_params_utra_tdd768_s { // IRAT-ParametersWLAN-r13 ::= SEQUENCE struct irat_params_wlan_r13_s { - typedef bounded_array supported_band_list_wlan_r13_l_; + using supported_band_list_wlan_r13_l_ = bounded_array; // member variables bool supported_band_list_wlan_r13_present = false; @@ -50764,7 +49956,6 @@ typedef enumerated processing_timeline_set_r15 // SkipSubframeProcessing-r15 ::= SEQUENCE struct skip_sf_processing_r15_s { - // member variables bool skip_processing_dl_slot_r15_present = false; bool skip_processing_dl_sub_slot_r15_present = false; bool skip_processing_ul_slot_r15_present = false; @@ -50782,7 +49973,7 @@ struct skip_sf_processing_r15_s { // MAC-Parameters-v1530 ::= SEQUENCE struct mac_params_v1530_s { - typedef bounded_array min_proc_timeline_subslot_r15_l_; + using min_proc_timeline_subslot_r15_l_ = bounded_array; // member variables bool min_proc_timeline_subslot_r15_present = false; @@ -50803,10 +49994,9 @@ struct mac_params_v1530_s { }; // MIMO-UE-BeamformedCapabilities-r13 ::= SEQUENCE -struct mimo_ue_beamformed_capabilities_r13_s { - // member variables - bool alt_codebook_r13_present = false; - mimo_beamformed_cap_list_r13_l mimo_beamformed_capabilities_r13; +struct mimo_ue_bf_cap_r13_s { + bool alt_codebook_r13_present = false; + mimo_bf_cap_list_r13_l mimo_bf_cap_r13; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -50816,14 +50006,13 @@ struct mimo_ue_beamformed_capabilities_r13_s { // MIMO-UE-ParametersPerTM-r13 ::= SEQUENCE struct mimo_ue_params_per_tm_r13_s { - // member variables - bool non_precoded_r13_present = false; - bool beamformed_r13_present = false; - bool ch_meas_restrict_r13_present = false; - bool dmrs_enhance_r13_present = false; - bool csi_rs_enhance_tdd_r13_present = false; - mimo_non_precoded_capabilities_r13_s non_precoded_r13; - mimo_ue_beamformed_capabilities_r13_s beamformed_r13; + bool non_precoded_r13_present = false; + bool bf_r13_present = false; + bool ch_meas_restrict_r13_present = false; + bool dmrs_enhance_r13_present = false; + bool csi_rs_enhance_tdd_r13_present = false; + mimo_non_precoded_cap_r13_s non_precoded_r13; + mimo_ue_bf_cap_r13_s bf_r13; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -50833,7 +50022,6 @@ struct mimo_ue_params_per_tm_r13_s { // MIMO-UE-Parameters-r13 ::= SEQUENCE struct mimo_ue_params_r13_s { - // member variables bool params_tm9_r13_present = false; bool params_tm10_r13_present = false; bool srs_enhance_tdd_r13_present = false; @@ -50851,31 +50039,31 @@ struct mimo_ue_params_r13_s { // MIMO-UE-ParametersPerTM-v1430 ::= SEQUENCE struct mimo_ue_params_per_tm_v1430_s { struct nzp_csi_rs_aperiodic_info_r14_s_ { - struct n_max_res_r14_opts { + struct nmax_res_r14_opts { enum options { ffs1, ffs2, ffs3, ffs4, nulltype } value; typedef uint8_t number_type; std::string to_string() const; uint8_t to_number() const; }; - typedef enumerated n_max_res_r14_e_; + typedef enumerated nmax_res_r14_e_; // member variables - uint8_t n_max_proc_r14 = 5; - n_max_res_r14_e_ n_max_res_r14; + uint8_t nmax_proc_r14 = 5; + nmax_res_r14_e_ nmax_res_r14; }; struct nzp_csi_rs_periodic_info_r14_s_ { - struct n_max_res_r14_opts { + struct nmax_res_r14_opts { enum options { ffs1, ffs2, ffs3, ffs4, nulltype } value; typedef uint8_t number_type; std::string to_string() const; uint8_t to_number() const; }; - typedef enumerated n_max_res_r14_e_; + typedef enumerated nmax_res_r14_e_; // member variables - n_max_res_r14_e_ n_max_res_r14; + nmax_res_r14_e_ nmax_res_r14; }; // member variables @@ -50900,7 +50088,6 @@ struct mimo_ue_params_per_tm_v1430_s { // MIMO-UE-Parameters-v1430 ::= SEQUENCE struct mimo_ue_params_v1430_s { - // member variables bool params_tm9_v1430_present = false; bool params_tm10_v1430_present = false; mimo_ue_params_per_tm_v1430_s params_tm9_v1430; @@ -50935,7 +50122,6 @@ struct mimo_ue_params_per_tm_v1470_s { // MIMO-UE-Parameters-v1470 ::= SEQUENCE struct mimo_ue_params_v1470_s { - // member variables mimo_ue_params_per_tm_v1470_s params_tm9_v1470; mimo_ue_params_per_tm_v1470_s params_tm10_v1470; @@ -50947,7 +50133,6 @@ struct mimo_ue_params_v1470_s { // MeasParameters ::= SEQUENCE struct meas_params_s { - // member variables band_list_eutra_l band_list_eutra; // sequence methods @@ -50958,7 +50143,6 @@ struct meas_params_s { // MeasParameters-v1020 ::= SEQUENCE struct meas_params_v1020_s { - // member variables band_combination_list_eutra_r10_l band_combination_list_eutra_r10; // sequence methods @@ -51008,12 +50192,11 @@ struct naics_cap_entry_r12_s { void to_json(json_writer& j) const; }; -// NAICS-Capability-List-r12 ::= SEQUENCE (SIZE (1..maxNAICS-Entries-r12)) OF NAICS-Capability-Entry-r12 -typedef dyn_array naics_cap_list_r12_l; +// NAICS-Capability-List-r12 ::= SEQUENCE (SIZE (1..8)) OF NAICS-Capability-Entry-r12 +using naics_cap_list_r12_l = dyn_array; // NonContiguousUL-RA-WithinCC-r10 ::= SEQUENCE struct non_contiguous_ul_ra_within_cc_r10_s { - // member variables bool non_contiguous_ul_ra_within_cc_info_r10_present = false; // sequence methods @@ -51022,12 +50205,11 @@ struct non_contiguous_ul_ra_within_cc_r10_s { void to_json(json_writer& j) const; }; -// NonContiguousUL-RA-WithinCC-List-r10 ::= SEQUENCE (SIZE (1..maxBands)) OF NonContiguousUL-RA-WithinCC-r10 -typedef dyn_array non_contiguous_ul_ra_within_cc_list_r10_l; +// NonContiguousUL-RA-WithinCC-List-r10 ::= SEQUENCE (SIZE (1..64)) OF NonContiguousUL-RA-WithinCC-r10 +using non_contiguous_ul_ra_within_cc_list_r10_l = dyn_array; // ROHC-ProfileSupportList-r15 ::= SEQUENCE struct rohc_profile_support_list_r15_s { - // member variables bool profile0x0001_r15 = false; bool profile0x0002_r15 = false; bool profile0x0003_r15 = false; @@ -51088,7 +50270,6 @@ struct pdcp_params_s { // SupportedOperatorDic-r15 ::= SEQUENCE struct supported_operator_dic_r15_s { - // member variables uint8_t version_of_dictionary_r15 = 0; plmn_id_s associated_plmn_id_r15; @@ -51100,7 +50281,6 @@ struct supported_operator_dic_r15_s { // SupportedUDC-r15 ::= SEQUENCE struct supported_udc_r15_s { - // member variables bool supported_standard_dic_r15_present = false; bool supported_operator_dic_r15_present = false; supported_operator_dic_r15_s supported_operator_dic_r15; @@ -51113,7 +50293,6 @@ struct supported_udc_r15_s { // PDCP-Parameters-v1530 ::= SEQUENCE struct pdcp_params_v1530_s { - // member variables bool supported_udc_r15_present = false; bool pdcp_dupl_r15_present = false; supported_udc_r15_s supported_udc_r15; @@ -51153,7 +50332,6 @@ struct pdcp_params_nr_r15_s { }; typedef enumerated rohc_context_max_sessions_r15_e_; struct rohc_profiles_ul_only_r15_s_ { - // member variables bool profile0x0006_r15 = false; }; @@ -51176,7 +50354,6 @@ struct pdcp_params_nr_r15_s { // PhyLayerParameters-v1020 ::= SEQUENCE struct phy_layer_params_v1020_s { - // member variables bool two_ant_ports_for_pucch_r10_present = false; bool tm9_with_minus8_tx_fdd_r10_present = false; bool pmi_disabling_r10_present = false; @@ -51194,7 +50371,6 @@ struct phy_layer_params_v1020_s { // PhyLayerParameters-v1250 ::= SEQUENCE struct phy_layer_params_v1250_s { - // member variables bool e_harq_pattern_fdd_r12_present = false; bool enhanced_minus4_tx_codebook_r12_present = false; bool tdd_fdd_ca_pcell_duplex_r12_present = false; @@ -51217,7 +50393,6 @@ struct phy_layer_params_v1250_s { // PhyLayerParameters-v1320 ::= SEQUENCE struct phy_layer_params_v1320_s { - // member variables bool mimo_ue_params_r13_present = false; mimo_ue_params_r13_s mimo_ue_params_r13; @@ -51229,7 +50404,6 @@ struct phy_layer_params_v1320_s { // PhyLayerParameters-v1330 ::= SEQUENCE struct phy_layer_params_v1330_s { - // member variables bool cch_interf_mitigation_ref_rec_type_a_r13_present = false; bool cch_interf_mitigation_ref_rec_type_b_r13_present = false; bool cch_interf_mitigation_max_num_ccs_r13_present = false; @@ -51245,7 +50419,6 @@ struct phy_layer_params_v1330_s { // FeMBMS-Unicast-Parameters-r14 ::= SEQUENCE struct fe_mbms_unicast_params_r14_s { - // member variables bool unicast_fembms_mixed_scell_r14_present = false; bool empty_unicast_region_r14_present = false; @@ -51289,7 +50462,7 @@ struct phy_layer_params_v1430_s { bool tdd_tti_bundling_r14_present = false; bool dmrs_less_up_pts_r14_present = false; bool mimo_ue_params_v1430_present = false; - bool alternative_tbs_idx_r14_present = false; + bool alt_tbs_idx_r14_present = false; bool fe_mbms_unicast_params_r14_present = false; ce_pdsch_pusch_max_bw_r14_e_ ce_pdsch_pusch_max_bw_r14; ce_retuning_symbols_r14_e_ ce_retuning_symbols_r14; @@ -51304,7 +50477,6 @@ struct phy_layer_params_v1430_s { // PhyLayerParameters-v1470 ::= SEQUENCE struct phy_layer_params_v1470_s { - // member variables bool mimo_ue_params_v1470_present = false; bool srs_up_pts_minus6sym_r14_present = false; mimo_ue_params_v1470_s mimo_ue_params_v1470; @@ -51317,7 +50489,7 @@ struct phy_layer_params_v1470_s { // PhyLayerParameters-v1530 ::= SEQUENCE struct phy_layer_params_v1530_s { - struct stti_spt_capabilities_r15_s_ { + struct stti_spt_cap_r15_s_ { struct max_layers_slot_or_subslot_pusch_r15_opts { enum options { one_layer, two_layers, four_layers, nulltype } value; typedef uint8_t number_type; @@ -51334,55 +50506,54 @@ struct phy_layer_params_v1530_s { typedef enumerated sps_stti_r15_e_; // member variables - bool aperiodic_csi_report_stti_r15_present = false; - bool dmrs_based_spdcch_mbsfn_r15_present = false; - bool dmrs_based_spdcch_non_mbsfn_r15_present = false; - bool dmrs_position_pattern_r15_present = false; - bool dmrs_sharing_subslot_pdsch_r15_present = false; - bool dmrs_repeat_subslot_pdsch_r15_present = false; - bool epdcch_spt_different_cells_r15_present = false; - bool epdcch_stti_different_cells_r15_present = false; - bool max_layers_slot_or_subslot_pusch_r15_present = false; - bool max_num_updated_csi_proc_spt_r15_present = false; - bool max_num_updated_csi_proc_stti_comb77_r15_present = false; - bool max_num_updated_csi_proc_stti_comb27_r15_present = false; - bool max_num_updated_csi_proc_stti_comb22_set1_r15_present = false; - bool max_num_updated_csi_proc_stti_comb22_set2_r15_present = false; - bool mimo_ue_params_stti_r15_present = false; - bool mimo_ue_params_stti_v1530_present = false; - bool nof_blind_decodes_uss_r15_present = false; - bool pdsch_slot_subslot_pdsch_decoding_r15_present = false; - bool pwr_uci_slot_pusch_present = false; - bool pwr_uci_subslot_pusch_present = false; - bool slot_pdsch_tx_div_tm9and10_present = false; - bool subslot_pdsch_tx_div_tm9and10_present = false; - bool spdcch_different_rs_types_r15_present = false; - bool srs_dci7_triggering_fs2_r15_present = false; - bool sps_cyclic_shift_r15_present = false; - bool spdcch_reuse_r15_present = false; - bool sps_stti_r15_present = false; - bool tm8_slot_pdsch_r15_present = false; - bool tm9_slot_subslot_r15_present = false; - bool tm9_slot_subslot_mbsfn_r15_present = false; - bool tm10_slot_subslot_r15_present = false; - bool tm10_slot_subslot_mbsfn_r15_present = false; - bool tx_div_spucch_r15_present = false; - bool ul_async_harq_sharing_diff_tti_lens_r15_present = false; + bool aperiodic_csi_report_stti_r15_present = false; + bool dmrs_based_spdcch_mbsfn_r15_present = false; + bool dmrs_based_spdcch_non_mbsfn_r15_present = false; + bool dmrs_position_pattern_r15_present = false; + bool dmrs_sharing_subslot_pdsch_r15_present = false; + bool dmrs_repeat_subslot_pdsch_r15_present = false; + bool epdcch_spt_different_cells_r15_present = false; + bool epdcch_stti_different_cells_r15_present = false; + bool max_layers_slot_or_subslot_pusch_r15_present = false; + bool max_num_upd_csi_proc_spt_r15_present = false; + bool max_num_upd_csi_proc_stti_comb77_r15_present = false; + bool max_num_upd_csi_proc_stti_comb27_r15_present = false; + bool max_num_upd_csi_proc_stti_comb22_set1_r15_present = false; + bool max_num_upd_csi_proc_stti_comb22_set2_r15_present = false; + bool mimo_ue_params_stti_r15_present = false; + bool mimo_ue_params_stti_v1530_present = false; + bool nof_blind_decodes_uss_r15_present = false; + bool pdsch_slot_subslot_pdsch_decoding_r15_present = false; + bool pwr_uci_slot_pusch_present = false; + bool pwr_uci_subslot_pusch_present = false; + bool slot_pdsch_tx_div_tm9and10_present = false; + bool subslot_pdsch_tx_div_tm9and10_present = false; + bool spdcch_different_rs_types_r15_present = false; + bool srs_dci7_trigger_fs2_r15_present = false; + bool sps_cyclic_shift_r15_present = false; + bool spdcch_reuse_r15_present = false; + bool sps_stti_r15_present = false; + bool tm8_slot_pdsch_r15_present = false; + bool tm9_slot_subslot_r15_present = false; + bool tm9_slot_subslot_mbsfn_r15_present = false; + bool tm10_slot_subslot_r15_present = false; + bool tm10_slot_subslot_mbsfn_r15_present = false; + bool tx_div_spucch_r15_present = false; + bool ul_async_harq_sharing_diff_tti_lens_r15_present = false; max_layers_slot_or_subslot_pusch_r15_e_ max_layers_slot_or_subslot_pusch_r15; - uint8_t max_num_updated_csi_proc_spt_r15 = 5; - uint8_t max_num_updated_csi_proc_stti_comb77_r15 = 1; - uint8_t max_num_updated_csi_proc_stti_comb27_r15 = 1; - uint8_t max_num_updated_csi_proc_stti_comb22_set1_r15 = 1; - uint8_t max_num_updated_csi_proc_stti_comb22_set2_r15 = 1; + uint8_t max_num_upd_csi_proc_spt_r15 = 5; + uint8_t max_num_upd_csi_proc_stti_comb77_r15 = 1; + uint8_t max_num_upd_csi_proc_stti_comb27_r15 = 1; + uint8_t max_num_upd_csi_proc_stti_comb22_set1_r15 = 1; + uint8_t max_num_upd_csi_proc_stti_comb22_set2_r15 = 1; mimo_ue_params_r13_s mimo_ue_params_stti_r15; mimo_ue_params_v1430_s mimo_ue_params_stti_v1530; uint8_t nof_blind_decodes_uss_r15 = 4; sps_stti_r15_e_ sps_stti_r15; }; - struct ce_capabilities_r15_s_ { - // member variables + struct ce_cap_r15_s_ { bool ce_crs_intf_mitig_r15_present = false; - bool ce_cqi_alternative_table_r15_present = false; + bool ce_cqi_alt_table_r15_present = false; bool ce_pdsch_flex_start_prb_ce_mode_a_r15_present = false; bool ce_pdsch_flex_start_prb_ce_mode_b_r15_present = false; bool ce_pdsch_minus64_qam_r15_present = false; @@ -51391,8 +50562,7 @@ struct phy_layer_params_v1530_s { bool ce_pusch_sub_prb_alloc_r15_present = false; bool ce_ul_harq_ack_feedback_r15_present = false; }; - struct urllc_capabilities_r15_s_ { - // member variables + struct urllc_cap_r15_s_ { bool pdsch_rep_sf_r15_present = false; bool pdsch_rep_slot_r15_present = false; bool pdsch_rep_subslot_r15_present = false; @@ -51422,17 +50592,17 @@ struct phy_layer_params_v1530_s { }; // member variables - bool stti_spt_capabilities_r15_present = false; - bool ce_capabilities_r15_present = false; - bool short_cqi_for_scell_activation_r15_present = false; - bool mimo_cbsr_advanced_csi_r15_present = false; - bool crs_intf_mitig_r15_present = false; - bool ul_pwr_ctrl_enhance_r15_present = false; - bool urllc_capabilities_r15_present = false; - bool alt_mcs_table_r15_present = false; - stti_spt_capabilities_r15_s_ stti_spt_capabilities_r15; - ce_capabilities_r15_s_ ce_capabilities_r15; - urllc_capabilities_r15_s_ urllc_capabilities_r15; + bool stti_spt_cap_r15_present = false; + bool ce_cap_r15_present = false; + bool short_cqi_for_scell_activation_r15_present = false; + bool mimo_cbsr_advanced_csi_r15_present = false; + bool crs_intf_mitig_r15_present = false; + bool ul_pwr_ctrl_enhance_r15_present = false; + bool urllc_cap_r15_present = false; + bool alt_mcs_table_r15_present = false; + stti_spt_cap_r15_s_ stti_spt_cap_r15; + ce_cap_r15_s_ ce_cap_r15; + urllc_cap_r15_s_ urllc_cap_r15; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -51442,7 +50612,6 @@ struct phy_layer_params_v1530_s { // SupportedBandEUTRA ::= SEQUENCE struct supported_band_eutra_s { - // member variables uint8_t band_eutra = 1; bool half_duplex = false; @@ -51452,12 +50621,11 @@ struct supported_band_eutra_s { void to_json(json_writer& j) const; }; -// SupportedBandListEUTRA ::= SEQUENCE (SIZE (1..maxBands)) OF SupportedBandEUTRA -typedef dyn_array supported_band_list_eutra_l; +// SupportedBandListEUTRA ::= SEQUENCE (SIZE (1..64)) OF SupportedBandEUTRA +using supported_band_list_eutra_l = dyn_array; // RF-Parameters ::= SEQUENCE struct rf_params_s { - // member variables supported_band_list_eutra_l supported_band_list_eutra; // sequence methods @@ -51466,12 +50634,11 @@ struct rf_params_s { void to_json(json_writer& j) const; }; -// SupportedBandCombination-r10 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandCombinationParameters-r10 -typedef dyn_array supported_band_combination_r10_l; +// SupportedBandCombination-r10 ::= SEQUENCE (SIZE (1..128)) OF BandCombinationParameters-r10 +using supported_band_combination_r10_l = dyn_array; // RF-Parameters-v1020 ::= SEQUENCE struct rf_params_v1020_s { - // member variables supported_band_combination_r10_l supported_band_combination_r10; // sequence methods @@ -51480,12 +50647,11 @@ struct rf_params_v1020_s { void to_json(json_writer& j) const; }; -// SupportedBandCombinationExt-r10 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandCombinationParametersExt-r10 -typedef dyn_array supported_band_combination_ext_r10_l; +// SupportedBandCombinationExt-r10 ::= SEQUENCE (SIZE (1..128)) OF BandCombinationParametersExt-r10 +using supported_band_combination_ext_r10_l = dyn_array; // RF-Parameters-v1060 ::= SEQUENCE struct rf_params_v1060_s { - // member variables supported_band_combination_ext_r10_l supported_band_combination_ext_r10; // sequence methods @@ -51494,12 +50660,11 @@ struct rf_params_v1060_s { void to_json(json_writer& j) const; }; -// SupportedBandCombination-v1090 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandCombinationParameters-v1090 -typedef dyn_array supported_band_combination_v1090_l; +// SupportedBandCombination-v1090 ::= SEQUENCE (SIZE (1..128)) OF BandCombinationParameters-v1090 +using supported_band_combination_v1090_l = dyn_array; // RF-Parameters-v1090 ::= SEQUENCE struct rf_params_v1090_s { - // member variables bool supported_band_combination_v1090_present = false; supported_band_combination_v1090_l supported_band_combination_v1090; @@ -51509,12 +50674,11 @@ struct rf_params_v1090_s { void to_json(json_writer& j) const; }; -// SupportedBandCombination-v10i0 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandCombinationParameters-v10i0 -typedef dyn_array supported_band_combination_v10i0_l; +// SupportedBandCombination-v10i0 ::= SEQUENCE (SIZE (1..128)) OF BandCombinationParameters-v10i0 +using supported_band_combination_v10i0_l = dyn_array; // RF-Parameters-v10i0 ::= SEQUENCE struct rf_params_v10i0_s { - // member variables bool supported_band_combination_v10i0_present = false; supported_band_combination_v10i0_l supported_band_combination_v10i0; @@ -51524,12 +50688,11 @@ struct rf_params_v10i0_s { void to_json(json_writer& j) const; }; -// SupportedBandCombination-v1130 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandCombinationParameters-v1130 -typedef dyn_array supported_band_combination_v1130_l; +// SupportedBandCombination-v1130 ::= SEQUENCE (SIZE (1..128)) OF BandCombinationParameters-v1130 +using supported_band_combination_v1130_l = dyn_array; // RF-Parameters-v1130 ::= SEQUENCE struct rf_params_v1130_s { - // member variables bool supported_band_combination_v1130_present = false; supported_band_combination_v1130_l supported_band_combination_v1130; @@ -51539,12 +50702,12 @@ struct rf_params_v1130_s { void to_json(json_writer& j) const; }; -// SupportedBandCombinationAdd-r11 ::= SEQUENCE (SIZE (1..maxBandComb-r11)) OF BandCombinationParameters-r11 -typedef dyn_array supported_band_combination_add_r11_l; +// SupportedBandCombinationAdd-r11 ::= SEQUENCE (SIZE (1..256)) OF BandCombinationParameters-r11 +using supported_band_combination_add_r11_l = dyn_array; // RF-Parameters-v1180 ::= SEQUENCE struct rf_params_v1180_s { - typedef dyn_array requested_bands_r11_l_; + using requested_bands_r11_l_ = dyn_array; // member variables bool freq_band_retrieval_r11_present = false; @@ -51559,12 +50722,11 @@ struct rf_params_v1180_s { void to_json(json_writer& j) const; }; -// SupportedBandCombinationAdd-v11d0 ::= SEQUENCE (SIZE (1..maxBandComb-r11)) OF BandCombinationParameters-v10i0 -typedef dyn_array supported_band_combination_add_v11d0_l; +// SupportedBandCombinationAdd-v11d0 ::= SEQUENCE (SIZE (1..256)) OF BandCombinationParameters-v10i0 +using supported_band_combination_add_v11d0_l = dyn_array; // RF-Parameters-v11d0 ::= SEQUENCE struct rf_params_v11d0_s { - // member variables bool supported_band_combination_add_v11d0_present = false; supported_band_combination_add_v11d0_l supported_band_combination_add_v11d0; @@ -51576,7 +50738,6 @@ struct rf_params_v11d0_s { // SupportedBandEUTRA-v1250 ::= SEQUENCE struct supported_band_eutra_v1250_s { - // member variables bool dl_minus256_qam_r12_present = false; bool ul_minus64_qam_r12_present = false; @@ -51586,18 +50747,17 @@ struct supported_band_eutra_v1250_s { void to_json(json_writer& j) const; }; -// SupportedBandCombination-v1250 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandCombinationParameters-v1250 -typedef dyn_array supported_band_combination_v1250_l; +// SupportedBandCombination-v1250 ::= SEQUENCE (SIZE (1..128)) OF BandCombinationParameters-v1250 +using supported_band_combination_v1250_l = dyn_array; -// SupportedBandCombinationAdd-v1250 ::= SEQUENCE (SIZE (1..maxBandComb-r11)) OF BandCombinationParameters-v1250 -typedef dyn_array supported_band_combination_add_v1250_l; +// SupportedBandCombinationAdd-v1250 ::= SEQUENCE (SIZE (1..256)) OF BandCombinationParameters-v1250 +using supported_band_combination_add_v1250_l = dyn_array; -// SupportedBandListEUTRA-v1250 ::= SEQUENCE (SIZE (1..maxBands)) OF SupportedBandEUTRA-v1250 -typedef dyn_array supported_band_list_eutra_v1250_l; +// SupportedBandListEUTRA-v1250 ::= SEQUENCE (SIZE (1..64)) OF SupportedBandEUTRA-v1250 +using supported_band_list_eutra_v1250_l = dyn_array; // RF-Parameters-v1250 ::= SEQUENCE struct rf_params_v1250_s { - // member variables bool supported_band_list_eutra_v1250_present = false; bool supported_band_combination_v1250_present = false; bool supported_band_combination_add_v1250_present = false; @@ -51612,15 +50772,14 @@ struct rf_params_v1250_s { void to_json(json_writer& j) const; }; -// SupportedBandCombination-v1270 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandCombinationParameters-v1270 -typedef dyn_array supported_band_combination_v1270_l; +// SupportedBandCombination-v1270 ::= SEQUENCE (SIZE (1..128)) OF BandCombinationParameters-v1270 +using supported_band_combination_v1270_l = dyn_array; -// SupportedBandCombinationAdd-v1270 ::= SEQUENCE (SIZE (1..maxBandComb-r11)) OF BandCombinationParameters-v1270 -typedef dyn_array supported_band_combination_add_v1270_l; +// SupportedBandCombinationAdd-v1270 ::= SEQUENCE (SIZE (1..256)) OF BandCombinationParameters-v1270 +using supported_band_combination_add_v1270_l = dyn_array; // RF-Parameters-v1270 ::= SEQUENCE struct rf_params_v1270_s { - // member variables bool supported_band_combination_v1270_present = false; bool supported_band_combination_add_v1270_present = false; supported_band_combination_v1270_l supported_band_combination_v1270; @@ -51634,7 +50793,6 @@ struct rf_params_v1270_s { // SupportedBandEUTRA-v1310 ::= SEQUENCE struct supported_band_eutra_v1310_s { - // member variables bool ue_pwr_class_minus5_r13_present = false; // sequence methods @@ -51643,16 +50801,15 @@ struct supported_band_eutra_v1310_s { void to_json(json_writer& j) const; }; -// SupportedBandCombinationReduced-r13 ::= SEQUENCE (SIZE (1..maxBandComb-r13)) OF BandCombinationParameters-r13 -typedef dyn_array supported_band_combination_reduced_r13_l; +// SupportedBandCombinationReduced-r13 ::= SEQUENCE (SIZE (1..384)) OF BandCombinationParameters-r13 +using supported_band_combination_reduced_r13_l = dyn_array; -// SupportedBandListEUTRA-v1310 ::= SEQUENCE (SIZE (1..maxBands)) OF SupportedBandEUTRA-v1310 -typedef dyn_array supported_band_list_eutra_v1310_l; +// SupportedBandListEUTRA-v1310 ::= SEQUENCE (SIZE (1..64)) OF SupportedBandEUTRA-v1310 +using supported_band_list_eutra_v1310_l = dyn_array; // RF-Parameters-v1310 ::= SEQUENCE struct rf_params_v1310_s { - struct e_nb_requested_params_r13_s_ { - // member variables + struct enb_requested_params_r13_s_ { bool reduced_int_non_cont_comb_requested_r13_present = false; bool requested_ccs_dl_r13_present = false; bool requested_ccs_ul_r13_present = false; @@ -51662,13 +50819,13 @@ struct rf_params_v1310_s { }; // member variables - bool e_nb_requested_params_r13_present = false; + bool enb_requested_params_r13_present = false; bool maximum_ccs_retrieval_r13_present = false; bool skip_fallback_combinations_r13_present = false; bool reduced_int_non_cont_comb_r13_present = false; bool supported_band_list_eutra_v1310_present = false; bool supported_band_combination_reduced_r13_present = false; - e_nb_requested_params_r13_s_ e_nb_requested_params_r13; + enb_requested_params_r13_s_ enb_requested_params_r13; supported_band_list_eutra_v1310_l supported_band_list_eutra_v1310; supported_band_combination_reduced_r13_l supported_band_combination_reduced_r13; @@ -51700,21 +50857,20 @@ struct supported_band_eutra_v1320_s { void to_json(json_writer& j) const; }; -// SupportedBandCombination-v1320 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandCombinationParameters-v1320 -typedef dyn_array supported_band_combination_v1320_l; +// SupportedBandCombination-v1320 ::= SEQUENCE (SIZE (1..128)) OF BandCombinationParameters-v1320 +using supported_band_combination_v1320_l = dyn_array; -// SupportedBandCombinationAdd-v1320 ::= SEQUENCE (SIZE (1..maxBandComb-r11)) OF BandCombinationParameters-v1320 -typedef dyn_array supported_band_combination_add_v1320_l; +// SupportedBandCombinationAdd-v1320 ::= SEQUENCE (SIZE (1..256)) OF BandCombinationParameters-v1320 +using supported_band_combination_add_v1320_l = dyn_array; -// SupportedBandCombinationReduced-v1320 ::= SEQUENCE (SIZE (1..maxBandComb-r13)) OF BandCombinationParameters-v1320 -typedef dyn_array supported_band_combination_reduced_v1320_l; +// SupportedBandCombinationReduced-v1320 ::= SEQUENCE (SIZE (1..384)) OF BandCombinationParameters-v1320 +using supported_band_combination_reduced_v1320_l = dyn_array; -// SupportedBandListEUTRA-v1320 ::= SEQUENCE (SIZE (1..maxBands)) OF SupportedBandEUTRA-v1320 -typedef dyn_array supported_band_list_eutra_v1320_l; +// SupportedBandListEUTRA-v1320 ::= SEQUENCE (SIZE (1..64)) OF SupportedBandEUTRA-v1320 +using supported_band_list_eutra_v1320_l = dyn_array; // RF-Parameters-v1320 ::= SEQUENCE struct rf_params_v1320_s { - // member variables bool supported_band_list_eutra_v1320_present = false; bool supported_band_combination_v1320_present = false; bool supported_band_combination_add_v1320_present = false; @@ -51730,18 +50886,17 @@ struct rf_params_v1320_s { void to_json(json_writer& j) const; }; -// SupportedBandCombination-v1380 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandCombinationParameters-v1380 -typedef dyn_array supported_band_combination_v1380_l; +// SupportedBandCombination-v1380 ::= SEQUENCE (SIZE (1..128)) OF BandCombinationParameters-v1380 +using supported_band_combination_v1380_l = dyn_array; -// SupportedBandCombinationAdd-v1380 ::= SEQUENCE (SIZE (1..maxBandComb-r11)) OF BandCombinationParameters-v1380 -typedef dyn_array supported_band_combination_add_v1380_l; +// SupportedBandCombinationAdd-v1380 ::= SEQUENCE (SIZE (1..256)) OF BandCombinationParameters-v1380 +using supported_band_combination_add_v1380_l = dyn_array; -// SupportedBandCombinationReduced-v1380 ::= SEQUENCE (SIZE (1..maxBandComb-r13)) OF BandCombinationParameters-v1380 -typedef dyn_array supported_band_combination_reduced_v1380_l; +// SupportedBandCombinationReduced-v1380 ::= SEQUENCE (SIZE (1..384)) OF BandCombinationParameters-v1380 +using supported_band_combination_reduced_v1380_l = dyn_array; // RF-Parameters-v1380 ::= SEQUENCE struct rf_params_v1380_s { - // member variables bool supported_band_combination_v1380_present = false; bool supported_band_combination_add_v1380_present = false; bool supported_band_combination_reduced_v1380_present = false; @@ -51757,7 +50912,6 @@ struct rf_params_v1380_s { // BandCombinationParameters-v1390 ::= SEQUENCE struct band_combination_params_v1390_s { - // member variables bool ue_ca_pwr_class_n_r13_present = false; // sequence methods @@ -51766,18 +50920,17 @@ struct band_combination_params_v1390_s { void to_json(json_writer& j) const; }; -// SupportedBandCombination-v1390 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandCombinationParameters-v1390 -typedef dyn_array supported_band_combination_v1390_l; +// SupportedBandCombination-v1390 ::= SEQUENCE (SIZE (1..128)) OF BandCombinationParameters-v1390 +using supported_band_combination_v1390_l = dyn_array; -// SupportedBandCombinationAdd-v1390 ::= SEQUENCE (SIZE (1..maxBandComb-r11)) OF BandCombinationParameters-v1390 -typedef dyn_array supported_band_combination_add_v1390_l; +// SupportedBandCombinationAdd-v1390 ::= SEQUENCE (SIZE (1..256)) OF BandCombinationParameters-v1390 +using supported_band_combination_add_v1390_l = dyn_array; -// SupportedBandCombinationReduced-v1390 ::= SEQUENCE (SIZE (1..maxBandComb-r13)) OF BandCombinationParameters-v1390 -typedef dyn_array supported_band_combination_reduced_v1390_l; +// SupportedBandCombinationReduced-v1390 ::= SEQUENCE (SIZE (1..384)) OF BandCombinationParameters-v1390 +using supported_band_combination_reduced_v1390_l = dyn_array; // RF-Parameters-v1390 ::= SEQUENCE struct rf_params_v1390_s { - // member variables bool supported_band_combination_v1390_present = false; bool supported_band_combination_add_v1390_present = false; bool supported_band_combination_reduced_v1390_present = false; @@ -51791,19 +50944,18 @@ struct rf_params_v1390_s { void to_json(json_writer& j) const; }; -// SupportedBandCombination-v1430 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandCombinationParameters-v1430 -typedef dyn_array supported_band_combination_v1430_l; +// SupportedBandCombination-v1430 ::= SEQUENCE (SIZE (1..128)) OF BandCombinationParameters-v1430 +using supported_band_combination_v1430_l = dyn_array; -// SupportedBandCombinationAdd-v1430 ::= SEQUENCE (SIZE (1..maxBandComb-r11)) OF BandCombinationParameters-v1430 -typedef dyn_array supported_band_combination_add_v1430_l; +// SupportedBandCombinationAdd-v1430 ::= SEQUENCE (SIZE (1..256)) OF BandCombinationParameters-v1430 +using supported_band_combination_add_v1430_l = dyn_array; -// SupportedBandCombinationReduced-v1430 ::= SEQUENCE (SIZE (1..maxBandComb-r13)) OF BandCombinationParameters-v1430 -typedef dyn_array supported_band_combination_reduced_v1430_l; +// SupportedBandCombinationReduced-v1430 ::= SEQUENCE (SIZE (1..384)) OF BandCombinationParameters-v1430 +using supported_band_combination_reduced_v1430_l = dyn_array; // RF-Parameters-v1430 ::= SEQUENCE struct rf_params_v1430_s { - struct e_nb_requested_params_v1430_s_ { - // member variables + struct enb_requested_params_v1430_s_ { band_combination_list_r14_l requested_diff_fallback_comb_list_r14; }; @@ -51811,12 +50963,12 @@ struct rf_params_v1430_s { bool supported_band_combination_v1430_present = false; bool supported_band_combination_add_v1430_present = false; bool supported_band_combination_reduced_v1430_present = false; - bool e_nb_requested_params_v1430_present = false; + bool enb_requested_params_v1430_present = false; bool diff_fallback_comb_report_r14_present = false; supported_band_combination_v1430_l supported_band_combination_v1430; supported_band_combination_add_v1430_l supported_band_combination_add_v1430; supported_band_combination_reduced_v1430_l supported_band_combination_reduced_v1430; - e_nb_requested_params_v1430_s_ e_nb_requested_params_v1430; + enb_requested_params_v1430_s_ enb_requested_params_v1430; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -51824,18 +50976,17 @@ struct rf_params_v1430_s { void to_json(json_writer& j) const; }; -// SupportedBandCombination-v1450 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandCombinationParameters-v1450 -typedef dyn_array supported_band_combination_v1450_l; +// SupportedBandCombination-v1450 ::= SEQUENCE (SIZE (1..128)) OF BandCombinationParameters-v1450 +using supported_band_combination_v1450_l = dyn_array; -// SupportedBandCombinationAdd-v1450 ::= SEQUENCE (SIZE (1..maxBandComb-r11)) OF BandCombinationParameters-v1450 -typedef dyn_array supported_band_combination_add_v1450_l; +// SupportedBandCombinationAdd-v1450 ::= SEQUENCE (SIZE (1..256)) OF BandCombinationParameters-v1450 +using supported_band_combination_add_v1450_l = dyn_array; -// SupportedBandCombinationReduced-v1450 ::= SEQUENCE (SIZE (1..maxBandComb-r13)) OF BandCombinationParameters-v1450 -typedef dyn_array supported_band_combination_reduced_v1450_l; +// SupportedBandCombinationReduced-v1450 ::= SEQUENCE (SIZE (1..384)) OF BandCombinationParameters-v1450 +using supported_band_combination_reduced_v1450_l = dyn_array; // RF-Parameters-v1450 ::= SEQUENCE struct rf_params_v1450_s { - // member variables bool supported_band_combination_v1450_present = false; bool supported_band_combination_add_v1450_present = false; bool supported_band_combination_reduced_v1450_present = false; @@ -51849,18 +51000,17 @@ struct rf_params_v1450_s { void to_json(json_writer& j) const; }; -// SupportedBandCombination-v1470 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandCombinationParameters-v1470 -typedef dyn_array supported_band_combination_v1470_l; +// SupportedBandCombination-v1470 ::= SEQUENCE (SIZE (1..128)) OF BandCombinationParameters-v1470 +using supported_band_combination_v1470_l = dyn_array; -// SupportedBandCombinationAdd-v1470 ::= SEQUENCE (SIZE (1..maxBandComb-r11)) OF BandCombinationParameters-v1470 -typedef dyn_array supported_band_combination_add_v1470_l; +// SupportedBandCombinationAdd-v1470 ::= SEQUENCE (SIZE (1..256)) OF BandCombinationParameters-v1470 +using supported_band_combination_add_v1470_l = dyn_array; -// SupportedBandCombinationReduced-v1470 ::= SEQUENCE (SIZE (1..maxBandComb-r13)) OF BandCombinationParameters-v1470 -typedef dyn_array supported_band_combination_reduced_v1470_l; +// SupportedBandCombinationReduced-v1470 ::= SEQUENCE (SIZE (1..384)) OF BandCombinationParameters-v1470 +using supported_band_combination_reduced_v1470_l = dyn_array; // RF-Parameters-v1470 ::= SEQUENCE struct rf_params_v1470_s { - // member variables bool supported_band_combination_v1470_present = false; bool supported_band_combination_add_v1470_present = false; bool supported_band_combination_reduced_v1470_present = false; @@ -51874,19 +51024,18 @@ struct rf_params_v1470_s { void to_json(json_writer& j) const; }; -// SupportedBandCombination-v1530 ::= SEQUENCE (SIZE (1..maxBandComb-r10)) OF BandCombinationParameters-v1530 -typedef dyn_array supported_band_combination_v1530_l; +// SupportedBandCombination-v1530 ::= SEQUENCE (SIZE (1..128)) OF BandCombinationParameters-v1530 +using supported_band_combination_v1530_l = dyn_array; -// SupportedBandCombinationAdd-v1530 ::= SEQUENCE (SIZE (1..maxBandComb-r11)) OF BandCombinationParameters-v1530 -typedef dyn_array supported_band_combination_add_v1530_l; +// SupportedBandCombinationAdd-v1530 ::= SEQUENCE (SIZE (1..256)) OF BandCombinationParameters-v1530 +using supported_band_combination_add_v1530_l = dyn_array; -// SupportedBandCombinationReduced-v1530 ::= SEQUENCE (SIZE (1..maxBandComb-r13)) OF BandCombinationParameters-v1530 -typedef dyn_array supported_band_combination_reduced_v1530_l; +// SupportedBandCombinationReduced-v1530 ::= SEQUENCE (SIZE (1..384)) OF BandCombinationParameters-v1530 +using supported_band_combination_reduced_v1530_l = dyn_array; // RF-Parameters-v1530 ::= SEQUENCE struct rf_params_v1530_s { - // member variables - bool s_tti_spt_supported_r15_present = false; + bool stti_spt_supported_r15_present = false; bool supported_band_combination_v1530_present = false; bool supported_band_combination_add_v1530_present = false; bool supported_band_combination_reduced_v1530_present = false; @@ -51903,7 +51052,6 @@ struct rf_params_v1530_s { // SupportedBandEUTRA-v9e0 ::= SEQUENCE struct supported_band_eutra_v9e0_s { - // member variables bool band_eutra_v9e0_present = false; uint16_t band_eutra_v9e0 = 65; @@ -51913,12 +51061,11 @@ struct supported_band_eutra_v9e0_s { void to_json(json_writer& j) const; }; -// SupportedBandListEUTRA-v9e0 ::= SEQUENCE (SIZE (1..maxBands)) OF SupportedBandEUTRA-v9e0 -typedef dyn_array supported_band_list_eutra_v9e0_l; +// SupportedBandListEUTRA-v9e0 ::= SEQUENCE (SIZE (1..64)) OF SupportedBandEUTRA-v9e0 +using supported_band_list_eutra_v9e0_l = dyn_array; // RF-Parameters-v9e0 ::= SEQUENCE struct rf_params_v9e0_s { - // member variables bool supported_band_list_eutra_v9e0_present = false; supported_band_list_eutra_v9e0_l supported_band_list_eutra_v9e0; @@ -51930,7 +51077,6 @@ struct rf_params_v9e0_s { // SupportedBandInfo-r12 ::= SEQUENCE struct supported_band_info_r12_s { - // member variables bool support_r12_present = false; // sequence methods @@ -51939,8 +51085,8 @@ struct supported_band_info_r12_s { void to_json(json_writer& j) const; }; -// SupportedBandInfoList-r12 ::= SEQUENCE (SIZE (1..maxBands)) OF SupportedBandInfo-r12 -typedef dyn_array supported_band_info_list_r12_l; +// SupportedBandInfoList-r12 ::= SEQUENCE (SIZE (1..64)) OF SupportedBandInfo-r12 +using supported_band_info_list_r12_l = dyn_array; // SL-Parameters-r12 ::= SEQUENCE struct sl_params_r12_s { @@ -51973,7 +51119,6 @@ struct sl_params_r12_s { // V2X-BandParameters-r14 ::= SEQUENCE struct v2x_band_params_r14_s { - // member variables bool band_params_tx_sl_r14_present = false; bool band_params_rx_sl_r14_present = false; uint16_t v2x_freq_band_eutra_r14 = 1; @@ -51986,15 +51131,14 @@ struct v2x_band_params_r14_s { void to_json(json_writer& j) const; }; -// V2X-BandCombinationParameters-r14 ::= SEQUENCE (SIZE (1.. maxSimultaneousBands-r10)) OF V2X-BandParameters-r14 -typedef dyn_array v2x_band_combination_params_r14_l; +// V2X-BandCombinationParameters-r14 ::= SEQUENCE (SIZE (1..64)) OF V2X-BandParameters-r14 +using v2x_band_combination_params_r14_l = dyn_array; -// V2X-SupportedBandCombination-r14 ::= SEQUENCE (SIZE (1..maxBandComb-r13)) OF V2X-BandCombinationParameters-r14 -typedef dyn_array v2x_supported_band_combination_r14_l; +// V2X-SupportedBandCombination-r14 ::= SEQUENCE (SIZE (1..384)) OF V2X-BandCombinationParameters-r14 +using v2x_supported_band_combination_r14_l = dyn_array; // SL-Parameters-v1430 ::= SEQUENCE struct sl_params_v1430_s { - // member variables bool zone_based_pool_sel_r14_present = false; bool ue_autonomous_with_full_sensing_r14_present = false; bool ue_autonomous_with_partial_sensing_r14_present = false; @@ -52015,7 +51159,6 @@ struct sl_params_v1430_s { // V2X-BandParameters-v1530 ::= SEQUENCE struct v2x_band_params_v1530_s { - // member variables bool v2x_enhanced_high_reception_r15_present = false; // sequence methods @@ -52024,12 +51167,11 @@ struct v2x_band_params_v1530_s { void to_json(json_writer& j) const; }; -// V2X-BandCombinationParameters-v1530 ::= SEQUENCE (SIZE (1.. maxSimultaneousBands-r10)) OF V2X-BandParameters-v1530 -typedef dyn_array v2x_band_combination_params_v1530_l; +// V2X-BandCombinationParameters-v1530 ::= SEQUENCE (SIZE (1..64)) OF V2X-BandParameters-v1530 +using v2x_band_combination_params_v1530_l = dyn_array; // UE-CategorySL-r15 ::= SEQUENCE struct ue_category_sl_r15_s { - // member variables uint8_t ue_category_sl_c_tx_r15 = 1; uint8_t ue_category_sl_c_rx_r15 = 1; @@ -52039,8 +51181,8 @@ struct ue_category_sl_r15_s { void to_json(json_writer& j) const; }; -// V2X-SupportedBandCombination-v1530 ::= SEQUENCE (SIZE (1..maxBandComb-r13)) OF V2X-BandCombinationParameters-v1530 -typedef dyn_array v2x_supported_band_combination_v1530_l; +// V2X-SupportedBandCombination-v1530 ::= SEQUENCE (SIZE (1..384)) OF V2X-BandCombinationParameters-v1530 +using v2x_supported_band_combination_v1530_l = dyn_array; // SL-Parameters-v1530 ::= SEQUENCE struct sl_params_v1530_s { @@ -52067,28 +51209,28 @@ struct sl_params_v1530_s { void to_json(json_writer& j) const; }; -// N1SPUCCH-AN-PersistentList-r15 ::= SEQUENCE (SIZE (1..4)) OF INTEGER -typedef bounded_array n1_spucch_an_persistent_list_r15_l; +// N1SPUCCH-AN-PersistentList-r15 ::= SEQUENCE (SIZE (1..4)) OF INTEGER (0..2047) +using n1_spucch_an_persistent_list_r15_l = bounded_array; // SPS-ConfigDL-STTI-r15 ::= CHOICE struct sps_cfg_dl_stti_r15_c { struct setup_s_ { struct semi_persist_sched_interv_dl_stti_r15_opts { enum options { - s_tti1, - s_tti2, - s_tti3, - s_tti4, - s_tti6, - s_tti8, - s_tti12, - s_tti16, - s_tti20, - s_tti40, - s_tti60, - s_tti80, - s_tti120, - s_tti240, + stti1, + stti2, + stti3, + stti4, + stti6, + stti8, + stti12, + stti16, + stti20, + stti40, + stti60, + stti80, + stti120, + stti240, spare2, spare1, nulltype @@ -52101,7 +51243,6 @@ struct sps_cfg_dl_stti_r15_c { typedef enumerated semi_persist_sched_interv_dl_stti_r15_e_; struct two_ant_port_activ_r15_c_ { struct setup_s_ { - // member variables n1_spucch_an_persistent_list_r15_l n1_spucch_an_persistent_list_p1_r15; }; typedef setup_e types; @@ -52142,7 +51283,7 @@ struct sps_cfg_dl_stti_r15_c { semi_persist_sched_interv_dl_stti_r15_e_ semi_persist_sched_interv_dl_stti_r15; uint8_t nof_conf_sps_processes_stti_r15 = 1; two_ant_port_activ_r15_c_ two_ant_port_activ_r15; - uint8_t s_tti_start_time_dl_r15 = 0; + uint8_t stti_start_time_dl_r15 = 0; tpc_pdcch_cfg_c tpc_pdcch_cfg_pucch_sps_r15; // ... }; @@ -52179,7 +51320,6 @@ private: // NeighCellSI-AcquisitionParameters-v1530 ::= SEQUENCE struct neigh_cell_si_acquisition_params_v1530_s { - // member variables bool report_cgi_nr_en_dc_r15_present = false; bool report_cgi_nr_no_en_dc_r15_present = false; @@ -52191,7 +51331,6 @@ struct neigh_cell_si_acquisition_params_v1530_s { // LAA-Parameters-v1530 ::= SEQUENCE struct laa_params_v1530_s { - // member variables bool aul_r15_present = false; bool laa_pusch_mode1_r15_present = false; bool laa_pusch_mode2_r15_present = false; @@ -52205,7 +51344,6 @@ struct laa_params_v1530_s { // MeasParameters-v1530 ::= SEQUENCE struct meas_params_v1530_s { - // member variables bool qoe_meas_report_r15_present = false; bool qoe_mtsi_meas_report_r15_present = false; bool ca_idle_mode_meass_r15_present = false; @@ -52221,7 +51359,6 @@ struct meas_params_v1530_s { // Other-Parameters-v1530 ::= SEQUENCE struct other_params_v1530_s { - // member variables bool assist_info_bit_for_lc_r15_present = false; bool time_ref_provision_r15_present = false; bool flight_path_plan_r15_present = false; @@ -52234,7 +51371,6 @@ struct other_params_v1530_s { // RLC-Parameters-v1530 ::= SEQUENCE struct rlc_params_v1530_s { - // member variables bool flex_um_am_combinations_r15_present = false; bool rlc_am_ooo_delivery_r15_present = false; bool rlc_um_ooo_delivery_r15_present = false; @@ -52247,7 +51383,6 @@ struct rlc_params_v1530_s { // UE-BasedNetwPerfMeasParameters-v1530 ::= SEQUENCE struct ue_based_netw_perf_meas_params_v1530_s { - // member variables bool logged_meas_bt_r15_present = false; bool logged_meas_wlan_r15_present = false; bool imm_meas_bt_r15_present = false; @@ -52261,7 +51396,6 @@ struct ue_based_netw_perf_meas_params_v1530_s { // UE-EUTRA-CapabilityAddXDD-Mode-v1530 ::= SEQUENCE struct ue_eutra_cap_add_xdd_mode_v1530_s { - // member variables bool neigh_cell_si_acquisition_params_v1530_present = false; bool reduced_cp_latency_r15_present = false; neigh_cell_si_acquisition_params_v1530_s neigh_cell_si_acquisition_params_v1530; @@ -52274,7 +51408,6 @@ struct ue_eutra_cap_add_xdd_mode_v1530_s { // MeasParameters-v1520 ::= SEQUENCE struct meas_params_v1520_s { - // member variables bool meas_gap_patterns_v1520_present = false; fixed_bitstring<8> meas_gap_patterns_v1520; @@ -52286,7 +51419,6 @@ struct meas_params_v1520_s { // UE-EUTRA-Capability-v1530-IEs ::= SEQUENCE struct ue_eutra_cap_v1530_ies_s { - // member variables bool meas_params_v1530_present = false; bool other_params_v1530_present = false; bool neigh_cell_si_acquisition_params_v1530_present = false; @@ -52302,8 +51434,8 @@ struct ue_eutra_cap_v1530_ies_s { bool reduced_cp_latency_r15_present = false; bool laa_params_v1530_present = false; bool ue_category_ul_v1530_present = false; - bool fdd_add_ue_eutra_capabilities_v1530_present = false; - bool tdd_add_ue_eutra_capabilities_v1530_present = false; + bool fdd_add_ue_eutra_cap_v1530_present = false; + bool tdd_add_ue_eutra_cap_v1530_present = false; bool non_crit_ext_present = false; meas_params_v1530_s meas_params_v1530; other_params_v1530_s other_params_v1530; @@ -52318,8 +51450,8 @@ struct ue_eutra_cap_v1530_ies_s { sl_params_v1530_s sl_params_v1530; laa_params_v1530_s laa_params_v1530; uint8_t ue_category_ul_v1530 = 22; - ue_eutra_cap_add_xdd_mode_v1530_s fdd_add_ue_eutra_capabilities_v1530; - ue_eutra_cap_add_xdd_mode_v1530_s tdd_add_ue_eutra_capabilities_v1530; + ue_eutra_cap_add_xdd_mode_v1530_s fdd_add_ue_eutra_cap_v1530; + ue_eutra_cap_add_xdd_mode_v1530_s tdd_add_ue_eutra_cap_v1530; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -52329,7 +51461,6 @@ struct ue_eutra_cap_v1530_ies_s { // UE-EUTRA-Capability-v1520-IEs ::= SEQUENCE struct ue_eutra_cap_v1520_ies_s { - // member variables bool non_crit_ext_present = false; meas_params_v1520_s meas_params_v1520; ue_eutra_cap_v1530_ies_s non_crit_ext; @@ -52342,7 +51473,6 @@ struct ue_eutra_cap_v1520_ies_s { // UE-EUTRA-CapabilityAddXDD-Mode-v1510 ::= SEQUENCE struct ue_eutra_cap_add_xdd_mode_v1510_s { - // member variables bool pdcp_params_nr_r15_present = false; pdcp_params_nr_r15_s pdcp_params_nr_r15; @@ -52354,7 +51484,6 @@ struct ue_eutra_cap_add_xdd_mode_v1510_s { // Other-Parameters-v1460 ::= SEQUENCE struct other_params_v1460_s { - // member variables bool non_csg_si_report_r14_present = false; // sequence methods @@ -52365,18 +51494,17 @@ struct other_params_v1460_s { // UE-EUTRA-Capability-v1510-IEs ::= SEQUENCE struct ue_eutra_cap_v1510_ies_s { - // member variables - bool irat_params_nr_r15_present = false; - bool feature_sets_eutra_r15_present = false; - bool pdcp_params_nr_r15_present = false; - bool fdd_add_ue_eutra_capabilities_v1510_present = false; - bool tdd_add_ue_eutra_capabilities_v1510_present = false; - bool non_crit_ext_present = false; + bool irat_params_nr_r15_present = false; + bool feature_sets_eutra_r15_present = false; + bool pdcp_params_nr_r15_present = false; + bool fdd_add_ue_eutra_cap_v1510_present = false; + bool tdd_add_ue_eutra_cap_v1510_present = false; + bool non_crit_ext_present = false; irat_params_nr_r15_s irat_params_nr_r15; feature_sets_eutra_r15_s feature_sets_eutra_r15; pdcp_params_nr_r15_s pdcp_params_nr_r15; - ue_eutra_cap_add_xdd_mode_v1510_s fdd_add_ue_eutra_capabilities_v1510; - ue_eutra_cap_add_xdd_mode_v1510_s tdd_add_ue_eutra_capabilities_v1510; + ue_eutra_cap_add_xdd_mode_v1510_s fdd_add_ue_eutra_cap_v1510; + ue_eutra_cap_add_xdd_mode_v1510_s tdd_add_ue_eutra_cap_v1510; ue_eutra_cap_v1520_ies_s non_crit_ext; // sequence methods @@ -52387,7 +51515,6 @@ struct ue_eutra_cap_v1510_ies_s { // OtherParameters-v1450 ::= SEQUENCE struct other_params_v1450_s { - // member variables bool overheat_ind_r14_present = false; // sequence methods @@ -52398,7 +51525,6 @@ struct other_params_v1450_s { // PhyLayerParameters-v1450 ::= SEQUENCE struct phy_layer_params_v1450_s { - // member variables bool ce_srs_enhancement_without_comb4_r14_present = false; bool crs_less_dw_pts_r14_present = false; @@ -52410,7 +51536,6 @@ struct phy_layer_params_v1450_s { // UE-EUTRA-Capability-v1460-IEs ::= SEQUENCE struct ue_eutra_cap_v1460_ies_s { - // member variables bool ue_category_dl_v1460_present = false; bool non_crit_ext_present = false; uint8_t ue_category_dl_v1460 = 21; @@ -52425,7 +51550,6 @@ struct ue_eutra_cap_v1460_ies_s { // LWA-Parameters-v1440 ::= SEQUENCE struct lwa_params_v1440_s { - // member variables bool lwa_rlc_um_r14_present = false; // sequence methods @@ -52436,7 +51560,6 @@ struct lwa_params_v1440_s { // MAC-Parameters-v1440 ::= SEQUENCE struct mac_params_v1440_s { - // member variables bool rai_support_r14_present = false; // sequence methods @@ -52447,7 +51570,6 @@ struct mac_params_v1440_s { // MMTEL-Parameters-r14 ::= SEQUENCE struct mmtel_params_r14_s { - // member variables bool delay_budget_report_r14_present = false; bool pusch_enhance_r14_present = false; bool recommended_bit_rate_r14_present = false; @@ -52461,7 +51583,6 @@ struct mmtel_params_r14_s { // UE-EUTRA-Capability-v1450-IEs ::= SEQUENCE struct ue_eutra_cap_v1450_ies_s { - // member variables bool phy_layer_params_v1450_present = false; bool rf_params_v1450_present = false; bool ue_category_dl_v1450_present = false; @@ -52480,7 +51601,6 @@ struct ue_eutra_cap_v1450_ies_s { // CE-Parameters-v1430 ::= SEQUENCE struct ce_params_v1430_s { - // member variables bool ce_switch_without_ho_r14_present = false; // sequence methods @@ -52491,7 +51611,6 @@ struct ce_params_v1430_s { // HighSpeedEnhParameters-r14 ::= SEQUENCE struct high_speed_enh_params_r14_s { - // member variables bool meas_enhance_r14_present = false; bool demod_enhance_r14_present = false; bool prach_enhance_r14_present = false; @@ -52505,7 +51624,7 @@ struct high_speed_enh_params_r14_s { // LAA-Parameters-v1430 ::= SEQUENCE struct laa_params_v1430_s { struct two_step_sched_timing_info_r14_opts { - enum options { n_plus1, n_plus2, n_plus3, nulltype } value; + enum options { nplus1, nplus2, nplus3, nulltype } value; typedef uint8_t number_type; std::string to_string() const; @@ -52530,7 +51649,6 @@ struct laa_params_v1430_s { // LWA-Parameters-v1430 ::= SEQUENCE struct lwa_params_v1430_s { - // member variables bool lwa_ho_without_wt_change_r14_present = false; bool lwa_ul_r14_present = false; bool wlan_periodic_meas_r14_present = false; @@ -52546,7 +51664,6 @@ struct lwa_params_v1430_s { // LWIP-Parameters-v1430 ::= SEQUENCE struct lwip_params_v1430_s { - // member variables bool lwip_aggregation_dl_r14_present = false; bool lwip_aggregation_ul_r14_present = false; @@ -52558,7 +51675,6 @@ struct lwip_params_v1430_s { // MAC-Parameters-v1430 ::= SEQUENCE struct mac_params_v1430_s { - // member variables bool short_sps_interv_fdd_r14_present = false; bool short_sps_interv_tdd_r14_present = false; bool skip_ul_dynamic_r14_present = false; @@ -52574,7 +51690,6 @@ struct mac_params_v1430_s { // MBMS-Parameters-v1430 ::= SEQUENCE struct mbms_params_v1430_s { - // member variables bool fembms_ded_cell_r14_present = false; bool fembms_mixed_cell_r14_present = false; bool subcarrier_spacing_mbms_khz7dot5_r14_present = false; @@ -52588,7 +51703,6 @@ struct mbms_params_v1430_s { // MeasParameters-v1430 ::= SEQUENCE struct meas_params_v1430_s { - // member variables bool ce_meass_r14_present = false; bool ncsg_r14_present = false; bool short_meas_gap_r14_present = false; @@ -52603,7 +51717,6 @@ struct meas_params_v1430_s { // MobilityParameters-r14 ::= SEQUENCE struct mob_params_r14_s { - // member variables bool make_before_break_r14_present = false; bool rach_less_r14_present = false; @@ -52615,7 +51728,6 @@ struct mob_params_r14_s { // Other-Parameters-v1430 ::= SEQUENCE struct other_params_v1430_s { - // member variables bool bw_pref_ind_r14_present = false; bool rlm_report_support_r14_present = false; @@ -52628,7 +51740,6 @@ struct other_params_v1430_s { // PDCP-Parameters-v1430 ::= SEQUENCE struct pdcp_params_v1430_s { struct supported_ul_only_rohc_profiles_r14_s_ { - // member variables bool profile0x0006_r14 = false; }; struct max_num_rohc_context_sessions_r14_opts { @@ -52671,7 +51782,6 @@ struct pdcp_params_v1430_s { // RLC-Parameters-v1430 ::= SEQUENCE struct rlc_params_v1430_s { - // member variables bool extended_poll_byte_r14_present = false; // sequence methods @@ -52682,7 +51792,6 @@ struct rlc_params_v1430_s { // UE-BasedNetwPerfMeasParameters-v1430 ::= SEQUENCE struct ue_based_netw_perf_meas_params_v1430_s { - // member variables bool location_report_r14_present = false; // sequence methods @@ -52693,7 +51802,6 @@ struct ue_based_netw_perf_meas_params_v1430_s { // UE-EUTRA-Capability-v1440-IEs ::= SEQUENCE struct ue_eutra_cap_v1440_ies_s { - // member variables bool non_crit_ext_present = false; lwa_params_v1440_s lwa_params_v1440; mac_params_v1440_s mac_params_v1440; @@ -52707,7 +51815,6 @@ struct ue_eutra_cap_v1440_ies_s { // UE-EUTRA-CapabilityAddXDD-Mode-v1430 ::= SEQUENCE struct ue_eutra_cap_add_xdd_mode_v1430_s { - // member variables bool phy_layer_params_v1430_present = false; bool mmtel_params_r14_present = false; phy_layer_params_v1430_s phy_layer_params_v1430; @@ -52789,7 +51896,6 @@ struct mbms_params_v1470_s { // Other-Parameters-v1360 ::= SEQUENCE struct other_params_v1360_s { - // member variables bool in_dev_coex_ind_hardware_sharing_ind_r13_present = false; // sequence methods @@ -52822,8 +51928,8 @@ struct ue_eutra_cap_v1430_ies_s { bool lwip_params_v1430_present = false; bool mmtel_params_r14_present = false; bool mob_params_r14_present = false; - bool fdd_add_ue_eutra_capabilities_v1430_present = false; - bool tdd_add_ue_eutra_capabilities_v1430_present = false; + bool fdd_add_ue_eutra_cap_v1430_present = false; + bool tdd_add_ue_eutra_cap_v1430_present = false; bool mbms_params_v1430_present = false; bool sl_params_v1430_present = false; bool ue_based_netw_perf_meas_params_v1430_present = false; @@ -52843,8 +51949,8 @@ struct ue_eutra_cap_v1430_ies_s { mmtel_params_r14_s mmtel_params_r14; mob_params_r14_s mob_params_r14; ce_params_v1430_s ce_params_v1430; - ue_eutra_cap_add_xdd_mode_v1430_s fdd_add_ue_eutra_capabilities_v1430; - ue_eutra_cap_add_xdd_mode_v1430_s tdd_add_ue_eutra_capabilities_v1430; + ue_eutra_cap_add_xdd_mode_v1430_s fdd_add_ue_eutra_cap_v1430; + ue_eutra_cap_add_xdd_mode_v1430_s tdd_add_ue_eutra_cap_v1430; mbms_params_v1430_s mbms_params_v1430; sl_params_v1430_s sl_params_v1430; ue_based_netw_perf_meas_params_v1430_s ue_based_netw_perf_meas_params_v1430; @@ -52859,7 +51965,6 @@ struct ue_eutra_cap_v1430_ies_s { // CE-Parameters-v1350 ::= SEQUENCE struct ce_params_v1350_s { - // member variables bool unicast_freq_hop_r13_present = false; // sequence methods @@ -52870,7 +51975,6 @@ struct ce_params_v1350_s { // UE-EUTRA-Capability-v1360-IEs ::= SEQUENCE struct ue_eutra_cap_v1360_ies_s { - // member variables bool other_params_v1360_present = false; bool non_crit_ext_present = false; other_params_v1360_s other_params_v1360; @@ -52884,7 +51988,6 @@ struct ue_eutra_cap_v1360_ies_s { // UE-EUTRA-Capability-v1470-IEs ::= SEQUENCE struct ue_eutra_cap_v1470_ies_s { - // member variables bool mbms_params_v1470_present = false; bool phy_layer_params_v1470_present = false; bool rf_params_v1470_present = false; @@ -52901,7 +52004,6 @@ struct ue_eutra_cap_v1470_ies_s { // CE-Parameters-v1380 ::= SEQUENCE struct ce_params_v1380_s { - // member variables bool tm6_ce_mode_a_r13_present = false; // sequence methods @@ -52912,7 +52014,6 @@ struct ce_params_v1380_s { // UE-EUTRA-Capability-v1350-IEs ::= SEQUENCE struct ue_eutra_cap_v1350_ies_s { - // member variables bool ue_category_dl_v1350_present = false; bool ue_category_ul_v1350_present = false; bool non_crit_ext_present = false; @@ -52927,7 +52028,6 @@ struct ue_eutra_cap_v1350_ies_s { // UE-EUTRA-Capability-v13x0-IEs ::= SEQUENCE struct ue_eutra_cap_v13x0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -52941,7 +52041,6 @@ struct ue_eutra_cap_v13x0_ies_s { // CE-Parameters-v1370 ::= SEQUENCE struct ce_params_v1370_s { - // member variables bool tm9_ce_mode_a_r13_present = false; bool tm9_ce_mode_b_r13_present = false; @@ -52953,7 +52052,6 @@ struct ce_params_v1370_s { // SCPTM-Parameters-r13 ::= SEQUENCE struct scptm_params_r13_s { - // member variables bool scptm_parallel_reception_r13_present = false; bool scptm_scell_r13_present = false; bool scptm_non_serving_cell_r13_present = false; @@ -52967,7 +52065,6 @@ struct scptm_params_r13_s { // UE-EUTRA-Capability-v1340-IEs ::= SEQUENCE struct ue_eutra_cap_v1340_ies_s { - // member variables bool ue_category_ul_v1340_present = false; bool non_crit_ext_present = false; uint8_t ue_category_ul_v1340 = 15; @@ -52981,7 +52078,6 @@ struct ue_eutra_cap_v1340_ies_s { // UE-EUTRA-Capability-v1390-IEs ::= SEQUENCE struct ue_eutra_cap_v1390_ies_s { - // member variables bool rf_params_v1390_present = false; bool non_crit_ext_present = false; rf_params_v1390_s rf_params_v1390; @@ -52995,7 +52091,6 @@ struct ue_eutra_cap_v1390_ies_s { // UE-EUTRA-CapabilityAddXDD-Mode-v1380 ::= SEQUENCE struct ue_eutra_cap_add_xdd_mode_v1380_s { - // member variables ce_params_v1380_s ce_params_v1380; // sequence methods @@ -53006,7 +52101,6 @@ struct ue_eutra_cap_add_xdd_mode_v1380_s { // CE-Parameters-v1320 ::= SEQUENCE struct ce_params_v1320_s { - // member variables bool intra_freq_a3_ce_mode_a_r13_present = false; bool intra_freq_a3_ce_mode_b_r13_present = false; bool intra_freq_ho_ce_mode_a_r13_present = false; @@ -53021,7 +52115,6 @@ struct ce_params_v1320_s { // PhyLayerParameters-v1310 ::= SEQUENCE struct phy_layer_params_v1310_s { struct supported_blind_decoding_r13_s_ { - // member variables bool max_num_decoding_r13_present = false; bool pdcch_candidate_reductions_r13_present = false; bool skip_monitoring_dci_format0_minus1_a_r13_present = false; @@ -53033,7 +52126,7 @@ struct phy_layer_params_v1310_s { bool codebook_harq_ack_r13_present = false; bool cross_carrier_sched_b5_c_r13_present = false; bool fdd_harq_timing_tdd_r13_present = false; - bool max_num_updated_csi_proc_r13_present = false; + bool max_num_upd_csi_proc_r13_present = false; bool pucch_format4_r13_present = false; bool pucch_format5_r13_present = false; bool pucch_scell_r13_present = false; @@ -53044,7 +52137,7 @@ struct phy_layer_params_v1310_s { bool pdsch_collision_handling_r13_present = false; fixed_bitstring<2> aperiodic_csi_report_r13; fixed_bitstring<2> codebook_harq_ack_r13; - uint8_t max_num_updated_csi_proc_r13 = 5; + uint8_t max_num_upd_csi_proc_r13 = 5; supported_blind_decoding_r13_s_ supported_blind_decoding_r13; // sequence methods @@ -53055,7 +52148,6 @@ struct phy_layer_params_v1310_s { // UE-EUTRA-Capability-v1330-IEs ::= SEQUENCE struct ue_eutra_cap_v1330_ies_s { - // member variables bool ue_category_dl_v1330_present = false; bool phy_layer_params_v1330_present = false; bool ue_ce_need_ul_gaps_r13_present = false; @@ -53072,13 +52164,12 @@ struct ue_eutra_cap_v1330_ies_s { // UE-EUTRA-Capability-v1380-IEs ::= SEQUENCE struct ue_eutra_cap_v1380_ies_s { - // member variables bool rf_params_v1380_present = false; bool non_crit_ext_present = false; rf_params_v1380_s rf_params_v1380; ce_params_v1380_s ce_params_v1380; - ue_eutra_cap_add_xdd_mode_v1380_s fdd_add_ue_eutra_capabilities_v1380; - ue_eutra_cap_add_xdd_mode_v1380_s tdd_add_ue_eutra_capabilities_v1380; + ue_eutra_cap_add_xdd_mode_v1380_s fdd_add_ue_eutra_cap_v1380; + ue_eutra_cap_add_xdd_mode_v1380_s tdd_add_ue_eutra_cap_v1380; ue_eutra_cap_v1390_ies_s non_crit_ext; // sequence methods @@ -53089,7 +52180,6 @@ struct ue_eutra_cap_v1380_ies_s { // UE-EUTRA-CapabilityAddXDD-Mode-v1320 ::= SEQUENCE struct ue_eutra_cap_add_xdd_mode_v1320_s { - // member variables bool phy_layer_params_v1320_present = false; bool scptm_params_r13_present = false; phy_layer_params_v1320_s phy_layer_params_v1320; @@ -53103,7 +52193,6 @@ struct ue_eutra_cap_add_xdd_mode_v1320_s { // UE-EUTRA-CapabilityAddXDD-Mode-v1370 ::= SEQUENCE struct ue_eutra_cap_add_xdd_mode_v1370_s { - // member variables bool ce_params_v1370_present = false; ce_params_v1370_s ce_params_v1370; @@ -53115,7 +52204,6 @@ struct ue_eutra_cap_add_xdd_mode_v1370_s { // CE-Parameters-r13 ::= SEQUENCE struct ce_params_r13_s { - // member variables bool ce_mode_a_r13_present = false; bool ce_mode_b_r13_present = false; @@ -53127,7 +52215,6 @@ struct ce_params_r13_s { // DC-Parameters-v1310 ::= SEQUENCE struct dc_params_v1310_s { - // member variables bool pdcp_transfer_split_ul_r13_present = false; bool ue_sstd_meas_r13_present = false; @@ -53139,7 +52226,6 @@ struct dc_params_v1310_s { // LAA-Parameters-r13 ::= SEQUENCE struct laa_params_r13_s { - // member variables bool cross_carrier_sched_laa_dl_r13_present = false; bool csi_rs_drs_rrm_meass_laa_r13_present = false; bool dl_laa_r13_present = false; @@ -53156,7 +52242,6 @@ struct laa_params_r13_s { // LWA-Parameters-r13 ::= SEQUENCE struct lwa_params_r13_s { - // member variables bool lwa_r13_present = false; bool lwa_split_bearer_r13_present = false; bool wlan_mac_address_r13_present = false; @@ -53171,7 +52256,6 @@ struct lwa_params_r13_s { // LWIP-Parameters-r13 ::= SEQUENCE struct lwip_params_r13_s { - // member variables bool lwip_r13_present = false; // sequence methods @@ -53182,7 +52266,6 @@ struct lwip_params_r13_s { // MAC-Parameters-v1310 ::= SEQUENCE struct mac_params_v1310_s { - // member variables bool extended_mac_len_field_r13_present = false; bool extended_long_drx_r13_present = false; @@ -53194,7 +52277,6 @@ struct mac_params_v1310_s { // MeasParameters-v1310 ::= SEQUENCE struct meas_params_v1310_s { - // member variables bool rs_sinr_meas_r13_present = false; bool white_cell_list_r13_present = false; bool extended_max_obj_id_r13_present = false; @@ -53211,7 +52293,6 @@ struct meas_params_v1310_s { // PDCP-Parameters-v1310 ::= SEQUENCE struct pdcp_params_v1310_s { - // member variables bool pdcp_sn_ext_minus18bits_r13_present = false; // sequence methods @@ -53222,7 +52303,6 @@ struct pdcp_params_v1310_s { // RLC-Parameters-v1310 ::= SEQUENCE struct rlc_params_v1310_s { - // member variables bool extended_rlc_sn_so_field_r13_present = false; // sequence methods @@ -53233,7 +52313,6 @@ struct rlc_params_v1310_s { // SL-Parameters-v1310 ::= SEQUENCE struct sl_params_v1310_s { - // member variables bool disc_sys_info_report_r13_present = false; bool comm_multiple_tx_r13_present = false; bool disc_inter_freq_tx_r13_present = false; @@ -53247,18 +52326,17 @@ struct sl_params_v1310_s { // UE-EUTRA-Capability-v1320-IEs ::= SEQUENCE struct ue_eutra_cap_v1320_ies_s { - // member variables - bool ce_params_v1320_present = false; - bool phy_layer_params_v1320_present = false; - bool rf_params_v1320_present = false; - bool fdd_add_ue_eutra_capabilities_v1320_present = false; - bool tdd_add_ue_eutra_capabilities_v1320_present = false; - bool non_crit_ext_present = false; + bool ce_params_v1320_present = false; + bool phy_layer_params_v1320_present = false; + bool rf_params_v1320_present = false; + bool fdd_add_ue_eutra_cap_v1320_present = false; + bool tdd_add_ue_eutra_cap_v1320_present = false; + bool non_crit_ext_present = false; ce_params_v1320_s ce_params_v1320; phy_layer_params_v1320_s phy_layer_params_v1320; rf_params_v1320_s rf_params_v1320; - ue_eutra_cap_add_xdd_mode_v1320_s fdd_add_ue_eutra_capabilities_v1320; - ue_eutra_cap_add_xdd_mode_v1320_s tdd_add_ue_eutra_capabilities_v1320; + ue_eutra_cap_add_xdd_mode_v1320_s fdd_add_ue_eutra_cap_v1320; + ue_eutra_cap_add_xdd_mode_v1320_s tdd_add_ue_eutra_cap_v1320; ue_eutra_cap_v1330_ies_s non_crit_ext; // sequence methods @@ -53269,14 +52347,13 @@ struct ue_eutra_cap_v1320_ies_s { // UE-EUTRA-Capability-v1370-IEs ::= SEQUENCE struct ue_eutra_cap_v1370_ies_s { - // member variables - bool ce_params_v1370_present = false; - bool fdd_add_ue_eutra_capabilities_v1370_present = false; - bool tdd_add_ue_eutra_capabilities_v1370_present = false; - bool non_crit_ext_present = false; + bool ce_params_v1370_present = false; + bool fdd_add_ue_eutra_cap_v1370_present = false; + bool tdd_add_ue_eutra_cap_v1370_present = false; + bool non_crit_ext_present = false; ce_params_v1370_s ce_params_v1370; - ue_eutra_cap_add_xdd_mode_v1370_s fdd_add_ue_eutra_capabilities_v1370; - ue_eutra_cap_add_xdd_mode_v1370_s tdd_add_ue_eutra_capabilities_v1370; + ue_eutra_cap_add_xdd_mode_v1370_s fdd_add_ue_eutra_cap_v1370; + ue_eutra_cap_add_xdd_mode_v1370_s tdd_add_ue_eutra_cap_v1370; ue_eutra_cap_v1380_ies_s non_crit_ext; // sequence methods @@ -53287,7 +52364,6 @@ struct ue_eutra_cap_v1370_ies_s { // UE-EUTRA-CapabilityAddXDD-Mode-v1310 ::= SEQUENCE struct ue_eutra_cap_add_xdd_mode_v1310_s { - // member variables bool phy_layer_params_v1310_present = false; phy_layer_params_v1310_s phy_layer_params_v1310; @@ -53299,7 +52375,6 @@ struct ue_eutra_cap_add_xdd_mode_v1310_s { // WLAN-IW-Parameters-v1310 ::= SEQUENCE struct wlan_iw_params_v1310_s { - // member variables bool rclwi_r13_present = false; // sequence methods @@ -53310,8 +52385,7 @@ struct wlan_iw_params_v1310_s { // PhyLayerParameters-v1280 ::= SEQUENCE struct phy_layer_params_v1280_s { - // member variables - bool alternative_tbs_indices_r12_present = false; + bool alt_tbs_indices_r12_present = false; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -53321,7 +52395,6 @@ struct phy_layer_params_v1280_s { // RF-Parameters-v12b0 ::= SEQUENCE struct rf_params_v12b0_s { - // member variables bool max_layers_mimo_ind_r12_present = false; // sequence methods @@ -53332,7 +52405,6 @@ struct rf_params_v12b0_s { // UE-EUTRA-Capability-v12x0-IEs ::= SEQUENCE struct ue_eutra_cap_v12x0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -53364,21 +52436,21 @@ struct ue_eutra_cap_v1310_ies_s { typedef enumerated ue_category_ul_v1310_e_; // member variables - bool ue_category_dl_v1310_present = false; - bool ue_category_ul_v1310_present = false; - bool mac_params_v1310_present = false; - bool phy_layer_params_v1310_present = false; - bool rf_params_v1310_present = false; - bool meas_params_v1310_present = false; - bool dc_params_v1310_present = false; - bool sl_params_v1310_present = false; - bool scptm_params_r13_present = false; - bool ce_params_r13_present = false; - bool laa_params_r13_present = false; - bool lwa_params_r13_present = false; - bool fdd_add_ue_eutra_capabilities_v1310_present = false; - bool tdd_add_ue_eutra_capabilities_v1310_present = false; - bool non_crit_ext_present = false; + bool ue_category_dl_v1310_present = false; + bool ue_category_ul_v1310_present = false; + bool mac_params_v1310_present = false; + bool phy_layer_params_v1310_present = false; + bool rf_params_v1310_present = false; + bool meas_params_v1310_present = false; + bool dc_params_v1310_present = false; + bool sl_params_v1310_present = false; + bool scptm_params_r13_present = false; + bool ce_params_r13_present = false; + bool laa_params_r13_present = false; + bool lwa_params_r13_present = false; + bool fdd_add_ue_eutra_cap_v1310_present = false; + bool tdd_add_ue_eutra_cap_v1310_present = false; + bool non_crit_ext_present = false; ue_category_dl_v1310_e_ ue_category_dl_v1310; ue_category_ul_v1310_e_ ue_category_ul_v1310; pdcp_params_v1310_s pdcp_params_v1310; @@ -53396,8 +52468,8 @@ struct ue_eutra_cap_v1310_ies_s { lwa_params_r13_s lwa_params_r13; wlan_iw_params_v1310_s wlan_iw_params_v1310; lwip_params_r13_s lwip_params_r13; - ue_eutra_cap_add_xdd_mode_v1310_s fdd_add_ue_eutra_capabilities_v1310; - ue_eutra_cap_add_xdd_mode_v1310_s tdd_add_ue_eutra_capabilities_v1310; + ue_eutra_cap_add_xdd_mode_v1310_s fdd_add_ue_eutra_cap_v1310; + ue_eutra_cap_add_xdd_mode_v1310_s tdd_add_ue_eutra_cap_v1310; ue_eutra_cap_v1320_ies_s non_crit_ext; // sequence methods @@ -53408,7 +52480,6 @@ struct ue_eutra_cap_v1310_ies_s { // UE-EUTRA-Capability-v1280-IEs ::= SEQUENCE struct ue_eutra_cap_v1280_ies_s { - // member variables bool phy_layer_params_v1280_present = false; bool non_crit_ext_present = false; phy_layer_params_v1280_s phy_layer_params_v1280; @@ -53422,7 +52493,6 @@ struct ue_eutra_cap_v1280_ies_s { // UE-EUTRA-Capability-v12b0-IEs ::= SEQUENCE struct ue_eutra_cap_v12b0_ies_s { - // member variables bool rf_params_v12b0_present = false; bool non_crit_ext_present = false; rf_params_v12b0_s rf_params_v12b0; @@ -53436,9 +52506,8 @@ struct ue_eutra_cap_v12b0_ies_s { // MeasParameters-v1250 ::= SEQUENCE struct meas_params_v1250_s { - // member variables bool timer_t312_r12_present = false; - bool alternative_time_to_trigger_r12_present = false; + bool alt_time_to_trigger_r12_present = false; bool inc_mon_eutra_r12_present = false; bool inc_mon_utra_r12_present = false; bool extended_max_meas_id_r12_present = false; @@ -53455,7 +52524,6 @@ struct meas_params_v1250_s { // Other-Parameters-v11d0 ::= SEQUENCE struct other_params_v11d0_s { - // member variables bool in_dev_coex_ind_ul_ca_r11_present = false; // sequence methods @@ -53466,7 +52534,6 @@ struct other_params_v11d0_s { // RF-Parameters-v10j0 ::= SEQUENCE struct rf_params_v10j0_s { - // member variables bool multi_ns_pmax_r10_present = false; // sequence methods @@ -53477,7 +52544,6 @@ struct rf_params_v10j0_s { // UE-EUTRA-Capability-v11x0-IEs ::= SEQUENCE struct ue_eutra_cap_v11x0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -53491,7 +52557,6 @@ struct ue_eutra_cap_v11x0_ies_s { // UE-EUTRA-Capability-v1270-IEs ::= SEQUENCE struct ue_eutra_cap_v1270_ies_s { - // member variables bool rf_params_v1270_present = false; bool non_crit_ext_present = false; rf_params_v1270_s rf_params_v1270; @@ -53505,7 +52570,6 @@ struct ue_eutra_cap_v1270_ies_s { // DC-Parameters-r12 ::= SEQUENCE struct dc_params_r12_s { - // member variables bool drb_type_split_r12_present = false; bool drb_type_scg_r12_present = false; @@ -53517,7 +52581,6 @@ struct dc_params_r12_s { // MAC-Parameters-r12 ::= SEQUENCE struct mac_params_r12_s { - // member variables bool lc_ch_sr_prohibit_timer_r12_present = false; bool long_drx_cmd_r12_present = false; @@ -53529,7 +52592,6 @@ struct mac_params_r12_s { // MBMS-Parameters-v1250 ::= SEQUENCE struct mbms_params_v1250_s { - // member variables bool mbms_async_dc_r12_present = false; // sequence methods @@ -53556,7 +52618,6 @@ struct ue_based_netw_perf_meas_params_v1250_s { // UE-EUTRA-Capability-v10j0-IEs ::= SEQUENCE struct ue_eutra_cap_v10j0_ies_s { - // member variables bool rf_params_v10j0_present = false; bool non_crit_ext_present = false; rf_params_v10j0_s rf_params_v10j0; @@ -53569,7 +52630,6 @@ struct ue_eutra_cap_v10j0_ies_s { // UE-EUTRA-Capability-v11d0-IEs ::= SEQUENCE struct ue_eutra_cap_v11d0_ies_s { - // member variables bool rf_params_v11d0_present = false; bool other_params_v11d0_present = false; bool non_crit_ext_present = false; @@ -53585,7 +52645,6 @@ struct ue_eutra_cap_v11d0_ies_s { // UE-EUTRA-Capability-v1260-IEs ::= SEQUENCE struct ue_eutra_cap_v1260_ies_s { - // member variables bool ue_category_dl_v1260_present = false; bool non_crit_ext_present = false; uint8_t ue_category_dl_v1260 = 15; @@ -53599,7 +52658,6 @@ struct ue_eutra_cap_v1260_ies_s { // UE-EUTRA-CapabilityAddXDD-Mode-v1250 ::= SEQUENCE struct ue_eutra_cap_add_xdd_mode_v1250_s { - // member variables bool phy_layer_params_v1250_present = false; bool meas_params_v1250_present = false; phy_layer_params_v1250_s phy_layer_params_v1250; @@ -53613,7 +52671,6 @@ struct ue_eutra_cap_add_xdd_mode_v1250_s { // WLAN-IW-Parameters-r12 ::= SEQUENCE struct wlan_iw_params_r12_s { - // member variables bool wlan_iw_ran_rules_r12_present = false; bool wlan_iw_andsf_policies_r12_present = false; @@ -53625,7 +52682,6 @@ struct wlan_iw_params_r12_s { // MBMS-Parameters-r11 ::= SEQUENCE struct mbms_params_r11_s { - // member variables bool mbms_scell_r11_present = false; bool mbms_non_serving_cell_r11_present = false; @@ -53637,7 +52693,6 @@ struct mbms_params_r11_s { // MeasParameters-v11a0 ::= SEQUENCE struct meas_params_v11a0_s { - // member variables bool benefits_from_interruption_r11_present = false; // sequence methods @@ -53648,7 +52703,6 @@ struct meas_params_v11a0_s { // RF-Parameters-v10f0 ::= SEQUENCE struct rf_params_v10f0_s { - // member variables bool modified_mpr_behavior_r10_present = false; fixed_bitstring<32> modified_mpr_behavior_r10; @@ -53660,7 +52714,6 @@ struct rf_params_v10f0_s { // UE-EUTRA-Capability-v10i0-IEs ::= SEQUENCE struct ue_eutra_cap_v10i0_ies_s { - // member variables bool rf_params_v10i0_present = false; bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; @@ -53676,7 +52729,6 @@ struct ue_eutra_cap_v10i0_ies_s { // UE-EUTRA-Capability-v1250-IEs ::= SEQUENCE struct ue_eutra_cap_v1250_ies_s { - // member variables bool phy_layer_params_v1250_present = false; bool rf_params_v1250_present = false; bool rlc_params_r12_present = false; @@ -53688,8 +52740,8 @@ struct ue_eutra_cap_v1250_ies_s { bool dc_params_r12_present = false; bool mbms_params_v1250_present = false; bool mac_params_r12_present = false; - bool fdd_add_ue_eutra_capabilities_v1250_present = false; - bool tdd_add_ue_eutra_capabilities_v1250_present = false; + bool fdd_add_ue_eutra_cap_v1250_present = false; + bool tdd_add_ue_eutra_cap_v1250_present = false; bool sl_params_r12_present = false; bool non_crit_ext_present = false; phy_layer_params_v1250_s phy_layer_params_v1250; @@ -53703,8 +52755,8 @@ struct ue_eutra_cap_v1250_ies_s { dc_params_r12_s dc_params_r12; mbms_params_v1250_s mbms_params_v1250; mac_params_r12_s mac_params_r12; - ue_eutra_cap_add_xdd_mode_v1250_s fdd_add_ue_eutra_capabilities_v1250; - ue_eutra_cap_add_xdd_mode_v1250_s tdd_add_ue_eutra_capabilities_v1250; + ue_eutra_cap_add_xdd_mode_v1250_s fdd_add_ue_eutra_cap_v1250; + ue_eutra_cap_add_xdd_mode_v1250_s tdd_add_ue_eutra_cap_v1250; sl_params_r12_s sl_params_r12; ue_eutra_cap_v1260_ies_s non_crit_ext; @@ -53715,8 +52767,7 @@ struct ue_eutra_cap_v1250_ies_s { }; // OTDOA-PositioningCapabilities-r10 ::= SEQUENCE -struct otdoa_positioning_capabilities_r10_s { - // member variables +struct otdoa_positioning_cap_r10_s { bool inter_freq_rstd_meas_r10_present = false; // sequence methods @@ -53727,7 +52778,6 @@ struct otdoa_positioning_capabilities_r10_s { // UE-EUTRA-Capability-v10f0-IEs ::= SEQUENCE struct ue_eutra_cap_v10f0_ies_s { - // member variables bool rf_params_v10f0_present = false; bool non_crit_ext_present = false; rf_params_v10f0_s rf_params_v10f0; @@ -53741,7 +52791,6 @@ struct ue_eutra_cap_v10f0_ies_s { // UE-EUTRA-Capability-v11a0-IEs ::= SEQUENCE struct ue_eutra_cap_v11a0_ies_s { - // member variables bool ue_category_v11a0_present = false; bool meas_params_v11a0_present = false; bool non_crit_ext_present = false; @@ -53757,7 +52806,6 @@ struct ue_eutra_cap_v11a0_ies_s { // UE-EUTRA-CapabilityAddXDD-Mode-v1180 ::= SEQUENCE struct ue_eutra_cap_add_xdd_mode_v1180_s { - // member variables mbms_params_r11_s mbms_params_r11; // sequence methods @@ -53776,7 +52824,6 @@ struct irat_params_utra_v9h0_s { // MeasParameters-v1130 ::= SEQUENCE struct meas_params_v1130_s { - // member variables bool rsrq_meas_wideband_r11_present = false; // sequence methods @@ -53787,7 +52834,6 @@ struct meas_params_v1130_s { // Other-Parameters-r11 ::= SEQUENCE struct other_params_r11_s { - // member variables bool in_dev_coex_ind_r11_present = false; bool pwr_pref_ind_r11_present = false; bool ue_rx_tx_time_diff_meass_r11_present = false; @@ -53800,9 +52846,8 @@ struct other_params_r11_s { // PhyLayerParameters-v1130 ::= SEQUENCE struct phy_layer_params_v1130_s { - // member variables bool crs_interf_handl_r11_present = false; - bool e_pdcch_r11_present = false; + bool epdcch_r11_present = false; bool multi_ack_csi_report_r11_present = false; bool ss_cch_interf_handl_r11_present = false; bool tdd_special_sf_r11_present = false; @@ -53817,7 +52862,6 @@ struct phy_layer_params_v1130_s { // PhyLayerParameters-v1170 ::= SEQUENCE struct phy_layer_params_v1170_s { - // member variables bool inter_band_tdd_ca_with_different_cfg_r11_present = false; fixed_bitstring<2> inter_band_tdd_ca_with_different_cfg_r11; @@ -53829,11 +52873,10 @@ struct phy_layer_params_v1170_s { // UE-EUTRA-Capability-v10c0-IEs ::= SEQUENCE struct ue_eutra_cap_v10c0_ies_s { - // member variables - bool otdoa_positioning_capabilities_r10_present = false; - bool non_crit_ext_present = false; - otdoa_positioning_capabilities_r10_s otdoa_positioning_capabilities_r10; - ue_eutra_cap_v10f0_ies_s non_crit_ext; + bool otdoa_positioning_cap_r10_present = false; + bool non_crit_ext_present = false; + otdoa_positioning_cap_r10_s otdoa_positioning_cap_r10; + ue_eutra_cap_v10f0_ies_s non_crit_ext; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -53843,16 +52886,15 @@ struct ue_eutra_cap_v10c0_ies_s { // UE-EUTRA-Capability-v1180-IEs ::= SEQUENCE struct ue_eutra_cap_v1180_ies_s { - // member variables - bool rf_params_v1180_present = false; - bool mbms_params_r11_present = false; - bool fdd_add_ue_eutra_capabilities_v1180_present = false; - bool tdd_add_ue_eutra_capabilities_v1180_present = false; - bool non_crit_ext_present = false; + bool rf_params_v1180_present = false; + bool mbms_params_r11_present = false; + bool fdd_add_ue_eutra_cap_v1180_present = false; + bool tdd_add_ue_eutra_cap_v1180_present = false; + bool non_crit_ext_present = false; rf_params_v1180_s rf_params_v1180; mbms_params_r11_s mbms_params_r11; - ue_eutra_cap_add_xdd_mode_v1180_s fdd_add_ue_eutra_capabilities_v1180; - ue_eutra_cap_add_xdd_mode_v1180_s tdd_add_ue_eutra_capabilities_v1180; + ue_eutra_cap_add_xdd_mode_v1180_s fdd_add_ue_eutra_cap_v1180; + ue_eutra_cap_add_xdd_mode_v1180_s tdd_add_ue_eutra_cap_v1180; ue_eutra_cap_v11a0_ies_s non_crit_ext; // sequence methods @@ -53863,7 +52905,6 @@ struct ue_eutra_cap_v1180_ies_s { // IRAT-ParametersCDMA2000-v1130 ::= SEQUENCE struct irat_params_cdma2000_v1130_s { - // member variables bool cdma2000_nw_sharing_r11_present = false; // sequence methods @@ -53874,7 +52915,6 @@ struct irat_params_cdma2000_v1130_s { // PDCP-Parameters-v1130 ::= SEQUENCE struct pdcp_params_v1130_s { - // member variables bool pdcp_sn_ext_r11_present = false; bool support_rohc_context_continue_r11_present = false; @@ -53886,7 +52926,6 @@ struct pdcp_params_v1130_s { // UE-EUTRA-Capability-v1170-IEs ::= SEQUENCE struct ue_eutra_cap_v1170_ies_s { - // member variables bool phy_layer_params_v1170_present = false; bool ue_category_v1170_present = false; bool non_crit_ext_present = false; @@ -53902,7 +52941,6 @@ struct ue_eutra_cap_v1170_ies_s { // UE-EUTRA-Capability-v9h0-IEs ::= SEQUENCE struct ue_eutra_cap_v9h0_ies_s { - // member variables bool inter_rat_params_utra_v9h0_present = false; bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; @@ -53918,7 +52956,6 @@ struct ue_eutra_cap_v9h0_ies_s { // UE-EUTRA-CapabilityAddXDD-Mode-v1130 ::= SEQUENCE struct ue_eutra_cap_add_xdd_mode_v1130_s { - // member variables bool ext = false; bool phy_layer_params_v1130_present = false; bool meas_params_v1130_present = false; @@ -53952,7 +52989,6 @@ struct irat_params_utra_tdd_v1020_s { // PhyLayerParameters-v9d0 ::= SEQUENCE struct phy_layer_params_v9d0_s { - // member variables bool tm5_fdd_r9_present = false; bool tm5_tdd_r9_present = false; @@ -53964,19 +53000,18 @@ struct phy_layer_params_v9d0_s { // UE-EUTRA-Capability-v1130-IEs ::= SEQUENCE struct ue_eutra_cap_v1130_ies_s { - // member variables - bool phy_layer_params_v1130_present = false; - bool fdd_add_ue_eutra_capabilities_v1130_present = false; - bool tdd_add_ue_eutra_capabilities_v1130_present = false; - bool non_crit_ext_present = false; + bool phy_layer_params_v1130_present = false; + bool fdd_add_ue_eutra_cap_v1130_present = false; + bool tdd_add_ue_eutra_cap_v1130_present = false; + bool non_crit_ext_present = false; pdcp_params_v1130_s pdcp_params_v1130; phy_layer_params_v1130_s phy_layer_params_v1130; rf_params_v1130_s rf_params_v1130; meas_params_v1130_s meas_params_v1130; irat_params_cdma2000_v1130_s inter_rat_params_cdma2000_v1130; other_params_r11_s other_params_r11; - ue_eutra_cap_add_xdd_mode_v1130_s fdd_add_ue_eutra_capabilities_v1130; - ue_eutra_cap_add_xdd_mode_v1130_s tdd_add_ue_eutra_capabilities_v1130; + ue_eutra_cap_add_xdd_mode_v1130_s fdd_add_ue_eutra_cap_v1130; + ue_eutra_cap_add_xdd_mode_v1130_s tdd_add_ue_eutra_cap_v1130; ue_eutra_cap_v1170_ies_s non_crit_ext; // sequence methods @@ -53987,7 +53022,6 @@ struct ue_eutra_cap_v1130_ies_s { // UE-EUTRA-Capability-v9e0-IEs ::= SEQUENCE struct ue_eutra_cap_v9e0_ies_s { - // member variables bool rf_params_v9e0_present = false; bool non_crit_ext_present = false; rf_params_v9e0_s rf_params_v9e0; @@ -54001,7 +53035,6 @@ struct ue_eutra_cap_v9e0_ies_s { // IRAT-ParametersCDMA2000-1XRTT-v920 ::= SEQUENCE struct irat_params_cdma2000_minus1_xrtt_v920_s { - // member variables bool e_csfb_conc_ps_mob1_xrtt_r9_present = false; // sequence methods @@ -54020,7 +53053,6 @@ struct irat_params_utra_v920_s { // IRAT-ParametersUTRA-v9c0 ::= SEQUENCE struct irat_params_utra_v9c0_s { - // member variables bool voice_over_ps_hs_utra_fdd_r9_present = false; bool voice_over_ps_hs_utra_tdd128_r9_present = false; bool srvcc_from_utra_fdd_to_utra_fdd_r9_present = false; @@ -54036,7 +53068,6 @@ struct irat_params_utra_v9c0_s { // NeighCellSI-AcquisitionParameters-r9 ::= SEQUENCE struct neigh_cell_si_acquisition_params_r9_s { - // member variables bool intra_freq_si_acquisition_for_ho_r9_present = false; bool inter_freq_si_acquisition_for_ho_r9_present = false; bool utran_si_acquisition_for_ho_r9_present = false; @@ -54049,7 +53080,6 @@ struct neigh_cell_si_acquisition_params_r9_s { // PhyLayerParameters ::= SEQUENCE struct phy_layer_params_s { - // member variables bool ue_tx_ant_sel_supported = false; bool ue_specific_ref_sigs_supported = false; @@ -54061,7 +53091,6 @@ struct phy_layer_params_s { // UE-EUTRA-Capability-v1090-IEs ::= SEQUENCE struct ue_eutra_cap_v1090_ies_s { - // member variables bool rf_params_v1090_present = false; bool non_crit_ext_present = false; rf_params_v1090_s rf_params_v1090; @@ -54075,7 +53104,6 @@ struct ue_eutra_cap_v1090_ies_s { // UE-EUTRA-Capability-v9d0-IEs ::= SEQUENCE struct ue_eutra_cap_v9d0_ies_s { - // member variables bool phy_layer_params_v9d0_present = false; bool non_crit_ext_present = false; phy_layer_params_v9d0_s phy_layer_params_v9d0; @@ -54089,7 +53117,6 @@ struct ue_eutra_cap_v9d0_ies_s { // UE-EUTRA-CapabilityAddXDD-Mode-v1060 ::= SEQUENCE struct ue_eutra_cap_add_xdd_mode_v1060_s { - // member variables bool ext = false; bool phy_layer_params_v1060_present = false; bool feature_group_ind_rel10_v1060_present = false; @@ -54101,7 +53128,7 @@ struct ue_eutra_cap_add_xdd_mode_v1060_s { irat_params_utra_tdd_v1020_s inter_rat_params_utra_tdd_v1060; // ... // group 0 - copy_ptr otdoa_positioning_capabilities_r10; + copy_ptr otdoa_positioning_cap_r10; // sequence methods SRSASN_CODE pack(bit_ref& bref) const; @@ -54111,7 +53138,6 @@ struct ue_eutra_cap_add_xdd_mode_v1060_s { // UE-BasedNetwPerfMeasParameters-r10 ::= SEQUENCE struct ue_based_netw_perf_meas_params_r10_s { - // member variables bool logged_meass_idle_r10_present = false; bool standalone_gnss_location_r10_present = false; @@ -54123,13 +53149,12 @@ struct ue_based_netw_perf_meas_params_r10_s { // UE-EUTRA-Capability-v1060-IEs ::= SEQUENCE struct ue_eutra_cap_v1060_ies_s { - // member variables - bool fdd_add_ue_eutra_capabilities_v1060_present = false; - bool tdd_add_ue_eutra_capabilities_v1060_present = false; - bool rf_params_v1060_present = false; - bool non_crit_ext_present = false; - ue_eutra_cap_add_xdd_mode_v1060_s fdd_add_ue_eutra_capabilities_v1060; - ue_eutra_cap_add_xdd_mode_v1060_s tdd_add_ue_eutra_capabilities_v1060; + bool fdd_add_ue_eutra_cap_v1060_present = false; + bool tdd_add_ue_eutra_cap_v1060_present = false; + bool rf_params_v1060_present = false; + bool non_crit_ext_present = false; + ue_eutra_cap_add_xdd_mode_v1060_s fdd_add_ue_eutra_cap_v1060; + ue_eutra_cap_add_xdd_mode_v1060_s tdd_add_ue_eutra_cap_v1060; rf_params_v1060_s rf_params_v1060; ue_eutra_cap_v1090_ies_s non_crit_ext; @@ -54141,7 +53166,6 @@ struct ue_eutra_cap_v1060_ies_s { // UE-EUTRA-Capability-v9c0-IEs ::= SEQUENCE struct ue_eutra_cap_v9c0_ies_s { - // member variables bool inter_rat_params_utra_v9c0_present = false; bool non_crit_ext_present = false; irat_params_utra_v9c0_s inter_rat_params_utra_v9c0; @@ -54155,7 +53179,6 @@ struct ue_eutra_cap_v9c0_ies_s { // UE-EUTRA-CapabilityAddXDD-Mode-r9 ::= SEQUENCE struct ue_eutra_cap_add_xdd_mode_r9_s { - // member variables bool ext = false; bool phy_layer_params_r9_present = false; bool feature_group_inds_r9_present = false; @@ -54181,7 +53204,6 @@ struct ue_eutra_cap_add_xdd_mode_r9_s { // UE-EUTRA-Capability-v1020-IEs ::= SEQUENCE struct ue_eutra_cap_v1020_ies_s { - // member variables bool ue_category_v1020_present = false; bool phy_layer_params_v1020_present = false; bool rf_params_v1020_present = false; @@ -54209,14 +53231,13 @@ struct ue_eutra_cap_v1020_ies_s { // UE-EUTRA-Capability-v9a0-IEs ::= SEQUENCE struct ue_eutra_cap_v9a0_ies_s { - // member variables - bool feature_group_ind_rel9_add_r9_present = false; - bool fdd_add_ue_eutra_capabilities_r9_present = false; - bool tdd_add_ue_eutra_capabilities_r9_present = false; - bool non_crit_ext_present = false; + bool feature_group_ind_rel9_add_r9_present = false; + bool fdd_add_ue_eutra_cap_r9_present = false; + bool tdd_add_ue_eutra_cap_r9_present = false; + bool non_crit_ext_present = false; fixed_bitstring<32> feature_group_ind_rel9_add_r9; - ue_eutra_cap_add_xdd_mode_r9_s fdd_add_ue_eutra_capabilities_r9; - ue_eutra_cap_add_xdd_mode_r9_s tdd_add_ue_eutra_capabilities_r9; + ue_eutra_cap_add_xdd_mode_r9_s fdd_add_ue_eutra_cap_r9; + ue_eutra_cap_add_xdd_mode_r9_s tdd_add_ue_eutra_cap_r9; ue_eutra_cap_v9c0_ies_s non_crit_ext; // sequence methods @@ -54227,7 +53248,6 @@ struct ue_eutra_cap_v9a0_ies_s { // CSG-ProximityIndicationParameters-r9 ::= SEQUENCE struct csg_proximity_ind_params_r9_s { - // member variables bool intra_freq_proximity_ind_r9_present = false; bool inter_freq_proximity_ind_r9_present = false; bool utran_proximity_ind_r9_present = false; @@ -54240,7 +53260,6 @@ struct csg_proximity_ind_params_r9_s { // IRAT-ParametersGERAN-v920 ::= SEQUENCE struct irat_params_geran_v920_s { - // member variables bool dtm_r9_present = false; bool e_redirection_geran_r9_present = false; @@ -54252,7 +53271,6 @@ struct irat_params_geran_v920_s { // PhyLayerParameters-v920 ::= SEQUENCE struct phy_layer_params_v920_s { - // member variables bool enhanced_dual_layer_fdd_r9_present = false; bool enhanced_dual_layer_tdd_r9_present = false; @@ -54264,7 +53282,6 @@ struct phy_layer_params_v920_s { // SON-Parameters-r9 ::= SEQUENCE struct son_params_r9_s { - // member variables bool rach_report_r9_present = false; // sequence methods @@ -54275,7 +53292,6 @@ struct son_params_r9_s { // UE-EUTRA-Capability-v940-IEs ::= SEQUENCE struct ue_eutra_cap_v940_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -54299,7 +53315,6 @@ typedef enumerated access_stratum_release_e; // UE-EUTRA-Capability-v920-IEs ::= SEQUENCE struct ue_eutra_cap_v920_ies_s { - // member variables bool inter_rat_params_utra_v920_present = false; bool inter_rat_params_cdma2000_v920_present = false; bool dev_type_r9_present = false; @@ -54322,7 +53337,6 @@ struct ue_eutra_cap_v920_ies_s { // UE-EUTRA-Capability ::= SEQUENCE struct ue_eutra_cap_s { struct inter_rat_params_s_ { - // member variables bool utra_fdd_present = false; bool utra_tdd128_present = false; bool utra_tdd384_present = false; @@ -54360,7 +53374,6 @@ struct ue_eutra_cap_s { // SCG-Config-r12-IEs ::= SEQUENCE struct scg_cfg_r12_ies_s { - // member variables bool scg_radio_cfg_r12_present = false; bool non_crit_ext_present = false; scg_cfg_part_scg_r12_s scg_radio_cfg_r12; @@ -54373,7 +53386,6 @@ struct scg_cfg_r12_ies_s { // AS-ConfigNR-r15 ::= SEQUENCE struct as_cfg_nr_r15_s { - // member variables bool source_rb_cfg_nr_r15_present = false; bool source_rb_cfg_sn_nr_r15_present = false; bool source_other_cfg_sn_nr_r15_present = false; @@ -54456,8 +53468,8 @@ struct scg_cfg_r12_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -54473,7 +53485,6 @@ struct scg_cfg_r12_s { // AS-Config ::= SEQUENCE struct as_cfg_s { - // member variables bool ext = false; meas_cfg_s source_meas_cfg; rr_cfg_ded_s source_rr_cfg; @@ -54483,7 +53494,7 @@ struct as_cfg_s { sib_type1_s source_sib_type1; sib_type2_s source_sib_type2; ant_info_common_s ant_info_common; - uint16_t source_dl_carrier_freq = 0; + uint32_t source_dl_carrier_freq = 0; // ... // group 0 bool source_sib_type1_ext_present = false; @@ -54504,7 +53515,6 @@ struct as_cfg_s { // AS-Config-v10j0 ::= SEQUENCE struct as_cfg_v10j0_s { - // member variables bool ant_info_ded_pcell_v10i0_present = false; ant_info_ded_v10i0_s ant_info_ded_pcell_v10i0; @@ -54516,7 +53526,6 @@ struct as_cfg_v10j0_s { // AS-Config-v1250 ::= SEQUENCE struct as_cfg_v1250_s { - // member variables bool source_wlan_offload_cfg_r12_present = false; bool source_sl_comm_cfg_r12_present = false; bool source_sl_disc_cfg_r12_present = false; @@ -54532,7 +53541,6 @@ struct as_cfg_v1250_s { // AS-Config-v1320 ::= SEQUENCE struct as_cfg_v1320_s { - // member variables bool source_scell_cfg_list_r13_present = false; bool source_rclwi_cfg_r13_present = false; scell_to_add_mod_list_ext_r13_l source_scell_cfg_list_r13; @@ -54546,7 +53554,6 @@ struct as_cfg_v1320_s { // AS-Config-v1430 ::= SEQUENCE struct as_cfg_v1430_s { - // member variables bool source_sl_v2x_comm_cfg_r14_present = false; bool source_lwa_cfg_r14_present = false; bool source_wlan_meas_result_r14_present = false; @@ -54562,7 +53569,6 @@ struct as_cfg_v1430_s { // AS-Config-v9e0 ::= SEQUENCE struct as_cfg_v9e0_s { - // member variables uint32_t source_dl_carrier_freq_v9e0 = 65536; // sequence methods @@ -54573,7 +53579,6 @@ struct as_cfg_v9e0_s { // AdditionalReestabInfo ::= SEQUENCE struct add_reestab_info_s { - // member variables fixed_bitstring<28> cell_id; fixed_bitstring<256> key_e_node_b_star; fixed_bitstring<16> short_mac_i; @@ -54584,12 +53589,11 @@ struct add_reestab_info_s { void to_json(json_writer& j) const; }; -// AdditionalReestabInfoList ::= SEQUENCE (SIZE (1..maxReestabInfo)) OF AdditionalReestabInfo -typedef dyn_array add_reestab_info_list_l; +// AdditionalReestabInfoList ::= SEQUENCE (SIZE (1..32)) OF AdditionalReestabInfo +using add_reestab_info_list_l = dyn_array; // ReestablishmentInfo ::= SEQUENCE struct reest_info_s { - // member variables bool ext = false; bool add_reestab_info_list_present = false; uint16_t source_pci = 0; @@ -54605,7 +53609,6 @@ struct reest_info_s { // AS-Context ::= SEQUENCE struct as_context_s { - // member variables bool reest_info_present = false; reest_info_s reest_info; @@ -54617,7 +53620,6 @@ struct as_context_s { // AS-Context-v1130 ::= SEQUENCE struct as_context_v1130_s { - // member variables bool ext = false; bool idc_ind_r11_present = false; bool mbms_interest_ind_r11_present = false; @@ -54641,7 +53643,6 @@ struct as_context_v1130_s { // AS-Context-v1320 ::= SEQUENCE struct as_context_v1320_s { - // member variables bool wlan_conn_status_report_r13_present = false; dyn_octstring wlan_conn_status_report_r13; @@ -54651,17 +53652,16 @@ struct as_context_v1320_s { void to_json(json_writer& j) const; }; -// CSI-RS-TriggeredList-r12 ::= SEQUENCE (SIZE (1..maxCSI-RS-Meas-r12)) OF INTEGER -typedef dyn_array csi_rs_triggered_list_r12_l; +// CSI-RS-TriggeredList-r12 ::= SEQUENCE (SIZE (1..96)) OF INTEGER (1..96) +using csi_rs_triggered_list_r12_l = dyn_array; // CandidateCellInfo-r10 ::= SEQUENCE struct candidate_cell_info_r10_s { - // member variables bool ext = false; bool rsrp_result_r10_present = false; bool rsrq_result_r10_present = false; uint16_t pci_r10 = 0; - uint16_t dl_carrier_freq_r10 = 0; + uint32_t dl_carrier_freq_r10 = 0; uint8_t rsrp_result_r10 = 0; uint8_t rsrq_result_r10 = 0; // ... @@ -54681,23 +53681,20 @@ struct candidate_cell_info_r10_s { void to_json(json_writer& j) const; }; -// CandidateCellInfoList-r10 ::= SEQUENCE (SIZE (1..maxFreq)) OF CandidateCellInfo-r10 -typedef dyn_array candidate_cell_info_list_r10_l; +// CandidateCellInfoList-r10 ::= SEQUENCE (SIZE (1..8)) OF CandidateCellInfo-r10 +using candidate_cell_info_list_r10_l = dyn_array; // Cell-ToAddMod-r12 ::= SEQUENCE struct cell_to_add_mod_r12_s { struct cell_identif_r12_s_ { - // member variables uint16_t pci_r12 = 0; uint32_t dl_carrier_freq_r12 = 0; }; struct meas_result_cell_to_add_r12_s_ { - // member variables uint8_t rsrp_result_r12 = 0; uint8_t rsrq_result_r12 = 0; }; struct meas_result_cell_to_add_v1310_s_ { - // member variables uint8_t rs_sinr_result_r13 = 0; }; @@ -54705,13 +53702,13 @@ struct cell_to_add_mod_r12_s { bool ext = false; bool cell_identif_r12_present = false; bool meas_result_cell_to_add_r12_present = false; - uint8_t s_cell_idx_r12 = 1; + uint8_t scell_idx_r12 = 1; cell_identif_r12_s_ cell_identif_r12; meas_result_cell_to_add_r12_s_ meas_result_cell_to_add_r12; // ... // group 0 - bool s_cell_idx_r13_present = false; - uint8_t s_cell_idx_r13 = 1; + bool scell_idx_r13_present = false; + uint8_t scell_idx_r13 = 1; copy_ptr meas_result_cell_to_add_v1310; // sequence methods @@ -54720,8 +53717,8 @@ struct cell_to_add_mod_r12_s { void to_json(json_writer& j) const; }; -// SSB-IndexList-r15 ::= SEQUENCE (SIZE (1..maxRS-Index-r15)) OF INTEGER -typedef dyn_array ssb_idx_list_r15_l; +// SSB-IndexList-r15 ::= SEQUENCE (SIZE (1..64)) OF INTEGER (0..63) +using ssb_idx_list_r15_l = dyn_array; struct cells_triggered_list_item_c_ { struct pci_utra_c_ { @@ -54775,18 +53772,16 @@ struct cells_triggered_list_item_c_ { } private: - types type_; - choice_buffer_t<8> c; + types type_; + pod_choice_buffer_t c; void destroy_(); }; struct pci_geran_s_ { - // member variables carrier_freq_geran_s carrier_freq; pci_geran_s pci; }; struct pci_nr_r15_s_ { - // member variables bool rs_idx_list_r15_present = false; uint32_t carrier_freq = 0; uint16_t pci = 0; @@ -54904,14 +53899,14 @@ struct cells_triggered_list_item_c_ { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; -// CellsTriggeredList ::= SEQUENCE (SIZE (1..maxCellMeas)) OF CellsTriggeredList-item -typedef dyn_array cells_triggered_list_l; +// CellsTriggeredList ::= SEQUENCE (SIZE (1..32)) OF CellsTriggeredList-item +using cells_triggered_list_l = dyn_array; // DRB-InfoSCG-r12 ::= SEQUENCE struct drb_info_scg_r12_s { @@ -54937,15 +53932,14 @@ struct drb_info_scg_r12_s { void to_json(json_writer& j) const; }; -// DRB-InfoListSCG-r12 ::= SEQUENCE (SIZE (1..maxDRB)) OF DRB-InfoSCG-r12 -typedef dyn_array drb_info_list_scg_r12_l; +// DRB-InfoListSCG-r12 ::= SEQUENCE (SIZE (1..11)) OF DRB-InfoSCG-r12 +using drb_info_list_scg_r12_l = dyn_array; -// DRB-InfoListSCG-r15 ::= SEQUENCE (SIZE (1..maxDRB-r15)) OF DRB-InfoSCG-r12 -typedef dyn_array drb_info_list_scg_r15_l; +// DRB-InfoListSCG-r15 ::= SEQUENCE (SIZE (1..15)) OF DRB-InfoSCG-r12 +using drb_info_list_scg_r15_l = dyn_array; // HandoverCommand-r8-IEs ::= SEQUENCE struct ho_cmd_r8_ies_s { - // member variables bool non_crit_ext_present = false; dyn_octstring ho_cmd_msg; @@ -55024,8 +54018,8 @@ struct ho_cmd_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -55041,7 +54035,6 @@ struct ho_cmd_s { // HandoverPreparationInformation-v1430-IEs ::= SEQUENCE struct ho_prep_info_v1430_ies_s { - // member variables bool as_cfg_v1430_present = false; bool make_before_break_req_r14_present = false; bool non_crit_ext_present = false; @@ -55055,7 +54048,6 @@ struct ho_prep_info_v1430_ies_s { // HandoverPreparationInformation-v1320-IEs ::= SEQUENCE struct ho_prep_info_v1320_ies_s { - // member variables bool as_cfg_v1320_present = false; bool as_context_v1320_present = false; bool non_crit_ext_present = false; @@ -55071,7 +54063,6 @@ struct ho_prep_info_v1320_ies_s { // HandoverPreparationInformation-v1250-IEs ::= SEQUENCE struct ho_prep_info_v1250_ies_s { - // member variables bool ue_supported_earfcn_r12_present = false; bool as_cfg_v1250_present = false; bool non_crit_ext_present = false; @@ -55087,7 +54078,6 @@ struct ho_prep_info_v1250_ies_s { // HandoverPreparationInformation-v10j0-IEs ::= SEQUENCE struct ho_prep_info_v10j0_ies_s { - // member variables bool as_cfg_v10j0_present = false; bool non_crit_ext_present = false; as_cfg_v10j0_s as_cfg_v10j0; @@ -55100,7 +54090,6 @@ struct ho_prep_info_v10j0_ies_s { // HandoverPreparationInformation-v1130-IEs ::= SEQUENCE struct ho_prep_info_v1130_ies_s { - // member variables bool as_context_v1130_present = false; bool non_crit_ext_present = false; as_context_v1130_s as_context_v1130; @@ -55114,7 +54103,6 @@ struct ho_prep_info_v1130_ies_s { // HandoverPreparationInformation-v9e0-IEs ::= SEQUENCE struct ho_prep_info_v9e0_ies_s { - // member variables bool as_cfg_v9e0_present = false; bool non_crit_ext_present = false; as_cfg_v9e0_s as_cfg_v9e0; @@ -55128,7 +54116,6 @@ struct ho_prep_info_v9e0_ies_s { // HandoverPreparationInformation-v9j0-IEs ::= SEQUENCE struct ho_prep_info_v9j0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -55142,7 +54129,6 @@ struct ho_prep_info_v9j0_ies_s { // HandoverPreparationInformation-v9d0-IEs ::= SEQUENCE struct ho_prep_info_v9d0_ies_s { - // member variables bool late_non_crit_ext_present = false; bool non_crit_ext_present = false; dyn_octstring late_non_crit_ext; @@ -55268,7 +54254,6 @@ struct rrm_cfg_s { // HandoverPreparationInformation-r8-IEs ::= SEQUENCE struct ho_prep_info_r8_ies_s { - // member variables bool as_cfg_present = false; bool rrm_cfg_present = false; bool as_context_present = false; @@ -55354,8 +54339,8 @@ struct ho_prep_info_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -55371,7 +54356,6 @@ struct ho_prep_info_s { // HandoverPreparationInformation-v1530-IEs ::= SEQUENCE struct ho_prep_info_v1530_ies_s { - // member variables bool ran_notif_area_info_r15_present = false; bool non_crit_ext_present = false; ran_notif_area_info_r15_c ran_notif_area_info_r15; @@ -55382,8 +54366,8 @@ struct ho_prep_info_v1530_ies_s { void to_json(json_writer& j) const; }; -// LogMeasInfoList2-r10 ::= SEQUENCE (SIZE (1..maxLogMeas-r10)) OF LogMeasInfo-r10 -typedef dyn_array log_meas_info_list2_r10_l; +// LogMeasInfoList2-r10 ::= SEQUENCE (SIZE (1..4060)) OF LogMeasInfo-r10 +using log_meas_info_list2_r10_l = dyn_array; // TDD-ConfigSL-r12 ::= SEQUENCE struct tdd_cfg_sl_r12_s { @@ -55455,7 +54439,6 @@ struct mib_sl_v2x_r14_s { // MeasResultRSSI-SCG-r13 ::= SEQUENCE struct meas_result_rssi_scg_r13_s { - // member variables uint8_t serv_cell_id_r13 = 0; meas_result_for_rssi_r13_s meas_result_for_rssi_r13; @@ -55465,18 +54448,16 @@ struct meas_result_rssi_scg_r13_s { void to_json(json_writer& j) const; }; -// MeasResultListRSSI-SCG-r13 ::= SEQUENCE (SIZE (1..maxServCell-r13)) OF MeasResultRSSI-SCG-r13 -typedef dyn_array meas_result_list_rssi_scg_r13_l; +// MeasResultListRSSI-SCG-r13 ::= SEQUENCE (SIZE (1..32)) OF MeasResultRSSI-SCG-r13 +using meas_result_list_rssi_scg_r13_l = dyn_array; // MeasResultServCellSCG-r12 ::= SEQUENCE struct meas_result_serv_cell_scg_r12_s { struct meas_result_scell_r12_s_ { - // member variables uint8_t rsrp_result_scell_r12 = 0; uint8_t rsrq_result_scell_r12 = 0; }; struct meas_result_scell_v1310_s_ { - // member variables uint8_t rs_sinr_result_scell_r13 = 0; }; @@ -55496,18 +54477,17 @@ struct meas_result_serv_cell_scg_r12_s { void to_json(json_writer& j) const; }; -// MeasResultServCellListSCG-Ext-r13 ::= SEQUENCE (SIZE (1..maxServCell-r13)) OF MeasResultServCellSCG-r12 -typedef dyn_array meas_result_serv_cell_list_scg_ext_r13_l; +// MeasResultServCellListSCG-Ext-r13 ::= SEQUENCE (SIZE (1..32)) OF MeasResultServCellSCG-r12 +using meas_result_serv_cell_list_scg_ext_r13_l = dyn_array; -// MeasResultServCellListSCG-r12 ::= SEQUENCE (SIZE (1..maxServCell-r10)) OF MeasResultServCellSCG-r12 -typedef dyn_array meas_result_serv_cell_list_scg_r12_l; +// MeasResultServCellListSCG-r12 ::= SEQUENCE (SIZE (1..5)) OF MeasResultServCellSCG-r12 +using meas_result_serv_cell_list_scg_r12_l = dyn_array; // SBCCH-SL-BCH-MessageType ::= MasterInformationBlock-SL typedef mib_sl_s sbcch_sl_bch_msg_type_s; // SBCCH-SL-BCH-Message ::= SEQUENCE struct sbcch_sl_bch_msg_s { - // member variables sbcch_sl_bch_msg_type_s msg; // sequence methods @@ -55521,7 +54501,6 @@ typedef mib_sl_v2x_r14_s sbcch_sl_bch_msg_type_v2x_r14_s; // SBCCH-SL-BCH-Message-V2X-r14 ::= SEQUENCE struct sbcch_sl_bch_msg_v2x_r14_s { - // member variables sbcch_sl_bch_msg_type_v2x_r14_s msg; // sequence methods @@ -55532,7 +54511,6 @@ struct sbcch_sl_bch_msg_v2x_r14_s { // SCG-ConfigInfo-v1530-IEs ::= SEQUENCE struct scg_cfg_info_v1530_ies_s { - // member variables bool drb_to_add_mod_list_scg_r15_present = false; bool drb_to_release_list_scg_r15_present = false; bool non_crit_ext_present = false; @@ -55547,7 +54525,6 @@ struct scg_cfg_info_v1530_ies_s { // SCG-ConfigInfo-v1430-IEs ::= SEQUENCE struct scg_cfg_info_v1430_ies_s { - // member variables bool make_before_break_scg_req_r14_present = false; bool meas_gap_cfg_per_cc_list_present = false; bool non_crit_ext_present = false; @@ -55562,7 +54539,6 @@ struct scg_cfg_info_v1430_ies_s { // SCG-ConfigInfo-v1330-IEs ::= SEQUENCE struct scg_cfg_info_v1330_ies_s { - // member variables bool meas_result_list_rssi_scg_r13_present = false; bool non_crit_ext_present = false; meas_result_list_rssi_scg_r13_l meas_result_list_rssi_scg_r13; @@ -55574,23 +54550,22 @@ struct scg_cfg_info_v1330_ies_s { void to_json(json_writer& j) const; }; -// SCellToAddModListSCG-Ext-r13 ::= SEQUENCE (SIZE (1..maxSCell-r13)) OF Cell-ToAddMod-r12 -typedef dyn_array scell_to_add_mod_list_scg_ext_r13_l; +// SCellToAddModListSCG-Ext-r13 ::= SEQUENCE (SIZE (1..31)) OF Cell-ToAddMod-r12 +using scell_to_add_mod_list_scg_ext_r13_l = dyn_array; // SCG-ConfigInfo-v1310-IEs ::= SEQUENCE struct scg_cfg_info_v1310_ies_s { - // member variables bool meas_result_sstd_r13_present = false; - bool s_cell_to_add_mod_list_mcg_ext_r13_present = false; + bool scell_to_add_mod_list_mcg_ext_r13_present = false; bool meas_result_serv_cell_list_scg_ext_r13_present = false; - bool s_cell_to_add_mod_list_scg_ext_r13_present = false; - bool s_cell_to_release_list_scg_ext_r13_present = false; + bool scell_to_add_mod_list_scg_ext_r13_present = false; + bool scell_to_release_list_scg_ext_r13_present = false; bool non_crit_ext_present = false; meas_result_sstd_r13_s meas_result_sstd_r13; - scell_to_add_mod_list_ext_r13_l s_cell_to_add_mod_list_mcg_ext_r13; + scell_to_add_mod_list_ext_r13_l scell_to_add_mod_list_mcg_ext_r13; meas_result_serv_cell_list_scg_ext_r13_l meas_result_serv_cell_list_scg_ext_r13; - scell_to_add_mod_list_scg_ext_r13_l s_cell_to_add_mod_list_scg_ext_r13; - scell_to_release_list_ext_r13_l s_cell_to_release_list_scg_ext_r13; + scell_to_add_mod_list_scg_ext_r13_l scell_to_add_mod_list_scg_ext_r13; + scell_to_release_list_ext_r13_l scell_to_release_list_scg_ext_r13; scg_cfg_info_v1330_ies_s non_crit_ext; // sequence methods @@ -55601,7 +54576,6 @@ struct scg_cfg_info_v1310_ies_s { // SCG-ConfigRestrictInfo-r12 ::= SEQUENCE struct scg_cfg_restrict_info_r12_s { - // member variables uint8_t max_sch_tb_bits_dl_r12 = 1; uint8_t max_sch_tb_bits_ul_r12 = 1; @@ -55611,14 +54585,13 @@ struct scg_cfg_restrict_info_r12_s { void to_json(json_writer& j) const; }; -// SCellToAddModListSCG-r12 ::= SEQUENCE (SIZE (1..maxSCell-r10)) OF Cell-ToAddMod-r12 -typedef dyn_array scell_to_add_mod_list_scg_r12_l; +// SCellToAddModListSCG-r12 ::= SEQUENCE (SIZE (1..4)) OF Cell-ToAddMod-r12 +using scell_to_add_mod_list_scg_r12_l = dyn_array; // SCG-ConfigInfo-r12-IEs ::= SEQUENCE struct scg_cfg_info_r12_ies_s { - // member variables bool rr_cfg_ded_mcg_r12_present = false; - bool s_cell_to_add_mod_list_mcg_r12_present = false; + bool scell_to_add_mod_list_mcg_r12_present = false; bool meas_gap_cfg_r12_present = false; bool pwr_coordination_info_r12_present = false; bool scg_radio_cfg_r12_present = false; @@ -55628,12 +54601,12 @@ struct scg_cfg_info_r12_ies_s { bool meas_result_serv_cell_list_scg_r12_present = false; bool drb_to_add_mod_list_scg_r12_present = false; bool drb_to_release_list_scg_r12_present = false; - bool s_cell_to_add_mod_list_scg_r12_present = false; - bool s_cell_to_release_list_scg_r12_present = false; + bool scell_to_add_mod_list_scg_r12_present = false; + bool scell_to_release_list_scg_r12_present = false; bool p_max_r12_present = false; bool non_crit_ext_present = false; rr_cfg_ded_s rr_cfg_ded_mcg_r12; - scell_to_add_mod_list_r10_l s_cell_to_add_mod_list_mcg_r12; + scell_to_add_mod_list_r10_l scell_to_add_mod_list_mcg_r12; meas_gap_cfg_c meas_gap_cfg_r12; pwr_coordination_info_r12_s pwr_coordination_info_r12; scg_cfg_part_scg_r12_s scg_radio_cfg_r12; @@ -55643,8 +54616,8 @@ struct scg_cfg_info_r12_ies_s { meas_result_serv_cell_list_scg_r12_l meas_result_serv_cell_list_scg_r12; drb_info_list_scg_r12_l drb_to_add_mod_list_scg_r12; drb_to_release_list_l drb_to_release_list_scg_r12; - scell_to_add_mod_list_scg_r12_l s_cell_to_add_mod_list_scg_r12; - scell_to_release_list_r10_l s_cell_to_release_list_scg_r12; + scell_to_add_mod_list_scg_r12_l scell_to_add_mod_list_scg_r12; + scell_to_release_list_r10_l scell_to_release_list_scg_r12; int8_t p_max_r12 = -30; scg_cfg_info_v1310_ies_s non_crit_ext; @@ -55723,8 +54696,8 @@ struct scg_cfg_info_r12_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -55740,7 +54713,7 @@ struct scg_cfg_info_r12_s { // SL-PPPP-TxPreconfigIndex-r14 ::= SEQUENCE struct sl_pppp_tx_precfg_idx_r14_s { - typedef bounded_array tx_cfg_idx_list_r14_l_; + using tx_cfg_idx_list_r14_l_ = bounded_array; // member variables uint8_t prio_thres_r14 = 1; @@ -55755,11 +54728,11 @@ struct sl_pppp_tx_precfg_idx_r14_s { }; // SL-CBR-PPPP-TxPreconfigList-r14 ::= SEQUENCE (SIZE (1..8)) OF SL-PPPP-TxPreconfigIndex-r14 -typedef dyn_array sl_cbr_pppp_tx_precfg_list_r14_l; +using sl_cbr_pppp_tx_precfg_list_r14_l = dyn_array; // SL-PPPP-TxPreconfigIndex-v1530 ::= SEQUENCE struct sl_pppp_tx_precfg_idx_v1530_s { - typedef dyn_array mcs_pssch_range_r15_l_; + using mcs_pssch_range_r15_l_ = dyn_array; // member variables bool mcs_pssch_range_r15_present = false; @@ -55772,12 +54745,12 @@ struct sl_pppp_tx_precfg_idx_v1530_s { }; // SL-CBR-PPPP-TxPreconfigList-v1530 ::= SEQUENCE (SIZE (1..8)) OF SL-PPPP-TxPreconfigIndex-v1530 -typedef dyn_array sl_cbr_pppp_tx_precfg_list_v1530_l; +using sl_cbr_pppp_tx_precfg_list_v1530_l = dyn_array; // SL-CBR-PreconfigTxConfigList-r14 ::= SEQUENCE struct sl_cbr_precfg_tx_cfg_list_r14_s { - typedef dyn_array cbr_range_common_cfg_list_r14_l_; - typedef dyn_array sl_cbr_pssch_tx_cfg_list_r14_l_; + using cbr_range_common_cfg_list_r14_l_ = dyn_array; + using sl_cbr_pssch_tx_cfg_list_r14_l_ = dyn_array; // member variables cbr_range_common_cfg_list_r14_l_ cbr_range_common_cfg_list_r14; @@ -55791,17 +54764,16 @@ struct sl_cbr_precfg_tx_cfg_list_r14_s { // SL-PreconfigCommPool-r12 ::= SEQUENCE struct sl_precfg_comm_pool_r12_s { - // member variables - bool ext = false; - sl_cp_len_r12_e sc_cp_len_r12; - sl_period_comm_r12_e sc_period_r12; - sl_tf_res_cfg_r12_s sc_tf_res_cfg_r12; - int8_t sc_tx_params_r12 = -126; - sl_cp_len_r12_e data_cp_len_r12; - sl_tf_res_cfg_r12_s data_tf_res_cfg_r12; - sl_hop_cfg_comm_r12_s data_hop_cfg_r12; - int8_t data_tx_params_r12 = -126; - dyn_bitstring trpt_subset_r12; + bool ext = false; + sl_cp_len_r12_e sc_cp_len_r12; + sl_period_comm_r12_e sc_period_r12; + sl_tf_res_cfg_r12_s sc_tf_res_cfg_r12; + int8_t sc_tx_params_r12 = -126; + sl_cp_len_r12_e data_cp_len_r12; + sl_tf_res_cfg_r12_s data_tf_res_cfg_r12; + sl_hop_cfg_comm_r12_s data_hop_cfg_r12; + int8_t data_tx_params_r12 = -126; + bounded_bitstring<3, 5> trpt_subset_r12; // ... // group 0 copy_ptr prio_list_r13; @@ -55812,14 +54784,14 @@ struct sl_precfg_comm_pool_r12_s { void to_json(json_writer& j) const; }; -// SL-PreconfigCommPoolList4-r12 ::= SEQUENCE (SIZE (1..maxSL-TxPool-r12)) OF SL-PreconfigCommPool-r12 -typedef dyn_array sl_precfg_comm_pool_list4_r12_l; +// SL-PreconfigCommPoolList4-r12 ::= SEQUENCE (SIZE (1..4)) OF SL-PreconfigCommPool-r12 +using sl_precfg_comm_pool_list4_r12_l = dyn_array; -// SL-PreconfigCommRxPoolList-r13 ::= SEQUENCE (SIZE (1..maxSL-CommRxPoolPreconf-v1310)) OF SL-PreconfigCommPool-r12 -typedef dyn_array sl_precfg_comm_rx_pool_list_r13_l; +// SL-PreconfigCommRxPoolList-r13 ::= SEQUENCE (SIZE (1..12)) OF SL-PreconfigCommPool-r12 +using sl_precfg_comm_rx_pool_list_r13_l = dyn_array; -// SL-PreconfigCommTxPoolList-r13 ::= SEQUENCE (SIZE (1..maxSL-CommTxPoolPreconf-v1310)) OF SL-PreconfigCommPool-r12 -typedef dyn_array sl_precfg_comm_tx_pool_list_r13_l; +// SL-PreconfigCommTxPoolList-r13 ::= SEQUENCE (SIZE (1..7)) OF SL-PreconfigCommPool-r12 +using sl_precfg_comm_tx_pool_list_r13_l = dyn_array; // SL-PreconfigDiscPool-r13 ::= SEQUENCE struct sl_precfg_disc_pool_r13_s { @@ -55881,16 +54853,15 @@ struct sl_precfg_disc_pool_r13_s { void to_json(json_writer& j) const; }; -// SL-PreconfigDiscRxPoolList-r13 ::= SEQUENCE (SIZE (1..maxSL-DiscRxPoolPreconf-r13)) OF SL-PreconfigDiscPool-r13 -typedef dyn_array sl_precfg_disc_rx_pool_list_r13_l; +// SL-PreconfigDiscRxPoolList-r13 ::= SEQUENCE (SIZE (1..16)) OF SL-PreconfigDiscPool-r13 +using sl_precfg_disc_rx_pool_list_r13_l = dyn_array; -// SL-PreconfigDiscTxPoolList-r13 ::= SEQUENCE (SIZE (1..maxSL-DiscTxPoolPreconf-r13)) OF SL-PreconfigDiscPool-r13 -typedef dyn_array sl_precfg_disc_tx_pool_list_r13_l; +// SL-PreconfigDiscTxPoolList-r13 ::= SEQUENCE (SIZE (1..4)) OF SL-PreconfigDiscPool-r13 +using sl_precfg_disc_tx_pool_list_r13_l = dyn_array; // SL-PreconfigGeneral-r12 ::= SEQUENCE struct sl_precfg_general_r12_s { struct rohc_profiles_r12_s_ { - // member variables bool profile0x0001_r12 = false; bool profile0x0002_r12 = false; bool profile0x0004_r12 = false; @@ -55930,7 +54901,6 @@ struct sl_precfg_general_r12_s { // SL-PreconfigRelay-r13 ::= SEQUENCE struct sl_precfg_relay_r13_s { - // member variables resel_info_relay_r13_s resel_info_oo_c_r13; // sequence methods @@ -56066,12 +55036,11 @@ struct sl_v2x_precfg_comm_pool_r14_s { void to_json(json_writer& j) const; }; -// SL-PreconfigV2X-RxPoolList-r14 ::= SEQUENCE (SIZE (1..maxSL-V2X-RxPoolPreconf-r14)) OF SL-V2X-PreconfigCommPool-r14 -typedef dyn_array sl_precfg_v2x_rx_pool_list_r14_l; +// SL-PreconfigV2X-RxPoolList-r14 ::= SEQUENCE (SIZE (1..16)) OF SL-V2X-PreconfigCommPool-r14 +using sl_precfg_v2x_rx_pool_list_r14_l = dyn_array; // SL-V2X-SyncOffsetIndicators-r14 ::= SEQUENCE struct sl_v2x_sync_offset_inds_r14_s { - // member variables bool sync_offset_ind3_r14_present = false; uint8_t sync_offset_ind1_r14 = 0; uint8_t sync_offset_ind2_r14 = 0; @@ -56120,19 +55089,17 @@ struct sl_precfg_v2x_sync_r14_s { void to_json(json_writer& j) const; }; -// SL-PreconfigV2X-TxPoolList-r14 ::= SEQUENCE (SIZE (1..maxSL-V2X-TxPoolPreconf-r14)) OF SL-V2X-PreconfigCommPool-r14 -typedef dyn_array sl_precfg_v2x_tx_pool_list_r14_l; +// SL-PreconfigV2X-TxPoolList-r14 ::= SEQUENCE (SIZE (1..8)) OF SL-V2X-PreconfigCommPool-r14 +using sl_precfg_v2x_tx_pool_list_r14_l = dyn_array; // SL-Preconfiguration-r12 ::= SEQUENCE struct sl_precfg_r12_s { struct precfg_comm_v1310_s_ { - // member variables bool comm_tx_pool_list_r13_present = false; sl_precfg_comm_rx_pool_list_r13_l comm_rx_pool_list_r13; sl_precfg_comm_tx_pool_list_r13_l comm_tx_pool_list_r13; }; struct precfg_disc_r13_s_ { - // member variables bool disc_tx_pool_list_r13_present = false; sl_precfg_disc_rx_pool_list_r13_l disc_rx_pool_list_r13; sl_precfg_disc_tx_pool_list_r13_l disc_tx_pool_list_r13; @@ -56191,8 +55158,8 @@ struct sl_v2x_precfg_freq_info_r14_s { void to_json(json_writer& j) const; }; -// SL-V2X-PreconfigFreqList-r14 ::= SEQUENCE (SIZE (1..maxFreqV2X-r14)) OF SL-V2X-PreconfigFreqInfo-r14 -typedef dyn_array sl_v2x_precfg_freq_list_r14_l; +// SL-V2X-PreconfigFreqList-r14 ::= SEQUENCE (SIZE (1..8)) OF SL-V2X-PreconfigFreqInfo-r14 +using sl_v2x_precfg_freq_list_r14_l = dyn_array; // SL-V2X-TxProfile-r15 ::= ENUMERATED struct sl_v2x_tx_profile_r15_opts { @@ -56205,11 +55172,10 @@ struct sl_v2x_tx_profile_r15_opts { typedef enumerated sl_v2x_tx_profile_r15_e; // SL-V2X-TxProfileList-r15 ::= SEQUENCE (SIZE (1..256)) OF SL-V2X-TxProfile-r15 -typedef dyn_array sl_v2x_tx_profile_list_r15_l; +using sl_v2x_tx_profile_list_r15_l = dyn_array; // SL-V2X-Preconfiguration-r14 ::= SEQUENCE struct sl_v2x_precfg_r14_s { - // member variables bool ext = false; bool anchor_carrier_freq_list_r14_present = false; bool cbr_precfg_list_r14_present = false; @@ -56231,7 +55197,6 @@ struct sl_v2x_precfg_r14_s { // UEPagingCoverageInformation-r13-IEs ::= SEQUENCE struct ue_paging_coverage_info_r13_ies_s { - // member variables bool mpdcch_num_repeat_r13_present = false; bool non_crit_ext_present = false; uint16_t mpdcch_num_repeat_r13 = 1; @@ -56321,8 +55286,8 @@ struct ue_paging_coverage_info_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -56338,7 +55303,6 @@ struct ue_paging_coverage_info_s { // UERadioAccessCapabilityInformation-r8-IEs ::= SEQUENCE struct ue_radio_access_cap_info_r8_ies_s { - // member variables bool non_crit_ext_present = false; dyn_octstring ue_radio_access_cap_info; @@ -56427,8 +55391,8 @@ struct ue_radio_access_cap_info_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -56444,7 +55408,7 @@ struct ue_radio_access_cap_info_s { // UERadioPagingInformation-v1310-IEs ::= SEQUENCE struct ue_radio_paging_info_v1310_ies_s { - typedef dyn_array supported_band_list_eutra_for_paging_r13_l_; + using supported_band_list_eutra_for_paging_r13_l_ = dyn_array; // member variables bool supported_band_list_eutra_for_paging_r13_present = false; @@ -56459,7 +55423,6 @@ struct ue_radio_paging_info_v1310_ies_s { // UERadioPagingInformation-r12-IEs ::= SEQUENCE struct ue_radio_paging_info_r12_ies_s { - // member variables bool non_crit_ext_present = false; dyn_octstring ue_radio_paging_info_r12; ue_radio_paging_info_v1310_ies_s non_crit_ext; @@ -56549,8 +55512,8 @@ struct ue_radio_paging_info_s { } private: - types type_; - choice_buffer_t c; + types type_; + choice_buffer_t c; void destroy_(); }; @@ -56566,7 +55529,6 @@ struct ue_radio_paging_info_s { // VarConnEstFailReport-r11 ::= SEQUENCE struct var_conn_est_fail_report_r11_s { - // member variables conn_est_fail_report_r11_s conn_est_fail_report_r11; plmn_id_s plmn_id_r11; @@ -56578,7 +55540,6 @@ struct var_conn_est_fail_report_r11_s { // VarLogMeasConfig-r10 ::= SEQUENCE struct var_log_meas_cfg_r10_s { - // member variables bool area_cfg_r10_present = false; area_cfg_r10_c area_cfg_r10; logging_dur_r10_e logging_dur_r10; @@ -56592,7 +55553,6 @@ struct var_log_meas_cfg_r10_s { // VarLogMeasConfig-r11 ::= SEQUENCE struct var_log_meas_cfg_r11_s { - // member variables bool area_cfg_r10_present = false; bool area_cfg_v1130_present = false; area_cfg_r10_c area_cfg_r10; @@ -56608,7 +55568,6 @@ struct var_log_meas_cfg_r11_s { // VarLogMeasConfig-r12 ::= SEQUENCE struct var_log_meas_cfg_r12_s { - // member variables bool area_cfg_r10_present = false; bool area_cfg_v1130_present = false; bool target_mbsfn_area_list_r12_present = false; @@ -56626,7 +55585,6 @@ struct var_log_meas_cfg_r12_s { // VarLogMeasConfig-r15 ::= SEQUENCE struct var_log_meas_cfg_r15_s { - // member variables bool area_cfg_r10_present = false; bool area_cfg_v1130_present = false; bool target_mbsfn_area_list_r12_present = false; @@ -56648,7 +55606,6 @@ struct var_log_meas_cfg_r15_s { // VarLogMeasReport-r10 ::= SEQUENCE struct var_log_meas_report_r10_s { - // member variables trace_ref_r10_s trace_ref_r10; fixed_octstring<2> trace_recording_session_ref_r10; fixed_octstring<1> tce_id_r10; @@ -56664,7 +55621,6 @@ struct var_log_meas_report_r10_s { // VarLogMeasReport-r11 ::= SEQUENCE struct var_log_meas_report_r11_s { - // member variables trace_ref_r10_s trace_ref_r10; fixed_octstring<2> trace_recording_session_ref_r10; fixed_octstring<1> tce_id_r10; @@ -56682,7 +55638,6 @@ struct var_log_meas_report_r11_s { struct var_meas_cfg_s { struct speed_state_pars_c_ { struct setup_s_ { - // member variables mob_state_params_s mob_state_params; speed_state_scale_factors_s time_to_trigger_sf; }; @@ -56775,7 +55730,6 @@ struct var_meas_idle_cfg_r15_s { // VarMeasIdleReport-r15 ::= SEQUENCE struct var_meas_idle_report_r15_s { - // member variables meas_result_list_idle_r15_l meas_report_idle_r15; // sequence methods @@ -56786,7 +55740,6 @@ struct var_meas_idle_report_r15_s { // VarMeasReport ::= SEQUENCE struct var_meas_report_s { - // member variables bool meas_id_v1250_present = false; bool cells_triggered_list_present = false; bool csi_rs_triggered_list_r12_present = false; @@ -56804,18 +55757,17 @@ struct var_meas_report_s { void to_json(json_writer& j) const; }; -// VarMeasReportList ::= SEQUENCE (SIZE (1..maxMeasId)) OF VarMeasReport -typedef dyn_array var_meas_report_list_l; +// VarMeasReportList ::= SEQUENCE (SIZE (1..32)) OF VarMeasReport +using var_meas_report_list_l = dyn_array; -// VarMeasReportList-r12 ::= SEQUENCE (SIZE (1..maxMeasId-r12)) OF VarMeasReport -typedef dyn_array var_meas_report_list_r12_l; +// VarMeasReportList-r12 ::= SEQUENCE (SIZE (1..64)) OF VarMeasReport +using var_meas_report_list_r12_l = dyn_array; // VarMobilityHistoryReport-r12 ::= VisitedCellInfoList-r12 typedef visited_cell_info_list_r12_l var_mob_history_report_r12_l; // VarRLF-Report-r10 ::= SEQUENCE struct var_rlf_report_r10_s { - // member variables rlf_report_r9_s rlf_report_r10; plmn_id_s plmn_id_r10; @@ -56827,7 +55779,6 @@ struct var_rlf_report_r10_s { // VarRLF-Report-r11 ::= SEQUENCE struct var_rlf_report_r11_s { - // member variables rlf_report_r9_s rlf_report_r10; plmn_id_list3_r11_l plmn_id_list_r11; @@ -56839,7 +55790,6 @@ struct var_rlf_report_r11_s { // VarShortINACTIVE-MAC-Input-r15 ::= SEQUENCE struct var_short_inactive_mac_input_r15_s { - // member variables fixed_bitstring<28> cell_id_r15; uint16_t pci_r15 = 0; fixed_bitstring<16> c_rnti_r15; @@ -56852,7 +55802,6 @@ struct var_short_inactive_mac_input_r15_s { // VarShortMAC-Input ::= SEQUENCE struct var_short_mac_input_s { - // member variables fixed_bitstring<28> cell_id; uint16_t pci = 0; fixed_bitstring<16> c_rnti; @@ -56868,7 +55817,6 @@ typedef var_short_mac_input_s var_short_mac_input_nb_r13_s; // VarShortResumeMAC-Input-r13 ::= SEQUENCE struct var_short_resume_mac_input_r13_s { - // member variables fixed_bitstring<28> cell_id_r13; uint16_t pci_r13 = 0; fixed_bitstring<16> c_rnti_r13; @@ -56885,7 +55833,6 @@ typedef var_short_resume_mac_input_r13_s var_short_resume_mac_input_nb_r13_s; // VarWLAN-MobilityConfig ::= SEQUENCE struct var_wlan_mob_cfg_s { - // member variables bool wlan_mob_set_r13_present = false; bool success_report_requested_present = false; bool wlan_suspend_cfg_r14_present = false; @@ -56900,7 +55847,6 @@ struct var_wlan_mob_cfg_s { // VarWLAN-Status-r13 ::= SEQUENCE struct var_wlan_status_r13_s { - // member variables bool status_r14_present = false; wlan_status_r13_e status_r13; wlan_status_v1430_e status_r14; diff --git a/lib/src/asn1/asn1_utils.cc b/lib/src/asn1/asn1_utils.cc index d9b1da4d1..51762e8b9 100644 --- a/lib/src/asn1/asn1_utils.cc +++ b/lib/src/asn1/asn1_utils.cc @@ -75,7 +75,7 @@ void log_error_code(SRSASN_CODE code, const char* filename, int line) srsasn_log_print(LOG_LEVEL_ERROR, "[%s][%d] Decoding failure.\n", filename, line); break; default: - srsasn_log_print(LOG_LEVEL_WARN, "[%s][%d] SRSASN_CODE=%d not recognized.\n", filename, line, (uint32_t)code); + srsasn_log_print(LOG_LEVEL_WARN, "[%s][%d] SRSASN_CODE=%u not recognized.\n", filename, line, (uint32_t)code); } } @@ -299,7 +299,7 @@ SRSASN_CODE pack_enum(bit_ref& bref, uint32_t enum_val, uint32_t nbits, uint32_t if (not ext) { ret = bref.pack(enum_val, nbits); } else { - ret = pack_norm_small_integer(bref, enum_val - nof_noext); + ret = pack_norm_small_non_neg_whole_number(bref, enum_val - nof_noext); } return ret; } @@ -308,7 +308,7 @@ SRSASN_CODE pack_enum(bit_ref& bref, uint32_t e, uint32_t nof_types, uint32_t no { if (e >= nof_types) { srsasn_log_print( - LOG_LEVEL_ERROR, "The provided enum is not within the range of possible values (%d>=%d)\n", e, nof_types); + LOG_LEVEL_ERROR, "The provided enum is not within the range of possible values (%u>=%u)\n", e, nof_types); return SRSASN_ERROR_ENCODE_FAIL; } SRSASN_CODE ret; @@ -335,7 +335,7 @@ ValOrError unpack_enum(uint32_t nof_types, uint32_t nof_exts, bool has_ext, bit_ if (not ext) { ret.code = bref.unpack(ret.val, nof_bits); } else { - ret.code = unpack_norm_small_integer(ret.val, bref); + ret.code = unpack_norm_small_non_neg_whole_number(ret.val, bref); ret.val += nof_types - nof_exts; } } else { @@ -344,222 +344,167 @@ ValOrError unpack_enum(uint32_t nof_types, uint32_t nof_exts, bool has_ext, bit_ } if (ret.val >= nof_types) { srsasn_log_print( - LOG_LEVEL_ERROR, "The provided enum is not within the range of possible values (%d>=%d)\n", ret.val, nof_types); + LOG_LEVEL_ERROR, "The provided enum is not within the range of possible values (%u>=%u)\n", ret.val, nof_types); ret.code = SRSASN_ERROR_DECODE_FAIL; } return ret; } /************************ - pack int + PER encoding ************************/ /** - * Encoder function for a constrained whole unaligned number + * X.691 - Section 10.5 + * Encoder function for a constrained whole number * @tparam IntType type of integer (e.g. uint8_t, uint32_t, etc.) * @param bref bit_ref where to encode integer * @param n integer current value - * @param lb - * @param ub + * @param lb lower bound + * @param ub upper bound * @return success or failure */ template -SRSASN_CODE pack_unalign_integer(bit_ref& bref, IntType n, IntType lb, IntType ub) +SRSASN_CODE pack_constrained_whole_number(bit_ref& bref, IntType n, IntType lb, IntType ub, bool aligned) { if (ub < lb or n < lb or n > ub) { srsasn_log_print(LOG_LEVEL_ERROR, "The condition lb <= n <= ub (%d <= %d <= %d) was not met\n", lb, n, ub); return SRSASN_ERROR_ENCODE_FAIL; } - uint64_t ra = ub - lb + 1; // NOTE: Can overflow if IntType is kept - if (ra != 1) { - uint32_t n_bits = (uint32_t)ceilf(log2f((float)ra)); - IntType toencode = n - lb; + uint64_t ra = (uint64_t)(ub - lb) + 1; // NOTE: Can overflow if IntType is kept + if (ra == 1) { + return SRSASN_SUCCESS; + } + uint32_t n_bits = (uint32_t)ceilf(log2f((float)ra)); // bit-field size + IntType toencode = n - lb; + if (not aligned) { + // UNALIGNED variant bref.pack(toencode, n_bits); + } else { + // ALIGNED variant + SRSASN_CODE ret; + if (ra < 256) { + ret = bref.pack(toencode, n_bits); + } else if (ra <= ASN_64K) { + // both one and two octets cases + uint32_t n_octets = ceil_frac(n_bits, 8u); + HANDLE_CODE(bref.align_bytes_zero()); + HANDLE_CODE(bref.pack(0, n_octets * 8 - n_bits)); + HANDLE_CODE(bref.pack(toencode, n_bits)); + ret = bref.align_bytes_zero(); + } else { + // TODO: Check if this is correct + uint32_t n_bits_len = (uint32_t)ceilf(log2f(ceil_frac(n_bits, 8u))); + n_bits = (uint32_t)floorf(log2f(toencode) + 1); + uint32_t n_octets = (uint32_t)((n_bits + 7) / 8); + HANDLE_CODE(bref.pack(n_octets - 1, n_bits_len)); + HANDLE_CODE(bref.align_bytes_zero()); + HANDLE_CODE(bref.pack(0, (n_octets * 8) - n_bits)); + ret = bref.pack(toencode, n_bits); + } + return ret; } return SRSASN_SUCCESS; } +template SRSASN_CODE pack_constrained_whole_number(bit_ref& bref, int8_t n, int8_t lb, int8_t ub, bool aligned); +template SRSASN_CODE +pack_constrained_whole_number(bit_ref& bref, int16_t n, int16_t lb, int16_t ub, bool aligned); +template SRSASN_CODE +pack_constrained_whole_number(bit_ref& bref, int32_t n, int32_t lb, int32_t ub, bool aligned); +template SRSASN_CODE +pack_constrained_whole_number(bit_ref& bref, int64_t n, int64_t lb, int64_t ub, bool aligned); +template SRSASN_CODE +pack_constrained_whole_number(bit_ref& bref, uint8_t n, uint8_t lb, uint8_t ub, bool aligned); +template SRSASN_CODE +pack_constrained_whole_number(bit_ref& bref, uint16_t n, uint16_t lb, uint16_t ub, bool aligned); +template SRSASN_CODE +pack_constrained_whole_number(bit_ref& bref, uint32_t n, uint32_t lb, uint32_t ub, bool aligned); +template SRSASN_CODE +pack_constrained_whole_number(bit_ref& bref, uint64_t n, uint64_t lb, uint64_t ub, bool aligned); + /** - * Encoder function for a constrained whole unaligned number + * X.691 - Section 10.5 + * Decoder function for a constrained whole number * @tparam IntType type of integer (e.g. uint8_t, uint32_t, etc.) + * @param n integer with decoded value * @param bref bit_ref where to encode integer - * @param n integer current value - * @param lb - * @param ub + * @param lb lower bound + * @param ub upper bound * @return success or failure */ template -SRSASN_CODE unpack_unalign_integer(IntType& n, bit_ref& bref, IntType lb, IntType ub) +SRSASN_CODE unpack_constrained_whole_number(IntType& n, bit_ref& bref, IntType lb, IntType ub, bool aligned) { if (ub < lb) { srsasn_log_print(LOG_LEVEL_ERROR, "The condition lb <= ub (%d <= %d) was not met\n", lb, ub); return SRSASN_ERROR_DECODE_FAIL; } - uint64_t ra = ub - lb + 1; // NOTE: Can overflow if IntType is kept. + uint64_t ra = (uint64_t)(ub - lb) + 1; // NOTE: Can overflow if IntType is kept. if (ra == 1) { n = lb; return SRSASN_SUCCESS; } - uint32_t n_bits = (uint32_t)ceilf(log2f(ra)); - SRSASN_CODE ret = bref.unpack(n, n_bits); - n += lb; - if (n < lb or n > ub) { - srsasn_log_print(LOG_LEVEL_ERROR, "The condition lb <= n <= ub (%d <= %d <= %d) was not met\n", lb, n, ub); - return SRSASN_ERROR_DECODE_FAIL; + uint32_t n_bits = (uint32_t)ceilf(log2f((float)ra)); + if (not aligned) { + // UNALIGNED variant + HANDLE_CODE(bref.unpack(n, n_bits)); + n += lb; + if (n > ub) { + srsasn_log_print(LOG_LEVEL_ERROR, "The condition lb <= n <= ub (%d <= %d <= %d) was not met\n", lb, n, ub); + return SRSASN_ERROR_DECODE_FAIL; + } + } else { + // ALIGNED variant + if (ra < 256) { + HANDLE_CODE(bref.unpack(n, n_bits)); + } else if (ra <= ASN_64K) { + uint32_t n_octets = ceil_frac(n_bits, 8u); + HANDLE_CODE(bref.align_bytes()); + HANDLE_CODE(bref.unpack(n, n_octets * 8)); + HANDLE_CODE(bref.align_bytes()); + } else { + // TODO: Check if this is correct + uint32_t n_bits_len = (uint32_t)ceilf(log2f(ceil_frac(n_bits, 8u))); + uint32_t n_octets; + HANDLE_CODE(bref.unpack(n_octets, n_bits_len)); + n_octets += 1; + HANDLE_CODE(bref.align_bytes()); + HANDLE_CODE(bref.unpack(n, n_octets * 8)); + } + n += lb; } - return ret; -} -template SRSASN_CODE pack_unalign_integer(bit_ref& bref, int8_t n, int8_t lb, int8_t ub); -template SRSASN_CODE pack_unalign_integer(bit_ref& bref, int16_t n, int16_t lb, int16_t ub); -template SRSASN_CODE pack_unalign_integer(bit_ref& bref, int32_t n, int32_t lb, int32_t ub); -template SRSASN_CODE pack_unalign_integer(bit_ref& bref, int64_t n, int64_t lb, int64_t ub); -template SRSASN_CODE pack_unalign_integer(bit_ref& bref, uint8_t n, uint8_t lb, uint8_t ub); -template SRSASN_CODE pack_unalign_integer(bit_ref& bref, uint16_t n, uint16_t lb, uint16_t ub); -template SRSASN_CODE pack_unalign_integer(bit_ref& bref, uint32_t n, uint32_t lb, uint32_t ub); -template SRSASN_CODE pack_unalign_integer(bit_ref& bref, uint64_t n, uint64_t lb, uint64_t ub); -template SRSASN_CODE unpack_unalign_integer(int8_t& n, bit_ref& bref, int8_t lb, int8_t ub); -template SRSASN_CODE unpack_unalign_integer(int16_t& n, bit_ref& bref, int16_t lb, int16_t ub); -template SRSASN_CODE unpack_unalign_integer(int32_t& n, bit_ref& bref, int32_t lb, int32_t ub); -template SRSASN_CODE unpack_unalign_integer(int64_t& n, bit_ref& bref, int64_t lb, int64_t ub); -template SRSASN_CODE unpack_unalign_integer(uint8_t& n, bit_ref& bref, uint8_t lb, uint8_t ub); -template SRSASN_CODE unpack_unalign_integer(uint16_t& n, bit_ref& bref, uint16_t lb, uint16_t ub); -template SRSASN_CODE unpack_unalign_integer(uint32_t& n, bit_ref& bref, uint32_t lb, uint32_t ub); -template SRSASN_CODE unpack_unalign_integer(uint64_t& n, bit_ref& bref, uint64_t lb, uint64_t ub); - -template -SRSASN_CODE UnalignedIntegerPacker::pack(bit_ref& bref, IntType n) const -{ - return pack_unalign_integer(bref, n, lb, ub); -} -template -SRSASN_CODE UnalignedIntegerPacker::unpack(IntType& n, bit_ref& bref) const -{ - return unpack_unalign_integer(n, bref, lb, ub); + return SRSASN_SUCCESS; } -template struct UnalignedIntegerPacker; -template struct UnalignedIntegerPacker; -template struct UnalignedIntegerPacker; -template struct UnalignedIntegerPacker; -template struct UnalignedIntegerPacker; -template struct UnalignedIntegerPacker; -template struct UnalignedIntegerPacker; -template struct UnalignedIntegerPacker; +template SRSASN_CODE +unpack_constrained_whole_number(int8_t& n, bit_ref& bref, int8_t lb, int8_t ub, bool aligned); +template SRSASN_CODE +unpack_constrained_whole_number(int16_t& n, bit_ref& bref, int16_t lb, int16_t ub, bool aligned); +template SRSASN_CODE +unpack_constrained_whole_number(int32_t& n, bit_ref& bref, int32_t lb, int32_t ub, bool aligned); +template SRSASN_CODE +unpack_constrained_whole_number(int64_t& n, bit_ref& bref, int64_t lb, int64_t ub, bool aligned); +template SRSASN_CODE +unpack_constrained_whole_number(uint8_t& n, bit_ref& bref, uint8_t lb, uint8_t ub, bool aligned); +template SRSASN_CODE +unpack_constrained_whole_number(uint16_t& n, bit_ref& bref, uint16_t lb, uint16_t ub, bool aligned); +template SRSASN_CODE +unpack_constrained_whole_number(uint32_t& n, bit_ref& bref, uint32_t lb, uint32_t ub, bool aligned); +template SRSASN_CODE +unpack_constrained_whole_number(uint64_t& n, bit_ref& bref, uint64_t lb, uint64_t ub, bool aligned); /** - * Encoder of a constrained whole aligned number + * X.691 - Section 10.6 + * Encoder function for a normally small non-negative whole number * @tparam IntType type of integer (e.g. uint8_t, uint32_t, etc.) * @param bref bit_ref where to encode integer - * @param n value of integer to pack - * @param lb - * @param ub - * @return + * @param n integer current value + * @return success or failure */ -template -SRSASN_CODE pack_align_integer(bit_ref& bref, IntType n, IntType lb, IntType ub) -{ - // FIXME: Bound checker. - IntType ra = ub - lb + 1; - if (ra == 1) { - return SRSASN_SUCCESS; - } - uint32_t n_bits = (uint32_t)ceilf(log2f(ra)); // bit-field size - IntType toencode = n - lb; - SRSASN_CODE ret; - if (ra < 256) { - ret = bref.pack(toencode, n_bits); - } else if (ra <= 65536) { - uint32_t n_octets = (n_bits + 7) / 8; - HANDLE_CODE(bref.align_bytes_zero()); - HANDLE_CODE(bref.pack(0, n_octets * 8 - n_bits)); - HANDLE_CODE(bref.pack(toencode, n_bits)); - ret = bref.align_bytes_zero(); - } else { - // TODO: Check if this is correct - uint32_t n_bits_len = (uint32_t)ceilf(log2f((n_bits + 7) / 8)); - n_bits = (uint32_t)floorf(log2f(toencode) + 1); - uint32_t n_octets = (uint32_t)((n_bits + 7) / 8); - HANDLE_CODE(bref.pack(n_octets - 1, n_bits_len)); - HANDLE_CODE(bref.align_bytes_zero()); - HANDLE_CODE(bref.pack(0, (n_octets * 8) - n_bits)); - ret = bref.pack(toencode, n_bits); - } - return ret; -} -template SRSASN_CODE pack_align_integer(bit_ref& bref, uint8_t n, uint8_t lb, uint8_t ub); -template SRSASN_CODE pack_align_integer(bit_ref& bref, uint16_t n, uint16_t lb, uint16_t ub); -template SRSASN_CODE pack_align_integer(bit_ref& bref, uint32_t n, uint32_t lb, uint32_t ub); -template SRSASN_CODE pack_align_integer(bit_ref& bref, uint64_t n, uint64_t lb, uint64_t ub); -template SRSASN_CODE pack_align_integer(bit_ref& bref, int8_t n, int8_t lb, int8_t ub); -template SRSASN_CODE pack_align_integer(bit_ref& bref, int16_t n, int16_t lb, int16_t ub); -template SRSASN_CODE pack_align_integer(bit_ref& bref, int32_t n, int32_t lb, int32_t ub); -template SRSASN_CODE pack_align_integer(bit_ref& bref, int64_t n, int64_t lb, int64_t ub); - -template -SRSASN_CODE unpack_align_integer(IntType& n, bit_ref& bref, IntType lb, IntType ub) -{ - uint32_t ra = ub - lb + 1; - if (ra == 1) { - n = lb; - return SRSASN_SUCCESS; - } - SRSASN_CODE ret = SRSASN_SUCCESS; - uint32_t n_bits = (uint32_t)ceil(log2(ra)); - if (ra < 256) { - ret = bref.unpack(n, n_bits); - } else if (ra < 65536) { - uint32_t n_octets = (n_bits + 7) / 8; - HANDLE_CODE(bref.align_bytes()); - HANDLE_CODE(bref.unpack(n, n_octets * 8)); - HANDLE_CODE(bref.align_bytes()); - } else { - uint32_t n_bits_len = (uint32_t)ceilf(log2f((n_bits + 7) / 8)); - uint32_t n_octets; - HANDLE_CODE(bref.unpack(n_octets, n_bits_len)); - n_octets += 1; - HANDLE_CODE(bref.align_bytes()); - HANDLE_CODE(bref.unpack(n, n_octets * 8)); - n += lb; - } - n += lb; - return ret; -} -template SRSASN_CODE unpack_align_integer(uint8_t& intval, bit_ref& bref, uint8_t lb, uint8_t ub); -template SRSASN_CODE unpack_align_integer(uint16_t& intval, bit_ref& bref, uint16_t lb, uint16_t ub); -template SRSASN_CODE unpack_align_integer(uint32_t& intval, bit_ref& bref, uint32_t lb, uint32_t ub); -template SRSASN_CODE unpack_align_integer(uint64_t& intval, bit_ref& bref, uint64_t lb, uint64_t ub); -template SRSASN_CODE unpack_align_integer(int8_t& intval, bit_ref& bref, int8_t lb, int8_t ub); -template SRSASN_CODE unpack_align_integer(int16_t& intval, bit_ref& bref, int16_t lb, int16_t ub); -template SRSASN_CODE unpack_align_integer(int32_t& intval, bit_ref& bref, int32_t lb, int32_t ub); -template SRSASN_CODE unpack_align_integer(int64_t& intval, bit_ref& bref, int64_t lb, int64_t ub); - -template -AlignedIntegerPacker::AlignedIntegerPacker(IntType lb_, IntType ub_) : lb(lb_), ub(ub_) -{ -} -template -SRSASN_CODE AlignedIntegerPacker::pack(bit_ref& bref, IntType n) -{ - return pack_align_integer(bref, n, lb, ub); -} -template -SRSASN_CODE AlignedIntegerPacker::unpack(IntType& n, bit_ref& bref) -{ - return unpack_align_integer(n, bref, lb, ub); -} -template struct AlignedIntegerPacker; -template struct AlignedIntegerPacker; -template struct AlignedIntegerPacker; -template struct AlignedIntegerPacker; -template struct AlignedIntegerPacker; -template struct AlignedIntegerPacker; -template struct AlignedIntegerPacker; -template struct AlignedIntegerPacker; - template -SRSASN_CODE pack_norm_small_integer(bit_ref& bref, UintType n) +SRSASN_CODE pack_norm_small_non_neg_whole_number(bit_ref& bref, UintType n) { if (n <= 63) { - HANDLE_CODE(bref.pack(0, 1)); - HANDLE_CODE(bref.pack(n, 6)); + HANDLE_CODE(bref.pack(n, 7)); // [1 bit: 0 | 6 bit: n] } else { HANDLE_CODE(bref.pack(1, 1)); srsasn_log_print(LOG_LEVEL_ERROR, "Long small integers not supported\n"); @@ -568,7 +513,7 @@ SRSASN_CODE pack_norm_small_integer(bit_ref& bref, UintType n) return SRSASN_SUCCESS; } template -SRSASN_CODE unpack_norm_small_integer(UintType& n, bit_ref& bref) +SRSASN_CODE unpack_norm_small_non_neg_whole_number(UintType& n, bit_ref& bref) { bool ext; SRSASN_CODE ret = bref.unpack(ext, 1); @@ -581,85 +526,340 @@ SRSASN_CODE unpack_norm_small_integer(UintType& n, bit_ref& bref) } return ret; } -template SRSASN_CODE pack_norm_small_integer(bit_ref& bref, uint8_t n); -template SRSASN_CODE pack_norm_small_integer(bit_ref& bref, uint16_t n); -template SRSASN_CODE pack_norm_small_integer(bit_ref& bref, uint32_t n); -template SRSASN_CODE pack_norm_small_integer(bit_ref& bref, uint64_t n); -template SRSASN_CODE unpack_norm_small_integer(uint8_t& n, bit_ref& bref); -template SRSASN_CODE unpack_norm_small_integer(uint16_t& n, bit_ref& bref); -template SRSASN_CODE unpack_norm_small_integer(uint32_t& n, bit_ref& bref); -template SRSASN_CODE unpack_norm_small_integer(uint64_t& n, bit_ref& bref); +template SRSASN_CODE pack_norm_small_non_neg_whole_number(bit_ref& bref, uint8_t n); +template SRSASN_CODE pack_norm_small_non_neg_whole_number(bit_ref& bref, uint16_t n); +template SRSASN_CODE pack_norm_small_non_neg_whole_number(bit_ref& bref, uint32_t n); +template SRSASN_CODE pack_norm_small_non_neg_whole_number(bit_ref& bref, uint64_t n); +template SRSASN_CODE unpack_norm_small_non_neg_whole_number(uint8_t& n, bit_ref& bref); +template SRSASN_CODE unpack_norm_small_non_neg_whole_number(uint16_t& n, bit_ref& bref); +template SRSASN_CODE unpack_norm_small_non_neg_whole_number(uint32_t& n, bit_ref& bref); +template SRSASN_CODE unpack_norm_small_non_neg_whole_number(uint64_t& n, bit_ref& bref); + +template +IntType unconstrained_whole_number_length(IntType n) +{ + return (IntType)ceilf((log2f(n) + 1) / 8.0f); +} + +/** + * X.691 - Section 10.8 + * Encoder function for an unconstrained whole number + * @tparam IntType type of integer (e.g. int8_t, uint32_t, etc.) + * @param bref bit_ref where to encode integer + * @param n integer current value + * @return success or failure + */ +template +SRSASN_CODE pack_unconstrained_whole_number(bit_ref& bref, IntType n, bool aligned) +{ + // FIXME: Test + uint32_t len = unconstrained_whole_number_length(n); + if (aligned) { + HANDLE_CODE(bref.align_bytes_zero()); + } + HANDLE_CODE(bref.pack(n, len * 8)); + + return SRSASN_SUCCESS; +} +template +SRSASN_CODE unpack_unconstrained_whole_number(IntType& n, bit_ref& bref, bool aligned) +{ + // FIXME: Test + uint32_t len; + HANDLE_CODE(unpack_length(len, bref, aligned)); + if (aligned) { + HANDLE_CODE(bref.align_bytes()); + } + HANDLE_CODE(bref.unpack(n, len * 8)); + + return SRSASN_SUCCESS; +} +template SRSASN_CODE pack_unconstrained_whole_number(bit_ref& bref, int8_t n, bool aligned); +template SRSASN_CODE pack_unconstrained_whole_number(bit_ref& bref, int16_t n, bool aligned); +template SRSASN_CODE pack_unconstrained_whole_number(bit_ref& bref, int32_t n, bool aligned); +template SRSASN_CODE pack_unconstrained_whole_number(bit_ref& bref, int64_t n, bool aligned); +template SRSASN_CODE unpack_unconstrained_whole_number(int8_t& n, bit_ref& bref, bool aligned); +template SRSASN_CODE unpack_unconstrained_whole_number(int16_t& n, bit_ref& bref, bool aligned); +template SRSASN_CODE unpack_unconstrained_whole_number(int32_t& n, bit_ref& bref, bool aligned); +template SRSASN_CODE unpack_unconstrained_whole_number(int64_t& n, bit_ref& bref, bool aligned); +template SRSASN_CODE pack_unconstrained_whole_number(bit_ref& bref, uint8_t n, bool aligned); +template SRSASN_CODE pack_unconstrained_whole_number(bit_ref& bref, uint16_t n, bool aligned); +template SRSASN_CODE pack_unconstrained_whole_number(bit_ref& bref, uint32_t n, bool aligned); +template SRSASN_CODE pack_unconstrained_whole_number(bit_ref& bref, uint64_t n, bool aligned); +template SRSASN_CODE unpack_unconstrained_whole_number(uint8_t& n, bit_ref& bref, bool aligned); +template SRSASN_CODE unpack_unconstrained_whole_number(uint16_t& n, bit_ref& bref, bool aligned); +template SRSASN_CODE unpack_unconstrained_whole_number(uint32_t& n, bit_ref& bref, bool aligned); +template SRSASN_CODE unpack_unconstrained_whole_number(uint64_t& n, bit_ref& bref, bool aligned); /********************* varlength_packing *********************/ template -SRSASN_CODE pack_length(bit_ref& bref, IntType n, IntType lb, IntType ub) -{ - // TODO: FIXME if range higher than 64K - return pack_unalign_integer(bref, n, lb, ub); -} -template SRSASN_CODE pack_length(bit_ref& bref, uint8_t n, uint8_t lb, uint8_t ub); -template SRSASN_CODE pack_length(bit_ref& bref, uint16_t n, uint16_t lb, uint16_t ub); -template SRSASN_CODE pack_length(bit_ref& bref, uint32_t n, uint32_t lb, uint32_t ub); -template SRSASN_CODE pack_length(bit_ref& bref, uint64_t n, uint64_t lb, uint64_t ub); -template SRSASN_CODE pack_length(bit_ref& bref, int8_t n, int8_t lb, int8_t ub); -template SRSASN_CODE pack_length(bit_ref& bref, int16_t n, int16_t lb, int16_t ub); -template SRSASN_CODE pack_length(bit_ref& bref, int32_t n, int32_t lb, int32_t ub); -template SRSASN_CODE pack_length(bit_ref& bref, int64_t n, int64_t lb, int64_t ub); +SRSASN_CODE pack_length(bit_ref& bref, IntType n, IntType lb, IntType ub, bool aligned) +{ + return pack_constrained_whole_number(bref, n, lb, ub, aligned); +} +template SRSASN_CODE pack_length(bit_ref& bref, uint8_t n, uint8_t lb, uint8_t ub, bool aligned); +template SRSASN_CODE pack_length(bit_ref& bref, uint16_t n, uint16_t lb, uint16_t ub, bool aligned); +template SRSASN_CODE pack_length(bit_ref& bref, uint32_t n, uint32_t lb, uint32_t ub, bool aligned); +template SRSASN_CODE pack_length(bit_ref& bref, uint64_t n, uint64_t lb, uint64_t ub, bool aligned); +template SRSASN_CODE pack_length(bit_ref& bref, int8_t n, int8_t lb, int8_t ub, bool aligned); +template SRSASN_CODE pack_length(bit_ref& bref, int16_t n, int16_t lb, int16_t ub, bool aligned); +template SRSASN_CODE pack_length(bit_ref& bref, int32_t n, int32_t lb, int32_t ub, bool aligned); +template SRSASN_CODE pack_length(bit_ref& bref, int64_t n, int64_t lb, int64_t ub, bool aligned); + template -SRSASN_CODE unpack_length(IntType& n, bit_ref& bref, IntType lb, IntType ub) +SRSASN_CODE unpack_length(IntType& n, bit_ref& bref, IntType lb, IntType ub, bool aligned) { - // TODO: FIXME if range higher than 64K - return unpack_unalign_integer(n, bref, lb, ub); + return unpack_constrained_whole_number(n, bref, lb, ub, aligned); } +template SRSASN_CODE unpack_length(uint8_t& n, bit_ref& bref, uint8_t lb, uint8_t ub, bool aligned); +template SRSASN_CODE unpack_length(uint16_t& n, bit_ref& bref, uint16_t lb, uint16_t ub, bool aligned); +template SRSASN_CODE unpack_length(uint32_t& n, bit_ref& bref, uint32_t lb, uint32_t ub, bool aligned); +template SRSASN_CODE unpack_length(uint64_t& n, bit_ref& bref, uint64_t lb, uint64_t ub, bool aligned); +template SRSASN_CODE unpack_length(int8_t& n, bit_ref& bref, int8_t lb, int8_t ub, bool aligned); +template SRSASN_CODE unpack_length(int16_t& n, bit_ref& bref, int16_t lb, int16_t ub, bool aligned); +template SRSASN_CODE unpack_length(int32_t& n, bit_ref& bref, int32_t lb, int32_t ub, bool aligned); +template SRSASN_CODE unpack_length(int64_t& n, bit_ref& bref, int64_t lb, int64_t ub, bool aligned); -template SRSASN_CODE unpack_length(uint8_t& n, bit_ref& bref, uint8_t lb, uint8_t ub); -template SRSASN_CODE unpack_length(uint16_t& n, bit_ref& bref, uint16_t lb, uint16_t ub); -template SRSASN_CODE unpack_length(uint32_t& n, bit_ref& bref, uint32_t lb, uint32_t ub); -template SRSASN_CODE unpack_length(uint64_t& n, bit_ref& bref, uint64_t lb, uint64_t ub); -template SRSASN_CODE unpack_length(int8_t& n, bit_ref& bref, int8_t lb, int8_t ub); -template SRSASN_CODE unpack_length(int16_t& n, bit_ref& bref, int16_t lb, int16_t ub); -template SRSASN_CODE unpack_length(int32_t& n, bit_ref& bref, int32_t lb, int32_t ub); -template SRSASN_CODE unpack_length(int64_t& n, bit_ref& bref, int64_t lb, int64_t ub); +/** + * X.691 - Section 10.9 + * Pack unconstrained length determinant + * @param bref + * @param val "n" length value to pack + * @param aligned + * @return + */ +SRSASN_CODE pack_length(bit_ref& bref, uint32_t val, bool aligned) +{ + if (not aligned) { + if (val < 128) { + HANDLE_CODE(bref.pack(val, 8)); // first bit is 0 + } else if (val < ASN_16K) { + HANDLE_CODE(bref.pack(0b10, 2)); + HANDLE_CODE(bref.pack(val, 14)); + } else { + srsasn_log_print(LOG_LEVEL_ERROR, "Not handling sizes longer than 16383 octets\n"); + return SRSASN_ERROR_ENCODE_FAIL; + } + } else { + if (val > ASN_64K) { + // TODO: Error message + return SRSASN_ERROR_ENCODE_FAIL; + } + HANDLE_CODE(bref.align_bytes()); + if (val < 128) { + return bref.pack(val, 8); // first bit is 0 + } else if (val < ASN_16K) { + HANDLE_CODE(bref.pack(0b10, 2)); + return bref.pack(val, 14); + } else { + HANDLE_CODE(bref.pack(0b11, 2)); + uint32_t m = val / ASN_16K; + HANDLE_CODE(bref.pack(m, 6)); + val = val - m * ASN_16K; + return bref.pack(val, 16); // TODO: FIXME + } + } + return SRSASN_SUCCESS; +} -SRSASN_CODE pack_length(bit_ref& bref, uint32_t val) +SRSASN_CODE unpack_length(uint32_t& val, bit_ref& bref, bool aligned) { - if (val < 128) { - HANDLE_CODE(bref.pack(0, 1)); - HANDLE_CODE(bref.pack(val, 7)); - } else if (val < ASN_16K) { - HANDLE_CODE(bref.pack(1, 1)); - HANDLE_CODE(bref.pack(0, 1)); - HANDLE_CODE(bref.pack(val, 14)); + bool ext; + if (not aligned) { + SRSASN_CODE ret = bref.unpack(ext, 1); + HANDLE_CODE(ret); + if (not ext) { + ret = bref.unpack(val, 7); + } else { + ret = bref.unpack(ext, 1); + HANDLE_CODE(ret); + if (not ext) { + ret = bref.unpack(val, 14); + } else { + srsasn_log_print(LOG_LEVEL_ERROR, "Not handling octet strings longer than 16383 octets\n"); + val = 0; + return SRSASN_ERROR_DECODE_FAIL; + } + } + return ret; } else { - srsasn_log_print(LOG_LEVEL_ERROR, "Not handling sizes longer than 16383 octets\n"); + HANDLE_CODE(bref.align_bytes()); + HANDLE_CODE(bref.unpack(val, 8)); + if (val < 128) { + // "n" < 128 + // first bit was set to zero + return SRSASN_SUCCESS; + } + val -= 128; + if (val < 64) { + // 128 <= "n" < 16K + // second bit is set to zero as well + uint32_t val_octet_2; + HANDLE_CODE(bref.unpack(val_octet_2, 8)); + val = (val << 8u) + val_octet_2; + return SRSASN_SUCCESS; + } + // TODO: Error message + return SRSASN_ERROR_ENCODE_FAIL; + } +} + +/************************ + Integer +************************/ + +template +SRSASN_CODE pack_integer(bit_ref& bref, IntType n, IntType lb, IntType ub, bool has_ext, bool aligned) +{ + // pack ext marker + bool within_bounds = n >= lb and n <= ub; + if (has_ext) { + HANDLE_CODE(bref.pack(not within_bounds, 1)); + } else if (not within_bounds) { + srsasn_log_print(LOG_LEVEL_ERROR, "The condition lb <= n <= ub (%d <= %d <= %d) was not met\n", lb, n, ub); return SRSASN_ERROR_ENCODE_FAIL; } + bool lower_bounded = lb != std::numeric_limits::min() or lb == 0; + bool upper_bounded = ub != std::numeric_limits::max(); + + if (within_bounds and lower_bounded and upper_bounded) { + // constrained case + if (lb == ub) { + return SRSASN_SUCCESS; + } + // FIXME: Check if we are in the indefinite length case, and pack length prefix if needed + // if(indefinite_length) { + // HANDLE_CODE(pack_length(bref, n, 1, ceilf(log2f()), aligned)); + // } + HANDLE_CODE(pack_constrained_whole_number(bref, n, (IntType)lb, (IntType)ub, aligned)); + } else { + if (not within_bounds or (not lower_bounded and not upper_bounded)) { + HANDLE_CODE(pack_length(bref, unconstrained_whole_number_length(n), aligned)); + HANDLE_CODE(pack_unconstrained_whole_number(bref, n, aligned)); + } else { + // pack as semi-constrained + // TODO + } + } return SRSASN_SUCCESS; } +template SRSASN_CODE +pack_integer(bit_ref& bref, uint8_t n, uint8_t lb, uint8_t ub, bool has_ext, bool aligned); +template SRSASN_CODE +pack_integer(bit_ref& bref, uint16_t n, uint16_t lb, uint16_t ub, bool has_ext, bool aligned); +template SRSASN_CODE +pack_integer(bit_ref& bref, uint32_t n, uint32_t lb, uint32_t ub, bool has_ext, bool aligned); +template SRSASN_CODE + pack_integer(bit_ref& bref, uint64_t n, uint64_t lb, uint64_t ub, bool has_ext, bool aligned); +template SRSASN_CODE pack_integer(bit_ref& bref, int8_t n, int8_t lb, int8_t ub, bool has_ext, bool aligned); +template SRSASN_CODE +pack_integer(bit_ref& bref, int16_t n, int16_t lb, int16_t ub, bool has_ext, bool aligned); +template SRSASN_CODE +pack_integer(bit_ref& bref, int32_t n, int32_t lb, int32_t ub, bool has_ext, bool aligned); +template SRSASN_CODE +pack_integer(bit_ref& bref, int64_t n, int64_t lb, int64_t ub, bool has_ext, bool aligned); + +// unconstrained specialization case +template +SRSASN_CODE pack_unconstrained_integer(bit_ref& bref, IntType n, bool has_ext, bool aligned) +{ + return pack_integer( + bref, n, std::numeric_limits::min(), std::numeric_limits::max(), has_ext, aligned); +} +template SRSASN_CODE pack_unconstrained_integer(bit_ref& bref, int8_t n, bool has_ext, bool aligned); +template SRSASN_CODE pack_unconstrained_integer(bit_ref& bref, int16_t n, bool has_ext, bool aligned); +template SRSASN_CODE pack_unconstrained_integer(bit_ref& bref, int32_t n, bool has_ext, bool aligned); +template SRSASN_CODE pack_unconstrained_integer(bit_ref& bref, int64_t n, bool has_ext, bool aligned); -SRSASN_CODE unpack_length(uint32_t& val, bit_ref& bref) +template +SRSASN_CODE unpack_integer(IntType& n, bit_ref& bref, IntType lb, IntType ub, bool has_ext, bool aligned) { - bool ext; - SRSASN_CODE ret = bref.unpack(ext, 1); - HANDLE_CODE(ret); - if (not ext) { - ret = bref.unpack(val, 7); + bool within_bounds = true; + if (has_ext) { + HANDLE_CODE(bref.unpack(within_bounds, 1)); + within_bounds = not within_bounds; + } + bool lower_bounded = lb != std::numeric_limits::min() or lb == 0; + bool upper_bounded = ub != std::numeric_limits::max(); + + if (within_bounds and lower_bounded and upper_bounded) { + // constrained case + if (lb == ub) { + return SRSASN_SUCCESS; + } + // FIXME: Check if we are in the indefinite length case, and pack length prefix if needed + HANDLE_CODE(unpack_constrained_whole_number(n, bref, (IntType)lb, (IntType)ub, aligned)); } else { - ret = bref.unpack(ext, 1); - HANDLE_CODE(ret); - if (not ext) { - ret = bref.unpack(val, 14); + if (not within_bounds or (not lower_bounded and not upper_bounded)) { + uint32_t len; + HANDLE_CODE(unpack_length(len, bref, aligned)); + HANDLE_CODE(unpack_unconstrained_whole_number(n, bref, aligned)); // FIXME } else { - srsasn_log_print(LOG_LEVEL_ERROR, "Not handling octet strings longer than 16383 octets\n"); - val = 0; - return SRSASN_ERROR_DECODE_FAIL; + // pack as semi-constrained + // TODO } } - return ret; + return SRSASN_SUCCESS; } +template SRSASN_CODE +unpack_integer(uint8_t& n, bit_ref& bref, uint8_t lb, uint8_t ub, bool has_ext, bool aligned); +template SRSASN_CODE +unpack_integer(uint16_t& n, bit_ref& bref, uint16_t lb, uint16_t ub, bool has_ext, bool aligned); +template SRSASN_CODE +unpack_integer(uint32_t& n, bit_ref& bref, uint32_t lb, uint32_t ub, bool has_ext, bool aligned); +template SRSASN_CODE + unpack_integer(uint64_t& n, bit_ref& bref, uint64_t lb, uint64_t ub, bool has_ext, bool aligned); +template SRSASN_CODE unpack_integer(int8_t& n, bit_ref& bref, int8_t lb, int8_t ub, bool has_ext, bool aligned); +template SRSASN_CODE +unpack_integer(int16_t& n, bit_ref& bref, int16_t lb, int16_t ub, bool has_ext, bool aligned); +template SRSASN_CODE +unpack_integer(int32_t& n, bit_ref& bref, int32_t lb, int32_t ub, bool has_ext, bool aligned); +template SRSASN_CODE +unpack_integer(int64_t& n, bit_ref& bref, int64_t lb, int64_t ub, bool has_ext, bool aligned); + +// unconstrained specialization case +template +SRSASN_CODE unpack_unconstrained_integer(IntType& n, bit_ref& bref, bool has_ext, bool aligned) +{ + return unpack_integer( + n, bref, std::numeric_limits::min(), std::numeric_limits::max(), has_ext, aligned); +} +template SRSASN_CODE unpack_unconstrained_integer(int8_t& n, bit_ref& bref, bool has_ext, bool aligned); +template SRSASN_CODE unpack_unconstrained_integer(int16_t& n, bit_ref& bref, bool has_ext, bool aligned); +template SRSASN_CODE unpack_unconstrained_integer(int32_t& n, bit_ref& bref, bool has_ext, bool aligned); +template SRSASN_CODE unpack_unconstrained_integer(int64_t& n, bit_ref& bref, bool has_ext, bool aligned); + +// standalone packer +template +integer_packer::integer_packer(IntType lb_, IntType ub_, bool has_ext_, bool aligned_) : + lb(lb_), + ub(ub_), + has_ext(has_ext_), + aligned(aligned_) +{ +} + +template +SRSASN_CODE integer_packer::pack(bit_ref& bref, IntType n) +{ + return pack_integer(bref, n, lb, ub, has_ext, aligned); +} +template +SRSASN_CODE integer_packer::unpack(IntType& n, bit_ref& bref) +{ + return unpack_integer(n, bref, lb, ub, has_ext, aligned); +} +template struct integer_packer; +template struct integer_packer; +template struct integer_packer; +template struct integer_packer; +template struct integer_packer; +template struct integer_packer; +template struct integer_packer; +template struct integer_packer; /************************ common octstring @@ -710,7 +910,7 @@ std::string octstring_to_string(const uint8_t* ptr, uint32_t N) void string_to_octstring(uint8_t* ptr, const std::string& str) { if (str.size() % 2 != 0) { - srsasn_log_print(LOG_LEVEL_WARN, "The provided hex string size=%d is not a multiple of 2\n.", str.size()); + srsasn_log_print(LOG_LEVEL_WARN, "The provided hex string size=%zu is not a multiple of 2\n.", str.size()); } char cstr[] = "\0\0\0"; for (uint32_t i = 0; i < str.size(); i += 2) { @@ -723,19 +923,21 @@ void string_to_octstring(uint8_t* ptr, const std::string& str) dyn_octstring ************************/ -SRSASN_CODE dyn_octstring::pack(bit_ref& bref) const +template +SRSASN_CODE unbounded_octstring::pack(bit_ref& bref) const { - HANDLE_CODE(pack_length(bref, size())); + HANDLE_CODE(pack_length(bref, size(), aligned)); for (uint32_t i = 0; i < size(); ++i) { HANDLE_CODE(bref.pack(octets_[i], 8)); } return SRSASN_SUCCESS; } -SRSASN_CODE dyn_octstring::unpack(bit_ref& bref) +template +SRSASN_CODE unbounded_octstring::unpack(bit_ref& bref) { uint32_t len; - HANDLE_CODE(unpack_length(len, bref)); + HANDLE_CODE(unpack_length(len, bref, aligned)); resize(len); for (uint32_t i = 0; i < size(); ++i) { HANDLE_CODE(bref.unpack(octets_[i], 8)); @@ -743,18 +945,23 @@ SRSASN_CODE dyn_octstring::unpack(bit_ref& bref) return SRSASN_SUCCESS; } -std::string dyn_octstring::to_string() const +template +std::string unbounded_octstring::to_string() const { return octstring_to_string(&octets_[0], size()); } -dyn_octstring& dyn_octstring::from_string(const std::string& hexstr) +template +unbounded_octstring& unbounded_octstring::from_string(const std::string& hexstr) { resize(hexstr.size() / 2); string_to_octstring(&octets_[0], hexstr); return *this; } +template class unbounded_octstring; +template class unbounded_octstring; + /********************* bitstring *********************/ @@ -868,93 +1075,139 @@ SRSASN_CODE unpack_fixed_bitstring(uint8_t* buf, bool& ext, bit_ref& bref, uint3 } /********************* - dyn_bitstring + common bitstring *********************/ -dyn_bitstring::dyn_bitstring(uint32_t n_bits_) : n_bits(n_bits_) -{ - uint32_t n_bytes = nof_octets(); - octets_.resize(n_bytes); - memset(&octets_[0], 0, n_bytes); -} +namespace bitstring_utils { -dyn_bitstring::dyn_bitstring(const char* s) +SRSASN_CODE pack_length_prefix(bit_ref& bref, + const uint8_t* data, + uint32_t len, + uint32_t lb, + uint32_t ub, + bool has_ext, + bool is_aligned) { - n_bits = (uint32_t)strlen(s); - uint32_t n_bytes = nof_octets(); - octets_.resize(n_bytes); - memset(&octets_[0], 0, n_bytes); - for (uint32_t i = 0; i < n_bits; ++i) - this->set(i, s[n_bits - i - 1] == '1'); -} + if (has_ext and ub == std::numeric_limits::max()) { + srsasn_log_print(LOG_LEVEL_ERROR, "has extension marker but it is an unbounded prefix size\n"); + return SRSASN_ERROR_ENCODE_FAIL; + } + bool within_bounds = len >= lb and len <= ub; + if (not within_bounds and not has_ext) { + srsasn_log_print(LOG_LEVEL_ERROR, "bitstring length=%d is not within bounds [%d, %d]\n", len, lb, ub); + return SRSASN_ERROR_ENCODE_FAIL; + } -bool dyn_bitstring::operator==(const char* other_str) const -{ - return strlen(other_str) == length() and (*this) == dyn_bitstring(other_str); + if (has_ext) { + HANDLE_CODE(bref.pack(not within_bounds, 1)); + } + + if (lb == ub and within_bounds) { + // do not encode prefix if fixed size + return SRSASN_SUCCESS; + } + + if (ub == std::numeric_limits::max() or not within_bounds) { + // pack as unbounded + return pack_length(bref, len); + } + + // pack as bounded + uint32_t len_bits = (uint32_t)ceilf(log2(ub - lb)); + HANDLE_CODE(bref.pack(len - lb, len_bits)); + if (is_aligned) { + HANDLE_CODE(bref.align_bytes_zero()); + } + return SRSASN_SUCCESS; } -void dyn_bitstring::resize(uint32_t new_size) +SRSASN_CODE +pack(bit_ref& bref, const uint8_t* data, uint32_t len, uint32_t lb, uint32_t ub, bool has_ext, bool is_aligned) { - n_bits = new_size; - octets_.resize(nof_octets()); - memset(&octets_[0], 0, nof_octets()); + if ((len < lb or len > ub) and not has_ext) { + srsasn_log_print(LOG_LEVEL_ERROR, "bitstring length=%d is not within bounds [%d, %d]\n", len, lb, ub); + return SRSASN_ERROR_ENCODE_FAIL; + } + + // encode prefix + HANDLE_CODE(bitstring_utils::pack_length_prefix(bref, data, len, lb, ub, has_ext, is_aligned)); + + // encode bitstring + return pack_common_bitstring(bref, data, len); } -SRSASN_CODE dyn_bitstring::pack(bit_ref& bref, uint32_t lb, uint32_t ub) const +// Unpack prefix, excluding ext bit + +SRSASN_CODE unpack_length_prefix(uint32_t& len, bit_ref& bref, uint32_t lb, uint32_t ub, bool has_ext, bool is_aligned) { - uint32_t len = length(); - if (len < lb) { - srsasn_log_print(LOG_LEVEL_ERROR, "dynamic bitstring length=%d is lower than set lower bound=%d\n", len, lb); - return SRSASN_ERROR_ENCODE_FAIL; + bool ext = false; + if (has_ext) { + HANDLE_CODE(bref.unpack(ext, 1)); } - if (ub > 0) { - if (ub < len) { - srsasn_log_print( - LOG_LEVEL_ERROR, "asn1 error: dynamic bitstring length=%d is higher than set upper bound=%d\n", len, ub); - return SRSASN_ERROR_ENCODE_FAIL; - } - uint32_t len_bits = ceilf(log2(ub - lb)); - HANDLE_CODE(bref.pack(len - lb, len_bits)); - HANDLE_CODE(bref.align_bytes_zero()); - } else { - HANDLE_CODE(pack_length(bref, len)); + + // unbounded or ext is set + if (ub == std::numeric_limits::max() or ext) { + return unpack_length(len, bref, is_aligned); } - HANDLE_CODE(pack_common_bitstring(bref, &octets_[0], len)); - // bref.align_bytes_zero(); + + // fixed length with no ext + if (lb == ub) { + len = lb; + return SRSASN_SUCCESS; + } + + // constrained, simple case + HANDLE_CODE(unpack_length(len, bref, lb, ub, is_aligned)); + // if (is_aligned) { + // HANDLE_CODE(bref.align_bytes_zero()); + // } + // uint32_t len_bits = ceilf(log2f(ub - lb)); + // HANDLE_CODE(bref.unpack(len, len_bits)); + // len += lb; return SRSASN_SUCCESS; } -SRSASN_CODE dyn_bitstring::pack(bit_ref& bref, bool ext, uint32_t lb, uint32_t ub) const +// for both fixed, constrained and unconstrained scenarios +SRSASN_CODE unpack_bitfield(uint8_t* buf, bit_ref& bref, uint32_t n, uint32_t lb, uint32_t ub, bool is_aligned) { - HANDLE_CODE(pack_unsupported_ext_flag(bref, ext)); - HANDLE_CODE(pack(bref, lb, ub)); + if (is_aligned and (lb != ub or ub > 16)) { + bref.align_bytes(); + } + // unpack exactly "n" bits + uint32_t n_octs = ceil_frac(n, 8u); + uint32_t offset = ((n - 1) % 8) + 1; + HANDLE_CODE(bref.unpack(buf[n_octs - 1], offset)); + for (uint32_t i = 1; i < n_octs; ++i) { + HANDLE_CODE(bref.unpack(buf[n_octs - 1 - i], 8)); + } return SRSASN_SUCCESS; } -SRSASN_CODE dyn_bitstring::unpack(bit_ref& bref, uint32_t lb, uint32_t ub) +// fixed length case +SRSASN_CODE unpack_fixed_bitstring(uint8_t* buf, bit_ref& bref, uint32_t nof_bits, bool has_ext, bool is_aligned) { - uint32_t len; - if (ub > 0) { - uint32_t len_bits = ceilf(log2f(ub - lb)); - HANDLE_CODE(bref.unpack(len, len_bits)); - len += lb; - resize(len); - HANDLE_CODE(bref.align_bytes_zero()); + if (has_ext) { + bool ext; + HANDLE_CODE(bref.unpack(ext, 1)); + if (ext) { + srsasn_log_print(LOG_LEVEL_ERROR, "bitstrings longer than 64K not supported\n"); + // FIXME: fixed bitstrings have to become resizeable + // return unpack_default_bitstring(buf, bref, nof_bits, nof_bits, is_aligned); + } + } + if (nof_bits == 0) { + // empty bit string + return SRSASN_SUCCESS; + } + if (nof_bits <= ASN_64K) { + return unpack_bitfield(buf, bref, nof_bits, nof_bits, nof_bits, is_aligned); } else { - HANDLE_CODE(unpack_length(len, bref)); - resize(len); + srsasn_log_print(LOG_LEVEL_ERROR, "bitstrings longer than 64K not supported\n"); + return SRSASN_ERROR_DECODE_FAIL; } - HANDLE_CODE(unpack_common_bitstring(&octets_[0], bref, len)); - // bref.align_bytes_zero(); - return SRSASN_SUCCESS; } -SRSASN_CODE dyn_bitstring::unpack(bit_ref& bref, bool& ext, uint32_t lb, uint32_t ub) -{ - HANDLE_CODE(unpack_unsupported_ext_flag(ext, bref)); - HANDLE_CODE(unpack(bref, lb, ub)); - return SRSASN_SUCCESS; -} +} // namespace bitstring_utils /********************* choice utils @@ -965,9 +1218,101 @@ void log_invalid_access_choice_id(uint32_t val, uint32_t choice_id) } void log_invalid_choice_id(uint32_t val, const char* choice_type) { - srsasn_log_print(LOG_LEVEL_ERROR, "Invalid choice id=%d for choice type %s\n", val, choice_type); + srsasn_log_print(LOG_LEVEL_ERROR, "Invalid choice id=%u for choice type %s\n", val, choice_type); +} + +/********************* + printable string +*********************/ + +namespace asn_string_utils { + +size_t get_nof_bits_per_char(size_t lb, size_t ub, bool aligned) +{ + size_t N = ub - lb + 1; + size_t b = (size_t)ceilf(log2(N)); // B + if (aligned) { + b = (size_t)pow(2, ceilf(log2(b))); // B2 + } + return b; +} + +bool is_octet_aligned(size_t bits_per_char, size_t alb, size_t aub, bool aligned) +{ + size_t max_nof_bits = bits_per_char * aub; + return aligned and (max_nof_bits > 16 or (alb != aub and max_nof_bits == 16)); } +constexpr bool is_length_encoded(size_t alb, size_t aub, bool aligned) +{ + return alb != aub or aub >= ASN_64K; +} + +SRSASN_CODE +pack(bit_ref& bref, const std::string& s, size_t lb, size_t ub, size_t alb, size_t aub, bool ext, bool aligned) +{ + bool within_limits = s.size() >= alb and s.size() <= aub; + if (not within_limits) { + // TODO: print error + // NOTE: This should be valid for exts + srsasn_log_print( + LOG_LEVEL_ERROR, "The PrintableString size=%d is not within the limits [%d, %d]\n", s.size(), alb, aub); + return SRSASN_ERROR_ENCODE_FAIL; + } + size_t b = asn_string_utils::get_nof_bits_per_char(lb, ub, aligned); + bool octet_aligned = asn_string_utils::is_octet_aligned(b, alb, aub, aligned); + bool length_encoded = asn_string_utils::is_length_encoded(alb, aub, aligned); + if (octet_aligned) { + bref.align_bytes_zero(); + } + if (ext) { + HANDLE_CODE(bref.pack(0, 1)); + } + if (length_encoded) { + pack_length(bref, s.size(), alb, aub, octet_aligned); + } + if (octet_aligned) { + bref.align_bytes_zero(); + } + for (uint32_t i = 0; i < s.size(); ++i) { + HANDLE_CODE(bref.pack(s[i], b)); + } + return SRSASN_SUCCESS; +} + +SRSASN_CODE unpack(std::string& s, bit_ref& bref, size_t lb, size_t ub, size_t alb, size_t aub, bool ext, bool aligned) +{ + size_t b = asn_string_utils::get_nof_bits_per_char(lb, ub, aligned); + bool octet_aligned = asn_string_utils::is_octet_aligned(b, alb, aub, aligned); + bool length_encoded = asn_string_utils::is_length_encoded(alb, aub, aligned); + size_t max_nof_bits = b * aub; + if (octet_aligned) { + bref.align_bytes(); + } + if (ext) { + bool is_ext; + HANDLE_CODE(bref.unpack(is_ext, 1)); + if (is_ext) { + srsasn_log_print(LOG_LEVEL_ERROR, "Extension of PrintableString not supported\n"); + return SRSASN_ERROR_DECODE_FAIL; + } + } + if (length_encoded) { + size_t n; + unpack_length(n, bref, alb, aub, octet_aligned); + s.resize(n); + } + if (octet_aligned) { + bref.align_bytes_zero(); + } + for (uint32_t i = 0; i < s.size(); ++i) { + HANDLE_CODE(bref.unpack(s[i], b)); + } + return SRSASN_SUCCESS; +} + +} // namespace asn_string_utils + /********************* ext group *********************/ @@ -992,7 +1337,7 @@ SRSASN_CODE ext_groups_packer_guard::pack(asn1::bit_ref& bref) const } } uint32_t nof_groups = (uint32_t)i + 1u; - HANDLE_CODE(pack_norm_small_integer(bref, nof_groups - 1)); + HANDLE_CODE(pack_norm_small_non_neg_whole_number(bref, nof_groups - 1)); // pack each group presence flag for (uint32_t j = 0; j < nof_groups; ++j) { @@ -1038,7 +1383,7 @@ SRSASN_CODE ext_groups_unpacker_guard::unpack(bit_ref& bref) { bref_tracker = &bref; // unpack nof of ext groups - HANDLE_CODE(unpack_norm_small_integer(nof_unpacked_groups, bref)); + HANDLE_CODE(unpack_norm_small_non_neg_whole_number(nof_unpacked_groups, bref)); nof_unpacked_groups += 1; resize(nof_unpacked_groups); @@ -1053,11 +1398,12 @@ SRSASN_CODE ext_groups_unpacker_guard::unpack(bit_ref& bref) Open Field *********************/ -varlength_field_pack_guard::varlength_field_pack_guard(bit_ref& bref) +varlength_field_pack_guard::varlength_field_pack_guard(bit_ref& bref, bool align_) { brefstart = bref; bref = bit_ref(&buffer[0], sizeof(buffer)); bref_tracker = &bref; + align = align_; } varlength_field_pack_guard::~varlength_field_pack_guard() @@ -1071,13 +1417,13 @@ varlength_field_pack_guard::~varlength_field_pack_guard() uint32_t nof_bytes = bref_tracker->distance(bref0) / (uint32_t)8; if (nof_bytes > sizeof(buffer)) { srsasn_log_print(LOG_LEVEL_ERROR, - "The packed variable sized field is too long for the reserved buffer (%d > %d)\n", + "The packed variable sized field is too long for the reserved buffer (%u > %zu)\n", nof_bytes, sizeof(buffer)); } // go back in time to pack length - pack_length(brefstart, nof_bytes); + pack_length(brefstart, nof_bytes, align); // pack encoded bytes for (uint32_t i = 0; i < nof_bytes; ++i) { @@ -1086,9 +1432,9 @@ varlength_field_pack_guard::~varlength_field_pack_guard() *bref_tracker = brefstart; } -varlength_field_unpack_guard::varlength_field_unpack_guard(bit_ref& bref) +varlength_field_unpack_guard::varlength_field_unpack_guard(bit_ref& bref, bool align) { - unpack_length(len, bref); + unpack_length(len, bref, align); bref0 = bref; bref_tracker = &bref; } diff --git a/lib/src/asn1/rrc_asn1.cc b/lib/src/asn1/rrc_asn1.cc index 113806c83..7eaa9f2d9 100644 --- a/lib/src/asn1/rrc_asn1.cc +++ b/lib/src/asn1/rrc_asn1.cc @@ -46,15 +46,15 @@ static void log_invalid_choice_id(uint32_t val, const char* choice_type) // PHICH-Config ::= SEQUENCE SRSASN_CODE phich_cfg_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, phich_dur)); - HANDLE_CODE(pack_enum(bref, phich_res)); + HANDLE_CODE(phich_dur.pack(bref)); + HANDLE_CODE(phich_res.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE phich_cfg_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(phich_dur, bref)); - HANDLE_CODE(unpack_enum(phich_res, bref)); + HANDLE_CODE(phich_dur.unpack(bref)); + HANDLE_CODE(phich_res.unpack(bref)); return SRSASN_SUCCESS; } @@ -69,10 +69,10 @@ void phich_cfg_s::to_json(json_writer& j) const // MasterInformationBlock ::= SEQUENCE SRSASN_CODE mib_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, dl_bw)); + HANDLE_CODE(dl_bw.pack(bref)); HANDLE_CODE(phich_cfg.pack(bref)); HANDLE_CODE(sys_frame_num.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, sched_info_sib1_br_r13, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, sched_info_sib1_br_r13, (uint8_t)0u, (uint8_t)31u)); HANDLE_CODE(bref.pack(sys_info_unchanged_br_r15, 1)); HANDLE_CODE(spare.pack(bref)); @@ -80,10 +80,10 @@ SRSASN_CODE mib_s::pack(bit_ref& bref) const } SRSASN_CODE mib_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(dl_bw, bref)); + HANDLE_CODE(dl_bw.unpack(bref)); HANDLE_CODE(phich_cfg.unpack(bref)); HANDLE_CODE(sys_frame_num.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(sched_info_sib1_br_r13, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(sched_info_sib1_br_r13, bref, (uint8_t)0u, (uint8_t)31u)); HANDLE_CODE(bref.unpack(sys_info_unchanged_br_r15, 1)); HANDLE_CODE(spare.unpack(bref)); @@ -134,18 +134,18 @@ void bcch_bch_msg_s::to_json(json_writer& j) const // MasterInformationBlock-MBMS-r14 ::= SEQUENCE SRSASN_CODE mib_mbms_r14_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, dl_bw_mbms_r14)); + HANDLE_CODE(dl_bw_mbms_r14.pack(bref)); HANDLE_CODE(sys_frame_num_r14.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, add_non_mbsfn_sfs_r14, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, add_non_mbsfn_sfs_r14, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(spare.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE mib_mbms_r14_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(dl_bw_mbms_r14, bref)); + HANDLE_CODE(dl_bw_mbms_r14.unpack(bref)); HANDLE_CODE(sys_frame_num_r14.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(add_non_mbsfn_sfs_r14, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(add_non_mbsfn_sfs_r14, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(spare.unpack(bref)); return SRSASN_SUCCESS; @@ -193,14 +193,14 @@ void bcch_bch_msg_mbms_s::to_json(json_writer& j) const SRSASN_CODE gnss_id_r15_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_enum(bref, gnss_id_r15)); + HANDLE_CODE(gnss_id_r15.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE gnss_id_r15_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_enum(gnss_id_r15, bref)); + HANDLE_CODE(gnss_id_r15.unpack(bref)); return SRSASN_SUCCESS; } @@ -215,14 +215,14 @@ void gnss_id_r15_s::to_json(json_writer& j) const SRSASN_CODE sbas_id_r15_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_enum(bref, sbas_id_r15)); + HANDLE_CODE(sbas_id_r15.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE sbas_id_r15_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_enum(sbas_id_r15, bref)); + HANDLE_CODE(sbas_id_r15.unpack(bref)); return SRSASN_SUCCESS; } @@ -239,9 +239,9 @@ SRSASN_CODE plmn_id_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(mcc_present, 1)); if (mcc_present) { - HANDLE_CODE(pack_fixed_seq_of(bref, &(mcc)[0], mcc.size(), UnalignedIntegerPacker(0, 9))); + HANDLE_CODE(pack_fixed_seq_of(bref, &(mcc)[0], mcc.size(), integer_packer(0, 9))); } - HANDLE_CODE(pack_dyn_seq_of(bref, mnc, 2, 3, UnalignedIntegerPacker(0, 9))); + HANDLE_CODE(pack_dyn_seq_of(bref, mnc, 2, 3, integer_packer(0, 9))); return SRSASN_SUCCESS; } @@ -250,9 +250,9 @@ SRSASN_CODE plmn_id_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(mcc_present, 1)); if (mcc_present) { - HANDLE_CODE(unpack_fixed_seq_of(&(mcc)[0], bref, mcc.size(), UnalignedIntegerPacker(0, 9))); + HANDLE_CODE(unpack_fixed_seq_of(&(mcc)[0], bref, mcc.size(), integer_packer(0, 9))); } - HANDLE_CODE(unpack_dyn_seq_of(mnc, bref, 2, 3, UnalignedIntegerPacker(0, 9))); + HANDLE_CODE(unpack_dyn_seq_of(mnc, bref, 2, 3, integer_packer(0, 9))); return SRSASN_SUCCESS; } @@ -288,7 +288,7 @@ SRSASN_CODE pos_sib_type_r15_s::pack(bit_ref& bref) const if (sbas_id_r15_present) { HANDLE_CODE(sbas_id_r15.pack(bref)); } - HANDLE_CODE(pack_enum(bref, pos_sib_type_r15)); + HANDLE_CODE(pos_sib_type_r15.pack(bref)); return SRSASN_SUCCESS; } @@ -305,7 +305,7 @@ SRSASN_CODE pos_sib_type_r15_s::unpack(bit_ref& bref) if (sbas_id_r15_present) { HANDLE_CODE(sbas_id_r15.unpack(bref)); } - HANDLE_CODE(unpack_enum(pos_sib_type_r15, bref)); + HANDLE_CODE(pos_sib_type_r15.unpack(bref)); return SRSASN_SUCCESS; } @@ -331,16 +331,16 @@ void pos_sib_type_r15_s::to_json(json_writer& j) const SRSASN_CODE plmn_id_info_r15_s::pack(bit_ref& bref) const { HANDLE_CODE(plmn_id_minus5_gc_r15.pack(bref)); - HANDLE_CODE(pack_enum(bref, cell_reserved_for_oper_r15)); - HANDLE_CODE(pack_enum(bref, cell_reserved_for_oper_crs_r15)); + HANDLE_CODE(cell_reserved_for_oper_r15.pack(bref)); + HANDLE_CODE(cell_reserved_for_oper_crs_r15.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE plmn_id_info_r15_s::unpack(bit_ref& bref) { HANDLE_CODE(plmn_id_minus5_gc_r15.unpack(bref)); - HANDLE_CODE(unpack_enum(cell_reserved_for_oper_r15, bref)); - HANDLE_CODE(unpack_enum(cell_reserved_for_oper_crs_r15, bref)); + HANDLE_CODE(cell_reserved_for_oper_r15.unpack(bref)); + HANDLE_CODE(cell_reserved_for_oper_crs_r15.unpack(bref)); return SRSASN_SUCCESS; } @@ -437,13 +437,13 @@ void plmn_id_info_r15_s::plmn_id_minus5_gc_r15_c_::to_json(json_writer& j) const } SRSASN_CODE plmn_id_info_r15_s::plmn_id_minus5_gc_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::plmn_id_r15: HANDLE_CODE(c.get().pack(bref)); break; case types::plmn_idx_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)1u, (uint8_t)6u)); break; default: log_invalid_choice_id(type_, "plmn_id_info_r15_s::plmn_id_minus5_gc_r15_c_"); @@ -454,14 +454,14 @@ SRSASN_CODE plmn_id_info_r15_s::plmn_id_minus5_gc_r15_c_::pack(bit_ref& bref) co SRSASN_CODE plmn_id_info_r15_s::plmn_id_minus5_gc_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::plmn_id_r15: HANDLE_CODE(c.get().unpack(bref)); break; case types::plmn_idx_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)1u, (uint8_t)6u)); break; default: log_invalid_choice_id(type_, "plmn_id_info_r15_s::plmn_id_minus5_gc_r15_c_"); @@ -551,13 +551,13 @@ void cell_id_minus5_gc_r15_c::to_json(json_writer& j) const } SRSASN_CODE cell_id_minus5_gc_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::cell_id_r15: HANDLE_CODE(c.get >().pack(bref)); break; case types::cell_id_idx_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)1u, (uint8_t)6u)); break; default: log_invalid_choice_id(type_, "cell_id_minus5_gc_r15_c"); @@ -568,14 +568,14 @@ SRSASN_CODE cell_id_minus5_gc_r15_c::pack(bit_ref& bref) const SRSASN_CODE cell_id_minus5_gc_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::cell_id_r15: HANDLE_CODE(c.get >().unpack(bref)); break; case types::cell_id_idx_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)1u, (uint8_t)6u)); break; default: log_invalid_choice_id(type_, "cell_id_minus5_gc_r15_c"); @@ -587,13 +587,13 @@ SRSASN_CODE cell_id_minus5_gc_r15_c::unpack(bit_ref& bref) // PLMN-IdentityInfo-v1530 ::= SEQUENCE SRSASN_CODE plmn_id_info_v1530_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, cell_reserved_for_oper_crs_r15)); + HANDLE_CODE(cell_reserved_for_oper_crs_r15.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE plmn_id_info_v1530_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(cell_reserved_for_oper_crs_r15, bref)); + HANDLE_CODE(cell_reserved_for_oper_crs_r15.unpack(bref)); return SRSASN_SUCCESS; } @@ -607,14 +607,14 @@ void plmn_id_info_v1530_s::to_json(json_writer& j) const // PosSchedulingInfo-r15 ::= SEQUENCE SRSASN_CODE pos_sched_info_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, pos_si_periodicity_r15)); + HANDLE_CODE(pos_si_periodicity_r15.pack(bref)); HANDLE_CODE(pack_dyn_seq_of(bref, pos_sib_map_info_r15, 1, 32)); return SRSASN_SUCCESS; } SRSASN_CODE pos_sched_info_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(pos_si_periodicity_r15, bref)); + HANDLE_CODE(pos_si_periodicity_r15.unpack(bref)); HANDLE_CODE(unpack_dyn_seq_of(pos_sib_map_info_r15, bref, 1, 32)); return SRSASN_SUCCESS; @@ -638,7 +638,7 @@ SRSASN_CODE cell_access_related_info_minus5_gc_r15_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, plmn_id_list_r15, 1, 6)); if (ran_area_code_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, ran_area_code_r15, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(pack_integer(bref, ran_area_code_r15, (uint16_t)0u, (uint16_t)255u)); } HANDLE_CODE(tac_minus5_gc_r15.pack(bref)); HANDLE_CODE(cell_id_minus5_gc_r15.pack(bref)); @@ -651,7 +651,7 @@ SRSASN_CODE cell_access_related_info_minus5_gc_r15_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(plmn_id_list_r15, bref, 1, 6)); if (ran_area_code_r15_present) { - HANDLE_CODE(unpack_unalign_integer(ran_area_code_r15, bref, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(unpack_integer(ran_area_code_r15, bref, (uint16_t)0u, (uint16_t)255u)); } HANDLE_CODE(tac_minus5_gc_r15.unpack(bref)); HANDLE_CODE(cell_id_minus5_gc_r15.unpack(bref)); @@ -678,13 +678,13 @@ void cell_access_related_info_minus5_gc_r15_s::to_json(json_writer& j) const // CellSelectionInfoCE-v1530 ::= SEQUENCE SRSASN_CODE cell_sel_info_ce_v1530_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, pwr_class14dbm_offset_r15)); + HANDLE_CODE(pwr_class14dbm_offset_r15.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE cell_sel_info_ce_v1530_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(pwr_class14dbm_offset_r15, bref)); + HANDLE_CODE(pwr_class14dbm_offset_r15.unpack(bref)); return SRSASN_SUCCESS; } @@ -698,15 +698,15 @@ void cell_sel_info_ce_v1530_s::to_json(json_writer& j) const // MCS-PSSCH-Range-r15 ::= SEQUENCE SRSASN_CODE mcs_pssch_range_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, min_mcs_pssch_r15, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, max_mcs_pssch_r15, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, min_mcs_pssch_r15, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, max_mcs_pssch_r15, (uint8_t)0u, (uint8_t)31u)); return SRSASN_SUCCESS; } SRSASN_CODE mcs_pssch_range_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(min_mcs_pssch_r15, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(max_mcs_pssch_r15, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(min_mcs_pssch_r15, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(max_mcs_pssch_r15, bref, (uint8_t)0u, (uint8_t)31u)); return SRSASN_SUCCESS; } @@ -722,14 +722,14 @@ void mcs_pssch_range_r15_s::to_json(json_writer& j) const SRSASN_CODE plmn_id_info_s::pack(bit_ref& bref) const { HANDLE_CODE(plmn_id.pack(bref)); - HANDLE_CODE(pack_enum(bref, cell_reserved_for_oper)); + HANDLE_CODE(cell_reserved_for_oper.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE plmn_id_info_s::unpack(bit_ref& bref) { HANDLE_CODE(plmn_id.unpack(bref)); - HANDLE_CODE(unpack_enum(cell_reserved_for_oper, bref)); + HANDLE_CODE(cell_reserved_for_oper.unpack(bref)); return SRSASN_SUCCESS; } @@ -763,12 +763,12 @@ void sl_tx_pwr_r14_c::to_json(json_writer& j) const } SRSASN_CODE sl_tx_pwr_r14_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::minusinfinity_r14: break; case types::tx_pwr_r14: - HANDLE_CODE(pack_unalign_integer(bref, c, (int8_t)-41, (int8_t)31)); + HANDLE_CODE(pack_integer(bref, c, (int8_t)-41, (int8_t)31)); break; default: log_invalid_choice_id(type_, "sl_tx_pwr_r14_c"); @@ -779,13 +779,13 @@ SRSASN_CODE sl_tx_pwr_r14_c::pack(bit_ref& bref) const SRSASN_CODE sl_tx_pwr_r14_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::minusinfinity_r14: break; case types::tx_pwr_r14: - HANDLE_CODE(unpack_unalign_integer(c, bref, (int8_t)-41, (int8_t)31)); + HANDLE_CODE(unpack_integer(c, bref, (int8_t)-41, (int8_t)31)); break; default: log_invalid_choice_id(type_, "sl_tx_pwr_r14_c"); @@ -797,15 +797,15 @@ SRSASN_CODE sl_tx_pwr_r14_c::unpack(bit_ref& bref) // SL-MinT2Value-r15 ::= SEQUENCE SRSASN_CODE sl_min_t2_value_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_dyn_seq_of(bref, prio_list_r15, 1, 8, UnalignedIntegerPacker(1, 8))); - HANDLE_CODE(pack_unalign_integer(bref, min_t2_value_r15, (uint8_t)10, (uint8_t)20)); + HANDLE_CODE(pack_dyn_seq_of(bref, prio_list_r15, 1, 8, integer_packer(1, 8))); + HANDLE_CODE(pack_integer(bref, min_t2_value_r15, (uint8_t)10u, (uint8_t)20u)); return SRSASN_SUCCESS; } SRSASN_CODE sl_min_t2_value_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_dyn_seq_of(prio_list_r15, bref, 1, 8, UnalignedIntegerPacker(1, 8))); - HANDLE_CODE(unpack_unalign_integer(min_t2_value_r15, bref, (uint8_t)10, (uint8_t)20)); + HANDLE_CODE(unpack_dyn_seq_of(prio_list_r15, bref, 1, 8, integer_packer(1, 8))); + HANDLE_CODE(unpack_integer(min_t2_value_r15, bref, (uint8_t)10u, (uint8_t)20u)); return SRSASN_SUCCESS; } @@ -824,19 +824,19 @@ void sl_min_t2_value_r15_s::to_json(json_writer& j) const // SL-PPPP-TxConfigIndex-r14 ::= SEQUENCE SRSASN_CODE sl_pppp_tx_cfg_idx_r14_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, prio_thres_r14, (uint8_t)1, (uint8_t)8)); - HANDLE_CODE(pack_unalign_integer(bref, default_tx_cfg_idx_r14, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(pack_unalign_integer(bref, cbr_cfg_idx_r14, (uint8_t)0, (uint8_t)3)); - HANDLE_CODE(pack_dyn_seq_of(bref, tx_cfg_idx_list_r14, 1, 16, UnalignedIntegerPacker(0, 63))); + HANDLE_CODE(pack_integer(bref, prio_thres_r14, (uint8_t)1u, (uint8_t)8u)); + HANDLE_CODE(pack_integer(bref, default_tx_cfg_idx_r14, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(pack_integer(bref, cbr_cfg_idx_r14, (uint8_t)0u, (uint8_t)3u)); + HANDLE_CODE(pack_dyn_seq_of(bref, tx_cfg_idx_list_r14, 1, 16, integer_packer(0, 63))); return SRSASN_SUCCESS; } SRSASN_CODE sl_pppp_tx_cfg_idx_r14_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(prio_thres_r14, bref, (uint8_t)1, (uint8_t)8)); - HANDLE_CODE(unpack_unalign_integer(default_tx_cfg_idx_r14, bref, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(unpack_unalign_integer(cbr_cfg_idx_r14, bref, (uint8_t)0, (uint8_t)3)); - HANDLE_CODE(unpack_dyn_seq_of(tx_cfg_idx_list_r14, bref, 1, 16, UnalignedIntegerPacker(0, 63))); + HANDLE_CODE(unpack_integer(prio_thres_r14, bref, (uint8_t)1u, (uint8_t)8u)); + HANDLE_CODE(unpack_integer(default_tx_cfg_idx_r14, bref, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(unpack_integer(cbr_cfg_idx_r14, bref, (uint8_t)0u, (uint8_t)3u)); + HANDLE_CODE(unpack_dyn_seq_of(tx_cfg_idx_list_r14, bref, 1, 16, integer_packer(0, 63))); return SRSASN_SUCCESS; } @@ -893,11 +893,11 @@ SRSASN_CODE sl_pssch_tx_params_r14_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(max_tx_pwr_r14_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, min_mcs_pssch_r14, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, max_mcs_pssch_r14, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, min_sub_ch_num_pssch_r14, (uint8_t)1, (uint8_t)20)); - HANDLE_CODE(pack_unalign_integer(bref, max_subch_num_pssch_r14, (uint8_t)1, (uint8_t)20)); - HANDLE_CODE(pack_enum(bref, allowed_retx_num_pssch_r14)); + HANDLE_CODE(pack_integer(bref, min_mcs_pssch_r14, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, max_mcs_pssch_r14, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, min_sub_ch_num_pssch_r14, (uint8_t)1u, (uint8_t)20u)); + HANDLE_CODE(pack_integer(bref, max_subch_num_pssch_r14, (uint8_t)1u, (uint8_t)20u)); + HANDLE_CODE(allowed_retx_num_pssch_r14.pack(bref)); if (max_tx_pwr_r14_present) { HANDLE_CODE(max_tx_pwr_r14.pack(bref)); } @@ -908,11 +908,11 @@ SRSASN_CODE sl_pssch_tx_params_r14_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(max_tx_pwr_r14_present, 1)); - HANDLE_CODE(unpack_unalign_integer(min_mcs_pssch_r14, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(max_mcs_pssch_r14, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(min_sub_ch_num_pssch_r14, bref, (uint8_t)1, (uint8_t)20)); - HANDLE_CODE(unpack_unalign_integer(max_subch_num_pssch_r14, bref, (uint8_t)1, (uint8_t)20)); - HANDLE_CODE(unpack_enum(allowed_retx_num_pssch_r14, bref)); + HANDLE_CODE(unpack_integer(min_mcs_pssch_r14, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(max_mcs_pssch_r14, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(min_sub_ch_num_pssch_r14, bref, (uint8_t)1u, (uint8_t)20u)); + HANDLE_CODE(unpack_integer(max_subch_num_pssch_r14, bref, (uint8_t)1u, (uint8_t)20u)); + HANDLE_CODE(allowed_retx_num_pssch_r14.unpack(bref)); if (max_tx_pwr_r14_present) { HANDLE_CODE(max_tx_pwr_r14.unpack(bref)); } @@ -937,15 +937,15 @@ void sl_pssch_tx_params_r14_s::to_json(json_writer& j) const // SL-PSSCH-TxParameters-v1530 ::= SEQUENCE SRSASN_CODE sl_pssch_tx_params_v1530_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, min_mcs_pssch_r15, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, max_mcs_pssch_r15, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, min_mcs_pssch_r15, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, max_mcs_pssch_r15, (uint8_t)0u, (uint8_t)31u)); return SRSASN_SUCCESS; } SRSASN_CODE sl_pssch_tx_params_v1530_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(min_mcs_pssch_r15, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(max_mcs_pssch_r15, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(min_mcs_pssch_r15, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(max_mcs_pssch_r15, bref, (uint8_t)0u, (uint8_t)31u)); return SRSASN_SUCCESS; } @@ -967,7 +967,7 @@ SRSASN_CODE sib_type1_v1530_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(pos_sched_info_list_r15_present, 1)); HANDLE_CODE(bref.pack(cell_access_related_info_minus5_gc_r15_present, 1)); HANDLE_CODE(bref.pack(ims_emergency_support5_gc_r15_present, 1)); - HANDLE_CODE(bref.pack(e_call_over_ims_support5_gc_r15_present, 1)); + HANDLE_CODE(bref.pack(ecall_over_ims_support5_gc_r15_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (cell_sel_info_ce_v1530_present) { @@ -976,7 +976,7 @@ SRSASN_CODE sib_type1_v1530_ies_s::pack(bit_ref& bref) const if (crs_intf_mitig_cfg_r15_present) { HANDLE_CODE(crs_intf_mitig_cfg_r15.pack(bref)); } - HANDLE_CODE(pack_enum(bref, cell_barred_crs_r15)); + HANDLE_CODE(cell_barred_crs_r15.pack(bref)); if (plmn_id_list_v1530_present) { HANDLE_CODE(pack_dyn_seq_of(bref, plmn_id_list_v1530, 1, 6)); } @@ -984,8 +984,8 @@ SRSASN_CODE sib_type1_v1530_ies_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, pos_sched_info_list_r15, 1, 32)); } if (cell_access_related_info_minus5_gc_r15_present) { - HANDLE_CODE(pack_enum(bref, cell_access_related_info_minus5_gc_r15.cell_barred_minus5_gc_r15)); - HANDLE_CODE(pack_enum(bref, cell_access_related_info_minus5_gc_r15.cell_barred_minus5_gc_crs_r15)); + HANDLE_CODE(cell_access_related_info_minus5_gc_r15.cell_barred_minus5_gc_r15.pack(bref)); + HANDLE_CODE(cell_access_related_info_minus5_gc_r15.cell_barred_minus5_gc_crs_r15.pack(bref)); HANDLE_CODE(pack_dyn_seq_of( bref, cell_access_related_info_minus5_gc_r15.cell_access_related_info_list_minus5_gc_r15, 1, 6)); } @@ -1001,7 +1001,7 @@ SRSASN_CODE sib_type1_v1530_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(pos_sched_info_list_r15_present, 1)); HANDLE_CODE(bref.unpack(cell_access_related_info_minus5_gc_r15_present, 1)); HANDLE_CODE(bref.unpack(ims_emergency_support5_gc_r15_present, 1)); - HANDLE_CODE(bref.unpack(e_call_over_ims_support5_gc_r15_present, 1)); + HANDLE_CODE(bref.unpack(ecall_over_ims_support5_gc_r15_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (cell_sel_info_ce_v1530_present) { @@ -1010,7 +1010,7 @@ SRSASN_CODE sib_type1_v1530_ies_s::unpack(bit_ref& bref) if (crs_intf_mitig_cfg_r15_present) { HANDLE_CODE(crs_intf_mitig_cfg_r15.unpack(bref)); } - HANDLE_CODE(unpack_enum(cell_barred_crs_r15, bref)); + HANDLE_CODE(cell_barred_crs_r15.unpack(bref)); if (plmn_id_list_v1530_present) { HANDLE_CODE(unpack_dyn_seq_of(plmn_id_list_v1530, bref, 1, 6)); } @@ -1018,8 +1018,8 @@ SRSASN_CODE sib_type1_v1530_ies_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(pos_sched_info_list_r15, bref, 1, 32)); } if (cell_access_related_info_minus5_gc_r15_present) { - HANDLE_CODE(unpack_enum(cell_access_related_info_minus5_gc_r15.cell_barred_minus5_gc_r15, bref)); - HANDLE_CODE(unpack_enum(cell_access_related_info_minus5_gc_r15.cell_barred_minus5_gc_crs_r15, bref)); + HANDLE_CODE(cell_access_related_info_minus5_gc_r15.cell_barred_minus5_gc_r15.unpack(bref)); + HANDLE_CODE(cell_access_related_info_minus5_gc_r15.cell_barred_minus5_gc_crs_r15.unpack(bref)); HANDLE_CODE(unpack_dyn_seq_of( cell_access_related_info_minus5_gc_r15.cell_access_related_info_list_minus5_gc_r15, bref, 1, 6)); } @@ -1073,7 +1073,7 @@ void sib_type1_v1530_ies_s::to_json(json_writer& j) const if (ims_emergency_support5_gc_r15_present) { j.write_str("ims-EmergencySupport5GC-r15", "true"); } - if (e_call_over_ims_support5_gc_r15_present) { + if (ecall_over_ims_support5_gc_r15_present) { j.write_str("eCallOverIMS-Support5GC-r15", "true"); } if (non_crit_ext_present) { @@ -1104,12 +1104,12 @@ void sib_type1_v1530_ies_s::crs_intf_mitig_cfg_r15_c_::to_json(json_writer& j) c } SRSASN_CODE sib_type1_v1530_ies_s::crs_intf_mitig_cfg_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::crs_intf_mitig_enabled_minus15: break; case types::crs_intf_mitig_num_prbs_r15: - HANDLE_CODE(pack_enum(bref, c)); + HANDLE_CODE(c.pack(bref)); break; default: log_invalid_choice_id(type_, "sib_type1_v1530_ies_s::crs_intf_mitig_cfg_r15_c_"); @@ -1120,13 +1120,13 @@ SRSASN_CODE sib_type1_v1530_ies_s::crs_intf_mitig_cfg_r15_c_::pack(bit_ref& bref SRSASN_CODE sib_type1_v1530_ies_s::crs_intf_mitig_cfg_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::crs_intf_mitig_enabled_minus15: break; case types::crs_intf_mitig_num_prbs_r15: - HANDLE_CODE(unpack_enum(c, bref)); + HANDLE_CODE(c.unpack(bref)); break; default: log_invalid_choice_id(type_, "sib_type1_v1530_ies_s::crs_intf_mitig_cfg_r15_c_"); @@ -1184,13 +1184,13 @@ void cell_access_related_info_r14_s::to_json(json_writer& j) const // CellSelectionInfoCE1-v1360 ::= SEQUENCE SRSASN_CODE cell_sel_info_ce1_v1360_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, delta_rx_lev_min_ce1_v1360, (int8_t)-8, (int8_t)-1)); + HANDLE_CODE(pack_integer(bref, delta_rx_lev_min_ce1_v1360, (int8_t)-8, (int8_t)-1)); return SRSASN_SUCCESS; } SRSASN_CODE cell_sel_info_ce1_v1360_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(delta_rx_lev_min_ce1_v1360, bref, (int8_t)-8, (int8_t)-1)); + HANDLE_CODE(unpack_integer(delta_rx_lev_min_ce1_v1360, bref, (int8_t)-8, (int8_t)-1)); return SRSASN_SUCCESS; } @@ -1207,7 +1207,7 @@ SRSASN_CODE ns_pmax_value_v10l0_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(add_spec_emission_v10l0_present, 1)); if (add_spec_emission_v10l0_present) { - HANDLE_CODE(pack_unalign_integer(bref, add_spec_emission_v10l0, (uint16_t)33, (uint16_t)288)); + HANDLE_CODE(pack_integer(bref, add_spec_emission_v10l0, (uint16_t)33u, (uint16_t)288u)); } return SRSASN_SUCCESS; @@ -1217,7 +1217,7 @@ SRSASN_CODE ns_pmax_value_v10l0_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(add_spec_emission_v10l0_present, 1)); if (add_spec_emission_v10l0_present) { - HANDLE_CODE(unpack_unalign_integer(add_spec_emission_v10l0, bref, (uint16_t)33, (uint16_t)288)); + HANDLE_CODE(unpack_integer(add_spec_emission_v10l0, bref, (uint16_t)33u, (uint16_t)288u)); } return SRSASN_SUCCESS; @@ -1292,13 +1292,13 @@ void sl_offset_ind_r12_c::to_json(json_writer& j) const } SRSASN_CODE sl_offset_ind_r12_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::small_r12: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)319u)); break; case types::large_r12: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)10239)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)10239u)); break; default: log_invalid_choice_id(type_, "sl_offset_ind_r12_c"); @@ -1309,14 +1309,14 @@ SRSASN_CODE sl_offset_ind_r12_c::pack(bit_ref& bref) const SRSASN_CODE sl_offset_ind_r12_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::small_r12: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)319u)); break; case types::large_r12: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)10239)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)10239u)); break; default: log_invalid_choice_id(type_, "sl_offset_ind_r12_c"); @@ -1359,9 +1359,9 @@ SRSASN_CODE sl_pssch_tx_cfg_r14_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(type_tx_sync_r14_present, 1)); if (type_tx_sync_r14_present) { - HANDLE_CODE(pack_enum(bref, type_tx_sync_r14)); + HANDLE_CODE(type_tx_sync_r14.pack(bref)); } - HANDLE_CODE(pack_enum(bref, thres_ue_speed_r14)); + HANDLE_CODE(thres_ue_speed_r14.pack(bref)); HANDLE_CODE(params_above_thres_r14.pack(bref)); HANDLE_CODE(params_below_thres_r14.pack(bref)); @@ -1372,7 +1372,7 @@ SRSASN_CODE sl_pssch_tx_cfg_r14_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(params_above_thres_v1530.is_present(), 1)); HANDLE_CODE(bref.pack(params_below_thres_v1530.is_present(), 1)); @@ -1392,9 +1392,9 @@ SRSASN_CODE sl_pssch_tx_cfg_r14_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(type_tx_sync_r14_present, 1)); if (type_tx_sync_r14_present) { - HANDLE_CODE(unpack_enum(type_tx_sync_r14, bref)); + HANDLE_CODE(type_tx_sync_r14.unpack(bref)); } - HANDLE_CODE(unpack_enum(thres_ue_speed_r14, bref)); + HANDLE_CODE(thres_ue_speed_r14.unpack(bref)); HANDLE_CODE(params_above_thres_r14.unpack(bref)); HANDLE_CODE(params_below_thres_r14.unpack(bref)); @@ -1403,7 +1403,7 @@ SRSASN_CODE sl_pssch_tx_cfg_r14_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool params_above_thres_v1530_present; HANDLE_CODE(bref.unpack(params_above_thres_v1530_present, 1)); @@ -1480,15 +1480,15 @@ void sl_sync_allowed_r14_s::to_json(json_writer& j) const // SL-TxParameters-r12 ::= SEQUENCE SRSASN_CODE sl_tx_params_r12_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, alpha_r12)); - HANDLE_CODE(pack_unalign_integer(bref, p0_r12, (int8_t)-126, (int8_t)31)); + HANDLE_CODE(alpha_r12.pack(bref)); + HANDLE_CODE(pack_integer(bref, p0_r12, (int8_t)-126, (int8_t)31)); return SRSASN_SUCCESS; } SRSASN_CODE sl_tx_params_r12_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(alpha_r12, bref)); - HANDLE_CODE(unpack_unalign_integer(p0_r12, bref, (int8_t)-126, (int8_t)31)); + HANDLE_CODE(alpha_r12.unpack(bref)); + HANDLE_CODE(unpack_integer(p0_r12, bref, (int8_t)-126, (int8_t)31)); return SRSASN_SUCCESS; } @@ -1660,7 +1660,7 @@ void sf_bitmap_sl_r12_c::to_json(json_writer& j) const } SRSASN_CODE sf_bitmap_sl_r12_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::bs4_r12: HANDLE_CODE(c.get >().pack(bref)); @@ -1692,7 +1692,7 @@ SRSASN_CODE sf_bitmap_sl_r12_c::pack(bit_ref& bref) const SRSASN_CODE sf_bitmap_sl_r12_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::bs4_r12: @@ -1898,7 +1898,7 @@ void sf_bitmap_sl_r14_c::to_json(json_writer& j) const } SRSASN_CODE sf_bitmap_sl_r14_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::bs10_r14: HANDLE_CODE(c.get >().pack(bref)); @@ -1933,7 +1933,7 @@ SRSASN_CODE sf_bitmap_sl_r14_c::pack(bit_ref& bref) const SRSASN_CODE sf_bitmap_sl_r14_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::bs10_r14: @@ -2013,15 +2013,15 @@ void sib_type1_v1450_ies_s::to_json(json_writer& j) const // TDD-Config ::= SEQUENCE SRSASN_CODE tdd_cfg_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, sf_assign)); - HANDLE_CODE(pack_enum(bref, special_sf_patterns)); + HANDLE_CODE(sf_assign.pack(bref)); + HANDLE_CODE(special_sf_patterns.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE tdd_cfg_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(sf_assign, bref)); - HANDLE_CODE(unpack_enum(special_sf_patterns, bref)); + HANDLE_CODE(sf_assign.unpack(bref)); + HANDLE_CODE(special_sf_patterns.unpack(bref)); return SRSASN_SUCCESS; } @@ -2086,9 +2086,9 @@ SRSASN_CODE ns_pmax_value_r10_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(add_pmax_r10_present, 1)); if (add_pmax_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, add_pmax_r10, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, add_pmax_r10, (int8_t)-30, (int8_t)33)); } - HANDLE_CODE(pack_unalign_integer(bref, add_spec_emission, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, add_spec_emission, (uint8_t)1u, (uint8_t)32u)); return SRSASN_SUCCESS; } @@ -2097,9 +2097,9 @@ SRSASN_CODE ns_pmax_value_r10_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(add_pmax_r10_present, 1)); if (add_pmax_r10_present) { - HANDLE_CODE(unpack_unalign_integer(add_pmax_r10, bref, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(unpack_integer(add_pmax_r10, bref, (int8_t)-30, (int8_t)33)); } - HANDLE_CODE(unpack_unalign_integer(add_spec_emission, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(add_spec_emission, bref, (uint8_t)1u, (uint8_t)32u)); return SRSASN_SUCCESS; } @@ -2134,30 +2134,30 @@ SRSASN_CODE sl_comm_res_pool_v2x_r14_s::pack(bit_ref& bref) const } HANDLE_CODE(sl_sf_r14.pack(bref)); HANDLE_CODE(bref.pack(adjacency_pscch_pssch_r14, 1)); - HANDLE_CODE(pack_enum(bref, size_subch_r14)); - HANDLE_CODE(pack_enum(bref, num_subch_r14)); - HANDLE_CODE(pack_unalign_integer(bref, start_rb_subch_r14, (uint8_t)0, (uint8_t)99)); + HANDLE_CODE(size_subch_r14.pack(bref)); + HANDLE_CODE(num_subch_r14.pack(bref)); + HANDLE_CODE(pack_integer(bref, start_rb_subch_r14, (uint8_t)0u, (uint8_t)99u)); if (start_rb_pscch_pool_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, start_rb_pscch_pool_r14, (uint8_t)0, (uint8_t)99)); + HANDLE_CODE(pack_integer(bref, start_rb_pscch_pool_r14, (uint8_t)0u, (uint8_t)99u)); } if (rx_params_ncell_r14_present) { HANDLE_CODE(bref.pack(rx_params_ncell_r14.tdd_cfg_r14_present, 1)); if (rx_params_ncell_r14.tdd_cfg_r14_present) { HANDLE_CODE(rx_params_ncell_r14.tdd_cfg_r14.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, rx_params_ncell_r14.sync_cfg_idx_r14, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, rx_params_ncell_r14.sync_cfg_idx_r14, (uint8_t)0u, (uint8_t)15u)); } if (data_tx_params_r14_present) { HANDLE_CODE(data_tx_params_r14.pack(bref)); } if (zone_id_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, zone_id_r14, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, zone_id_r14, (uint8_t)0u, (uint8_t)7u)); } if (thresh_s_rssi_cbr_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, thresh_s_rssi_cbr_r14, (uint8_t)0, (uint8_t)45)); + HANDLE_CODE(pack_integer(bref, thresh_s_rssi_cbr_r14, (uint8_t)0u, (uint8_t)45u)); } if (pool_report_id_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, pool_report_id_r14, (uint8_t)1, (uint8_t)72)); + HANDLE_CODE(pack_integer(bref, pool_report_id_r14, (uint8_t)1u, (uint8_t)72u)); } if (cbr_pssch_tx_cfg_list_r14_present) { HANDLE_CODE(pack_dyn_seq_of(bref, cbr_pssch_tx_cfg_list_r14, 1, 8)); @@ -2169,7 +2169,7 @@ SRSASN_CODE sl_comm_res_pool_v2x_r14_s::pack(bit_ref& bref) const HANDLE_CODE(sync_allowed_r14.pack(bref)); } if (restrict_res_reserv_period_r14_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, restrict_res_reserv_period_r14, 1, 16, EnumPacker())); + HANDLE_CODE(pack_dyn_seq_of(bref, restrict_res_reserv_period_r14, 1, 16)); } if (ext) { @@ -2179,7 +2179,7 @@ SRSASN_CODE sl_comm_res_pool_v2x_r14_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(sl_min_t2_value_list_r15.is_present(), 1)); HANDLE_CODE(bref.pack(cbr_pssch_tx_cfg_list_v1530.is_present(), 1)); @@ -2213,30 +2213,30 @@ SRSASN_CODE sl_comm_res_pool_v2x_r14_s::unpack(bit_ref& bref) } HANDLE_CODE(sl_sf_r14.unpack(bref)); HANDLE_CODE(bref.unpack(adjacency_pscch_pssch_r14, 1)); - HANDLE_CODE(unpack_enum(size_subch_r14, bref)); - HANDLE_CODE(unpack_enum(num_subch_r14, bref)); - HANDLE_CODE(unpack_unalign_integer(start_rb_subch_r14, bref, (uint8_t)0, (uint8_t)99)); + HANDLE_CODE(size_subch_r14.unpack(bref)); + HANDLE_CODE(num_subch_r14.unpack(bref)); + HANDLE_CODE(unpack_integer(start_rb_subch_r14, bref, (uint8_t)0u, (uint8_t)99u)); if (start_rb_pscch_pool_r14_present) { - HANDLE_CODE(unpack_unalign_integer(start_rb_pscch_pool_r14, bref, (uint8_t)0, (uint8_t)99)); + HANDLE_CODE(unpack_integer(start_rb_pscch_pool_r14, bref, (uint8_t)0u, (uint8_t)99u)); } if (rx_params_ncell_r14_present) { HANDLE_CODE(bref.unpack(rx_params_ncell_r14.tdd_cfg_r14_present, 1)); if (rx_params_ncell_r14.tdd_cfg_r14_present) { HANDLE_CODE(rx_params_ncell_r14.tdd_cfg_r14.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(rx_params_ncell_r14.sync_cfg_idx_r14, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(rx_params_ncell_r14.sync_cfg_idx_r14, bref, (uint8_t)0u, (uint8_t)15u)); } if (data_tx_params_r14_present) { HANDLE_CODE(data_tx_params_r14.unpack(bref)); } if (zone_id_r14_present) { - HANDLE_CODE(unpack_unalign_integer(zone_id_r14, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(zone_id_r14, bref, (uint8_t)0u, (uint8_t)7u)); } if (thresh_s_rssi_cbr_r14_present) { - HANDLE_CODE(unpack_unalign_integer(thresh_s_rssi_cbr_r14, bref, (uint8_t)0, (uint8_t)45)); + HANDLE_CODE(unpack_integer(thresh_s_rssi_cbr_r14, bref, (uint8_t)0u, (uint8_t)45u)); } if (pool_report_id_r14_present) { - HANDLE_CODE(unpack_unalign_integer(pool_report_id_r14, bref, (uint8_t)1, (uint8_t)72)); + HANDLE_CODE(unpack_integer(pool_report_id_r14, bref, (uint8_t)1u, (uint8_t)72u)); } if (cbr_pssch_tx_cfg_list_r14_present) { HANDLE_CODE(unpack_dyn_seq_of(cbr_pssch_tx_cfg_list_r14, bref, 1, 8)); @@ -2248,7 +2248,7 @@ SRSASN_CODE sl_comm_res_pool_v2x_r14_s::unpack(bit_ref& bref) HANDLE_CODE(sync_allowed_r14.unpack(bref)); } if (restrict_res_reserv_period_r14_present) { - HANDLE_CODE(unpack_dyn_seq_of(restrict_res_reserv_period_r14, bref, 1, 16, EnumPacker())); + HANDLE_CODE(unpack_dyn_seq_of(restrict_res_reserv_period_r14, bref, 1, 16)); } if (ext) { @@ -2256,7 +2256,7 @@ SRSASN_CODE sl_comm_res_pool_v2x_r14_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool sl_min_t2_value_list_r15_present; HANDLE_CODE(bref.unpack(sl_min_t2_value_list_r15_present, 1)); @@ -2357,15 +2357,15 @@ void sl_comm_res_pool_v2x_r14_s::to_json(json_writer& j) const // SL-PoolSelectionConfig-r12 ::= SEQUENCE SRSASN_CODE sl_pool_sel_cfg_r12_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, thresh_low_r12, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(pack_unalign_integer(bref, thresh_high_r12, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, thresh_low_r12, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(pack_integer(bref, thresh_high_r12, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } SRSASN_CODE sl_pool_sel_cfg_r12_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(thresh_low_r12, bref, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(unpack_unalign_integer(thresh_high_r12, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(thresh_low_r12, bref, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(unpack_integer(thresh_high_r12, bref, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } @@ -2386,21 +2386,21 @@ SRSASN_CODE sl_sync_cfg_nfreq_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(rx_params_r13_present, 1)); if (async_params_r13_present) { - HANDLE_CODE(pack_enum(bref, async_params_r13.sync_cp_len_r13)); - HANDLE_CODE(pack_unalign_integer(bref, async_params_r13.sync_offset_ind_r13, (uint8_t)0, (uint8_t)39)); - HANDLE_CODE(pack_unalign_integer(bref, async_params_r13.slssid_r13, (uint8_t)0, (uint8_t)167)); + HANDLE_CODE(async_params_r13.sync_cp_len_r13.pack(bref)); + HANDLE_CODE(pack_integer(bref, async_params_r13.sync_offset_ind_r13, (uint8_t)0u, (uint8_t)39u)); + HANDLE_CODE(pack_integer(bref, async_params_r13.slssid_r13, (uint8_t)0u, (uint8_t)167u)); } if (tx_params_r13_present) { HANDLE_CODE(bref.pack(tx_params_r13.sync_info_reserved_r13_present, 1)); HANDLE_CODE(bref.pack(tx_params_r13.sync_tx_periodic_r13_present, 1)); HANDLE_CODE(tx_params_r13.sync_tx_params_r13.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, tx_params_r13.sync_tx_thresh_ic_r13, (uint8_t)0, (uint8_t)13)); + HANDLE_CODE(pack_integer(bref, tx_params_r13.sync_tx_thresh_ic_r13, (uint8_t)0u, (uint8_t)13u)); if (tx_params_r13.sync_info_reserved_r13_present) { HANDLE_CODE(tx_params_r13.sync_info_reserved_r13.pack(bref)); } } if (rx_params_r13_present) { - HANDLE_CODE(pack_enum(bref, rx_params_r13.disc_sync_win_r13)); + HANDLE_CODE(rx_params_r13.disc_sync_win_r13.pack(bref)); } if (ext) { @@ -2413,28 +2413,28 @@ SRSASN_CODE sl_sync_cfg_nfreq_r13_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(sync_offset_ind_v1430_present, 1)); HANDLE_CODE(bref.pack(gnss_sync_r14_present, 1)); if (sync_offset_ind_v1430_present) { - HANDLE_CODE(pack_unalign_integer(bref, sync_offset_ind_v1430, (uint8_t)40, (uint8_t)159)); + HANDLE_CODE(pack_integer(bref, sync_offset_ind_v1430, (uint8_t)40u, (uint8_t)159u)); } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(sync_offset_ind2_r14_present, 1)); HANDLE_CODE(bref.pack(sync_offset_ind3_r14_present, 1)); if (sync_offset_ind2_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, sync_offset_ind2_r14, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(pack_integer(bref, sync_offset_ind2_r14, (uint8_t)0u, (uint8_t)159u)); } if (sync_offset_ind3_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, sync_offset_ind3_r14, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(pack_integer(bref, sync_offset_ind3_r14, (uint8_t)0u, (uint8_t)159u)); } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(slss_tx_disabled_r15_present, 1)); } @@ -2449,21 +2449,21 @@ SRSASN_CODE sl_sync_cfg_nfreq_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(rx_params_r13_present, 1)); if (async_params_r13_present) { - HANDLE_CODE(unpack_enum(async_params_r13.sync_cp_len_r13, bref)); - HANDLE_CODE(unpack_unalign_integer(async_params_r13.sync_offset_ind_r13, bref, (uint8_t)0, (uint8_t)39)); - HANDLE_CODE(unpack_unalign_integer(async_params_r13.slssid_r13, bref, (uint8_t)0, (uint8_t)167)); + HANDLE_CODE(async_params_r13.sync_cp_len_r13.unpack(bref)); + HANDLE_CODE(unpack_integer(async_params_r13.sync_offset_ind_r13, bref, (uint8_t)0u, (uint8_t)39u)); + HANDLE_CODE(unpack_integer(async_params_r13.slssid_r13, bref, (uint8_t)0u, (uint8_t)167u)); } if (tx_params_r13_present) { HANDLE_CODE(bref.unpack(tx_params_r13.sync_info_reserved_r13_present, 1)); HANDLE_CODE(bref.unpack(tx_params_r13.sync_tx_periodic_r13_present, 1)); HANDLE_CODE(tx_params_r13.sync_tx_params_r13.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(tx_params_r13.sync_tx_thresh_ic_r13, bref, (uint8_t)0, (uint8_t)13)); + HANDLE_CODE(unpack_integer(tx_params_r13.sync_tx_thresh_ic_r13, bref, (uint8_t)0u, (uint8_t)13u)); if (tx_params_r13.sync_info_reserved_r13_present) { HANDLE_CODE(tx_params_r13.sync_info_reserved_r13.unpack(bref)); } } if (rx_params_r13_present) { - HANDLE_CODE(unpack_enum(rx_params_r13.disc_sync_win_r13, bref)); + HANDLE_CODE(rx_params_r13.disc_sync_win_r13.unpack(bref)); } if (ext) { @@ -2471,28 +2471,28 @@ SRSASN_CODE sl_sync_cfg_nfreq_r13_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(sync_offset_ind_v1430_present, 1)); HANDLE_CODE(bref.unpack(gnss_sync_r14_present, 1)); if (sync_offset_ind_v1430_present) { - HANDLE_CODE(unpack_unalign_integer(sync_offset_ind_v1430, bref, (uint8_t)40, (uint8_t)159)); + HANDLE_CODE(unpack_integer(sync_offset_ind_v1430, bref, (uint8_t)40u, (uint8_t)159u)); } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(sync_offset_ind2_r14_present, 1)); HANDLE_CODE(bref.unpack(sync_offset_ind3_r14_present, 1)); if (sync_offset_ind2_r14_present) { - HANDLE_CODE(unpack_unalign_integer(sync_offset_ind2_r14, bref, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(unpack_integer(sync_offset_ind2_r14, bref, (uint8_t)0u, (uint8_t)159u)); } if (sync_offset_ind3_r14_present) { - HANDLE_CODE(unpack_unalign_integer(sync_offset_ind3_r14, bref, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(unpack_integer(sync_offset_ind3_r14, bref, (uint8_t)0u, (uint8_t)159u)); } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(slss_tx_disabled_r15_present, 1)); } @@ -2553,9 +2553,9 @@ void sl_sync_cfg_nfreq_r13_s::to_json(json_writer& j) const // SL-TF-ResourceConfig-r12 ::= SEQUENCE SRSASN_CODE sl_tf_res_cfg_r12_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, prb_num_r12, (uint8_t)1, (uint8_t)100)); - HANDLE_CODE(pack_unalign_integer(bref, prb_start_r12, (uint8_t)0, (uint8_t)99)); - HANDLE_CODE(pack_unalign_integer(bref, prb_end_r12, (uint8_t)0, (uint8_t)99)); + HANDLE_CODE(pack_integer(bref, prb_num_r12, (uint8_t)1u, (uint8_t)100u)); + HANDLE_CODE(pack_integer(bref, prb_start_r12, (uint8_t)0u, (uint8_t)99u)); + HANDLE_CODE(pack_integer(bref, prb_end_r12, (uint8_t)0u, (uint8_t)99u)); HANDLE_CODE(offset_ind_r12.pack(bref)); HANDLE_CODE(sf_bitmap_r12.pack(bref)); @@ -2563,9 +2563,9 @@ SRSASN_CODE sl_tf_res_cfg_r12_s::pack(bit_ref& bref) const } SRSASN_CODE sl_tf_res_cfg_r12_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(prb_num_r12, bref, (uint8_t)1, (uint8_t)100)); - HANDLE_CODE(unpack_unalign_integer(prb_start_r12, bref, (uint8_t)0, (uint8_t)99)); - HANDLE_CODE(unpack_unalign_integer(prb_end_r12, bref, (uint8_t)0, (uint8_t)99)); + HANDLE_CODE(unpack_integer(prb_num_r12, bref, (uint8_t)1u, (uint8_t)100u)); + HANDLE_CODE(unpack_integer(prb_start_r12, bref, (uint8_t)0u, (uint8_t)99u)); + HANDLE_CODE(unpack_integer(prb_end_r12, bref, (uint8_t)0u, (uint8_t)99u)); HANDLE_CODE(offset_ind_r12.unpack(bref)); HANDLE_CODE(sf_bitmap_r12.unpack(bref)); @@ -2587,7 +2587,7 @@ void sl_tf_res_cfg_r12_s::to_json(json_writer& j) const // SystemInformationBlockType1-v1430-IEs ::= SEQUENCE SRSASN_CODE sib_type1_v1430_ies_s::pack(bit_ref& bref) const { - HANDLE_CODE(bref.pack(e_call_over_ims_support_r14_present, 1)); + HANDLE_CODE(bref.pack(ecall_over_ims_support_r14_present, 1)); HANDLE_CODE(bref.pack(tdd_cfg_v1430_present, 1)); HANDLE_CODE(bref.pack(cell_access_related_info_list_r14_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); @@ -2606,7 +2606,7 @@ SRSASN_CODE sib_type1_v1430_ies_s::pack(bit_ref& bref) const } SRSASN_CODE sib_type1_v1430_ies_s::unpack(bit_ref& bref) { - HANDLE_CODE(bref.unpack(e_call_over_ims_support_r14_present, 1)); + HANDLE_CODE(bref.unpack(ecall_over_ims_support_r14_present, 1)); HANDLE_CODE(bref.unpack(tdd_cfg_v1430_present, 1)); HANDLE_CODE(bref.unpack(cell_access_related_info_list_r14_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); @@ -2626,7 +2626,7 @@ SRSASN_CODE sib_type1_v1430_ies_s::unpack(bit_ref& bref) void sib_type1_v1430_ies_s::to_json(json_writer& j) const { j.start_obj(); - if (e_call_over_ims_support_r14_present) { + if (ecall_over_ims_support_r14_present) { j.write_str("eCallOverIMS-Support-r14", "true"); } if (tdd_cfg_v1430_present) { @@ -2650,13 +2650,13 @@ void sib_type1_v1430_ies_s::to_json(json_writer& j) const // TDD-Config-v1130 ::= SEQUENCE SRSASN_CODE tdd_cfg_v1130_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, special_sf_patterns_v1130)); + HANDLE_CODE(special_sf_patterns_v1130.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE tdd_cfg_v1130_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(special_sf_patterns_v1130, bref)); + HANDLE_CODE(special_sf_patterns_v1130.unpack(bref)); return SRSASN_SUCCESS; } @@ -2673,12 +2673,12 @@ SRSASN_CODE band_class_info_cdma2000_s::pack(bit_ref& bref) const bref.pack(ext, 1); HANDLE_CODE(bref.pack(cell_resel_prio_present, 1)); - HANDLE_CODE(pack_enum(bref, band_class)); + HANDLE_CODE(band_class.pack(bref)); if (cell_resel_prio_present) { - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_prio, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, cell_resel_prio, (uint8_t)0u, (uint8_t)7u)); } - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_high, (uint8_t)0, (uint8_t)63)); - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_low, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(pack_integer(bref, thresh_x_high, (uint8_t)0u, (uint8_t)63u)); + HANDLE_CODE(pack_integer(bref, thresh_x_low, (uint8_t)0u, (uint8_t)63u)); return SRSASN_SUCCESS; } @@ -2687,12 +2687,12 @@ SRSASN_CODE band_class_info_cdma2000_s::unpack(bit_ref& bref) bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(cell_resel_prio_present, 1)); - HANDLE_CODE(unpack_enum(band_class, bref)); + HANDLE_CODE(band_class.unpack(bref)); if (cell_resel_prio_present) { - HANDLE_CODE(unpack_unalign_integer(cell_resel_prio, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(cell_resel_prio, bref, (uint8_t)0u, (uint8_t)7u)); } - HANDLE_CODE(unpack_unalign_integer(thresh_x_high, bref, (uint8_t)0, (uint8_t)63)); - HANDLE_CODE(unpack_unalign_integer(thresh_x_low, bref, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(unpack_integer(thresh_x_high, bref, (uint8_t)0u, (uint8_t)63u)); + HANDLE_CODE(unpack_integer(thresh_x_low, bref, (uint8_t)0u, (uint8_t)63u)); return SRSASN_SUCCESS; } @@ -2713,9 +2713,9 @@ SRSASN_CODE cell_sel_info_ce1_r13_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(q_qual_min_rsrq_ce1_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, q_rx_lev_min_ce1_r13, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(pack_integer(bref, q_rx_lev_min_ce1_r13, (int8_t)-70, (int8_t)-22)); if (q_qual_min_rsrq_ce1_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, q_qual_min_rsrq_ce1_r13, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(pack_integer(bref, q_qual_min_rsrq_ce1_r13, (int8_t)-34, (int8_t)-3)); } return SRSASN_SUCCESS; @@ -2724,9 +2724,9 @@ SRSASN_CODE cell_sel_info_ce1_r13_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(q_qual_min_rsrq_ce1_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(q_rx_lev_min_ce1_r13, bref, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(unpack_integer(q_rx_lev_min_ce1_r13, bref, (int8_t)-70, (int8_t)-22)); if (q_qual_min_rsrq_ce1_r13_present) { - HANDLE_CODE(unpack_unalign_integer(q_qual_min_rsrq_ce1_r13, bref, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(unpack_integer(q_qual_min_rsrq_ce1_r13, bref, (int8_t)-34, (int8_t)-3)); } return SRSASN_SUCCESS; @@ -2744,15 +2744,15 @@ void cell_sel_info_ce1_r13_s::to_json(json_writer& j) const // NeighCellsPerBandclassCDMA2000-r11 ::= SEQUENCE SRSASN_CODE neigh_cells_per_bandclass_cdma2000_r11_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, arfcn, (uint16_t)0, (uint16_t)2047)); - HANDLE_CODE(pack_dyn_seq_of(bref, pci_list_r11, 1, 40, UnalignedIntegerPacker(0, 511))); + HANDLE_CODE(pack_integer(bref, arfcn, (uint16_t)0u, (uint16_t)2047u)); + HANDLE_CODE(pack_dyn_seq_of(bref, pci_list_r11, 1, 40, integer_packer(0, 511))); return SRSASN_SUCCESS; } SRSASN_CODE neigh_cells_per_bandclass_cdma2000_r11_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(arfcn, bref, (uint16_t)0, (uint16_t)2047)); - HANDLE_CODE(unpack_dyn_seq_of(pci_list_r11, bref, 1, 40, UnalignedIntegerPacker(0, 511))); + HANDLE_CODE(unpack_integer(arfcn, bref, (uint16_t)0u, (uint16_t)2047u)); + HANDLE_CODE(unpack_dyn_seq_of(pci_list_r11, bref, 1, 40, integer_packer(0, 511))); return SRSASN_SUCCESS; } @@ -2777,17 +2777,17 @@ SRSASN_CODE sl_comm_tx_pool_sensing_cfg_r14_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, pssch_tx_cfg_list_r14, 1, 16)); HANDLE_CODE(pack_fixed_seq_of( - bref, &(thres_pssch_rsrp_list_r14)[0], thres_pssch_rsrp_list_r14.size(), UnalignedIntegerPacker(0, 66))); + bref, &(thres_pssch_rsrp_list_r14)[0], thres_pssch_rsrp_list_r14.size(), integer_packer(0, 66))); if (restrict_res_reserv_period_r14_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, restrict_res_reserv_period_r14, 1, 16, EnumPacker())); + HANDLE_CODE(pack_dyn_seq_of(bref, restrict_res_reserv_period_r14, 1, 16)); } - HANDLE_CODE(pack_enum(bref, prob_res_keep_r14)); + HANDLE_CODE(prob_res_keep_r14.pack(bref)); if (p2x_sensing_cfg_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, p2x_sensing_cfg_r14.min_num_candidate_sf_r14, (uint8_t)1, (uint8_t)13)); + HANDLE_CODE(pack_integer(bref, p2x_sensing_cfg_r14.min_num_candidate_sf_r14, (uint8_t)1u, (uint8_t)13u)); HANDLE_CODE(p2x_sensing_cfg_r14.gap_candidate_sensing_r14.pack(bref)); } if (sl_reselect_after_r14_present) { - HANDLE_CODE(pack_enum(bref, sl_reselect_after_r14)); + HANDLE_CODE(sl_reselect_after_r14.pack(bref)); } return SRSASN_SUCCESS; @@ -2800,17 +2800,17 @@ SRSASN_CODE sl_comm_tx_pool_sensing_cfg_r14_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(pssch_tx_cfg_list_r14, bref, 1, 16)); HANDLE_CODE(unpack_fixed_seq_of( - &(thres_pssch_rsrp_list_r14)[0], bref, thres_pssch_rsrp_list_r14.size(), UnalignedIntegerPacker(0, 66))); + &(thres_pssch_rsrp_list_r14)[0], bref, thres_pssch_rsrp_list_r14.size(), integer_packer(0, 66))); if (restrict_res_reserv_period_r14_present) { - HANDLE_CODE(unpack_dyn_seq_of(restrict_res_reserv_period_r14, bref, 1, 16, EnumPacker())); + HANDLE_CODE(unpack_dyn_seq_of(restrict_res_reserv_period_r14, bref, 1, 16)); } - HANDLE_CODE(unpack_enum(prob_res_keep_r14, bref)); + HANDLE_CODE(prob_res_keep_r14.unpack(bref)); if (p2x_sensing_cfg_r14_present) { - HANDLE_CODE(unpack_unalign_integer(p2x_sensing_cfg_r14.min_num_candidate_sf_r14, bref, (uint8_t)1, (uint8_t)13)); + HANDLE_CODE(unpack_integer(p2x_sensing_cfg_r14.min_num_candidate_sf_r14, bref, (uint8_t)1u, (uint8_t)13u)); HANDLE_CODE(p2x_sensing_cfg_r14.gap_candidate_sensing_r14.unpack(bref)); } if (sl_reselect_after_r14_present) { - HANDLE_CODE(unpack_enum(sl_reselect_after_r14, bref)); + HANDLE_CODE(sl_reselect_after_r14.unpack(bref)); } return SRSASN_SUCCESS; @@ -2856,17 +2856,17 @@ SRSASN_CODE sl_disc_res_pool_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(tx_params_r12_present, 1)); HANDLE_CODE(bref.pack(rx_params_r12_present, 1)); - HANDLE_CODE(pack_enum(bref, cp_len_r12)); - HANDLE_CODE(pack_enum(bref, disc_period_r12)); - HANDLE_CODE(pack_unalign_integer(bref, num_retx_r12, (uint8_t)0, (uint8_t)3)); - HANDLE_CODE(pack_unalign_integer(bref, num_repeat_r12, (uint8_t)1, (uint8_t)50)); + HANDLE_CODE(cp_len_r12.pack(bref)); + HANDLE_CODE(disc_period_r12.pack(bref)); + HANDLE_CODE(pack_integer(bref, num_retx_r12, (uint8_t)0u, (uint8_t)3u)); + HANDLE_CODE(pack_integer(bref, num_repeat_r12, (uint8_t)1u, (uint8_t)50u)); HANDLE_CODE(tf_res_cfg_r12.pack(bref)); if (tx_params_r12_present) { HANDLE_CODE(bref.pack(tx_params_r12.ue_sel_res_cfg_r12_present, 1)); HANDLE_CODE(tx_params_r12.tx_params_general_r12.pack(bref)); if (tx_params_r12.ue_sel_res_cfg_r12_present) { HANDLE_CODE(tx_params_r12.ue_sel_res_cfg_r12.pool_sel_r12.pack(bref)); - HANDLE_CODE(pack_enum(bref, tx_params_r12.ue_sel_res_cfg_r12.tx_probability_r12)); + HANDLE_CODE(tx_params_r12.ue_sel_res_cfg_r12.tx_probability_r12.pack(bref)); } } if (rx_params_r12_present) { @@ -2874,7 +2874,7 @@ SRSASN_CODE sl_disc_res_pool_r12_s::pack(bit_ref& bref) const if (rx_params_r12.tdd_cfg_r12_present) { HANDLE_CODE(rx_params_r12.tdd_cfg_r12.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, rx_params_r12.sync_cfg_idx_r12, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, rx_params_r12.sync_cfg_idx_r12, (uint8_t)0u, (uint8_t)15u)); } if (ext) { @@ -2886,7 +2886,7 @@ SRSASN_CODE sl_disc_res_pool_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(disc_period_v1310.is_present(), 1)); HANDLE_CODE(bref.pack(rx_params_add_neigh_freq_r13.is_present(), 1)); @@ -2902,7 +2902,7 @@ SRSASN_CODE sl_disc_res_pool_r12_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(tx_params_add_neigh_freq_v1370.is_present(), 1)); if (tx_params_add_neigh_freq_v1370.is_present()) { @@ -2918,17 +2918,17 @@ SRSASN_CODE sl_disc_res_pool_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(tx_params_r12_present, 1)); HANDLE_CODE(bref.unpack(rx_params_r12_present, 1)); - HANDLE_CODE(unpack_enum(cp_len_r12, bref)); - HANDLE_CODE(unpack_enum(disc_period_r12, bref)); - HANDLE_CODE(unpack_unalign_integer(num_retx_r12, bref, (uint8_t)0, (uint8_t)3)); - HANDLE_CODE(unpack_unalign_integer(num_repeat_r12, bref, (uint8_t)1, (uint8_t)50)); + HANDLE_CODE(cp_len_r12.unpack(bref)); + HANDLE_CODE(disc_period_r12.unpack(bref)); + HANDLE_CODE(unpack_integer(num_retx_r12, bref, (uint8_t)0u, (uint8_t)3u)); + HANDLE_CODE(unpack_integer(num_repeat_r12, bref, (uint8_t)1u, (uint8_t)50u)); HANDLE_CODE(tf_res_cfg_r12.unpack(bref)); if (tx_params_r12_present) { HANDLE_CODE(bref.unpack(tx_params_r12.ue_sel_res_cfg_r12_present, 1)); HANDLE_CODE(tx_params_r12.tx_params_general_r12.unpack(bref)); if (tx_params_r12.ue_sel_res_cfg_r12_present) { HANDLE_CODE(tx_params_r12.ue_sel_res_cfg_r12.pool_sel_r12.unpack(bref)); - HANDLE_CODE(unpack_enum(tx_params_r12.ue_sel_res_cfg_r12.tx_probability_r12, bref)); + HANDLE_CODE(tx_params_r12.ue_sel_res_cfg_r12.tx_probability_r12.unpack(bref)); } } if (rx_params_r12_present) { @@ -2936,7 +2936,7 @@ SRSASN_CODE sl_disc_res_pool_r12_s::unpack(bit_ref& bref) if (rx_params_r12.tdd_cfg_r12_present) { HANDLE_CODE(rx_params_r12.tdd_cfg_r12.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(rx_params_r12.sync_cfg_idx_r12, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(rx_params_r12.sync_cfg_idx_r12, bref, (uint8_t)0u, (uint8_t)15u)); } if (ext) { @@ -2944,7 +2944,7 @@ SRSASN_CODE sl_disc_res_pool_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool disc_period_v1310_present; HANDLE_CODE(bref.unpack(disc_period_v1310_present, 1)); @@ -2966,7 +2966,7 @@ SRSASN_CODE sl_disc_res_pool_r12_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool tx_params_add_neigh_freq_v1370_present; HANDLE_CODE(bref.unpack(tx_params_add_neigh_freq_v1370_present, 1)); @@ -3054,7 +3054,7 @@ void sl_disc_res_pool_r12_s::tx_params_r12_s_::ue_sel_res_cfg_r12_s_::pool_sel_r } SRSASN_CODE sl_disc_res_pool_r12_s::tx_params_r12_s_::ue_sel_res_cfg_r12_s_::pool_sel_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rsrp_based_r12: HANDLE_CODE(c.pack(bref)); @@ -3070,7 +3070,7 @@ SRSASN_CODE sl_disc_res_pool_r12_s::tx_params_r12_s_::ue_sel_res_cfg_r12_s_::poo SRSASN_CODE sl_disc_res_pool_r12_s::tx_params_r12_s_::ue_sel_res_cfg_r12_s_::pool_sel_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rsrp_based_r12: @@ -3105,12 +3105,12 @@ void sl_disc_res_pool_r12_s::disc_period_v1310_c_::to_json(json_writer& j) const } SRSASN_CODE sl_disc_res_pool_r12_s::disc_period_v1310_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c)); + HANDLE_CODE(c.pack(bref)); break; default: log_invalid_choice_id(type_, "sl_disc_res_pool_r12_s::disc_period_v1310_c_"); @@ -3121,13 +3121,13 @@ SRSASN_CODE sl_disc_res_pool_r12_s::disc_period_v1310_c_::pack(bit_ref& bref) co SRSASN_CODE sl_disc_res_pool_r12_s::disc_period_v1310_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c, bref)); + HANDLE_CODE(c.unpack(bref)); break; default: log_invalid_choice_id(type_, "sl_disc_res_pool_r12_s::disc_period_v1310_c_"); @@ -3163,12 +3163,12 @@ void sl_disc_res_pool_r12_s::rx_params_add_neigh_freq_r13_c_::to_json(json_write } SRSASN_CODE sl_disc_res_pool_r12_s::rx_params_add_neigh_freq_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_dyn_seq_of(bref, c.pci_r13, 1, 16, UnalignedIntegerPacker(0, 503))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.pci_r13, 1, 16, integer_packer(0, 503))); break; default: log_invalid_choice_id(type_, "sl_disc_res_pool_r12_s::rx_params_add_neigh_freq_r13_c_"); @@ -3179,13 +3179,13 @@ SRSASN_CODE sl_disc_res_pool_r12_s::rx_params_add_neigh_freq_r13_c_::pack(bit_re SRSASN_CODE sl_disc_res_pool_r12_s::rx_params_add_neigh_freq_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_dyn_seq_of(c.pci_r13, bref, 1, 16, UnalignedIntegerPacker(0, 503))); + HANDLE_CODE(unpack_dyn_seq_of(c.pci_r13, bref, 1, 16, integer_packer(0, 503))); break; default: log_invalid_choice_id(type_, "sl_disc_res_pool_r12_s::rx_params_add_neigh_freq_r13_c_"); @@ -3246,7 +3246,7 @@ void sl_disc_res_pool_r12_s::tx_params_add_neigh_freq_r13_c_::to_json(json_write } SRSASN_CODE sl_disc_res_pool_r12_s::tx_params_add_neigh_freq_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -3255,9 +3255,9 @@ SRSASN_CODE sl_disc_res_pool_r12_s::tx_params_add_neigh_freq_r13_c_::pack(bit_re HANDLE_CODE(bref.pack(c.tdd_cfg_r13_present, 1)); HANDLE_CODE(bref.pack(c.tdd_cfg_v1130_present, 1)); HANDLE_CODE(bref.pack(c.sync_cfg_idx_r13_present, 1)); - HANDLE_CODE(pack_dyn_seq_of(bref, c.pci_r13, 1, 16, UnalignedIntegerPacker(0, 503))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.pci_r13, 1, 16, integer_packer(0, 503))); if (c.p_max_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.p_max, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, c.p_max, (int8_t)-30, (int8_t)33)); } if (c.tdd_cfg_r13_present) { HANDLE_CODE(c.tdd_cfg_r13.pack(bref)); @@ -3268,15 +3268,15 @@ SRSASN_CODE sl_disc_res_pool_r12_s::tx_params_add_neigh_freq_r13_c_::pack(bit_re HANDLE_CODE(bref.pack(c.freq_info.ul_carrier_freq_present, 1)); HANDLE_CODE(bref.pack(c.freq_info.ul_bw_present, 1)); if (c.freq_info.ul_carrier_freq_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.freq_info.ul_carrier_freq, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, c.freq_info.ul_carrier_freq, (uint32_t)0u, (uint32_t)65535u)); } if (c.freq_info.ul_bw_present) { - HANDLE_CODE(pack_enum(bref, c.freq_info.ul_bw)); + HANDLE_CODE(c.freq_info.ul_bw.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, c.freq_info.add_spec_emission, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(pack_unalign_integer(bref, c.ref_sig_pwr, (int8_t)-60, (int8_t)50)); + HANDLE_CODE(pack_integer(bref, c.freq_info.add_spec_emission, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(pack_integer(bref, c.ref_sig_pwr, (int8_t)-60, (int8_t)50)); if (c.sync_cfg_idx_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.sync_cfg_idx_r13, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, c.sync_cfg_idx_r13, (uint8_t)0u, (uint8_t)15u)); } break; default: @@ -3288,7 +3288,7 @@ SRSASN_CODE sl_disc_res_pool_r12_s::tx_params_add_neigh_freq_r13_c_::pack(bit_re SRSASN_CODE sl_disc_res_pool_r12_s::tx_params_add_neigh_freq_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -3298,9 +3298,9 @@ SRSASN_CODE sl_disc_res_pool_r12_s::tx_params_add_neigh_freq_r13_c_::unpack(bit_ HANDLE_CODE(bref.unpack(c.tdd_cfg_r13_present, 1)); HANDLE_CODE(bref.unpack(c.tdd_cfg_v1130_present, 1)); HANDLE_CODE(bref.unpack(c.sync_cfg_idx_r13_present, 1)); - HANDLE_CODE(unpack_dyn_seq_of(c.pci_r13, bref, 1, 16, UnalignedIntegerPacker(0, 503))); + HANDLE_CODE(unpack_dyn_seq_of(c.pci_r13, bref, 1, 16, integer_packer(0, 503))); if (c.p_max_present) { - HANDLE_CODE(unpack_unalign_integer(c.p_max, bref, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(unpack_integer(c.p_max, bref, (int8_t)-30, (int8_t)33)); } if (c.tdd_cfg_r13_present) { HANDLE_CODE(c.tdd_cfg_r13.unpack(bref)); @@ -3311,15 +3311,15 @@ SRSASN_CODE sl_disc_res_pool_r12_s::tx_params_add_neigh_freq_r13_c_::unpack(bit_ HANDLE_CODE(bref.unpack(c.freq_info.ul_carrier_freq_present, 1)); HANDLE_CODE(bref.unpack(c.freq_info.ul_bw_present, 1)); if (c.freq_info.ul_carrier_freq_present) { - HANDLE_CODE(unpack_unalign_integer(c.freq_info.ul_carrier_freq, bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(c.freq_info.ul_carrier_freq, bref, (uint32_t)0u, (uint32_t)65535u)); } if (c.freq_info.ul_bw_present) { - HANDLE_CODE(unpack_enum(c.freq_info.ul_bw, bref)); + HANDLE_CODE(c.freq_info.ul_bw.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(c.freq_info.add_spec_emission, bref, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(unpack_unalign_integer(c.ref_sig_pwr, bref, (int8_t)-60, (int8_t)50)); + HANDLE_CODE(unpack_integer(c.freq_info.add_spec_emission, bref, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(unpack_integer(c.ref_sig_pwr, bref, (int8_t)-60, (int8_t)50)); if (c.sync_cfg_idx_r13_present) { - HANDLE_CODE(unpack_unalign_integer(c.sync_cfg_idx_r13, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(c.sync_cfg_idx_r13, bref, (uint8_t)0u, (uint8_t)15u)); } break; default: @@ -3355,12 +3355,12 @@ void sl_disc_res_pool_r12_s::tx_params_add_neigh_freq_v1370_c_::to_json(json_wri } SRSASN_CODE sl_disc_res_pool_r12_s::tx_params_add_neigh_freq_v1370_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c.freq_info_v1370.add_spec_emission_v1370, (uint16_t)33, (uint16_t)288)); + HANDLE_CODE(pack_integer(bref, c.freq_info_v1370.add_spec_emission_v1370, (uint16_t)33u, (uint16_t)288u)); break; default: log_invalid_choice_id(type_, "sl_disc_res_pool_r12_s::tx_params_add_neigh_freq_v1370_c_"); @@ -3371,13 +3371,13 @@ SRSASN_CODE sl_disc_res_pool_r12_s::tx_params_add_neigh_freq_v1370_c_::pack(bit_ SRSASN_CODE sl_disc_res_pool_r12_s::tx_params_add_neigh_freq_v1370_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c.freq_info_v1370.add_spec_emission_v1370, bref, (uint16_t)33, (uint16_t)288)); + HANDLE_CODE(unpack_integer(c.freq_info_v1370.add_spec_emission_v1370, bref, (uint16_t)33u, (uint16_t)288u)); break; default: log_invalid_choice_id(type_, "sl_disc_res_pool_r12_s::tx_params_add_neigh_freq_v1370_c_"); @@ -3389,19 +3389,19 @@ SRSASN_CODE sl_disc_res_pool_r12_s::tx_params_add_neigh_freq_v1370_c_::unpack(bi // SL-ZoneConfig-r14 ::= SEQUENCE SRSASN_CODE sl_zone_cfg_r14_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, zone_len_r14)); - HANDLE_CODE(pack_enum(bref, zone_width_r14)); - HANDLE_CODE(pack_unalign_integer(bref, zone_id_longi_mod_r14, (uint8_t)1, (uint8_t)4)); - HANDLE_CODE(pack_unalign_integer(bref, zone_id_lati_mod_r14, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(zone_len_r14.pack(bref)); + HANDLE_CODE(zone_width_r14.pack(bref)); + HANDLE_CODE(pack_integer(bref, zone_id_longi_mod_r14, (uint8_t)1u, (uint8_t)4u)); + HANDLE_CODE(pack_integer(bref, zone_id_lati_mod_r14, (uint8_t)1u, (uint8_t)4u)); return SRSASN_SUCCESS; } SRSASN_CODE sl_zone_cfg_r14_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(zone_len_r14, bref)); - HANDLE_CODE(unpack_enum(zone_width_r14, bref)); - HANDLE_CODE(unpack_unalign_integer(zone_id_longi_mod_r14, bref, (uint8_t)1, (uint8_t)4)); - HANDLE_CODE(unpack_unalign_integer(zone_id_lati_mod_r14, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(zone_len_r14.unpack(bref)); + HANDLE_CODE(zone_width_r14.unpack(bref)); + HANDLE_CODE(unpack_integer(zone_id_longi_mod_r14, bref, (uint8_t)1u, (uint8_t)4u)); + HANDLE_CODE(unpack_integer(zone_id_lati_mod_r14, bref, (uint8_t)1u, (uint8_t)4u)); return SRSASN_SUCCESS; } @@ -3517,7 +3517,7 @@ SRSASN_CODE multi_band_info_v9e0_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(freq_band_ind_v9e0_present, 1)); if (freq_band_ind_v9e0_present) { - HANDLE_CODE(pack_unalign_integer(bref, freq_band_ind_v9e0, (uint16_t)65, (uint16_t)256)); + HANDLE_CODE(pack_integer(bref, freq_band_ind_v9e0, (uint16_t)65u, (uint16_t)256u)); } return SRSASN_SUCCESS; @@ -3527,7 +3527,7 @@ SRSASN_CODE multi_band_info_v9e0_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(freq_band_ind_v9e0_present, 1)); if (freq_band_ind_v9e0_present) { - HANDLE_CODE(unpack_unalign_integer(freq_band_ind_v9e0, bref, (uint16_t)65, (uint16_t)256)); + HANDLE_CODE(unpack_integer(freq_band_ind_v9e0, bref, (uint16_t)65u, (uint16_t)256u)); } return SRSASN_SUCCESS; @@ -3544,14 +3544,14 @@ void multi_band_info_v9e0_s::to_json(json_writer& j) const // NeighCellCDMA2000-r11 ::= SEQUENCE SRSASN_CODE neigh_cell_cdma2000_r11_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, band_class)); + HANDLE_CODE(band_class.pack(bref)); HANDLE_CODE(pack_dyn_seq_of(bref, neigh_freq_info_list_r11, 1, 16)); return SRSASN_SUCCESS; } SRSASN_CODE neigh_cell_cdma2000_r11_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(band_class, bref)); + HANDLE_CODE(band_class.unpack(bref)); HANDLE_CODE(unpack_dyn_seq_of(neigh_freq_info_list_r11, bref, 1, 16)); return SRSASN_SUCCESS; @@ -3571,15 +3571,15 @@ void neigh_cell_cdma2000_r11_s::to_json(json_writer& j) const // NeighCellsPerBandclassCDMA2000 ::= SEQUENCE SRSASN_CODE neigh_cells_per_bandclass_cdma2000_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, arfcn, (uint16_t)0, (uint16_t)2047)); - HANDLE_CODE(pack_dyn_seq_of(bref, pci_list, 1, 16, UnalignedIntegerPacker(0, 511))); + HANDLE_CODE(pack_integer(bref, arfcn, (uint16_t)0u, (uint16_t)2047u)); + HANDLE_CODE(pack_dyn_seq_of(bref, pci_list, 1, 16, integer_packer(0, 511))); return SRSASN_SUCCESS; } SRSASN_CODE neigh_cells_per_bandclass_cdma2000_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(arfcn, bref, (uint16_t)0, (uint16_t)2047)); - HANDLE_CODE(unpack_dyn_seq_of(pci_list, bref, 1, 16, UnalignedIntegerPacker(0, 511))); + HANDLE_CODE(unpack_integer(arfcn, bref, (uint16_t)0u, (uint16_t)2047u)); + HANDLE_CODE(unpack_dyn_seq_of(pci_list, bref, 1, 16, integer_packer(0, 511))); return SRSASN_SUCCESS; } @@ -3598,13 +3598,13 @@ void neigh_cells_per_bandclass_cdma2000_s::to_json(json_writer& j) const // NeighCellsPerBandclassCDMA2000-v920 ::= SEQUENCE SRSASN_CODE neigh_cells_per_bandclass_cdma2000_v920_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_dyn_seq_of(bref, pci_list_v920, 0, 24, UnalignedIntegerPacker(0, 511))); + HANDLE_CODE(pack_dyn_seq_of(bref, pci_list_v920, 0, 24, integer_packer(0, 511))); return SRSASN_SUCCESS; } SRSASN_CODE neigh_cells_per_bandclass_cdma2000_v920_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_dyn_seq_of(pci_list_v920, bref, 0, 24, UnalignedIntegerPacker(0, 511))); + HANDLE_CODE(unpack_dyn_seq_of(pci_list_v920, bref, 0, 24, integer_packer(0, 511))); return SRSASN_SUCCESS; } @@ -3624,9 +3624,9 @@ SRSASN_CODE pci_range_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(range_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, start, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(pack_integer(bref, start, (uint16_t)0u, (uint16_t)503u)); if (range_present) { - HANDLE_CODE(pack_enum(bref, range)); + HANDLE_CODE(range.pack(bref)); } return SRSASN_SUCCESS; @@ -3635,9 +3635,9 @@ SRSASN_CODE pci_range_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(range_present, 1)); - HANDLE_CODE(unpack_unalign_integer(start, bref, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(unpack_integer(start, bref, (uint16_t)0u, (uint16_t)503u)); if (range_present) { - HANDLE_CODE(unpack_enum(range, bref)); + HANDLE_CODE(range.unpack(bref)); } return SRSASN_SUCCESS; @@ -3655,15 +3655,15 @@ void pci_range_s::to_json(json_writer& j) const // RedistributionNeighCell-r13 ::= SEQUENCE SRSASN_CODE redist_neigh_cell_r13_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, pci_r13, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_unalign_integer(bref, redist_factor_cell_r13, (uint8_t)1, (uint8_t)10)); + HANDLE_CODE(pack_integer(bref, pci_r13, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(pack_integer(bref, redist_factor_cell_r13, (uint8_t)1u, (uint8_t)10u)); return SRSASN_SUCCESS; } SRSASN_CODE redist_neigh_cell_r13_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(pci_r13, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_unalign_integer(redist_factor_cell_r13, bref, (uint8_t)1, (uint8_t)10)); + HANDLE_CODE(unpack_integer(pci_r13, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(unpack_integer(redist_factor_cell_r13, bref, (uint8_t)1u, (uint8_t)10u)); return SRSASN_SUCCESS; } @@ -3679,14 +3679,14 @@ void redist_neigh_cell_r13_s::to_json(json_writer& j) const SRSASN_CODE sl_disc_tx_pwr_info_r12_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, disc_max_tx_pwr_r12, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, disc_max_tx_pwr_r12, (int8_t)-30, (int8_t)33)); return SRSASN_SUCCESS; } SRSASN_CODE sl_disc_tx_pwr_info_r12_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(disc_max_tx_pwr_r12, bref, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(unpack_integer(disc_max_tx_pwr_r12, bref, (int8_t)-30, (int8_t)33)); return SRSASN_SUCCESS; } @@ -3703,12 +3703,12 @@ SRSASN_CODE sl_v2x_freq_sel_cfg_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(thresh_cbr_freq_resel_r15_present, 1)); HANDLE_CODE(bref.pack(thresh_cbr_freq_keeping_r15_present, 1)); - HANDLE_CODE(pack_dyn_seq_of(bref, prio_list_r15, 1, 8, UnalignedIntegerPacker(1, 8))); + HANDLE_CODE(pack_dyn_seq_of(bref, prio_list_r15, 1, 8, integer_packer(1, 8))); if (thresh_cbr_freq_resel_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, thresh_cbr_freq_resel_r15, (uint8_t)0, (uint8_t)100)); + HANDLE_CODE(pack_integer(bref, thresh_cbr_freq_resel_r15, (uint8_t)0u, (uint8_t)100u)); } if (thresh_cbr_freq_keeping_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, thresh_cbr_freq_keeping_r15, (uint8_t)0, (uint8_t)100)); + HANDLE_CODE(pack_integer(bref, thresh_cbr_freq_keeping_r15, (uint8_t)0u, (uint8_t)100u)); } return SRSASN_SUCCESS; @@ -3718,12 +3718,12 @@ SRSASN_CODE sl_v2x_freq_sel_cfg_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(thresh_cbr_freq_resel_r15_present, 1)); HANDLE_CODE(bref.unpack(thresh_cbr_freq_keeping_r15_present, 1)); - HANDLE_CODE(unpack_dyn_seq_of(prio_list_r15, bref, 1, 8, UnalignedIntegerPacker(1, 8))); + HANDLE_CODE(unpack_dyn_seq_of(prio_list_r15, bref, 1, 8, integer_packer(1, 8))); if (thresh_cbr_freq_resel_r15_present) { - HANDLE_CODE(unpack_unalign_integer(thresh_cbr_freq_resel_r15, bref, (uint8_t)0, (uint8_t)100)); + HANDLE_CODE(unpack_integer(thresh_cbr_freq_resel_r15, bref, (uint8_t)0u, (uint8_t)100u)); } if (thresh_cbr_freq_keeping_r15_present) { - HANDLE_CODE(unpack_unalign_integer(thresh_cbr_freq_keeping_r15, bref, (uint8_t)0, (uint8_t)100)); + HANDLE_CODE(unpack_integer(thresh_cbr_freq_keeping_r15, bref, (uint8_t)0u, (uint8_t)100u)); } return SRSASN_SUCCESS; @@ -3761,10 +3761,10 @@ SRSASN_CODE sl_v2x_inter_freq_ue_cfg_r14_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(offset_dfn_r14_present, 1)); if (pci_list_r14_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, pci_list_r14, 1, 16, UnalignedIntegerPacker(0, 503))); + HANDLE_CODE(pack_dyn_seq_of(bref, pci_list_r14, 1, 16, integer_packer(0, 503))); } if (type_tx_sync_r14_present) { - HANDLE_CODE(pack_enum(bref, type_tx_sync_r14)); + HANDLE_CODE(type_tx_sync_r14.pack(bref)); } if (v2x_sync_cfg_r14_present) { HANDLE_CODE(pack_dyn_seq_of(bref, v2x_sync_cfg_r14, 1, 16)); @@ -3788,7 +3788,7 @@ SRSASN_CODE sl_v2x_inter_freq_ue_cfg_r14_s::pack(bit_ref& bref) const HANDLE_CODE(zone_cfg_r14.pack(bref)); } if (offset_dfn_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, offset_dfn_r14, (uint16_t)0, (uint16_t)1000)); + HANDLE_CODE(pack_integer(bref, offset_dfn_r14, (uint16_t)0u, (uint16_t)1000u)); } return SRSASN_SUCCESS; @@ -3808,10 +3808,10 @@ SRSASN_CODE sl_v2x_inter_freq_ue_cfg_r14_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(offset_dfn_r14_present, 1)); if (pci_list_r14_present) { - HANDLE_CODE(unpack_dyn_seq_of(pci_list_r14, bref, 1, 16, UnalignedIntegerPacker(0, 503))); + HANDLE_CODE(unpack_dyn_seq_of(pci_list_r14, bref, 1, 16, integer_packer(0, 503))); } if (type_tx_sync_r14_present) { - HANDLE_CODE(unpack_enum(type_tx_sync_r14, bref)); + HANDLE_CODE(type_tx_sync_r14.unpack(bref)); } if (v2x_sync_cfg_r14_present) { HANDLE_CODE(unpack_dyn_seq_of(v2x_sync_cfg_r14, bref, 1, 16)); @@ -3835,7 +3835,7 @@ SRSASN_CODE sl_v2x_inter_freq_ue_cfg_r14_s::unpack(bit_ref& bref) HANDLE_CODE(zone_cfg_r14.unpack(bref)); } if (offset_dfn_r14_present) { - HANDLE_CODE(unpack_unalign_integer(offset_dfn_r14, bref, (uint16_t)0, (uint16_t)1000)); + HANDLE_CODE(unpack_integer(offset_dfn_r14, bref, (uint16_t)0u, (uint16_t)1000u)); } return SRSASN_SUCCESS; @@ -3902,15 +3902,15 @@ void sl_v2x_inter_freq_ue_cfg_r14_s::to_json(json_writer& j) const // SchedulingInfo-BR-r13 ::= SEQUENCE SRSASN_CODE sched_info_br_r13_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, si_nb_r13, (uint8_t)1, (uint8_t)16)); - HANDLE_CODE(pack_enum(bref, si_tbs_r13)); + HANDLE_CODE(pack_integer(bref, si_nb_r13, (uint8_t)1u, (uint8_t)16u)); + HANDLE_CODE(si_tbs_r13.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE sched_info_br_r13_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(si_nb_r13, bref, (uint8_t)1, (uint8_t)16)); - HANDLE_CODE(unpack_enum(si_tbs_r13, bref)); + HANDLE_CODE(unpack_integer(si_nb_r13, bref, (uint8_t)1u, (uint8_t)16u)); + HANDLE_CODE(si_tbs_r13.unpack(bref)); return SRSASN_SUCCESS; } @@ -3925,15 +3925,15 @@ void sched_info_br_r13_s::to_json(json_writer& j) const // SpeedStateScaleFactors ::= SEQUENCE SRSASN_CODE speed_state_scale_factors_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, sf_medium)); - HANDLE_CODE(pack_enum(bref, sf_high)); + HANDLE_CODE(sf_medium.pack(bref)); + HANDLE_CODE(sf_high.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE speed_state_scale_factors_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(sf_medium, bref)); - HANDLE_CODE(unpack_enum(sf_high, bref)); + HANDLE_CODE(sf_medium.unpack(bref)); + HANDLE_CODE(sf_high.unpack(bref)); return SRSASN_SUCCESS; } @@ -4043,31 +4043,31 @@ void sib_type5_v13a0_ies_s::to_json(json_writer& j) const // AC-BarringConfig1XRTT-r9 ::= SEQUENCE SRSASN_CODE ac_barr_cfg1_xrtt_r9_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, ac_barr0to9_r9, (uint8_t)0, (uint8_t)63)); - HANDLE_CODE(pack_unalign_integer(bref, ac_barr10_r9, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(pack_unalign_integer(bref, ac_barr11_r9, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(pack_unalign_integer(bref, ac_barr12_r9, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(pack_unalign_integer(bref, ac_barr13_r9, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(pack_unalign_integer(bref, ac_barr14_r9, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(pack_unalign_integer(bref, ac_barr15_r9, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(pack_unalign_integer(bref, ac_barr_msg_r9, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(pack_unalign_integer(bref, ac_barr_reg_r9, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(pack_unalign_integer(bref, ac_barr_emg_r9, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, ac_barr0to9_r9, (uint8_t)0u, (uint8_t)63u)); + HANDLE_CODE(pack_integer(bref, ac_barr10_r9, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(pack_integer(bref, ac_barr11_r9, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(pack_integer(bref, ac_barr12_r9, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(pack_integer(bref, ac_barr13_r9, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(pack_integer(bref, ac_barr14_r9, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(pack_integer(bref, ac_barr15_r9, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(pack_integer(bref, ac_barr_msg_r9, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(pack_integer(bref, ac_barr_reg_r9, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(pack_integer(bref, ac_barr_emg_r9, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } SRSASN_CODE ac_barr_cfg1_xrtt_r9_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(ac_barr0to9_r9, bref, (uint8_t)0, (uint8_t)63)); - HANDLE_CODE(unpack_unalign_integer(ac_barr10_r9, bref, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(unpack_unalign_integer(ac_barr11_r9, bref, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(unpack_unalign_integer(ac_barr12_r9, bref, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(unpack_unalign_integer(ac_barr13_r9, bref, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(unpack_unalign_integer(ac_barr14_r9, bref, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(unpack_unalign_integer(ac_barr15_r9, bref, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(unpack_unalign_integer(ac_barr_msg_r9, bref, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(unpack_unalign_integer(ac_barr_reg_r9, bref, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(unpack_unalign_integer(ac_barr_emg_r9, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(ac_barr0to9_r9, bref, (uint8_t)0u, (uint8_t)63u)); + HANDLE_CODE(unpack_integer(ac_barr10_r9, bref, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(unpack_integer(ac_barr11_r9, bref, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(unpack_integer(ac_barr12_r9, bref, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(unpack_integer(ac_barr13_r9, bref, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(unpack_integer(ac_barr14_r9, bref, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(unpack_integer(ac_barr15_r9, bref, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(unpack_integer(ac_barr_msg_r9, bref, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(unpack_integer(ac_barr_reg_r9, bref, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(unpack_integer(ac_barr_emg_r9, bref, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } @@ -4092,10 +4092,10 @@ SRSASN_CODE barr_per_acdc_category_r13_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(acdc_barr_cfg_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, acdc_category_r13, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(pack_integer(bref, acdc_category_r13, (uint8_t)1u, (uint8_t)16u)); if (acdc_barr_cfg_r13_present) { - HANDLE_CODE(pack_enum(bref, acdc_barr_cfg_r13.ac_barr_factor_r13)); - HANDLE_CODE(pack_enum(bref, acdc_barr_cfg_r13.ac_barr_time_r13)); + HANDLE_CODE(acdc_barr_cfg_r13.ac_barr_factor_r13.pack(bref)); + HANDLE_CODE(acdc_barr_cfg_r13.ac_barr_time_r13.pack(bref)); } return SRSASN_SUCCESS; @@ -4104,10 +4104,10 @@ SRSASN_CODE barr_per_acdc_category_r13_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(acdc_barr_cfg_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(acdc_category_r13, bref, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(unpack_integer(acdc_category_r13, bref, (uint8_t)1u, (uint8_t)16u)); if (acdc_barr_cfg_r13_present) { - HANDLE_CODE(unpack_enum(acdc_barr_cfg_r13.ac_barr_factor_r13, bref)); - HANDLE_CODE(unpack_enum(acdc_barr_cfg_r13.ac_barr_time_r13, bref)); + HANDLE_CODE(acdc_barr_cfg_r13.ac_barr_factor_r13.unpack(bref)); + HANDLE_CODE(acdc_barr_cfg_r13.ac_barr_time_r13.unpack(bref)); } return SRSASN_SUCCESS; @@ -4205,7 +4205,7 @@ SRSASN_CODE cell_resel_params_cdma2000_r11_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, band_class_list, 1, 32)); HANDLE_CODE(pack_dyn_seq_of(bref, neigh_cell_list_r11, 1, 16)); - HANDLE_CODE(pack_unalign_integer(bref, t_resel_cdma2000, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, t_resel_cdma2000, (uint8_t)0u, (uint8_t)7u)); if (t_resel_cdma2000_sf_present) { HANDLE_CODE(t_resel_cdma2000_sf.pack(bref)); } @@ -4218,7 +4218,7 @@ SRSASN_CODE cell_resel_params_cdma2000_r11_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(band_class_list, bref, 1, 32)); HANDLE_CODE(unpack_dyn_seq_of(neigh_cell_list_r11, bref, 1, 16)); - HANDLE_CODE(unpack_unalign_integer(t_resel_cdma2000, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(t_resel_cdma2000, bref, (uint8_t)0u, (uint8_t)7u)); if (t_resel_cdma2000_sf_present) { HANDLE_CODE(t_resel_cdma2000_sf.unpack(bref)); } @@ -4251,9 +4251,9 @@ SRSASN_CODE cell_sel_info_ce_r13_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(q_qual_min_rsrq_ce_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, q_rx_lev_min_ce_r13, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(pack_integer(bref, q_rx_lev_min_ce_r13, (int8_t)-70, (int8_t)-22)); if (q_qual_min_rsrq_ce_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, q_qual_min_rsrq_ce_r13, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(pack_integer(bref, q_qual_min_rsrq_ce_r13, (int8_t)-34, (int8_t)-3)); } return SRSASN_SUCCESS; @@ -4262,9 +4262,9 @@ SRSASN_CODE cell_sel_info_ce_r13_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(q_qual_min_rsrq_ce_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(q_rx_lev_min_ce_r13, bref, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(unpack_integer(q_rx_lev_min_ce_r13, bref, (int8_t)-70, (int8_t)-22)); if (q_qual_min_rsrq_ce_r13_present) { - HANDLE_CODE(unpack_unalign_integer(q_qual_min_rsrq_ce_r13, bref, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(unpack_integer(q_qual_min_rsrq_ce_r13, bref, (int8_t)-34, (int8_t)-3)); } return SRSASN_SUCCESS; @@ -4284,13 +4284,13 @@ SRSASN_CODE cell_sel_info_nfreq_r13_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(q_rx_lev_min_offset_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, q_rx_lev_min_r13, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(pack_integer(bref, q_rx_lev_min_r13, (int8_t)-70, (int8_t)-22)); if (q_rx_lev_min_offset_present) { - HANDLE_CODE(pack_unalign_integer(bref, q_rx_lev_min_offset, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, q_rx_lev_min_offset, (uint8_t)1u, (uint8_t)8u)); } - HANDLE_CODE(pack_enum(bref, q_hyst_r13)); - HANDLE_CODE(pack_unalign_integer(bref, q_rx_lev_min_resel_r13, (int8_t)-70, (int8_t)-22)); - HANDLE_CODE(pack_unalign_integer(bref, t_resel_eutra_r13, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(q_hyst_r13.pack(bref)); + HANDLE_CODE(pack_integer(bref, q_rx_lev_min_resel_r13, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(pack_integer(bref, t_resel_eutra_r13, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } @@ -4298,13 +4298,13 @@ SRSASN_CODE cell_sel_info_nfreq_r13_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(q_rx_lev_min_offset_present, 1)); - HANDLE_CODE(unpack_unalign_integer(q_rx_lev_min_r13, bref, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(unpack_integer(q_rx_lev_min_r13, bref, (int8_t)-70, (int8_t)-22)); if (q_rx_lev_min_offset_present) { - HANDLE_CODE(unpack_unalign_integer(q_rx_lev_min_offset, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(q_rx_lev_min_offset, bref, (uint8_t)1u, (uint8_t)8u)); } - HANDLE_CODE(unpack_enum(q_hyst_r13, bref)); - HANDLE_CODE(unpack_unalign_integer(q_rx_lev_min_resel_r13, bref, (int8_t)-70, (int8_t)-22)); - HANDLE_CODE(unpack_unalign_integer(t_resel_eutra_r13, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(q_hyst_r13.unpack(bref)); + HANDLE_CODE(unpack_integer(q_rx_lev_min_resel_r13, bref, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(unpack_integer(t_resel_eutra_r13, bref, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } @@ -4377,15 +4377,15 @@ void inter_freq_carrier_freq_info_v10j0_s::to_json(json_writer& j) const // InterFreqNeighCellInfo ::= SEQUENCE SRSASN_CODE inter_freq_neigh_cell_info_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, pci, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_enum(bref, q_offset_cell)); + HANDLE_CODE(pack_integer(bref, pci, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(q_offset_cell.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE inter_freq_neigh_cell_info_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(pci, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_enum(q_offset_cell, bref)); + HANDLE_CODE(unpack_integer(pci, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(q_offset_cell.unpack(bref)); return SRSASN_SUCCESS; } @@ -4403,9 +4403,9 @@ SRSASN_CODE ns_pmax_value_nr_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(add_pmax_nr_r15_present, 1)); if (add_pmax_nr_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, add_pmax_nr_r15, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, add_pmax_nr_r15, (int8_t)-30, (int8_t)33)); } - HANDLE_CODE(pack_unalign_integer(bref, add_spec_emission_nr_r15, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, add_spec_emission_nr_r15, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } @@ -4414,9 +4414,9 @@ SRSASN_CODE ns_pmax_value_nr_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(add_pmax_nr_r15_present, 1)); if (add_pmax_nr_r15_present) { - HANDLE_CODE(unpack_unalign_integer(add_pmax_nr_r15, bref, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(unpack_integer(add_pmax_nr_r15, bref, (int8_t)-30, (int8_t)33)); } - HANDLE_CODE(unpack_unalign_integer(add_spec_emission_nr_r15, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(add_spec_emission_nr_r15, bref, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } @@ -4512,10 +4512,10 @@ void plmn_id_info2_r12_c::to_json(json_writer& j) const } SRSASN_CODE plmn_id_info2_r12_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::plmn_idx_r12: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)1u, (uint8_t)6u)); break; case types::plmn_id_r12: HANDLE_CODE(c.get().pack(bref)); @@ -4529,11 +4529,11 @@ SRSASN_CODE plmn_id_info2_r12_c::pack(bit_ref& bref) const SRSASN_CODE plmn_id_info2_r12_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::plmn_idx_r12: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)1u, (uint8_t)6u)); break; case types::plmn_id_r12: HANDLE_CODE(c.get().unpack(bref)); @@ -4551,18 +4551,18 @@ SRSASN_CODE prach_params_ce_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(prach_start_sf_r13_present, 1)); HANDLE_CODE(bref.pack(max_num_preamb_attempt_ce_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, prach_cfg_idx_r13, (uint8_t)0, (uint8_t)63)); - HANDLE_CODE(pack_unalign_integer(bref, prach_freq_offset_r13, (uint8_t)0, (uint8_t)94)); + HANDLE_CODE(pack_integer(bref, prach_cfg_idx_r13, (uint8_t)0u, (uint8_t)63u)); + HANDLE_CODE(pack_integer(bref, prach_freq_offset_r13, (uint8_t)0u, (uint8_t)94u)); if (prach_start_sf_r13_present) { - HANDLE_CODE(pack_enum(bref, prach_start_sf_r13)); + HANDLE_CODE(prach_start_sf_r13.pack(bref)); } if (max_num_preamb_attempt_ce_r13_present) { - HANDLE_CODE(pack_enum(bref, max_num_preamb_attempt_ce_r13)); + HANDLE_CODE(max_num_preamb_attempt_ce_r13.pack(bref)); } - HANDLE_CODE(pack_enum(bref, num_repeat_per_preamb_attempt_r13)); - HANDLE_CODE(pack_dyn_seq_of(bref, mpdcch_nbs_to_monitor_r13, 1, 2, UnalignedIntegerPacker(1, 16))); - HANDLE_CODE(pack_enum(bref, mpdcch_num_repeat_ra_r13)); - HANDLE_CODE(pack_enum(bref, prach_hop_cfg_r13)); + HANDLE_CODE(num_repeat_per_preamb_attempt_r13.pack(bref)); + HANDLE_CODE(pack_dyn_seq_of(bref, mpdcch_nbs_to_monitor_r13, 1, 2, integer_packer(1, 16))); + HANDLE_CODE(mpdcch_num_repeat_ra_r13.pack(bref)); + HANDLE_CODE(prach_hop_cfg_r13.pack(bref)); return SRSASN_SUCCESS; } @@ -4571,18 +4571,18 @@ SRSASN_CODE prach_params_ce_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(prach_start_sf_r13_present, 1)); HANDLE_CODE(bref.unpack(max_num_preamb_attempt_ce_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(prach_cfg_idx_r13, bref, (uint8_t)0, (uint8_t)63)); - HANDLE_CODE(unpack_unalign_integer(prach_freq_offset_r13, bref, (uint8_t)0, (uint8_t)94)); + HANDLE_CODE(unpack_integer(prach_cfg_idx_r13, bref, (uint8_t)0u, (uint8_t)63u)); + HANDLE_CODE(unpack_integer(prach_freq_offset_r13, bref, (uint8_t)0u, (uint8_t)94u)); if (prach_start_sf_r13_present) { - HANDLE_CODE(unpack_enum(prach_start_sf_r13, bref)); + HANDLE_CODE(prach_start_sf_r13.unpack(bref)); } if (max_num_preamb_attempt_ce_r13_present) { - HANDLE_CODE(unpack_enum(max_num_preamb_attempt_ce_r13, bref)); + HANDLE_CODE(max_num_preamb_attempt_ce_r13.unpack(bref)); } - HANDLE_CODE(unpack_enum(num_repeat_per_preamb_attempt_r13, bref)); - HANDLE_CODE(unpack_dyn_seq_of(mpdcch_nbs_to_monitor_r13, bref, 1, 2, UnalignedIntegerPacker(1, 16))); - HANDLE_CODE(unpack_enum(mpdcch_num_repeat_ra_r13, bref)); - HANDLE_CODE(unpack_enum(prach_hop_cfg_r13, bref)); + HANDLE_CODE(num_repeat_per_preamb_attempt_r13.unpack(bref)); + HANDLE_CODE(unpack_dyn_seq_of(mpdcch_nbs_to_monitor_r13, bref, 1, 2, integer_packer(1, 16))); + HANDLE_CODE(mpdcch_num_repeat_ra_r13.unpack(bref)); + HANDLE_CODE(prach_hop_cfg_r13.unpack(bref)); return SRSASN_SUCCESS; } @@ -4616,11 +4616,10 @@ SRSASN_CODE pre_regist_info_hrpd_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(pre_regist_allowed, 1)); if (pre_regist_zone_id_present) { - HANDLE_CODE(pack_unalign_integer(bref, pre_regist_zone_id, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(pack_integer(bref, pre_regist_zone_id, (uint16_t)0u, (uint16_t)255u)); } if (secondary_pre_regist_zone_id_list_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, secondary_pre_regist_zone_id_list, 1, 2, UnalignedIntegerPacker(0, 255))); + HANDLE_CODE(pack_dyn_seq_of(bref, secondary_pre_regist_zone_id_list, 1, 2, integer_packer(0, 255))); } return SRSASN_SUCCESS; @@ -4632,11 +4631,10 @@ SRSASN_CODE pre_regist_info_hrpd_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(pre_regist_allowed, 1)); if (pre_regist_zone_id_present) { - HANDLE_CODE(unpack_unalign_integer(pre_regist_zone_id, bref, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(unpack_integer(pre_regist_zone_id, bref, (uint16_t)0u, (uint16_t)255u)); } if (secondary_pre_regist_zone_id_list_present) { - HANDLE_CODE( - unpack_dyn_seq_of(secondary_pre_regist_zone_id_list, bref, 1, 2, UnalignedIntegerPacker(0, 255))); + HANDLE_CODE(unpack_dyn_seq_of(secondary_pre_regist_zone_id_list, bref, 1, 2, integer_packer(0, 255))); } return SRSASN_SUCCESS; @@ -4662,11 +4660,11 @@ void pre_regist_info_hrpd_s::to_json(json_writer& j) const SRSASN_CODE rach_ce_level_info_r13_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, preamb_map_info_r13.first_preamb_r13, (uint8_t)0, (uint8_t)63)); - HANDLE_CODE(pack_unalign_integer(bref, preamb_map_info_r13.last_preamb_r13, (uint8_t)0, (uint8_t)63)); - HANDLE_CODE(pack_enum(bref, ra_resp_win_size_r13)); - HANDLE_CODE(pack_enum(bref, mac_contention_resolution_timer_r13)); - HANDLE_CODE(pack_enum(bref, rar_hop_cfg_r13)); + HANDLE_CODE(pack_integer(bref, preamb_map_info_r13.first_preamb_r13, (uint8_t)0u, (uint8_t)63u)); + HANDLE_CODE(pack_integer(bref, preamb_map_info_r13.last_preamb_r13, (uint8_t)0u, (uint8_t)63u)); + HANDLE_CODE(ra_resp_win_size_r13.pack(bref)); + HANDLE_CODE(mac_contention_resolution_timer_r13.pack(bref)); + HANDLE_CODE(rar_hop_cfg_r13.pack(bref)); if (ext) { ext_groups_packer_guard group_flags; @@ -4674,16 +4672,16 @@ SRSASN_CODE rach_ce_level_info_r13_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(edt_params_r15.is_present(), 1)); if (edt_params_r15.is_present()) { HANDLE_CODE(bref.pack(edt_params_r15->mac_contention_resolution_timer_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, edt_params_r15->edt_last_preamb_r15, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(pack_integer(bref, edt_params_r15->edt_last_preamb_r15, (uint8_t)0u, (uint8_t)63u)); HANDLE_CODE(bref.pack(edt_params_r15->edt_small_tbs_enabled_r15, 1)); - HANDLE_CODE(pack_enum(bref, edt_params_r15->edt_tbs_r15)); + HANDLE_CODE(edt_params_r15->edt_tbs_r15.pack(bref)); if (edt_params_r15->mac_contention_resolution_timer_r15_present) { - HANDLE_CODE(pack_enum(bref, edt_params_r15->mac_contention_resolution_timer_r15)); + HANDLE_CODE(edt_params_r15->mac_contention_resolution_timer_r15.pack(bref)); } } } @@ -4693,29 +4691,29 @@ SRSASN_CODE rach_ce_level_info_r13_s::pack(bit_ref& bref) const SRSASN_CODE rach_ce_level_info_r13_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(preamb_map_info_r13.first_preamb_r13, bref, (uint8_t)0, (uint8_t)63)); - HANDLE_CODE(unpack_unalign_integer(preamb_map_info_r13.last_preamb_r13, bref, (uint8_t)0, (uint8_t)63)); - HANDLE_CODE(unpack_enum(ra_resp_win_size_r13, bref)); - HANDLE_CODE(unpack_enum(mac_contention_resolution_timer_r13, bref)); - HANDLE_CODE(unpack_enum(rar_hop_cfg_r13, bref)); + HANDLE_CODE(unpack_integer(preamb_map_info_r13.first_preamb_r13, bref, (uint8_t)0u, (uint8_t)63u)); + HANDLE_CODE(unpack_integer(preamb_map_info_r13.last_preamb_r13, bref, (uint8_t)0u, (uint8_t)63u)); + HANDLE_CODE(ra_resp_win_size_r13.unpack(bref)); + HANDLE_CODE(mac_contention_resolution_timer_r13.unpack(bref)); + HANDLE_CODE(rar_hop_cfg_r13.unpack(bref)); if (ext) { ext_groups_unpacker_guard group_flags(1); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool edt_params_r15_present; HANDLE_CODE(bref.unpack(edt_params_r15_present, 1)); edt_params_r15.set_present(edt_params_r15_present); if (edt_params_r15.is_present()) { HANDLE_CODE(bref.unpack(edt_params_r15->mac_contention_resolution_timer_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(edt_params_r15->edt_last_preamb_r15, bref, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(unpack_integer(edt_params_r15->edt_last_preamb_r15, bref, (uint8_t)0u, (uint8_t)63u)); HANDLE_CODE(bref.unpack(edt_params_r15->edt_small_tbs_enabled_r15, 1)); - HANDLE_CODE(unpack_enum(edt_params_r15->edt_tbs_r15, bref)); + HANDLE_CODE(edt_params_r15->edt_tbs_r15.unpack(bref)); if (edt_params_r15->mac_contention_resolution_timer_r15_present) { - HANDLE_CODE(unpack_enum(edt_params_r15->mac_contention_resolution_timer_r15, bref)); + HANDLE_CODE(edt_params_r15->mac_contention_resolution_timer_r15.unpack(bref)); } } } @@ -4753,15 +4751,15 @@ void rach_ce_level_info_r13_s::to_json(json_writer& j) const // SL-AllowedCarrierFreqList-r15 ::= SEQUENCE SRSASN_CODE sl_allowed_carrier_freq_list_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_dyn_seq_of(bref, allowed_carrier_freq_set1, 1, 8, UnalignedIntegerPacker(0, 262143))); - HANDLE_CODE(pack_dyn_seq_of(bref, allowed_carrier_freq_set2, 1, 8, UnalignedIntegerPacker(0, 262143))); + HANDLE_CODE(pack_dyn_seq_of(bref, allowed_carrier_freq_set1, 1, 8, integer_packer(0, 262143))); + HANDLE_CODE(pack_dyn_seq_of(bref, allowed_carrier_freq_set2, 1, 8, integer_packer(0, 262143))); return SRSASN_SUCCESS; } SRSASN_CODE sl_allowed_carrier_freq_list_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_dyn_seq_of(allowed_carrier_freq_set1, bref, 1, 8, UnalignedIntegerPacker(0, 262143))); - HANDLE_CODE(unpack_dyn_seq_of(allowed_carrier_freq_set2, bref, 1, 8, UnalignedIntegerPacker(0, 262143))); + HANDLE_CODE(unpack_dyn_seq_of(allowed_carrier_freq_set1, bref, 1, 8, integer_packer(0, 262143))); + HANDLE_CODE(unpack_dyn_seq_of(allowed_carrier_freq_set2, bref, 1, 8, integer_packer(0, 262143))); return SRSASN_SUCCESS; } @@ -4810,7 +4808,7 @@ void sl_disc_tx_res_inter_freq_r13_c::to_json(json_writer& j) const } SRSASN_CODE sl_disc_tx_res_inter_freq_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::acquire_si_from_carrier_r13: break; @@ -4830,7 +4828,7 @@ SRSASN_CODE sl_disc_tx_res_inter_freq_r13_c::pack(bit_ref& bref) const SRSASN_CODE sl_disc_tx_res_inter_freq_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::acquire_si_from_carrier_r13: @@ -4861,7 +4859,7 @@ SRSASN_CODE sib_type1_v1320_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(freq_hop_params_dl_r13.interv_dl_hop_cfg_common_mode_b_r13_present, 1)); HANDLE_CODE(bref.pack(freq_hop_params_dl_r13.mpdcch_pdsch_hop_offset_r13_present, 1)); if (freq_hop_params_dl_r13.mpdcch_pdsch_hop_nb_r13_present) { - HANDLE_CODE(pack_enum(bref, freq_hop_params_dl_r13.mpdcch_pdsch_hop_nb_r13)); + HANDLE_CODE(freq_hop_params_dl_r13.mpdcch_pdsch_hop_nb_r13.pack(bref)); } if (freq_hop_params_dl_r13.interv_dl_hop_cfg_common_mode_a_r13_present) { HANDLE_CODE(freq_hop_params_dl_r13.interv_dl_hop_cfg_common_mode_a_r13.pack(bref)); @@ -4870,8 +4868,7 @@ SRSASN_CODE sib_type1_v1320_ies_s::pack(bit_ref& bref) const HANDLE_CODE(freq_hop_params_dl_r13.interv_dl_hop_cfg_common_mode_b_r13.pack(bref)); } if (freq_hop_params_dl_r13.mpdcch_pdsch_hop_offset_r13_present) { - HANDLE_CODE( - pack_unalign_integer(bref, freq_hop_params_dl_r13.mpdcch_pdsch_hop_offset_r13, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(pack_integer(bref, freq_hop_params_dl_r13.mpdcch_pdsch_hop_offset_r13, (uint8_t)1u, (uint8_t)16u)); } } if (non_crit_ext_present) { @@ -4891,7 +4888,7 @@ SRSASN_CODE sib_type1_v1320_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(freq_hop_params_dl_r13.interv_dl_hop_cfg_common_mode_b_r13_present, 1)); HANDLE_CODE(bref.unpack(freq_hop_params_dl_r13.mpdcch_pdsch_hop_offset_r13_present, 1)); if (freq_hop_params_dl_r13.mpdcch_pdsch_hop_nb_r13_present) { - HANDLE_CODE(unpack_enum(freq_hop_params_dl_r13.mpdcch_pdsch_hop_nb_r13, bref)); + HANDLE_CODE(freq_hop_params_dl_r13.mpdcch_pdsch_hop_nb_r13.unpack(bref)); } if (freq_hop_params_dl_r13.interv_dl_hop_cfg_common_mode_a_r13_present) { HANDLE_CODE(freq_hop_params_dl_r13.interv_dl_hop_cfg_common_mode_a_r13.unpack(bref)); @@ -4900,8 +4897,7 @@ SRSASN_CODE sib_type1_v1320_ies_s::unpack(bit_ref& bref) HANDLE_CODE(freq_hop_params_dl_r13.interv_dl_hop_cfg_common_mode_b_r13.unpack(bref)); } if (freq_hop_params_dl_r13.mpdcch_pdsch_hop_offset_r13_present) { - HANDLE_CODE( - unpack_unalign_integer(freq_hop_params_dl_r13.mpdcch_pdsch_hop_offset_r13, bref, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(unpack_integer(freq_hop_params_dl_r13.mpdcch_pdsch_hop_offset_r13, bref, (uint8_t)1u, (uint8_t)16u)); } } if (non_crit_ext_present) { @@ -5008,13 +5004,13 @@ void sib_type1_v1320_ies_s::freq_hop_params_dl_r13_s_::interv_dl_hop_cfg_common_ SRSASN_CODE sib_type1_v1320_ies_s::freq_hop_params_dl_r13_s_::interv_dl_hop_cfg_common_mode_a_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::interv_fdd_r13: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; case types::interv_tdd_r13: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; default: log_invalid_choice_id(type_, @@ -5027,14 +5023,14 @@ SRSASN_CODE sib_type1_v1320_ies_s::freq_hop_params_dl_r13_s_::interv_dl_hop_cfg_common_mode_a_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::interv_fdd_r13: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; case types::interv_tdd_r13: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; default: log_invalid_choice_id(type_, @@ -5113,13 +5109,13 @@ void sib_type1_v1320_ies_s::freq_hop_params_dl_r13_s_::interv_dl_hop_cfg_common_ SRSASN_CODE sib_type1_v1320_ies_s::freq_hop_params_dl_r13_s_::interv_dl_hop_cfg_common_mode_b_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::interv_fdd_r13: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; case types::interv_tdd_r13: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; default: log_invalid_choice_id(type_, @@ -5132,14 +5128,14 @@ SRSASN_CODE sib_type1_v1320_ies_s::freq_hop_params_dl_r13_s_::interv_dl_hop_cfg_common_mode_b_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::interv_fdd_r13: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; case types::interv_tdd_r13: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; default: log_invalid_choice_id(type_, @@ -5157,10 +5153,10 @@ SRSASN_CODE sib_type2_v10m0_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (freq_info_v10l0_present) { - HANDLE_CODE(pack_unalign_integer(bref, freq_info_v10l0.add_spec_emission_v10l0, (uint16_t)33, (uint16_t)288)); + HANDLE_CODE(pack_integer(bref, freq_info_v10l0.add_spec_emission_v10l0, (uint16_t)33u, (uint16_t)288u)); } if (multi_band_info_list_v10l0_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list_v10l0, 1, 8, UnalignedIntegerPacker(33, 288))); + HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list_v10l0, 1, 8, integer_packer(33, 288))); } return SRSASN_SUCCESS; @@ -5172,10 +5168,10 @@ SRSASN_CODE sib_type2_v10m0_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (freq_info_v10l0_present) { - HANDLE_CODE(unpack_unalign_integer(freq_info_v10l0.add_spec_emission_v10l0, bref, (uint16_t)33, (uint16_t)288)); + HANDLE_CODE(unpack_integer(freq_info_v10l0.add_spec_emission_v10l0, bref, (uint16_t)33u, (uint16_t)288u)); } if (multi_band_info_list_v10l0_present) { - HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list_v10l0, bref, 1, 8, UnalignedIntegerPacker(33, 288))); + HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list_v10l0, bref, 1, 8, integer_packer(33, 288))); } return SRSASN_SUCCESS; @@ -5359,7 +5355,7 @@ void sys_time_info_cdma2000_s::cdma_sys_time_c_::to_json(json_writer& j) const } SRSASN_CODE sys_time_info_cdma2000_s::cdma_sys_time_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sync_sys_time: HANDLE_CODE(c.get >().pack(bref)); @@ -5376,7 +5372,7 @@ SRSASN_CODE sys_time_info_cdma2000_s::cdma_sys_time_c_::pack(bit_ref& bref) cons SRSASN_CODE sys_time_info_cdma2000_s::cdma_sys_time_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sync_sys_time: @@ -5395,15 +5391,15 @@ SRSASN_CODE sys_time_info_cdma2000_s::cdma_sys_time_c_::unpack(bit_ref& bref) // UAC-BarringPerCat-r15 ::= SEQUENCE SRSASN_CODE uac_barr_per_cat_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, access_category_r15, (uint8_t)1, (uint8_t)63)); - HANDLE_CODE(pack_unalign_integer(bref, uac_barr_info_set_idx_r15, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, access_category_r15, (uint8_t)1u, (uint8_t)63u)); + HANDLE_CODE(pack_integer(bref, uac_barr_info_set_idx_r15, (uint8_t)1u, (uint8_t)8u)); return SRSASN_SUCCESS; } SRSASN_CODE uac_barr_per_cat_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(access_category_r15, bref, (uint8_t)1, (uint8_t)63)); - HANDLE_CODE(unpack_unalign_integer(uac_barr_info_set_idx_r15, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(access_category_r15, bref, (uint8_t)1u, (uint8_t)63u)); + HANDLE_CODE(unpack_integer(uac_barr_info_set_idx_r15, bref, (uint8_t)1u, (uint8_t)8u)); return SRSASN_SUCCESS; } @@ -5418,16 +5414,16 @@ void uac_barr_per_cat_r15_s::to_json(json_writer& j) const // AC-BarringConfig ::= SEQUENCE SRSASN_CODE ac_barr_cfg_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, ac_barr_factor)); - HANDLE_CODE(pack_enum(bref, ac_barr_time)); + HANDLE_CODE(ac_barr_factor.pack(bref)); + HANDLE_CODE(ac_barr_time.pack(bref)); HANDLE_CODE(ac_barr_for_special_ac.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE ac_barr_cfg_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(ac_barr_factor, bref)); - HANDLE_CODE(unpack_enum(ac_barr_time, bref)); + HANDLE_CODE(ac_barr_factor.unpack(bref)); + HANDLE_CODE(ac_barr_time.unpack(bref)); HANDLE_CODE(ac_barr_for_special_ac.unpack(bref)); return SRSASN_SUCCESS; @@ -5444,16 +5440,16 @@ void ac_barr_cfg_s::to_json(json_writer& j) const // CarrierFreqsGERAN ::= SEQUENCE SRSASN_CODE carrier_freqs_geran_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, start_arfcn, (uint16_t)0, (uint16_t)1023)); - HANDLE_CODE(pack_enum(bref, band_ind)); + HANDLE_CODE(pack_integer(bref, start_arfcn, (uint16_t)0u, (uint16_t)1023u)); + HANDLE_CODE(band_ind.pack(bref)); HANDLE_CODE(following_arfcns.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE carrier_freqs_geran_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(start_arfcn, bref, (uint16_t)0, (uint16_t)1023)); - HANDLE_CODE(unpack_enum(band_ind, bref)); + HANDLE_CODE(unpack_integer(start_arfcn, bref, (uint16_t)0u, (uint16_t)1023u)); + HANDLE_CODE(band_ind.unpack(bref)); HANDLE_CODE(following_arfcns.unpack(bref)); return SRSASN_SUCCESS; @@ -5576,16 +5572,15 @@ void carrier_freqs_geran_s::following_arfcns_c_::to_json(json_writer& j) const } SRSASN_CODE carrier_freqs_geran_s::following_arfcns_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::explicit_list_of_arfcns: - HANDLE_CODE( - pack_dyn_seq_of(bref, c.get(), 0, 31, UnalignedIntegerPacker(0, 1023))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 0, 31, integer_packer(0, 1023))); break; case types::equally_spaced_arfcns: - HANDLE_CODE(pack_unalign_integer(bref, c.get().arfcn_spacing, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, c.get().arfcn_spacing, (uint8_t)1u, (uint8_t)8u)); HANDLE_CODE( - pack_unalign_integer(bref, c.get().nof_following_arfcns, (uint8_t)0, (uint8_t)31)); + pack_integer(bref, c.get().nof_following_arfcns, (uint8_t)0u, (uint8_t)31u)); break; case types::variable_bit_map_of_arfcns: HANDLE_CODE(c.get().pack(bref)); @@ -5599,18 +5594,17 @@ SRSASN_CODE carrier_freqs_geran_s::following_arfcns_c_::pack(bit_ref& bref) cons SRSASN_CODE carrier_freqs_geran_s::following_arfcns_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::explicit_list_of_arfcns: - HANDLE_CODE(unpack_dyn_seq_of( - c.get(), bref, 0, 31, UnalignedIntegerPacker(0, 1023))); + HANDLE_CODE( + unpack_dyn_seq_of(c.get(), bref, 0, 31, integer_packer(0, 1023))); break; case types::equally_spaced_arfcns: + HANDLE_CODE(unpack_integer(c.get().arfcn_spacing, bref, (uint8_t)1u, (uint8_t)8u)); HANDLE_CODE( - unpack_unalign_integer(c.get().arfcn_spacing, bref, (uint8_t)1, (uint8_t)8)); - HANDLE_CODE(unpack_unalign_integer( - c.get().nof_following_arfcns, bref, (uint8_t)0, (uint8_t)31)); + unpack_integer(c.get().nof_following_arfcns, bref, (uint8_t)0u, (uint8_t)31u)); break; case types::variable_bit_map_of_arfcns: HANDLE_CODE(c.get().unpack(bref)); @@ -5625,13 +5619,13 @@ SRSASN_CODE carrier_freqs_geran_s::following_arfcns_c_::unpack(bit_ref& bref) // CellSelectionInfo-v1250 ::= SEQUENCE SRSASN_CODE cell_sel_info_v1250_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, q_qual_min_rsrq_on_all_symbols_r12, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(pack_integer(bref, q_qual_min_rsrq_on_all_symbols_r12, (int8_t)-34, (int8_t)-3)); return SRSASN_SUCCESS; } SRSASN_CODE cell_sel_info_v1250_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(q_qual_min_rsrq_on_all_symbols_r12, bref, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(unpack_integer(q_qual_min_rsrq_on_all_symbols_r12, bref, (int8_t)-34, (int8_t)-3)); return SRSASN_SUCCESS; } @@ -5645,21 +5639,21 @@ void cell_sel_info_v1250_s::to_json(json_writer& j) const // DeltaFList-PUCCH ::= SEQUENCE SRSASN_CODE delta_flist_pucch_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, delta_f_pucch_format1)); - HANDLE_CODE(pack_enum(bref, delta_f_pucch_format1b)); - HANDLE_CODE(pack_enum(bref, delta_f_pucch_format2)); - HANDLE_CODE(pack_enum(bref, delta_f_pucch_format2a)); - HANDLE_CODE(pack_enum(bref, delta_f_pucch_format2b)); + HANDLE_CODE(delta_f_pucch_format1.pack(bref)); + HANDLE_CODE(delta_f_pucch_format1b.pack(bref)); + HANDLE_CODE(delta_f_pucch_format2.pack(bref)); + HANDLE_CODE(delta_f_pucch_format2a.pack(bref)); + HANDLE_CODE(delta_f_pucch_format2b.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE delta_flist_pucch_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(delta_f_pucch_format1, bref)); - HANDLE_CODE(unpack_enum(delta_f_pucch_format1b, bref)); - HANDLE_CODE(unpack_enum(delta_f_pucch_format2, bref)); - HANDLE_CODE(unpack_enum(delta_f_pucch_format2a, bref)); - HANDLE_CODE(unpack_enum(delta_f_pucch_format2b, bref)); + HANDLE_CODE(delta_f_pucch_format1.unpack(bref)); + HANDLE_CODE(delta_f_pucch_format1b.unpack(bref)); + HANDLE_CODE(delta_f_pucch_format2.unpack(bref)); + HANDLE_CODE(delta_f_pucch_format2a.unpack(bref)); + HANDLE_CODE(delta_f_pucch_format2b.unpack(bref)); return SRSASN_SUCCESS; } @@ -5681,13 +5675,13 @@ SRSASN_CODE edt_prach_params_ce_r15_s::pack(bit_ref& bref) const if (edt_prach_params_ce_r15_present) { HANDLE_CODE(bref.pack(edt_prach_params_ce_r15.prach_start_sf_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, edt_prach_params_ce_r15.prach_cfg_idx_r15, (uint8_t)0, (uint8_t)63)); - HANDLE_CODE(pack_unalign_integer(bref, edt_prach_params_ce_r15.prach_freq_offset_r15, (uint8_t)0, (uint8_t)94)); + HANDLE_CODE(pack_integer(bref, edt_prach_params_ce_r15.prach_cfg_idx_r15, (uint8_t)0u, (uint8_t)63u)); + HANDLE_CODE(pack_integer(bref, edt_prach_params_ce_r15.prach_freq_offset_r15, (uint8_t)0u, (uint8_t)94u)); if (edt_prach_params_ce_r15.prach_start_sf_r15_present) { - HANDLE_CODE(pack_enum(bref, edt_prach_params_ce_r15.prach_start_sf_r15)); + HANDLE_CODE(edt_prach_params_ce_r15.prach_start_sf_r15.pack(bref)); } - HANDLE_CODE(pack_dyn_seq_of( - bref, edt_prach_params_ce_r15.mpdcch_nbs_to_monitor_r15, 1, 2, UnalignedIntegerPacker(1, 16))); + HANDLE_CODE( + pack_dyn_seq_of(bref, edt_prach_params_ce_r15.mpdcch_nbs_to_monitor_r15, 1, 2, integer_packer(1, 16))); } return SRSASN_SUCCESS; @@ -5698,13 +5692,13 @@ SRSASN_CODE edt_prach_params_ce_r15_s::unpack(bit_ref& bref) if (edt_prach_params_ce_r15_present) { HANDLE_CODE(bref.unpack(edt_prach_params_ce_r15.prach_start_sf_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(edt_prach_params_ce_r15.prach_cfg_idx_r15, bref, (uint8_t)0, (uint8_t)63)); - HANDLE_CODE(unpack_unalign_integer(edt_prach_params_ce_r15.prach_freq_offset_r15, bref, (uint8_t)0, (uint8_t)94)); + HANDLE_CODE(unpack_integer(edt_prach_params_ce_r15.prach_cfg_idx_r15, bref, (uint8_t)0u, (uint8_t)63u)); + HANDLE_CODE(unpack_integer(edt_prach_params_ce_r15.prach_freq_offset_r15, bref, (uint8_t)0u, (uint8_t)94u)); if (edt_prach_params_ce_r15.prach_start_sf_r15_present) { - HANDLE_CODE(unpack_enum(edt_prach_params_ce_r15.prach_start_sf_r15, bref)); + HANDLE_CODE(edt_prach_params_ce_r15.prach_start_sf_r15.unpack(bref)); } HANDLE_CODE(unpack_dyn_seq_of( - edt_prach_params_ce_r15.mpdcch_nbs_to_monitor_r15, bref, 1, 2, UnalignedIntegerPacker(1, 16))); + edt_prach_params_ce_r15.mpdcch_nbs_to_monitor_r15, bref, 1, 2, integer_packer(1, 16))); } return SRSASN_SUCCESS; @@ -5737,7 +5731,7 @@ SRSASN_CODE inter_freq_carrier_freq_info_v9e0_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(multi_band_info_list_v9e0_present, 1)); if (dl_carrier_freq_v9e0_present) { - HANDLE_CODE(pack_unalign_integer(bref, dl_carrier_freq_v9e0, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, dl_carrier_freq_v9e0, (uint32_t)65536u, (uint32_t)262143u)); } if (multi_band_info_list_v9e0_present) { HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list_v9e0, 1, 8)); @@ -5751,7 +5745,7 @@ SRSASN_CODE inter_freq_carrier_freq_info_v9e0_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(multi_band_info_list_v9e0_present, 1)); if (dl_carrier_freq_v9e0_present) { - HANDLE_CODE(unpack_unalign_integer(dl_carrier_freq_v9e0, bref, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(dl_carrier_freq_v9e0, bref, (uint32_t)65536u, (uint32_t)262143u)); } if (multi_band_info_list_v9e0_present) { HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list_v9e0, bref, 1, 8)); @@ -5779,14 +5773,14 @@ void inter_freq_carrier_freq_info_v9e0_s::to_json(json_writer& j) const SRSASN_CODE mtc_ssb_nr_r15_s::pack(bit_ref& bref) const { HANDLE_CODE(periodicity_and_offset_r15.pack(bref)); - HANDLE_CODE(pack_enum(bref, ssb_dur_r15)); + HANDLE_CODE(ssb_dur_r15.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE mtc_ssb_nr_r15_s::unpack(bit_ref& bref) { HANDLE_CODE(periodicity_and_offset_r15.unpack(bref)); - HANDLE_CODE(unpack_enum(ssb_dur_r15, bref)); + HANDLE_CODE(ssb_dur_r15.unpack(bref)); return SRSASN_SUCCESS; } @@ -5897,25 +5891,25 @@ void mtc_ssb_nr_r15_s::periodicity_and_offset_r15_c_::to_json(json_writer& j) co } SRSASN_CODE mtc_ssb_nr_r15_s::periodicity_and_offset_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sf5_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)4u)); break; case types::sf10_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)9u)); break; case types::sf20_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)19)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)19u)); break; case types::sf40_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)39)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)39u)); break; case types::sf80_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)79)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)79u)); break; case types::sf160_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)159u)); break; default: log_invalid_choice_id(type_, "mtc_ssb_nr_r15_s::periodicity_and_offset_r15_c_"); @@ -5926,26 +5920,26 @@ SRSASN_CODE mtc_ssb_nr_r15_s::periodicity_and_offset_r15_c_::pack(bit_ref& bref) SRSASN_CODE mtc_ssb_nr_r15_s::periodicity_and_offset_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sf5_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)4)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)4u)); break; case types::sf10_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)9u)); break; case types::sf20_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)19)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)19u)); break; case types::sf40_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)39)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)39u)); break; case types::sf80_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)79)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)79u)); break; case types::sf160_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)159u)); break; default: log_invalid_choice_id(type_, "mtc_ssb_nr_r15_s::periodicity_and_offset_r15_c_"); @@ -5962,23 +5956,23 @@ SRSASN_CODE meas_idle_carrier_eutra_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(meas_cell_list_r15_present, 1)); HANDLE_CODE(bref.pack(quality_thres_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r15, (uint32_t)0, (uint32_t)262143)); - HANDLE_CODE(pack_enum(bref, allowed_meas_bw_r15)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r15, (uint32_t)0u, (uint32_t)262143u)); + HANDLE_CODE(allowed_meas_bw_r15.pack(bref)); if (validity_area_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, validity_area_r15, 1, 8)); } if (meas_cell_list_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, meas_cell_list_r15, 1, 8)); } - HANDLE_CODE(pack_enum(bref, report_quantities)); + HANDLE_CODE(report_quantities.pack(bref)); if (quality_thres_r15_present) { HANDLE_CODE(bref.pack(quality_thres_r15.idle_rsrp_thres_r15_present, 1)); HANDLE_CODE(bref.pack(quality_thres_r15.idle_rsrq_thres_r15_present, 1)); if (quality_thres_r15.idle_rsrp_thres_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, quality_thres_r15.idle_rsrp_thres_r15, (uint8_t)0, (uint8_t)97)); + HANDLE_CODE(pack_integer(bref, quality_thres_r15.idle_rsrp_thres_r15, (uint8_t)0u, (uint8_t)97u)); } if (quality_thres_r15.idle_rsrq_thres_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, quality_thres_r15.idle_rsrq_thres_r15, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(pack_integer(bref, quality_thres_r15.idle_rsrq_thres_r15, (int8_t)-30, (int8_t)46)); } } @@ -5991,23 +5985,23 @@ SRSASN_CODE meas_idle_carrier_eutra_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(meas_cell_list_r15_present, 1)); HANDLE_CODE(bref.unpack(quality_thres_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r15, bref, (uint32_t)0, (uint32_t)262143)); - HANDLE_CODE(unpack_enum(allowed_meas_bw_r15, bref)); + HANDLE_CODE(unpack_integer(carrier_freq_r15, bref, (uint32_t)0u, (uint32_t)262143u)); + HANDLE_CODE(allowed_meas_bw_r15.unpack(bref)); if (validity_area_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(validity_area_r15, bref, 1, 8)); } if (meas_cell_list_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(meas_cell_list_r15, bref, 1, 8)); } - HANDLE_CODE(unpack_enum(report_quantities, bref)); + HANDLE_CODE(report_quantities.unpack(bref)); if (quality_thres_r15_present) { HANDLE_CODE(bref.unpack(quality_thres_r15.idle_rsrp_thres_r15_present, 1)); HANDLE_CODE(bref.unpack(quality_thres_r15.idle_rsrq_thres_r15_present, 1)); if (quality_thres_r15.idle_rsrp_thres_r15_present) { - HANDLE_CODE(unpack_unalign_integer(quality_thres_r15.idle_rsrp_thres_r15, bref, (uint8_t)0, (uint8_t)97)); + HANDLE_CODE(unpack_integer(quality_thres_r15.idle_rsrp_thres_r15, bref, (uint8_t)0u, (uint8_t)97u)); } if (quality_thres_r15.idle_rsrq_thres_r15_present) { - HANDLE_CODE(unpack_unalign_integer(quality_thres_r15.idle_rsrq_thres_r15, bref, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(unpack_integer(quality_thres_r15.idle_rsrq_thres_r15, bref, (int8_t)-30, (int8_t)46)); } } @@ -6050,14 +6044,14 @@ void meas_idle_carrier_eutra_r15_s::to_json(json_writer& j) const // NeighCellCDMA2000 ::= SEQUENCE SRSASN_CODE neigh_cell_cdma2000_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, band_class)); + HANDLE_CODE(band_class.pack(bref)); HANDLE_CODE(pack_dyn_seq_of(bref, neigh_cells_per_freq_list, 1, 16)); return SRSASN_SUCCESS; } SRSASN_CODE neigh_cell_cdma2000_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(band_class, bref)); + HANDLE_CODE(band_class.unpack(bref)); HANDLE_CODE(unpack_dyn_seq_of(neigh_cells_per_freq_list, bref, 1, 16)); return SRSASN_SUCCESS; @@ -6101,19 +6095,19 @@ void neigh_cell_cdma2000_v920_s::to_json(json_writer& j) const // PRACH-ConfigInfo ::= SEQUENCE SRSASN_CODE prach_cfg_info_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, prach_cfg_idx, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(pack_integer(bref, prach_cfg_idx, (uint8_t)0u, (uint8_t)63u)); HANDLE_CODE(bref.pack(high_speed_flag, 1)); - HANDLE_CODE(pack_unalign_integer(bref, zero_correlation_zone_cfg, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(pack_unalign_integer(bref, prach_freq_offset, (uint8_t)0, (uint8_t)94)); + HANDLE_CODE(pack_integer(bref, zero_correlation_zone_cfg, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(pack_integer(bref, prach_freq_offset, (uint8_t)0u, (uint8_t)94u)); return SRSASN_SUCCESS; } SRSASN_CODE prach_cfg_info_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(prach_cfg_idx, bref, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(unpack_integer(prach_cfg_idx, bref, (uint8_t)0u, (uint8_t)63u)); HANDLE_CODE(bref.unpack(high_speed_flag, 1)); - HANDLE_CODE(unpack_unalign_integer(zero_correlation_zone_cfg, bref, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(unpack_unalign_integer(prach_freq_offset, bref, (uint8_t)0, (uint8_t)94)); + HANDLE_CODE(unpack_integer(zero_correlation_zone_cfg, bref, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(unpack_integer(prach_freq_offset, bref, (uint8_t)0u, (uint8_t)94u)); return SRSASN_SUCCESS; } @@ -6138,7 +6132,7 @@ SRSASN_CODE params_cdma2000_r11_s::pack(bit_ref& bref) const if (sys_time_info_r11_present) { HANDLE_CODE(sys_time_info_r11.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, search_win_size_r11, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, search_win_size_r11, (uint8_t)0u, (uint8_t)15u)); if (params_hrpd_r11_present) { HANDLE_CODE(bref.pack(params_hrpd_r11.cell_resel_params_hrpd_r11_present, 1)); HANDLE_CODE(params_hrpd_r11.pre_regist_info_hrpd_r11.pack(bref)); @@ -6186,7 +6180,7 @@ SRSASN_CODE params_cdma2000_r11_s::unpack(bit_ref& bref) if (sys_time_info_r11_present) { HANDLE_CODE(sys_time_info_r11.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(search_win_size_r11, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(search_win_size_r11, bref, (uint8_t)0u, (uint8_t)15u)); if (params_hrpd_r11_present) { HANDLE_CODE(bref.unpack(params_hrpd_r11.cell_resel_params_hrpd_r11_present, 1)); HANDLE_CODE(params_hrpd_r11.pre_regist_info_hrpd_r11.unpack(bref)); @@ -6297,7 +6291,7 @@ void params_cdma2000_r11_s::sys_time_info_r11_c_::to_json(json_writer& j) const } SRSASN_CODE params_cdma2000_r11_s::sys_time_info_r11_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::explicit_value: HANDLE_CODE(c.pack(bref)); @@ -6313,7 +6307,7 @@ SRSASN_CODE params_cdma2000_r11_s::sys_time_info_r11_c_::pack(bit_ref& bref) con SRSASN_CODE params_cdma2000_r11_s::sys_time_info_r11_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::explicit_value: @@ -6331,15 +6325,15 @@ SRSASN_CODE params_cdma2000_r11_s::sys_time_info_r11_c_::unpack(bit_ref& bref) // PowerRampingParameters ::= SEQUENCE SRSASN_CODE pwr_ramp_params_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, pwr_ramp_step)); - HANDLE_CODE(pack_enum(bref, preamb_init_rx_target_pwr)); + HANDLE_CODE(pwr_ramp_step.pack(bref)); + HANDLE_CODE(preamb_init_rx_target_pwr.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE pwr_ramp_params_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(pwr_ramp_step, bref)); - HANDLE_CODE(unpack_enum(preamb_init_rx_target_pwr, bref)); + HANDLE_CODE(pwr_ramp_step.unpack(bref)); + HANDLE_CODE(preamb_init_rx_target_pwr.unpack(bref)); return SRSASN_SUCCESS; } @@ -6358,7 +6352,7 @@ SRSASN_CODE redist_inter_freq_info_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(redist_neigh_cell_list_r13_present, 1)); if (redist_factor_freq_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, redist_factor_freq_r13, (uint8_t)1, (uint8_t)10)); + HANDLE_CODE(pack_integer(bref, redist_factor_freq_r13, (uint8_t)1u, (uint8_t)10u)); } if (redist_neigh_cell_list_r13_present) { HANDLE_CODE(pack_dyn_seq_of(bref, redist_neigh_cell_list_r13, 1, 16)); @@ -6372,7 +6366,7 @@ SRSASN_CODE redist_inter_freq_info_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(redist_neigh_cell_list_r13_present, 1)); if (redist_factor_freq_r13_present) { - HANDLE_CODE(unpack_unalign_integer(redist_factor_freq_r13, bref, (uint8_t)1, (uint8_t)10)); + HANDLE_CODE(unpack_integer(redist_factor_freq_r13, bref, (uint8_t)1u, (uint8_t)10u)); } if (redist_neigh_cell_list_r13_present) { HANDLE_CODE(unpack_dyn_seq_of(redist_neigh_cell_list_r13, bref, 1, 16)); @@ -6399,14 +6393,14 @@ void redist_inter_freq_info_r13_s::to_json(json_writer& j) const // SL-CBR-PSSCH-TxConfig-r14 ::= SEQUENCE SRSASN_CODE sl_cbr_pssch_tx_cfg_r14_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, cr_limit_r14, (uint16_t)0, (uint16_t)10000)); + HANDLE_CODE(pack_integer(bref, cr_limit_r14, (uint16_t)0u, (uint16_t)10000u)); HANDLE_CODE(tx_params_r14.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE sl_cbr_pssch_tx_cfg_r14_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(cr_limit_r14, bref, (uint16_t)0, (uint16_t)10000)); + HANDLE_CODE(unpack_integer(cr_limit_r14, bref, (uint16_t)0u, (uint16_t)10000u)); HANDLE_CODE(tx_params_r14.unpack(bref)); return SRSASN_SUCCESS; @@ -6489,17 +6483,17 @@ void sl_disc_cfg_other_inter_freq_r13_s::to_json(json_writer& j) const // SL-HoppingConfigComm-r12 ::= SEQUENCE SRSASN_CODE sl_hop_cfg_comm_r12_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, hop_param_r12, (uint16_t)0, (uint16_t)504)); - HANDLE_CODE(pack_enum(bref, num_subbands_r12)); - HANDLE_CODE(pack_unalign_integer(bref, rb_offset_r12, (uint8_t)0, (uint8_t)110)); + HANDLE_CODE(pack_integer(bref, hop_param_r12, (uint16_t)0u, (uint16_t)504u)); + HANDLE_CODE(num_subbands_r12.pack(bref)); + HANDLE_CODE(pack_integer(bref, rb_offset_r12, (uint8_t)0u, (uint8_t)110u)); return SRSASN_SUCCESS; } SRSASN_CODE sl_hop_cfg_comm_r12_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(hop_param_r12, bref, (uint16_t)0, (uint16_t)504)); - HANDLE_CODE(unpack_enum(num_subbands_r12, bref)); - HANDLE_CODE(unpack_unalign_integer(rb_offset_r12, bref, (uint8_t)0, (uint8_t)110)); + HANDLE_CODE(unpack_integer(hop_param_r12, bref, (uint16_t)0u, (uint16_t)504u)); + HANDLE_CODE(num_subbands_r12.unpack(bref)); + HANDLE_CODE(unpack_integer(rb_offset_r12, bref, (uint8_t)0u, (uint8_t)110u)); return SRSASN_SUCCESS; } @@ -6525,12 +6519,12 @@ SRSASN_CODE sl_inter_freq_info_v2x_r14_s::pack(bit_ref& bref) const if (plmn_id_list_r14_present) { HANDLE_CODE(pack_dyn_seq_of(bref, plmn_id_list_r14, 1, 6)); } - HANDLE_CODE(pack_unalign_integer(bref, v2x_comm_carrier_freq_r14, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, v2x_comm_carrier_freq_r14, (uint32_t)0u, (uint32_t)262143u)); if (sl_max_tx_pwr_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, sl_max_tx_pwr_r14, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, sl_max_tx_pwr_r14, (int8_t)-30, (int8_t)33)); } if (sl_bw_r14_present) { - HANDLE_CODE(pack_enum(bref, sl_bw_r14)); + HANDLE_CODE(sl_bw_r14.pack(bref)); } if (v2x_sched_pool_r14_present) { HANDLE_CODE(v2x_sched_pool_r14.pack(bref)); @@ -6546,7 +6540,7 @@ SRSASN_CODE sl_inter_freq_info_v2x_r14_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(add_spec_emission_v2x_r14.is_present(), 1)); if (add_spec_emission_v2x_r14.is_present()) { @@ -6554,7 +6548,7 @@ SRSASN_CODE sl_inter_freq_info_v2x_r14_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(v2x_freq_sel_cfg_list_r15.is_present(), 1)); if (v2x_freq_sel_cfg_list_r15.is_present()) { @@ -6576,12 +6570,12 @@ SRSASN_CODE sl_inter_freq_info_v2x_r14_s::unpack(bit_ref& bref) if (plmn_id_list_r14_present) { HANDLE_CODE(unpack_dyn_seq_of(plmn_id_list_r14, bref, 1, 6)); } - HANDLE_CODE(unpack_unalign_integer(v2x_comm_carrier_freq_r14, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(v2x_comm_carrier_freq_r14, bref, (uint32_t)0u, (uint32_t)262143u)); if (sl_max_tx_pwr_r14_present) { - HANDLE_CODE(unpack_unalign_integer(sl_max_tx_pwr_r14, bref, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(unpack_integer(sl_max_tx_pwr_r14, bref, (int8_t)-30, (int8_t)33)); } if (sl_bw_r14_present) { - HANDLE_CODE(unpack_enum(sl_bw_r14, bref)); + HANDLE_CODE(sl_bw_r14.unpack(bref)); } if (v2x_sched_pool_r14_present) { HANDLE_CODE(v2x_sched_pool_r14.unpack(bref)); @@ -6595,7 +6589,7 @@ SRSASN_CODE sl_inter_freq_info_v2x_r14_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool add_spec_emission_v2x_r14_present; HANDLE_CODE(bref.unpack(add_spec_emission_v2x_r14_present, 1)); @@ -6605,7 +6599,7 @@ SRSASN_CODE sl_inter_freq_info_v2x_r14_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool v2x_freq_sel_cfg_list_r15_present; HANDLE_CODE(bref.unpack(v2x_freq_sel_cfg_list_r15_present, 1)); @@ -6723,13 +6717,13 @@ void sl_inter_freq_info_v2x_r14_s::add_spec_emission_v2x_r14_c_::to_json(json_wr } SRSASN_CODE sl_inter_freq_info_v2x_r14_s::add_spec_emission_v2x_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::add_spec_emission_r14: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)1u, (uint8_t)32u)); break; case types::add_spec_emission_v1440: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)33, (uint16_t)288)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)33u, (uint16_t)288u)); break; default: log_invalid_choice_id(type_, "sl_inter_freq_info_v2x_r14_s::add_spec_emission_v2x_r14_c_"); @@ -6740,14 +6734,14 @@ SRSASN_CODE sl_inter_freq_info_v2x_r14_s::add_spec_emission_v2x_r14_c_::pack(bit SRSASN_CODE sl_inter_freq_info_v2x_r14_s::add_spec_emission_v2x_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::add_spec_emission_r14: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)1u, (uint8_t)32u)); break; case types::add_spec_emission_v1440: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)33, (uint16_t)288)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)33u, (uint16_t)288u)); break; default: log_invalid_choice_id(type_, "sl_inter_freq_info_v2x_r14_s::add_spec_emission_v2x_r14_c_"); @@ -6855,20 +6849,20 @@ SRSASN_CODE sl_sync_cfg_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(tx_params_r12_present, 1)); HANDLE_CODE(bref.pack(rx_params_ncell_r12_present, 1)); - HANDLE_CODE(pack_enum(bref, sync_cp_len_r12)); - HANDLE_CODE(pack_unalign_integer(bref, sync_offset_ind_r12, (uint8_t)0, (uint8_t)39)); - HANDLE_CODE(pack_unalign_integer(bref, slssid_r12, (uint8_t)0, (uint8_t)167)); + HANDLE_CODE(sync_cp_len_r12.pack(bref)); + HANDLE_CODE(pack_integer(bref, sync_offset_ind_r12, (uint8_t)0u, (uint8_t)39u)); + HANDLE_CODE(pack_integer(bref, slssid_r12, (uint8_t)0u, (uint8_t)167u)); if (tx_params_r12_present) { HANDLE_CODE(bref.pack(tx_params_r12.sync_info_reserved_r12_present, 1)); HANDLE_CODE(tx_params_r12.sync_tx_params_r12.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, tx_params_r12.sync_tx_thresh_ic_r12, (uint8_t)0, (uint8_t)13)); + HANDLE_CODE(pack_integer(bref, tx_params_r12.sync_tx_thresh_ic_r12, (uint8_t)0u, (uint8_t)13u)); if (tx_params_r12.sync_info_reserved_r12_present) { HANDLE_CODE(tx_params_r12.sync_info_reserved_r12.pack(bref)); } } if (rx_params_ncell_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, rx_params_ncell_r12.pci_r12, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_enum(bref, rx_params_ncell_r12.disc_sync_win_r12)); + HANDLE_CODE(pack_integer(bref, rx_params_ncell_r12.pci_r12, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(rx_params_ncell_r12.disc_sync_win_r12.pack(bref)); } if (ext) { @@ -6882,33 +6876,33 @@ SRSASN_CODE sl_sync_cfg_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(sync_tx_periodic_r13_present, 1)); } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(sync_offset_ind_v1430_present, 1)); HANDLE_CODE(bref.pack(gnss_sync_r14_present, 1)); if (sync_offset_ind_v1430_present) { - HANDLE_CODE(pack_unalign_integer(bref, sync_offset_ind_v1430, (uint8_t)40, (uint8_t)159)); + HANDLE_CODE(pack_integer(bref, sync_offset_ind_v1430, (uint8_t)40u, (uint8_t)159u)); } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(sync_offset_ind2_r14_present, 1)); HANDLE_CODE(bref.pack(sync_offset_ind3_r14_present, 1)); if (sync_offset_ind2_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, sync_offset_ind2_r14, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(pack_integer(bref, sync_offset_ind2_r14, (uint8_t)0u, (uint8_t)159u)); } if (sync_offset_ind3_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, sync_offset_ind3_r14, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(pack_integer(bref, sync_offset_ind3_r14, (uint8_t)0u, (uint8_t)159u)); } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(slss_tx_disabled_r15_present, 1)); } @@ -6921,20 +6915,20 @@ SRSASN_CODE sl_sync_cfg_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(tx_params_r12_present, 1)); HANDLE_CODE(bref.unpack(rx_params_ncell_r12_present, 1)); - HANDLE_CODE(unpack_enum(sync_cp_len_r12, bref)); - HANDLE_CODE(unpack_unalign_integer(sync_offset_ind_r12, bref, (uint8_t)0, (uint8_t)39)); - HANDLE_CODE(unpack_unalign_integer(slssid_r12, bref, (uint8_t)0, (uint8_t)167)); + HANDLE_CODE(sync_cp_len_r12.unpack(bref)); + HANDLE_CODE(unpack_integer(sync_offset_ind_r12, bref, (uint8_t)0u, (uint8_t)39u)); + HANDLE_CODE(unpack_integer(slssid_r12, bref, (uint8_t)0u, (uint8_t)167u)); if (tx_params_r12_present) { HANDLE_CODE(bref.unpack(tx_params_r12.sync_info_reserved_r12_present, 1)); HANDLE_CODE(tx_params_r12.sync_tx_params_r12.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(tx_params_r12.sync_tx_thresh_ic_r12, bref, (uint8_t)0, (uint8_t)13)); + HANDLE_CODE(unpack_integer(tx_params_r12.sync_tx_thresh_ic_r12, bref, (uint8_t)0u, (uint8_t)13u)); if (tx_params_r12.sync_info_reserved_r12_present) { HANDLE_CODE(tx_params_r12.sync_info_reserved_r12.unpack(bref)); } } if (rx_params_ncell_r12_present) { - HANDLE_CODE(unpack_unalign_integer(rx_params_ncell_r12.pci_r12, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_enum(rx_params_ncell_r12.disc_sync_win_r12, bref)); + HANDLE_CODE(unpack_integer(rx_params_ncell_r12.pci_r12, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(rx_params_ncell_r12.disc_sync_win_r12.unpack(bref)); } if (ext) { @@ -6942,33 +6936,33 @@ SRSASN_CODE sl_sync_cfg_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(sync_tx_periodic_r13_present, 1)); } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(sync_offset_ind_v1430_present, 1)); HANDLE_CODE(bref.unpack(gnss_sync_r14_present, 1)); if (sync_offset_ind_v1430_present) { - HANDLE_CODE(unpack_unalign_integer(sync_offset_ind_v1430, bref, (uint8_t)40, (uint8_t)159)); + HANDLE_CODE(unpack_integer(sync_offset_ind_v1430, bref, (uint8_t)40u, (uint8_t)159u)); } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(sync_offset_ind2_r14_present, 1)); HANDLE_CODE(bref.unpack(sync_offset_ind3_r14_present, 1)); if (sync_offset_ind2_r14_present) { - HANDLE_CODE(unpack_unalign_integer(sync_offset_ind2_r14, bref, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(unpack_integer(sync_offset_ind2_r14, bref, (uint8_t)0u, (uint8_t)159u)); } if (sync_offset_ind3_r14_present) { - HANDLE_CODE(unpack_unalign_integer(sync_offset_ind3_r14, bref, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(unpack_integer(sync_offset_ind3_r14, bref, (uint8_t)0u, (uint8_t)159u)); } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(slss_tx_disabled_r15_present, 1)); } @@ -7026,14 +7020,14 @@ void sl_sync_cfg_r12_s::to_json(json_writer& j) const SRSASN_CODE ss_rssi_meas_r15_s::pack(bit_ref& bref) const { HANDLE_CODE(meas_slots_r15.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, end_symbol_r15, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, end_symbol_r15, (uint8_t)0u, (uint8_t)3u)); return SRSASN_SUCCESS; } SRSASN_CODE ss_rssi_meas_r15_s::unpack(bit_ref& bref) { HANDLE_CODE(meas_slots_r15.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(end_symbol_r15, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(end_symbol_r15, bref, (uint8_t)0u, (uint8_t)3u)); return SRSASN_SUCCESS; } @@ -7109,7 +7103,7 @@ void sib_type1_v10l0_ies_s::to_json(json_writer& j) const SRSASN_CODE sib_type1_v1310_ies_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(hyper_sfn_r13_present, 1)); - HANDLE_CODE(bref.pack(e_drx_allowed_r13_present, 1)); + HANDLE_CODE(bref.pack(edrx_allowed_r13_present, 1)); HANDLE_CODE(bref.pack(cell_sel_info_ce_r13_present, 1)); HANDLE_CODE(bref.pack(bw_reduced_access_related_info_r13_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); @@ -7126,8 +7120,8 @@ SRSASN_CODE sib_type1_v1310_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(bw_reduced_access_related_info_r13.fdd_ul_sf_bitmap_br_r13_present, 1)); HANDLE_CODE(bref.pack(bw_reduced_access_related_info_r13.si_validity_time_r13_present, 1)); HANDLE_CODE(bref.pack(bw_reduced_access_related_info_r13.sys_info_value_tag_list_r13_present, 1)); - HANDLE_CODE(pack_enum(bref, bw_reduced_access_related_info_r13.si_win_len_br_r13)); - HANDLE_CODE(pack_enum(bref, bw_reduced_access_related_info_r13.si_repeat_pattern_r13)); + HANDLE_CODE(bw_reduced_access_related_info_r13.si_win_len_br_r13.pack(bref)); + HANDLE_CODE(bw_reduced_access_related_info_r13.si_repeat_pattern_r13.pack(bref)); if (bw_reduced_access_related_info_r13.sched_info_list_br_r13_present) { HANDLE_CODE(pack_dyn_seq_of(bref, bw_reduced_access_related_info_r13.sched_info_list_br_r13, 1, 32)); } @@ -7137,15 +7131,11 @@ SRSASN_CODE sib_type1_v1310_ies_s::pack(bit_ref& bref) const if (bw_reduced_access_related_info_r13.fdd_ul_sf_bitmap_br_r13_present) { HANDLE_CODE(bw_reduced_access_related_info_r13.fdd_ul_sf_bitmap_br_r13.pack(bref)); } - HANDLE_CODE( - pack_unalign_integer(bref, bw_reduced_access_related_info_r13.start_symbol_br_r13, (uint8_t)1, (uint8_t)4)); - HANDLE_CODE(pack_enum(bref, bw_reduced_access_related_info_r13.si_hop_cfg_common_r13)); + HANDLE_CODE(pack_integer(bref, bw_reduced_access_related_info_r13.start_symbol_br_r13, (uint8_t)1u, (uint8_t)4u)); + HANDLE_CODE(bw_reduced_access_related_info_r13.si_hop_cfg_common_r13.pack(bref)); if (bw_reduced_access_related_info_r13.sys_info_value_tag_list_r13_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, - bw_reduced_access_related_info_r13.sys_info_value_tag_list_r13, - 1, - 32, - UnalignedIntegerPacker(0, 3))); + HANDLE_CODE(pack_dyn_seq_of( + bref, bw_reduced_access_related_info_r13.sys_info_value_tag_list_r13, 1, 32, integer_packer(0, 3))); } } if (non_crit_ext_present) { @@ -7157,7 +7147,7 @@ SRSASN_CODE sib_type1_v1310_ies_s::pack(bit_ref& bref) const SRSASN_CODE sib_type1_v1310_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(hyper_sfn_r13_present, 1)); - HANDLE_CODE(bref.unpack(e_drx_allowed_r13_present, 1)); + HANDLE_CODE(bref.unpack(edrx_allowed_r13_present, 1)); HANDLE_CODE(bref.unpack(cell_sel_info_ce_r13_present, 1)); HANDLE_CODE(bref.unpack(bw_reduced_access_related_info_r13_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); @@ -7174,8 +7164,8 @@ SRSASN_CODE sib_type1_v1310_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(bw_reduced_access_related_info_r13.fdd_ul_sf_bitmap_br_r13_present, 1)); HANDLE_CODE(bref.unpack(bw_reduced_access_related_info_r13.si_validity_time_r13_present, 1)); HANDLE_CODE(bref.unpack(bw_reduced_access_related_info_r13.sys_info_value_tag_list_r13_present, 1)); - HANDLE_CODE(unpack_enum(bw_reduced_access_related_info_r13.si_win_len_br_r13, bref)); - HANDLE_CODE(unpack_enum(bw_reduced_access_related_info_r13.si_repeat_pattern_r13, bref)); + HANDLE_CODE(bw_reduced_access_related_info_r13.si_win_len_br_r13.unpack(bref)); + HANDLE_CODE(bw_reduced_access_related_info_r13.si_repeat_pattern_r13.unpack(bref)); if (bw_reduced_access_related_info_r13.sched_info_list_br_r13_present) { HANDLE_CODE(unpack_dyn_seq_of(bw_reduced_access_related_info_r13.sched_info_list_br_r13, bref, 1, 32)); } @@ -7185,15 +7175,11 @@ SRSASN_CODE sib_type1_v1310_ies_s::unpack(bit_ref& bref) if (bw_reduced_access_related_info_r13.fdd_ul_sf_bitmap_br_r13_present) { HANDLE_CODE(bw_reduced_access_related_info_r13.fdd_ul_sf_bitmap_br_r13.unpack(bref)); } - HANDLE_CODE( - unpack_unalign_integer(bw_reduced_access_related_info_r13.start_symbol_br_r13, bref, (uint8_t)1, (uint8_t)4)); - HANDLE_CODE(unpack_enum(bw_reduced_access_related_info_r13.si_hop_cfg_common_r13, bref)); + HANDLE_CODE(unpack_integer(bw_reduced_access_related_info_r13.start_symbol_br_r13, bref, (uint8_t)1u, (uint8_t)4u)); + HANDLE_CODE(bw_reduced_access_related_info_r13.si_hop_cfg_common_r13.unpack(bref)); if (bw_reduced_access_related_info_r13.sys_info_value_tag_list_r13_present) { - HANDLE_CODE(unpack_dyn_seq_of(bw_reduced_access_related_info_r13.sys_info_value_tag_list_r13, - bref, - 1, - 32, - UnalignedIntegerPacker(0, 3))); + HANDLE_CODE(unpack_dyn_seq_of( + bw_reduced_access_related_info_r13.sys_info_value_tag_list_r13, bref, 1, 32, integer_packer(0, 3))); } } if (non_crit_ext_present) { @@ -7208,7 +7194,7 @@ void sib_type1_v1310_ies_s::to_json(json_writer& j) const if (hyper_sfn_r13_present) { j.write_str("hyperSFN-r13", hyper_sfn_r13.to_string()); } - if (e_drx_allowed_r13_present) { + if (edrx_allowed_r13_present) { j.write_str("eDRX-Allowed-r13", "true"); } if (cell_sel_info_ce_r13_present) { @@ -7351,7 +7337,7 @@ void sib_type1_v1310_ies_s::bw_reduced_access_related_info_r13_s_::fdd_dl_or_tdd SRSASN_CODE sib_type1_v1310_ies_s::bw_reduced_access_related_info_r13_s_::fdd_dl_or_tdd_sf_bitmap_br_r13_c_::pack( bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sf_pattern10_r13: HANDLE_CODE(c.get >().pack(bref)); @@ -7370,7 +7356,7 @@ SRSASN_CODE sib_type1_v1310_ies_s::bw_reduced_access_related_info_r13_s_::fdd_dl_or_tdd_sf_bitmap_br_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sf_pattern10_r13: @@ -7478,13 +7464,13 @@ SRSASN_CODE thres_list_nr_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(nr_sinr_r15_present, 1)); if (nr_rsrp_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, nr_rsrp_r15, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, nr_rsrp_r15, (uint8_t)0u, (uint8_t)127u)); } if (nr_rsrq_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, nr_rsrq_r15, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, nr_rsrq_r15, (uint8_t)0u, (uint8_t)127u)); } if (nr_sinr_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, nr_sinr_r15, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, nr_sinr_r15, (uint8_t)0u, (uint8_t)127u)); } return SRSASN_SUCCESS; @@ -7496,13 +7482,13 @@ SRSASN_CODE thres_list_nr_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(nr_sinr_r15_present, 1)); if (nr_rsrp_r15_present) { - HANDLE_CODE(unpack_unalign_integer(nr_rsrp_r15, bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(nr_rsrp_r15, bref, (uint8_t)0u, (uint8_t)127u)); } if (nr_rsrq_r15_present) { - HANDLE_CODE(unpack_unalign_integer(nr_rsrq_r15, bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(nr_rsrq_r15, bref, (uint8_t)0u, (uint8_t)127u)); } if (nr_sinr_r15_present) { - HANDLE_CODE(unpack_unalign_integer(nr_sinr_r15, bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(nr_sinr_r15, bref, (uint8_t)0u, (uint8_t)127u)); } return SRSASN_SUCCESS; @@ -7529,7 +7515,7 @@ SRSASN_CODE udt_restricting_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(udt_restricting_time_r13_present, 1)); if (udt_restricting_time_r13_present) { - HANDLE_CODE(pack_enum(bref, udt_restricting_time_r13)); + HANDLE_CODE(udt_restricting_time_r13.pack(bref)); } return SRSASN_SUCCESS; @@ -7540,7 +7526,7 @@ SRSASN_CODE udt_restricting_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(udt_restricting_time_r13_present, 1)); if (udt_restricting_time_r13_present) { - HANDLE_CODE(unpack_enum(udt_restricting_time_r13, bref)); + HANDLE_CODE(udt_restricting_time_r13.unpack(bref)); } return SRSASN_SUCCESS; @@ -7561,18 +7547,18 @@ void udt_restricting_r13_s::to_json(json_writer& j) const SRSASN_CODE ul_ref_sigs_pusch_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(group_hop_enabled, 1)); - HANDLE_CODE(pack_unalign_integer(bref, group_assign_pusch, (uint8_t)0, (uint8_t)29)); + HANDLE_CODE(pack_integer(bref, group_assign_pusch, (uint8_t)0u, (uint8_t)29u)); HANDLE_CODE(bref.pack(seq_hop_enabled, 1)); - HANDLE_CODE(pack_unalign_integer(bref, cyclic_shift, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, cyclic_shift, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } SRSASN_CODE ul_ref_sigs_pusch_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(group_hop_enabled, 1)); - HANDLE_CODE(unpack_unalign_integer(group_assign_pusch, bref, (uint8_t)0, (uint8_t)29)); + HANDLE_CODE(unpack_integer(group_assign_pusch, bref, (uint8_t)0u, (uint8_t)29u)); HANDLE_CODE(bref.unpack(seq_hop_enabled, 1)); - HANDLE_CODE(unpack_unalign_integer(cyclic_shift, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(cyclic_shift, bref, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } @@ -7651,7 +7637,7 @@ SRSASN_CODE ac_barr_per_plmn_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(ssac_barr_for_mmtel_voice_r12_present, 1)); HANDLE_CODE(bref.pack(ssac_barr_for_mmtel_video_r12_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, plmn_id_idx_r12, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(pack_integer(bref, plmn_id_idx_r12, (uint8_t)1u, (uint8_t)6u)); if (ac_barr_info_r12_present) { HANDLE_CODE(bref.pack(ac_barr_info_r12.ac_barr_for_mo_sig_r12_present, 1)); HANDLE_CODE(bref.pack(ac_barr_info_r12.ac_barr_for_mo_data_r12_present, 1)); @@ -7685,7 +7671,7 @@ SRSASN_CODE ac_barr_per_plmn_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ssac_barr_for_mmtel_voice_r12_present, 1)); HANDLE_CODE(bref.unpack(ssac_barr_for_mmtel_video_r12_present, 1)); - HANDLE_CODE(unpack_unalign_integer(plmn_id_idx_r12, bref, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(unpack_integer(plmn_id_idx_r12, bref, (uint8_t)1u, (uint8_t)6u)); if (ac_barr_info_r12_present) { HANDLE_CODE(bref.unpack(ac_barr_info_r12.ac_barr_for_mo_sig_r12_present, 1)); HANDLE_CODE(bref.unpack(ac_barr_info_r12.ac_barr_for_mo_data_r12_present, 1)); @@ -7754,7 +7740,7 @@ void ac_barr_per_plmn_r12_s::to_json(json_writer& j) const // ACDC-BarringPerPLMN-r13 ::= SEQUENCE SRSASN_CODE acdc_barr_per_plmn_r13_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, plmn_id_idx_r13, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(pack_integer(bref, plmn_id_idx_r13, (uint8_t)1u, (uint8_t)6u)); HANDLE_CODE(bref.pack(acdc_only_for_hplmn_r13, 1)); HANDLE_CODE(pack_dyn_seq_of(bref, barr_per_acdc_category_list_r13, 1, 16)); @@ -7762,7 +7748,7 @@ SRSASN_CODE acdc_barr_per_plmn_r13_s::pack(bit_ref& bref) const } SRSASN_CODE acdc_barr_per_plmn_r13_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(plmn_id_idx_r13, bref, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(unpack_integer(plmn_id_idx_r13, bref, (uint8_t)1u, (uint8_t)6u)); HANDLE_CODE(bref.unpack(acdc_only_for_hplmn_r13, 1)); HANDLE_CODE(unpack_dyn_seq_of(barr_per_acdc_category_list_r13, bref, 1, 16)); @@ -7784,13 +7770,13 @@ void acdc_barr_per_plmn_r13_s::to_json(json_writer& j) const // BCCH-Config ::= SEQUENCE SRSASN_CODE bcch_cfg_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, mod_period_coeff)); + HANDLE_CODE(mod_period_coeff.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE bcch_cfg_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(mod_period_coeff, bref)); + HANDLE_CODE(mod_period_coeff.unpack(bref)); return SRSASN_SUCCESS; } @@ -7855,7 +7841,7 @@ SRSASN_CODE carrier_freq_info_utra_fdd_v8h0_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(multi_band_info_list_present, 1)); if (multi_band_info_list_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list, 1, 8, UnalignedIntegerPacker(1, 86))); + HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list, 1, 8, integer_packer(1, 86))); } return SRSASN_SUCCESS; @@ -7865,7 +7851,7 @@ SRSASN_CODE carrier_freq_info_utra_fdd_v8h0_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(multi_band_info_list_present, 1)); if (multi_band_info_list_present) { - HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list, bref, 1, 8, UnalignedIntegerPacker(1, 86))); + HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list, bref, 1, 8, integer_packer(1, 86))); } return SRSASN_SUCCESS; @@ -7900,46 +7886,46 @@ SRSASN_CODE carrier_freq_nr_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(max_rs_idx_cell_qual_r15_present, 1)); HANDLE_CODE(bref.pack(thresh_rs_idx_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r15, (uint32_t)0, (uint32_t)3279165)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r15, (uint32_t)0u, (uint32_t)3279165u)); if (multi_band_info_list_r15_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list_r15, 1, 32, UnalignedIntegerPacker(1, 1024))); + HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list_r15, 1, 32, integer_packer(1, 1024))); } if (multi_band_info_list_sul_r15_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list_sul_r15, 1, 32, UnalignedIntegerPacker(1, 1024))); + HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list_sul_r15, 1, 32, integer_packer(1, 1024))); } if (meas_timing_cfg_r15_present) { HANDLE_CODE(meas_timing_cfg_r15.pack(bref)); } - HANDLE_CODE(pack_enum(bref, subcarrier_spacing_ssb_r15)); + HANDLE_CODE(subcarrier_spacing_ssb_r15.pack(bref)); if (ss_rssi_meas_r15_present) { HANDLE_CODE(ss_rssi_meas_r15.pack(bref)); } if (cell_resel_prio_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_prio_r15, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, cell_resel_prio_r15, (uint8_t)0u, (uint8_t)7u)); } if (cell_resel_sub_prio_r15_present) { - HANDLE_CODE(pack_enum(bref, cell_resel_sub_prio_r15)); + HANDLE_CODE(cell_resel_sub_prio_r15.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_high_r15, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_low_r15, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, thresh_x_high_r15, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, thresh_x_low_r15, (uint8_t)0u, (uint8_t)31u)); if (thresh_x_q_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_q_r15.thresh_x_high_q_r15, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_q_r15.thresh_x_low_q_r15, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, thresh_x_q_r15.thresh_x_high_q_r15, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, thresh_x_q_r15.thresh_x_low_q_r15, (uint8_t)0u, (uint8_t)31u)); } - HANDLE_CODE(pack_unalign_integer(bref, q_rx_lev_min_r15, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(pack_integer(bref, q_rx_lev_min_r15, (int8_t)-70, (int8_t)-22)); if (q_rx_lev_min_sul_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, q_rx_lev_min_sul_r15, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(pack_integer(bref, q_rx_lev_min_sul_r15, (int8_t)-70, (int8_t)-22)); } - HANDLE_CODE(pack_unalign_integer(bref, p_max_nr_r15, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, p_max_nr_r15, (int8_t)-30, (int8_t)33)); if (ns_pmax_list_nr_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, ns_pmax_list_nr_r15, 1, 8)); } if (q_qual_min_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, q_qual_min_r15, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(pack_integer(bref, q_qual_min_r15, (int8_t)-34, (int8_t)-3)); } HANDLE_CODE(bref.pack(derive_ssb_idx_from_cell_r15, 1)); if (max_rs_idx_cell_qual_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, max_rs_idx_cell_qual_r15, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(pack_integer(bref, max_rs_idx_cell_qual_r15, (uint8_t)1u, (uint8_t)16u)); } if (thresh_rs_idx_r15_present) { HANDLE_CODE(thresh_rs_idx_r15.pack(bref)); @@ -7963,47 +7949,46 @@ SRSASN_CODE carrier_freq_nr_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(max_rs_idx_cell_qual_r15_present, 1)); HANDLE_CODE(bref.unpack(thresh_rs_idx_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r15, bref, (uint32_t)0, (uint32_t)3279165)); + HANDLE_CODE(unpack_integer(carrier_freq_r15, bref, (uint32_t)0u, (uint32_t)3279165u)); if (multi_band_info_list_r15_present) { - HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list_r15, bref, 1, 32, UnalignedIntegerPacker(1, 1024))); + HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list_r15, bref, 1, 32, integer_packer(1, 1024))); } if (multi_band_info_list_sul_r15_present) { - HANDLE_CODE( - unpack_dyn_seq_of(multi_band_info_list_sul_r15, bref, 1, 32, UnalignedIntegerPacker(1, 1024))); + HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list_sul_r15, bref, 1, 32, integer_packer(1, 1024))); } if (meas_timing_cfg_r15_present) { HANDLE_CODE(meas_timing_cfg_r15.unpack(bref)); } - HANDLE_CODE(unpack_enum(subcarrier_spacing_ssb_r15, bref)); + HANDLE_CODE(subcarrier_spacing_ssb_r15.unpack(bref)); if (ss_rssi_meas_r15_present) { HANDLE_CODE(ss_rssi_meas_r15.unpack(bref)); } if (cell_resel_prio_r15_present) { - HANDLE_CODE(unpack_unalign_integer(cell_resel_prio_r15, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(cell_resel_prio_r15, bref, (uint8_t)0u, (uint8_t)7u)); } if (cell_resel_sub_prio_r15_present) { - HANDLE_CODE(unpack_enum(cell_resel_sub_prio_r15, bref)); + HANDLE_CODE(cell_resel_sub_prio_r15.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(thresh_x_high_r15, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(thresh_x_low_r15, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(thresh_x_high_r15, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(thresh_x_low_r15, bref, (uint8_t)0u, (uint8_t)31u)); if (thresh_x_q_r15_present) { - HANDLE_CODE(unpack_unalign_integer(thresh_x_q_r15.thresh_x_high_q_r15, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(thresh_x_q_r15.thresh_x_low_q_r15, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(thresh_x_q_r15.thresh_x_high_q_r15, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(thresh_x_q_r15.thresh_x_low_q_r15, bref, (uint8_t)0u, (uint8_t)31u)); } - HANDLE_CODE(unpack_unalign_integer(q_rx_lev_min_r15, bref, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(unpack_integer(q_rx_lev_min_r15, bref, (int8_t)-70, (int8_t)-22)); if (q_rx_lev_min_sul_r15_present) { - HANDLE_CODE(unpack_unalign_integer(q_rx_lev_min_sul_r15, bref, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(unpack_integer(q_rx_lev_min_sul_r15, bref, (int8_t)-70, (int8_t)-22)); } - HANDLE_CODE(unpack_unalign_integer(p_max_nr_r15, bref, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(unpack_integer(p_max_nr_r15, bref, (int8_t)-30, (int8_t)33)); if (ns_pmax_list_nr_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(ns_pmax_list_nr_r15, bref, 1, 8)); } if (q_qual_min_r15_present) { - HANDLE_CODE(unpack_unalign_integer(q_qual_min_r15, bref, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(unpack_integer(q_qual_min_r15, bref, (int8_t)-34, (int8_t)-3)); } HANDLE_CODE(bref.unpack(derive_ssb_idx_from_cell_r15, 1)); if (max_rs_idx_cell_qual_r15_present) { - HANDLE_CODE(unpack_unalign_integer(max_rs_idx_cell_qual_r15, bref, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(unpack_integer(max_rs_idx_cell_qual_r15, bref, (uint8_t)1u, (uint8_t)16u)); } if (thresh_rs_idx_r15_present) { HANDLE_CODE(thresh_rs_idx_r15.unpack(bref)); @@ -8085,15 +8070,15 @@ SRSASN_CODE carrier_freq_utra_fdd_s::pack(bit_ref& bref) const bref.pack(ext, 1); HANDLE_CODE(bref.pack(cell_resel_prio_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(pack_integer(bref, carrier_freq, (uint16_t)0u, (uint16_t)16383u)); if (cell_resel_prio_present) { - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_prio, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, cell_resel_prio, (uint8_t)0u, (uint8_t)7u)); } - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_high, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_low, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, q_rx_lev_min, (int8_t)-60, (int8_t)-13)); - HANDLE_CODE(pack_unalign_integer(bref, p_max_utra, (int8_t)-50, (int8_t)33)); - HANDLE_CODE(pack_unalign_integer(bref, q_qual_min, (int8_t)-24, (int8_t)0)); + HANDLE_CODE(pack_integer(bref, thresh_x_high, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, thresh_x_low, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, q_rx_lev_min, (int8_t)-60, (int8_t)-13)); + HANDLE_CODE(pack_integer(bref, p_max_utra, (int8_t)-50, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, q_qual_min, (int8_t)-24, (int8_t)0)); if (ext) { ext_groups_packer_guard group_flags; @@ -8101,12 +8086,12 @@ SRSASN_CODE carrier_freq_utra_fdd_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(thresh_x_q_r9.is_present(), 1)); if (thresh_x_q_r9.is_present()) { - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_q_r9->thresh_x_high_q_r9, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_q_r9->thresh_x_low_q_r9, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, thresh_x_q_r9->thresh_x_high_q_r9, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, thresh_x_q_r9->thresh_x_low_q_r9, (uint8_t)0u, (uint8_t)31u)); } } } @@ -8117,29 +8102,29 @@ SRSASN_CODE carrier_freq_utra_fdd_s::unpack(bit_ref& bref) bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(cell_resel_prio_present, 1)); - HANDLE_CODE(unpack_unalign_integer(carrier_freq, bref, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(unpack_integer(carrier_freq, bref, (uint16_t)0u, (uint16_t)16383u)); if (cell_resel_prio_present) { - HANDLE_CODE(unpack_unalign_integer(cell_resel_prio, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(cell_resel_prio, bref, (uint8_t)0u, (uint8_t)7u)); } - HANDLE_CODE(unpack_unalign_integer(thresh_x_high, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(thresh_x_low, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(q_rx_lev_min, bref, (int8_t)-60, (int8_t)-13)); - HANDLE_CODE(unpack_unalign_integer(p_max_utra, bref, (int8_t)-50, (int8_t)33)); - HANDLE_CODE(unpack_unalign_integer(q_qual_min, bref, (int8_t)-24, (int8_t)0)); + HANDLE_CODE(unpack_integer(thresh_x_high, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(thresh_x_low, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(q_rx_lev_min, bref, (int8_t)-60, (int8_t)-13)); + HANDLE_CODE(unpack_integer(p_max_utra, bref, (int8_t)-50, (int8_t)33)); + HANDLE_CODE(unpack_integer(q_qual_min, bref, (int8_t)-24, (int8_t)0)); if (ext) { ext_groups_unpacker_guard group_flags(1); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool thresh_x_q_r9_present; HANDLE_CODE(bref.unpack(thresh_x_q_r9_present, 1)); thresh_x_q_r9.set_present(thresh_x_q_r9_present); if (thresh_x_q_r9.is_present()) { - HANDLE_CODE(unpack_unalign_integer(thresh_x_q_r9->thresh_x_high_q_r9, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(thresh_x_q_r9->thresh_x_low_q_r9, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(thresh_x_q_r9->thresh_x_high_q_r9, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(thresh_x_q_r9->thresh_x_low_q_r9, bref, (uint8_t)0u, (uint8_t)31u)); } } } @@ -8178,21 +8163,21 @@ SRSASN_CODE carrier_freq_utra_fdd_ext_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(multi_band_info_list_r12_present, 1)); HANDLE_CODE(bref.pack(reduced_meas_performance_r12_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r12, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r12, (uint16_t)0u, (uint16_t)16383u)); if (cell_resel_prio_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_prio_r12, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, cell_resel_prio_r12, (uint8_t)0u, (uint8_t)7u)); } - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_high_r12, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_low_r12, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, q_rx_lev_min_r12, (int8_t)-60, (int8_t)-13)); - HANDLE_CODE(pack_unalign_integer(bref, p_max_utra_r12, (int8_t)-50, (int8_t)33)); - HANDLE_CODE(pack_unalign_integer(bref, q_qual_min_r12, (int8_t)-24, (int8_t)0)); + HANDLE_CODE(pack_integer(bref, thresh_x_high_r12, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, thresh_x_low_r12, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, q_rx_lev_min_r12, (int8_t)-60, (int8_t)-13)); + HANDLE_CODE(pack_integer(bref, p_max_utra_r12, (int8_t)-50, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, q_qual_min_r12, (int8_t)-24, (int8_t)0)); if (thresh_x_q_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_q_r12.thresh_x_high_q_r12, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_q_r12.thresh_x_low_q_r12, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, thresh_x_q_r12.thresh_x_high_q_r12, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, thresh_x_q_r12.thresh_x_low_q_r12, (uint8_t)0u, (uint8_t)31u)); } if (multi_band_info_list_r12_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list_r12, 1, 8, UnalignedIntegerPacker(1, 86))); + HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list_r12, 1, 8, integer_packer(1, 86))); } return SRSASN_SUCCESS; @@ -8205,21 +8190,21 @@ SRSASN_CODE carrier_freq_utra_fdd_ext_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(multi_band_info_list_r12_present, 1)); HANDLE_CODE(bref.unpack(reduced_meas_performance_r12_present, 1)); - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r12, bref, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(unpack_integer(carrier_freq_r12, bref, (uint16_t)0u, (uint16_t)16383u)); if (cell_resel_prio_r12_present) { - HANDLE_CODE(unpack_unalign_integer(cell_resel_prio_r12, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(cell_resel_prio_r12, bref, (uint8_t)0u, (uint8_t)7u)); } - HANDLE_CODE(unpack_unalign_integer(thresh_x_high_r12, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(thresh_x_low_r12, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(q_rx_lev_min_r12, bref, (int8_t)-60, (int8_t)-13)); - HANDLE_CODE(unpack_unalign_integer(p_max_utra_r12, bref, (int8_t)-50, (int8_t)33)); - HANDLE_CODE(unpack_unalign_integer(q_qual_min_r12, bref, (int8_t)-24, (int8_t)0)); + HANDLE_CODE(unpack_integer(thresh_x_high_r12, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(thresh_x_low_r12, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(q_rx_lev_min_r12, bref, (int8_t)-60, (int8_t)-13)); + HANDLE_CODE(unpack_integer(p_max_utra_r12, bref, (int8_t)-50, (int8_t)33)); + HANDLE_CODE(unpack_integer(q_qual_min_r12, bref, (int8_t)-24, (int8_t)0)); if (thresh_x_q_r12_present) { - HANDLE_CODE(unpack_unalign_integer(thresh_x_q_r12.thresh_x_high_q_r12, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(thresh_x_q_r12.thresh_x_low_q_r12, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(thresh_x_q_r12.thresh_x_high_q_r12, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(thresh_x_q_r12.thresh_x_low_q_r12, bref, (uint8_t)0u, (uint8_t)31u)); } if (multi_band_info_list_r12_present) { - HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list_r12, bref, 1, 8, UnalignedIntegerPacker(1, 86))); + HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list_r12, bref, 1, 8, integer_packer(1, 86))); } return SRSASN_SUCCESS; @@ -8262,14 +8247,14 @@ SRSASN_CODE carrier_freq_utra_tdd_s::pack(bit_ref& bref) const bref.pack(ext, 1); HANDLE_CODE(bref.pack(cell_resel_prio_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(pack_integer(bref, carrier_freq, (uint16_t)0u, (uint16_t)16383u)); if (cell_resel_prio_present) { - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_prio, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, cell_resel_prio, (uint8_t)0u, (uint8_t)7u)); } - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_high, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_low, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, q_rx_lev_min, (int8_t)-60, (int8_t)-13)); - HANDLE_CODE(pack_unalign_integer(bref, p_max_utra, (int8_t)-50, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, thresh_x_high, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, thresh_x_low, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, q_rx_lev_min, (int8_t)-60, (int8_t)-13)); + HANDLE_CODE(pack_integer(bref, p_max_utra, (int8_t)-50, (int8_t)33)); return SRSASN_SUCCESS; } @@ -8278,14 +8263,14 @@ SRSASN_CODE carrier_freq_utra_tdd_s::unpack(bit_ref& bref) bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(cell_resel_prio_present, 1)); - HANDLE_CODE(unpack_unalign_integer(carrier_freq, bref, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(unpack_integer(carrier_freq, bref, (uint16_t)0u, (uint16_t)16383u)); if (cell_resel_prio_present) { - HANDLE_CODE(unpack_unalign_integer(cell_resel_prio, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(cell_resel_prio, bref, (uint8_t)0u, (uint8_t)7u)); } - HANDLE_CODE(unpack_unalign_integer(thresh_x_high, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(thresh_x_low, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(q_rx_lev_min, bref, (int8_t)-60, (int8_t)-13)); - HANDLE_CODE(unpack_unalign_integer(p_max_utra, bref, (int8_t)-50, (int8_t)33)); + HANDLE_CODE(unpack_integer(thresh_x_high, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(thresh_x_low, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(q_rx_lev_min, bref, (int8_t)-60, (int8_t)-13)); + HANDLE_CODE(unpack_integer(p_max_utra, bref, (int8_t)-50, (int8_t)33)); return SRSASN_SUCCESS; } @@ -8310,14 +8295,14 @@ SRSASN_CODE carrier_freq_utra_tdd_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(cell_resel_prio_r12_present, 1)); HANDLE_CODE(bref.pack(reduced_meas_performance_r12_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r12, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r12, (uint16_t)0u, (uint16_t)16383u)); if (cell_resel_prio_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_prio_r12, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, cell_resel_prio_r12, (uint8_t)0u, (uint8_t)7u)); } - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_high_r12, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_low_r12, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, q_rx_lev_min_r12, (int8_t)-60, (int8_t)-13)); - HANDLE_CODE(pack_unalign_integer(bref, p_max_utra_r12, (int8_t)-50, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, thresh_x_high_r12, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, thresh_x_low_r12, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, q_rx_lev_min_r12, (int8_t)-60, (int8_t)-13)); + HANDLE_CODE(pack_integer(bref, p_max_utra_r12, (int8_t)-50, (int8_t)33)); return SRSASN_SUCCESS; } @@ -8327,14 +8312,14 @@ SRSASN_CODE carrier_freq_utra_tdd_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(cell_resel_prio_r12_present, 1)); HANDLE_CODE(bref.unpack(reduced_meas_performance_r12_present, 1)); - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r12, bref, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(unpack_integer(carrier_freq_r12, bref, (uint16_t)0u, (uint16_t)16383u)); if (cell_resel_prio_r12_present) { - HANDLE_CODE(unpack_unalign_integer(cell_resel_prio_r12, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(cell_resel_prio_r12, bref, (uint8_t)0u, (uint8_t)7u)); } - HANDLE_CODE(unpack_unalign_integer(thresh_x_high_r12, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(thresh_x_low_r12, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(q_rx_lev_min_r12, bref, (int8_t)-60, (int8_t)-13)); - HANDLE_CODE(unpack_unalign_integer(p_max_utra_r12, bref, (int8_t)-50, (int8_t)33)); + HANDLE_CODE(unpack_integer(thresh_x_high_r12, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(thresh_x_low_r12, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(q_rx_lev_min_r12, bref, (int8_t)-60, (int8_t)-13)); + HANDLE_CODE(unpack_integer(p_max_utra_r12, bref, (int8_t)-50, (int8_t)33)); return SRSASN_SUCCESS; } @@ -8363,15 +8348,15 @@ SRSASN_CODE carrier_freqs_info_geran_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(common_info.cell_resel_prio_present, 1)); HANDLE_CODE(bref.pack(common_info.p_max_geran_present, 1)); if (common_info.cell_resel_prio_present) { - HANDLE_CODE(pack_unalign_integer(bref, common_info.cell_resel_prio, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, common_info.cell_resel_prio, (uint8_t)0u, (uint8_t)7u)); } HANDLE_CODE(common_info.ncc_permitted.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, common_info.q_rx_lev_min, (uint8_t)0, (uint8_t)45)); + HANDLE_CODE(pack_integer(bref, common_info.q_rx_lev_min, (uint8_t)0u, (uint8_t)45u)); if (common_info.p_max_geran_present) { - HANDLE_CODE(pack_unalign_integer(bref, common_info.p_max_geran, (uint8_t)0, (uint8_t)39)); + HANDLE_CODE(pack_integer(bref, common_info.p_max_geran, (uint8_t)0u, (uint8_t)39u)); } - HANDLE_CODE(pack_unalign_integer(bref, common_info.thresh_x_high, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, common_info.thresh_x_low, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, common_info.thresh_x_high, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, common_info.thresh_x_low, (uint8_t)0u, (uint8_t)31u)); return SRSASN_SUCCESS; } @@ -8382,15 +8367,15 @@ SRSASN_CODE carrier_freqs_info_geran_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(common_info.cell_resel_prio_present, 1)); HANDLE_CODE(bref.unpack(common_info.p_max_geran_present, 1)); if (common_info.cell_resel_prio_present) { - HANDLE_CODE(unpack_unalign_integer(common_info.cell_resel_prio, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(common_info.cell_resel_prio, bref, (uint8_t)0u, (uint8_t)7u)); } HANDLE_CODE(common_info.ncc_permitted.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(common_info.q_rx_lev_min, bref, (uint8_t)0, (uint8_t)45)); + HANDLE_CODE(unpack_integer(common_info.q_rx_lev_min, bref, (uint8_t)0u, (uint8_t)45u)); if (common_info.p_max_geran_present) { - HANDLE_CODE(unpack_unalign_integer(common_info.p_max_geran, bref, (uint8_t)0, (uint8_t)39)); + HANDLE_CODE(unpack_integer(common_info.p_max_geran, bref, (uint8_t)0u, (uint8_t)39u)); } - HANDLE_CODE(unpack_unalign_integer(common_info.thresh_x_high, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(common_info.thresh_x_low, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(common_info.thresh_x_high, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(common_info.thresh_x_low, bref, (uint8_t)0u, (uint8_t)31u)); return SRSASN_SUCCESS; } @@ -8418,13 +8403,13 @@ void carrier_freqs_info_geran_s::to_json(json_writer& j) const // CellSelectionInfo-v1130 ::= SEQUENCE SRSASN_CODE cell_sel_info_v1130_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, q_qual_min_wb_r11, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(pack_integer(bref, q_qual_min_wb_r11, (int8_t)-34, (int8_t)-3)); return SRSASN_SUCCESS; } SRSASN_CODE cell_sel_info_v1130_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(q_qual_min_wb_r11, bref, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(unpack_integer(q_qual_min_wb_r11, bref, (int8_t)-34, (int8_t)-3)); return SRSASN_SUCCESS; } @@ -8438,14 +8423,14 @@ void cell_sel_info_v1130_s::to_json(json_writer& j) const // EAB-Config-r11 ::= SEQUENCE SRSASN_CODE eab_cfg_r11_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, eab_category_r11)); + HANDLE_CODE(eab_category_r11.pack(bref)); HANDLE_CODE(eab_barr_bitmap_r11.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE eab_cfg_r11_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(eab_category_r11, bref)); + HANDLE_CODE(eab_category_r11.unpack(bref)); HANDLE_CODE(eab_barr_bitmap_r11.unpack(bref)); return SRSASN_SUCCESS; @@ -8469,7 +8454,7 @@ SRSASN_CODE freq_hop_params_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(dummy4_present, 1)); if (dummy_present) { - HANDLE_CODE(pack_enum(bref, dummy)); + HANDLE_CODE(dummy.pack(bref)); } if (dummy2_present) { HANDLE_CODE(dummy2.pack(bref)); @@ -8484,7 +8469,7 @@ SRSASN_CODE freq_hop_params_r13_s::pack(bit_ref& bref) const HANDLE_CODE(interv_ul_hop_cfg_common_mode_b_r13.pack(bref)); } if (dummy4_present) { - HANDLE_CODE(pack_unalign_integer(bref, dummy4, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(pack_integer(bref, dummy4, (uint8_t)1u, (uint8_t)16u)); } return SRSASN_SUCCESS; @@ -8499,7 +8484,7 @@ SRSASN_CODE freq_hop_params_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(dummy4_present, 1)); if (dummy_present) { - HANDLE_CODE(unpack_enum(dummy, bref)); + HANDLE_CODE(dummy.unpack(bref)); } if (dummy2_present) { HANDLE_CODE(dummy2.unpack(bref)); @@ -8514,7 +8499,7 @@ SRSASN_CODE freq_hop_params_r13_s::unpack(bit_ref& bref) HANDLE_CODE(interv_ul_hop_cfg_common_mode_b_r13.unpack(bref)); } if (dummy4_present) { - HANDLE_CODE(unpack_unalign_integer(dummy4, bref, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(unpack_integer(dummy4, bref, (uint8_t)1u, (uint8_t)16u)); } return SRSASN_SUCCESS; @@ -8608,13 +8593,13 @@ void freq_hop_params_r13_s::dummy2_c_::to_json(json_writer& j) const } SRSASN_CODE freq_hop_params_r13_s::dummy2_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::interv_fdd_r13: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; case types::interv_tdd_r13: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; default: log_invalid_choice_id(type_, "freq_hop_params_r13_s::dummy2_c_"); @@ -8625,14 +8610,14 @@ SRSASN_CODE freq_hop_params_r13_s::dummy2_c_::pack(bit_ref& bref) const SRSASN_CODE freq_hop_params_r13_s::dummy2_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::interv_fdd_r13: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; case types::interv_tdd_r13: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; default: log_invalid_choice_id(type_, "freq_hop_params_r13_s::dummy2_c_"); @@ -8702,13 +8687,13 @@ void freq_hop_params_r13_s::dummy3_c_::to_json(json_writer& j) const } SRSASN_CODE freq_hop_params_r13_s::dummy3_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::interv_fdd_r13: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; case types::interv_tdd_r13: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; default: log_invalid_choice_id(type_, "freq_hop_params_r13_s::dummy3_c_"); @@ -8719,14 +8704,14 @@ SRSASN_CODE freq_hop_params_r13_s::dummy3_c_::pack(bit_ref& bref) const SRSASN_CODE freq_hop_params_r13_s::dummy3_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::interv_fdd_r13: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; case types::interv_tdd_r13: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; default: log_invalid_choice_id(type_, "freq_hop_params_r13_s::dummy3_c_"); @@ -8798,13 +8783,13 @@ void freq_hop_params_r13_s::interv_ul_hop_cfg_common_mode_a_r13_c_::to_json(json } SRSASN_CODE freq_hop_params_r13_s::interv_ul_hop_cfg_common_mode_a_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::interv_fdd_r13: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; case types::interv_tdd_r13: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; default: log_invalid_choice_id(type_, "freq_hop_params_r13_s::interv_ul_hop_cfg_common_mode_a_r13_c_"); @@ -8815,14 +8800,14 @@ SRSASN_CODE freq_hop_params_r13_s::interv_ul_hop_cfg_common_mode_a_r13_c_::pack( SRSASN_CODE freq_hop_params_r13_s::interv_ul_hop_cfg_common_mode_a_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::interv_fdd_r13: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; case types::interv_tdd_r13: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; default: log_invalid_choice_id(type_, "freq_hop_params_r13_s::interv_ul_hop_cfg_common_mode_a_r13_c_"); @@ -8894,13 +8879,13 @@ void freq_hop_params_r13_s::interv_ul_hop_cfg_common_mode_b_r13_c_::to_json(json } SRSASN_CODE freq_hop_params_r13_s::interv_ul_hop_cfg_common_mode_b_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::interv_fdd_r13: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; case types::interv_tdd_r13: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; default: log_invalid_choice_id(type_, "freq_hop_params_r13_s::interv_ul_hop_cfg_common_mode_b_r13_c_"); @@ -8911,14 +8896,14 @@ SRSASN_CODE freq_hop_params_r13_s::interv_ul_hop_cfg_common_mode_b_r13_c_::pack( SRSASN_CODE freq_hop_params_r13_s::interv_ul_hop_cfg_common_mode_b_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::interv_fdd_r13: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; case types::interv_tdd_r13: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; default: log_invalid_choice_id(type_, "freq_hop_params_r13_s::interv_ul_hop_cfg_common_mode_b_r13_c_"); @@ -8981,25 +8966,25 @@ SRSASN_CODE inter_freq_carrier_freq_info_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(inter_freq_neigh_cell_list_present, 1)); HANDLE_CODE(bref.pack(inter_freq_black_cell_list_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, dl_carrier_freq, (uint16_t)0, (uint16_t)65535)); - HANDLE_CODE(pack_unalign_integer(bref, q_rx_lev_min, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(pack_integer(bref, dl_carrier_freq, (uint32_t)0u, (uint32_t)65535u)); + HANDLE_CODE(pack_integer(bref, q_rx_lev_min, (int8_t)-70, (int8_t)-22)); if (p_max_present) { - HANDLE_CODE(pack_unalign_integer(bref, p_max, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, p_max, (int8_t)-30, (int8_t)33)); } - HANDLE_CODE(pack_unalign_integer(bref, t_resel_eutra, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, t_resel_eutra, (uint8_t)0u, (uint8_t)7u)); if (t_resel_eutra_sf_present) { HANDLE_CODE(t_resel_eutra_sf.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_high, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_low, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_enum(bref, allowed_meas_bw)); + HANDLE_CODE(pack_integer(bref, thresh_x_high, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, thresh_x_low, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(allowed_meas_bw.pack(bref)); HANDLE_CODE(bref.pack(presence_ant_port1, 1)); if (cell_resel_prio_present) { - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_prio, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, cell_resel_prio, (uint8_t)0u, (uint8_t)7u)); } HANDLE_CODE(neigh_cell_cfg.pack(bref)); if (q_offset_freq_present) { - HANDLE_CODE(pack_enum(bref, q_offset_freq)); + HANDLE_CODE(q_offset_freq.pack(bref)); } if (inter_freq_neigh_cell_list_present) { HANDLE_CODE(pack_dyn_seq_of(bref, inter_freq_neigh_cell_list, 1, 16)); @@ -9016,24 +9001,24 @@ SRSASN_CODE inter_freq_carrier_freq_info_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(q_qual_min_r9_present, 1)); HANDLE_CODE(bref.pack(thresh_x_q_r9.is_present(), 1)); if (q_qual_min_r9_present) { - HANDLE_CODE(pack_unalign_integer(bref, q_qual_min_r9, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(pack_integer(bref, q_qual_min_r9, (int8_t)-34, (int8_t)-3)); } if (thresh_x_q_r9.is_present()) { - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_q_r9->thresh_x_high_q_r9, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_q_r9->thresh_x_low_q_r9, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, thresh_x_q_r9->thresh_x_high_q_r9, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, thresh_x_q_r9->thresh_x_low_q_r9, (uint8_t)0u, (uint8_t)31u)); } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(q_qual_min_wb_r11_present, 1)); if (q_qual_min_wb_r11_present) { - HANDLE_CODE(pack_unalign_integer(bref, q_qual_min_wb_r11, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(pack_integer(bref, q_qual_min_wb_r11, (int8_t)-34, (int8_t)-3)); } } } @@ -9049,25 +9034,25 @@ SRSASN_CODE inter_freq_carrier_freq_info_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(inter_freq_neigh_cell_list_present, 1)); HANDLE_CODE(bref.unpack(inter_freq_black_cell_list_present, 1)); - HANDLE_CODE(unpack_unalign_integer(dl_carrier_freq, bref, (uint16_t)0, (uint16_t)65535)); - HANDLE_CODE(unpack_unalign_integer(q_rx_lev_min, bref, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(unpack_integer(dl_carrier_freq, bref, (uint32_t)0u, (uint32_t)65535u)); + HANDLE_CODE(unpack_integer(q_rx_lev_min, bref, (int8_t)-70, (int8_t)-22)); if (p_max_present) { - HANDLE_CODE(unpack_unalign_integer(p_max, bref, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(unpack_integer(p_max, bref, (int8_t)-30, (int8_t)33)); } - HANDLE_CODE(unpack_unalign_integer(t_resel_eutra, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(t_resel_eutra, bref, (uint8_t)0u, (uint8_t)7u)); if (t_resel_eutra_sf_present) { HANDLE_CODE(t_resel_eutra_sf.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(thresh_x_high, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(thresh_x_low, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_enum(allowed_meas_bw, bref)); + HANDLE_CODE(unpack_integer(thresh_x_high, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(thresh_x_low, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(allowed_meas_bw.unpack(bref)); HANDLE_CODE(bref.unpack(presence_ant_port1, 1)); if (cell_resel_prio_present) { - HANDLE_CODE(unpack_unalign_integer(cell_resel_prio, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(cell_resel_prio, bref, (uint8_t)0u, (uint8_t)7u)); } HANDLE_CODE(neigh_cell_cfg.unpack(bref)); if (q_offset_freq_present) { - HANDLE_CODE(unpack_enum(q_offset_freq, bref)); + HANDLE_CODE(q_offset_freq.unpack(bref)); } if (inter_freq_neigh_cell_list_present) { HANDLE_CODE(unpack_dyn_seq_of(inter_freq_neigh_cell_list, bref, 1, 16)); @@ -9081,26 +9066,26 @@ SRSASN_CODE inter_freq_carrier_freq_info_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(q_qual_min_r9_present, 1)); bool thresh_x_q_r9_present; HANDLE_CODE(bref.unpack(thresh_x_q_r9_present, 1)); thresh_x_q_r9.set_present(thresh_x_q_r9_present); if (q_qual_min_r9_present) { - HANDLE_CODE(unpack_unalign_integer(q_qual_min_r9, bref, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(unpack_integer(q_qual_min_r9, bref, (int8_t)-34, (int8_t)-3)); } if (thresh_x_q_r9.is_present()) { - HANDLE_CODE(unpack_unalign_integer(thresh_x_q_r9->thresh_x_high_q_r9, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(thresh_x_q_r9->thresh_x_low_q_r9, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(thresh_x_q_r9->thresh_x_high_q_r9, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(thresh_x_q_r9->thresh_x_low_q_r9, bref, (uint8_t)0u, (uint8_t)31u)); } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(q_qual_min_wb_r11_present, 1)); if (q_qual_min_wb_r11_present) { - HANDLE_CODE(unpack_unalign_integer(q_qual_min_wb_r11, bref, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(unpack_integer(q_qual_min_wb_r11, bref, (int8_t)-34, (int8_t)-3)); } } } @@ -9179,25 +9164,25 @@ SRSASN_CODE inter_freq_carrier_freq_info_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(reduced_meas_performance_r12_present, 1)); HANDLE_CODE(bref.pack(q_qual_min_rsrq_on_all_symbols_r12_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, dl_carrier_freq_r12, (uint32_t)0, (uint32_t)262143)); - HANDLE_CODE(pack_unalign_integer(bref, q_rx_lev_min_r12, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(pack_integer(bref, dl_carrier_freq_r12, (uint32_t)0u, (uint32_t)262143u)); + HANDLE_CODE(pack_integer(bref, q_rx_lev_min_r12, (int8_t)-70, (int8_t)-22)); if (p_max_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, p_max_r12, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, p_max_r12, (int8_t)-30, (int8_t)33)); } - HANDLE_CODE(pack_unalign_integer(bref, t_resel_eutra_r12, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, t_resel_eutra_r12, (uint8_t)0u, (uint8_t)7u)); if (t_resel_eutra_sf_r12_present) { HANDLE_CODE(t_resel_eutra_sf_r12.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_high_r12, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_low_r12, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_enum(bref, allowed_meas_bw_r12)); + HANDLE_CODE(pack_integer(bref, thresh_x_high_r12, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, thresh_x_low_r12, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(allowed_meas_bw_r12.pack(bref)); HANDLE_CODE(bref.pack(presence_ant_port1_r12, 1)); if (cell_resel_prio_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_prio_r12, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, cell_resel_prio_r12, (uint8_t)0u, (uint8_t)7u)); } HANDLE_CODE(neigh_cell_cfg_r12.pack(bref)); if (q_offset_freq_r12_present) { - HANDLE_CODE(pack_enum(bref, q_offset_freq_r12)); + HANDLE_CODE(q_offset_freq_r12.pack(bref)); } if (inter_freq_neigh_cell_list_r12_present) { HANDLE_CODE(pack_dyn_seq_of(bref, inter_freq_neigh_cell_list_r12, 1, 16)); @@ -9206,20 +9191,20 @@ SRSASN_CODE inter_freq_carrier_freq_info_r12_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, inter_freq_black_cell_list_r12, 1, 16)); } if (q_qual_min_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, q_qual_min_r12, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(pack_integer(bref, q_qual_min_r12, (int8_t)-34, (int8_t)-3)); } if (thresh_x_q_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_q_r12.thresh_x_high_q_r12, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, thresh_x_q_r12.thresh_x_low_q_r12, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, thresh_x_q_r12.thresh_x_high_q_r12, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, thresh_x_q_r12.thresh_x_low_q_r12, (uint8_t)0u, (uint8_t)31u)); } if (q_qual_min_wb_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, q_qual_min_wb_r12, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(pack_integer(bref, q_qual_min_wb_r12, (int8_t)-34, (int8_t)-3)); } if (multi_band_info_list_r12_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list_r12, 1, 8, UnalignedIntegerPacker(1, 256))); + HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list_r12, 1, 8, integer_packer(1, 256))); } if (q_qual_min_rsrq_on_all_symbols_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, q_qual_min_rsrq_on_all_symbols_r12, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(pack_integer(bref, q_qual_min_rsrq_on_all_symbols_r12, (int8_t)-34, (int8_t)-3)); } return SRSASN_SUCCESS; @@ -9240,25 +9225,25 @@ SRSASN_CODE inter_freq_carrier_freq_info_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(reduced_meas_performance_r12_present, 1)); HANDLE_CODE(bref.unpack(q_qual_min_rsrq_on_all_symbols_r12_present, 1)); - HANDLE_CODE(unpack_unalign_integer(dl_carrier_freq_r12, bref, (uint32_t)0, (uint32_t)262143)); - HANDLE_CODE(unpack_unalign_integer(q_rx_lev_min_r12, bref, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(unpack_integer(dl_carrier_freq_r12, bref, (uint32_t)0u, (uint32_t)262143u)); + HANDLE_CODE(unpack_integer(q_rx_lev_min_r12, bref, (int8_t)-70, (int8_t)-22)); if (p_max_r12_present) { - HANDLE_CODE(unpack_unalign_integer(p_max_r12, bref, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(unpack_integer(p_max_r12, bref, (int8_t)-30, (int8_t)33)); } - HANDLE_CODE(unpack_unalign_integer(t_resel_eutra_r12, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(t_resel_eutra_r12, bref, (uint8_t)0u, (uint8_t)7u)); if (t_resel_eutra_sf_r12_present) { HANDLE_CODE(t_resel_eutra_sf_r12.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(thresh_x_high_r12, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(thresh_x_low_r12, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_enum(allowed_meas_bw_r12, bref)); + HANDLE_CODE(unpack_integer(thresh_x_high_r12, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(thresh_x_low_r12, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(allowed_meas_bw_r12.unpack(bref)); HANDLE_CODE(bref.unpack(presence_ant_port1_r12, 1)); if (cell_resel_prio_r12_present) { - HANDLE_CODE(unpack_unalign_integer(cell_resel_prio_r12, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(cell_resel_prio_r12, bref, (uint8_t)0u, (uint8_t)7u)); } HANDLE_CODE(neigh_cell_cfg_r12.unpack(bref)); if (q_offset_freq_r12_present) { - HANDLE_CODE(unpack_enum(q_offset_freq_r12, bref)); + HANDLE_CODE(q_offset_freq_r12.unpack(bref)); } if (inter_freq_neigh_cell_list_r12_present) { HANDLE_CODE(unpack_dyn_seq_of(inter_freq_neigh_cell_list_r12, bref, 1, 16)); @@ -9267,20 +9252,20 @@ SRSASN_CODE inter_freq_carrier_freq_info_r12_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(inter_freq_black_cell_list_r12, bref, 1, 16)); } if (q_qual_min_r12_present) { - HANDLE_CODE(unpack_unalign_integer(q_qual_min_r12, bref, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(unpack_integer(q_qual_min_r12, bref, (int8_t)-34, (int8_t)-3)); } if (thresh_x_q_r12_present) { - HANDLE_CODE(unpack_unalign_integer(thresh_x_q_r12.thresh_x_high_q_r12, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(thresh_x_q_r12.thresh_x_low_q_r12, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(thresh_x_q_r12.thresh_x_high_q_r12, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(thresh_x_q_r12.thresh_x_low_q_r12, bref, (uint8_t)0u, (uint8_t)31u)); } if (q_qual_min_wb_r12_present) { - HANDLE_CODE(unpack_unalign_integer(q_qual_min_wb_r12, bref, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(unpack_integer(q_qual_min_wb_r12, bref, (int8_t)-34, (int8_t)-3)); } if (multi_band_info_list_r12_present) { - HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list_r12, bref, 1, 8, UnalignedIntegerPacker(1, 256))); + HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list_r12, bref, 1, 8, integer_packer(1, 256))); } if (q_qual_min_rsrq_on_all_symbols_r12_present) { - HANDLE_CODE(unpack_unalign_integer(q_qual_min_rsrq_on_all_symbols_r12, bref, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(unpack_integer(q_qual_min_rsrq_on_all_symbols_r12, bref, (int8_t)-34, (int8_t)-3)); } return SRSASN_SUCCESS; @@ -9359,7 +9344,7 @@ SRSASN_CODE inter_freq_carrier_freq_info_v1250_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(q_qual_min_rsrq_on_all_symbols_r12_present, 1)); if (q_qual_min_rsrq_on_all_symbols_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, q_qual_min_rsrq_on_all_symbols_r12, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(pack_integer(bref, q_qual_min_rsrq_on_all_symbols_r12, (int8_t)-34, (int8_t)-3)); } return SRSASN_SUCCESS; @@ -9370,7 +9355,7 @@ SRSASN_CODE inter_freq_carrier_freq_info_v1250_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(q_qual_min_rsrq_on_all_symbols_r12_present, 1)); if (q_qual_min_rsrq_on_all_symbols_r12_present) { - HANDLE_CODE(unpack_unalign_integer(q_qual_min_rsrq_on_all_symbols_r12, bref, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(unpack_integer(q_qual_min_rsrq_on_all_symbols_r12, bref, (int8_t)-34, (int8_t)-3)); } return SRSASN_SUCCESS; @@ -9396,7 +9381,7 @@ SRSASN_CODE inter_freq_carrier_freq_info_v1310_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(t_resel_eutra_ce_r13_present, 1)); if (cell_resel_sub_prio_r13_present) { - HANDLE_CODE(pack_enum(bref, cell_resel_sub_prio_r13)); + HANDLE_CODE(cell_resel_sub_prio_r13.pack(bref)); } if (redist_inter_freq_info_r13_present) { HANDLE_CODE(redist_inter_freq_info_r13.pack(bref)); @@ -9405,7 +9390,7 @@ SRSASN_CODE inter_freq_carrier_freq_info_v1310_s::pack(bit_ref& bref) const HANDLE_CODE(cell_sel_info_ce_r13.pack(bref)); } if (t_resel_eutra_ce_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, t_resel_eutra_ce_r13, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, t_resel_eutra_ce_r13, (uint8_t)0u, (uint8_t)15u)); } return SRSASN_SUCCESS; @@ -9418,7 +9403,7 @@ SRSASN_CODE inter_freq_carrier_freq_info_v1310_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(t_resel_eutra_ce_r13_present, 1)); if (cell_resel_sub_prio_r13_present) { - HANDLE_CODE(unpack_enum(cell_resel_sub_prio_r13, bref)); + HANDLE_CODE(cell_resel_sub_prio_r13.unpack(bref)); } if (redist_inter_freq_info_r13_present) { HANDLE_CODE(redist_inter_freq_info_r13.unpack(bref)); @@ -9427,7 +9412,7 @@ SRSASN_CODE inter_freq_carrier_freq_info_v1310_s::unpack(bit_ref& bref) HANDLE_CODE(cell_sel_info_ce_r13.unpack(bref)); } if (t_resel_eutra_ce_r13_present) { - HANDLE_CODE(unpack_unalign_integer(t_resel_eutra_ce_r13, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(t_resel_eutra_ce_r13, bref, (uint8_t)0u, (uint8_t)15u)); } return SRSASN_SUCCESS; @@ -9538,7 +9523,7 @@ SRSASN_CODE inter_freq_carrier_freq_info_v8h0_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(multi_band_info_list_present, 1)); if (multi_band_info_list_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list, 1, 8, UnalignedIntegerPacker(1, 64))); + HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list, 1, 8, integer_packer(1, 64))); } return SRSASN_SUCCESS; @@ -9548,7 +9533,7 @@ SRSASN_CODE inter_freq_carrier_freq_info_v8h0_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(multi_band_info_list_present, 1)); if (multi_band_info_list_present) { - HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list, bref, 1, 8, UnalignedIntegerPacker(1, 64))); + HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list, bref, 1, 8, integer_packer(1, 64))); } return SRSASN_SUCCESS; @@ -9570,16 +9555,16 @@ void inter_freq_carrier_freq_info_v8h0_s::to_json(json_writer& j) const SRSASN_CODE intra_freq_neigh_cell_info_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, pci, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_enum(bref, q_offset_cell)); + HANDLE_CODE(pack_integer(bref, pci, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(q_offset_cell.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE intra_freq_neigh_cell_info_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(pci, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_enum(q_offset_cell, bref)); + HANDLE_CODE(unpack_integer(pci, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(q_offset_cell.unpack(bref)); return SRSASN_SUCCESS; } @@ -9596,9 +9581,9 @@ SRSASN_CODE mbms_carrier_type_r14_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(frame_offset_r14_present, 1)); - HANDLE_CODE(pack_enum(bref, carrier_type_r14)); + HANDLE_CODE(carrier_type_r14.pack(bref)); if (frame_offset_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, frame_offset_r14, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, frame_offset_r14, (uint8_t)0u, (uint8_t)3u)); } return SRSASN_SUCCESS; @@ -9607,9 +9592,9 @@ SRSASN_CODE mbms_carrier_type_r14_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(frame_offset_r14_present, 1)); - HANDLE_CODE(unpack_enum(carrier_type_r14, bref)); + HANDLE_CODE(carrier_type_r14.unpack(bref)); if (frame_offset_r14_present) { - HANDLE_CODE(unpack_unalign_integer(frame_offset_r14, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(frame_offset_r14, bref, (uint8_t)0u, (uint8_t)3u)); } return SRSASN_SUCCESS; @@ -9627,15 +9612,15 @@ void mbms_carrier_type_r14_s::to_json(json_writer& j) const // MBMS-SAI-InterFreq-r11 ::= SEQUENCE SRSASN_CODE mbms_sai_inter_freq_r11_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, dl_carrier_freq_r11, (uint32_t)0, (uint32_t)262143)); - HANDLE_CODE(pack_dyn_seq_of(bref, mbms_sai_list_r11, 1, 64, UnalignedIntegerPacker(0, 65535))); + HANDLE_CODE(pack_integer(bref, dl_carrier_freq_r11, (uint32_t)0u, (uint32_t)262143u)); + HANDLE_CODE(pack_dyn_seq_of(bref, mbms_sai_list_r11, 1, 64, integer_packer(0, 65535))); return SRSASN_SUCCESS; } SRSASN_CODE mbms_sai_inter_freq_r11_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(dl_carrier_freq_r11, bref, (uint32_t)0, (uint32_t)262143)); - HANDLE_CODE(unpack_dyn_seq_of(mbms_sai_list_r11, bref, 1, 64, UnalignedIntegerPacker(0, 65535))); + HANDLE_CODE(unpack_integer(dl_carrier_freq_r11, bref, (uint32_t)0u, (uint32_t)262143u)); + HANDLE_CODE(unpack_dyn_seq_of(mbms_sai_list_r11, bref, 1, 64, integer_packer(0, 65535))); return SRSASN_SUCCESS; } @@ -9657,7 +9642,7 @@ SRSASN_CODE mbms_sai_inter_freq_v1140_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(multi_band_info_list_r11_present, 1)); if (multi_band_info_list_r11_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list_r11, 1, 8, UnalignedIntegerPacker(1, 256))); + HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list_r11, 1, 8, integer_packer(1, 256))); } return SRSASN_SUCCESS; @@ -9667,7 +9652,7 @@ SRSASN_CODE mbms_sai_inter_freq_v1140_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(multi_band_info_list_r11_present, 1)); if (multi_band_info_list_r11_present) { - HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list_r11, bref, 1, 8, UnalignedIntegerPacker(1, 256))); + HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list_r11, bref, 1, 8, integer_packer(1, 256))); } return SRSASN_SUCCESS; @@ -9689,14 +9674,14 @@ void mbms_sai_inter_freq_v1140_s::to_json(json_writer& j) const SRSASN_CODE mbsfn_area_info_r9_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, mbsfn_area_id_r9, (uint8_t)0, (uint8_t)255)); - HANDLE_CODE(pack_enum(bref, non_mbsfn_region_len)); - HANDLE_CODE(pack_unalign_integer(bref, notif_ind_r9, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(pack_enum(bref, mcch_cfg_r9.mcch_repeat_period_r9)); - HANDLE_CODE(pack_unalign_integer(bref, mcch_cfg_r9.mcch_offset_r9, (uint8_t)0, (uint8_t)10)); - HANDLE_CODE(pack_enum(bref, mcch_cfg_r9.mcch_mod_period_r9)); + HANDLE_CODE(pack_integer(bref, mbsfn_area_id_r9, (uint16_t)0u, (uint16_t)255u)); + HANDLE_CODE(non_mbsfn_region_len.pack(bref)); + HANDLE_CODE(pack_integer(bref, notif_ind_r9, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(mcch_cfg_r9.mcch_repeat_period_r9.pack(bref)); + HANDLE_CODE(pack_integer(bref, mcch_cfg_r9.mcch_offset_r9, (uint8_t)0u, (uint8_t)10u)); + HANDLE_CODE(mcch_cfg_r9.mcch_mod_period_r9.pack(bref)); HANDLE_CODE(mcch_cfg_r9.sf_alloc_info_r9.pack(bref)); - HANDLE_CODE(pack_enum(bref, mcch_cfg_r9.sig_mcs_r9)); + HANDLE_CODE(mcch_cfg_r9.sig_mcs_r9.pack(bref)); if (ext) { ext_groups_packer_guard group_flags; @@ -9705,7 +9690,7 @@ SRSASN_CODE mbsfn_area_info_r9_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(mcch_cfg_r14.is_present(), 1)); HANDLE_CODE(bref.pack(subcarrier_spacing_mbms_r14_present, 1)); @@ -9713,14 +9698,14 @@ SRSASN_CODE mbsfn_area_info_r9_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(mcch_cfg_r14->mcch_repeat_period_v1430_present, 1)); HANDLE_CODE(bref.pack(mcch_cfg_r14->mcch_mod_period_v1430_present, 1)); if (mcch_cfg_r14->mcch_repeat_period_v1430_present) { - HANDLE_CODE(pack_enum(bref, mcch_cfg_r14->mcch_repeat_period_v1430)); + HANDLE_CODE(mcch_cfg_r14->mcch_repeat_period_v1430.pack(bref)); } if (mcch_cfg_r14->mcch_mod_period_v1430_present) { - HANDLE_CODE(pack_enum(bref, mcch_cfg_r14->mcch_mod_period_v1430)); + HANDLE_CODE(mcch_cfg_r14->mcch_mod_period_v1430.pack(bref)); } } if (subcarrier_spacing_mbms_r14_present) { - HANDLE_CODE(pack_enum(bref, subcarrier_spacing_mbms_r14)); + HANDLE_CODE(subcarrier_spacing_mbms_r14.pack(bref)); } } } @@ -9729,21 +9714,21 @@ SRSASN_CODE mbsfn_area_info_r9_s::pack(bit_ref& bref) const SRSASN_CODE mbsfn_area_info_r9_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(mbsfn_area_id_r9, bref, (uint8_t)0, (uint8_t)255)); - HANDLE_CODE(unpack_enum(non_mbsfn_region_len, bref)); - HANDLE_CODE(unpack_unalign_integer(notif_ind_r9, bref, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(unpack_enum(mcch_cfg_r9.mcch_repeat_period_r9, bref)); - HANDLE_CODE(unpack_unalign_integer(mcch_cfg_r9.mcch_offset_r9, bref, (uint8_t)0, (uint8_t)10)); - HANDLE_CODE(unpack_enum(mcch_cfg_r9.mcch_mod_period_r9, bref)); + HANDLE_CODE(unpack_integer(mbsfn_area_id_r9, bref, (uint16_t)0u, (uint16_t)255u)); + HANDLE_CODE(non_mbsfn_region_len.unpack(bref)); + HANDLE_CODE(unpack_integer(notif_ind_r9, bref, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(mcch_cfg_r9.mcch_repeat_period_r9.unpack(bref)); + HANDLE_CODE(unpack_integer(mcch_cfg_r9.mcch_offset_r9, bref, (uint8_t)0u, (uint8_t)10u)); + HANDLE_CODE(mcch_cfg_r9.mcch_mod_period_r9.unpack(bref)); HANDLE_CODE(mcch_cfg_r9.sf_alloc_info_r9.unpack(bref)); - HANDLE_CODE(unpack_enum(mcch_cfg_r9.sig_mcs_r9, bref)); + HANDLE_CODE(mcch_cfg_r9.sig_mcs_r9.unpack(bref)); if (ext) { ext_groups_unpacker_guard group_flags(1); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool mcch_cfg_r14_present; HANDLE_CODE(bref.unpack(mcch_cfg_r14_present, 1)); @@ -9753,14 +9738,14 @@ SRSASN_CODE mbsfn_area_info_r9_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(mcch_cfg_r14->mcch_repeat_period_v1430_present, 1)); HANDLE_CODE(bref.unpack(mcch_cfg_r14->mcch_mod_period_v1430_present, 1)); if (mcch_cfg_r14->mcch_repeat_period_v1430_present) { - HANDLE_CODE(unpack_enum(mcch_cfg_r14->mcch_repeat_period_v1430, bref)); + HANDLE_CODE(mcch_cfg_r14->mcch_repeat_period_v1430.unpack(bref)); } if (mcch_cfg_r14->mcch_mod_period_v1430_present) { - HANDLE_CODE(unpack_enum(mcch_cfg_r14->mcch_mod_period_v1430, bref)); + HANDLE_CODE(mcch_cfg_r14->mcch_mod_period_v1430.unpack(bref)); } } if (subcarrier_spacing_mbms_r14_present) { - HANDLE_CODE(unpack_enum(subcarrier_spacing_mbms_r14, bref)); + HANDLE_CODE(subcarrier_spacing_mbms_r14.unpack(bref)); } } } @@ -9802,16 +9787,16 @@ void mbsfn_area_info_r9_s::to_json(json_writer& j) const // MBSFN-SubframeConfig ::= SEQUENCE SRSASN_CODE mbsfn_sf_cfg_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, radioframe_alloc_period)); - HANDLE_CODE(pack_unalign_integer(bref, radioframe_alloc_offset, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(radioframe_alloc_period.pack(bref)); + HANDLE_CODE(pack_integer(bref, radioframe_alloc_offset, (uint8_t)0u, (uint8_t)7u)); HANDLE_CODE(sf_alloc.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE mbsfn_sf_cfg_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(radioframe_alloc_period, bref)); - HANDLE_CODE(unpack_unalign_integer(radioframe_alloc_offset, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(radioframe_alloc_period.unpack(bref)); + HANDLE_CODE(unpack_integer(radioframe_alloc_offset, bref, (uint8_t)0u, (uint8_t)7u)); HANDLE_CODE(sf_alloc.unpack(bref)); return SRSASN_SUCCESS; @@ -9910,7 +9895,7 @@ void mbsfn_sf_cfg_s::sf_alloc_c_::to_json(json_writer& j) const } SRSASN_CODE mbsfn_sf_cfg_s::sf_alloc_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::one_frame: HANDLE_CODE(c.get >().pack(bref)); @@ -9927,7 +9912,7 @@ SRSASN_CODE mbsfn_sf_cfg_s::sf_alloc_c_::pack(bit_ref& bref) const SRSASN_CODE mbsfn_sf_cfg_s::sf_alloc_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::one_frame: @@ -10049,7 +10034,7 @@ void mbsfn_sf_cfg_v1430_s::sf_alloc_v1430_c_::to_json(json_writer& j) const } SRSASN_CODE mbsfn_sf_cfg_v1430_s::sf_alloc_v1430_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::one_frame_v1430: HANDLE_CODE(c.get >().pack(bref)); @@ -10066,7 +10051,7 @@ SRSASN_CODE mbsfn_sf_cfg_v1430_s::sf_alloc_v1430_c_::pack(bit_ref& bref) const SRSASN_CODE mbsfn_sf_cfg_v1430_s::sf_alloc_v1430_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::one_frame_v1430: @@ -10085,15 +10070,15 @@ SRSASN_CODE mbsfn_sf_cfg_v1430_s::sf_alloc_v1430_c_::unpack(bit_ref& bref) // PCCH-Config ::= SEQUENCE SRSASN_CODE pcch_cfg_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, default_paging_cycle)); - HANDLE_CODE(pack_enum(bref, nb)); + HANDLE_CODE(default_paging_cycle.pack(bref)); + HANDLE_CODE(nb.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE pcch_cfg_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(default_paging_cycle, bref)); - HANDLE_CODE(unpack_enum(nb, bref)); + HANDLE_CODE(default_paging_cycle.unpack(bref)); + HANDLE_CODE(nb.unpack(bref)); return SRSASN_SUCCESS; } @@ -10110,10 +10095,10 @@ SRSASN_CODE pcch_cfg_v1310_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(nb_v1310_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, paging_narrow_bands_r13, (uint8_t)1, (uint8_t)16)); - HANDLE_CODE(pack_enum(bref, mpdcch_num_repeat_paging_r13)); + HANDLE_CODE(pack_integer(bref, paging_narrow_bands_r13, (uint8_t)1u, (uint8_t)16u)); + HANDLE_CODE(mpdcch_num_repeat_paging_r13.pack(bref)); if (nb_v1310_present) { - HANDLE_CODE(pack_enum(bref, nb_v1310)); + HANDLE_CODE(nb_v1310.pack(bref)); } return SRSASN_SUCCESS; @@ -10122,10 +10107,10 @@ SRSASN_CODE pcch_cfg_v1310_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(nb_v1310_present, 1)); - HANDLE_CODE(unpack_unalign_integer(paging_narrow_bands_r13, bref, (uint8_t)1, (uint8_t)16)); - HANDLE_CODE(unpack_enum(mpdcch_num_repeat_paging_r13, bref)); + HANDLE_CODE(unpack_integer(paging_narrow_bands_r13, bref, (uint8_t)1u, (uint8_t)16u)); + HANDLE_CODE(mpdcch_num_repeat_paging_r13.unpack(bref)); if (nb_v1310_present) { - HANDLE_CODE(unpack_enum(nb_v1310, bref)); + HANDLE_CODE(nb_v1310.unpack(bref)); } return SRSASN_SUCCESS; @@ -10144,15 +10129,15 @@ void pcch_cfg_v1310_s::to_json(json_writer& j) const // PDSCH-ConfigCommon ::= SEQUENCE SRSASN_CODE pdsch_cfg_common_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, ref_sig_pwr, (int8_t)-60, (int8_t)50)); - HANDLE_CODE(pack_unalign_integer(bref, p_b, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, ref_sig_pwr, (int8_t)-60, (int8_t)50)); + HANDLE_CODE(pack_integer(bref, p_b, (uint8_t)0u, (uint8_t)3u)); return SRSASN_SUCCESS; } SRSASN_CODE pdsch_cfg_common_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(ref_sig_pwr, bref, (int8_t)-60, (int8_t)50)); - HANDLE_CODE(unpack_unalign_integer(p_b, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(ref_sig_pwr, bref, (int8_t)-60, (int8_t)50)); + HANDLE_CODE(unpack_integer(p_b, bref, (uint8_t)0u, (uint8_t)3u)); return SRSASN_SUCCESS; } @@ -10171,10 +10156,10 @@ SRSASN_CODE pdsch_cfg_common_v1310_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(pdsch_max_num_repeat_cemode_b_r13_present, 1)); if (pdsch_max_num_repeat_cemode_a_r13_present) { - HANDLE_CODE(pack_enum(bref, pdsch_max_num_repeat_cemode_a_r13)); + HANDLE_CODE(pdsch_max_num_repeat_cemode_a_r13.pack(bref)); } if (pdsch_max_num_repeat_cemode_b_r13_present) { - HANDLE_CODE(pack_enum(bref, pdsch_max_num_repeat_cemode_b_r13)); + HANDLE_CODE(pdsch_max_num_repeat_cemode_b_r13.pack(bref)); } return SRSASN_SUCCESS; @@ -10185,10 +10170,10 @@ SRSASN_CODE pdsch_cfg_common_v1310_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(pdsch_max_num_repeat_cemode_b_r13_present, 1)); if (pdsch_max_num_repeat_cemode_a_r13_present) { - HANDLE_CODE(unpack_enum(pdsch_max_num_repeat_cemode_a_r13, bref)); + HANDLE_CODE(pdsch_max_num_repeat_cemode_a_r13.unpack(bref)); } if (pdsch_max_num_repeat_cemode_b_r13_present) { - HANDLE_CODE(unpack_enum(pdsch_max_num_repeat_cemode_b_r13, bref)); + HANDLE_CODE(pdsch_max_num_repeat_cemode_b_r13.unpack(bref)); } return SRSASN_SUCCESS; @@ -10230,19 +10215,19 @@ void plmn_info_r15_s::to_json(json_writer& j) const // PRACH-Config-v1430 ::= SEQUENCE SRSASN_CODE prach_cfg_v1430_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, root_seq_idx_high_speed_r14, (uint16_t)0, (uint16_t)837)); - HANDLE_CODE(pack_unalign_integer(bref, zero_correlation_zone_cfg_high_speed_r14, (uint8_t)0, (uint8_t)12)); - HANDLE_CODE(pack_unalign_integer(bref, prach_cfg_idx_high_speed_r14, (uint8_t)0, (uint8_t)63)); - HANDLE_CODE(pack_unalign_integer(bref, prach_freq_offset_high_speed_r14, (uint8_t)0, (uint8_t)94)); + HANDLE_CODE(pack_integer(bref, root_seq_idx_high_speed_r14, (uint16_t)0u, (uint16_t)837u)); + HANDLE_CODE(pack_integer(bref, zero_correlation_zone_cfg_high_speed_r14, (uint8_t)0u, (uint8_t)12u)); + HANDLE_CODE(pack_integer(bref, prach_cfg_idx_high_speed_r14, (uint8_t)0u, (uint8_t)63u)); + HANDLE_CODE(pack_integer(bref, prach_freq_offset_high_speed_r14, (uint8_t)0u, (uint8_t)94u)); return SRSASN_SUCCESS; } SRSASN_CODE prach_cfg_v1430_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(root_seq_idx_high_speed_r14, bref, (uint16_t)0, (uint16_t)837)); - HANDLE_CODE(unpack_unalign_integer(zero_correlation_zone_cfg_high_speed_r14, bref, (uint8_t)0, (uint8_t)12)); - HANDLE_CODE(unpack_unalign_integer(prach_cfg_idx_high_speed_r14, bref, (uint8_t)0, (uint8_t)63)); - HANDLE_CODE(unpack_unalign_integer(prach_freq_offset_high_speed_r14, bref, (uint8_t)0, (uint8_t)94)); + HANDLE_CODE(unpack_integer(root_seq_idx_high_speed_r14, bref, (uint16_t)0u, (uint16_t)837u)); + HANDLE_CODE(unpack_integer(zero_correlation_zone_cfg_high_speed_r14, bref, (uint8_t)0u, (uint8_t)12u)); + HANDLE_CODE(unpack_integer(prach_cfg_idx_high_speed_r14, bref, (uint8_t)0u, (uint8_t)63u)); + HANDLE_CODE(unpack_integer(prach_freq_offset_high_speed_r14, bref, (uint8_t)0u, (uint8_t)94u)); return SRSASN_SUCCESS; } @@ -10259,14 +10244,14 @@ void prach_cfg_v1430_s::to_json(json_writer& j) const // PRACH-ConfigSIB ::= SEQUENCE SRSASN_CODE prach_cfg_sib_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, root_seq_idx, (uint16_t)0, (uint16_t)837)); + HANDLE_CODE(pack_integer(bref, root_seq_idx, (uint16_t)0u, (uint16_t)837u)); HANDLE_CODE(prach_cfg_info.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE prach_cfg_sib_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(root_seq_idx, bref, (uint16_t)0, (uint16_t)837)); + HANDLE_CODE(unpack_integer(root_seq_idx, bref, (uint16_t)0u, (uint16_t)837u)); HANDLE_CODE(prach_cfg_info.unpack(bref)); return SRSASN_SUCCESS; @@ -10286,12 +10271,12 @@ SRSASN_CODE prach_cfg_sib_v1310_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(mpdcch_start_sf_css_ra_r13_present, 1)); HANDLE_CODE(bref.pack(prach_hop_offset_r13_present, 1)); - HANDLE_CODE(pack_dyn_seq_of(bref, rsrp_thress_prach_info_list_r13, 1, 3, UnalignedIntegerPacker(0, 97))); + HANDLE_CODE(pack_dyn_seq_of(bref, rsrp_thress_prach_info_list_r13, 1, 3, integer_packer(0, 97))); if (mpdcch_start_sf_css_ra_r13_present) { HANDLE_CODE(mpdcch_start_sf_css_ra_r13.pack(bref)); } if (prach_hop_offset_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, prach_hop_offset_r13, (uint8_t)0, (uint8_t)94)); + HANDLE_CODE(pack_integer(bref, prach_hop_offset_r13, (uint8_t)0u, (uint8_t)94u)); } HANDLE_CODE(pack_dyn_seq_of(bref, prach_params_list_ce_r13, 1, 4)); @@ -10302,12 +10287,12 @@ SRSASN_CODE prach_cfg_sib_v1310_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(mpdcch_start_sf_css_ra_r13_present, 1)); HANDLE_CODE(bref.unpack(prach_hop_offset_r13_present, 1)); - HANDLE_CODE(unpack_dyn_seq_of(rsrp_thress_prach_info_list_r13, bref, 1, 3, UnalignedIntegerPacker(0, 97))); + HANDLE_CODE(unpack_dyn_seq_of(rsrp_thress_prach_info_list_r13, bref, 1, 3, integer_packer(0, 97))); if (mpdcch_start_sf_css_ra_r13_present) { HANDLE_CODE(mpdcch_start_sf_css_ra_r13.unpack(bref)); } if (prach_hop_offset_r13_present) { - HANDLE_CODE(unpack_unalign_integer(prach_hop_offset_r13, bref, (uint8_t)0, (uint8_t)94)); + HANDLE_CODE(unpack_integer(prach_hop_offset_r13, bref, (uint8_t)0u, (uint8_t)94u)); } HANDLE_CODE(unpack_dyn_seq_of(prach_params_list_ce_r13, bref, 1, 4)); @@ -10398,13 +10383,13 @@ void prach_cfg_sib_v1310_s::mpdcch_start_sf_css_ra_r13_c_::to_json(json_writer& } SRSASN_CODE prach_cfg_sib_v1310_s::mpdcch_start_sf_css_ra_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::fdd_r13: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; case types::tdd_r13: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; default: log_invalid_choice_id(type_, "prach_cfg_sib_v1310_s::mpdcch_start_sf_css_ra_r13_c_"); @@ -10415,14 +10400,14 @@ SRSASN_CODE prach_cfg_sib_v1310_s::mpdcch_start_sf_css_ra_r13_c_::pack(bit_ref& SRSASN_CODE prach_cfg_sib_v1310_s::mpdcch_start_sf_css_ra_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::fdd_r13: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; case types::tdd_r13: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; default: log_invalid_choice_id(type_, "prach_cfg_sib_v1310_s::mpdcch_start_sf_css_ra_r13_c_"); @@ -10458,19 +10443,19 @@ void prach_cfg_sib_v1530_s::to_json(json_writer& j) const // PUCCH-ConfigCommon ::= SEQUENCE SRSASN_CODE pucch_cfg_common_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, delta_pucch_shift)); - HANDLE_CODE(pack_unalign_integer(bref, n_rb_cqi, (uint8_t)0, (uint8_t)98)); - HANDLE_CODE(pack_unalign_integer(bref, n_cs_an, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(pack_unalign_integer(bref, n1_pucch_an, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(delta_pucch_shift.pack(bref)); + HANDLE_CODE(pack_integer(bref, nrb_cqi, (uint8_t)0u, (uint8_t)98u)); + HANDLE_CODE(pack_integer(bref, ncs_an, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(pack_integer(bref, n1_pucch_an, (uint16_t)0u, (uint16_t)2047u)); return SRSASN_SUCCESS; } SRSASN_CODE pucch_cfg_common_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(delta_pucch_shift, bref)); - HANDLE_CODE(unpack_unalign_integer(n_rb_cqi, bref, (uint8_t)0, (uint8_t)98)); - HANDLE_CODE(unpack_unalign_integer(n_cs_an, bref, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(unpack_unalign_integer(n1_pucch_an, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(delta_pucch_shift.unpack(bref)); + HANDLE_CODE(unpack_integer(nrb_cqi, bref, (uint8_t)0u, (uint8_t)98u)); + HANDLE_CODE(unpack_integer(ncs_an, bref, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(unpack_integer(n1_pucch_an, bref, (uint16_t)0u, (uint16_t)2047u)); return SRSASN_SUCCESS; } @@ -10478,8 +10463,8 @@ void pucch_cfg_common_s::to_json(json_writer& j) const { j.start_obj(); j.write_str("deltaPUCCH-Shift", delta_pucch_shift.to_string()); - j.write_int("nRB-CQI", n_rb_cqi); - j.write_int("nCS-AN", n_cs_an); + j.write_int("nRB-CQI", nrb_cqi); + j.write_int("nCS-AN", ncs_an); j.write_int("n1PUCCH-AN", n1_pucch_an); j.end_obj(); } @@ -10494,19 +10479,19 @@ SRSASN_CODE pucch_cfg_common_v1310_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(pucch_num_repeat_ce_msg4_level3_r13_present, 1)); if (n1_pucch_an_info_list_r13_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, n1_pucch_an_info_list_r13, 1, 4, UnalignedIntegerPacker(0, 2047))); + HANDLE_CODE(pack_dyn_seq_of(bref, n1_pucch_an_info_list_r13, 1, 4, integer_packer(0, 2047))); } if (pucch_num_repeat_ce_msg4_level0_r13_present) { - HANDLE_CODE(pack_enum(bref, pucch_num_repeat_ce_msg4_level0_r13)); + HANDLE_CODE(pucch_num_repeat_ce_msg4_level0_r13.pack(bref)); } if (pucch_num_repeat_ce_msg4_level1_r13_present) { - HANDLE_CODE(pack_enum(bref, pucch_num_repeat_ce_msg4_level1_r13)); + HANDLE_CODE(pucch_num_repeat_ce_msg4_level1_r13.pack(bref)); } if (pucch_num_repeat_ce_msg4_level2_r13_present) { - HANDLE_CODE(pack_enum(bref, pucch_num_repeat_ce_msg4_level2_r13)); + HANDLE_CODE(pucch_num_repeat_ce_msg4_level2_r13.pack(bref)); } if (pucch_num_repeat_ce_msg4_level3_r13_present) { - HANDLE_CODE(pack_enum(bref, pucch_num_repeat_ce_msg4_level3_r13)); + HANDLE_CODE(pucch_num_repeat_ce_msg4_level3_r13.pack(bref)); } return SRSASN_SUCCESS; @@ -10520,19 +10505,19 @@ SRSASN_CODE pucch_cfg_common_v1310_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(pucch_num_repeat_ce_msg4_level3_r13_present, 1)); if (n1_pucch_an_info_list_r13_present) { - HANDLE_CODE(unpack_dyn_seq_of(n1_pucch_an_info_list_r13, bref, 1, 4, UnalignedIntegerPacker(0, 2047))); + HANDLE_CODE(unpack_dyn_seq_of(n1_pucch_an_info_list_r13, bref, 1, 4, integer_packer(0, 2047))); } if (pucch_num_repeat_ce_msg4_level0_r13_present) { - HANDLE_CODE(unpack_enum(pucch_num_repeat_ce_msg4_level0_r13, bref)); + HANDLE_CODE(pucch_num_repeat_ce_msg4_level0_r13.unpack(bref)); } if (pucch_num_repeat_ce_msg4_level1_r13_present) { - HANDLE_CODE(unpack_enum(pucch_num_repeat_ce_msg4_level1_r13, bref)); + HANDLE_CODE(pucch_num_repeat_ce_msg4_level1_r13.unpack(bref)); } if (pucch_num_repeat_ce_msg4_level2_r13_present) { - HANDLE_CODE(unpack_enum(pucch_num_repeat_ce_msg4_level2_r13, bref)); + HANDLE_CODE(pucch_num_repeat_ce_msg4_level2_r13.unpack(bref)); } if (pucch_num_repeat_ce_msg4_level3_r13_present) { - HANDLE_CODE(unpack_enum(pucch_num_repeat_ce_msg4_level3_r13, bref)); + HANDLE_CODE(pucch_num_repeat_ce_msg4_level3_r13.unpack(bref)); } return SRSASN_SUCCESS; @@ -10568,7 +10553,7 @@ SRSASN_CODE pucch_cfg_common_v1430_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(pucch_num_repeat_ce_msg4_level3_r14_present, 1)); if (pucch_num_repeat_ce_msg4_level3_r14_present) { - HANDLE_CODE(pack_enum(bref, pucch_num_repeat_ce_msg4_level3_r14)); + HANDLE_CODE(pucch_num_repeat_ce_msg4_level3_r14.pack(bref)); } return SRSASN_SUCCESS; @@ -10578,7 +10563,7 @@ SRSASN_CODE pucch_cfg_common_v1430_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(pucch_num_repeat_ce_msg4_level3_r14_present, 1)); if (pucch_num_repeat_ce_msg4_level3_r14_present) { - HANDLE_CODE(unpack_enum(pucch_num_repeat_ce_msg4_level3_r14, bref)); + HANDLE_CODE(pucch_num_repeat_ce_msg4_level3_r14.unpack(bref)); } return SRSASN_SUCCESS; @@ -10595,9 +10580,9 @@ void pucch_cfg_common_v1430_s::to_json(json_writer& j) const // PUSCH-ConfigCommon ::= SEQUENCE SRSASN_CODE pusch_cfg_common_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, pusch_cfg_basic.n_sb, (uint8_t)1, (uint8_t)4)); - HANDLE_CODE(pack_enum(bref, pusch_cfg_basic.hop_mode)); - HANDLE_CODE(pack_unalign_integer(bref, pusch_cfg_basic.pusch_hop_offset, (uint8_t)0, (uint8_t)98)); + HANDLE_CODE(pack_integer(bref, pusch_cfg_basic.n_sb, (uint8_t)1u, (uint8_t)4u)); + HANDLE_CODE(pusch_cfg_basic.hop_mode.pack(bref)); + HANDLE_CODE(pack_integer(bref, pusch_cfg_basic.pusch_hop_offset, (uint8_t)0u, (uint8_t)98u)); HANDLE_CODE(bref.pack(pusch_cfg_basic.enable64_qam, 1)); HANDLE_CODE(ul_ref_sigs_pusch.pack(bref)); @@ -10605,9 +10590,9 @@ SRSASN_CODE pusch_cfg_common_s::pack(bit_ref& bref) const } SRSASN_CODE pusch_cfg_common_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(pusch_cfg_basic.n_sb, bref, (uint8_t)1, (uint8_t)4)); - HANDLE_CODE(unpack_enum(pusch_cfg_basic.hop_mode, bref)); - HANDLE_CODE(unpack_unalign_integer(pusch_cfg_basic.pusch_hop_offset, bref, (uint8_t)0, (uint8_t)98)); + HANDLE_CODE(unpack_integer(pusch_cfg_basic.n_sb, bref, (uint8_t)1u, (uint8_t)4u)); + HANDLE_CODE(pusch_cfg_basic.hop_mode.unpack(bref)); + HANDLE_CODE(unpack_integer(pusch_cfg_basic.pusch_hop_offset, bref, (uint8_t)0u, (uint8_t)98u)); HANDLE_CODE(bref.unpack(pusch_cfg_basic.enable64_qam, 1)); HANDLE_CODE(ul_ref_sigs_pusch.unpack(bref)); @@ -10652,13 +10637,13 @@ SRSASN_CODE pusch_cfg_common_v1310_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(pusch_hop_offset_v1310_present, 1)); if (pusch_max_num_repeat_cemode_a_r13_present) { - HANDLE_CODE(pack_enum(bref, pusch_max_num_repeat_cemode_a_r13)); + HANDLE_CODE(pusch_max_num_repeat_cemode_a_r13.pack(bref)); } if (pusch_max_num_repeat_cemode_b_r13_present) { - HANDLE_CODE(pack_enum(bref, pusch_max_num_repeat_cemode_b_r13)); + HANDLE_CODE(pusch_max_num_repeat_cemode_b_r13.pack(bref)); } if (pusch_hop_offset_v1310_present) { - HANDLE_CODE(pack_unalign_integer(bref, pusch_hop_offset_v1310, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(pack_integer(bref, pusch_hop_offset_v1310, (uint8_t)1u, (uint8_t)16u)); } return SRSASN_SUCCESS; @@ -10670,13 +10655,13 @@ SRSASN_CODE pusch_cfg_common_v1310_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(pusch_hop_offset_v1310_present, 1)); if (pusch_max_num_repeat_cemode_a_r13_present) { - HANDLE_CODE(unpack_enum(pusch_max_num_repeat_cemode_a_r13, bref)); + HANDLE_CODE(pusch_max_num_repeat_cemode_a_r13.unpack(bref)); } if (pusch_max_num_repeat_cemode_b_r13_present) { - HANDLE_CODE(unpack_enum(pusch_max_num_repeat_cemode_b_r13, bref)); + HANDLE_CODE(pusch_max_num_repeat_cemode_b_r13.unpack(bref)); } if (pusch_hop_offset_v1310_present) { - HANDLE_CODE(unpack_unalign_integer(pusch_hop_offset_v1310, bref, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(unpack_integer(pusch_hop_offset_v1310, bref, (uint8_t)1u, (uint8_t)16u)); } return SRSASN_SUCCESS; @@ -10701,18 +10686,18 @@ SRSASN_CODE rach_cfg_common_s::pack(bit_ref& bref) const { bref.pack(ext, 1); HANDLE_CODE(bref.pack(preamb_info.preambs_group_a_cfg_present, 1)); - HANDLE_CODE(pack_enum(bref, preamb_info.nof_ra_preambs)); + HANDLE_CODE(preamb_info.nof_ra_preambs.pack(bref)); if (preamb_info.preambs_group_a_cfg_present) { bref.pack(preamb_info.preambs_group_a_cfg.ext, 1); - HANDLE_CODE(pack_enum(bref, preamb_info.preambs_group_a_cfg.size_of_ra_preambs_group_a)); - HANDLE_CODE(pack_enum(bref, preamb_info.preambs_group_a_cfg.msg_size_group_a)); - HANDLE_CODE(pack_enum(bref, preamb_info.preambs_group_a_cfg.msg_pwr_offset_group_b)); + HANDLE_CODE(preamb_info.preambs_group_a_cfg.size_of_ra_preambs_group_a.pack(bref)); + HANDLE_CODE(preamb_info.preambs_group_a_cfg.msg_size_group_a.pack(bref)); + HANDLE_CODE(preamb_info.preambs_group_a_cfg.msg_pwr_offset_group_b.pack(bref)); } HANDLE_CODE(pwr_ramp_params.pack(bref)); - HANDLE_CODE(pack_enum(bref, ra_supervision_info.preamb_trans_max)); - HANDLE_CODE(pack_enum(bref, ra_supervision_info.ra_resp_win_size)); - HANDLE_CODE(pack_enum(bref, ra_supervision_info.mac_contention_resolution_timer)); - HANDLE_CODE(pack_unalign_integer(bref, max_harq_msg3_tx, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(ra_supervision_info.preamb_trans_max.pack(bref)); + HANDLE_CODE(ra_supervision_info.ra_resp_win_size.pack(bref)); + HANDLE_CODE(ra_supervision_info.mac_contention_resolution_timer.pack(bref)); + HANDLE_CODE(pack_integer(bref, max_harq_msg3_tx, (uint8_t)1u, (uint8_t)8u)); if (ext) { ext_groups_packer_guard group_flags; @@ -10722,19 +10707,19 @@ SRSASN_CODE rach_cfg_common_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(preamb_trans_max_ce_r13_present, 1)); HANDLE_CODE(bref.pack(rach_ce_level_info_list_r13.is_present(), 1)); if (preamb_trans_max_ce_r13_present) { - HANDLE_CODE(pack_enum(bref, preamb_trans_max_ce_r13)); + HANDLE_CODE(preamb_trans_max_ce_r13.pack(bref)); } if (rach_ce_level_info_list_r13.is_present()) { HANDLE_CODE(pack_dyn_seq_of(bref, *rach_ce_level_info_list_r13, 1, 4)); } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(edt_small_tbs_subset_r15_present, 1)); } @@ -10745,39 +10730,39 @@ SRSASN_CODE rach_cfg_common_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(preamb_info.preambs_group_a_cfg_present, 1)); - HANDLE_CODE(unpack_enum(preamb_info.nof_ra_preambs, bref)); + HANDLE_CODE(preamb_info.nof_ra_preambs.unpack(bref)); if (preamb_info.preambs_group_a_cfg_present) { bref.unpack(preamb_info.preambs_group_a_cfg.ext, 1); - HANDLE_CODE(unpack_enum(preamb_info.preambs_group_a_cfg.size_of_ra_preambs_group_a, bref)); - HANDLE_CODE(unpack_enum(preamb_info.preambs_group_a_cfg.msg_size_group_a, bref)); - HANDLE_CODE(unpack_enum(preamb_info.preambs_group_a_cfg.msg_pwr_offset_group_b, bref)); + HANDLE_CODE(preamb_info.preambs_group_a_cfg.size_of_ra_preambs_group_a.unpack(bref)); + HANDLE_CODE(preamb_info.preambs_group_a_cfg.msg_size_group_a.unpack(bref)); + HANDLE_CODE(preamb_info.preambs_group_a_cfg.msg_pwr_offset_group_b.unpack(bref)); } HANDLE_CODE(pwr_ramp_params.unpack(bref)); - HANDLE_CODE(unpack_enum(ra_supervision_info.preamb_trans_max, bref)); - HANDLE_CODE(unpack_enum(ra_supervision_info.ra_resp_win_size, bref)); - HANDLE_CODE(unpack_enum(ra_supervision_info.mac_contention_resolution_timer, bref)); - HANDLE_CODE(unpack_unalign_integer(max_harq_msg3_tx, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(ra_supervision_info.preamb_trans_max.unpack(bref)); + HANDLE_CODE(ra_supervision_info.ra_resp_win_size.unpack(bref)); + HANDLE_CODE(ra_supervision_info.mac_contention_resolution_timer.unpack(bref)); + HANDLE_CODE(unpack_integer(max_harq_msg3_tx, bref, (uint8_t)1u, (uint8_t)8u)); if (ext) { ext_groups_unpacker_guard group_flags(2); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(preamb_trans_max_ce_r13_present, 1)); bool rach_ce_level_info_list_r13_present; HANDLE_CODE(bref.unpack(rach_ce_level_info_list_r13_present, 1)); rach_ce_level_info_list_r13.set_present(rach_ce_level_info_list_r13_present); if (preamb_trans_max_ce_r13_present) { - HANDLE_CODE(unpack_enum(preamb_trans_max_ce_r13, bref)); + HANDLE_CODE(preamb_trans_max_ce_r13.unpack(bref)); } if (rach_ce_level_info_list_r13.is_present()) { HANDLE_CODE(unpack_dyn_seq_of(*rach_ce_level_info_list_r13, bref, 1, 4)); } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(edt_small_tbs_subset_r15_present, 1)); } @@ -10830,10 +10815,10 @@ void rach_cfg_common_s::to_json(json_writer& j) const SRSASN_CODE rach_cfg_common_v1250_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(tx_fail_params_r12.conn_est_fail_offset_r12_present, 1)); - HANDLE_CODE(pack_enum(bref, tx_fail_params_r12.conn_est_fail_count_r12)); - HANDLE_CODE(pack_enum(bref, tx_fail_params_r12.conn_est_fail_offset_validity_r12)); + HANDLE_CODE(tx_fail_params_r12.conn_est_fail_count_r12.pack(bref)); + HANDLE_CODE(tx_fail_params_r12.conn_est_fail_offset_validity_r12.pack(bref)); if (tx_fail_params_r12.conn_est_fail_offset_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, tx_fail_params_r12.conn_est_fail_offset_r12, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, tx_fail_params_r12.conn_est_fail_offset_r12, (uint8_t)0u, (uint8_t)15u)); } return SRSASN_SUCCESS; @@ -10841,10 +10826,10 @@ SRSASN_CODE rach_cfg_common_v1250_s::pack(bit_ref& bref) const SRSASN_CODE rach_cfg_common_v1250_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(tx_fail_params_r12.conn_est_fail_offset_r12_present, 1)); - HANDLE_CODE(unpack_enum(tx_fail_params_r12.conn_est_fail_count_r12, bref)); - HANDLE_CODE(unpack_enum(tx_fail_params_r12.conn_est_fail_offset_validity_r12, bref)); + HANDLE_CODE(tx_fail_params_r12.conn_est_fail_count_r12.unpack(bref)); + HANDLE_CODE(tx_fail_params_r12.conn_est_fail_offset_validity_r12.unpack(bref)); if (tx_fail_params_r12.conn_est_fail_offset_r12_present) { - HANDLE_CODE(unpack_unalign_integer(tx_fail_params_r12.conn_est_fail_offset_r12, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(tx_fail_params_r12.conn_est_fail_offset_r12, bref, (uint8_t)0u, (uint8_t)15u)); } return SRSASN_SUCCESS; @@ -10866,21 +10851,21 @@ void rach_cfg_common_v1250_s::to_json(json_writer& j) const // RSS-Config-r15 ::= SEQUENCE SRSASN_CODE rss_cfg_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, dur_r15)); - HANDLE_CODE(pack_unalign_integer(bref, freq_location_r15, (uint8_t)0, (uint8_t)98)); - HANDLE_CODE(pack_enum(bref, periodicity_r15)); - HANDLE_CODE(pack_enum(bref, pwr_boost_r15)); - HANDLE_CODE(pack_unalign_integer(bref, time_offset_r15, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(dur_r15.pack(bref)); + HANDLE_CODE(pack_integer(bref, freq_location_r15, (uint8_t)0u, (uint8_t)98u)); + HANDLE_CODE(periodicity_r15.pack(bref)); + HANDLE_CODE(pwr_boost_r15.pack(bref)); + HANDLE_CODE(pack_integer(bref, time_offset_r15, (uint8_t)0u, (uint8_t)31u)); return SRSASN_SUCCESS; } SRSASN_CODE rss_cfg_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(dur_r15, bref)); - HANDLE_CODE(unpack_unalign_integer(freq_location_r15, bref, (uint8_t)0, (uint8_t)98)); - HANDLE_CODE(unpack_enum(periodicity_r15, bref)); - HANDLE_CODE(unpack_enum(pwr_boost_r15, bref)); - HANDLE_CODE(unpack_unalign_integer(time_offset_r15, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(dur_r15.unpack(bref)); + HANDLE_CODE(unpack_integer(freq_location_r15, bref, (uint8_t)0u, (uint8_t)98u)); + HANDLE_CODE(periodicity_r15.unpack(bref)); + HANDLE_CODE(pwr_boost_r15.unpack(bref)); + HANDLE_CODE(unpack_integer(time_offset_r15, bref, (uint8_t)0u, (uint8_t)31u)); return SRSASN_SUCCESS; } @@ -10898,19 +10883,19 @@ void rss_cfg_r15_s::to_json(json_writer& j) const // ReferenceTime-r15 ::= SEQUENCE SRSASN_CODE ref_time_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, ref_days_r15, (uint32_t)0, (uint32_t)72999)); - HANDLE_CODE(pack_unalign_integer(bref, ref_seconds_r15, (uint32_t)0, (uint32_t)86399)); - HANDLE_CODE(pack_unalign_integer(bref, ref_milli_seconds_r15, (uint16_t)0, (uint16_t)999)); - HANDLE_CODE(pack_unalign_integer(bref, ref_quarter_micro_seconds_r15, (uint16_t)0, (uint16_t)3999)); + HANDLE_CODE(pack_integer(bref, ref_days_r15, (uint32_t)0u, (uint32_t)72999u)); + HANDLE_CODE(pack_integer(bref, ref_seconds_r15, (uint32_t)0u, (uint32_t)86399u)); + HANDLE_CODE(pack_integer(bref, ref_milli_seconds_r15, (uint16_t)0u, (uint16_t)999u)); + HANDLE_CODE(pack_integer(bref, ref_quarter_micro_seconds_r15, (uint16_t)0u, (uint16_t)3999u)); return SRSASN_SUCCESS; } SRSASN_CODE ref_time_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(ref_days_r15, bref, (uint32_t)0, (uint32_t)72999)); - HANDLE_CODE(unpack_unalign_integer(ref_seconds_r15, bref, (uint32_t)0, (uint32_t)86399)); - HANDLE_CODE(unpack_unalign_integer(ref_milli_seconds_r15, bref, (uint16_t)0, (uint16_t)999)); - HANDLE_CODE(unpack_unalign_integer(ref_quarter_micro_seconds_r15, bref, (uint16_t)0, (uint16_t)3999)); + HANDLE_CODE(unpack_integer(ref_days_r15, bref, (uint32_t)0u, (uint32_t)72999u)); + HANDLE_CODE(unpack_integer(ref_seconds_r15, bref, (uint32_t)0u, (uint32_t)86399u)); + HANDLE_CODE(unpack_integer(ref_milli_seconds_r15, bref, (uint16_t)0u, (uint16_t)999u)); + HANDLE_CODE(unpack_integer(ref_quarter_micro_seconds_r15, bref, (uint16_t)0u, (uint16_t)3999u)); return SRSASN_SUCCESS; } @@ -10929,10 +10914,10 @@ SRSASN_CODE resel_info_relay_r13_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(min_hyst_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, q_rx_lev_min_r13, (int8_t)-70, (int8_t)-22)); - HANDLE_CODE(pack_enum(bref, filt_coef_r13)); + HANDLE_CODE(pack_integer(bref, q_rx_lev_min_r13, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(filt_coef_r13.pack(bref)); if (min_hyst_r13_present) { - HANDLE_CODE(pack_enum(bref, min_hyst_r13)); + HANDLE_CODE(min_hyst_r13.pack(bref)); } return SRSASN_SUCCESS; @@ -10941,10 +10926,10 @@ SRSASN_CODE resel_info_relay_r13_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(min_hyst_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(q_rx_lev_min_r13, bref, (int8_t)-70, (int8_t)-22)); - HANDLE_CODE(unpack_enum(filt_coef_r13, bref)); + HANDLE_CODE(unpack_integer(q_rx_lev_min_r13, bref, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(filt_coef_r13.unpack(bref)); if (min_hyst_r13_present) { - HANDLE_CODE(unpack_enum(min_hyst_r13, bref)); + HANDLE_CODE(min_hyst_r13.unpack(bref)); } return SRSASN_SUCCESS; @@ -10963,14 +10948,14 @@ void resel_info_relay_r13_s::to_json(json_writer& j) const // SIB8-PerPLMN-r11 ::= SEQUENCE SRSASN_CODE sib8_per_plmn_r11_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, plmn_id_r11, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(pack_integer(bref, plmn_id_r11, (uint8_t)1u, (uint8_t)6u)); HANDLE_CODE(params_cdma2000_r11.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE sib8_per_plmn_r11_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(plmn_id_r11, bref, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(unpack_integer(plmn_id_r11, bref, (uint8_t)1u, (uint8_t)6u)); HANDLE_CODE(params_cdma2000_r11.unpack(bref)); return SRSASN_SUCCESS; @@ -11005,7 +10990,7 @@ void sib8_per_plmn_r11_s::params_cdma2000_r11_c_::to_json(json_writer& j) const } SRSASN_CODE sib8_per_plmn_r11_s::params_cdma2000_r11_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::explicit_value: HANDLE_CODE(c.pack(bref)); @@ -11021,7 +11006,7 @@ SRSASN_CODE sib8_per_plmn_r11_s::params_cdma2000_r11_c_::pack(bit_ref& bref) con SRSASN_CODE sib8_per_plmn_r11_s::params_cdma2000_r11_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::explicit_value: @@ -11039,24 +11024,22 @@ SRSASN_CODE sib8_per_plmn_r11_s::params_cdma2000_r11_c_::unpack(bit_ref& bref) // SL-CBR-CommonTxConfigList-r14 ::= SEQUENCE SRSASN_CODE sl_cbr_common_tx_cfg_list_r14_s::pack(bit_ref& bref) const { - HANDLE_CODE( - pack_dyn_seq_of(bref, - cbr_range_common_cfg_list_r14, - 1, - 4, - SeqOfPacker >(1, 16, UnalignedIntegerPacker(0, 100)))); + HANDLE_CODE(pack_dyn_seq_of(bref, + cbr_range_common_cfg_list_r14, + 1, + 4, + SeqOfPacker >(1, 16, integer_packer(0, 100)))); HANDLE_CODE(pack_dyn_seq_of(bref, sl_cbr_pssch_tx_cfg_list_r14, 1, 64)); return SRSASN_SUCCESS; } SRSASN_CODE sl_cbr_common_tx_cfg_list_r14_s::unpack(bit_ref& bref) { - HANDLE_CODE( - unpack_dyn_seq_of(cbr_range_common_cfg_list_r14, - bref, - 1, - 4, - SeqOfPacker >(1, 16, UnalignedIntegerPacker(0, 100)))); + HANDLE_CODE(unpack_dyn_seq_of(cbr_range_common_cfg_list_r14, + bref, + 1, + 4, + SeqOfPacker >(1, 16, integer_packer(0, 100)))); HANDLE_CODE(unpack_dyn_seq_of(sl_cbr_pssch_tx_cfg_list_r14, bref, 1, 64)); return SRSASN_SUCCESS; @@ -11086,7 +11069,7 @@ SRSASN_CODE sl_carrier_freq_info_r12_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(plmn_id_list_r12_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r12, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r12, (uint32_t)0u, (uint32_t)262143u)); if (plmn_id_list_r12_present) { HANDLE_CODE(pack_dyn_seq_of(bref, plmn_id_list_r12, 1, 6)); } @@ -11097,7 +11080,7 @@ SRSASN_CODE sl_carrier_freq_info_r12_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(plmn_id_list_r12_present, 1)); - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r12, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(carrier_freq_r12, bref, (uint32_t)0u, (uint32_t)262143u)); if (plmn_id_list_r12_present) { HANDLE_CODE(unpack_dyn_seq_of(plmn_id_list_r12, bref, 1, 6)); } @@ -11183,10 +11166,10 @@ SRSASN_CODE sl_comm_res_pool_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(rx_params_ncell_r12_present, 1)); HANDLE_CODE(bref.pack(tx_params_r12_present, 1)); - HANDLE_CODE(pack_enum(bref, sc_cp_len_r12)); - HANDLE_CODE(pack_enum(bref, sc_period_r12)); + HANDLE_CODE(sc_cp_len_r12.pack(bref)); + HANDLE_CODE(sc_period_r12.pack(bref)); HANDLE_CODE(sc_tf_res_cfg_r12.pack(bref)); - HANDLE_CODE(pack_enum(bref, data_cp_len_r12)); + HANDLE_CODE(data_cp_len_r12.pack(bref)); HANDLE_CODE(data_hop_cfg_r12.pack(bref)); if (ue_sel_res_cfg_r12_present) { HANDLE_CODE(bref.pack(ue_sel_res_cfg_r12.trpt_subset_r12_present, 1)); @@ -11200,7 +11183,7 @@ SRSASN_CODE sl_comm_res_pool_r12_s::pack(bit_ref& bref) const if (rx_params_ncell_r12.tdd_cfg_r12_present) { HANDLE_CODE(rx_params_ncell_r12.tdd_cfg_r12.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, rx_params_ncell_r12.sync_cfg_idx_r12, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, rx_params_ncell_r12.sync_cfg_idx_r12, (uint8_t)0u, (uint8_t)15u)); } if (tx_params_r12_present) { HANDLE_CODE(tx_params_r12.sc_tx_params_r12.pack(bref)); @@ -11213,11 +11196,11 @@ SRSASN_CODE sl_comm_res_pool_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(prio_list_r13.is_present(), 1)); if (prio_list_r13.is_present()) { - HANDLE_CODE(pack_dyn_seq_of(bref, *prio_list_r13, 1, 8, UnalignedIntegerPacker(1, 8))); + HANDLE_CODE(pack_dyn_seq_of(bref, *prio_list_r13, 1, 8, integer_packer(1, 8))); } } } @@ -11230,10 +11213,10 @@ SRSASN_CODE sl_comm_res_pool_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(rx_params_ncell_r12_present, 1)); HANDLE_CODE(bref.unpack(tx_params_r12_present, 1)); - HANDLE_CODE(unpack_enum(sc_cp_len_r12, bref)); - HANDLE_CODE(unpack_enum(sc_period_r12, bref)); + HANDLE_CODE(sc_cp_len_r12.unpack(bref)); + HANDLE_CODE(sc_period_r12.unpack(bref)); HANDLE_CODE(sc_tf_res_cfg_r12.unpack(bref)); - HANDLE_CODE(unpack_enum(data_cp_len_r12, bref)); + HANDLE_CODE(data_cp_len_r12.unpack(bref)); HANDLE_CODE(data_hop_cfg_r12.unpack(bref)); if (ue_sel_res_cfg_r12_present) { HANDLE_CODE(bref.unpack(ue_sel_res_cfg_r12.trpt_subset_r12_present, 1)); @@ -11247,7 +11230,7 @@ SRSASN_CODE sl_comm_res_pool_r12_s::unpack(bit_ref& bref) if (rx_params_ncell_r12.tdd_cfg_r12_present) { HANDLE_CODE(rx_params_ncell_r12.tdd_cfg_r12.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(rx_params_ncell_r12.sync_cfg_idx_r12, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(rx_params_ncell_r12.sync_cfg_idx_r12, bref, (uint8_t)0u, (uint8_t)15u)); } if (tx_params_r12_present) { HANDLE_CODE(tx_params_r12.sc_tx_params_r12.unpack(bref)); @@ -11259,13 +11242,13 @@ SRSASN_CODE sl_comm_res_pool_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool prio_list_r13_present; HANDLE_CODE(bref.unpack(prio_list_r13_present, 1)); prio_list_r13.set_present(prio_list_r13_present); if (prio_list_r13.is_present()) { - HANDLE_CODE(unpack_dyn_seq_of(*prio_list_r13, bref, 1, 8, UnalignedIntegerPacker(1, 8))); + HANDLE_CODE(unpack_dyn_seq_of(*prio_list_r13, bref, 1, 8, integer_packer(1, 8))); } } } @@ -11325,20 +11308,20 @@ void sl_comm_res_pool_r12_s::to_json(json_writer& j) const // SL-PPPP-TxConfigIndex-r15 ::= SEQUENCE SRSASN_CODE sl_pppp_tx_cfg_idx_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, prio_thres_r15, (uint8_t)1, (uint8_t)8)); - HANDLE_CODE(pack_unalign_integer(bref, default_tx_cfg_idx_r15, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(pack_unalign_integer(bref, cbr_cfg_idx_r15, (uint8_t)0, (uint8_t)3)); - HANDLE_CODE(pack_dyn_seq_of(bref, tx_cfg_idx_list_r15, 1, 16, UnalignedIntegerPacker(0, 63))); + HANDLE_CODE(pack_integer(bref, prio_thres_r15, (uint8_t)1u, (uint8_t)8u)); + HANDLE_CODE(pack_integer(bref, default_tx_cfg_idx_r15, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(pack_integer(bref, cbr_cfg_idx_r15, (uint8_t)0u, (uint8_t)3u)); + HANDLE_CODE(pack_dyn_seq_of(bref, tx_cfg_idx_list_r15, 1, 16, integer_packer(0, 63))); HANDLE_CODE(pack_dyn_seq_of(bref, mcs_pssch_range_list_r15, 1, 16)); return SRSASN_SUCCESS; } SRSASN_CODE sl_pppp_tx_cfg_idx_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(prio_thres_r15, bref, (uint8_t)1, (uint8_t)8)); - HANDLE_CODE(unpack_unalign_integer(default_tx_cfg_idx_r15, bref, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(unpack_unalign_integer(cbr_cfg_idx_r15, bref, (uint8_t)0, (uint8_t)3)); - HANDLE_CODE(unpack_dyn_seq_of(tx_cfg_idx_list_r15, bref, 1, 16, UnalignedIntegerPacker(0, 63))); + HANDLE_CODE(unpack_integer(prio_thres_r15, bref, (uint8_t)1u, (uint8_t)8u)); + HANDLE_CODE(unpack_integer(default_tx_cfg_idx_r15, bref, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(unpack_integer(cbr_cfg_idx_r15, bref, (uint8_t)0u, (uint8_t)3u)); + HANDLE_CODE(unpack_dyn_seq_of(tx_cfg_idx_list_r15, bref, 1, 16, integer_packer(0, 63))); HANDLE_CODE(unpack_dyn_seq_of(mcs_pssch_range_list_r15, bref, 1, 16)); return SRSASN_SUCCESS; @@ -11391,14 +11374,14 @@ void srs_ul_cfg_common_c::to_json(json_writer& j) const } SRSASN_CODE srs_ul_cfg_common_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.srs_max_up_pts_present, 1)); - HANDLE_CODE(pack_enum(bref, c.srs_bw_cfg)); - HANDLE_CODE(pack_enum(bref, c.srs_sf_cfg)); + HANDLE_CODE(c.srs_bw_cfg.pack(bref)); + HANDLE_CODE(c.srs_sf_cfg.pack(bref)); HANDLE_CODE(bref.pack(c.ack_nack_srs_simul_tx, 1)); break; default: @@ -11410,15 +11393,15 @@ SRSASN_CODE srs_ul_cfg_common_c::pack(bit_ref& bref) const SRSASN_CODE srs_ul_cfg_common_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.unpack(c.srs_max_up_pts_present, 1)); - HANDLE_CODE(unpack_enum(c.srs_bw_cfg, bref)); - HANDLE_CODE(unpack_enum(c.srs_sf_cfg, bref)); + HANDLE_CODE(c.srs_bw_cfg.unpack(bref)); + HANDLE_CODE(c.srs_sf_cfg.unpack(bref)); HANDLE_CODE(bref.unpack(c.ack_nack_srs_simul_tx, 1)); break; default: @@ -11556,7 +11539,7 @@ SRSASN_CODE sib_type2_v9e0_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (ul_carrier_freq_v9e0_present) { - HANDLE_CODE(pack_unalign_integer(bref, ul_carrier_freq_v9e0, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, ul_carrier_freq_v9e0, (uint32_t)65536u, (uint32_t)262143u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -11570,7 +11553,7 @@ SRSASN_CODE sib_type2_v9e0_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (ul_carrier_freq_v9e0_present) { - HANDLE_CODE(unpack_unalign_integer(ul_carrier_freq_v9e0, bref, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(ul_carrier_freq_v9e0, bref, (uint32_t)65536u, (uint32_t)262143u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -11700,16 +11683,16 @@ void sib_type5_v9e0_ies_s::to_json(json_writer& j) const // UAC-BarringInfoSet-r15 ::= SEQUENCE SRSASN_CODE uac_barr_info_set_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, uac_barr_factor_r15)); - HANDLE_CODE(pack_enum(bref, uac_barr_time_r15)); + HANDLE_CODE(uac_barr_factor_r15.pack(bref)); + HANDLE_CODE(uac_barr_time_r15.pack(bref)); HANDLE_CODE(uac_barr_for_access_id_r15.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE uac_barr_info_set_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(uac_barr_factor_r15, bref)); - HANDLE_CODE(unpack_enum(uac_barr_time_r15, bref)); + HANDLE_CODE(uac_barr_factor_r15.unpack(bref)); + HANDLE_CODE(uac_barr_time_r15.unpack(bref)); HANDLE_CODE(uac_barr_for_access_id_r15.unpack(bref)); return SRSASN_SUCCESS; @@ -11728,7 +11711,7 @@ SRSASN_CODE uac_barr_per_plmn_r15_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(uac_ac_barr_list_type_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, plmn_id_idx_r15, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(pack_integer(bref, plmn_id_idx_r15, (uint8_t)1u, (uint8_t)6u)); if (uac_ac_barr_list_type_r15_present) { HANDLE_CODE(uac_ac_barr_list_type_r15.pack(bref)); } @@ -11739,7 +11722,7 @@ SRSASN_CODE uac_barr_per_plmn_r15_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(uac_ac_barr_list_type_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(plmn_id_idx_r15, bref, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(unpack_integer(plmn_id_idx_r15, bref, (uint8_t)1u, (uint8_t)6u)); if (uac_ac_barr_list_type_r15_present) { HANDLE_CODE(uac_ac_barr_list_type_r15.unpack(bref)); } @@ -11851,13 +11834,13 @@ void uac_barr_per_plmn_r15_s::uac_ac_barr_list_type_r15_c_::to_json(json_writer& } SRSASN_CODE uac_barr_per_plmn_r15_s::uac_ac_barr_list_type_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::uac_implicit_ac_barr_list_r15: HANDLE_CODE(pack_fixed_seq_of(bref, &(c.get())[0], c.get().size(), - UnalignedIntegerPacker(1, 8))); + integer_packer(1, 8))); break; case types::uac_explicit_ac_barr_list_r15: HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 1, 63)); @@ -11871,14 +11854,14 @@ SRSASN_CODE uac_barr_per_plmn_r15_s::uac_ac_barr_list_type_r15_c_::pack(bit_ref& SRSASN_CODE uac_barr_per_plmn_r15_s::uac_ac_barr_list_type_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::uac_implicit_ac_barr_list_r15: HANDLE_CODE(unpack_fixed_seq_of(&(c.get())[0], bref, c.get().size(), - UnalignedIntegerPacker(1, 8))); + integer_packer(1, 8))); break; case types::uac_explicit_ac_barr_list_r15: HANDLE_CODE(unpack_dyn_seq_of(c.get(), bref, 1, 63)); @@ -11895,7 +11878,7 @@ SRSASN_CODE udt_restricting_per_plmn_r13_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(udt_restricting_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, plmn_id_idx_r13, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(pack_integer(bref, plmn_id_idx_r13, (uint8_t)1u, (uint8_t)6u)); if (udt_restricting_r13_present) { HANDLE_CODE(udt_restricting_r13.pack(bref)); } @@ -11906,7 +11889,7 @@ SRSASN_CODE udt_restricting_per_plmn_r13_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(udt_restricting_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(plmn_id_idx_r13, bref, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(unpack_integer(plmn_id_idx_r13, bref, (uint8_t)1u, (uint8_t)6u)); if (udt_restricting_r13_present) { HANDLE_CODE(udt_restricting_r13.unpack(bref)); } @@ -11927,21 +11910,21 @@ void udt_restricting_per_plmn_r13_s::to_json(json_writer& j) const // UplinkPowerControlCommon ::= SEQUENCE SRSASN_CODE ul_pwr_ctrl_common_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, p0_nominal_pusch, (int8_t)-126, (int8_t)24)); - HANDLE_CODE(pack_enum(bref, alpha)); - HANDLE_CODE(pack_unalign_integer(bref, p0_nominal_pucch, (int8_t)-127, (int8_t)-96)); + HANDLE_CODE(pack_integer(bref, p0_nominal_pusch, (int8_t)-126, (int8_t)24)); + HANDLE_CODE(alpha.pack(bref)); + HANDLE_CODE(pack_integer(bref, p0_nominal_pucch, (int8_t)-127, (int8_t)-96)); HANDLE_CODE(delta_flist_pucch.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, delta_preamb_msg3, (int8_t)-1, (int8_t)6)); + HANDLE_CODE(pack_integer(bref, delta_preamb_msg3, (int8_t)-1, (int8_t)6)); return SRSASN_SUCCESS; } SRSASN_CODE ul_pwr_ctrl_common_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(p0_nominal_pusch, bref, (int8_t)-126, (int8_t)24)); - HANDLE_CODE(unpack_enum(alpha, bref)); - HANDLE_CODE(unpack_unalign_integer(p0_nominal_pucch, bref, (int8_t)-127, (int8_t)-96)); + HANDLE_CODE(unpack_integer(p0_nominal_pusch, bref, (int8_t)-126, (int8_t)24)); + HANDLE_CODE(alpha.unpack(bref)); + HANDLE_CODE(unpack_integer(p0_nominal_pucch, bref, (int8_t)-127, (int8_t)-96)); HANDLE_CODE(delta_flist_pucch.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(delta_preamb_msg3, bref, (int8_t)-1, (int8_t)6)); + HANDLE_CODE(unpack_integer(delta_preamb_msg3, bref, (int8_t)-1, (int8_t)6)); return SRSASN_SUCCESS; } @@ -11960,15 +11943,15 @@ void ul_pwr_ctrl_common_s::to_json(json_writer& j) const // UplinkPowerControlCommon-v1020 ::= SEQUENCE SRSASN_CODE ul_pwr_ctrl_common_v1020_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, delta_f_pucch_format3_r10)); - HANDLE_CODE(pack_enum(bref, delta_f_pucch_format1b_cs_r10)); + HANDLE_CODE(delta_f_pucch_format3_r10.pack(bref)); + HANDLE_CODE(delta_f_pucch_format1b_cs_r10.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE ul_pwr_ctrl_common_v1020_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(delta_f_pucch_format3_r10, bref)); - HANDLE_CODE(unpack_enum(delta_f_pucch_format1b_cs_r10, bref)); + HANDLE_CODE(delta_f_pucch_format3_r10.unpack(bref)); + HANDLE_CODE(delta_f_pucch_format1b_cs_r10.unpack(bref)); return SRSASN_SUCCESS; } @@ -11996,54 +11979,54 @@ SRSASN_CODE wlan_offload_cfg_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(t_steering_wlan_r12_present, 1)); if (thres_rsrp_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, thres_rsrp_r12.thres_rsrp_low_r12, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(pack_unalign_integer(bref, thres_rsrp_r12.thres_rsrp_high_r12, (uint8_t)0, (uint8_t)97)); + HANDLE_CODE(pack_integer(bref, thres_rsrp_r12.thres_rsrp_low_r12, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(pack_integer(bref, thres_rsrp_r12.thres_rsrp_high_r12, (uint8_t)0u, (uint8_t)97u)); } if (thres_rsrq_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, thres_rsrq_r12.thres_rsrq_low_r12, (uint8_t)0, (uint8_t)34)); - HANDLE_CODE(pack_unalign_integer(bref, thres_rsrq_r12.thres_rsrq_high_r12, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(pack_integer(bref, thres_rsrq_r12.thres_rsrq_low_r12, (uint8_t)0u, (uint8_t)34u)); + HANDLE_CODE(pack_integer(bref, thres_rsrq_r12.thres_rsrq_high_r12, (uint8_t)0u, (uint8_t)34u)); } if (thres_rsrq_on_all_symbols_with_wb_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, - thres_rsrq_on_all_symbols_with_wb_r12.thres_rsrq_on_all_symbols_with_wb_low_r12, - (uint8_t)0, - (uint8_t)34)); - HANDLE_CODE(pack_unalign_integer(bref, - thres_rsrq_on_all_symbols_with_wb_r12.thres_rsrq_on_all_symbols_with_wb_high_r12, - (uint8_t)0, - (uint8_t)34)); + HANDLE_CODE(pack_integer(bref, + thres_rsrq_on_all_symbols_with_wb_r12.thres_rsrq_on_all_symbols_with_wb_low_r12, + (uint8_t)0u, + (uint8_t)34u)); + HANDLE_CODE(pack_integer(bref, + thres_rsrq_on_all_symbols_with_wb_r12.thres_rsrq_on_all_symbols_with_wb_high_r12, + (uint8_t)0u, + (uint8_t)34u)); } if (thres_rsrq_on_all_symbols_r12_present) { - HANDLE_CODE(pack_unalign_integer( - bref, thres_rsrq_on_all_symbols_r12.thres_rsrq_on_all_symbols_low_r12, (uint8_t)0, (uint8_t)34)); - HANDLE_CODE(pack_unalign_integer( - bref, thres_rsrq_on_all_symbols_r12.thres_rsrq_on_all_symbols_high_r12, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE( + pack_integer(bref, thres_rsrq_on_all_symbols_r12.thres_rsrq_on_all_symbols_low_r12, (uint8_t)0u, (uint8_t)34u)); + HANDLE_CODE(pack_integer( + bref, thres_rsrq_on_all_symbols_r12.thres_rsrq_on_all_symbols_high_r12, (uint8_t)0u, (uint8_t)34u)); } if (thres_rsrq_wb_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, thres_rsrq_wb_r12.thres_rsrq_wb_low_r12, (uint8_t)0, (uint8_t)34)); - HANDLE_CODE(pack_unalign_integer(bref, thres_rsrq_wb_r12.thres_rsrq_wb_high_r12, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(pack_integer(bref, thres_rsrq_wb_r12.thres_rsrq_wb_low_r12, (uint8_t)0u, (uint8_t)34u)); + HANDLE_CODE(pack_integer(bref, thres_rsrq_wb_r12.thres_rsrq_wb_high_r12, (uint8_t)0u, (uint8_t)34u)); } if (thres_ch_utilization_r12_present) { HANDLE_CODE( - pack_unalign_integer(bref, thres_ch_utilization_r12.thres_ch_utilization_low_r12, (uint8_t)0, (uint8_t)255)); + pack_integer(bref, thres_ch_utilization_r12.thres_ch_utilization_low_r12, (uint16_t)0u, (uint16_t)255u)); HANDLE_CODE( - pack_unalign_integer(bref, thres_ch_utilization_r12.thres_ch_utilization_high_r12, (uint8_t)0, (uint8_t)255)); + pack_integer(bref, thres_ch_utilization_r12.thres_ch_utilization_high_r12, (uint16_t)0u, (uint16_t)255u)); } if (thres_backhaul_bw_r12_present) { - HANDLE_CODE(pack_enum(bref, thres_backhaul_bw_r12.thres_backhaul_dl_bw_low_r12)); - HANDLE_CODE(pack_enum(bref, thres_backhaul_bw_r12.thres_backhaul_dl_bw_high_r12)); - HANDLE_CODE(pack_enum(bref, thres_backhaul_bw_r12.thres_backhaul_ul_bw_low_r12)); - HANDLE_CODE(pack_enum(bref, thres_backhaul_bw_r12.thres_backhaul_ul_bw_high_r12)); + HANDLE_CODE(thres_backhaul_bw_r12.thres_backhaul_dl_bw_low_r12.pack(bref)); + HANDLE_CODE(thres_backhaul_bw_r12.thres_backhaul_dl_bw_high_r12.pack(bref)); + HANDLE_CODE(thres_backhaul_bw_r12.thres_backhaul_ul_bw_low_r12.pack(bref)); + HANDLE_CODE(thres_backhaul_bw_r12.thres_backhaul_ul_bw_high_r12.pack(bref)); } if (thres_wlan_rssi_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, thres_wlan_rssi_r12.thres_wlan_rssi_low_r12, (uint8_t)0, (uint8_t)255)); - HANDLE_CODE(pack_unalign_integer(bref, thres_wlan_rssi_r12.thres_wlan_rssi_high_r12, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(pack_integer(bref, thres_wlan_rssi_r12.thres_wlan_rssi_low_r12, (uint16_t)0u, (uint16_t)255u)); + HANDLE_CODE(pack_integer(bref, thres_wlan_rssi_r12.thres_wlan_rssi_high_r12, (uint16_t)0u, (uint16_t)255u)); } if (offload_pref_ind_r12_present) { HANDLE_CODE(offload_pref_ind_r12.pack(bref)); } if (t_steering_wlan_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, t_steering_wlan_r12, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, t_steering_wlan_r12, (uint8_t)0u, (uint8_t)7u)); } return SRSASN_SUCCESS; @@ -12063,54 +12046,54 @@ SRSASN_CODE wlan_offload_cfg_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(t_steering_wlan_r12_present, 1)); if (thres_rsrp_r12_present) { - HANDLE_CODE(unpack_unalign_integer(thres_rsrp_r12.thres_rsrp_low_r12, bref, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(unpack_unalign_integer(thres_rsrp_r12.thres_rsrp_high_r12, bref, (uint8_t)0, (uint8_t)97)); + HANDLE_CODE(unpack_integer(thres_rsrp_r12.thres_rsrp_low_r12, bref, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(unpack_integer(thres_rsrp_r12.thres_rsrp_high_r12, bref, (uint8_t)0u, (uint8_t)97u)); } if (thres_rsrq_r12_present) { - HANDLE_CODE(unpack_unalign_integer(thres_rsrq_r12.thres_rsrq_low_r12, bref, (uint8_t)0, (uint8_t)34)); - HANDLE_CODE(unpack_unalign_integer(thres_rsrq_r12.thres_rsrq_high_r12, bref, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(unpack_integer(thres_rsrq_r12.thres_rsrq_low_r12, bref, (uint8_t)0u, (uint8_t)34u)); + HANDLE_CODE(unpack_integer(thres_rsrq_r12.thres_rsrq_high_r12, bref, (uint8_t)0u, (uint8_t)34u)); } if (thres_rsrq_on_all_symbols_with_wb_r12_present) { - HANDLE_CODE(unpack_unalign_integer(thres_rsrq_on_all_symbols_with_wb_r12.thres_rsrq_on_all_symbols_with_wb_low_r12, - bref, - (uint8_t)0, - (uint8_t)34)); - HANDLE_CODE(unpack_unalign_integer(thres_rsrq_on_all_symbols_with_wb_r12.thres_rsrq_on_all_symbols_with_wb_high_r12, - bref, - (uint8_t)0, - (uint8_t)34)); + HANDLE_CODE(unpack_integer(thres_rsrq_on_all_symbols_with_wb_r12.thres_rsrq_on_all_symbols_with_wb_low_r12, + bref, + (uint8_t)0u, + (uint8_t)34u)); + HANDLE_CODE(unpack_integer(thres_rsrq_on_all_symbols_with_wb_r12.thres_rsrq_on_all_symbols_with_wb_high_r12, + bref, + (uint8_t)0u, + (uint8_t)34u)); } if (thres_rsrq_on_all_symbols_r12_present) { - HANDLE_CODE(unpack_unalign_integer( - thres_rsrq_on_all_symbols_r12.thres_rsrq_on_all_symbols_low_r12, bref, (uint8_t)0, (uint8_t)34)); - HANDLE_CODE(unpack_unalign_integer( - thres_rsrq_on_all_symbols_r12.thres_rsrq_on_all_symbols_high_r12, bref, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(unpack_integer( + thres_rsrq_on_all_symbols_r12.thres_rsrq_on_all_symbols_low_r12, bref, (uint8_t)0u, (uint8_t)34u)); + HANDLE_CODE(unpack_integer( + thres_rsrq_on_all_symbols_r12.thres_rsrq_on_all_symbols_high_r12, bref, (uint8_t)0u, (uint8_t)34u)); } if (thres_rsrq_wb_r12_present) { - HANDLE_CODE(unpack_unalign_integer(thres_rsrq_wb_r12.thres_rsrq_wb_low_r12, bref, (uint8_t)0, (uint8_t)34)); - HANDLE_CODE(unpack_unalign_integer(thres_rsrq_wb_r12.thres_rsrq_wb_high_r12, bref, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(unpack_integer(thres_rsrq_wb_r12.thres_rsrq_wb_low_r12, bref, (uint8_t)0u, (uint8_t)34u)); + HANDLE_CODE(unpack_integer(thres_rsrq_wb_r12.thres_rsrq_wb_high_r12, bref, (uint8_t)0u, (uint8_t)34u)); } if (thres_ch_utilization_r12_present) { HANDLE_CODE( - unpack_unalign_integer(thres_ch_utilization_r12.thres_ch_utilization_low_r12, bref, (uint8_t)0, (uint8_t)255)); + unpack_integer(thres_ch_utilization_r12.thres_ch_utilization_low_r12, bref, (uint16_t)0u, (uint16_t)255u)); HANDLE_CODE( - unpack_unalign_integer(thres_ch_utilization_r12.thres_ch_utilization_high_r12, bref, (uint8_t)0, (uint8_t)255)); + unpack_integer(thres_ch_utilization_r12.thres_ch_utilization_high_r12, bref, (uint16_t)0u, (uint16_t)255u)); } if (thres_backhaul_bw_r12_present) { - HANDLE_CODE(unpack_enum(thres_backhaul_bw_r12.thres_backhaul_dl_bw_low_r12, bref)); - HANDLE_CODE(unpack_enum(thres_backhaul_bw_r12.thres_backhaul_dl_bw_high_r12, bref)); - HANDLE_CODE(unpack_enum(thres_backhaul_bw_r12.thres_backhaul_ul_bw_low_r12, bref)); - HANDLE_CODE(unpack_enum(thres_backhaul_bw_r12.thres_backhaul_ul_bw_high_r12, bref)); + HANDLE_CODE(thres_backhaul_bw_r12.thres_backhaul_dl_bw_low_r12.unpack(bref)); + HANDLE_CODE(thres_backhaul_bw_r12.thres_backhaul_dl_bw_high_r12.unpack(bref)); + HANDLE_CODE(thres_backhaul_bw_r12.thres_backhaul_ul_bw_low_r12.unpack(bref)); + HANDLE_CODE(thres_backhaul_bw_r12.thres_backhaul_ul_bw_high_r12.unpack(bref)); } if (thres_wlan_rssi_r12_present) { - HANDLE_CODE(unpack_unalign_integer(thres_wlan_rssi_r12.thres_wlan_rssi_low_r12, bref, (uint8_t)0, (uint8_t)255)); - HANDLE_CODE(unpack_unalign_integer(thres_wlan_rssi_r12.thres_wlan_rssi_high_r12, bref, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(unpack_integer(thres_wlan_rssi_r12.thres_wlan_rssi_low_r12, bref, (uint16_t)0u, (uint16_t)255u)); + HANDLE_CODE(unpack_integer(thres_wlan_rssi_r12.thres_wlan_rssi_high_r12, bref, (uint16_t)0u, (uint16_t)255u)); } if (offload_pref_ind_r12_present) { HANDLE_CODE(offload_pref_ind_r12.unpack(bref)); } if (t_steering_wlan_r12_present) { - HANDLE_CODE(unpack_unalign_integer(t_steering_wlan_r12, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(t_steering_wlan_r12, bref, (uint8_t)0u, (uint8_t)7u)); } return SRSASN_SUCCESS; @@ -12195,15 +12178,15 @@ SRSASN_CODE wus_cfg_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(num_pos_r15_present, 1)); HANDLE_CODE(bref.pack(time_offset_e_drx_long_r15_present, 1)); - HANDLE_CODE(pack_enum(bref, max_dur_factor_r15)); + HANDLE_CODE(max_dur_factor_r15.pack(bref)); if (num_pos_r15_present) { - HANDLE_CODE(pack_enum(bref, num_pos_r15)); + HANDLE_CODE(num_pos_r15.pack(bref)); } - HANDLE_CODE(pack_enum(bref, freq_location_r15)); - HANDLE_CODE(pack_enum(bref, time_offset_drx_r15)); - HANDLE_CODE(pack_enum(bref, time_offset_e_drx_short_r15)); + HANDLE_CODE(freq_location_r15.pack(bref)); + HANDLE_CODE(time_offset_drx_r15.pack(bref)); + HANDLE_CODE(time_offset_e_drx_short_r15.pack(bref)); if (time_offset_e_drx_long_r15_present) { - HANDLE_CODE(pack_enum(bref, time_offset_e_drx_long_r15)); + HANDLE_CODE(time_offset_e_drx_long_r15.pack(bref)); } return SRSASN_SUCCESS; @@ -12213,15 +12196,15 @@ SRSASN_CODE wus_cfg_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(num_pos_r15_present, 1)); HANDLE_CODE(bref.unpack(time_offset_e_drx_long_r15_present, 1)); - HANDLE_CODE(unpack_enum(max_dur_factor_r15, bref)); + HANDLE_CODE(max_dur_factor_r15.unpack(bref)); if (num_pos_r15_present) { - HANDLE_CODE(unpack_enum(num_pos_r15, bref)); + HANDLE_CODE(num_pos_r15.unpack(bref)); } - HANDLE_CODE(unpack_enum(freq_location_r15, bref)); - HANDLE_CODE(unpack_enum(time_offset_drx_r15, bref)); - HANDLE_CODE(unpack_enum(time_offset_e_drx_short_r15, bref)); + HANDLE_CODE(freq_location_r15.unpack(bref)); + HANDLE_CODE(time_offset_drx_r15.unpack(bref)); + HANDLE_CODE(time_offset_e_drx_short_r15.unpack(bref)); if (time_offset_e_drx_long_r15_present) { - HANDLE_CODE(unpack_enum(time_offset_e_drx_long_r15, bref)); + HANDLE_CODE(time_offset_e_drx_long_r15.unpack(bref)); } return SRSASN_SUCCESS; @@ -12294,13 +12277,13 @@ void carrier_freq_info_utra_v1250_s::to_json(json_writer& j) const // CellReselectionInfoCommon-v1460 ::= SEQUENCE SRSASN_CODE cell_resel_info_common_v1460_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, s_search_delta_p_r14)); + HANDLE_CODE(s_search_delta_p_r14.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE cell_resel_info_common_v1460_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(s_search_delta_p_r14, bref)); + HANDLE_CODE(s_search_delta_p_r14.unpack(bref)); return SRSASN_SUCCESS; } @@ -12314,13 +12297,13 @@ void cell_resel_info_common_v1460_s::to_json(json_writer& j) const // CellReselectionInfoHSDN-r15 ::= SEQUENCE SRSASN_CODE cell_resel_info_hsdn_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, cell_equivalent_size_r15, (uint8_t)2, (uint8_t)16)); + HANDLE_CODE(pack_integer(bref, cell_equivalent_size_r15, (uint8_t)2u, (uint8_t)16u)); return SRSASN_SUCCESS; } SRSASN_CODE cell_resel_info_hsdn_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(cell_equivalent_size_r15, bref, (uint8_t)2, (uint8_t)16)); + HANDLE_CODE(unpack_integer(cell_equivalent_size_r15, bref, (uint8_t)2u, (uint8_t)16u)); return SRSASN_SUCCESS; } @@ -12338,7 +12321,7 @@ SRSASN_CODE cell_resel_params_cdma2000_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, band_class_list, 1, 32)); HANDLE_CODE(pack_dyn_seq_of(bref, neigh_cell_list, 1, 16)); - HANDLE_CODE(pack_unalign_integer(bref, t_resel_cdma2000, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, t_resel_cdma2000, (uint8_t)0u, (uint8_t)7u)); if (t_resel_cdma2000_sf_present) { HANDLE_CODE(t_resel_cdma2000_sf.pack(bref)); } @@ -12351,7 +12334,7 @@ SRSASN_CODE cell_resel_params_cdma2000_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(band_class_list, bref, 1, 32)); HANDLE_CODE(unpack_dyn_seq_of(neigh_cell_list, bref, 1, 16)); - HANDLE_CODE(unpack_unalign_integer(t_resel_cdma2000, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(t_resel_cdma2000, bref, (uint8_t)0u, (uint8_t)7u)); if (t_resel_cdma2000_sf_present) { HANDLE_CODE(t_resel_cdma2000_sf.unpack(bref)); } @@ -12406,13 +12389,13 @@ void cell_resel_params_cdma2000_v920_s::to_json(json_writer& j) const // CellReselectionServingFreqInfo-v1310 ::= SEQUENCE SRSASN_CODE cell_resel_serving_freq_info_v1310_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, cell_resel_sub_prio_r13)); + HANDLE_CODE(cell_resel_sub_prio_r13.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE cell_resel_serving_freq_info_v1310_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(cell_resel_sub_prio_r13, bref)); + HANDLE_CODE(cell_resel_sub_prio_r13.unpack(bref)); return SRSASN_SUCCESS; } @@ -12428,9 +12411,9 @@ SRSASN_CODE cell_sel_info_v920_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(q_qual_min_offset_r9_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, q_qual_min_r9, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(pack_integer(bref, q_qual_min_r9, (int8_t)-34, (int8_t)-3)); if (q_qual_min_offset_r9_present) { - HANDLE_CODE(pack_unalign_integer(bref, q_qual_min_offset_r9, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, q_qual_min_offset_r9, (uint8_t)1u, (uint8_t)8u)); } return SRSASN_SUCCESS; @@ -12439,9 +12422,9 @@ SRSASN_CODE cell_sel_info_v920_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(q_qual_min_offset_r9_present, 1)); - HANDLE_CODE(unpack_unalign_integer(q_qual_min_r9, bref, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(unpack_integer(q_qual_min_r9, bref, (int8_t)-34, (int8_t)-3)); if (q_qual_min_offset_r9_present) { - HANDLE_CODE(unpack_unalign_integer(q_qual_min_offset_r9, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(q_qual_min_offset_r9, bref, (uint8_t)1u, (uint8_t)8u)); } return SRSASN_SUCCESS; @@ -12490,17 +12473,17 @@ void eab_cfg_plmn_r11_s::to_json(json_writer& j) const // MBMS-NotificationConfig-r9 ::= SEQUENCE SRSASN_CODE mbms_notif_cfg_r9_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, notif_repeat_coeff_r9)); - HANDLE_CODE(pack_unalign_integer(bref, notif_offset_r9, (uint8_t)0, (uint8_t)10)); - HANDLE_CODE(pack_unalign_integer(bref, notif_sf_idx_r9, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(notif_repeat_coeff_r9.pack(bref)); + HANDLE_CODE(pack_integer(bref, notif_offset_r9, (uint8_t)0u, (uint8_t)10u)); + HANDLE_CODE(pack_integer(bref, notif_sf_idx_r9, (uint8_t)1u, (uint8_t)6u)); return SRSASN_SUCCESS; } SRSASN_CODE mbms_notif_cfg_r9_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(notif_repeat_coeff_r9, bref)); - HANDLE_CODE(unpack_unalign_integer(notif_offset_r9, bref, (uint8_t)0, (uint8_t)10)); - HANDLE_CODE(unpack_unalign_integer(notif_sf_idx_r9, bref, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(notif_repeat_coeff_r9.unpack(bref)); + HANDLE_CODE(unpack_integer(notif_offset_r9, bref, (uint8_t)0u, (uint8_t)10u)); + HANDLE_CODE(unpack_integer(notif_sf_idx_r9, bref, (uint8_t)1u, (uint8_t)6u)); return SRSASN_SUCCESS; } @@ -12516,13 +12499,13 @@ void mbms_notif_cfg_r9_s::to_json(json_writer& j) const // MBMS-NotificationConfig-v1430 ::= SEQUENCE SRSASN_CODE mbms_notif_cfg_v1430_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, notif_sf_idx_v1430, (uint8_t)7, (uint8_t)10)); + HANDLE_CODE(pack_integer(bref, notif_sf_idx_v1430, (uint8_t)7u, (uint8_t)10u)); return SRSASN_SUCCESS; } SRSASN_CODE mbms_notif_cfg_v1430_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(notif_sf_idx_v1430, bref, (uint8_t)7, (uint8_t)10)); + HANDLE_CODE(unpack_integer(notif_sf_idx_v1430, bref, (uint8_t)7u, (uint8_t)10u)); return SRSASN_SUCCESS; } @@ -12562,19 +12545,19 @@ void meas_idle_cfg_sib_r15_s::to_json(json_writer& j) const // MobilityStateParameters ::= SEQUENCE SRSASN_CODE mob_state_params_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, t_eval)); - HANDLE_CODE(pack_enum(bref, t_hyst_normal)); - HANDLE_CODE(pack_unalign_integer(bref, n_cell_change_medium, (uint8_t)1, (uint8_t)16)); - HANDLE_CODE(pack_unalign_integer(bref, n_cell_change_high, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(t_eval.pack(bref)); + HANDLE_CODE(t_hyst_normal.pack(bref)); + HANDLE_CODE(pack_integer(bref, n_cell_change_medium, (uint8_t)1u, (uint8_t)16u)); + HANDLE_CODE(pack_integer(bref, n_cell_change_high, (uint8_t)1u, (uint8_t)16u)); return SRSASN_SUCCESS; } SRSASN_CODE mob_state_params_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(t_eval, bref)); - HANDLE_CODE(unpack_enum(t_hyst_normal, bref)); - HANDLE_CODE(unpack_unalign_integer(n_cell_change_medium, bref, (uint8_t)1, (uint8_t)16)); - HANDLE_CODE(unpack_unalign_integer(n_cell_change_high, bref, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(t_eval.unpack(bref)); + HANDLE_CODE(t_hyst_normal.unpack(bref)); + HANDLE_CODE(unpack_integer(n_cell_change_medium, bref, (uint8_t)1u, (uint8_t)16u)); + HANDLE_CODE(unpack_integer(n_cell_change_high, bref, (uint8_t)1u, (uint8_t)16u)); return SRSASN_SUCCESS; } @@ -12601,7 +12584,7 @@ SRSASN_CODE rr_cfg_common_sib_s::pack(bit_ref& bref) const HANDLE_CODE(pucch_cfg_common.pack(bref)); HANDLE_CODE(srs_ul_cfg_common.pack(bref)); HANDLE_CODE(ul_pwr_ctrl_common.pack(bref)); - HANDLE_CODE(pack_enum(bref, ul_cp_len)); + HANDLE_CODE(ul_cp_len.pack(bref)); if (ext) { ext_groups_packer_guard group_flags; @@ -12625,7 +12608,7 @@ SRSASN_CODE rr_cfg_common_sib_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ul_pwr_ctrl_common_v1020.is_present(), 1)); if (ul_pwr_ctrl_common_v1020.is_present()) { @@ -12633,7 +12616,7 @@ SRSASN_CODE rr_cfg_common_sib_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(rach_cfg_common_v1250.is_present(), 1)); if (rach_cfg_common_v1250.is_present()) { @@ -12641,7 +12624,7 @@ SRSASN_CODE rr_cfg_common_sib_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(pusch_cfg_common_v1270.is_present(), 1)); if (pusch_cfg_common_v1270.is_present()) { @@ -12649,7 +12632,7 @@ SRSASN_CODE rr_cfg_common_sib_s::pack(bit_ref& bref) const } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(bcch_cfg_v1310.is_present(), 1)); HANDLE_CODE(bref.pack(pcch_cfg_v1310.is_present(), 1)); @@ -12681,7 +12664,7 @@ SRSASN_CODE rr_cfg_common_sib_s::pack(bit_ref& bref) const } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(high_speed_cfg_r14.is_present(), 1)); HANDLE_CODE(bref.pack(prach_cfg_v1430.is_present(), 1)); @@ -12697,7 +12680,7 @@ SRSASN_CODE rr_cfg_common_sib_s::pack(bit_ref& bref) const } } if (group_flags[5]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(prach_cfg_v1530.is_present(), 1)); HANDLE_CODE(bref.pack(ce_rss_cfg_r15.is_present(), 1)); @@ -12731,14 +12714,14 @@ SRSASN_CODE rr_cfg_common_sib_s::unpack(bit_ref& bref) HANDLE_CODE(pucch_cfg_common.unpack(bref)); HANDLE_CODE(srs_ul_cfg_common.unpack(bref)); HANDLE_CODE(ul_pwr_ctrl_common.unpack(bref)); - HANDLE_CODE(unpack_enum(ul_cp_len, bref)); + HANDLE_CODE(ul_cp_len.unpack(bref)); if (ext) { ext_groups_unpacker_guard group_flags(6); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool ul_pwr_ctrl_common_v1020_present; HANDLE_CODE(bref.unpack(ul_pwr_ctrl_common_v1020_present, 1)); @@ -12748,7 +12731,7 @@ SRSASN_CODE rr_cfg_common_sib_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool rach_cfg_common_v1250_present; HANDLE_CODE(bref.unpack(rach_cfg_common_v1250_present, 1)); @@ -12758,7 +12741,7 @@ SRSASN_CODE rr_cfg_common_sib_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool pusch_cfg_common_v1270_present; HANDLE_CODE(bref.unpack(pusch_cfg_common_v1270_present, 1)); @@ -12768,7 +12751,7 @@ SRSASN_CODE rr_cfg_common_sib_s::unpack(bit_ref& bref) } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool bcch_cfg_v1310_present; HANDLE_CODE(bref.unpack(bcch_cfg_v1310_present, 1)); @@ -12814,7 +12797,7 @@ SRSASN_CODE rr_cfg_common_sib_s::unpack(bit_ref& bref) } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool high_speed_cfg_r14_present; HANDLE_CODE(bref.unpack(high_speed_cfg_r14_present, 1)); @@ -12836,7 +12819,7 @@ SRSASN_CODE rr_cfg_common_sib_s::unpack(bit_ref& bref) } } if (group_flags[5]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool prach_cfg_v1530_present; HANDLE_CODE(bref.unpack(prach_cfg_v1530_present, 1)); @@ -12967,8 +12950,8 @@ SRSASN_CODE redist_serving_info_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(redist_factor_cell_r13_present, 1)); HANDLE_CODE(bref.pack(redistr_on_paging_only_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, redist_factor_serving_r13, (uint8_t)0, (uint8_t)10)); - HANDLE_CODE(pack_enum(bref, t360_r13)); + HANDLE_CODE(pack_integer(bref, redist_factor_serving_r13, (uint8_t)0u, (uint8_t)10u)); + HANDLE_CODE(t360_r13.pack(bref)); return SRSASN_SUCCESS; } @@ -12977,8 +12960,8 @@ SRSASN_CODE redist_serving_info_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(redist_factor_cell_r13_present, 1)); HANDLE_CODE(bref.unpack(redistr_on_paging_only_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(redist_factor_serving_r13, bref, (uint8_t)0, (uint8_t)10)); - HANDLE_CODE(unpack_enum(t360_r13, bref)); + HANDLE_CODE(unpack_integer(redist_factor_serving_r13, bref, (uint8_t)0u, (uint8_t)10u)); + HANDLE_CODE(t360_r13.unpack(bref)); return SRSASN_SUCCESS; } @@ -13000,8 +12983,8 @@ void redist_serving_info_r13_s::to_json(json_writer& j) const SRSASN_CODE sc_mcch_sched_info_r14_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_enum(bref, on_dur_timer_scptm_r14)); - HANDLE_CODE(pack_enum(bref, drx_inactivity_timer_scptm_r14)); + HANDLE_CODE(on_dur_timer_scptm_r14.pack(bref)); + HANDLE_CODE(drx_inactivity_timer_scptm_r14.pack(bref)); HANDLE_CODE(sched_period_start_offset_scptm_r14.pack(bref)); return SRSASN_SUCCESS; @@ -13009,8 +12992,8 @@ SRSASN_CODE sc_mcch_sched_info_r14_s::pack(bit_ref& bref) const SRSASN_CODE sc_mcch_sched_info_r14_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_enum(on_dur_timer_scptm_r14, bref)); - HANDLE_CODE(unpack_enum(drx_inactivity_timer_scptm_r14, bref)); + HANDLE_CODE(on_dur_timer_scptm_r14.unpack(bref)); + HANDLE_CODE(drx_inactivity_timer_scptm_r14.unpack(bref)); HANDLE_CODE(sched_period_start_offset_scptm_r14.unpack(bref)); return SRSASN_SUCCESS; @@ -13061,7 +13044,7 @@ sc_mcch_sched_info_r14_s::sched_period_start_offset_scptm_r14_c_::sched_period_s c.init(other.c.get()); break; case types::sf256: - c.init(other.c.get()); + c.init(other.c.get()); break; case types::sf320: c.init(other.c.get()); @@ -13124,7 +13107,7 @@ operator=(const sc_mcch_sched_info_r14_s::sched_period_start_offset_scptm_r14_c_ c.set(other.c.get()); break; case types::sf256: - c.set(other.c.get()); + c.set(other.c.get()); break; case types::sf320: c.set(other.c.get()); @@ -13184,7 +13167,7 @@ void sc_mcch_sched_info_r14_s::sched_period_start_offset_scptm_r14_c_::to_json(j j.write_int("sf160", c.get()); break; case types::sf256: - j.write_int("sf256", c.get()); + j.write_int("sf256", c.get()); break; case types::sf320: j.write_int("sf320", c.get()); @@ -13214,55 +13197,55 @@ void sc_mcch_sched_info_r14_s::sched_period_start_offset_scptm_r14_c_::to_json(j } SRSASN_CODE sc_mcch_sched_info_r14_s::sched_period_start_offset_scptm_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sf10: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)9u)); break; case types::sf20: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)19)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)19u)); break; case types::sf32: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)31u)); break; case types::sf40: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)39)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)39u)); break; case types::sf64: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)63u)); break; case types::sf80: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)79)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)79u)); break; case types::sf128: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)127u)); break; case types::sf160: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)159u)); break; case types::sf256: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)255u)); break; case types::sf320: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)319u)); break; case types::sf512: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)511u)); break; case types::sf640: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)639u)); break; case types::sf1024: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1023u)); break; case types::sf2048: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)2047u)); break; case types::sf4096: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)4095)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)4095u)); break; case types::sf8192: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)8191)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)8191u)); break; default: log_invalid_choice_id(type_, "sc_mcch_sched_info_r14_s::sched_period_start_offset_scptm_r14_c_"); @@ -13273,56 +13256,56 @@ SRSASN_CODE sc_mcch_sched_info_r14_s::sched_period_start_offset_scptm_r14_c_::pa SRSASN_CODE sc_mcch_sched_info_r14_s::sched_period_start_offset_scptm_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sf10: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)9u)); break; case types::sf20: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)19)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)19u)); break; case types::sf32: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)31u)); break; case types::sf40: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)39)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)39u)); break; case types::sf64: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)63u)); break; case types::sf80: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)79)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)79u)); break; case types::sf128: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)127u)); break; case types::sf160: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)159u)); break; case types::sf256: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)255u)); break; case types::sf320: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)319u)); break; case types::sf512: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)511u)); break; case types::sf640: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)639u)); break; case types::sf1024: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1023u)); break; case types::sf2048: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)2047u)); break; case types::sf4096: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)4095)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)4095u)); break; case types::sf8192: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)8191)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)8191u)); break; default: log_invalid_choice_id(type_, "sc_mcch_sched_info_r14_s::sched_period_start_offset_scptm_r14_c_"); @@ -13340,16 +13323,16 @@ SRSASN_CODE sl_disc_cfg_relay_ue_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(hyst_min_r13_present, 1)); if (thresh_high_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, thresh_high_r13, (uint8_t)0, (uint8_t)49)); + HANDLE_CODE(pack_integer(bref, thresh_high_r13, (uint8_t)0u, (uint8_t)49u)); } if (thresh_low_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, thresh_low_r13, (uint8_t)0, (uint8_t)49)); + HANDLE_CODE(pack_integer(bref, thresh_low_r13, (uint8_t)0u, (uint8_t)49u)); } if (hyst_max_r13_present) { - HANDLE_CODE(pack_enum(bref, hyst_max_r13)); + HANDLE_CODE(hyst_max_r13.pack(bref)); } if (hyst_min_r13_present) { - HANDLE_CODE(pack_enum(bref, hyst_min_r13)); + HANDLE_CODE(hyst_min_r13.pack(bref)); } return SRSASN_SUCCESS; @@ -13362,16 +13345,16 @@ SRSASN_CODE sl_disc_cfg_relay_ue_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(hyst_min_r13_present, 1)); if (thresh_high_r13_present) { - HANDLE_CODE(unpack_unalign_integer(thresh_high_r13, bref, (uint8_t)0, (uint8_t)49)); + HANDLE_CODE(unpack_integer(thresh_high_r13, bref, (uint8_t)0u, (uint8_t)49u)); } if (thresh_low_r13_present) { - HANDLE_CODE(unpack_unalign_integer(thresh_low_r13, bref, (uint8_t)0, (uint8_t)49)); + HANDLE_CODE(unpack_integer(thresh_low_r13, bref, (uint8_t)0u, (uint8_t)49u)); } if (hyst_max_r13_present) { - HANDLE_CODE(unpack_enum(hyst_max_r13, bref)); + HANDLE_CODE(hyst_max_r13.unpack(bref)); } if (hyst_min_r13_present) { - HANDLE_CODE(unpack_enum(hyst_min_r13, bref)); + HANDLE_CODE(hyst_min_r13.unpack(bref)); } return SRSASN_SUCCESS; @@ -13401,10 +13384,10 @@ SRSASN_CODE sl_disc_cfg_remote_ue_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(hyst_max_r13_present, 1)); if (thresh_high_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, thresh_high_r13, (uint8_t)0, (uint8_t)49)); + HANDLE_CODE(pack_integer(bref, thresh_high_r13, (uint8_t)0u, (uint8_t)49u)); } if (hyst_max_r13_present) { - HANDLE_CODE(pack_enum(bref, hyst_max_r13)); + HANDLE_CODE(hyst_max_r13.pack(bref)); } HANDLE_CODE(resel_info_ic_r13.pack(bref)); @@ -13416,10 +13399,10 @@ SRSASN_CODE sl_disc_cfg_remote_ue_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(hyst_max_r13_present, 1)); if (thresh_high_r13_present) { - HANDLE_CODE(unpack_unalign_integer(thresh_high_r13, bref, (uint8_t)0, (uint8_t)49)); + HANDLE_CODE(unpack_integer(thresh_high_r13, bref, (uint8_t)0u, (uint8_t)49u)); } if (hyst_max_r13_present) { - HANDLE_CODE(unpack_enum(hyst_max_r13, bref)); + HANDLE_CODE(hyst_max_r13.unpack(bref)); } HANDLE_CODE(resel_info_ic_r13.unpack(bref)); @@ -13481,16 +13464,16 @@ SRSASN_CODE sl_v2x_cfg_common_r14_s::pack(bit_ref& bref) const HANDLE_CODE(zone_cfg_r14.pack(bref)); } if (type_tx_sync_r14_present) { - HANDLE_CODE(pack_enum(bref, type_tx_sync_r14)); + HANDLE_CODE(type_tx_sync_r14.pack(bref)); } if (thres_sl_tx_prioritization_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, thres_sl_tx_prioritization_r14, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, thres_sl_tx_prioritization_r14, (uint8_t)1u, (uint8_t)8u)); } if (anchor_carrier_freq_list_r14_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, anchor_carrier_freq_list_r14, 1, 8, UnalignedIntegerPacker(0, 262143))); + HANDLE_CODE(pack_dyn_seq_of(bref, anchor_carrier_freq_list_r14, 1, 8, integer_packer(0, 262143))); } if (offset_dfn_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, offset_dfn_r14, (uint16_t)0, (uint16_t)1000)); + HANDLE_CODE(pack_integer(bref, offset_dfn_r14, (uint16_t)0u, (uint16_t)1000u)); } if (cbr_common_tx_cfg_list_r14_present) { HANDLE_CODE(cbr_common_tx_cfg_list_r14.pack(bref)); @@ -13539,17 +13522,16 @@ SRSASN_CODE sl_v2x_cfg_common_r14_s::unpack(bit_ref& bref) HANDLE_CODE(zone_cfg_r14.unpack(bref)); } if (type_tx_sync_r14_present) { - HANDLE_CODE(unpack_enum(type_tx_sync_r14, bref)); + HANDLE_CODE(type_tx_sync_r14.unpack(bref)); } if (thres_sl_tx_prioritization_r14_present) { - HANDLE_CODE(unpack_unalign_integer(thres_sl_tx_prioritization_r14, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(thres_sl_tx_prioritization_r14, bref, (uint8_t)1u, (uint8_t)8u)); } if (anchor_carrier_freq_list_r14_present) { - HANDLE_CODE( - unpack_dyn_seq_of(anchor_carrier_freq_list_r14, bref, 1, 8, UnalignedIntegerPacker(0, 262143))); + HANDLE_CODE(unpack_dyn_seq_of(anchor_carrier_freq_list_r14, bref, 1, 8, integer_packer(0, 262143))); } if (offset_dfn_r14_present) { - HANDLE_CODE(unpack_unalign_integer(offset_dfn_r14, bref, (uint16_t)0, (uint16_t)1000)); + HANDLE_CODE(unpack_integer(offset_dfn_r14, bref, (uint16_t)0u, (uint16_t)1000u)); } if (cbr_common_tx_cfg_list_r14_present) { HANDLE_CODE(cbr_common_tx_cfg_list_r14.unpack(bref)); @@ -13636,7 +13618,7 @@ SRSASN_CODE sl_v2x_packet_dupl_cfg_r15_s::pack(bit_ref& bref) const bref.pack(ext, 1); HANDLE_CODE(bref.pack(allowed_carrier_freq_cfg_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, thresh_sl_reliability_r15, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, thresh_sl_reliability_r15, (uint8_t)1u, (uint8_t)8u)); if (allowed_carrier_freq_cfg_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, allowed_carrier_freq_cfg_r15, 1, 16)); } @@ -13648,7 +13630,7 @@ SRSASN_CODE sl_v2x_packet_dupl_cfg_r15_s::unpack(bit_ref& bref) bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(allowed_carrier_freq_cfg_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(thresh_sl_reliability_r15, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(thresh_sl_reliability_r15, bref, (uint8_t)1u, (uint8_t)8u)); if (allowed_carrier_freq_cfg_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(allowed_carrier_freq_cfg_r15, bref, 1, 16)); } @@ -13732,7 +13714,7 @@ SRSASN_CODE sib_type1_v9e0_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (freq_band_ind_v9e0_present) { - HANDLE_CODE(pack_unalign_integer(bref, freq_band_ind_v9e0, (uint16_t)65, (uint16_t)256)); + HANDLE_CODE(pack_integer(bref, freq_band_ind_v9e0, (uint16_t)65u, (uint16_t)256u)); } if (multi_band_info_list_v9e0_present) { HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list_v9e0, 1, 8)); @@ -13750,7 +13732,7 @@ SRSASN_CODE sib_type1_v9e0_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (freq_band_ind_v9e0_present) { - HANDLE_CODE(unpack_unalign_integer(freq_band_ind_v9e0, bref, (uint16_t)65, (uint16_t)256)); + HANDLE_CODE(unpack_integer(freq_band_ind_v9e0, bref, (uint16_t)65u, (uint16_t)256u)); } if (multi_band_info_list_v9e0_present) { HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list_v9e0, bref, 1, 8)); @@ -13788,7 +13770,7 @@ SRSASN_CODE sib_type2_v8h0_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (multi_band_info_list_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list, 1, 8, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list, 1, 8, integer_packer(1, 32))); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -13802,7 +13784,7 @@ SRSASN_CODE sib_type2_v8h0_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (multi_band_info_list_present) { - HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list, bref, 1, 8, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list, bref, 1, 8, integer_packer(1, 32))); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -13988,10 +13970,10 @@ SRSASN_CODE time_ref_info_r15_s::pack(bit_ref& bref) const HANDLE_CODE(time_r15.pack(bref)); if (uncertainty_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, uncertainty_r15, (uint8_t)0, (uint8_t)12)); + HANDLE_CODE(pack_integer(bref, uncertainty_r15, (uint8_t)0u, (uint8_t)12u)); } if (ref_sfn_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, ref_sfn_r15, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, ref_sfn_r15, (uint16_t)0u, (uint16_t)1023u)); } return SRSASN_SUCCESS; @@ -14004,10 +13986,10 @@ SRSASN_CODE time_ref_info_r15_s::unpack(bit_ref& bref) HANDLE_CODE(time_r15.unpack(bref)); if (uncertainty_r15_present) { - HANDLE_CODE(unpack_unalign_integer(uncertainty_r15, bref, (uint8_t)0, (uint8_t)12)); + HANDLE_CODE(unpack_integer(uncertainty_r15, bref, (uint8_t)0u, (uint8_t)12u)); } if (ref_sfn_r15_present) { - HANDLE_CODE(unpack_unalign_integer(ref_sfn_r15, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(ref_sfn_r15, bref, (uint16_t)0u, (uint16_t)1023u)); } return SRSASN_SUCCESS; @@ -14033,12 +14015,12 @@ void time_ref_info_r15_s::to_json(json_writer& j) const SRSASN_CODE ue_timers_and_consts_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_enum(bref, t300)); - HANDLE_CODE(pack_enum(bref, t301)); - HANDLE_CODE(pack_enum(bref, t310)); - HANDLE_CODE(pack_enum(bref, n310)); - HANDLE_CODE(pack_enum(bref, t311)); - HANDLE_CODE(pack_enum(bref, n311)); + HANDLE_CODE(t300.pack(bref)); + HANDLE_CODE(t301.pack(bref)); + HANDLE_CODE(t310.pack(bref)); + HANDLE_CODE(n310.pack(bref)); + HANDLE_CODE(t311.pack(bref)); + HANDLE_CODE(n311.pack(bref)); if (ext) { ext_groups_packer_guard group_flags; @@ -14049,31 +14031,31 @@ SRSASN_CODE ue_timers_and_consts_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(t300_v1310_present, 1)); HANDLE_CODE(bref.pack(t301_v1310_present, 1)); if (t300_v1310_present) { - HANDLE_CODE(pack_enum(bref, t300_v1310)); + HANDLE_CODE(t300_v1310.pack(bref)); } if (t301_v1310_present) { - HANDLE_CODE(pack_enum(bref, t301_v1310)); + HANDLE_CODE(t301_v1310.pack(bref)); } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(t310_v1330_present, 1)); if (t310_v1330_present) { - HANDLE_CODE(pack_enum(bref, t310_v1330)); + HANDLE_CODE(t310_v1330.pack(bref)); } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(t300_r15_present, 1)); if (t300_r15_present) { - HANDLE_CODE(pack_enum(bref, t300_r15)); + HANDLE_CODE(t300_r15.pack(bref)); } } } @@ -14082,43 +14064,43 @@ SRSASN_CODE ue_timers_and_consts_s::pack(bit_ref& bref) const SRSASN_CODE ue_timers_and_consts_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_enum(t300, bref)); - HANDLE_CODE(unpack_enum(t301, bref)); - HANDLE_CODE(unpack_enum(t310, bref)); - HANDLE_CODE(unpack_enum(n310, bref)); - HANDLE_CODE(unpack_enum(t311, bref)); - HANDLE_CODE(unpack_enum(n311, bref)); + HANDLE_CODE(t300.unpack(bref)); + HANDLE_CODE(t301.unpack(bref)); + HANDLE_CODE(t310.unpack(bref)); + HANDLE_CODE(n310.unpack(bref)); + HANDLE_CODE(t311.unpack(bref)); + HANDLE_CODE(n311.unpack(bref)); if (ext) { ext_groups_unpacker_guard group_flags(3); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(t300_v1310_present, 1)); HANDLE_CODE(bref.unpack(t301_v1310_present, 1)); if (t300_v1310_present) { - HANDLE_CODE(unpack_enum(t300_v1310, bref)); + HANDLE_CODE(t300_v1310.unpack(bref)); } if (t301_v1310_present) { - HANDLE_CODE(unpack_enum(t301_v1310, bref)); + HANDLE_CODE(t301_v1310.unpack(bref)); } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(t310_v1330_present, 1)); if (t310_v1330_present) { - HANDLE_CODE(unpack_enum(t310_v1330, bref)); + HANDLE_CODE(t310_v1330.unpack(bref)); } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(t300_r15_present, 1)); if (t300_r15_present) { - HANDLE_CODE(unpack_enum(t300_r15, bref)); + HANDLE_CODE(t300_r15.unpack(bref)); } } } @@ -14201,15 +14183,15 @@ void wlan_offload_info_per_plmn_r12_s::to_json(json_writer& j) const // SchedulingInfo ::= SEQUENCE SRSASN_CODE sched_info_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, si_periodicity)); - HANDLE_CODE(pack_dyn_seq_of(bref, sib_map_info, 0, 31, EnumPacker())); + HANDLE_CODE(si_periodicity.pack(bref)); + HANDLE_CODE(pack_dyn_seq_of(bref, sib_map_info, 0, 31)); return SRSASN_SUCCESS; } SRSASN_CODE sched_info_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(si_periodicity, bref)); - HANDLE_CODE(unpack_dyn_seq_of(sib_map_info, bref, 0, 31, EnumPacker())); + HANDLE_CODE(si_periodicity.unpack(bref)); + HANDLE_CODE(unpack_dyn_seq_of(sib_map_info, bref, 0, 31)); return SRSASN_SUCCESS; } @@ -14304,7 +14286,7 @@ SRSASN_CODE sib_type1_v8h0_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (multi_band_info_list_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list, 1, 8, UnalignedIntegerPacker(1, 64))); + HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list, 1, 8, integer_packer(1, 64))); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -14318,7 +14300,7 @@ SRSASN_CODE sib_type1_v8h0_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (multi_band_info_list_present) { - HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list, bref, 1, 8, UnalignedIntegerPacker(1, 64))); + HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list, bref, 1, 8, integer_packer(1, 64))); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -14459,8 +14441,8 @@ SRSASN_CODE sib_type11_s::pack(bit_ref& bref) const HANDLE_CODE(msg_id.pack(bref)); HANDLE_CODE(serial_num.pack(bref)); - HANDLE_CODE(pack_enum(bref, warning_msg_segment_type)); - HANDLE_CODE(pack_unalign_integer(bref, warning_msg_segment_num, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(warning_msg_segment_type.pack(bref)); + HANDLE_CODE(pack_integer(bref, warning_msg_segment_num, (uint8_t)0u, (uint8_t)63u)); HANDLE_CODE(warning_msg_segment.pack(bref)); if (data_coding_scheme_present) { HANDLE_CODE(data_coding_scheme.pack(bref)); @@ -14482,8 +14464,8 @@ SRSASN_CODE sib_type11_s::unpack(bit_ref& bref) HANDLE_CODE(msg_id.unpack(bref)); HANDLE_CODE(serial_num.unpack(bref)); - HANDLE_CODE(unpack_enum(warning_msg_segment_type, bref)); - HANDLE_CODE(unpack_unalign_integer(warning_msg_segment_num, bref, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(warning_msg_segment_type.unpack(bref)); + HANDLE_CODE(unpack_integer(warning_msg_segment_num, bref, (uint8_t)0u, (uint8_t)63u)); HANDLE_CODE(warning_msg_segment.unpack(bref)); if (data_coding_scheme_present) { HANDLE_CODE(data_coding_scheme.unpack(bref)); @@ -14526,8 +14508,8 @@ SRSASN_CODE sib_type12_r9_s::pack(bit_ref& bref) const HANDLE_CODE(msg_id_r9.pack(bref)); HANDLE_CODE(serial_num_r9.pack(bref)); - HANDLE_CODE(pack_enum(bref, warning_msg_segment_type_r9)); - HANDLE_CODE(pack_unalign_integer(bref, warning_msg_segment_num_r9, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(warning_msg_segment_type_r9.pack(bref)); + HANDLE_CODE(pack_integer(bref, warning_msg_segment_num_r9, (uint8_t)0u, (uint8_t)63u)); HANDLE_CODE(warning_msg_segment_r9.pack(bref)); if (data_coding_scheme_r9_present) { HANDLE_CODE(data_coding_scheme_r9.pack(bref)); @@ -14542,7 +14524,7 @@ SRSASN_CODE sib_type12_r9_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(warning_area_coordinates_segment_r15_present, 1)); if (warning_area_coordinates_segment_r15_present) { @@ -14560,8 +14542,8 @@ SRSASN_CODE sib_type12_r9_s::unpack(bit_ref& bref) HANDLE_CODE(msg_id_r9.unpack(bref)); HANDLE_CODE(serial_num_r9.unpack(bref)); - HANDLE_CODE(unpack_enum(warning_msg_segment_type_r9, bref)); - HANDLE_CODE(unpack_unalign_integer(warning_msg_segment_num_r9, bref, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(warning_msg_segment_type_r9.unpack(bref)); + HANDLE_CODE(unpack_integer(warning_msg_segment_num_r9, bref, (uint8_t)0u, (uint8_t)63u)); HANDLE_CODE(warning_msg_segment_r9.unpack(bref)); if (data_coding_scheme_r9_present) { HANDLE_CODE(data_coding_scheme_r9.unpack(bref)); @@ -14575,7 +14557,7 @@ SRSASN_CODE sib_type12_r9_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(warning_area_coordinates_segment_r15_present, 1)); if (warning_area_coordinates_segment_r15_present) { @@ -14625,7 +14607,7 @@ SRSASN_CODE sib_type13_r9_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(notif_cfg_v1430.is_present(), 1)); if (notif_cfg_v1430.is_present()) { @@ -14651,7 +14633,7 @@ SRSASN_CODE sib_type13_r9_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool notif_cfg_v1430_present; HANDLE_CODE(bref.unpack(notif_cfg_v1430_present, 1)); @@ -14705,11 +14687,11 @@ SRSASN_CODE sib_type14_r11_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(eab_per_rsrp_r15_present, 1)); if (eab_per_rsrp_r15_present) { - HANDLE_CODE(pack_enum(bref, eab_per_rsrp_r15)); + HANDLE_CODE(eab_per_rsrp_r15.pack(bref)); } } } @@ -14733,11 +14715,11 @@ SRSASN_CODE sib_type14_r11_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(eab_per_rsrp_r15_present, 1)); if (eab_per_rsrp_r15_present) { - HANDLE_CODE(unpack_enum(eab_per_rsrp_r15, bref)); + HANDLE_CODE(eab_per_rsrp_r15.unpack(bref)); } } } @@ -14851,7 +14833,7 @@ void sib_type14_r11_s::eab_param_r11_c_::to_json(json_writer& j) const } SRSASN_CODE sib_type14_r11_s::eab_param_r11_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::eab_common_r11: HANDLE_CODE(c.get().pack(bref)); @@ -14868,7 +14850,7 @@ SRSASN_CODE sib_type14_r11_s::eab_param_r11_c_::pack(bit_ref& bref) const SRSASN_CODE sib_type14_r11_s::eab_param_r11_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::eab_common_r11: @@ -14893,7 +14875,7 @@ SRSASN_CODE sib_type15_r11_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(late_non_crit_ext_present, 1)); if (mbms_sai_intra_freq_r11_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, mbms_sai_intra_freq_r11, 1, 64, UnalignedIntegerPacker(0, 65535))); + HANDLE_CODE(pack_dyn_seq_of(bref, mbms_sai_intra_freq_r11, 1, 64, integer_packer(0, 65535))); } if (mbms_sai_inter_freq_list_r11_present) { HANDLE_CODE(pack_dyn_seq_of(bref, mbms_sai_inter_freq_list_r11, 1, 8)); @@ -14910,7 +14892,7 @@ SRSASN_CODE sib_type15_r11_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(mbms_sai_inter_freq_list_v1140.is_present(), 1)); if (mbms_sai_inter_freq_list_v1140.is_present()) { @@ -14918,7 +14900,7 @@ SRSASN_CODE sib_type15_r11_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(mbms_intra_freq_carrier_type_r14.is_present(), 1)); HANDLE_CODE(bref.pack(mbms_inter_freq_carrier_type_list_r14.is_present(), 1)); @@ -14940,7 +14922,7 @@ SRSASN_CODE sib_type15_r11_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(late_non_crit_ext_present, 1)); if (mbms_sai_intra_freq_r11_present) { - HANDLE_CODE(unpack_dyn_seq_of(mbms_sai_intra_freq_r11, bref, 1, 64, UnalignedIntegerPacker(0, 65535))); + HANDLE_CODE(unpack_dyn_seq_of(mbms_sai_intra_freq_r11, bref, 1, 64, integer_packer(0, 65535))); } if (mbms_sai_inter_freq_list_r11_present) { HANDLE_CODE(unpack_dyn_seq_of(mbms_sai_inter_freq_list_r11, bref, 1, 8)); @@ -14954,7 +14936,7 @@ SRSASN_CODE sib_type15_r11_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool mbms_sai_inter_freq_list_v1140_present; HANDLE_CODE(bref.unpack(mbms_sai_inter_freq_list_v1140_present, 1)); @@ -14964,7 +14946,7 @@ SRSASN_CODE sib_type15_r11_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool mbms_intra_freq_carrier_type_r14_present; HANDLE_CODE(bref.unpack(mbms_intra_freq_carrier_type_r14_present, 1)); @@ -15036,15 +15018,15 @@ SRSASN_CODE sib_type16_r11_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(time_info_r11.day_light_saving_time_r11_present, 1)); HANDLE_CODE(bref.pack(time_info_r11.leap_seconds_r11_present, 1)); HANDLE_CODE(bref.pack(time_info_r11.local_time_offset_r11_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, time_info_r11.time_info_utc_r11, (uint64_t)0, (uint64_t)549755813887)); + HANDLE_CODE(pack_integer(bref, time_info_r11.time_info_utc_r11, (uint64_t)0u, (uint64_t)549755813887u)); if (time_info_r11.day_light_saving_time_r11_present) { HANDLE_CODE(time_info_r11.day_light_saving_time_r11.pack(bref)); } if (time_info_r11.leap_seconds_r11_present) { - HANDLE_CODE(pack_unalign_integer(bref, time_info_r11.leap_seconds_r11, (int16_t)-127, (int16_t)128)); + HANDLE_CODE(pack_integer(bref, time_info_r11.leap_seconds_r11, (int16_t)-127, (int16_t)128)); } if (time_info_r11.local_time_offset_r11_present) { - HANDLE_CODE(pack_unalign_integer(bref, time_info_r11.local_time_offset_r11, (int8_t)-63, (int8_t)64)); + HANDLE_CODE(pack_integer(bref, time_info_r11.local_time_offset_r11, (int8_t)-63, (int8_t)64)); } } if (late_non_crit_ext_present) { @@ -15057,7 +15039,7 @@ SRSASN_CODE sib_type16_r11_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(time_ref_info_r15.is_present(), 1)); if (time_ref_info_r15.is_present()) { @@ -15077,15 +15059,15 @@ SRSASN_CODE sib_type16_r11_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(time_info_r11.day_light_saving_time_r11_present, 1)); HANDLE_CODE(bref.unpack(time_info_r11.leap_seconds_r11_present, 1)); HANDLE_CODE(bref.unpack(time_info_r11.local_time_offset_r11_present, 1)); - HANDLE_CODE(unpack_unalign_integer(time_info_r11.time_info_utc_r11, bref, (uint64_t)0, (uint64_t)549755813887)); + HANDLE_CODE(unpack_integer(time_info_r11.time_info_utc_r11, bref, (uint64_t)0u, (uint64_t)549755813887u)); if (time_info_r11.day_light_saving_time_r11_present) { HANDLE_CODE(time_info_r11.day_light_saving_time_r11.unpack(bref)); } if (time_info_r11.leap_seconds_r11_present) { - HANDLE_CODE(unpack_unalign_integer(time_info_r11.leap_seconds_r11, bref, (int16_t)-127, (int16_t)128)); + HANDLE_CODE(unpack_integer(time_info_r11.leap_seconds_r11, bref, (int16_t)-127, (int16_t)128)); } if (time_info_r11.local_time_offset_r11_present) { - HANDLE_CODE(unpack_unalign_integer(time_info_r11.local_time_offset_r11, bref, (int8_t)-63, (int8_t)64)); + HANDLE_CODE(unpack_integer(time_info_r11.local_time_offset_r11, bref, (int8_t)-63, (int8_t)64)); } } if (late_non_crit_ext_present) { @@ -15097,7 +15079,7 @@ SRSASN_CODE sib_type16_r11_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool time_ref_info_r15_present; HANDLE_CODE(bref.unpack(time_ref_info_r15_present, 1)); @@ -15220,7 +15202,7 @@ SRSASN_CODE sib_type18_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(comm_tx_pool_normal_common_ext_r13.is_present(), 1)); HANDLE_CODE(bref.pack(comm_tx_res_uc_req_allowed_r13_present, 1)); @@ -15262,7 +15244,7 @@ SRSASN_CODE sib_type18_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool comm_tx_pool_normal_common_ext_r13_present; HANDLE_CODE(bref.unpack(comm_tx_pool_normal_common_ext_r13_present, 1)); @@ -15370,7 +15352,7 @@ SRSASN_CODE sib_type19_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(disc_cfg_v1310.is_present(), 1)); HANDLE_CODE(bref.pack(disc_cfg_relay_r13.is_present(), 1)); @@ -15432,7 +15414,7 @@ SRSASN_CODE sib_type19_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool disc_cfg_v1310_present; HANDLE_CODE(bref.unpack(disc_cfg_v1310_present, 1)); @@ -15578,16 +15560,16 @@ SRSASN_CODE sib_type2_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(freq_info.ul_carrier_freq_present, 1)); HANDLE_CODE(bref.pack(freq_info.ul_bw_present, 1)); if (freq_info.ul_carrier_freq_present) { - HANDLE_CODE(pack_unalign_integer(bref, freq_info.ul_carrier_freq, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, freq_info.ul_carrier_freq, (uint32_t)0u, (uint32_t)65535u)); } if (freq_info.ul_bw_present) { - HANDLE_CODE(pack_enum(bref, freq_info.ul_bw)); + HANDLE_CODE(freq_info.ul_bw.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, freq_info.add_spec_emission, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, freq_info.add_spec_emission, (uint8_t)1u, (uint8_t)32u)); if (mbsfn_sf_cfg_list_present) { HANDLE_CODE(pack_dyn_seq_of(bref, mbsfn_sf_cfg_list, 1, 8)); } - HANDLE_CODE(pack_enum(bref, time_align_timer_common)); + HANDLE_CODE(time_align_timer_common.pack(bref)); if (ext) { ext_groups_packer_guard group_flags; @@ -15604,7 +15586,7 @@ SRSASN_CODE sib_type2_s::pack(bit_ref& bref) const group_flags[5] |= acdc_barr_per_plmn_list_r13.is_present(); group_flags[6] |= udt_restricting_for_common_r13.is_present(); group_flags[6] |= udt_restricting_per_plmn_list_r13.is_present(); - group_flags[6] |= c_io_t_eps_optim_info_r13.is_present(); + group_flags[6] |= cio_t_eps_optim_info_r13.is_present(); group_flags[6] |= use_full_resume_id_r13_present; group_flags[7] |= unicast_freq_hop_ind_r13_present; group_flags[8] |= mbsfn_sf_cfg_list_v1430.is_present(); @@ -15617,12 +15599,12 @@ SRSASN_CODE sib_type2_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(late_non_crit_ext_present, 1)); } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ssac_barr_for_mmtel_voice_r9.is_present(), 1)); HANDLE_CODE(bref.pack(ssac_barr_for_mmtel_video_r9.is_present(), 1)); @@ -15634,7 +15616,7 @@ SRSASN_CODE sib_type2_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ac_barr_for_csfb_r10.is_present(), 1)); if (ac_barr_for_csfb_r10.is_present()) { @@ -15642,7 +15624,7 @@ SRSASN_CODE sib_type2_s::pack(bit_ref& bref) const } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ac_barr_skip_for_mmtel_voice_r12_present, 1)); HANDLE_CODE(bref.pack(ac_barr_skip_for_mmtel_video_r12_present, 1)); @@ -15653,12 +15635,12 @@ SRSASN_CODE sib_type2_s::pack(bit_ref& bref) const } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(voice_service_cause_ind_r12_present, 1)); } if (group_flags[5]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(acdc_barr_for_common_r13.is_present(), 1)); HANDLE_CODE(bref.pack(acdc_barr_per_plmn_list_r13.is_present(), 1)); @@ -15670,11 +15652,11 @@ SRSASN_CODE sib_type2_s::pack(bit_ref& bref) const } } if (group_flags[6]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(udt_restricting_for_common_r13.is_present(), 1)); HANDLE_CODE(bref.pack(udt_restricting_per_plmn_list_r13.is_present(), 1)); - HANDLE_CODE(bref.pack(c_io_t_eps_optim_info_r13.is_present(), 1)); + HANDLE_CODE(bref.pack(cio_t_eps_optim_info_r13.is_present(), 1)); HANDLE_CODE(bref.pack(use_full_resume_id_r13_present, 1)); if (udt_restricting_for_common_r13.is_present()) { HANDLE_CODE(udt_restricting_for_common_r13->pack(bref)); @@ -15682,17 +15664,17 @@ SRSASN_CODE sib_type2_s::pack(bit_ref& bref) const if (udt_restricting_per_plmn_list_r13.is_present()) { HANDLE_CODE(pack_dyn_seq_of(bref, *udt_restricting_per_plmn_list_r13, 1, 6)); } - if (c_io_t_eps_optim_info_r13.is_present()) { - HANDLE_CODE(pack_dyn_seq_of(bref, *c_io_t_eps_optim_info_r13, 1, 6)); + if (cio_t_eps_optim_info_r13.is_present()) { + HANDLE_CODE(pack_dyn_seq_of(bref, *cio_t_eps_optim_info_r13, 1, 6)); } } if (group_flags[7]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(unicast_freq_hop_ind_r13_present, 1)); } if (group_flags[8]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(mbsfn_sf_cfg_list_v1430.is_present(), 1)); HANDLE_CODE(bref.pack(video_service_cause_ind_r14_present, 1)); @@ -15701,7 +15683,7 @@ SRSASN_CODE sib_type2_s::pack(bit_ref& bref) const } } if (group_flags[9]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(plmn_info_list_r15.is_present(), 1)); if (plmn_info_list_r15.is_present()) { @@ -15709,7 +15691,7 @@ SRSASN_CODE sib_type2_s::pack(bit_ref& bref) const } } if (group_flags[10]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(cp_edt_r15_present, 1)); HANDLE_CODE(bref.pack(up_edt_r15_present, 1)); @@ -15741,28 +15723,28 @@ SRSASN_CODE sib_type2_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(freq_info.ul_carrier_freq_present, 1)); HANDLE_CODE(bref.unpack(freq_info.ul_bw_present, 1)); if (freq_info.ul_carrier_freq_present) { - HANDLE_CODE(unpack_unalign_integer(freq_info.ul_carrier_freq, bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(freq_info.ul_carrier_freq, bref, (uint32_t)0u, (uint32_t)65535u)); } if (freq_info.ul_bw_present) { - HANDLE_CODE(unpack_enum(freq_info.ul_bw, bref)); + HANDLE_CODE(freq_info.ul_bw.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(freq_info.add_spec_emission, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(freq_info.add_spec_emission, bref, (uint8_t)1u, (uint8_t)32u)); if (mbsfn_sf_cfg_list_present) { HANDLE_CODE(unpack_dyn_seq_of(mbsfn_sf_cfg_list, bref, 1, 8)); } - HANDLE_CODE(unpack_enum(time_align_timer_common, bref)); + HANDLE_CODE(time_align_timer_common.unpack(bref)); if (ext) { ext_groups_unpacker_guard group_flags(11); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(late_non_crit_ext_present, 1)); } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool ssac_barr_for_mmtel_voice_r9_present; HANDLE_CODE(bref.unpack(ssac_barr_for_mmtel_voice_r9_present, 1)); @@ -15778,7 +15760,7 @@ SRSASN_CODE sib_type2_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool ac_barr_for_csfb_r10_present; HANDLE_CODE(bref.unpack(ac_barr_for_csfb_r10_present, 1)); @@ -15788,7 +15770,7 @@ SRSASN_CODE sib_type2_s::unpack(bit_ref& bref) } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(ac_barr_skip_for_mmtel_voice_r12_present, 1)); HANDLE_CODE(bref.unpack(ac_barr_skip_for_mmtel_video_r12_present, 1)); @@ -15801,12 +15783,12 @@ SRSASN_CODE sib_type2_s::unpack(bit_ref& bref) } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(voice_service_cause_ind_r12_present, 1)); } if (group_flags[5]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool acdc_barr_for_common_r13_present; HANDLE_CODE(bref.unpack(acdc_barr_for_common_r13_present, 1)); @@ -15822,7 +15804,7 @@ SRSASN_CODE sib_type2_s::unpack(bit_ref& bref) } } if (group_flags[6]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool udt_restricting_for_common_r13_present; HANDLE_CODE(bref.unpack(udt_restricting_for_common_r13_present, 1)); @@ -15830,9 +15812,9 @@ SRSASN_CODE sib_type2_s::unpack(bit_ref& bref) bool udt_restricting_per_plmn_list_r13_present; HANDLE_CODE(bref.unpack(udt_restricting_per_plmn_list_r13_present, 1)); udt_restricting_per_plmn_list_r13.set_present(udt_restricting_per_plmn_list_r13_present); - bool c_io_t_eps_optim_info_r13_present; - HANDLE_CODE(bref.unpack(c_io_t_eps_optim_info_r13_present, 1)); - c_io_t_eps_optim_info_r13.set_present(c_io_t_eps_optim_info_r13_present); + bool cio_t_eps_optim_info_r13_present; + HANDLE_CODE(bref.unpack(cio_t_eps_optim_info_r13_present, 1)); + cio_t_eps_optim_info_r13.set_present(cio_t_eps_optim_info_r13_present); HANDLE_CODE(bref.unpack(use_full_resume_id_r13_present, 1)); if (udt_restricting_for_common_r13.is_present()) { HANDLE_CODE(udt_restricting_for_common_r13->unpack(bref)); @@ -15840,17 +15822,17 @@ SRSASN_CODE sib_type2_s::unpack(bit_ref& bref) if (udt_restricting_per_plmn_list_r13.is_present()) { HANDLE_CODE(unpack_dyn_seq_of(*udt_restricting_per_plmn_list_r13, bref, 1, 6)); } - if (c_io_t_eps_optim_info_r13.is_present()) { - HANDLE_CODE(unpack_dyn_seq_of(*c_io_t_eps_optim_info_r13, bref, 1, 6)); + if (cio_t_eps_optim_info_r13.is_present()) { + HANDLE_CODE(unpack_dyn_seq_of(*cio_t_eps_optim_info_r13, bref, 1, 6)); } } if (group_flags[7]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(unicast_freq_hop_ind_r13_present, 1)); } if (group_flags[8]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool mbsfn_sf_cfg_list_v1430_present; HANDLE_CODE(bref.unpack(mbsfn_sf_cfg_list_v1430_present, 1)); @@ -15861,7 +15843,7 @@ SRSASN_CODE sib_type2_s::unpack(bit_ref& bref) } } if (group_flags[9]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool plmn_info_list_r15_present; HANDLE_CODE(bref.unpack(plmn_info_list_r15_present, 1)); @@ -15871,7 +15853,7 @@ SRSASN_CODE sib_type2_s::unpack(bit_ref& bref) } } if (group_flags[10]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(cp_edt_r15_present, 1)); HANDLE_CODE(bref.unpack(up_edt_r15_present, 1)); @@ -15977,10 +15959,10 @@ void sib_type2_s::to_json(json_writer& j) const } j.end_array(); } - if (c_io_t_eps_optim_info_r13.is_present()) { + if (cio_t_eps_optim_info_r13.is_present()) { j.start_array("cIoT-EPS-OptimisationInfo-r13"); - for (uint32_t i1 = 0; i1 < c_io_t_eps_optim_info_r13->size(); ++i1) { - ((*c_io_t_eps_optim_info_r13)[i1]).to_json(j); + for (uint32_t i1 = 0; i1 < cio_t_eps_optim_info_r13->size(); ++i1) { + ((*cio_t_eps_optim_info_r13)[i1]).to_json(j); } j.end_array(); } @@ -16030,13 +16012,13 @@ SRSASN_CODE sib_type20_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(sc_mcch_dur_r13_present, 1)); HANDLE_CODE(bref.pack(late_non_crit_ext_present, 1)); - HANDLE_CODE(pack_enum(bref, sc_mcch_repeat_period_r13)); - HANDLE_CODE(pack_unalign_integer(bref, sc_mcch_offset_r13, (uint8_t)0, (uint8_t)10)); - HANDLE_CODE(pack_unalign_integer(bref, sc_mcch_first_sf_r13, (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(sc_mcch_repeat_period_r13.pack(bref)); + HANDLE_CODE(pack_integer(bref, sc_mcch_offset_r13, (uint8_t)0u, (uint8_t)10u)); + HANDLE_CODE(pack_integer(bref, sc_mcch_first_sf_r13, (uint8_t)0u, (uint8_t)9u)); if (sc_mcch_dur_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, sc_mcch_dur_r13, (uint8_t)2, (uint8_t)9)); + HANDLE_CODE(pack_integer(bref, sc_mcch_dur_r13, (uint8_t)2u, (uint8_t)9u)); } - HANDLE_CODE(pack_enum(bref, sc_mcch_mod_period_r13)); + HANDLE_CODE(sc_mcch_mod_period_r13.pack(bref)); if (late_non_crit_ext_present) { HANDLE_CODE(late_non_crit_ext.pack(bref)); } @@ -16052,35 +16034,34 @@ SRSASN_CODE sib_type20_r13_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(br_bcch_cfg_r14.is_present(), 1)); HANDLE_CODE(bref.pack(sc_mcch_sched_info_r14.is_present(), 1)); HANDLE_CODE(bref.pack(pdsch_max_num_repeat_cemode_a_sc_mtch_r14_present, 1)); HANDLE_CODE(bref.pack(pdsch_max_num_repeat_cemode_b_sc_mtch_r14_present, 1)); if (br_bcch_cfg_r14.is_present()) { - HANDLE_CODE(pack_unalign_integer(bref, br_bcch_cfg_r14->mpdcch_nb_sc_mcch_r14, (uint8_t)1, (uint8_t)16)); - HANDLE_CODE(pack_enum(bref, br_bcch_cfg_r14->mpdcch_num_repeat_sc_mcch_r14)); + HANDLE_CODE(pack_integer(bref, br_bcch_cfg_r14->mpdcch_nb_sc_mcch_r14, (uint8_t)1u, (uint8_t)16u)); + HANDLE_CODE(br_bcch_cfg_r14->mpdcch_num_repeat_sc_mcch_r14.pack(bref)); HANDLE_CODE(br_bcch_cfg_r14->mpdcch_start_sf_sc_mcch_r14.pack(bref)); - HANDLE_CODE(pack_enum(bref, br_bcch_cfg_r14->mpdcch_pdsch_hop_cfg_sc_mcch_r14)); - HANDLE_CODE( - pack_unalign_integer(bref, br_bcch_cfg_r14->sc_mcch_carrier_freq_r14, (uint32_t)0, (uint32_t)262143)); - HANDLE_CODE(pack_unalign_integer(bref, br_bcch_cfg_r14->sc_mcch_offset_br_r14, (uint8_t)0, (uint8_t)10)); - HANDLE_CODE(pack_enum(bref, br_bcch_cfg_r14->sc_mcch_repeat_period_br_r14)); - HANDLE_CODE(pack_enum(bref, br_bcch_cfg_r14->sc_mcch_mod_period_br_r14)); + HANDLE_CODE(br_bcch_cfg_r14->mpdcch_pdsch_hop_cfg_sc_mcch_r14.pack(bref)); + HANDLE_CODE(pack_integer(bref, br_bcch_cfg_r14->sc_mcch_carrier_freq_r14, (uint32_t)0u, (uint32_t)262143u)); + HANDLE_CODE(pack_integer(bref, br_bcch_cfg_r14->sc_mcch_offset_br_r14, (uint8_t)0u, (uint8_t)10u)); + HANDLE_CODE(br_bcch_cfg_r14->sc_mcch_repeat_period_br_r14.pack(bref)); + HANDLE_CODE(br_bcch_cfg_r14->sc_mcch_mod_period_br_r14.pack(bref)); } if (sc_mcch_sched_info_r14.is_present()) { HANDLE_CODE(sc_mcch_sched_info_r14->pack(bref)); } if (pdsch_max_num_repeat_cemode_a_sc_mtch_r14_present) { - HANDLE_CODE(pack_enum(bref, pdsch_max_num_repeat_cemode_a_sc_mtch_r14)); + HANDLE_CODE(pdsch_max_num_repeat_cemode_a_sc_mtch_r14.pack(bref)); } if (pdsch_max_num_repeat_cemode_b_sc_mtch_r14_present) { - HANDLE_CODE(pack_enum(bref, pdsch_max_num_repeat_cemode_b_sc_mtch_r14)); + HANDLE_CODE(pdsch_max_num_repeat_cemode_b_sc_mtch_r14.pack(bref)); } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(sc_mcch_repeat_period_v1470_present, 1)); HANDLE_CODE(bref.pack(sc_mcch_mod_period_v1470_present, 1)); @@ -16094,13 +16075,13 @@ SRSASN_CODE sib_type20_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(sc_mcch_dur_r13_present, 1)); HANDLE_CODE(bref.unpack(late_non_crit_ext_present, 1)); - HANDLE_CODE(unpack_enum(sc_mcch_repeat_period_r13, bref)); - HANDLE_CODE(unpack_unalign_integer(sc_mcch_offset_r13, bref, (uint8_t)0, (uint8_t)10)); - HANDLE_CODE(unpack_unalign_integer(sc_mcch_first_sf_r13, bref, (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(sc_mcch_repeat_period_r13.unpack(bref)); + HANDLE_CODE(unpack_integer(sc_mcch_offset_r13, bref, (uint8_t)0u, (uint8_t)10u)); + HANDLE_CODE(unpack_integer(sc_mcch_first_sf_r13, bref, (uint8_t)0u, (uint8_t)9u)); if (sc_mcch_dur_r13_present) { - HANDLE_CODE(unpack_unalign_integer(sc_mcch_dur_r13, bref, (uint8_t)2, (uint8_t)9)); + HANDLE_CODE(unpack_integer(sc_mcch_dur_r13, bref, (uint8_t)2u, (uint8_t)9u)); } - HANDLE_CODE(unpack_enum(sc_mcch_mod_period_r13, bref)); + HANDLE_CODE(sc_mcch_mod_period_r13.unpack(bref)); if (late_non_crit_ext_present) { HANDLE_CODE(late_non_crit_ext.unpack(bref)); } @@ -16110,7 +16091,7 @@ SRSASN_CODE sib_type20_r13_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool br_bcch_cfg_r14_present; HANDLE_CODE(bref.unpack(br_bcch_cfg_r14_present, 1)); @@ -16121,28 +16102,27 @@ SRSASN_CODE sib_type20_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(pdsch_max_num_repeat_cemode_a_sc_mtch_r14_present, 1)); HANDLE_CODE(bref.unpack(pdsch_max_num_repeat_cemode_b_sc_mtch_r14_present, 1)); if (br_bcch_cfg_r14.is_present()) { - HANDLE_CODE(unpack_unalign_integer(br_bcch_cfg_r14->mpdcch_nb_sc_mcch_r14, bref, (uint8_t)1, (uint8_t)16)); - HANDLE_CODE(unpack_enum(br_bcch_cfg_r14->mpdcch_num_repeat_sc_mcch_r14, bref)); + HANDLE_CODE(unpack_integer(br_bcch_cfg_r14->mpdcch_nb_sc_mcch_r14, bref, (uint8_t)1u, (uint8_t)16u)); + HANDLE_CODE(br_bcch_cfg_r14->mpdcch_num_repeat_sc_mcch_r14.unpack(bref)); HANDLE_CODE(br_bcch_cfg_r14->mpdcch_start_sf_sc_mcch_r14.unpack(bref)); - HANDLE_CODE(unpack_enum(br_bcch_cfg_r14->mpdcch_pdsch_hop_cfg_sc_mcch_r14, bref)); - HANDLE_CODE( - unpack_unalign_integer(br_bcch_cfg_r14->sc_mcch_carrier_freq_r14, bref, (uint32_t)0, (uint32_t)262143)); - HANDLE_CODE(unpack_unalign_integer(br_bcch_cfg_r14->sc_mcch_offset_br_r14, bref, (uint8_t)0, (uint8_t)10)); - HANDLE_CODE(unpack_enum(br_bcch_cfg_r14->sc_mcch_repeat_period_br_r14, bref)); - HANDLE_CODE(unpack_enum(br_bcch_cfg_r14->sc_mcch_mod_period_br_r14, bref)); + HANDLE_CODE(br_bcch_cfg_r14->mpdcch_pdsch_hop_cfg_sc_mcch_r14.unpack(bref)); + HANDLE_CODE(unpack_integer(br_bcch_cfg_r14->sc_mcch_carrier_freq_r14, bref, (uint32_t)0u, (uint32_t)262143u)); + HANDLE_CODE(unpack_integer(br_bcch_cfg_r14->sc_mcch_offset_br_r14, bref, (uint8_t)0u, (uint8_t)10u)); + HANDLE_CODE(br_bcch_cfg_r14->sc_mcch_repeat_period_br_r14.unpack(bref)); + HANDLE_CODE(br_bcch_cfg_r14->sc_mcch_mod_period_br_r14.unpack(bref)); } if (sc_mcch_sched_info_r14.is_present()) { HANDLE_CODE(sc_mcch_sched_info_r14->unpack(bref)); } if (pdsch_max_num_repeat_cemode_a_sc_mtch_r14_present) { - HANDLE_CODE(unpack_enum(pdsch_max_num_repeat_cemode_a_sc_mtch_r14, bref)); + HANDLE_CODE(pdsch_max_num_repeat_cemode_a_sc_mtch_r14.unpack(bref)); } if (pdsch_max_num_repeat_cemode_b_sc_mtch_r14_present) { - HANDLE_CODE(unpack_enum(pdsch_max_num_repeat_cemode_b_sc_mtch_r14, bref)); + HANDLE_CODE(pdsch_max_num_repeat_cemode_b_sc_mtch_r14.unpack(bref)); } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(sc_mcch_repeat_period_v1470_present, 1)); HANDLE_CODE(bref.unpack(sc_mcch_mod_period_v1470_present, 1)); @@ -16264,13 +16244,13 @@ void sib_type20_r13_s::br_bcch_cfg_r14_s_::mpdcch_start_sf_sc_mcch_r14_c_::to_js } SRSASN_CODE sib_type20_r13_s::br_bcch_cfg_r14_s_::mpdcch_start_sf_sc_mcch_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::fdd_r14: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; case types::tdd_r14: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; default: log_invalid_choice_id(type_, "sib_type20_r13_s::br_bcch_cfg_r14_s_::mpdcch_start_sf_sc_mcch_r14_c_"); @@ -16281,14 +16261,14 @@ SRSASN_CODE sib_type20_r13_s::br_bcch_cfg_r14_s_::mpdcch_start_sf_sc_mcch_r14_c_ SRSASN_CODE sib_type20_r13_s::br_bcch_cfg_r14_s_::mpdcch_start_sf_sc_mcch_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::fdd_r14: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; case types::tdd_r14: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; default: log_invalid_choice_id(type_, "sib_type20_r13_s::br_bcch_cfg_r14_s_::mpdcch_start_sf_sc_mcch_r14_c_"); @@ -16352,7 +16332,7 @@ SRSASN_CODE sib_type24_r15_s::pack(bit_ref& bref) const if (carrier_freq_list_nr_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, carrier_freq_list_nr_r15, 1, 8)); } - HANDLE_CODE(pack_unalign_integer(bref, t_resel_nr_r15, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, t_resel_nr_r15, (uint8_t)0u, (uint8_t)7u)); if (t_resel_nr_sf_r15_present) { HANDLE_CODE(t_resel_nr_sf_r15.pack(bref)); } @@ -16372,7 +16352,7 @@ SRSASN_CODE sib_type24_r15_s::unpack(bit_ref& bref) if (carrier_freq_list_nr_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(carrier_freq_list_nr_r15, bref, 1, 8)); } - HANDLE_CODE(unpack_unalign_integer(t_resel_nr_r15, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(t_resel_nr_r15, bref, (uint8_t)0u, (uint8_t)7u)); if (t_resel_nr_sf_r15_present) { HANDLE_CODE(t_resel_nr_sf_r15.unpack(bref)); } @@ -16570,13 +16550,13 @@ void sib_type25_r15_s::uac_ac1_select_assist_info_r15_c_::to_json(json_writer& j } SRSASN_CODE sib_type25_r15_s::uac_ac1_select_assist_info_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::plmn_common_r15: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; case types::individual_plmn_list_r15: - HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 2, 6, EnumPacker())); + HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 2, 6)); break; default: log_invalid_choice_id(type_, "sib_type25_r15_s::uac_ac1_select_assist_info_r15_c_"); @@ -16587,14 +16567,14 @@ SRSASN_CODE sib_type25_r15_s::uac_ac1_select_assist_info_r15_c_::pack(bit_ref& b SRSASN_CODE sib_type25_r15_s::uac_ac1_select_assist_info_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::plmn_common_r15: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; case types::individual_plmn_list_r15: - HANDLE_CODE(unpack_dyn_seq_of(c.get(), bref, 2, 6, EnumPacker())); + HANDLE_CODE(unpack_dyn_seq_of(c.get(), bref, 2, 6)); break; default: log_invalid_choice_id(type_, "sib_type25_r15_s::uac_ac1_select_assist_info_r15_c_"); @@ -16625,13 +16605,13 @@ SRSASN_CODE sib_type26_r15_s::pack(bit_ref& bref) const HANDLE_CODE(v2x_packet_dupl_cfg_r15.pack(bref)); } if (sync_freq_list_r15_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, sync_freq_list_r15, 1, 8, UnalignedIntegerPacker(0, 262143))); + HANDLE_CODE(pack_dyn_seq_of(bref, sync_freq_list_r15, 1, 8, integer_packer(0, 262143))); } if (v2x_freq_sel_cfg_list_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, v2x_freq_sel_cfg_list_r15, 1, 8)); } if (thresh_s_rssi_cbr_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, thresh_s_rssi_cbr_r14, (uint8_t)0, (uint8_t)45)); + HANDLE_CODE(pack_integer(bref, thresh_s_rssi_cbr_r14, (uint8_t)0u, (uint8_t)45u)); } return SRSASN_SUCCESS; @@ -16657,13 +16637,13 @@ SRSASN_CODE sib_type26_r15_s::unpack(bit_ref& bref) HANDLE_CODE(v2x_packet_dupl_cfg_r15.unpack(bref)); } if (sync_freq_list_r15_present) { - HANDLE_CODE(unpack_dyn_seq_of(sync_freq_list_r15, bref, 1, 8, UnalignedIntegerPacker(0, 262143))); + HANDLE_CODE(unpack_dyn_seq_of(sync_freq_list_r15, bref, 1, 8, integer_packer(0, 262143))); } if (v2x_freq_sel_cfg_list_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(v2x_freq_sel_cfg_list_r15, bref, 1, 8)); } if (thresh_s_rssi_cbr_r14_present) { - HANDLE_CODE(unpack_unalign_integer(thresh_s_rssi_cbr_r14, bref, (uint8_t)0, (uint8_t)45)); + HANDLE_CODE(unpack_integer(thresh_s_rssi_cbr_r14, bref, (uint8_t)0u, (uint8_t)45u)); } return SRSASN_SUCCESS; @@ -16717,35 +16697,35 @@ SRSASN_CODE sib_type3_s::pack(bit_ref& bref) const { bref.pack(ext, 1); HANDLE_CODE(bref.pack(cell_resel_info_common.speed_state_resel_pars_present, 1)); - HANDLE_CODE(pack_enum(bref, cell_resel_info_common.q_hyst)); + HANDLE_CODE(cell_resel_info_common.q_hyst.pack(bref)); if (cell_resel_info_common.speed_state_resel_pars_present) { HANDLE_CODE(cell_resel_info_common.speed_state_resel_pars.mob_state_params.pack(bref)); - HANDLE_CODE(pack_enum(bref, cell_resel_info_common.speed_state_resel_pars.q_hyst_sf.sf_medium)); - HANDLE_CODE(pack_enum(bref, cell_resel_info_common.speed_state_resel_pars.q_hyst_sf.sf_high)); + HANDLE_CODE(cell_resel_info_common.speed_state_resel_pars.q_hyst_sf.sf_medium.pack(bref)); + HANDLE_CODE(cell_resel_info_common.speed_state_resel_pars.q_hyst_sf.sf_high.pack(bref)); } HANDLE_CODE(bref.pack(cell_resel_serving_freq_info.s_non_intra_search_present, 1)); if (cell_resel_serving_freq_info.s_non_intra_search_present) { - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_serving_freq_info.s_non_intra_search, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, cell_resel_serving_freq_info.s_non_intra_search, (uint8_t)0u, (uint8_t)31u)); } - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_serving_freq_info.thresh_serving_low, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_serving_freq_info.cell_resel_prio, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, cell_resel_serving_freq_info.thresh_serving_low, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, cell_resel_serving_freq_info.cell_resel_prio, (uint8_t)0u, (uint8_t)7u)); HANDLE_CODE(bref.pack(intra_freq_cell_resel_info.p_max_present, 1)); HANDLE_CODE(bref.pack(intra_freq_cell_resel_info.s_intra_search_present, 1)); HANDLE_CODE(bref.pack(intra_freq_cell_resel_info.allowed_meas_bw_present, 1)); HANDLE_CODE(bref.pack(intra_freq_cell_resel_info.t_resel_eutra_sf_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, intra_freq_cell_resel_info.q_rx_lev_min, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(pack_integer(bref, intra_freq_cell_resel_info.q_rx_lev_min, (int8_t)-70, (int8_t)-22)); if (intra_freq_cell_resel_info.p_max_present) { - HANDLE_CODE(pack_unalign_integer(bref, intra_freq_cell_resel_info.p_max, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, intra_freq_cell_resel_info.p_max, (int8_t)-30, (int8_t)33)); } if (intra_freq_cell_resel_info.s_intra_search_present) { - HANDLE_CODE(pack_unalign_integer(bref, intra_freq_cell_resel_info.s_intra_search, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, intra_freq_cell_resel_info.s_intra_search, (uint8_t)0u, (uint8_t)31u)); } if (intra_freq_cell_resel_info.allowed_meas_bw_present) { - HANDLE_CODE(pack_enum(bref, intra_freq_cell_resel_info.allowed_meas_bw)); + HANDLE_CODE(intra_freq_cell_resel_info.allowed_meas_bw.pack(bref)); } HANDLE_CODE(bref.pack(intra_freq_cell_resel_info.presence_ant_port1, 1)); HANDLE_CODE(intra_freq_cell_resel_info.neigh_cell_cfg.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, intra_freq_cell_resel_info.t_resel_eutra, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, intra_freq_cell_resel_info.t_resel_eutra, (uint8_t)0u, (uint8_t)7u)); if (intra_freq_cell_resel_info.t_resel_eutra_sf_present) { HANDLE_CODE(intra_freq_cell_resel_info.t_resel_eutra_sf.pack(bref)); } @@ -16772,52 +16752,50 @@ SRSASN_CODE sib_type3_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(late_non_crit_ext_present, 1)); } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(s_intra_search_v920.is_present(), 1)); HANDLE_CODE(bref.pack(s_non_intra_search_v920.is_present(), 1)); HANDLE_CODE(bref.pack(q_qual_min_r9_present, 1)); HANDLE_CODE(bref.pack(thresh_serving_low_q_r9_present, 1)); if (s_intra_search_v920.is_present()) { - HANDLE_CODE(pack_unalign_integer(bref, s_intra_search_v920->s_intra_search_p_r9, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, s_intra_search_v920->s_intra_search_q_r9, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, s_intra_search_v920->s_intra_search_p_r9, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, s_intra_search_v920->s_intra_search_q_r9, (uint8_t)0u, (uint8_t)31u)); } if (s_non_intra_search_v920.is_present()) { - HANDLE_CODE( - pack_unalign_integer(bref, s_non_intra_search_v920->s_non_intra_search_p_r9, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE( - pack_unalign_integer(bref, s_non_intra_search_v920->s_non_intra_search_q_r9, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, s_non_intra_search_v920->s_non_intra_search_p_r9, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, s_non_intra_search_v920->s_non_intra_search_q_r9, (uint8_t)0u, (uint8_t)31u)); } if (q_qual_min_r9_present) { - HANDLE_CODE(pack_unalign_integer(bref, q_qual_min_r9, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(pack_integer(bref, q_qual_min_r9, (int8_t)-34, (int8_t)-3)); } if (thresh_serving_low_q_r9_present) { - HANDLE_CODE(pack_unalign_integer(bref, thresh_serving_low_q_r9, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, thresh_serving_low_q_r9, (uint8_t)0u, (uint8_t)31u)); } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(q_qual_min_wb_r11_present, 1)); if (q_qual_min_wb_r11_present) { - HANDLE_CODE(pack_unalign_integer(bref, q_qual_min_wb_r11, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(pack_integer(bref, q_qual_min_wb_r11, (int8_t)-34, (int8_t)-3)); } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(q_qual_min_rsrq_on_all_symbols_r12_present, 1)); if (q_qual_min_rsrq_on_all_symbols_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, q_qual_min_rsrq_on_all_symbols_r12, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(pack_integer(bref, q_qual_min_rsrq_on_all_symbols_r12, (int8_t)-34, (int8_t)-3)); } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(cell_resel_serving_freq_info_v1310.is_present(), 1)); HANDLE_CODE(bref.pack(redist_serving_info_r13.is_present(), 1)); @@ -16833,11 +16811,11 @@ SRSASN_CODE sib_type3_s::pack(bit_ref& bref) const HANDLE_CODE(cell_sel_info_ce_r13->pack(bref)); } if (t_resel_eutra_ce_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, t_resel_eutra_ce_r13, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, t_resel_eutra_ce_r13, (uint8_t)0u, (uint8_t)15u)); } } if (group_flags[5]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(cell_sel_info_ce1_r13.is_present(), 1)); if (cell_sel_info_ce1_r13.is_present()) { @@ -16845,7 +16823,7 @@ SRSASN_CODE sib_type3_s::pack(bit_ref& bref) const } } if (group_flags[6]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(cell_sel_info_ce1_v1360.is_present(), 1)); if (cell_sel_info_ce1_v1360.is_present()) { @@ -16853,7 +16831,7 @@ SRSASN_CODE sib_type3_s::pack(bit_ref& bref) const } } if (group_flags[7]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(cell_resel_info_common_v1460.is_present(), 1)); if (cell_resel_info_common_v1460.is_present()) { @@ -16861,7 +16839,7 @@ SRSASN_CODE sib_type3_s::pack(bit_ref& bref) const } } if (group_flags[8]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(cell_resel_info_hsdn_r15.is_present(), 1)); HANDLE_CODE(bref.pack(cell_sel_info_ce_v1530.is_present(), 1)); @@ -16880,35 +16858,35 @@ SRSASN_CODE sib_type3_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(cell_resel_info_common.speed_state_resel_pars_present, 1)); - HANDLE_CODE(unpack_enum(cell_resel_info_common.q_hyst, bref)); + HANDLE_CODE(cell_resel_info_common.q_hyst.unpack(bref)); if (cell_resel_info_common.speed_state_resel_pars_present) { HANDLE_CODE(cell_resel_info_common.speed_state_resel_pars.mob_state_params.unpack(bref)); - HANDLE_CODE(unpack_enum(cell_resel_info_common.speed_state_resel_pars.q_hyst_sf.sf_medium, bref)); - HANDLE_CODE(unpack_enum(cell_resel_info_common.speed_state_resel_pars.q_hyst_sf.sf_high, bref)); + HANDLE_CODE(cell_resel_info_common.speed_state_resel_pars.q_hyst_sf.sf_medium.unpack(bref)); + HANDLE_CODE(cell_resel_info_common.speed_state_resel_pars.q_hyst_sf.sf_high.unpack(bref)); } HANDLE_CODE(bref.unpack(cell_resel_serving_freq_info.s_non_intra_search_present, 1)); if (cell_resel_serving_freq_info.s_non_intra_search_present) { - HANDLE_CODE(unpack_unalign_integer(cell_resel_serving_freq_info.s_non_intra_search, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(cell_resel_serving_freq_info.s_non_intra_search, bref, (uint8_t)0u, (uint8_t)31u)); } - HANDLE_CODE(unpack_unalign_integer(cell_resel_serving_freq_info.thresh_serving_low, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(cell_resel_serving_freq_info.cell_resel_prio, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(cell_resel_serving_freq_info.thresh_serving_low, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(cell_resel_serving_freq_info.cell_resel_prio, bref, (uint8_t)0u, (uint8_t)7u)); HANDLE_CODE(bref.unpack(intra_freq_cell_resel_info.p_max_present, 1)); HANDLE_CODE(bref.unpack(intra_freq_cell_resel_info.s_intra_search_present, 1)); HANDLE_CODE(bref.unpack(intra_freq_cell_resel_info.allowed_meas_bw_present, 1)); HANDLE_CODE(bref.unpack(intra_freq_cell_resel_info.t_resel_eutra_sf_present, 1)); - HANDLE_CODE(unpack_unalign_integer(intra_freq_cell_resel_info.q_rx_lev_min, bref, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(unpack_integer(intra_freq_cell_resel_info.q_rx_lev_min, bref, (int8_t)-70, (int8_t)-22)); if (intra_freq_cell_resel_info.p_max_present) { - HANDLE_CODE(unpack_unalign_integer(intra_freq_cell_resel_info.p_max, bref, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(unpack_integer(intra_freq_cell_resel_info.p_max, bref, (int8_t)-30, (int8_t)33)); } if (intra_freq_cell_resel_info.s_intra_search_present) { - HANDLE_CODE(unpack_unalign_integer(intra_freq_cell_resel_info.s_intra_search, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(intra_freq_cell_resel_info.s_intra_search, bref, (uint8_t)0u, (uint8_t)31u)); } if (intra_freq_cell_resel_info.allowed_meas_bw_present) { - HANDLE_CODE(unpack_enum(intra_freq_cell_resel_info.allowed_meas_bw, bref)); + HANDLE_CODE(intra_freq_cell_resel_info.allowed_meas_bw.unpack(bref)); } HANDLE_CODE(bref.unpack(intra_freq_cell_resel_info.presence_ant_port1, 1)); HANDLE_CODE(intra_freq_cell_resel_info.neigh_cell_cfg.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(intra_freq_cell_resel_info.t_resel_eutra, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(intra_freq_cell_resel_info.t_resel_eutra, bref, (uint8_t)0u, (uint8_t)7u)); if (intra_freq_cell_resel_info.t_resel_eutra_sf_present) { HANDLE_CODE(intra_freq_cell_resel_info.t_resel_eutra_sf.unpack(bref)); } @@ -16918,12 +16896,12 @@ SRSASN_CODE sib_type3_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(late_non_crit_ext_present, 1)); } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool s_intra_search_v920_present; HANDLE_CODE(bref.unpack(s_intra_search_v920_present, 1)); @@ -16934,40 +16912,38 @@ SRSASN_CODE sib_type3_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(q_qual_min_r9_present, 1)); HANDLE_CODE(bref.unpack(thresh_serving_low_q_r9_present, 1)); if (s_intra_search_v920.is_present()) { - HANDLE_CODE(unpack_unalign_integer(s_intra_search_v920->s_intra_search_p_r9, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(s_intra_search_v920->s_intra_search_q_r9, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(s_intra_search_v920->s_intra_search_p_r9, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(s_intra_search_v920->s_intra_search_q_r9, bref, (uint8_t)0u, (uint8_t)31u)); } if (s_non_intra_search_v920.is_present()) { - HANDLE_CODE( - unpack_unalign_integer(s_non_intra_search_v920->s_non_intra_search_p_r9, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE( - unpack_unalign_integer(s_non_intra_search_v920->s_non_intra_search_q_r9, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(s_non_intra_search_v920->s_non_intra_search_p_r9, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(s_non_intra_search_v920->s_non_intra_search_q_r9, bref, (uint8_t)0u, (uint8_t)31u)); } if (q_qual_min_r9_present) { - HANDLE_CODE(unpack_unalign_integer(q_qual_min_r9, bref, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(unpack_integer(q_qual_min_r9, bref, (int8_t)-34, (int8_t)-3)); } if (thresh_serving_low_q_r9_present) { - HANDLE_CODE(unpack_unalign_integer(thresh_serving_low_q_r9, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(thresh_serving_low_q_r9, bref, (uint8_t)0u, (uint8_t)31u)); } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(q_qual_min_wb_r11_present, 1)); if (q_qual_min_wb_r11_present) { - HANDLE_CODE(unpack_unalign_integer(q_qual_min_wb_r11, bref, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(unpack_integer(q_qual_min_wb_r11, bref, (int8_t)-34, (int8_t)-3)); } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(q_qual_min_rsrq_on_all_symbols_r12_present, 1)); if (q_qual_min_rsrq_on_all_symbols_r12_present) { - HANDLE_CODE(unpack_unalign_integer(q_qual_min_rsrq_on_all_symbols_r12, bref, (int8_t)-34, (int8_t)-3)); + HANDLE_CODE(unpack_integer(q_qual_min_rsrq_on_all_symbols_r12, bref, (int8_t)-34, (int8_t)-3)); } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool cell_resel_serving_freq_info_v1310_present; HANDLE_CODE(bref.unpack(cell_resel_serving_freq_info_v1310_present, 1)); @@ -16989,11 +16965,11 @@ SRSASN_CODE sib_type3_s::unpack(bit_ref& bref) HANDLE_CODE(cell_sel_info_ce_r13->unpack(bref)); } if (t_resel_eutra_ce_r13_present) { - HANDLE_CODE(unpack_unalign_integer(t_resel_eutra_ce_r13, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(t_resel_eutra_ce_r13, bref, (uint8_t)0u, (uint8_t)15u)); } } if (group_flags[5]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool cell_sel_info_ce1_r13_present; HANDLE_CODE(bref.unpack(cell_sel_info_ce1_r13_present, 1)); @@ -17003,7 +16979,7 @@ SRSASN_CODE sib_type3_s::unpack(bit_ref& bref) } } if (group_flags[6]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool cell_sel_info_ce1_v1360_present; HANDLE_CODE(bref.unpack(cell_sel_info_ce1_v1360_present, 1)); @@ -17013,7 +16989,7 @@ SRSASN_CODE sib_type3_s::unpack(bit_ref& bref) } } if (group_flags[7]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool cell_resel_info_common_v1460_present; HANDLE_CODE(bref.unpack(cell_resel_info_common_v1460_present, 1)); @@ -17023,7 +16999,7 @@ SRSASN_CODE sib_type3_s::unpack(bit_ref& bref) } } if (group_flags[8]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool cell_resel_info_hsdn_r15_present; HANDLE_CODE(bref.unpack(cell_resel_info_hsdn_r15_present, 1)); @@ -17186,12 +17162,12 @@ SRSASN_CODE sib_type4_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(late_non_crit_ext_present, 1)); } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(intra_freq_neigh_hsdn_cell_list_r15.is_present(), 1)); if (intra_freq_neigh_hsdn_cell_list_r15.is_present()) { @@ -17223,12 +17199,12 @@ SRSASN_CODE sib_type4_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(late_non_crit_ext_present, 1)); } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool intra_freq_neigh_hsdn_cell_list_r15_present; HANDLE_CODE(bref.unpack(intra_freq_neigh_hsdn_cell_list_r15_present, 1)); @@ -17300,12 +17276,12 @@ SRSASN_CODE sib_type5_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(late_non_crit_ext_present, 1)); } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(inter_freq_carrier_freq_list_v1250.is_present(), 1)); HANDLE_CODE(bref.pack(inter_freq_carrier_freq_list_ext_r12.is_present(), 1)); @@ -17317,7 +17293,7 @@ SRSASN_CODE sib_type5_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(inter_freq_carrier_freq_list_ext_v1280.is_present(), 1)); if (inter_freq_carrier_freq_list_ext_v1280.is_present()) { @@ -17325,7 +17301,7 @@ SRSASN_CODE sib_type5_s::pack(bit_ref& bref) const } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(inter_freq_carrier_freq_list_v1310.is_present(), 1)); HANDLE_CODE(bref.pack(inter_freq_carrier_freq_list_ext_v1310.is_present(), 1)); @@ -17337,7 +17313,7 @@ SRSASN_CODE sib_type5_s::pack(bit_ref& bref) const } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(inter_freq_carrier_freq_list_v1350.is_present(), 1)); HANDLE_CODE(bref.pack(inter_freq_carrier_freq_list_ext_v1350.is_present(), 1)); @@ -17349,7 +17325,7 @@ SRSASN_CODE sib_type5_s::pack(bit_ref& bref) const } } if (group_flags[5]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(inter_freq_carrier_freq_list_ext_v1360.is_present(), 1)); if (inter_freq_carrier_freq_list_ext_v1360.is_present()) { @@ -17357,15 +17333,15 @@ SRSASN_CODE sib_type5_s::pack(bit_ref& bref) const } } if (group_flags[6]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(scptm_freq_offset_r14_present, 1)); if (scptm_freq_offset_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, scptm_freq_offset_r14, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, scptm_freq_offset_r14, (uint8_t)1u, (uint8_t)8u)); } } if (group_flags[7]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(inter_freq_carrier_freq_list_v1530.is_present(), 1)); HANDLE_CODE(bref.pack(inter_freq_carrier_freq_list_ext_v1530.is_present(), 1)); @@ -17393,12 +17369,12 @@ SRSASN_CODE sib_type5_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(late_non_crit_ext_present, 1)); } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool inter_freq_carrier_freq_list_v1250_present; HANDLE_CODE(bref.unpack(inter_freq_carrier_freq_list_v1250_present, 1)); @@ -17414,7 +17390,7 @@ SRSASN_CODE sib_type5_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool inter_freq_carrier_freq_list_ext_v1280_present; HANDLE_CODE(bref.unpack(inter_freq_carrier_freq_list_ext_v1280_present, 1)); @@ -17424,7 +17400,7 @@ SRSASN_CODE sib_type5_s::unpack(bit_ref& bref) } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool inter_freq_carrier_freq_list_v1310_present; HANDLE_CODE(bref.unpack(inter_freq_carrier_freq_list_v1310_present, 1)); @@ -17440,7 +17416,7 @@ SRSASN_CODE sib_type5_s::unpack(bit_ref& bref) } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool inter_freq_carrier_freq_list_v1350_present; HANDLE_CODE(bref.unpack(inter_freq_carrier_freq_list_v1350_present, 1)); @@ -17456,7 +17432,7 @@ SRSASN_CODE sib_type5_s::unpack(bit_ref& bref) } } if (group_flags[5]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool inter_freq_carrier_freq_list_ext_v1360_present; HANDLE_CODE(bref.unpack(inter_freq_carrier_freq_list_ext_v1360_present, 1)); @@ -17466,15 +17442,15 @@ SRSASN_CODE sib_type5_s::unpack(bit_ref& bref) } } if (group_flags[6]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(scptm_freq_offset_r14_present, 1)); if (scptm_freq_offset_r14_present) { - HANDLE_CODE(unpack_unalign_integer(scptm_freq_offset_r14, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(scptm_freq_offset_r14, bref, (uint8_t)1u, (uint8_t)8u)); } } if (group_flags[7]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool inter_freq_carrier_freq_list_v1530_present; HANDLE_CODE(bref.unpack(inter_freq_carrier_freq_list_v1530_present, 1)); @@ -17605,7 +17581,7 @@ SRSASN_CODE sib_type6_s::pack(bit_ref& bref) const if (carrier_freq_list_utra_tdd_present) { HANDLE_CODE(pack_dyn_seq_of(bref, carrier_freq_list_utra_tdd, 1, 16)); } - HANDLE_CODE(pack_unalign_integer(bref, t_resel_utra, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, t_resel_utra, (uint8_t)0u, (uint8_t)7u)); if (t_resel_utra_sf_present) { HANDLE_CODE(t_resel_utra_sf.pack(bref)); } @@ -17620,12 +17596,12 @@ SRSASN_CODE sib_type6_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(late_non_crit_ext_present, 1)); } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(carrier_freq_list_utra_fdd_v1250.is_present(), 1)); HANDLE_CODE(bref.pack(carrier_freq_list_utra_tdd_v1250.is_present(), 1)); @@ -17660,7 +17636,7 @@ SRSASN_CODE sib_type6_s::unpack(bit_ref& bref) if (carrier_freq_list_utra_tdd_present) { HANDLE_CODE(unpack_dyn_seq_of(carrier_freq_list_utra_tdd, bref, 1, 16)); } - HANDLE_CODE(unpack_unalign_integer(t_resel_utra, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(t_resel_utra, bref, (uint8_t)0u, (uint8_t)7u)); if (t_resel_utra_sf_present) { HANDLE_CODE(t_resel_utra_sf.unpack(bref)); } @@ -17670,12 +17646,12 @@ SRSASN_CODE sib_type6_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(late_non_crit_ext_present, 1)); } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool carrier_freq_list_utra_fdd_v1250_present; HANDLE_CODE(bref.unpack(carrier_freq_list_utra_fdd_v1250_present, 1)); @@ -17770,7 +17746,7 @@ SRSASN_CODE sib_type7_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(t_resel_geran_sf_present, 1)); HANDLE_CODE(bref.pack(carrier_freqs_info_list_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, t_resel_geran, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, t_resel_geran, (uint8_t)0u, (uint8_t)7u)); if (t_resel_geran_sf_present) { HANDLE_CODE(t_resel_geran_sf.pack(bref)); } @@ -17793,7 +17769,7 @@ SRSASN_CODE sib_type7_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(t_resel_geran_sf_present, 1)); HANDLE_CODE(bref.unpack(carrier_freqs_info_list_present, 1)); - HANDLE_CODE(unpack_unalign_integer(t_resel_geran, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(t_resel_geran, bref, (uint8_t)0u, (uint8_t)7u)); if (t_resel_geran_sf_present) { HANDLE_CODE(t_resel_geran_sf.unpack(bref)); } @@ -17846,7 +17822,7 @@ SRSASN_CODE sib_type8_s::pack(bit_ref& bref) const HANDLE_CODE(sys_time_info.pack(bref)); } if (search_win_size_present) { - HANDLE_CODE(pack_unalign_integer(bref, search_win_size, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, search_win_size, (uint8_t)0u, (uint8_t)15u)); } if (params_hrpd_present) { HANDLE_CODE(bref.pack(params_hrpd.cell_resel_params_hrpd_present, 1)); @@ -17883,12 +17859,12 @@ SRSASN_CODE sib_type8_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(late_non_crit_ext_present, 1)); } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(csfb_support_for_dual_rx_ues_r9_present, 1)); HANDLE_CODE(bref.pack(cell_resel_params_hrpd_v920.is_present(), 1)); @@ -17912,12 +17888,12 @@ SRSASN_CODE sib_type8_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(csfb_dual_rx_tx_support_r10_present, 1)); } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(sib8_per_plmn_list_r11.is_present(), 1)); if (sib8_per_plmn_list_r11.is_present()) { @@ -17939,7 +17915,7 @@ SRSASN_CODE sib_type8_s::unpack(bit_ref& bref) HANDLE_CODE(sys_time_info.unpack(bref)); } if (search_win_size_present) { - HANDLE_CODE(unpack_unalign_integer(search_win_size, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(search_win_size, bref, (uint8_t)0u, (uint8_t)15u)); } if (params_hrpd_present) { HANDLE_CODE(bref.unpack(params_hrpd.cell_resel_params_hrpd_present, 1)); @@ -17968,12 +17944,12 @@ SRSASN_CODE sib_type8_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(late_non_crit_ext_present, 1)); } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(csfb_support_for_dual_rx_ues_r9_present, 1)); bool cell_resel_params_hrpd_v920_present; @@ -18005,12 +17981,12 @@ SRSASN_CODE sib_type8_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(csfb_dual_rx_tx_support_r10_present, 1)); } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool sib8_per_plmn_list_r11_present; HANDLE_CODE(bref.unpack(sib8_per_plmn_list_r11_present, 1)); @@ -18679,7 +18655,7 @@ void pos_sys_info_r15_ies_s::pos_sib_type_and_info_r15_item_c_::to_json(json_wri } SRSASN_CODE pos_sys_info_r15_ies_s::pos_sib_type_and_info_r15_item_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::pos_sib1_minus1_r15: HANDLE_CODE(c.get().pack(bref)); @@ -18771,7 +18747,7 @@ SRSASN_CODE pos_sys_info_r15_ies_s::pos_sib_type_and_info_r15_item_c_::pack(bit_ SRSASN_CODE pos_sys_info_r15_ies_s::pos_sib_type_and_info_r15_item_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::pos_sib1_minus1_r15: @@ -19284,7 +19260,7 @@ void sib_info_item_c::to_json(json_writer& j) const } SRSASN_CODE sib_info_item_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sib2: HANDLE_CODE(c.get().pack(bref)); @@ -19317,55 +19293,55 @@ SRSASN_CODE sib_info_item_c::pack(bit_ref& bref) const HANDLE_CODE(c.get().pack(bref)); break; case types::sib12_v920: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; case types::sib13_v920: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; case types::sib14_v1130: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; case types::sib15_v1130: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; case types::sib16_v1130: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; case types::sib17_v1250: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; case types::sib18_v1250: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; case types::sib19_v1250: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; case types::sib20_v1310: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; case types::sib21_v1430: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; case types::sib24_v1530: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; case types::sib25_v1530: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; case types::sib26_v1530: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; default: @@ -19377,7 +19353,7 @@ SRSASN_CODE sib_info_item_c::pack(bit_ref& bref) const SRSASN_CODE sib_info_item_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sib2: @@ -19411,55 +19387,55 @@ SRSASN_CODE sib_info_item_c::unpack(bit_ref& bref) HANDLE_CODE(c.get().unpack(bref)); break; case types::sib12_v920: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; case types::sib13_v920: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; case types::sib14_v1130: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; case types::sib15_v1130: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; case types::sib16_v1130: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; case types::sib17_v1250: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; case types::sib18_v1250: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; case types::sib19_v1250: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; case types::sib20_v1310: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; case types::sib21_v1430: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; case types::sib24_v1530: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; case types::sib25_v1530: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; case types::sib26_v1530: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; default: @@ -19656,7 +19632,7 @@ void sys_info_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE sys_info_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sys_info_r8: HANDLE_CODE(c.get().pack(bref)); @@ -19673,7 +19649,7 @@ SRSASN_CODE sys_info_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE sys_info_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sys_info_r8: @@ -19769,7 +19745,7 @@ void sys_info_s::crit_exts_c_::crit_exts_future_r15_c_::to_json(json_writer& j) } SRSASN_CODE sys_info_s::crit_exts_c_::crit_exts_future_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::pos_sys_info_r15: HANDLE_CODE(c.get().pack(bref)); @@ -19785,7 +19761,7 @@ SRSASN_CODE sys_info_s::crit_exts_c_::crit_exts_future_r15_c_::pack(bit_ref& bre SRSASN_CODE sys_info_s::crit_exts_c_::crit_exts_future_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::pos_sys_info_r15: @@ -19811,27 +19787,27 @@ SRSASN_CODE sib_type1_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, cell_access_related_info.plmn_id_list, 1, 6)); HANDLE_CODE(cell_access_related_info.tac.pack(bref)); HANDLE_CODE(cell_access_related_info.cell_id.pack(bref)); - HANDLE_CODE(pack_enum(bref, cell_access_related_info.cell_barred)); - HANDLE_CODE(pack_enum(bref, cell_access_related_info.intra_freq_resel)); + HANDLE_CODE(cell_access_related_info.cell_barred.pack(bref)); + HANDLE_CODE(cell_access_related_info.intra_freq_resel.pack(bref)); HANDLE_CODE(bref.pack(cell_access_related_info.csg_ind, 1)); if (cell_access_related_info.csg_id_present) { HANDLE_CODE(cell_access_related_info.csg_id.pack(bref)); } HANDLE_CODE(bref.pack(cell_sel_info.q_rx_lev_min_offset_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, cell_sel_info.q_rx_lev_min, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(pack_integer(bref, cell_sel_info.q_rx_lev_min, (int8_t)-70, (int8_t)-22)); if (cell_sel_info.q_rx_lev_min_offset_present) { - HANDLE_CODE(pack_unalign_integer(bref, cell_sel_info.q_rx_lev_min_offset, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, cell_sel_info.q_rx_lev_min_offset, (uint8_t)1u, (uint8_t)8u)); } if (p_max_present) { - HANDLE_CODE(pack_unalign_integer(bref, p_max, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, p_max, (int8_t)-30, (int8_t)33)); } - HANDLE_CODE(pack_unalign_integer(bref, freq_band_ind, (uint8_t)1, (uint8_t)64)); + HANDLE_CODE(pack_integer(bref, freq_band_ind, (uint8_t)1u, (uint8_t)64u)); HANDLE_CODE(pack_dyn_seq_of(bref, sched_info_list, 1, 32)); if (tdd_cfg_present) { HANDLE_CODE(tdd_cfg.pack(bref)); } - HANDLE_CODE(pack_enum(bref, si_win_len)); - HANDLE_CODE(pack_unalign_integer(bref, sys_info_value_tag, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(si_win_len.pack(bref)); + HANDLE_CODE(pack_integer(bref, sys_info_value_tag, (uint8_t)0u, (uint8_t)31u)); if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); } @@ -19848,27 +19824,27 @@ SRSASN_CODE sib_type1_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(cell_access_related_info.plmn_id_list, bref, 1, 6)); HANDLE_CODE(cell_access_related_info.tac.unpack(bref)); HANDLE_CODE(cell_access_related_info.cell_id.unpack(bref)); - HANDLE_CODE(unpack_enum(cell_access_related_info.cell_barred, bref)); - HANDLE_CODE(unpack_enum(cell_access_related_info.intra_freq_resel, bref)); + HANDLE_CODE(cell_access_related_info.cell_barred.unpack(bref)); + HANDLE_CODE(cell_access_related_info.intra_freq_resel.unpack(bref)); HANDLE_CODE(bref.unpack(cell_access_related_info.csg_ind, 1)); if (cell_access_related_info.csg_id_present) { HANDLE_CODE(cell_access_related_info.csg_id.unpack(bref)); } HANDLE_CODE(bref.unpack(cell_sel_info.q_rx_lev_min_offset_present, 1)); - HANDLE_CODE(unpack_unalign_integer(cell_sel_info.q_rx_lev_min, bref, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(unpack_integer(cell_sel_info.q_rx_lev_min, bref, (int8_t)-70, (int8_t)-22)); if (cell_sel_info.q_rx_lev_min_offset_present) { - HANDLE_CODE(unpack_unalign_integer(cell_sel_info.q_rx_lev_min_offset, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(cell_sel_info.q_rx_lev_min_offset, bref, (uint8_t)1u, (uint8_t)8u)); } if (p_max_present) { - HANDLE_CODE(unpack_unalign_integer(p_max, bref, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(unpack_integer(p_max, bref, (int8_t)-30, (int8_t)33)); } - HANDLE_CODE(unpack_unalign_integer(freq_band_ind, bref, (uint8_t)1, (uint8_t)64)); + HANDLE_CODE(unpack_integer(freq_band_ind, bref, (uint8_t)1u, (uint8_t)64u)); HANDLE_CODE(unpack_dyn_seq_of(sched_info_list, bref, 1, 32)); if (tdd_cfg_present) { HANDLE_CODE(tdd_cfg.unpack(bref)); } - HANDLE_CODE(unpack_enum(si_win_len, bref)); - HANDLE_CODE(unpack_unalign_integer(sys_info_value_tag, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(si_win_len.unpack(bref)); + HANDLE_CODE(unpack_integer(sys_info_value_tag, bref, (uint8_t)0u, (uint8_t)31u)); if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); } @@ -20002,7 +19978,7 @@ void bcch_dl_sch_msg_type_c::to_json(json_writer& j) const } SRSASN_CODE bcch_dl_sch_msg_type_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -20018,7 +19994,7 @@ SRSASN_CODE bcch_dl_sch_msg_type_c::pack(bit_ref& bref) const SRSASN_CODE bcch_dl_sch_msg_type_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -20119,7 +20095,7 @@ void bcch_dl_sch_msg_type_c::c1_c_::to_json(json_writer& j) const } SRSASN_CODE bcch_dl_sch_msg_type_c::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sys_info: HANDLE_CODE(c.get().pack(bref)); @@ -20136,7 +20112,7 @@ SRSASN_CODE bcch_dl_sch_msg_type_c::c1_c_::pack(bit_ref& bref) const SRSASN_CODE bcch_dl_sch_msg_type_c::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sys_info: @@ -20260,7 +20236,7 @@ void bcch_dl_sch_msg_type_br_r13_c::to_json(json_writer& j) const } SRSASN_CODE bcch_dl_sch_msg_type_br_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -20276,7 +20252,7 @@ SRSASN_CODE bcch_dl_sch_msg_type_br_r13_c::pack(bit_ref& bref) const SRSASN_CODE bcch_dl_sch_msg_type_br_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -20378,7 +20354,7 @@ void bcch_dl_sch_msg_type_br_r13_c::c1_c_::to_json(json_writer& j) const } SRSASN_CODE bcch_dl_sch_msg_type_br_r13_c::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sys_info_br_r13: HANDLE_CODE(c.get().pack(bref)); @@ -20395,7 +20371,7 @@ SRSASN_CODE bcch_dl_sch_msg_type_br_r13_c::c1_c_::pack(bit_ref& bref) const SRSASN_CODE bcch_dl_sch_msg_type_br_r13_c::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sys_info_br_r13: @@ -20443,15 +20419,15 @@ void bcch_dl_sch_msg_br_s::to_json(json_writer& j) const // SchedulingInfo-MBMS-r14 ::= SEQUENCE SRSASN_CODE sched_info_mbms_r14_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, si_periodicity_r14)); - HANDLE_CODE(pack_dyn_seq_of(bref, sib_map_info_r14, 0, 31, EnumPacker())); + HANDLE_CODE(si_periodicity_r14.pack(bref)); + HANDLE_CODE(pack_dyn_seq_of(bref, sib_map_info_r14, 0, 31)); return SRSASN_SUCCESS; } SRSASN_CODE sched_info_mbms_r14_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(si_periodicity_r14, bref)); - HANDLE_CODE(unpack_dyn_seq_of(sib_map_info_r14, bref, 0, 31, EnumPacker())); + HANDLE_CODE(si_periodicity_r14.unpack(bref)); + HANDLE_CODE(unpack_dyn_seq_of(sib_map_info_r14, bref, 0, 31)); return SRSASN_SUCCESS; } @@ -20470,16 +20446,16 @@ void sched_info_mbms_r14_s::to_json(json_writer& j) const // NonMBSFN-SubframeConfig-r14 ::= SEQUENCE SRSASN_CODE non_mbsfn_sf_cfg_r14_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, radio_frame_alloc_period_r14)); - HANDLE_CODE(pack_unalign_integer(bref, radio_frame_alloc_offset_r14, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(radio_frame_alloc_period_r14.pack(bref)); + HANDLE_CODE(pack_integer(bref, radio_frame_alloc_offset_r14, (uint8_t)0u, (uint8_t)7u)); HANDLE_CODE(sf_alloc_r14.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE non_mbsfn_sf_cfg_r14_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(radio_frame_alloc_period_r14, bref)); - HANDLE_CODE(unpack_unalign_integer(radio_frame_alloc_offset_r14, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(radio_frame_alloc_period_r14.unpack(bref)); + HANDLE_CODE(unpack_integer(radio_frame_alloc_offset_r14, bref, (uint8_t)0u, (uint8_t)7u)); HANDLE_CODE(sf_alloc_r14.unpack(bref)); return SRSASN_SUCCESS; @@ -20505,13 +20481,13 @@ SRSASN_CODE sib_type1_mbms_r14_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, cell_access_related_info_r14.plmn_id_list_r14, 1, 6)); HANDLE_CODE(cell_access_related_info_r14.tac_r14.pack(bref)); HANDLE_CODE(cell_access_related_info_r14.cell_id_r14.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, freq_band_ind_r14, (uint16_t)1, (uint16_t)256)); + HANDLE_CODE(pack_integer(bref, freq_band_ind_r14, (uint16_t)1u, (uint16_t)256u)); if (multi_band_info_list_r14_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list_r14, 1, 8, UnalignedIntegerPacker(1, 256))); + HANDLE_CODE(pack_dyn_seq_of(bref, multi_band_info_list_r14, 1, 8, integer_packer(1, 256))); } HANDLE_CODE(pack_dyn_seq_of(bref, sched_info_list_mbms_r14, 1, 32)); - HANDLE_CODE(pack_enum(bref, si_win_len_r14)); - HANDLE_CODE(pack_unalign_integer(bref, sys_info_value_tag_r14, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(si_win_len_r14.pack(bref)); + HANDLE_CODE(pack_integer(bref, sys_info_value_tag_r14, (uint8_t)0u, (uint8_t)31u)); if (non_mbsfn_sf_cfg_r14_present) { HANDLE_CODE(non_mbsfn_sf_cfg_r14.pack(bref)); } @@ -20536,13 +20512,13 @@ SRSASN_CODE sib_type1_mbms_r14_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(cell_access_related_info_r14.plmn_id_list_r14, bref, 1, 6)); HANDLE_CODE(cell_access_related_info_r14.tac_r14.unpack(bref)); HANDLE_CODE(cell_access_related_info_r14.cell_id_r14.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(freq_band_ind_r14, bref, (uint16_t)1, (uint16_t)256)); + HANDLE_CODE(unpack_integer(freq_band_ind_r14, bref, (uint16_t)1u, (uint16_t)256u)); if (multi_band_info_list_r14_present) { - HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list_r14, bref, 1, 8, UnalignedIntegerPacker(1, 256))); + HANDLE_CODE(unpack_dyn_seq_of(multi_band_info_list_r14, bref, 1, 8, integer_packer(1, 256))); } HANDLE_CODE(unpack_dyn_seq_of(sched_info_list_mbms_r14, bref, 1, 32)); - HANDLE_CODE(unpack_enum(si_win_len_r14, bref)); - HANDLE_CODE(unpack_unalign_integer(sys_info_value_tag_r14, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(si_win_len_r14.unpack(bref)); + HANDLE_CODE(unpack_integer(sys_info_value_tag_r14, bref, (uint8_t)0u, (uint8_t)31u)); if (non_mbsfn_sf_cfg_r14_present) { HANDLE_CODE(non_mbsfn_sf_cfg_r14.unpack(bref)); } @@ -20689,7 +20665,7 @@ void bcch_dl_sch_msg_type_mbms_r14_c::to_json(json_writer& j) const } SRSASN_CODE bcch_dl_sch_msg_type_mbms_r14_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -20705,7 +20681,7 @@ SRSASN_CODE bcch_dl_sch_msg_type_mbms_r14_c::pack(bit_ref& bref) const SRSASN_CODE bcch_dl_sch_msg_type_mbms_r14_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -20807,7 +20783,7 @@ void bcch_dl_sch_msg_type_mbms_r14_c::c1_c_::to_json(json_writer& j) const } SRSASN_CODE bcch_dl_sch_msg_type_mbms_r14_c::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sys_info_mbms_r14: HANDLE_CODE(c.get().pack(bref)); @@ -20824,7 +20800,7 @@ SRSASN_CODE bcch_dl_sch_msg_type_mbms_r14_c::c1_c_::pack(bit_ref& bref) const SRSASN_CODE bcch_dl_sch_msg_type_mbms_r14_c::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sys_info_mbms_r14: @@ -20873,7 +20849,7 @@ void bcch_dl_sch_msg_mbms_s::to_json(json_writer& j) const SRSASN_CODE p_c_and_cbsr_r13_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, p_c_r13, (int8_t)-8, (int8_t)15)); + HANDLE_CODE(pack_integer(bref, p_c_r13, (int8_t)-8, (int8_t)15)); HANDLE_CODE(cbsr_sel_r13.pack(bref)); return SRSASN_SUCCESS; @@ -20881,7 +20857,7 @@ SRSASN_CODE p_c_and_cbsr_r13_s::pack(bit_ref& bref) const SRSASN_CODE p_c_and_cbsr_r13_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(p_c_r13, bref, (int8_t)-8, (int8_t)15)); + HANDLE_CODE(unpack_integer(p_c_r13, bref, (int8_t)-8, (int8_t)15)); HANDLE_CODE(cbsr_sel_r13.unpack(bref)); return SRSASN_SUCCESS; @@ -20901,11 +20877,11 @@ void p_c_and_cbsr_r13_s::cbsr_sel_r13_c_::destroy_() case types::non_precoded_r13: c.destroy(); break; - case types::beamformed_k1a_r13: - c.destroy(); + case types::bf_k1a_r13: + c.destroy(); break; - case types::beamformed_kn_r13: - c.destroy(); + case types::bf_kn_r13: + c.destroy(); break; default: break; @@ -20919,11 +20895,11 @@ void p_c_and_cbsr_r13_s::cbsr_sel_r13_c_::set(types::options e) case types::non_precoded_r13: c.init(); break; - case types::beamformed_k1a_r13: - c.init(); + case types::bf_k1a_r13: + c.init(); break; - case types::beamformed_kn_r13: - c.init(); + case types::bf_kn_r13: + c.init(); break; case types::nulltype: break; @@ -20938,11 +20914,11 @@ p_c_and_cbsr_r13_s::cbsr_sel_r13_c_::cbsr_sel_r13_c_(const p_c_and_cbsr_r13_s::c case types::non_precoded_r13: c.init(other.c.get()); break; - case types::beamformed_k1a_r13: - c.init(other.c.get()); + case types::bf_k1a_r13: + c.init(other.c.get()); break; - case types::beamformed_kn_r13: - c.init(other.c.get()); + case types::bf_kn_r13: + c.init(other.c.get()); break; case types::nulltype: break; @@ -20961,11 +20937,11 @@ p_c_and_cbsr_r13_s::cbsr_sel_r13_c_& p_c_and_cbsr_r13_s::cbsr_sel_r13_c_:: case types::non_precoded_r13: c.set(other.c.get()); break; - case types::beamformed_k1a_r13: - c.set(other.c.get()); + case types::bf_k1a_r13: + c.set(other.c.get()); break; - case types::beamformed_kn_r13: - c.set(other.c.get()); + case types::bf_kn_r13: + c.set(other.c.get()); break; case types::nulltype: break; @@ -20988,18 +20964,16 @@ void p_c_and_cbsr_r13_s::cbsr_sel_r13_c_::to_json(json_writer& j) const c.get().codebook_subset_restrict2_r13.to_string()); j.end_obj(); break; - case types::beamformed_k1a_r13: + case types::bf_k1a_r13: j.write_fieldname("beamformedK1a-r13"); j.start_obj(); - j.write_str("codebookSubsetRestriction3-r13", - c.get().codebook_subset_restrict3_r13.to_string()); + j.write_str("codebookSubsetRestriction3-r13", c.get().codebook_subset_restrict3_r13.to_string()); j.end_obj(); break; - case types::beamformed_kn_r13: + case types::bf_kn_r13: j.write_fieldname("beamformedKN-r13"); j.start_obj(); - j.write_str("codebookSubsetRestriction-r13", - c.get().codebook_subset_restrict_r13.to_string()); + j.write_str("codebookSubsetRestriction-r13", c.get().codebook_subset_restrict_r13.to_string()); j.end_obj(); break; default: @@ -21009,17 +20983,17 @@ void p_c_and_cbsr_r13_s::cbsr_sel_r13_c_::to_json(json_writer& j) const } SRSASN_CODE p_c_and_cbsr_r13_s::cbsr_sel_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::non_precoded_r13: HANDLE_CODE(c.get().codebook_subset_restrict1_r13.pack(bref)); HANDLE_CODE(c.get().codebook_subset_restrict2_r13.pack(bref)); break; - case types::beamformed_k1a_r13: - HANDLE_CODE(c.get().codebook_subset_restrict3_r13.pack(bref)); + case types::bf_k1a_r13: + HANDLE_CODE(c.get().codebook_subset_restrict3_r13.pack(bref)); break; - case types::beamformed_kn_r13: - HANDLE_CODE(c.get().codebook_subset_restrict_r13.pack(bref)); + case types::bf_kn_r13: + HANDLE_CODE(c.get().codebook_subset_restrict_r13.pack(bref)); break; default: log_invalid_choice_id(type_, "p_c_and_cbsr_r13_s::cbsr_sel_r13_c_"); @@ -21030,18 +21004,18 @@ SRSASN_CODE p_c_and_cbsr_r13_s::cbsr_sel_r13_c_::pack(bit_ref& bref) const SRSASN_CODE p_c_and_cbsr_r13_s::cbsr_sel_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::non_precoded_r13: HANDLE_CODE(c.get().codebook_subset_restrict1_r13.unpack(bref)); HANDLE_CODE(c.get().codebook_subset_restrict2_r13.unpack(bref)); break; - case types::beamformed_k1a_r13: - HANDLE_CODE(c.get().codebook_subset_restrict3_r13.unpack(bref)); + case types::bf_k1a_r13: + HANDLE_CODE(c.get().codebook_subset_restrict3_r13.unpack(bref)); break; - case types::beamformed_kn_r13: - HANDLE_CODE(c.get().codebook_subset_restrict_r13.unpack(bref)); + case types::bf_kn_r13: + HANDLE_CODE(c.get().codebook_subset_restrict_r13.unpack(bref)); break; default: log_invalid_choice_id(type_, "p_c_and_cbsr_r13_s::cbsr_sel_r13_c_"); @@ -21057,10 +21031,10 @@ SRSASN_CODE csi_rs_cfg_nzp_v1430_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(freq_density_r14_present, 1)); if (tx_comb_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, tx_comb_r14, (uint8_t)0, (uint8_t)2)); + HANDLE_CODE(pack_integer(bref, tx_comb_r14, (uint8_t)0u, (uint8_t)2u)); } if (freq_density_r14_present) { - HANDLE_CODE(pack_enum(bref, freq_density_r14)); + HANDLE_CODE(freq_density_r14.pack(bref)); } return SRSASN_SUCCESS; @@ -21071,10 +21045,10 @@ SRSASN_CODE csi_rs_cfg_nzp_v1430_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(freq_density_r14_present, 1)); if (tx_comb_r14_present) { - HANDLE_CODE(unpack_unalign_integer(tx_comb_r14, bref, (uint8_t)0, (uint8_t)2)); + HANDLE_CODE(unpack_integer(tx_comb_r14, bref, (uint8_t)0u, (uint8_t)2u)); } if (freq_density_r14_present) { - HANDLE_CODE(unpack_enum(freq_density_r14, bref)); + HANDLE_CODE(freq_density_r14.unpack(bref)); } return SRSASN_SUCCESS; @@ -21094,15 +21068,15 @@ void csi_rs_cfg_nzp_v1430_s::to_json(json_writer& j) const // CSI-RS-ConfigNZP-Activation-r14 ::= SEQUENCE SRSASN_CODE csi_rs_cfg_nzp_activation_r14_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, csi_rs_nzp_mode_r14)); - HANDLE_CODE(pack_unalign_integer(bref, activ_res_r14, (uint8_t)0, (uint8_t)4)); + HANDLE_CODE(csi_rs_nzp_mode_r14.pack(bref)); + HANDLE_CODE(pack_integer(bref, activ_res_r14, (uint8_t)0u, (uint8_t)4u)); return SRSASN_SUCCESS; } SRSASN_CODE csi_rs_cfg_nzp_activation_r14_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(csi_rs_nzp_mode_r14, bref)); - HANDLE_CODE(unpack_unalign_integer(activ_res_r14, bref, (uint8_t)0, (uint8_t)4)); + HANDLE_CODE(csi_rs_nzp_mode_r14.unpack(bref)); + HANDLE_CODE(unpack_integer(activ_res_r14, bref, (uint8_t)0u, (uint8_t)4u)); return SRSASN_SUCCESS; } @@ -21120,15 +21094,15 @@ SRSASN_CODE csi_rs_cfg_nzp_r11_s::pack(bit_ref& bref) const bref.pack(ext, 1); HANDLE_CODE(bref.pack(qcl_crs_info_r11_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, csi_rs_cfg_nzp_id_r11, (uint8_t)1, (uint8_t)3)); - HANDLE_CODE(pack_enum(bref, ant_ports_count_r11)); - HANDLE_CODE(pack_unalign_integer(bref, res_cfg_r11, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, sf_cfg_r11, (uint8_t)0, (uint8_t)154)); - HANDLE_CODE(pack_unalign_integer(bref, scrambling_id_r11, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(pack_integer(bref, csi_rs_cfg_nzp_id_r11, (uint8_t)1u, (uint8_t)3u)); + HANDLE_CODE(ant_ports_count_r11.pack(bref)); + HANDLE_CODE(pack_integer(bref, res_cfg_r11, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, sf_cfg_r11, (uint8_t)0u, (uint8_t)154u)); + HANDLE_CODE(pack_integer(bref, scrambling_id_r11, (uint16_t)0u, (uint16_t)503u)); if (qcl_crs_info_r11_present) { HANDLE_CODE(bref.pack(qcl_crs_info_r11.mbsfn_sf_cfg_list_r11_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, qcl_crs_info_r11.qcl_scrambling_id_r11, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_enum(bref, qcl_crs_info_r11.crs_ports_count_r11)); + HANDLE_CODE(pack_integer(bref, qcl_crs_info_r11.qcl_scrambling_id_r11, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(qcl_crs_info_r11.crs_ports_count_r11.pack(bref)); if (qcl_crs_info_r11.mbsfn_sf_cfg_list_r11_present) { HANDLE_CODE(qcl_crs_info_r11.mbsfn_sf_cfg_list_r11.pack(bref)); } @@ -21143,27 +21117,27 @@ SRSASN_CODE csi_rs_cfg_nzp_r11_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(csi_rs_cfg_nzp_id_v1310_present, 1)); if (csi_rs_cfg_nzp_id_v1310_present) { - HANDLE_CODE(pack_unalign_integer(bref, csi_rs_cfg_nzp_id_v1310, (uint8_t)4, (uint8_t)24)); + HANDLE_CODE(pack_integer(bref, csi_rs_cfg_nzp_id_v1310, (uint8_t)4u, (uint8_t)24u)); } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(tx_comb_r14_present, 1)); HANDLE_CODE(bref.pack(freq_density_r14_present, 1)); if (tx_comb_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, tx_comb_r14, (uint8_t)0, (uint8_t)2)); + HANDLE_CODE(pack_integer(bref, tx_comb_r14, (uint8_t)0u, (uint8_t)2u)); } if (freq_density_r14_present) { - HANDLE_CODE(pack_enum(bref, freq_density_r14)); + HANDLE_CODE(freq_density_r14.pack(bref)); } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(mbsfn_sf_cfg_list_v1430.is_present(), 1)); if (mbsfn_sf_cfg_list_v1430.is_present()) { @@ -21178,15 +21152,15 @@ SRSASN_CODE csi_rs_cfg_nzp_r11_s::unpack(bit_ref& bref) bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(qcl_crs_info_r11_present, 1)); - HANDLE_CODE(unpack_unalign_integer(csi_rs_cfg_nzp_id_r11, bref, (uint8_t)1, (uint8_t)3)); - HANDLE_CODE(unpack_enum(ant_ports_count_r11, bref)); - HANDLE_CODE(unpack_unalign_integer(res_cfg_r11, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(sf_cfg_r11, bref, (uint8_t)0, (uint8_t)154)); - HANDLE_CODE(unpack_unalign_integer(scrambling_id_r11, bref, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(unpack_integer(csi_rs_cfg_nzp_id_r11, bref, (uint8_t)1u, (uint8_t)3u)); + HANDLE_CODE(ant_ports_count_r11.unpack(bref)); + HANDLE_CODE(unpack_integer(res_cfg_r11, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(sf_cfg_r11, bref, (uint8_t)0u, (uint8_t)154u)); + HANDLE_CODE(unpack_integer(scrambling_id_r11, bref, (uint16_t)0u, (uint16_t)503u)); if (qcl_crs_info_r11_present) { HANDLE_CODE(bref.unpack(qcl_crs_info_r11.mbsfn_sf_cfg_list_r11_present, 1)); - HANDLE_CODE(unpack_unalign_integer(qcl_crs_info_r11.qcl_scrambling_id_r11, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_enum(qcl_crs_info_r11.crs_ports_count_r11, bref)); + HANDLE_CODE(unpack_integer(qcl_crs_info_r11.qcl_scrambling_id_r11, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(qcl_crs_info_r11.crs_ports_count_r11.unpack(bref)); if (qcl_crs_info_r11.mbsfn_sf_cfg_list_r11_present) { HANDLE_CODE(qcl_crs_info_r11.mbsfn_sf_cfg_list_r11.unpack(bref)); } @@ -21197,27 +21171,27 @@ SRSASN_CODE csi_rs_cfg_nzp_r11_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(csi_rs_cfg_nzp_id_v1310_present, 1)); if (csi_rs_cfg_nzp_id_v1310_present) { - HANDLE_CODE(unpack_unalign_integer(csi_rs_cfg_nzp_id_v1310, bref, (uint8_t)4, (uint8_t)24)); + HANDLE_CODE(unpack_integer(csi_rs_cfg_nzp_id_v1310, bref, (uint8_t)4u, (uint8_t)24u)); } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(tx_comb_r14_present, 1)); HANDLE_CODE(bref.unpack(freq_density_r14_present, 1)); if (tx_comb_r14_present) { - HANDLE_CODE(unpack_unalign_integer(tx_comb_r14, bref, (uint8_t)0, (uint8_t)2)); + HANDLE_CODE(unpack_integer(tx_comb_r14, bref, (uint8_t)0u, (uint8_t)2u)); } if (freq_density_r14_present) { - HANDLE_CODE(unpack_enum(freq_density_r14, bref)); + HANDLE_CODE(freq_density_r14.unpack(bref)); } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool mbsfn_sf_cfg_list_v1430_present; HANDLE_CODE(bref.unpack(mbsfn_sf_cfg_list_v1430_present, 1)); @@ -21293,7 +21267,7 @@ void csi_rs_cfg_nzp_r11_s::qcl_crs_info_r11_s_::mbsfn_sf_cfg_list_r11_c_::to_jso } SRSASN_CODE csi_rs_cfg_nzp_r11_s::qcl_crs_info_r11_s_::mbsfn_sf_cfg_list_r11_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -21309,7 +21283,7 @@ SRSASN_CODE csi_rs_cfg_nzp_r11_s::qcl_crs_info_r11_s_::mbsfn_sf_cfg_list_r11_c_: SRSASN_CODE csi_rs_cfg_nzp_r11_s::qcl_crs_info_r11_s_::mbsfn_sf_cfg_list_r11_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -21351,7 +21325,7 @@ void csi_rs_cfg_nzp_r11_s::mbsfn_sf_cfg_list_v1430_c_::to_json(json_writer& j) c } SRSASN_CODE csi_rs_cfg_nzp_r11_s::mbsfn_sf_cfg_list_v1430_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -21367,7 +21341,7 @@ SRSASN_CODE csi_rs_cfg_nzp_r11_s::mbsfn_sf_cfg_list_v1430_c_::pack(bit_ref& bref SRSASN_CODE csi_rs_cfg_nzp_r11_s::mbsfn_sf_cfg_list_v1430_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -21386,7 +21360,7 @@ SRSASN_CODE csi_rs_cfg_nzp_r11_s::mbsfn_sf_cfg_list_v1430_c_::unpack(bit_ref& br SRSASN_CODE nzp_res_cfg_r13_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, res_cfg_r13, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, res_cfg_r13, (uint8_t)0u, (uint8_t)31u)); if (ext) { ext_groups_packer_guard group_flags; @@ -21395,15 +21369,15 @@ SRSASN_CODE nzp_res_cfg_r13_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(tx_comb_r14_present, 1)); HANDLE_CODE(bref.pack(freq_density_r14_present, 1)); if (tx_comb_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, tx_comb_r14, (uint8_t)0, (uint8_t)2)); + HANDLE_CODE(pack_integer(bref, tx_comb_r14, (uint8_t)0u, (uint8_t)2u)); } if (freq_density_r14_present) { - HANDLE_CODE(pack_enum(bref, freq_density_r14)); + HANDLE_CODE(freq_density_r14.pack(bref)); } } } @@ -21412,22 +21386,22 @@ SRSASN_CODE nzp_res_cfg_r13_s::pack(bit_ref& bref) const SRSASN_CODE nzp_res_cfg_r13_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(res_cfg_r13, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(res_cfg_r13, bref, (uint8_t)0u, (uint8_t)31u)); if (ext) { ext_groups_unpacker_guard group_flags(1); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(tx_comb_r14_present, 1)); HANDLE_CODE(bref.unpack(freq_density_r14_present, 1)); if (tx_comb_r14_present) { - HANDLE_CODE(unpack_unalign_integer(tx_comb_r14, bref, (uint8_t)0, (uint8_t)2)); + HANDLE_CODE(unpack_integer(tx_comb_r14, bref, (uint8_t)0u, (uint8_t)2u)); } if (freq_density_r14_present) { - HANDLE_CODE(unpack_enum(freq_density_r14, bref)); + HANDLE_CODE(freq_density_r14.unpack(bref)); } } } @@ -21451,14 +21425,14 @@ void nzp_res_cfg_r13_s::to_json(json_writer& j) const // P-C-AndCBSR-r15 ::= SEQUENCE SRSASN_CODE p_c_and_cbsr_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, p_c_r15, (int8_t)-8, (int8_t)15)); + HANDLE_CODE(pack_integer(bref, p_c_r15, (int8_t)-8, (int8_t)15)); HANDLE_CODE(codebook_subset_restrict4_r15.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE p_c_and_cbsr_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(p_c_r15, bref, (int8_t)-8, (int8_t)15)); + HANDLE_CODE(unpack_integer(p_c_r15, bref, (int8_t)-8, (int8_t)15)); HANDLE_CODE(codebook_subset_restrict4_r15.unpack(bref)); return SRSASN_SUCCESS; @@ -21472,23 +21446,23 @@ void p_c_and_cbsr_r15_s::to_json(json_writer& j) const } // CSI-RS-ConfigBeamformed-r14 ::= SEQUENCE -SRSASN_CODE csi_rs_cfg_beamformed_r14_s::pack(bit_ref& bref) const +SRSASN_CODE csi_rs_cfg_bf_r14_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(csi_rs_cfg_nzp_id_list_ext_r14_present, 1)); HANDLE_CODE(bref.pack(csi_im_cfg_id_list_r14_present, 1)); HANDLE_CODE(bref.pack(p_c_and_cbsr_per_res_cfg_list_r14_present, 1)); HANDLE_CODE(bref.pack(ace_for4_tx_per_res_cfg_list_r14_present, 1)); - HANDLE_CODE(bref.pack(alternative_codebook_enabled_beamformed_r14_present, 1)); + HANDLE_CODE(bref.pack(alt_codebook_enabled_bf_r14_present, 1)); HANDLE_CODE(bref.pack(ch_meas_restrict_r14_present, 1)); HANDLE_CODE(bref.pack(csi_rs_cfg_nzp_ap_list_r14_present, 1)); HANDLE_CODE(bref.pack(nzp_res_cfg_original_v1430_present, 1)); HANDLE_CODE(bref.pack(csi_rs_nzp_activation_r14_present, 1)); if (csi_rs_cfg_nzp_id_list_ext_r14_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, csi_rs_cfg_nzp_id_list_ext_r14, 1, 7, UnalignedIntegerPacker(1, 24))); + HANDLE_CODE(pack_dyn_seq_of(bref, csi_rs_cfg_nzp_id_list_ext_r14, 1, 7, integer_packer(1, 24))); } if (csi_im_cfg_id_list_r14_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, csi_im_cfg_id_list_r14, 1, 8, UnalignedIntegerPacker(1, 24))); + HANDLE_CODE(pack_dyn_seq_of(bref, csi_im_cfg_id_list_r14, 1, 8, integer_packer(1, 24))); } if (p_c_and_cbsr_per_res_cfg_list_r14_present) { HANDLE_CODE(pack_dyn_seq_of(bref, p_c_and_cbsr_per_res_cfg_list_r14, 1, 8, SeqOfPacker(1, 2, Packer()))); @@ -21508,23 +21482,23 @@ SRSASN_CODE csi_rs_cfg_beamformed_r14_s::pack(bit_ref& bref) const return SRSASN_SUCCESS; } -SRSASN_CODE csi_rs_cfg_beamformed_r14_s::unpack(bit_ref& bref) +SRSASN_CODE csi_rs_cfg_bf_r14_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(csi_rs_cfg_nzp_id_list_ext_r14_present, 1)); HANDLE_CODE(bref.unpack(csi_im_cfg_id_list_r14_present, 1)); HANDLE_CODE(bref.unpack(p_c_and_cbsr_per_res_cfg_list_r14_present, 1)); HANDLE_CODE(bref.unpack(ace_for4_tx_per_res_cfg_list_r14_present, 1)); - HANDLE_CODE(bref.unpack(alternative_codebook_enabled_beamformed_r14_present, 1)); + HANDLE_CODE(bref.unpack(alt_codebook_enabled_bf_r14_present, 1)); HANDLE_CODE(bref.unpack(ch_meas_restrict_r14_present, 1)); HANDLE_CODE(bref.unpack(csi_rs_cfg_nzp_ap_list_r14_present, 1)); HANDLE_CODE(bref.unpack(nzp_res_cfg_original_v1430_present, 1)); HANDLE_CODE(bref.unpack(csi_rs_nzp_activation_r14_present, 1)); if (csi_rs_cfg_nzp_id_list_ext_r14_present) { - HANDLE_CODE(unpack_dyn_seq_of(csi_rs_cfg_nzp_id_list_ext_r14, bref, 1, 7, UnalignedIntegerPacker(1, 24))); + HANDLE_CODE(unpack_dyn_seq_of(csi_rs_cfg_nzp_id_list_ext_r14, bref, 1, 7, integer_packer(1, 24))); } if (csi_im_cfg_id_list_r14_present) { - HANDLE_CODE(unpack_dyn_seq_of(csi_im_cfg_id_list_r14, bref, 1, 8, UnalignedIntegerPacker(1, 24))); + HANDLE_CODE(unpack_dyn_seq_of(csi_im_cfg_id_list_r14, bref, 1, 8, integer_packer(1, 24))); } if (p_c_and_cbsr_per_res_cfg_list_r14_present) { HANDLE_CODE(unpack_dyn_seq_of(p_c_and_cbsr_per_res_cfg_list_r14, bref, 1, 8, SeqOfPacker(1, 2, Packer()))); @@ -21544,7 +21518,7 @@ SRSASN_CODE csi_rs_cfg_beamformed_r14_s::unpack(bit_ref& bref) return SRSASN_SUCCESS; } -void csi_rs_cfg_beamformed_r14_s::to_json(json_writer& j) const +void csi_rs_cfg_bf_r14_s::to_json(json_writer& j) const { j.start_obj(); if (csi_rs_cfg_nzp_id_list_ext_r14_present) { @@ -21579,7 +21553,7 @@ void csi_rs_cfg_beamformed_r14_s::to_json(json_writer& j) const } j.end_array(); } - if (alternative_codebook_enabled_beamformed_r14_present) { + if (alt_codebook_enabled_bf_r14_present) { j.write_str("alternativeCodebookEnabledBeamformed-r14", "true"); } if (ch_meas_restrict_r14_present) { @@ -21634,7 +21608,7 @@ void csi_rs_cfg_nzp_emimo_r13_c::to_json(json_writer& j) const } SRSASN_CODE csi_rs_cfg_nzp_emimo_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -21642,7 +21616,7 @@ SRSASN_CODE csi_rs_cfg_nzp_emimo_r13_c::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.cdm_type_r13_present, 1)); HANDLE_CODE(pack_dyn_seq_of(bref, c.nzp_res_cfg_list_r13, 1, 2)); if (c.cdm_type_r13_present) { - HANDLE_CODE(pack_enum(bref, c.cdm_type_r13)); + HANDLE_CODE(c.cdm_type_r13.pack(bref)); } break; default: @@ -21654,7 +21628,7 @@ SRSASN_CODE csi_rs_cfg_nzp_emimo_r13_c::pack(bit_ref& bref) const SRSASN_CODE csi_rs_cfg_nzp_emimo_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -21663,7 +21637,7 @@ SRSASN_CODE csi_rs_cfg_nzp_emimo_r13_c::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.cdm_type_r13_present, 1)); HANDLE_CODE(unpack_dyn_seq_of(c.nzp_res_cfg_list_r13, bref, 1, 2)); if (c.cdm_type_r13_present) { - HANDLE_CODE(unpack_enum(c.cdm_type_r13, bref)); + HANDLE_CODE(c.cdm_type_r13.unpack(bref)); } break; default: @@ -21705,20 +21679,20 @@ void csi_rs_cfg_nzp_emimo_v1430_s::to_json(json_writer& j) const } // CSI-RS-ConfigBeamformed-r13 ::= SEQUENCE -SRSASN_CODE csi_rs_cfg_beamformed_r13_s::pack(bit_ref& bref) const +SRSASN_CODE csi_rs_cfg_bf_r13_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(csi_rs_cfg_nzp_id_list_ext_r13_present, 1)); HANDLE_CODE(bref.pack(csi_im_cfg_id_list_r13_present, 1)); HANDLE_CODE(bref.pack(p_c_and_cbsr_per_res_cfg_list_r13_present, 1)); HANDLE_CODE(bref.pack(ace_for4_tx_per_res_cfg_list_r13_present, 1)); - HANDLE_CODE(bref.pack(alternative_codebook_enabled_beamformed_r13_present, 1)); + HANDLE_CODE(bref.pack(alt_codebook_enabled_bf_r13_present, 1)); HANDLE_CODE(bref.pack(ch_meas_restrict_r13_present, 1)); if (csi_rs_cfg_nzp_id_list_ext_r13_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, csi_rs_cfg_nzp_id_list_ext_r13, 1, 7, UnalignedIntegerPacker(1, 24))); + HANDLE_CODE(pack_dyn_seq_of(bref, csi_rs_cfg_nzp_id_list_ext_r13, 1, 7, integer_packer(1, 24))); } if (csi_im_cfg_id_list_r13_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, csi_im_cfg_id_list_r13, 1, 8, UnalignedIntegerPacker(1, 24))); + HANDLE_CODE(pack_dyn_seq_of(bref, csi_im_cfg_id_list_r13, 1, 8, integer_packer(1, 24))); } if (p_c_and_cbsr_per_res_cfg_list_r13_present) { HANDLE_CODE(pack_dyn_seq_of(bref, p_c_and_cbsr_per_res_cfg_list_r13, 1, 8, SeqOfPacker(1, 2, Packer()))); @@ -21729,20 +21703,20 @@ SRSASN_CODE csi_rs_cfg_beamformed_r13_s::pack(bit_ref& bref) const return SRSASN_SUCCESS; } -SRSASN_CODE csi_rs_cfg_beamformed_r13_s::unpack(bit_ref& bref) +SRSASN_CODE csi_rs_cfg_bf_r13_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(csi_rs_cfg_nzp_id_list_ext_r13_present, 1)); HANDLE_CODE(bref.unpack(csi_im_cfg_id_list_r13_present, 1)); HANDLE_CODE(bref.unpack(p_c_and_cbsr_per_res_cfg_list_r13_present, 1)); HANDLE_CODE(bref.unpack(ace_for4_tx_per_res_cfg_list_r13_present, 1)); - HANDLE_CODE(bref.unpack(alternative_codebook_enabled_beamformed_r13_present, 1)); + HANDLE_CODE(bref.unpack(alt_codebook_enabled_bf_r13_present, 1)); HANDLE_CODE(bref.unpack(ch_meas_restrict_r13_present, 1)); if (csi_rs_cfg_nzp_id_list_ext_r13_present) { - HANDLE_CODE(unpack_dyn_seq_of(csi_rs_cfg_nzp_id_list_ext_r13, bref, 1, 7, UnalignedIntegerPacker(1, 24))); + HANDLE_CODE(unpack_dyn_seq_of(csi_rs_cfg_nzp_id_list_ext_r13, bref, 1, 7, integer_packer(1, 24))); } if (csi_im_cfg_id_list_r13_present) { - HANDLE_CODE(unpack_dyn_seq_of(csi_im_cfg_id_list_r13, bref, 1, 8, UnalignedIntegerPacker(1, 24))); + HANDLE_CODE(unpack_dyn_seq_of(csi_im_cfg_id_list_r13, bref, 1, 8, integer_packer(1, 24))); } if (p_c_and_cbsr_per_res_cfg_list_r13_present) { HANDLE_CODE(unpack_dyn_seq_of(p_c_and_cbsr_per_res_cfg_list_r13, bref, 1, 8, SeqOfPacker(1, 2, Packer()))); @@ -21753,7 +21727,7 @@ SRSASN_CODE csi_rs_cfg_beamformed_r13_s::unpack(bit_ref& bref) return SRSASN_SUCCESS; } -void csi_rs_cfg_beamformed_r13_s::to_json(json_writer& j) const +void csi_rs_cfg_bf_r13_s::to_json(json_writer& j) const { j.start_obj(); if (csi_rs_cfg_nzp_id_list_ext_r13_present) { @@ -21788,7 +21762,7 @@ void csi_rs_cfg_beamformed_r13_s::to_json(json_writer& j) const } j.end_array(); } - if (alternative_codebook_enabled_beamformed_r13_present) { + if (alt_codebook_enabled_bf_r13_present) { j.write_str("alternativeCodebookEnabledBeamformed-r13", "true"); } if (ch_meas_restrict_r13_present) { @@ -21798,7 +21772,7 @@ void csi_rs_cfg_beamformed_r13_s::to_json(json_writer& j) const } // CSI-RS-ConfigBeamformed-v1430 ::= SEQUENCE -SRSASN_CODE csi_rs_cfg_beamformed_v1430_s::pack(bit_ref& bref) const +SRSASN_CODE csi_rs_cfg_bf_v1430_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(csi_rs_cfg_nzp_ap_list_r14_present, 1)); HANDLE_CODE(bref.pack(nzp_res_cfg_original_v1430_present, 1)); @@ -21816,7 +21790,7 @@ SRSASN_CODE csi_rs_cfg_beamformed_v1430_s::pack(bit_ref& bref) const return SRSASN_SUCCESS; } -SRSASN_CODE csi_rs_cfg_beamformed_v1430_s::unpack(bit_ref& bref) +SRSASN_CODE csi_rs_cfg_bf_v1430_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(csi_rs_cfg_nzp_ap_list_r14_present, 1)); HANDLE_CODE(bref.unpack(nzp_res_cfg_original_v1430_present, 1)); @@ -21834,7 +21808,7 @@ SRSASN_CODE csi_rs_cfg_beamformed_v1430_s::unpack(bit_ref& bref) return SRSASN_SUCCESS; } -void csi_rs_cfg_beamformed_v1430_s::to_json(json_writer& j) const +void csi_rs_cfg_bf_v1430_s::to_json(json_writer& j) const { j.start_obj(); if (csi_rs_cfg_nzp_ap_list_r14_present) { @@ -21877,7 +21851,7 @@ void csi_rs_cfg_emimo2_r14_c::to_json(json_writer& j) const } SRSASN_CODE csi_rs_cfg_emimo2_r14_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -21893,7 +21867,7 @@ SRSASN_CODE csi_rs_cfg_emimo2_r14_c::pack(bit_ref& bref) const SRSASN_CODE csi_rs_cfg_emimo2_r14_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -21920,17 +21894,17 @@ SRSASN_CODE csi_rs_cfg_non_precoded_r13_s::pack(bit_ref& bref) const if (p_c_and_cbsr_list_r13_present) { HANDLE_CODE(pack_dyn_seq_of(bref, p_c_and_cbsr_list_r13, 1, 2)); } - HANDLE_CODE(pack_enum(bref, codebook_cfg_n1_r13)); - HANDLE_CODE(pack_enum(bref, codebook_cfg_n2_r13)); + HANDLE_CODE(codebook_cfg_n1_r13.pack(bref)); + HANDLE_CODE(codebook_cfg_n2_r13.pack(bref)); if (codebook_over_sampling_rate_cfg_o1_r13_present) { - HANDLE_CODE(pack_enum(bref, codebook_over_sampling_rate_cfg_o1_r13)); + HANDLE_CODE(codebook_over_sampling_rate_cfg_o1_r13.pack(bref)); } if (codebook_over_sampling_rate_cfg_o2_r13_present) { - HANDLE_CODE(pack_enum(bref, codebook_over_sampling_rate_cfg_o2_r13)); + HANDLE_CODE(codebook_over_sampling_rate_cfg_o2_r13.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, codebook_cfg_r13, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, codebook_cfg_r13, (uint8_t)1u, (uint8_t)4u)); if (csi_im_cfg_id_list_r13_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, csi_im_cfg_id_list_r13, 1, 2, UnalignedIntegerPacker(1, 24))); + HANDLE_CODE(pack_dyn_seq_of(bref, csi_im_cfg_id_list_r13, 1, 2, integer_packer(1, 24))); } if (csi_rs_cfg_nzp_emimo_r13_present) { HANDLE_CODE(csi_rs_cfg_nzp_emimo_r13.pack(bref)); @@ -21949,17 +21923,17 @@ SRSASN_CODE csi_rs_cfg_non_precoded_r13_s::unpack(bit_ref& bref) if (p_c_and_cbsr_list_r13_present) { HANDLE_CODE(unpack_dyn_seq_of(p_c_and_cbsr_list_r13, bref, 1, 2)); } - HANDLE_CODE(unpack_enum(codebook_cfg_n1_r13, bref)); - HANDLE_CODE(unpack_enum(codebook_cfg_n2_r13, bref)); + HANDLE_CODE(codebook_cfg_n1_r13.unpack(bref)); + HANDLE_CODE(codebook_cfg_n2_r13.unpack(bref)); if (codebook_over_sampling_rate_cfg_o1_r13_present) { - HANDLE_CODE(unpack_enum(codebook_over_sampling_rate_cfg_o1_r13, bref)); + HANDLE_CODE(codebook_over_sampling_rate_cfg_o1_r13.unpack(bref)); } if (codebook_over_sampling_rate_cfg_o2_r13_present) { - HANDLE_CODE(unpack_enum(codebook_over_sampling_rate_cfg_o2_r13, bref)); + HANDLE_CODE(codebook_over_sampling_rate_cfg_o2_r13.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(codebook_cfg_r13, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(unpack_integer(codebook_cfg_r13, bref, (uint8_t)1u, (uint8_t)4u)); if (csi_im_cfg_id_list_r13_present) { - HANDLE_CODE(unpack_dyn_seq_of(csi_im_cfg_id_list_r13, bref, 1, 2, UnalignedIntegerPacker(1, 24))); + HANDLE_CODE(unpack_dyn_seq_of(csi_im_cfg_id_list_r13, bref, 1, 2, integer_packer(1, 24))); } if (csi_rs_cfg_nzp_emimo_r13_present) { HANDLE_CODE(csi_rs_cfg_nzp_emimo_r13.unpack(bref)); @@ -22008,8 +21982,8 @@ SRSASN_CODE csi_rs_cfg_non_precoded_v1430_s::pack(bit_ref& bref) const if (csi_rs_cfg_nzp_emimo_v1430_present) { HANDLE_CODE(csi_rs_cfg_nzp_emimo_v1430.pack(bref)); } - HANDLE_CODE(pack_enum(bref, codebook_cfg_n1_v1430)); - HANDLE_CODE(pack_enum(bref, codebook_cfg_n2_v1430)); + HANDLE_CODE(codebook_cfg_n1_v1430.pack(bref)); + HANDLE_CODE(codebook_cfg_n2_v1430.pack(bref)); HANDLE_CODE(nzp_res_cfg_tm9_original_v1430.pack(bref)); return SRSASN_SUCCESS; @@ -22021,8 +21995,8 @@ SRSASN_CODE csi_rs_cfg_non_precoded_v1430_s::unpack(bit_ref& bref) if (csi_rs_cfg_nzp_emimo_v1430_present) { HANDLE_CODE(csi_rs_cfg_nzp_emimo_v1430.unpack(bref)); } - HANDLE_CODE(unpack_enum(codebook_cfg_n1_v1430, bref)); - HANDLE_CODE(unpack_enum(codebook_cfg_n2_v1430, bref)); + HANDLE_CODE(codebook_cfg_n1_v1430.unpack(bref)); + HANDLE_CODE(codebook_cfg_n2_v1430.unpack(bref)); HANDLE_CODE(nzp_res_cfg_tm9_original_v1430.unpack(bref)); return SRSASN_SUCCESS; @@ -22052,10 +22026,10 @@ SRSASN_CODE csi_rs_cfg_non_precoded_v1480_s::pack(bit_ref& bref) const HANDLE_CODE(csi_rs_cfg_nzp_emimo_v1480.pack(bref)); } if (codebook_cfg_n1_v1480_present) { - HANDLE_CODE(pack_enum(bref, codebook_cfg_n1_v1480)); + HANDLE_CODE(codebook_cfg_n1_v1480.pack(bref)); } if (codebook_cfg_n2_r1480_present) { - HANDLE_CODE(pack_enum(bref, codebook_cfg_n2_r1480)); + HANDLE_CODE(codebook_cfg_n2_r1480.pack(bref)); } HANDLE_CODE(nzp_res_cfg_tm9_original_v1480.pack(bref)); @@ -22071,10 +22045,10 @@ SRSASN_CODE csi_rs_cfg_non_precoded_v1480_s::unpack(bit_ref& bref) HANDLE_CODE(csi_rs_cfg_nzp_emimo_v1480.unpack(bref)); } if (codebook_cfg_n1_v1480_present) { - HANDLE_CODE(unpack_enum(codebook_cfg_n1_v1480, bref)); + HANDLE_CODE(codebook_cfg_n1_v1480.unpack(bref)); } if (codebook_cfg_n2_r1480_present) { - HANDLE_CODE(unpack_enum(codebook_cfg_n2_r1480, bref)); + HANDLE_CODE(codebook_cfg_n2_r1480.unpack(bref)); } HANDLE_CODE(nzp_res_cfg_tm9_original_v1480.unpack(bref)); @@ -22135,14 +22109,14 @@ void csi_rs_cfg_non_precoded_v1530_s::to_json(json_writer& j) const // P-C-AndCBSR-r11 ::= SEQUENCE SRSASN_CODE p_c_and_cbsr_r11_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, p_c_r11, (int8_t)-8, (int8_t)15)); + HANDLE_CODE(pack_integer(bref, p_c_r11, (int8_t)-8, (int8_t)15)); HANDLE_CODE(codebook_subset_restrict_r11.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE p_c_and_cbsr_r11_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(p_c_r11, bref, (int8_t)-8, (int8_t)15)); + HANDLE_CODE(unpack_integer(p_c_r11, bref, (int8_t)-8, (int8_t)15)); HANDLE_CODE(codebook_subset_restrict_r11.unpack(bref)); return SRSASN_SUCCESS; @@ -22158,7 +22132,7 @@ void p_c_and_cbsr_r11_s::to_json(json_writer& j) const // CQI-ReportAperiodicProc-r11 ::= SEQUENCE SRSASN_CODE cqi_report_aperiodic_proc_r11_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, cqi_report_mode_aperiodic_r11)); + HANDLE_CODE(cqi_report_mode_aperiodic_r11.pack(bref)); HANDLE_CODE(bref.pack(trigger01_r11, 1)); HANDLE_CODE(bref.pack(trigger10_r11, 1)); HANDLE_CODE(bref.pack(trigger11_r11, 1)); @@ -22167,7 +22141,7 @@ SRSASN_CODE cqi_report_aperiodic_proc_r11_s::pack(bit_ref& bref) const } SRSASN_CODE cqi_report_aperiodic_proc_r11_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(cqi_report_mode_aperiodic_r11, bref)); + HANDLE_CODE(cqi_report_mode_aperiodic_r11.unpack(bref)); HANDLE_CODE(bref.unpack(trigger01_r11, 1)); HANDLE_CODE(bref.unpack(trigger10_r11, 1)); HANDLE_CODE(bref.unpack(trigger11_r11, 1)); @@ -22229,7 +22203,7 @@ SRSASN_CODE cqi_report_both_proc_r11_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(pmi_ri_report_r11_present, 1)); if (ri_ref_csi_process_id_r11_present) { - HANDLE_CODE(pack_unalign_integer(bref, ri_ref_csi_process_id_r11, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, ri_ref_csi_process_id_r11, (uint8_t)1u, (uint8_t)4u)); } return SRSASN_SUCCESS; @@ -22240,7 +22214,7 @@ SRSASN_CODE cqi_report_both_proc_r11_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(pmi_ri_report_r11_present, 1)); if (ri_ref_csi_process_id_r11_present) { - HANDLE_CODE(unpack_unalign_integer(ri_ref_csi_process_id_r11, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(unpack_integer(ri_ref_csi_process_id_r11, bref, (uint8_t)1u, (uint8_t)4u)); } return SRSASN_SUCCESS; @@ -22284,15 +22258,15 @@ void cri_report_cfg_r13_c::to_json(json_writer& j) const } SRSASN_CODE cri_report_cfg_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.cri_cfg_idx2_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, c.cri_cfg_idx_r13, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.cri_cfg_idx_r13, (uint16_t)0u, (uint16_t)1023u)); if (c.cri_cfg_idx2_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.cri_cfg_idx2_r13, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.cri_cfg_idx2_r13, (uint16_t)0u, (uint16_t)1023u)); } break; default: @@ -22304,16 +22278,16 @@ SRSASN_CODE cri_report_cfg_r13_c::pack(bit_ref& bref) const SRSASN_CODE cri_report_cfg_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.unpack(c.cri_cfg_idx2_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(c.cri_cfg_idx_r13, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.cri_cfg_idx_r13, bref, (uint16_t)0u, (uint16_t)1023u)); if (c.cri_cfg_idx2_r13_present) { - HANDLE_CODE(unpack_unalign_integer(c.cri_cfg_idx2_r13, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.cri_cfg_idx2_r13, bref, (uint16_t)0u, (uint16_t)1023u)); } break; default: @@ -22340,9 +22314,9 @@ void csi_rs_cfg_emimo_hybrid_r14_c::to_json(json_writer& j) const if (c.periodicity_offset_idx_r14_present) { j.write_int("periodicityOffsetIndex-r14", c.periodicity_offset_idx_r14); } - if (c.e_mimo_type2_r14_present) { + if (c.emimo_type2_r14_present) { j.write_fieldname("eMIMO-Type2-r14"); - c.e_mimo_type2_r14.to_json(j); + c.emimo_type2_r14.to_json(j); } j.end_obj(); break; @@ -22353,18 +22327,18 @@ void csi_rs_cfg_emimo_hybrid_r14_c::to_json(json_writer& j) const } SRSASN_CODE csi_rs_cfg_emimo_hybrid_r14_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.periodicity_offset_idx_r14_present, 1)); - HANDLE_CODE(bref.pack(c.e_mimo_type2_r14_present, 1)); + HANDLE_CODE(bref.pack(c.emimo_type2_r14_present, 1)); if (c.periodicity_offset_idx_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.periodicity_offset_idx_r14, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.periodicity_offset_idx_r14, (uint16_t)0u, (uint16_t)1023u)); } - if (c.e_mimo_type2_r14_present) { - HANDLE_CODE(c.e_mimo_type2_r14.pack(bref)); + if (c.emimo_type2_r14_present) { + HANDLE_CODE(c.emimo_type2_r14.pack(bref)); } break; default: @@ -22376,19 +22350,19 @@ SRSASN_CODE csi_rs_cfg_emimo_hybrid_r14_c::pack(bit_ref& bref) const SRSASN_CODE csi_rs_cfg_emimo_hybrid_r14_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.unpack(c.periodicity_offset_idx_r14_present, 1)); - HANDLE_CODE(bref.unpack(c.e_mimo_type2_r14_present, 1)); + HANDLE_CODE(bref.unpack(c.emimo_type2_r14_present, 1)); if (c.periodicity_offset_idx_r14_present) { - HANDLE_CODE(unpack_unalign_integer(c.periodicity_offset_idx_r14, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.periodicity_offset_idx_r14, bref, (uint16_t)0u, (uint16_t)1023u)); } - if (c.e_mimo_type2_r14_present) { - HANDLE_CODE(c.e_mimo_type2_r14.unpack(bref)); + if (c.emimo_type2_r14_present) { + HANDLE_CODE(c.emimo_type2_r14.unpack(bref)); } break; default: @@ -22420,7 +22394,7 @@ void csi_rs_cfg_emimo_r13_c::to_json(json_writer& j) const } SRSASN_CODE csi_rs_cfg_emimo_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -22436,7 +22410,7 @@ SRSASN_CODE csi_rs_cfg_emimo_r13_c::pack(bit_ref& bref) const SRSASN_CODE csi_rs_cfg_emimo_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -22457,8 +22431,8 @@ void csi_rs_cfg_emimo_r13_c::setup_c_::destroy_() case types::non_precoded_r13: c.destroy(); break; - case types::beamformed_r13: - c.destroy(); + case types::bf_r13: + c.destroy(); break; default: break; @@ -22472,8 +22446,8 @@ void csi_rs_cfg_emimo_r13_c::setup_c_::set(types::options e) case types::non_precoded_r13: c.init(); break; - case types::beamformed_r13: - c.init(); + case types::bf_r13: + c.init(); break; case types::nulltype: break; @@ -22488,8 +22462,8 @@ csi_rs_cfg_emimo_r13_c::setup_c_::setup_c_(const csi_rs_cfg_emimo_r13_c::setup_c case types::non_precoded_r13: c.init(other.c.get()); break; - case types::beamformed_r13: - c.init(other.c.get()); + case types::bf_r13: + c.init(other.c.get()); break; case types::nulltype: break; @@ -22508,8 +22482,8 @@ csi_rs_cfg_emimo_r13_c::setup_c_& csi_rs_cfg_emimo_r13_c::setup_c_:: case types::non_precoded_r13: c.set(other.c.get()); break; - case types::beamformed_r13: - c.set(other.c.get()); + case types::bf_r13: + c.set(other.c.get()); break; case types::nulltype: break; @@ -22527,9 +22501,9 @@ void csi_rs_cfg_emimo_r13_c::setup_c_::to_json(json_writer& j) const j.write_fieldname("nonPrecoded-r13"); c.get().to_json(j); break; - case types::beamformed_r13: + case types::bf_r13: j.write_fieldname("beamformed-r13"); - c.get().to_json(j); + c.get().to_json(j); break; default: log_invalid_choice_id(type_, "csi_rs_cfg_emimo_r13_c::setup_c_"); @@ -22538,13 +22512,13 @@ void csi_rs_cfg_emimo_r13_c::setup_c_::to_json(json_writer& j) const } SRSASN_CODE csi_rs_cfg_emimo_r13_c::setup_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::non_precoded_r13: HANDLE_CODE(c.get().pack(bref)); break; - case types::beamformed_r13: - HANDLE_CODE(c.get().pack(bref)); + case types::bf_r13: + HANDLE_CODE(c.get().pack(bref)); break; default: log_invalid_choice_id(type_, "csi_rs_cfg_emimo_r13_c::setup_c_"); @@ -22555,14 +22529,14 @@ SRSASN_CODE csi_rs_cfg_emimo_r13_c::setup_c_::pack(bit_ref& bref) const SRSASN_CODE csi_rs_cfg_emimo_r13_c::setup_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::non_precoded_r13: HANDLE_CODE(c.get().unpack(bref)); break; - case types::beamformed_r13: - HANDLE_CODE(c.get().unpack(bref)); + case types::bf_r13: + HANDLE_CODE(c.get().unpack(bref)); break; default: log_invalid_choice_id(type_, "csi_rs_cfg_emimo_r13_c::setup_c_"); @@ -22593,7 +22567,7 @@ void csi_rs_cfg_emimo_v1430_c::to_json(json_writer& j) const } SRSASN_CODE csi_rs_cfg_emimo_v1430_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -22609,7 +22583,7 @@ SRSASN_CODE csi_rs_cfg_emimo_v1430_c::pack(bit_ref& bref) const SRSASN_CODE csi_rs_cfg_emimo_v1430_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -22630,8 +22604,8 @@ void csi_rs_cfg_emimo_v1430_c::setup_c_::destroy_() case types::non_precoded_v1430: c.destroy(); break; - case types::beamformed_v1430: - c.destroy(); + case types::bf_v1430: + c.destroy(); break; default: break; @@ -22645,8 +22619,8 @@ void csi_rs_cfg_emimo_v1430_c::setup_c_::set(types::options e) case types::non_precoded_v1430: c.init(); break; - case types::beamformed_v1430: - c.init(); + case types::bf_v1430: + c.init(); break; case types::nulltype: break; @@ -22661,8 +22635,8 @@ csi_rs_cfg_emimo_v1430_c::setup_c_::setup_c_(const csi_rs_cfg_emimo_v1430_c::set case types::non_precoded_v1430: c.init(other.c.get()); break; - case types::beamformed_v1430: - c.init(other.c.get()); + case types::bf_v1430: + c.init(other.c.get()); break; case types::nulltype: break; @@ -22681,8 +22655,8 @@ csi_rs_cfg_emimo_v1430_c::setup_c_& csi_rs_cfg_emimo_v1430_c::setup_c_:: case types::non_precoded_v1430: c.set(other.c.get()); break; - case types::beamformed_v1430: - c.set(other.c.get()); + case types::bf_v1430: + c.set(other.c.get()); break; case types::nulltype: break; @@ -22700,9 +22674,9 @@ void csi_rs_cfg_emimo_v1430_c::setup_c_::to_json(json_writer& j) const j.write_fieldname("nonPrecoded-v1430"); c.get().to_json(j); break; - case types::beamformed_v1430: + case types::bf_v1430: j.write_fieldname("beamformed-v1430"); - c.get().to_json(j); + c.get().to_json(j); break; default: log_invalid_choice_id(type_, "csi_rs_cfg_emimo_v1430_c::setup_c_"); @@ -22711,13 +22685,13 @@ void csi_rs_cfg_emimo_v1430_c::setup_c_::to_json(json_writer& j) const } SRSASN_CODE csi_rs_cfg_emimo_v1430_c::setup_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::non_precoded_v1430: HANDLE_CODE(c.get().pack(bref)); break; - case types::beamformed_v1430: - HANDLE_CODE(c.get().pack(bref)); + case types::bf_v1430: + HANDLE_CODE(c.get().pack(bref)); break; default: log_invalid_choice_id(type_, "csi_rs_cfg_emimo_v1430_c::setup_c_"); @@ -22728,14 +22702,14 @@ SRSASN_CODE csi_rs_cfg_emimo_v1430_c::setup_c_::pack(bit_ref& bref) const SRSASN_CODE csi_rs_cfg_emimo_v1430_c::setup_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::non_precoded_v1430: HANDLE_CODE(c.get().unpack(bref)); break; - case types::beamformed_v1430: - HANDLE_CODE(c.get().unpack(bref)); + case types::bf_v1430: + HANDLE_CODE(c.get().unpack(bref)); break; default: log_invalid_choice_id(type_, "csi_rs_cfg_emimo_v1430_c::setup_c_"); @@ -22766,7 +22740,7 @@ void csi_rs_cfg_emimo_v1480_c::to_json(json_writer& j) const } SRSASN_CODE csi_rs_cfg_emimo_v1480_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -22782,7 +22756,7 @@ SRSASN_CODE csi_rs_cfg_emimo_v1480_c::pack(bit_ref& bref) const SRSASN_CODE csi_rs_cfg_emimo_v1480_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -22803,8 +22777,8 @@ void csi_rs_cfg_emimo_v1480_c::setup_c_::destroy_() case types::non_precoded_v1480: c.destroy(); break; - case types::beamformed_v1480: - c.destroy(); + case types::bf_v1480: + c.destroy(); break; default: break; @@ -22818,8 +22792,8 @@ void csi_rs_cfg_emimo_v1480_c::setup_c_::set(types::options e) case types::non_precoded_v1480: c.init(); break; - case types::beamformed_v1480: - c.init(); + case types::bf_v1480: + c.init(); break; case types::nulltype: break; @@ -22834,8 +22808,8 @@ csi_rs_cfg_emimo_v1480_c::setup_c_::setup_c_(const csi_rs_cfg_emimo_v1480_c::set case types::non_precoded_v1480: c.init(other.c.get()); break; - case types::beamformed_v1480: - c.init(other.c.get()); + case types::bf_v1480: + c.init(other.c.get()); break; case types::nulltype: break; @@ -22854,8 +22828,8 @@ csi_rs_cfg_emimo_v1480_c::setup_c_& csi_rs_cfg_emimo_v1480_c::setup_c_:: case types::non_precoded_v1480: c.set(other.c.get()); break; - case types::beamformed_v1480: - c.set(other.c.get()); + case types::bf_v1480: + c.set(other.c.get()); break; case types::nulltype: break; @@ -22873,9 +22847,9 @@ void csi_rs_cfg_emimo_v1480_c::setup_c_::to_json(json_writer& j) const j.write_fieldname("nonPrecoded-v1480"); c.get().to_json(j); break; - case types::beamformed_v1480: + case types::bf_v1480: j.write_fieldname("beamformed-v1480"); - c.get().to_json(j); + c.get().to_json(j); break; default: log_invalid_choice_id(type_, "csi_rs_cfg_emimo_v1480_c::setup_c_"); @@ -22884,13 +22858,13 @@ void csi_rs_cfg_emimo_v1480_c::setup_c_::to_json(json_writer& j) const } SRSASN_CODE csi_rs_cfg_emimo_v1480_c::setup_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::non_precoded_v1480: HANDLE_CODE(c.get().pack(bref)); break; - case types::beamformed_v1480: - HANDLE_CODE(c.get().pack(bref)); + case types::bf_v1480: + HANDLE_CODE(c.get().pack(bref)); break; default: log_invalid_choice_id(type_, "csi_rs_cfg_emimo_v1480_c::setup_c_"); @@ -22901,14 +22875,14 @@ SRSASN_CODE csi_rs_cfg_emimo_v1480_c::setup_c_::pack(bit_ref& bref) const SRSASN_CODE csi_rs_cfg_emimo_v1480_c::setup_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::non_precoded_v1480: HANDLE_CODE(c.get().unpack(bref)); break; - case types::beamformed_v1480: - HANDLE_CODE(c.get().unpack(bref)); + case types::bf_v1480: + HANDLE_CODE(c.get().unpack(bref)); break; default: log_invalid_choice_id(type_, "csi_rs_cfg_emimo_v1480_c::setup_c_"); @@ -22939,7 +22913,7 @@ void csi_rs_cfg_emimo_v1530_c::to_json(json_writer& j) const } SRSASN_CODE csi_rs_cfg_emimo_v1530_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -22955,7 +22929,7 @@ SRSASN_CODE csi_rs_cfg_emimo_v1530_c::pack(bit_ref& bref) const SRSASN_CODE csi_rs_cfg_emimo_v1530_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -22995,11 +22969,11 @@ SRSASN_CODE cqi_report_periodic_proc_ext_r11_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(ri_cfg_idx_r11_present, 1)); HANDLE_CODE(bref.pack(csi_cfg_idx_r11_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, cqi_report_periodic_proc_ext_id_r11, (uint8_t)1, (uint8_t)3)); - HANDLE_CODE(pack_unalign_integer(bref, cqi_pmi_cfg_idx_r11, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, cqi_report_periodic_proc_ext_id_r11, (uint8_t)1u, (uint8_t)3u)); + HANDLE_CODE(pack_integer(bref, cqi_pmi_cfg_idx_r11, (uint16_t)0u, (uint16_t)1023u)); HANDLE_CODE(cqi_format_ind_periodic_r11.pack(bref)); if (ri_cfg_idx_r11_present) { - HANDLE_CODE(pack_unalign_integer(bref, ri_cfg_idx_r11, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, ri_cfg_idx_r11, (uint16_t)0u, (uint16_t)1023u)); } if (csi_cfg_idx_r11_present) { HANDLE_CODE(csi_cfg_idx_r11.pack(bref)); @@ -23012,7 +22986,7 @@ SRSASN_CODE cqi_report_periodic_proc_ext_r11_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(cri_report_cfg_r13.is_present(), 1)); if (cri_report_cfg_r13.is_present()) { @@ -23020,11 +22994,11 @@ SRSASN_CODE cqi_report_periodic_proc_ext_r11_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(periodicity_factor_wb_r13_present, 1)); if (periodicity_factor_wb_r13_present) { - HANDLE_CODE(pack_enum(bref, periodicity_factor_wb_r13)); + HANDLE_CODE(periodicity_factor_wb_r13.pack(bref)); } } } @@ -23036,11 +23010,11 @@ SRSASN_CODE cqi_report_periodic_proc_ext_r11_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ri_cfg_idx_r11_present, 1)); HANDLE_CODE(bref.unpack(csi_cfg_idx_r11_present, 1)); - HANDLE_CODE(unpack_unalign_integer(cqi_report_periodic_proc_ext_id_r11, bref, (uint8_t)1, (uint8_t)3)); - HANDLE_CODE(unpack_unalign_integer(cqi_pmi_cfg_idx_r11, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(cqi_report_periodic_proc_ext_id_r11, bref, (uint8_t)1u, (uint8_t)3u)); + HANDLE_CODE(unpack_integer(cqi_pmi_cfg_idx_r11, bref, (uint16_t)0u, (uint16_t)1023u)); HANDLE_CODE(cqi_format_ind_periodic_r11.unpack(bref)); if (ri_cfg_idx_r11_present) { - HANDLE_CODE(unpack_unalign_integer(ri_cfg_idx_r11, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(ri_cfg_idx_r11, bref, (uint16_t)0u, (uint16_t)1023u)); } if (csi_cfg_idx_r11_present) { HANDLE_CODE(csi_cfg_idx_r11.unpack(bref)); @@ -23051,7 +23025,7 @@ SRSASN_CODE cqi_report_periodic_proc_ext_r11_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool cri_report_cfg_r13_present; HANDLE_CODE(bref.unpack(cri_report_cfg_r13_present, 1)); @@ -23061,11 +23035,11 @@ SRSASN_CODE cqi_report_periodic_proc_ext_r11_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(periodicity_factor_wb_r13_present, 1)); if (periodicity_factor_wb_r13_present) { - HANDLE_CODE(unpack_enum(periodicity_factor_wb_r13, bref)); + HANDLE_CODE(periodicity_factor_wb_r13.unpack(bref)); } } } @@ -23193,17 +23167,17 @@ void cqi_report_periodic_proc_ext_r11_s::cqi_format_ind_periodic_r11_c_::to_json } SRSASN_CODE cqi_report_periodic_proc_ext_r11_s::cqi_format_ind_periodic_r11_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::wideband_cqi_r11: HANDLE_CODE(bref.pack(c.get().csi_report_mode_r11_present, 1)); if (c.get().csi_report_mode_r11_present) { - HANDLE_CODE(pack_enum(bref, c.get().csi_report_mode_r11)); + HANDLE_CODE(c.get().csi_report_mode_r11.pack(bref)); } break; case types::subband_cqi_r11: - HANDLE_CODE(pack_unalign_integer(bref, c.get().k, (uint8_t)1, (uint8_t)4)); - HANDLE_CODE(pack_enum(bref, c.get().periodicity_factor_r11)); + HANDLE_CODE(pack_integer(bref, c.get().k, (uint8_t)1u, (uint8_t)4u)); + HANDLE_CODE(c.get().periodicity_factor_r11.pack(bref)); break; default: log_invalid_choice_id(type_, "cqi_report_periodic_proc_ext_r11_s::cqi_format_ind_periodic_r11_c_"); @@ -23214,18 +23188,18 @@ SRSASN_CODE cqi_report_periodic_proc_ext_r11_s::cqi_format_ind_periodic_r11_c_:: SRSASN_CODE cqi_report_periodic_proc_ext_r11_s::cqi_format_ind_periodic_r11_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::wideband_cqi_r11: HANDLE_CODE(bref.unpack(c.get().csi_report_mode_r11_present, 1)); if (c.get().csi_report_mode_r11_present) { - HANDLE_CODE(unpack_enum(c.get().csi_report_mode_r11, bref)); + HANDLE_CODE(c.get().csi_report_mode_r11.unpack(bref)); } break; case types::subband_cqi_r11: - HANDLE_CODE(unpack_unalign_integer(c.get().k, bref, (uint8_t)1, (uint8_t)4)); - HANDLE_CODE(unpack_enum(c.get().periodicity_factor_r11, bref)); + HANDLE_CODE(unpack_integer(c.get().k, bref, (uint8_t)1u, (uint8_t)4u)); + HANDLE_CODE(c.get().periodicity_factor_r11.unpack(bref)); break; default: log_invalid_choice_id(type_, "cqi_report_periodic_proc_ext_r11_s::cqi_format_ind_periodic_r11_c_"); @@ -23260,15 +23234,15 @@ void cqi_report_periodic_proc_ext_r11_s::csi_cfg_idx_r11_c_::to_json(json_writer } SRSASN_CODE cqi_report_periodic_proc_ext_r11_s::csi_cfg_idx_r11_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.ri_cfg_idx2_r11_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, c.cqi_pmi_cfg_idx2_r11, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.cqi_pmi_cfg_idx2_r11, (uint16_t)0u, (uint16_t)1023u)); if (c.ri_cfg_idx2_r11_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.ri_cfg_idx2_r11, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.ri_cfg_idx2_r11, (uint16_t)0u, (uint16_t)1023u)); } break; default: @@ -23280,16 +23254,16 @@ SRSASN_CODE cqi_report_periodic_proc_ext_r11_s::csi_cfg_idx_r11_c_::pack(bit_ref SRSASN_CODE cqi_report_periodic_proc_ext_r11_s::csi_cfg_idx_r11_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.unpack(c.ri_cfg_idx2_r11_present, 1)); - HANDLE_CODE(unpack_unalign_integer(c.cqi_pmi_cfg_idx2_r11, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.cqi_pmi_cfg_idx2_r11, bref, (uint16_t)0u, (uint16_t)1023u)); if (c.ri_cfg_idx2_r11_present) { - HANDLE_CODE(unpack_unalign_integer(c.ri_cfg_idx2_r11, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.ri_cfg_idx2_r11, bref, (uint16_t)0u, (uint16_t)1023u)); } break; default: @@ -23303,9 +23277,9 @@ SRSASN_CODE cqi_report_periodic_proc_ext_r11_s::csi_cfg_idx_r11_c_::unpack(bit_r SRSASN_CODE csi_im_cfg_r11_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, csi_im_cfg_id_r11, (uint8_t)1, (uint8_t)3)); - HANDLE_CODE(pack_unalign_integer(bref, res_cfg_r11, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, sf_cfg_r11, (uint8_t)0, (uint8_t)154)); + HANDLE_CODE(pack_integer(bref, csi_im_cfg_id_r11, (uint8_t)1u, (uint8_t)3u)); + HANDLE_CODE(pack_integer(bref, res_cfg_r11, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, sf_cfg_r11, (uint8_t)0u, (uint8_t)154u)); if (ext) { ext_groups_packer_guard group_flags; @@ -23313,7 +23287,7 @@ SRSASN_CODE csi_im_cfg_r11_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(interference_meas_restrict_r13_present, 1)); if (interference_meas_restrict_r13_present) { @@ -23326,16 +23300,16 @@ SRSASN_CODE csi_im_cfg_r11_s::pack(bit_ref& bref) const SRSASN_CODE csi_im_cfg_r11_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(csi_im_cfg_id_r11, bref, (uint8_t)1, (uint8_t)3)); - HANDLE_CODE(unpack_unalign_integer(res_cfg_r11, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(sf_cfg_r11, bref, (uint8_t)0, (uint8_t)154)); + HANDLE_CODE(unpack_integer(csi_im_cfg_id_r11, bref, (uint8_t)1u, (uint8_t)3u)); + HANDLE_CODE(unpack_integer(res_cfg_r11, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(sf_cfg_r11, bref, (uint8_t)0u, (uint8_t)154u)); if (ext) { ext_groups_unpacker_guard group_flags(1); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(interference_meas_restrict_r13_present, 1)); if (interference_meas_restrict_r13_present) { @@ -23363,9 +23337,9 @@ void csi_im_cfg_r11_s::to_json(json_writer& j) const SRSASN_CODE csi_im_cfg_ext_r12_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, csi_im_cfg_id_v1250, (uint8_t)4, (uint8_t)4)); - HANDLE_CODE(pack_unalign_integer(bref, res_cfg_r12, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, sf_cfg_r12, (uint8_t)0, (uint8_t)154)); + HANDLE_CODE(pack_integer(bref, csi_im_cfg_id_v1250, (uint8_t)4u, (uint8_t)4u)); + HANDLE_CODE(pack_integer(bref, res_cfg_r12, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, sf_cfg_r12, (uint8_t)0u, (uint8_t)154u)); if (ext) { ext_groups_packer_guard group_flags; @@ -23374,7 +23348,7 @@ SRSASN_CODE csi_im_cfg_ext_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(interference_meas_restrict_r13_present, 1)); HANDLE_CODE(bref.pack(csi_im_cfg_id_v1310_present, 1)); @@ -23382,7 +23356,7 @@ SRSASN_CODE csi_im_cfg_ext_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(interference_meas_restrict_r13, 1)); } if (csi_im_cfg_id_v1310_present) { - HANDLE_CODE(pack_unalign_integer(bref, csi_im_cfg_id_v1310, (uint8_t)5, (uint8_t)24)); + HANDLE_CODE(pack_integer(bref, csi_im_cfg_id_v1310, (uint8_t)5u, (uint8_t)24u)); } } } @@ -23391,16 +23365,16 @@ SRSASN_CODE csi_im_cfg_ext_r12_s::pack(bit_ref& bref) const SRSASN_CODE csi_im_cfg_ext_r12_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(csi_im_cfg_id_v1250, bref, (uint8_t)4, (uint8_t)4)); - HANDLE_CODE(unpack_unalign_integer(res_cfg_r12, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(sf_cfg_r12, bref, (uint8_t)0, (uint8_t)154)); + HANDLE_CODE(unpack_integer(csi_im_cfg_id_v1250, bref, (uint8_t)4u, (uint8_t)4u)); + HANDLE_CODE(unpack_integer(res_cfg_r12, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(sf_cfg_r12, bref, (uint8_t)0u, (uint8_t)154u)); if (ext) { ext_groups_unpacker_guard group_flags(1); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(interference_meas_restrict_r13_present, 1)); HANDLE_CODE(bref.unpack(csi_im_cfg_id_v1310_present, 1)); @@ -23408,7 +23382,7 @@ SRSASN_CODE csi_im_cfg_ext_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(interference_meas_restrict_r13, 1)); } if (csi_im_cfg_id_v1310_present) { - HANDLE_CODE(unpack_unalign_integer(csi_im_cfg_id_v1310, bref, (uint8_t)5, (uint8_t)24)); + HANDLE_CODE(unpack_integer(csi_im_cfg_id_v1310, bref, (uint8_t)5u, (uint8_t)24u)); } } } @@ -23439,15 +23413,15 @@ SRSASN_CODE csi_process_r11_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(cqi_report_periodic_proc_id_r11_present, 1)); HANDLE_CODE(bref.pack(cqi_report_aperiodic_proc_r11_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, csi_process_id_r11, (uint8_t)1, (uint8_t)4)); - HANDLE_CODE(pack_unalign_integer(bref, csi_rs_cfg_nzp_id_r11, (uint8_t)1, (uint8_t)3)); - HANDLE_CODE(pack_unalign_integer(bref, csi_im_cfg_id_r11, (uint8_t)1, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, csi_process_id_r11, (uint8_t)1u, (uint8_t)4u)); + HANDLE_CODE(pack_integer(bref, csi_rs_cfg_nzp_id_r11, (uint8_t)1u, (uint8_t)3u)); + HANDLE_CODE(pack_integer(bref, csi_im_cfg_id_r11, (uint8_t)1u, (uint8_t)3u)); HANDLE_CODE(pack_dyn_seq_of(bref, p_c_and_cbsr_list_r11, 1, 2)); if (cqi_report_both_proc_r11_present) { HANDLE_CODE(cqi_report_both_proc_r11.pack(bref)); } if (cqi_report_periodic_proc_id_r11_present) { - HANDLE_CODE(pack_unalign_integer(bref, cqi_report_periodic_proc_id_r11, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, cqi_report_periodic_proc_id_r11, (uint8_t)0u, (uint8_t)3u)); } if (cqi_report_aperiodic_proc_r11_present) { HANDLE_CODE(cqi_report_aperiodic_proc_r11.pack(bref)); @@ -23455,24 +23429,24 @@ SRSASN_CODE csi_process_r11_s::pack(bit_ref& bref) const if (ext) { ext_groups_packer_guard group_flags; - group_flags[0] |= alternative_codebook_enabled_for4_tx_proc_r12_present; + group_flags[0] |= alt_codebook_enabled_for4_tx_proc_r12_present; group_flags[0] |= csi_im_cfg_id_list_r12.is_present(); group_flags[0] |= cqi_report_aperiodic_proc2_r12.is_present(); group_flags[1] |= cqi_report_aperiodic_proc_v1310.is_present(); group_flags[1] |= cqi_report_aperiodic_proc2_v1310.is_present(); - group_flags[1] |= e_mimo_type_r13.is_present(); + group_flags[1] |= emimo_type_r13.is_present(); group_flags[2] |= dummy.is_present(); - group_flags[2] |= e_mimo_hybrid_r14.is_present(); + group_flags[2] |= emimo_hybrid_r14.is_present(); group_flags[2] |= advanced_codebook_enabled_r14_present; - group_flags[3] |= e_mimo_type_v1480.is_present(); + group_flags[3] |= emimo_type_v1480.is_present(); group_flags[4] |= fe_comp_csi_enabled_v1530_present; - group_flags[4] |= e_mimo_type_v1530.is_present(); + group_flags[4] |= emimo_type_v1530.is_present(); group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); - HANDLE_CODE(bref.pack(alternative_codebook_enabled_for4_tx_proc_r12_present, 1)); + HANDLE_CODE(bref.pack(alt_codebook_enabled_for4_tx_proc_r12_present, 1)); HANDLE_CODE(bref.pack(csi_im_cfg_id_list_r12.is_present(), 1)); HANDLE_CODE(bref.pack(cqi_report_aperiodic_proc2_r12.is_present(), 1)); if (csi_im_cfg_id_list_r12.is_present()) { @@ -23483,55 +23457,55 @@ SRSASN_CODE csi_process_r11_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(cqi_report_aperiodic_proc_v1310.is_present(), 1)); HANDLE_CODE(bref.pack(cqi_report_aperiodic_proc2_v1310.is_present(), 1)); - HANDLE_CODE(bref.pack(e_mimo_type_r13.is_present(), 1)); + HANDLE_CODE(bref.pack(emimo_type_r13.is_present(), 1)); if (cqi_report_aperiodic_proc_v1310.is_present()) { HANDLE_CODE(cqi_report_aperiodic_proc_v1310->pack(bref)); } if (cqi_report_aperiodic_proc2_v1310.is_present()) { HANDLE_CODE(cqi_report_aperiodic_proc2_v1310->pack(bref)); } - if (e_mimo_type_r13.is_present()) { - HANDLE_CODE(e_mimo_type_r13->pack(bref)); + if (emimo_type_r13.is_present()) { + HANDLE_CODE(emimo_type_r13->pack(bref)); } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(dummy.is_present(), 1)); - HANDLE_CODE(bref.pack(e_mimo_hybrid_r14.is_present(), 1)); + HANDLE_CODE(bref.pack(emimo_hybrid_r14.is_present(), 1)); HANDLE_CODE(bref.pack(advanced_codebook_enabled_r14_present, 1)); if (dummy.is_present()) { HANDLE_CODE(dummy->pack(bref)); } - if (e_mimo_hybrid_r14.is_present()) { - HANDLE_CODE(e_mimo_hybrid_r14->pack(bref)); + if (emimo_hybrid_r14.is_present()) { + HANDLE_CODE(emimo_hybrid_r14->pack(bref)); } if (advanced_codebook_enabled_r14_present) { HANDLE_CODE(bref.pack(advanced_codebook_enabled_r14, 1)); } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); - HANDLE_CODE(bref.pack(e_mimo_type_v1480.is_present(), 1)); - if (e_mimo_type_v1480.is_present()) { - HANDLE_CODE(e_mimo_type_v1480->pack(bref)); + HANDLE_CODE(bref.pack(emimo_type_v1480.is_present(), 1)); + if (emimo_type_v1480.is_present()) { + HANDLE_CODE(emimo_type_v1480->pack(bref)); } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(fe_comp_csi_enabled_v1530_present, 1)); - HANDLE_CODE(bref.pack(e_mimo_type_v1530.is_present(), 1)); + HANDLE_CODE(bref.pack(emimo_type_v1530.is_present(), 1)); if (fe_comp_csi_enabled_v1530_present) { HANDLE_CODE(bref.pack(fe_comp_csi_enabled_v1530, 1)); } - if (e_mimo_type_v1530.is_present()) { - HANDLE_CODE(e_mimo_type_v1530->pack(bref)); + if (emimo_type_v1530.is_present()) { + HANDLE_CODE(emimo_type_v1530->pack(bref)); } } } @@ -23544,15 +23518,15 @@ SRSASN_CODE csi_process_r11_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(cqi_report_periodic_proc_id_r11_present, 1)); HANDLE_CODE(bref.unpack(cqi_report_aperiodic_proc_r11_present, 1)); - HANDLE_CODE(unpack_unalign_integer(csi_process_id_r11, bref, (uint8_t)1, (uint8_t)4)); - HANDLE_CODE(unpack_unalign_integer(csi_rs_cfg_nzp_id_r11, bref, (uint8_t)1, (uint8_t)3)); - HANDLE_CODE(unpack_unalign_integer(csi_im_cfg_id_r11, bref, (uint8_t)1, (uint8_t)3)); + HANDLE_CODE(unpack_integer(csi_process_id_r11, bref, (uint8_t)1u, (uint8_t)4u)); + HANDLE_CODE(unpack_integer(csi_rs_cfg_nzp_id_r11, bref, (uint8_t)1u, (uint8_t)3u)); + HANDLE_CODE(unpack_integer(csi_im_cfg_id_r11, bref, (uint8_t)1u, (uint8_t)3u)); HANDLE_CODE(unpack_dyn_seq_of(p_c_and_cbsr_list_r11, bref, 1, 2)); if (cqi_report_both_proc_r11_present) { HANDLE_CODE(cqi_report_both_proc_r11.unpack(bref)); } if (cqi_report_periodic_proc_id_r11_present) { - HANDLE_CODE(unpack_unalign_integer(cqi_report_periodic_proc_id_r11, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(cqi_report_periodic_proc_id_r11, bref, (uint8_t)0u, (uint8_t)3u)); } if (cqi_report_aperiodic_proc_r11_present) { HANDLE_CODE(cqi_report_aperiodic_proc_r11.unpack(bref)); @@ -23563,9 +23537,9 @@ SRSASN_CODE csi_process_r11_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); - HANDLE_CODE(bref.unpack(alternative_codebook_enabled_for4_tx_proc_r12_present, 1)); + HANDLE_CODE(bref.unpack(alt_codebook_enabled_for4_tx_proc_r12_present, 1)); bool csi_im_cfg_id_list_r12_present; HANDLE_CODE(bref.unpack(csi_im_cfg_id_list_r12_present, 1)); csi_im_cfg_id_list_r12.set_present(csi_im_cfg_id_list_r12_present); @@ -23580,7 +23554,7 @@ SRSASN_CODE csi_process_r11_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool cqi_report_aperiodic_proc_v1310_present; HANDLE_CODE(bref.unpack(cqi_report_aperiodic_proc_v1310_present, 1)); @@ -23588,61 +23562,61 @@ SRSASN_CODE csi_process_r11_s::unpack(bit_ref& bref) bool cqi_report_aperiodic_proc2_v1310_present; HANDLE_CODE(bref.unpack(cqi_report_aperiodic_proc2_v1310_present, 1)); cqi_report_aperiodic_proc2_v1310.set_present(cqi_report_aperiodic_proc2_v1310_present); - bool e_mimo_type_r13_present; - HANDLE_CODE(bref.unpack(e_mimo_type_r13_present, 1)); - e_mimo_type_r13.set_present(e_mimo_type_r13_present); + bool emimo_type_r13_present; + HANDLE_CODE(bref.unpack(emimo_type_r13_present, 1)); + emimo_type_r13.set_present(emimo_type_r13_present); if (cqi_report_aperiodic_proc_v1310.is_present()) { HANDLE_CODE(cqi_report_aperiodic_proc_v1310->unpack(bref)); } if (cqi_report_aperiodic_proc2_v1310.is_present()) { HANDLE_CODE(cqi_report_aperiodic_proc2_v1310->unpack(bref)); } - if (e_mimo_type_r13.is_present()) { - HANDLE_CODE(e_mimo_type_r13->unpack(bref)); + if (emimo_type_r13.is_present()) { + HANDLE_CODE(emimo_type_r13->unpack(bref)); } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool dummy_present; HANDLE_CODE(bref.unpack(dummy_present, 1)); dummy.set_present(dummy_present); - bool e_mimo_hybrid_r14_present; - HANDLE_CODE(bref.unpack(e_mimo_hybrid_r14_present, 1)); - e_mimo_hybrid_r14.set_present(e_mimo_hybrid_r14_present); + bool emimo_hybrid_r14_present; + HANDLE_CODE(bref.unpack(emimo_hybrid_r14_present, 1)); + emimo_hybrid_r14.set_present(emimo_hybrid_r14_present); HANDLE_CODE(bref.unpack(advanced_codebook_enabled_r14_present, 1)); if (dummy.is_present()) { HANDLE_CODE(dummy->unpack(bref)); } - if (e_mimo_hybrid_r14.is_present()) { - HANDLE_CODE(e_mimo_hybrid_r14->unpack(bref)); + if (emimo_hybrid_r14.is_present()) { + HANDLE_CODE(emimo_hybrid_r14->unpack(bref)); } if (advanced_codebook_enabled_r14_present) { HANDLE_CODE(bref.unpack(advanced_codebook_enabled_r14, 1)); } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); - bool e_mimo_type_v1480_present; - HANDLE_CODE(bref.unpack(e_mimo_type_v1480_present, 1)); - e_mimo_type_v1480.set_present(e_mimo_type_v1480_present); - if (e_mimo_type_v1480.is_present()) { - HANDLE_CODE(e_mimo_type_v1480->unpack(bref)); + bool emimo_type_v1480_present; + HANDLE_CODE(bref.unpack(emimo_type_v1480_present, 1)); + emimo_type_v1480.set_present(emimo_type_v1480_present); + if (emimo_type_v1480.is_present()) { + HANDLE_CODE(emimo_type_v1480->unpack(bref)); } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(fe_comp_csi_enabled_v1530_present, 1)); - bool e_mimo_type_v1530_present; - HANDLE_CODE(bref.unpack(e_mimo_type_v1530_present, 1)); - e_mimo_type_v1530.set_present(e_mimo_type_v1530_present); + bool emimo_type_v1530_present; + HANDLE_CODE(bref.unpack(emimo_type_v1530_present, 1)); + emimo_type_v1530.set_present(emimo_type_v1530_present); if (fe_comp_csi_enabled_v1530_present) { HANDLE_CODE(bref.unpack(fe_comp_csi_enabled_v1530, 1)); } - if (e_mimo_type_v1530.is_present()) { - HANDLE_CODE(e_mimo_type_v1530->unpack(bref)); + if (emimo_type_v1530.is_present()) { + HANDLE_CODE(emimo_type_v1530->unpack(bref)); } } } @@ -23671,7 +23645,7 @@ void csi_process_r11_s::to_json(json_writer& j) const cqi_report_aperiodic_proc_r11.to_json(j); } if (ext) { - if (alternative_codebook_enabled_for4_tx_proc_r12_present) { + if (alt_codebook_enabled_for4_tx_proc_r12_present) { j.write_str("alternativeCodebookEnabledFor4TXProc-r12", "true"); } if (csi_im_cfg_id_list_r12.is_present()) { @@ -23690,31 +23664,31 @@ void csi_process_r11_s::to_json(json_writer& j) const j.write_fieldname("cqi-ReportAperiodicProc2-v1310"); cqi_report_aperiodic_proc2_v1310->to_json(j); } - if (e_mimo_type_r13.is_present()) { + if (emimo_type_r13.is_present()) { j.write_fieldname("eMIMO-Type-r13"); - e_mimo_type_r13->to_json(j); + emimo_type_r13->to_json(j); } if (dummy.is_present()) { j.write_fieldname("dummy"); dummy->to_json(j); } - if (e_mimo_hybrid_r14.is_present()) { + if (emimo_hybrid_r14.is_present()) { j.write_fieldname("eMIMO-Hybrid-r14"); - e_mimo_hybrid_r14->to_json(j); + emimo_hybrid_r14->to_json(j); } if (advanced_codebook_enabled_r14_present) { j.write_bool("advancedCodebookEnabled-r14", advanced_codebook_enabled_r14); } - if (e_mimo_type_v1480.is_present()) { + if (emimo_type_v1480.is_present()) { j.write_fieldname("eMIMO-Type-v1480"); - e_mimo_type_v1480->to_json(j); + emimo_type_v1480->to_json(j); } if (fe_comp_csi_enabled_v1530_present) { j.write_bool("feCOMP-CSI-Enabled-v1530", fe_comp_csi_enabled_v1530); } - if (e_mimo_type_v1530.is_present()) { + if (emimo_type_v1530.is_present()) { j.write_fieldname("eMIMO-Type-v1530"); - e_mimo_type_v1530->to_json(j); + emimo_type_v1530->to_json(j); } } j.end_obj(); @@ -23744,12 +23718,12 @@ void csi_process_r11_s::csi_im_cfg_id_list_r12_c_::to_json(json_writer& j) const } SRSASN_CODE csi_process_r11_s::csi_im_cfg_id_list_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_dyn_seq_of(bref, c, 1, 2, UnalignedIntegerPacker(1, 4))); + HANDLE_CODE(pack_dyn_seq_of(bref, c, 1, 2, integer_packer(1, 4))); break; default: log_invalid_choice_id(type_, "csi_process_r11_s::csi_im_cfg_id_list_r12_c_"); @@ -23760,13 +23734,13 @@ SRSASN_CODE csi_process_r11_s::csi_im_cfg_id_list_r12_c_::pack(bit_ref& bref) co SRSASN_CODE csi_process_r11_s::csi_im_cfg_id_list_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_dyn_seq_of(c, bref, 1, 2, UnalignedIntegerPacker(1, 4))); + HANDLE_CODE(unpack_dyn_seq_of(c, bref, 1, 2, integer_packer(1, 4))); break; default: log_invalid_choice_id(type_, "csi_process_r11_s::csi_im_cfg_id_list_r12_c_"); @@ -23796,7 +23770,7 @@ void csi_process_r11_s::cqi_report_aperiodic_proc2_r12_c_::to_json(json_writer& } SRSASN_CODE csi_process_r11_s::cqi_report_aperiodic_proc2_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -23812,7 +23786,7 @@ SRSASN_CODE csi_process_r11_s::cqi_report_aperiodic_proc2_r12_c_::pack(bit_ref& SRSASN_CODE csi_process_r11_s::cqi_report_aperiodic_proc2_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -23848,7 +23822,7 @@ void csi_process_r11_s::cqi_report_aperiodic_proc_v1310_c_::to_json(json_writer& } SRSASN_CODE csi_process_r11_s::cqi_report_aperiodic_proc_v1310_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -23864,7 +23838,7 @@ SRSASN_CODE csi_process_r11_s::cqi_report_aperiodic_proc_v1310_c_::pack(bit_ref& SRSASN_CODE csi_process_r11_s::cqi_report_aperiodic_proc_v1310_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -23900,7 +23874,7 @@ void csi_process_r11_s::cqi_report_aperiodic_proc2_v1310_c_::to_json(json_writer } SRSASN_CODE csi_process_r11_s::cqi_report_aperiodic_proc2_v1310_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -23916,7 +23890,7 @@ SRSASN_CODE csi_process_r11_s::cqi_report_aperiodic_proc2_v1310_c_::pack(bit_ref SRSASN_CODE csi_process_r11_s::cqi_report_aperiodic_proc2_v1310_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -23934,15 +23908,15 @@ SRSASN_CODE csi_process_r11_s::cqi_report_aperiodic_proc2_v1310_c_::unpack(bit_r // N4SPUCCH-Resource-r15 ::= SEQUENCE SRSASN_CODE n4_spucch_res_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, n4start_prb_r15, (uint8_t)0, (uint8_t)109)); - HANDLE_CODE(pack_unalign_integer(bref, n4nof_prb_r15, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, n4start_prb_r15, (uint8_t)0u, (uint8_t)109u)); + HANDLE_CODE(pack_integer(bref, n4nof_prb_r15, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } SRSASN_CODE n4_spucch_res_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(n4start_prb_r15, bref, (uint8_t)0, (uint8_t)109)); - HANDLE_CODE(unpack_unalign_integer(n4nof_prb_r15, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(n4start_prb_r15, bref, (uint8_t)0u, (uint8_t)109u)); + HANDLE_CODE(unpack_integer(n4nof_prb_r15, bref, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } @@ -23958,14 +23932,14 @@ void n4_spucch_res_r15_s::to_json(json_writer& j) const SRSASN_CODE zero_tx_pwr_csi_rs_r12_s::pack(bit_ref& bref) const { HANDLE_CODE(zero_tx_pwr_res_cfg_list_r12.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, zero_tx_pwr_sf_cfg_r12, (uint8_t)0, (uint8_t)154)); + HANDLE_CODE(pack_integer(bref, zero_tx_pwr_sf_cfg_r12, (uint8_t)0u, (uint8_t)154u)); return SRSASN_SUCCESS; } SRSASN_CODE zero_tx_pwr_csi_rs_r12_s::unpack(bit_ref& bref) { HANDLE_CODE(zero_tx_pwr_res_cfg_list_r12.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(zero_tx_pwr_sf_cfg_r12, bref, (uint8_t)0, (uint8_t)154)); + HANDLE_CODE(unpack_integer(zero_tx_pwr_sf_cfg_r12, bref, (uint8_t)0u, (uint8_t)154u)); return SRSASN_SUCCESS; } @@ -24008,13 +23982,13 @@ void cqi_report_aperiodic_r10_c::to_json(json_writer& j) const } SRSASN_CODE cqi_report_aperiodic_r10_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.aperiodic_csi_trigger_r10_present, 1)); - HANDLE_CODE(pack_enum(bref, c.cqi_report_mode_aperiodic_r10)); + HANDLE_CODE(c.cqi_report_mode_aperiodic_r10.pack(bref)); if (c.aperiodic_csi_trigger_r10_present) { HANDLE_CODE(c.aperiodic_csi_trigger_r10.trigger1_r10.pack(bref)); HANDLE_CODE(c.aperiodic_csi_trigger_r10.trigger2_r10.pack(bref)); @@ -24029,14 +24003,14 @@ SRSASN_CODE cqi_report_aperiodic_r10_c::pack(bit_ref& bref) const SRSASN_CODE cqi_report_aperiodic_r10_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.unpack(c.aperiodic_csi_trigger_r10_present, 1)); - HANDLE_CODE(unpack_enum(c.cqi_report_mode_aperiodic_r10, bref)); + HANDLE_CODE(c.cqi_report_mode_aperiodic_r10.unpack(bref)); if (c.aperiodic_csi_trigger_r10_present) { HANDLE_CODE(c.aperiodic_csi_trigger_r10.trigger1_r10.unpack(bref)); HANDLE_CODE(c.aperiodic_csi_trigger_r10.trigger2_r10.unpack(bref)); @@ -24080,12 +24054,12 @@ void cqi_report_aperiodic_v1250_c::to_json(json_writer& j) const } SRSASN_CODE cqi_report_aperiodic_v1250_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.aperiodic_csi_trigger_v1250.trigger_sf_set_ind_r12)); + HANDLE_CODE(c.aperiodic_csi_trigger_v1250.trigger_sf_set_ind_r12.pack(bref)); HANDLE_CODE(c.aperiodic_csi_trigger_v1250.trigger1_sf_set_ind_r12.pack(bref)); HANDLE_CODE(c.aperiodic_csi_trigger_v1250.trigger2_sf_set_ind_r12.pack(bref)); break; @@ -24098,13 +24072,13 @@ SRSASN_CODE cqi_report_aperiodic_v1250_c::pack(bit_ref& bref) const SRSASN_CODE cqi_report_aperiodic_v1250_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.aperiodic_csi_trigger_v1250.trigger_sf_set_ind_r12, bref)); + HANDLE_CODE(c.aperiodic_csi_trigger_v1250.trigger_sf_set_ind_r12.unpack(bref)); HANDLE_CODE(c.aperiodic_csi_trigger_v1250.trigger1_sf_set_ind_r12.unpack(bref)); HANDLE_CODE(c.aperiodic_csi_trigger_v1250.trigger2_sf_set_ind_r12.unpack(bref)); break; @@ -24153,7 +24127,7 @@ void cqi_report_aperiodic_v1310_c::to_json(json_writer& j) const } SRSASN_CODE cqi_report_aperiodic_v1310_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -24181,7 +24155,7 @@ SRSASN_CODE cqi_report_aperiodic_v1310_c::pack(bit_ref& bref) const SRSASN_CODE cqi_report_aperiodic_v1310_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -24236,7 +24210,7 @@ void cqi_report_aperiodic_v1310_c::setup_s_::aperiodic_csi_trigger2_r13_c_::to_j } SRSASN_CODE cqi_report_aperiodic_v1310_c::setup_s_::aperiodic_csi_trigger2_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -24257,7 +24231,7 @@ SRSASN_CODE cqi_report_aperiodic_v1310_c::setup_s_::aperiodic_csi_trigger2_r13_c SRSASN_CODE cqi_report_aperiodic_v1310_c::setup_s_::aperiodic_csi_trigger2_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -24426,7 +24400,7 @@ void cqi_report_aperiodic_hybrid_r14_s::triggers_r14_c_::to_json(json_writer& j) } SRSASN_CODE cqi_report_aperiodic_hybrid_r14_s::triggers_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::one_bit_r14: HANDLE_CODE(c.get().trigger1_ind_r14.pack(bref)); @@ -24454,7 +24428,7 @@ SRSASN_CODE cqi_report_aperiodic_hybrid_r14_s::triggers_r14_c_::pack(bit_ref& br SRSASN_CODE cqi_report_aperiodic_hybrid_r14_s::triggers_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::one_bit_r14: @@ -24490,13 +24464,13 @@ SRSASN_CODE cqi_report_both_r11_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(csi_process_to_add_mod_list_r11_present, 1)); if (csi_im_cfg_to_release_list_r11_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, csi_im_cfg_to_release_list_r11, 1, 3, UnalignedIntegerPacker(1, 3))); + HANDLE_CODE(pack_dyn_seq_of(bref, csi_im_cfg_to_release_list_r11, 1, 3, integer_packer(1, 3))); } if (csi_im_cfg_to_add_mod_list_r11_present) { HANDLE_CODE(pack_dyn_seq_of(bref, csi_im_cfg_to_add_mod_list_r11, 1, 3)); } if (csi_process_to_release_list_r11_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, csi_process_to_release_list_r11, 1, 4, UnalignedIntegerPacker(1, 4))); + HANDLE_CODE(pack_dyn_seq_of(bref, csi_process_to_release_list_r11, 1, 4, integer_packer(1, 4))); } if (csi_process_to_add_mod_list_r11_present) { HANDLE_CODE(pack_dyn_seq_of(bref, csi_process_to_add_mod_list_r11, 1, 4)); @@ -24512,13 +24486,13 @@ SRSASN_CODE cqi_report_both_r11_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(csi_process_to_add_mod_list_r11_present, 1)); if (csi_im_cfg_to_release_list_r11_present) { - HANDLE_CODE(unpack_dyn_seq_of(csi_im_cfg_to_release_list_r11, bref, 1, 3, UnalignedIntegerPacker(1, 3))); + HANDLE_CODE(unpack_dyn_seq_of(csi_im_cfg_to_release_list_r11, bref, 1, 3, integer_packer(1, 3))); } if (csi_im_cfg_to_add_mod_list_r11_present) { HANDLE_CODE(unpack_dyn_seq_of(csi_im_cfg_to_add_mod_list_r11, bref, 1, 3)); } if (csi_process_to_release_list_r11_present) { - HANDLE_CODE(unpack_dyn_seq_of(csi_process_to_release_list_r11, bref, 1, 4, UnalignedIntegerPacker(1, 4))); + HANDLE_CODE(unpack_dyn_seq_of(csi_process_to_release_list_r11, bref, 1, 4, integer_packer(1, 4))); } if (csi_process_to_add_mod_list_r11_present) { HANDLE_CODE(unpack_dyn_seq_of(csi_process_to_add_mod_list_r11, bref, 1, 4)); @@ -24567,7 +24541,7 @@ SRSASN_CODE cqi_report_both_v1250_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(csi_im_cfg_to_add_mod_list_ext_r12_present, 1)); if (csi_im_cfg_to_release_list_ext_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, csi_im_cfg_to_release_list_ext_r12, (uint8_t)4, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, csi_im_cfg_to_release_list_ext_r12, (uint8_t)4u, (uint8_t)4u)); } if (csi_im_cfg_to_add_mod_list_ext_r12_present) { HANDLE_CODE(csi_im_cfg_to_add_mod_list_ext_r12.pack(bref)); @@ -24581,7 +24555,7 @@ SRSASN_CODE cqi_report_both_v1250_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(csi_im_cfg_to_add_mod_list_ext_r12_present, 1)); if (csi_im_cfg_to_release_list_ext_r12_present) { - HANDLE_CODE(unpack_unalign_integer(csi_im_cfg_to_release_list_ext_r12, bref, (uint8_t)4, (uint8_t)4)); + HANDLE_CODE(unpack_integer(csi_im_cfg_to_release_list_ext_r12, bref, (uint8_t)4u, (uint8_t)4u)); } if (csi_im_cfg_to_add_mod_list_ext_r12_present) { HANDLE_CODE(csi_im_cfg_to_add_mod_list_ext_r12.unpack(bref)); @@ -24609,8 +24583,7 @@ SRSASN_CODE cqi_report_both_v1310_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(csi_im_cfg_to_add_mod_list_ext_r13_present, 1)); if (csi_im_cfg_to_release_list_ext_r13_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, csi_im_cfg_to_release_list_ext_r13, 1, 20, UnalignedIntegerPacker(5, 24))); + HANDLE_CODE(pack_dyn_seq_of(bref, csi_im_cfg_to_release_list_ext_r13, 1, 20, integer_packer(5, 24))); } if (csi_im_cfg_to_add_mod_list_ext_r13_present) { HANDLE_CODE(pack_dyn_seq_of(bref, csi_im_cfg_to_add_mod_list_ext_r13, 1, 20)); @@ -24624,8 +24597,7 @@ SRSASN_CODE cqi_report_both_v1310_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(csi_im_cfg_to_add_mod_list_ext_r13_present, 1)); if (csi_im_cfg_to_release_list_ext_r13_present) { - HANDLE_CODE( - unpack_dyn_seq_of(csi_im_cfg_to_release_list_ext_r13, bref, 1, 20, UnalignedIntegerPacker(5, 24))); + HANDLE_CODE(unpack_dyn_seq_of(csi_im_cfg_to_release_list_ext_r13, bref, 1, 20, integer_packer(5, 24))); } if (csi_im_cfg_to_add_mod_list_ext_r13_present) { HANDLE_CODE(unpack_dyn_seq_of(csi_im_cfg_to_add_mod_list_ext_r13, bref, 1, 20)); @@ -24694,7 +24666,7 @@ void cqi_report_periodic_r10_c::to_json(json_writer& j) const } SRSASN_CODE cqi_report_periodic_r10_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -24703,14 +24675,14 @@ SRSASN_CODE cqi_report_periodic_r10_c::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.ri_cfg_idx_present, 1)); HANDLE_CODE(bref.pack(c.cqi_mask_r9_present, 1)); HANDLE_CODE(bref.pack(c.csi_cfg_idx_r10_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, c.cqi_pucch_res_idx_r10, (uint16_t)0, (uint16_t)1184)); + HANDLE_CODE(pack_integer(bref, c.cqi_pucch_res_idx_r10, (uint16_t)0u, (uint16_t)1184u)); if (c.cqi_pucch_res_idx_p1_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.cqi_pucch_res_idx_p1_r10, (uint16_t)0, (uint16_t)1184)); + HANDLE_CODE(pack_integer(bref, c.cqi_pucch_res_idx_p1_r10, (uint16_t)0u, (uint16_t)1184u)); } - HANDLE_CODE(pack_unalign_integer(bref, c.cqi_pmi_cfg_idx, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.cqi_pmi_cfg_idx, (uint16_t)0u, (uint16_t)1023u)); HANDLE_CODE(c.cqi_format_ind_periodic_r10.pack(bref)); if (c.ri_cfg_idx_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.ri_cfg_idx, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.ri_cfg_idx, (uint16_t)0u, (uint16_t)1023u)); } HANDLE_CODE(bref.pack(c.simul_ack_nack_and_cqi, 1)); if (c.csi_cfg_idx_r10_present) { @@ -24726,7 +24698,7 @@ SRSASN_CODE cqi_report_periodic_r10_c::pack(bit_ref& bref) const SRSASN_CODE cqi_report_periodic_r10_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -24736,14 +24708,14 @@ SRSASN_CODE cqi_report_periodic_r10_c::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.ri_cfg_idx_present, 1)); HANDLE_CODE(bref.unpack(c.cqi_mask_r9_present, 1)); HANDLE_CODE(bref.unpack(c.csi_cfg_idx_r10_present, 1)); - HANDLE_CODE(unpack_unalign_integer(c.cqi_pucch_res_idx_r10, bref, (uint16_t)0, (uint16_t)1184)); + HANDLE_CODE(unpack_integer(c.cqi_pucch_res_idx_r10, bref, (uint16_t)0u, (uint16_t)1184u)); if (c.cqi_pucch_res_idx_p1_r10_present) { - HANDLE_CODE(unpack_unalign_integer(c.cqi_pucch_res_idx_p1_r10, bref, (uint16_t)0, (uint16_t)1184)); + HANDLE_CODE(unpack_integer(c.cqi_pucch_res_idx_p1_r10, bref, (uint16_t)0u, (uint16_t)1184u)); } - HANDLE_CODE(unpack_unalign_integer(c.cqi_pmi_cfg_idx, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.cqi_pmi_cfg_idx, bref, (uint16_t)0u, (uint16_t)1023u)); HANDLE_CODE(c.cqi_format_ind_periodic_r10.unpack(bref)); if (c.ri_cfg_idx_present) { - HANDLE_CODE(unpack_unalign_integer(c.ri_cfg_idx, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.ri_cfg_idx, bref, (uint16_t)0u, (uint16_t)1023u)); } HANDLE_CODE(bref.unpack(c.simul_ack_nack_and_cqi, 1)); if (c.csi_cfg_idx_r10_present) { @@ -24853,17 +24825,17 @@ void cqi_report_periodic_r10_c::setup_s_::cqi_format_ind_periodic_r10_c_::to_jso } SRSASN_CODE cqi_report_periodic_r10_c::setup_s_::cqi_format_ind_periodic_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::wideband_cqi_r10: HANDLE_CODE(bref.pack(c.get().csi_report_mode_r10_present, 1)); if (c.get().csi_report_mode_r10_present) { - HANDLE_CODE(pack_enum(bref, c.get().csi_report_mode_r10)); + HANDLE_CODE(c.get().csi_report_mode_r10.pack(bref)); } break; case types::subband_cqi_r10: - HANDLE_CODE(pack_unalign_integer(bref, c.get().k, (uint8_t)1, (uint8_t)4)); - HANDLE_CODE(pack_enum(bref, c.get().periodicity_factor_r10)); + HANDLE_CODE(pack_integer(bref, c.get().k, (uint8_t)1u, (uint8_t)4u)); + HANDLE_CODE(c.get().periodicity_factor_r10.pack(bref)); break; default: log_invalid_choice_id(type_, "cqi_report_periodic_r10_c::setup_s_::cqi_format_ind_periodic_r10_c_"); @@ -24874,18 +24846,18 @@ SRSASN_CODE cqi_report_periodic_r10_c::setup_s_::cqi_format_ind_periodic_r10_c_: SRSASN_CODE cqi_report_periodic_r10_c::setup_s_::cqi_format_ind_periodic_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::wideband_cqi_r10: HANDLE_CODE(bref.unpack(c.get().csi_report_mode_r10_present, 1)); if (c.get().csi_report_mode_r10_present) { - HANDLE_CODE(unpack_enum(c.get().csi_report_mode_r10, bref)); + HANDLE_CODE(c.get().csi_report_mode_r10.unpack(bref)); } break; case types::subband_cqi_r10: - HANDLE_CODE(unpack_unalign_integer(c.get().k, bref, (uint8_t)1, (uint8_t)4)); - HANDLE_CODE(unpack_enum(c.get().periodicity_factor_r10, bref)); + HANDLE_CODE(unpack_integer(c.get().k, bref, (uint8_t)1u, (uint8_t)4u)); + HANDLE_CODE(c.get().periodicity_factor_r10.unpack(bref)); break; default: log_invalid_choice_id(type_, "cqi_report_periodic_r10_c::setup_s_::cqi_format_ind_periodic_r10_c_"); @@ -24920,15 +24892,15 @@ void cqi_report_periodic_r10_c::setup_s_::csi_cfg_idx_r10_c_::to_json(json_write } SRSASN_CODE cqi_report_periodic_r10_c::setup_s_::csi_cfg_idx_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.ri_cfg_idx2_r10_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, c.cqi_pmi_cfg_idx2_r10, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.cqi_pmi_cfg_idx2_r10, (uint16_t)0u, (uint16_t)1023u)); if (c.ri_cfg_idx2_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.ri_cfg_idx2_r10, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.ri_cfg_idx2_r10, (uint16_t)0u, (uint16_t)1023u)); } break; default: @@ -24940,16 +24912,16 @@ SRSASN_CODE cqi_report_periodic_r10_c::setup_s_::csi_cfg_idx_r10_c_::pack(bit_re SRSASN_CODE cqi_report_periodic_r10_c::setup_s_::csi_cfg_idx_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.unpack(c.ri_cfg_idx2_r10_present, 1)); - HANDLE_CODE(unpack_unalign_integer(c.cqi_pmi_cfg_idx2_r10, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.cqi_pmi_cfg_idx2_r10, bref, (uint16_t)0u, (uint16_t)1023u)); if (c.ri_cfg_idx2_r10_present) { - HANDLE_CODE(unpack_unalign_integer(c.ri_cfg_idx2_r10, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.ri_cfg_idx2_r10, bref, (uint16_t)0u, (uint16_t)1023u)); } break; default: @@ -24967,8 +24939,8 @@ SRSASN_CODE cqi_report_periodic_v1130_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(cqi_report_periodic_proc_ext_to_add_mod_list_r11_present, 1)); if (cqi_report_periodic_proc_ext_to_release_list_r11_present) { - HANDLE_CODE(pack_dyn_seq_of( - bref, cqi_report_periodic_proc_ext_to_release_list_r11, 1, 3, UnalignedIntegerPacker(1, 3))); + HANDLE_CODE( + pack_dyn_seq_of(bref, cqi_report_periodic_proc_ext_to_release_list_r11, 1, 3, integer_packer(1, 3))); } if (cqi_report_periodic_proc_ext_to_add_mod_list_r11_present) { HANDLE_CODE(pack_dyn_seq_of(bref, cqi_report_periodic_proc_ext_to_add_mod_list_r11, 1, 3)); @@ -24983,8 +24955,8 @@ SRSASN_CODE cqi_report_periodic_v1130_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(cqi_report_periodic_proc_ext_to_add_mod_list_r11_present, 1)); if (cqi_report_periodic_proc_ext_to_release_list_r11_present) { - HANDLE_CODE(unpack_dyn_seq_of( - cqi_report_periodic_proc_ext_to_release_list_r11, bref, 1, 3, UnalignedIntegerPacker(1, 3))); + HANDLE_CODE( + unpack_dyn_seq_of(cqi_report_periodic_proc_ext_to_release_list_r11, bref, 1, 3, integer_packer(1, 3))); } if (cqi_report_periodic_proc_ext_to_add_mod_list_r11_present) { HANDLE_CODE(unpack_dyn_seq_of(cqi_report_periodic_proc_ext_to_add_mod_list_r11, bref, 1, 3)); @@ -25057,7 +25029,7 @@ SRSASN_CODE cqi_report_periodic_v1320_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(periodicity_factor_wb_r13_present, 1)); if (periodicity_factor_wb_r13_present) { - HANDLE_CODE(pack_enum(bref, periodicity_factor_wb_r13)); + HANDLE_CODE(periodicity_factor_wb_r13.pack(bref)); } return SRSASN_SUCCESS; @@ -25067,7 +25039,7 @@ SRSASN_CODE cqi_report_periodic_v1320_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(periodicity_factor_wb_r13_present, 1)); if (periodicity_factor_wb_r13_present) { - HANDLE_CODE(unpack_enum(periodicity_factor_wb_r13, bref)); + HANDLE_CODE(periodicity_factor_wb_r13.unpack(bref)); } return SRSASN_SUCCESS; @@ -25084,16 +25056,16 @@ void cqi_report_periodic_v1320_s::to_json(json_writer& j) const // DL-AM-RLC-r15 ::= SEQUENCE SRSASN_CODE dl_am_rlc_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, t_reordering_r15)); - HANDLE_CODE(pack_enum(bref, t_status_prohibit_r15)); + HANDLE_CODE(t_reordering_r15.pack(bref)); + HANDLE_CODE(t_status_prohibit_r15.pack(bref)); HANDLE_CODE(bref.pack(extended_rlc_li_field_r15, 1)); return SRSASN_SUCCESS; } SRSASN_CODE dl_am_rlc_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(t_reordering_r15, bref)); - HANDLE_CODE(unpack_enum(t_status_prohibit_r15, bref)); + HANDLE_CODE(t_reordering_r15.unpack(bref)); + HANDLE_CODE(t_status_prohibit_r15.unpack(bref)); HANDLE_CODE(bref.unpack(extended_rlc_li_field_r15, 1)); return SRSASN_SUCCESS; @@ -25110,15 +25082,15 @@ void dl_am_rlc_r15_s::to_json(json_writer& j) const // DL-UM-RLC-r15 ::= SEQUENCE SRSASN_CODE dl_um_rlc_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, sn_field_len_r15)); - HANDLE_CODE(pack_enum(bref, t_reordering_r15)); + HANDLE_CODE(sn_field_len_r15.pack(bref)); + HANDLE_CODE(t_reordering_r15.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE dl_um_rlc_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(sn_field_len_r15, bref)); - HANDLE_CODE(unpack_enum(t_reordering_r15, bref)); + HANDLE_CODE(sn_field_len_r15.unpack(bref)); + HANDLE_CODE(t_reordering_r15.unpack(bref)); return SRSASN_SUCCESS; } @@ -25216,7 +25188,7 @@ void meas_sf_pattern_r10_c::to_json(json_writer& j) const } SRSASN_CODE meas_sf_pattern_r10_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sf_pattern_fdd_r10: HANDLE_CODE(c.get >().pack(bref)); @@ -25233,7 +25205,7 @@ SRSASN_CODE meas_sf_pattern_r10_c::pack(bit_ref& bref) const SRSASN_CODE meas_sf_pattern_r10_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sf_pattern_fdd_r10: @@ -25350,7 +25322,7 @@ void meas_sf_pattern_r10_c::sf_pattern_tdd_r10_c_::to_json(json_writer& j) const } SRSASN_CODE meas_sf_pattern_r10_c::sf_pattern_tdd_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sf_cfg1_minus5_r10: HANDLE_CODE(c.get >().pack(bref)); @@ -25370,7 +25342,7 @@ SRSASN_CODE meas_sf_pattern_r10_c::sf_pattern_tdd_r10_c_::pack(bit_ref& bref) co SRSASN_CODE meas_sf_pattern_r10_c::sf_pattern_tdd_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sf_cfg1_minus5_r10: @@ -25468,7 +25440,7 @@ void spdcch_elems_r15_c::to_json(json_writer& j) const } SRSASN_CODE spdcch_elems_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -25487,48 +25459,45 @@ SRSASN_CODE spdcch_elems_r15_c::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.sf_type_r15_present, 1)); HANDLE_CODE(bref.pack(c.rate_matching_mode_r15_present, 1)); if (c.spdcch_set_cfg_id_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.spdcch_set_cfg_id_r15, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, c.spdcch_set_cfg_id_r15, (uint8_t)0u, (uint8_t)3u)); } if (c.spdcch_set_ref_sig_r15_present) { - HANDLE_CODE(pack_enum(bref, c.spdcch_set_ref_sig_r15)); + HANDLE_CODE(c.spdcch_set_ref_sig_r15.pack(bref)); } if (c.tx_type_r15_present) { - HANDLE_CODE(pack_enum(bref, c.tx_type_r15)); + HANDLE_CODE(c.tx_type_r15.pack(bref)); } if (c.spdcch_no_of_symbols_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.spdcch_no_of_symbols_r15, (uint8_t)1, (uint8_t)2)); + HANDLE_CODE(pack_integer(bref, c.spdcch_no_of_symbols_r15, (uint8_t)1u, (uint8_t)2u)); } if (c.dmrs_scrambling_seq_int_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.dmrs_scrambling_seq_int_r15, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(pack_integer(bref, c.dmrs_scrambling_seq_int_r15, (uint16_t)0u, (uint16_t)503u)); } if (c.dci7_candidates_per_al_pdcch_r15_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, c.dci7_candidates_per_al_pdcch_r15, 1, 4, UnalignedIntegerPacker(0, 6))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.dci7_candidates_per_al_pdcch_r15, 1, 4, integer_packer(0, 6))); } if (c.dci7_candidate_sets_per_al_spdcch_r15_present) { - HANDLE_CODE(pack_dyn_seq_of( - bref, - c.dci7_candidate_sets_per_al_spdcch_r15, - 1, - 2, - SeqOfPacker >(1, 4, UnalignedIntegerPacker(0, 6)))); + HANDLE_CODE(pack_dyn_seq_of(bref, + c.dci7_candidate_sets_per_al_spdcch_r15, + 1, + 2, + SeqOfPacker >(1, 4, integer_packer(0, 6)))); } if (c.res_block_assign_r15_present) { - HANDLE_CODE( - pack_unalign_integer(bref, c.res_block_assign_r15.num_rb_in_freq_domain_r15, (uint8_t)2, (uint8_t)100)); + HANDLE_CODE(pack_integer(bref, c.res_block_assign_r15.num_rb_in_freq_domain_r15, (uint8_t)2u, (uint8_t)100u)); HANDLE_CODE(c.res_block_assign_r15.res_block_assign_r15.pack(bref)); } if (c.subslot_applicability_r15_present) { HANDLE_CODE(c.subslot_applicability_r15.pack(bref)); } if (c.al_start_point_spdcch_r15_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, c.al_start_point_spdcch_r15, 1, 4, UnalignedIntegerPacker(0, 49))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.al_start_point_spdcch_r15, 1, 4, integer_packer(0, 49))); } if (c.sf_type_r15_present) { - HANDLE_CODE(pack_enum(bref, c.sf_type_r15)); + HANDLE_CODE(c.sf_type_r15.pack(bref)); } if (c.rate_matching_mode_r15_present) { - HANDLE_CODE(pack_enum(bref, c.rate_matching_mode_r15)); + HANDLE_CODE(c.rate_matching_mode_r15.pack(bref)); } break; default: @@ -25540,7 +25509,7 @@ SRSASN_CODE spdcch_elems_r15_c::pack(bit_ref& bref) const SRSASN_CODE spdcch_elems_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -25560,48 +25529,45 @@ SRSASN_CODE spdcch_elems_r15_c::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.sf_type_r15_present, 1)); HANDLE_CODE(bref.unpack(c.rate_matching_mode_r15_present, 1)); if (c.spdcch_set_cfg_id_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.spdcch_set_cfg_id_r15, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(c.spdcch_set_cfg_id_r15, bref, (uint8_t)0u, (uint8_t)3u)); } if (c.spdcch_set_ref_sig_r15_present) { - HANDLE_CODE(unpack_enum(c.spdcch_set_ref_sig_r15, bref)); + HANDLE_CODE(c.spdcch_set_ref_sig_r15.unpack(bref)); } if (c.tx_type_r15_present) { - HANDLE_CODE(unpack_enum(c.tx_type_r15, bref)); + HANDLE_CODE(c.tx_type_r15.unpack(bref)); } if (c.spdcch_no_of_symbols_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.spdcch_no_of_symbols_r15, bref, (uint8_t)1, (uint8_t)2)); + HANDLE_CODE(unpack_integer(c.spdcch_no_of_symbols_r15, bref, (uint8_t)1u, (uint8_t)2u)); } if (c.dmrs_scrambling_seq_int_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.dmrs_scrambling_seq_int_r15, bref, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(unpack_integer(c.dmrs_scrambling_seq_int_r15, bref, (uint16_t)0u, (uint16_t)503u)); } if (c.dci7_candidates_per_al_pdcch_r15_present) { - HANDLE_CODE( - unpack_dyn_seq_of(c.dci7_candidates_per_al_pdcch_r15, bref, 1, 4, UnalignedIntegerPacker(0, 6))); + HANDLE_CODE(unpack_dyn_seq_of(c.dci7_candidates_per_al_pdcch_r15, bref, 1, 4, integer_packer(0, 6))); } if (c.dci7_candidate_sets_per_al_spdcch_r15_present) { - HANDLE_CODE(unpack_dyn_seq_of( - c.dci7_candidate_sets_per_al_spdcch_r15, - bref, - 1, - 2, - SeqOfPacker >(1, 4, UnalignedIntegerPacker(0, 6)))); + HANDLE_CODE(unpack_dyn_seq_of(c.dci7_candidate_sets_per_al_spdcch_r15, + bref, + 1, + 2, + SeqOfPacker >(1, 4, integer_packer(0, 6)))); } if (c.res_block_assign_r15_present) { - HANDLE_CODE( - unpack_unalign_integer(c.res_block_assign_r15.num_rb_in_freq_domain_r15, bref, (uint8_t)2, (uint8_t)100)); + HANDLE_CODE(unpack_integer(c.res_block_assign_r15.num_rb_in_freq_domain_r15, bref, (uint8_t)2u, (uint8_t)100u)); HANDLE_CODE(c.res_block_assign_r15.res_block_assign_r15.unpack(bref)); } if (c.subslot_applicability_r15_present) { HANDLE_CODE(c.subslot_applicability_r15.unpack(bref)); } if (c.al_start_point_spdcch_r15_present) { - HANDLE_CODE(unpack_dyn_seq_of(c.al_start_point_spdcch_r15, bref, 1, 4, UnalignedIntegerPacker(0, 49))); + HANDLE_CODE(unpack_dyn_seq_of(c.al_start_point_spdcch_r15, bref, 1, 4, integer_packer(0, 49))); } if (c.sf_type_r15_present) { - HANDLE_CODE(unpack_enum(c.sf_type_r15, bref)); + HANDLE_CODE(c.sf_type_r15.unpack(bref)); } if (c.rate_matching_mode_r15_present) { - HANDLE_CODE(unpack_enum(c.rate_matching_mode_r15, bref)); + HANDLE_CODE(c.rate_matching_mode_r15.unpack(bref)); } break; default: @@ -25676,7 +25642,7 @@ void spucch_elems_r15_c::to_json(json_writer& j) const } SRSASN_CODE spucch_elems_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -25692,17 +25658,16 @@ SRSASN_CODE spucch_elems_r15_c::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.n4max_coderate_multi_res_slot_pucch_r15_present, 1)); HANDLE_CODE(bref.pack(c.n4max_coderate_multi_res_subslot_pucch_r15_present, 1)); if (c.n1_subslot_spucch_an_list_r15_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, c.n1_subslot_spucch_an_list_r15, 1, 4, UnalignedIntegerPacker(0, 1319))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.n1_subslot_spucch_an_list_r15, 1, 4, integer_packer(0, 1319))); } if (c.n1_slot_spucch_fh_an_list_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.n1_slot_spucch_fh_an_list_r15, (uint16_t)0, (uint16_t)1319)); + HANDLE_CODE(pack_integer(bref, c.n1_slot_spucch_fh_an_list_r15, (uint16_t)0u, (uint16_t)1319u)); } if (c.n1_slot_spucch_no_fh_an_list_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.n1_slot_spucch_no_fh_an_list_r15, (uint16_t)0, (uint16_t)3959)); + HANDLE_CODE(pack_integer(bref, c.n1_slot_spucch_no_fh_an_list_r15, (uint16_t)0u, (uint16_t)3959u)); } if (c.n3_spucch_an_list_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.n3_spucch_an_list_r15, (uint16_t)0, (uint16_t)549)); + HANDLE_CODE(pack_integer(bref, c.n3_spucch_an_list_r15, (uint16_t)0u, (uint16_t)549u)); } if (c.n4_spucch_slot_res_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, c.n4_spucch_slot_res_r15, 1, 2)); @@ -25711,16 +25676,16 @@ SRSASN_CODE spucch_elems_r15_c::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, c.n4_spucch_subslot_res_r15, 1, 2)); } if (c.n4max_coderate_slot_pucch_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.n4max_coderate_slot_pucch_r15, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, c.n4max_coderate_slot_pucch_r15, (uint8_t)0u, (uint8_t)7u)); } if (c.n4max_coderate_subslot_pucch_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.n4max_coderate_subslot_pucch_r15, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, c.n4max_coderate_subslot_pucch_r15, (uint8_t)0u, (uint8_t)7u)); } if (c.n4max_coderate_multi_res_slot_pucch_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.n4max_coderate_multi_res_slot_pucch_r15, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, c.n4max_coderate_multi_res_slot_pucch_r15, (uint8_t)0u, (uint8_t)7u)); } if (c.n4max_coderate_multi_res_subslot_pucch_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.n4max_coderate_multi_res_subslot_pucch_r15, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, c.n4max_coderate_multi_res_subslot_pucch_r15, (uint8_t)0u, (uint8_t)7u)); } break; default: @@ -25732,7 +25697,7 @@ SRSASN_CODE spucch_elems_r15_c::pack(bit_ref& bref) const SRSASN_CODE spucch_elems_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -25749,17 +25714,16 @@ SRSASN_CODE spucch_elems_r15_c::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.n4max_coderate_multi_res_slot_pucch_r15_present, 1)); HANDLE_CODE(bref.unpack(c.n4max_coderate_multi_res_subslot_pucch_r15_present, 1)); if (c.n1_subslot_spucch_an_list_r15_present) { - HANDLE_CODE( - unpack_dyn_seq_of(c.n1_subslot_spucch_an_list_r15, bref, 1, 4, UnalignedIntegerPacker(0, 1319))); + HANDLE_CODE(unpack_dyn_seq_of(c.n1_subslot_spucch_an_list_r15, bref, 1, 4, integer_packer(0, 1319))); } if (c.n1_slot_spucch_fh_an_list_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.n1_slot_spucch_fh_an_list_r15, bref, (uint16_t)0, (uint16_t)1319)); + HANDLE_CODE(unpack_integer(c.n1_slot_spucch_fh_an_list_r15, bref, (uint16_t)0u, (uint16_t)1319u)); } if (c.n1_slot_spucch_no_fh_an_list_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.n1_slot_spucch_no_fh_an_list_r15, bref, (uint16_t)0, (uint16_t)3959)); + HANDLE_CODE(unpack_integer(c.n1_slot_spucch_no_fh_an_list_r15, bref, (uint16_t)0u, (uint16_t)3959u)); } if (c.n3_spucch_an_list_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.n3_spucch_an_list_r15, bref, (uint16_t)0, (uint16_t)549)); + HANDLE_CODE(unpack_integer(c.n3_spucch_an_list_r15, bref, (uint16_t)0u, (uint16_t)549u)); } if (c.n4_spucch_slot_res_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(c.n4_spucch_slot_res_r15, bref, 1, 2)); @@ -25768,16 +25732,16 @@ SRSASN_CODE spucch_elems_r15_c::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(c.n4_spucch_subslot_res_r15, bref, 1, 2)); } if (c.n4max_coderate_slot_pucch_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.n4max_coderate_slot_pucch_r15, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(c.n4max_coderate_slot_pucch_r15, bref, (uint8_t)0u, (uint8_t)7u)); } if (c.n4max_coderate_subslot_pucch_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.n4max_coderate_subslot_pucch_r15, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(c.n4max_coderate_subslot_pucch_r15, bref, (uint8_t)0u, (uint8_t)7u)); } if (c.n4max_coderate_multi_res_slot_pucch_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.n4max_coderate_multi_res_slot_pucch_r15, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(c.n4max_coderate_multi_res_slot_pucch_r15, bref, (uint8_t)0u, (uint8_t)7u)); } if (c.n4max_coderate_multi_res_subslot_pucch_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.n4max_coderate_multi_res_subslot_pucch_r15, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(c.n4max_coderate_multi_res_subslot_pucch_r15, bref, (uint8_t)0u, (uint8_t)7u)); } break; default: @@ -25848,13 +25812,13 @@ void tpc_idx_c::to_json(json_writer& j) const } SRSASN_CODE tpc_idx_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::idx_of_format3: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)1, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)1u, (uint8_t)15u)); break; case types::idx_of_format3_a: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)1, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)1u, (uint8_t)31u)); break; default: log_invalid_choice_id(type_, "tpc_idx_c"); @@ -25865,14 +25829,14 @@ SRSASN_CODE tpc_idx_c::pack(bit_ref& bref) const SRSASN_CODE tpc_idx_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::idx_of_format3: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)1, (uint8_t)15)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)1u, (uint8_t)15u)); break; case types::idx_of_format3_a: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)1, (uint8_t)31)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)1u, (uint8_t)31u)); break; default: log_invalid_choice_id(type_, "tpc_idx_c"); @@ -25884,20 +25848,20 @@ SRSASN_CODE tpc_idx_c::unpack(bit_ref& bref) // UL-AM-RLC-r15 ::= SEQUENCE SRSASN_CODE ul_am_rlc_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, t_poll_retx_r15)); - HANDLE_CODE(pack_enum(bref, poll_pdu_r15)); - HANDLE_CODE(pack_enum(bref, poll_byte_r15)); - HANDLE_CODE(pack_enum(bref, max_retx_thres_r15)); + HANDLE_CODE(t_poll_retx_r15.pack(bref)); + HANDLE_CODE(poll_pdu_r15.pack(bref)); + HANDLE_CODE(poll_byte_r15.pack(bref)); + HANDLE_CODE(max_retx_thres_r15.pack(bref)); HANDLE_CODE(bref.pack(extended_rlc_li_field_r15, 1)); return SRSASN_SUCCESS; } SRSASN_CODE ul_am_rlc_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(t_poll_retx_r15, bref)); - HANDLE_CODE(unpack_enum(poll_pdu_r15, bref)); - HANDLE_CODE(unpack_enum(poll_byte_r15, bref)); - HANDLE_CODE(unpack_enum(max_retx_thres_r15, bref)); + HANDLE_CODE(t_poll_retx_r15.unpack(bref)); + HANDLE_CODE(poll_pdu_r15.unpack(bref)); + HANDLE_CODE(poll_byte_r15.unpack(bref)); + HANDLE_CODE(max_retx_thres_r15.unpack(bref)); HANDLE_CODE(bref.unpack(extended_rlc_li_field_r15, 1)); return SRSASN_SUCCESS; @@ -25916,13 +25880,13 @@ void ul_am_rlc_r15_s::to_json(json_writer& j) const // UL-UM-RLC ::= SEQUENCE SRSASN_CODE ul_um_rlc_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, sn_field_len)); + HANDLE_CODE(sn_field_len.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE ul_um_rlc_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(sn_field_len, bref)); + HANDLE_CODE(sn_field_len.unpack(bref)); return SRSASN_SUCCESS; } @@ -25955,7 +25919,7 @@ void zero_tx_pwr_csi_rs_conf_r12_c::to_json(json_writer& j) const } SRSASN_CODE zero_tx_pwr_csi_rs_conf_r12_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -25971,7 +25935,7 @@ SRSASN_CODE zero_tx_pwr_csi_rs_conf_r12_c::pack(bit_ref& bref) const SRSASN_CODE zero_tx_pwr_csi_rs_conf_r12_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -25997,7 +25961,7 @@ SRSASN_CODE cqi_report_cfg_r10_s::pack(bit_ref& bref) const if (cqi_report_aperiodic_r10_present) { HANDLE_CODE(cqi_report_aperiodic_r10.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, nom_pdsch_rs_epre_offset, (int8_t)-1, (int8_t)6)); + HANDLE_CODE(pack_integer(bref, nom_pdsch_rs_epre_offset, (int8_t)-1, (int8_t)6)); if (cqi_report_periodic_r10_present) { HANDLE_CODE(cqi_report_periodic_r10.pack(bref)); } @@ -26017,7 +25981,7 @@ SRSASN_CODE cqi_report_cfg_r10_s::unpack(bit_ref& bref) if (cqi_report_aperiodic_r10_present) { HANDLE_CODE(cqi_report_aperiodic_r10.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(nom_pdsch_rs_epre_offset, bref, (int8_t)-1, (int8_t)6)); + HANDLE_CODE(unpack_integer(nom_pdsch_rs_epre_offset, bref, (int8_t)-1, (int8_t)6)); if (cqi_report_periodic_r10_present) { HANDLE_CODE(cqi_report_periodic_r10.unpack(bref)); } @@ -26075,7 +26039,7 @@ void cqi_report_cfg_r10_s::csi_sf_pattern_cfg_r10_c_::to_json(json_writer& j) co } SRSASN_CODE cqi_report_cfg_r10_s::csi_sf_pattern_cfg_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -26092,7 +26056,7 @@ SRSASN_CODE cqi_report_cfg_r10_s::csi_sf_pattern_cfg_r10_c_::pack(bit_ref& bref) SRSASN_CODE cqi_report_cfg_r10_s::csi_sf_pattern_cfg_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -26151,7 +26115,7 @@ SRSASN_CODE cqi_report_cfg_v1250_s::pack(bit_ref& bref) const HANDLE_CODE(cqi_report_aperiodic_v1250.pack(bref)); } if (alt_cqi_table_r12_present) { - HANDLE_CODE(pack_enum(bref, alt_cqi_table_r12)); + HANDLE_CODE(alt_cqi_table_r12.pack(bref)); } return SRSASN_SUCCESS; @@ -26173,7 +26137,7 @@ SRSASN_CODE cqi_report_cfg_v1250_s::unpack(bit_ref& bref) HANDLE_CODE(cqi_report_aperiodic_v1250.unpack(bref)); } if (alt_cqi_table_r12_present) { - HANDLE_CODE(unpack_enum(alt_cqi_table_r12, bref)); + HANDLE_CODE(alt_cqi_table_r12.unpack(bref)); } return SRSASN_SUCCESS; @@ -26222,7 +26186,7 @@ void cqi_report_cfg_v1250_s::csi_sf_pattern_cfg_r12_c_::to_json(json_writer& j) } SRSASN_CODE cqi_report_cfg_v1250_s::csi_sf_pattern_cfg_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -26238,7 +26202,7 @@ SRSASN_CODE cqi_report_cfg_v1250_s::csi_sf_pattern_cfg_r12_c_::pack(bit_ref& bre SRSASN_CODE cqi_report_cfg_v1250_s::csi_sf_pattern_cfg_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -26439,15 +26403,15 @@ void csi_rs_cfg_r10_s::csi_rs_r10_c_::to_json(json_writer& j) const } SRSASN_CODE csi_rs_cfg_r10_s::csi_rs_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.ant_ports_count_r10)); - HANDLE_CODE(pack_unalign_integer(bref, c.res_cfg_r10, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, c.sf_cfg_r10, (uint8_t)0, (uint8_t)154)); - HANDLE_CODE(pack_unalign_integer(bref, c.p_c_r10, (int8_t)-8, (int8_t)15)); + HANDLE_CODE(c.ant_ports_count_r10.pack(bref)); + HANDLE_CODE(pack_integer(bref, c.res_cfg_r10, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, c.sf_cfg_r10, (uint8_t)0u, (uint8_t)154u)); + HANDLE_CODE(pack_integer(bref, c.p_c_r10, (int8_t)-8, (int8_t)15)); break; default: log_invalid_choice_id(type_, "csi_rs_cfg_r10_s::csi_rs_r10_c_"); @@ -26458,16 +26422,16 @@ SRSASN_CODE csi_rs_cfg_r10_s::csi_rs_r10_c_::pack(bit_ref& bref) const SRSASN_CODE csi_rs_cfg_r10_s::csi_rs_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.ant_ports_count_r10, bref)); - HANDLE_CODE(unpack_unalign_integer(c.res_cfg_r10, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(c.sf_cfg_r10, bref, (uint8_t)0, (uint8_t)154)); - HANDLE_CODE(unpack_unalign_integer(c.p_c_r10, bref, (int8_t)-8, (int8_t)15)); + HANDLE_CODE(c.ant_ports_count_r10.unpack(bref)); + HANDLE_CODE(unpack_integer(c.res_cfg_r10, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(c.sf_cfg_r10, bref, (uint8_t)0u, (uint8_t)154u)); + HANDLE_CODE(unpack_integer(c.p_c_r10, bref, (int8_t)-8, (int8_t)15)); break; default: log_invalid_choice_id(type_, "csi_rs_cfg_r10_s::csi_rs_r10_c_"); @@ -26546,7 +26510,7 @@ void csi_rs_cfg_v1250_s::ds_zero_tx_pwr_csi_rs_r12_c_::to_json(json_writer& j) c } SRSASN_CODE csi_rs_cfg_v1250_s::ds_zero_tx_pwr_csi_rs_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -26562,7 +26526,7 @@ SRSASN_CODE csi_rs_cfg_v1250_s::ds_zero_tx_pwr_csi_rs_r12_c_::pack(bit_ref& bref SRSASN_CODE csi_rs_cfg_v1250_s::ds_zero_tx_pwr_csi_rs_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -26580,20 +26544,20 @@ SRSASN_CODE csi_rs_cfg_v1250_s::ds_zero_tx_pwr_csi_rs_r12_c_::unpack(bit_ref& br // CSI-RS-Config-v1310 ::= SEQUENCE SRSASN_CODE csi_rs_cfg_v1310_s::pack(bit_ref& bref) const { - HANDLE_CODE(bref.pack(e_mimo_type_r13_present, 1)); + HANDLE_CODE(bref.pack(emimo_type_r13_present, 1)); - if (e_mimo_type_r13_present) { - HANDLE_CODE(e_mimo_type_r13.pack(bref)); + if (emimo_type_r13_present) { + HANDLE_CODE(emimo_type_r13.pack(bref)); } return SRSASN_SUCCESS; } SRSASN_CODE csi_rs_cfg_v1310_s::unpack(bit_ref& bref) { - HANDLE_CODE(bref.unpack(e_mimo_type_r13_present, 1)); + HANDLE_CODE(bref.unpack(emimo_type_r13_present, 1)); - if (e_mimo_type_r13_present) { - HANDLE_CODE(e_mimo_type_r13.unpack(bref)); + if (emimo_type_r13_present) { + HANDLE_CODE(emimo_type_r13.unpack(bref)); } return SRSASN_SUCCESS; @@ -26601,9 +26565,9 @@ SRSASN_CODE csi_rs_cfg_v1310_s::unpack(bit_ref& bref) void csi_rs_cfg_v1310_s::to_json(json_writer& j) const { j.start_obj(); - if (e_mimo_type_r13_present) { + if (emimo_type_r13_present) { j.write_fieldname("eMIMO-Type-r13"); - e_mimo_type_r13.to_json(j); + emimo_type_r13.to_json(j); } j.end_obj(); } @@ -26612,14 +26576,14 @@ void csi_rs_cfg_v1310_s::to_json(json_writer& j) const SRSASN_CODE csi_rs_cfg_v1430_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(dummy_present, 1)); - HANDLE_CODE(bref.pack(e_mimo_hybrid_r14_present, 1)); + HANDLE_CODE(bref.pack(emimo_hybrid_r14_present, 1)); HANDLE_CODE(bref.pack(advanced_codebook_enabled_r14_present, 1)); if (dummy_present) { HANDLE_CODE(dummy.pack(bref)); } - if (e_mimo_hybrid_r14_present) { - HANDLE_CODE(e_mimo_hybrid_r14.pack(bref)); + if (emimo_hybrid_r14_present) { + HANDLE_CODE(emimo_hybrid_r14.pack(bref)); } if (advanced_codebook_enabled_r14_present) { HANDLE_CODE(bref.pack(advanced_codebook_enabled_r14, 1)); @@ -26630,14 +26594,14 @@ SRSASN_CODE csi_rs_cfg_v1430_s::pack(bit_ref& bref) const SRSASN_CODE csi_rs_cfg_v1430_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(dummy_present, 1)); - HANDLE_CODE(bref.unpack(e_mimo_hybrid_r14_present, 1)); + HANDLE_CODE(bref.unpack(emimo_hybrid_r14_present, 1)); HANDLE_CODE(bref.unpack(advanced_codebook_enabled_r14_present, 1)); if (dummy_present) { HANDLE_CODE(dummy.unpack(bref)); } - if (e_mimo_hybrid_r14_present) { - HANDLE_CODE(e_mimo_hybrid_r14.unpack(bref)); + if (emimo_hybrid_r14_present) { + HANDLE_CODE(emimo_hybrid_r14.unpack(bref)); } if (advanced_codebook_enabled_r14_present) { HANDLE_CODE(bref.unpack(advanced_codebook_enabled_r14, 1)); @@ -26652,9 +26616,9 @@ void csi_rs_cfg_v1430_s::to_json(json_writer& j) const j.write_fieldname("dummy"); dummy.to_json(j); } - if (e_mimo_hybrid_r14_present) { + if (emimo_hybrid_r14_present) { j.write_fieldname("eMIMO-Hybrid-r14"); - e_mimo_hybrid_r14.to_json(j); + emimo_hybrid_r14.to_json(j); } if (advanced_codebook_enabled_r14_present) { j.write_bool("advancedCodebookEnabled-r14", advanced_codebook_enabled_r14); @@ -26666,18 +26630,18 @@ void csi_rs_cfg_v1430_s::to_json(json_writer& j) const SRSASN_CODE csi_rs_cfg_zp_r11_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, csi_rs_cfg_zp_id_r11, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, csi_rs_cfg_zp_id_r11, (uint8_t)1u, (uint8_t)4u)); HANDLE_CODE(res_cfg_list_r11.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, sf_cfg_r11, (uint8_t)0, (uint8_t)154)); + HANDLE_CODE(pack_integer(bref, sf_cfg_r11, (uint8_t)0u, (uint8_t)154u)); return SRSASN_SUCCESS; } SRSASN_CODE csi_rs_cfg_zp_r11_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(csi_rs_cfg_zp_id_r11, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(unpack_integer(csi_rs_cfg_zp_id_r11, bref, (uint8_t)1u, (uint8_t)4u)); HANDLE_CODE(res_cfg_list_r11.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(sf_cfg_r11, bref, (uint8_t)0, (uint8_t)154)); + HANDLE_CODE(unpack_integer(sf_cfg_r11, bref, (uint8_t)0u, (uint8_t)154u)); return SRSASN_SUCCESS; } @@ -26693,15 +26657,15 @@ void csi_rs_cfg_zp_r11_s::to_json(json_writer& j) const // DL-AM-RLC ::= SEQUENCE SRSASN_CODE dl_am_rlc_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, t_reordering)); - HANDLE_CODE(pack_enum(bref, t_status_prohibit)); + HANDLE_CODE(t_reordering.pack(bref)); + HANDLE_CODE(t_status_prohibit.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE dl_am_rlc_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(t_reordering, bref)); - HANDLE_CODE(unpack_enum(t_status_prohibit, bref)); + HANDLE_CODE(t_reordering.unpack(bref)); + HANDLE_CODE(t_status_prohibit.unpack(bref)); return SRSASN_SUCCESS; } @@ -26716,15 +26680,15 @@ void dl_am_rlc_s::to_json(json_writer& j) const // DL-UM-RLC ::= SEQUENCE SRSASN_CODE dl_um_rlc_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, sn_field_len)); - HANDLE_CODE(pack_enum(bref, t_reordering)); + HANDLE_CODE(sn_field_len.pack(bref)); + HANDLE_CODE(t_reordering.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE dl_um_rlc_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(sn_field_len, bref)); - HANDLE_CODE(unpack_enum(t_reordering, bref)); + HANDLE_CODE(sn_field_len.unpack(bref)); + HANDLE_CODE(t_reordering.unpack(bref)); return SRSASN_SUCCESS; } @@ -26740,20 +26704,20 @@ void dl_um_rlc_s::to_json(json_writer& j) const SRSASN_CODE delta_tx_d_offset_list_spucch_r15_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_enum(bref, delta_tx_d_offset_spucch_format1_r15)); - HANDLE_CODE(pack_enum(bref, delta_tx_d_offset_spucch_format1a_r15)); - HANDLE_CODE(pack_enum(bref, delta_tx_d_offset_spucch_format1b_r15)); - HANDLE_CODE(pack_enum(bref, delta_tx_d_offset_spucch_format3_r15)); + HANDLE_CODE(delta_tx_d_offset_spucch_format1_r15.pack(bref)); + HANDLE_CODE(delta_tx_d_offset_spucch_format1a_r15.pack(bref)); + HANDLE_CODE(delta_tx_d_offset_spucch_format1b_r15.pack(bref)); + HANDLE_CODE(delta_tx_d_offset_spucch_format3_r15.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE delta_tx_d_offset_list_spucch_r15_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_enum(delta_tx_d_offset_spucch_format1_r15, bref)); - HANDLE_CODE(unpack_enum(delta_tx_d_offset_spucch_format1a_r15, bref)); - HANDLE_CODE(unpack_enum(delta_tx_d_offset_spucch_format1b_r15, bref)); - HANDLE_CODE(unpack_enum(delta_tx_d_offset_spucch_format3_r15, bref)); + HANDLE_CODE(delta_tx_d_offset_spucch_format1_r15.unpack(bref)); + HANDLE_CODE(delta_tx_d_offset_spucch_format1a_r15.unpack(bref)); + HANDLE_CODE(delta_tx_d_offset_spucch_format1b_r15.unpack(bref)); + HANDLE_CODE(delta_tx_d_offset_spucch_format3_r15.unpack(bref)); return SRSASN_SUCCESS; } @@ -26773,14 +26737,14 @@ SRSASN_CODE epdcch_set_cfg_r11_s::pack(bit_ref& bref) const bref.pack(ext, 1); HANDLE_CODE(bref.pack(re_map_qcl_cfg_id_r11_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, set_cfg_id_r11, (uint8_t)0, (uint8_t)1)); - HANDLE_CODE(pack_enum(bref, tx_type_r11)); - HANDLE_CODE(pack_enum(bref, res_block_assign_r11.num_prb_pairs_r11)); + HANDLE_CODE(pack_integer(bref, set_cfg_id_r11, (uint8_t)0u, (uint8_t)1u)); + HANDLE_CODE(tx_type_r11.pack(bref)); + HANDLE_CODE(res_block_assign_r11.num_prb_pairs_r11.pack(bref)); HANDLE_CODE(res_block_assign_r11.res_block_assign_r11.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, dmrs_scrambling_seq_int_r11, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_unalign_integer(bref, pucch_res_start_offset_r11, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(pack_integer(bref, dmrs_scrambling_seq_int_r11, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(pack_integer(bref, pucch_res_start_offset_r11, (uint16_t)0u, (uint16_t)2047u)); if (re_map_qcl_cfg_id_r11_present) { - HANDLE_CODE(pack_unalign_integer(bref, re_map_qcl_cfg_id_r11, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, re_map_qcl_cfg_id_r11, (uint8_t)1u, (uint8_t)4u)); } if (ext) { @@ -26791,7 +26755,7 @@ SRSASN_CODE epdcch_set_cfg_r11_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(csi_rs_cfg_zp_id2_r12.is_present(), 1)); if (csi_rs_cfg_zp_id2_r12.is_present()) { @@ -26799,7 +26763,7 @@ SRSASN_CODE epdcch_set_cfg_r11_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(num_prb_pairs_v1310.is_present(), 1)); HANDLE_CODE(bref.pack(mpdcch_cfg_r13.is_present(), 1)); @@ -26818,14 +26782,14 @@ SRSASN_CODE epdcch_set_cfg_r11_s::unpack(bit_ref& bref) bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(re_map_qcl_cfg_id_r11_present, 1)); - HANDLE_CODE(unpack_unalign_integer(set_cfg_id_r11, bref, (uint8_t)0, (uint8_t)1)); - HANDLE_CODE(unpack_enum(tx_type_r11, bref)); - HANDLE_CODE(unpack_enum(res_block_assign_r11.num_prb_pairs_r11, bref)); + HANDLE_CODE(unpack_integer(set_cfg_id_r11, bref, (uint8_t)0u, (uint8_t)1u)); + HANDLE_CODE(tx_type_r11.unpack(bref)); + HANDLE_CODE(res_block_assign_r11.num_prb_pairs_r11.unpack(bref)); HANDLE_CODE(res_block_assign_r11.res_block_assign_r11.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(dmrs_scrambling_seq_int_r11, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_unalign_integer(pucch_res_start_offset_r11, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(unpack_integer(dmrs_scrambling_seq_int_r11, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(unpack_integer(pucch_res_start_offset_r11, bref, (uint16_t)0u, (uint16_t)2047u)); if (re_map_qcl_cfg_id_r11_present) { - HANDLE_CODE(unpack_unalign_integer(re_map_qcl_cfg_id_r11, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(unpack_integer(re_map_qcl_cfg_id_r11, bref, (uint8_t)1u, (uint8_t)4u)); } if (ext) { @@ -26833,7 +26797,7 @@ SRSASN_CODE epdcch_set_cfg_r11_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool csi_rs_cfg_zp_id2_r12_present; HANDLE_CODE(bref.unpack(csi_rs_cfg_zp_id2_r12_present, 1)); @@ -26843,7 +26807,7 @@ SRSASN_CODE epdcch_set_cfg_r11_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool num_prb_pairs_v1310_present; HANDLE_CODE(bref.unpack(num_prb_pairs_v1310_present, 1)); @@ -26913,12 +26877,12 @@ void epdcch_set_cfg_r11_s::csi_rs_cfg_zp_id2_r12_c_::to_json(json_writer& j) con } SRSASN_CODE epdcch_set_cfg_r11_s::csi_rs_cfg_zp_id2_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, c, (uint8_t)1u, (uint8_t)4u)); break; default: log_invalid_choice_id(type_, "epdcch_set_cfg_r11_s::csi_rs_cfg_zp_id2_r12_c_"); @@ -26929,13 +26893,13 @@ SRSASN_CODE epdcch_set_cfg_r11_s::csi_rs_cfg_zp_id2_r12_c_::pack(bit_ref& bref) SRSASN_CODE epdcch_set_cfg_r11_s::csi_rs_cfg_zp_id2_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(unpack_integer(c, bref, (uint8_t)1u, (uint8_t)4u)); break; default: log_invalid_choice_id(type_, "epdcch_set_cfg_r11_s::csi_rs_cfg_zp_id2_r12_c_"); @@ -26955,13 +26919,13 @@ void epdcch_set_cfg_r11_s::num_prb_pairs_v1310_c_::to_json(json_writer& j) const } SRSASN_CODE epdcch_set_cfg_r11_s::num_prb_pairs_v1310_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); return SRSASN_SUCCESS; } SRSASN_CODE epdcch_set_cfg_r11_s::num_prb_pairs_v1310_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); return SRSASN_SUCCESS; } @@ -26994,16 +26958,16 @@ void epdcch_set_cfg_r11_s::mpdcch_cfg_r13_c_::to_json(json_writer& j) const } SRSASN_CODE epdcch_set_cfg_r11_s::mpdcch_cfg_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.csi_num_repeat_ce_r13)); - HANDLE_CODE(pack_enum(bref, c.mpdcch_pdsch_hop_cfg_r13)); + HANDLE_CODE(c.csi_num_repeat_ce_r13.pack(bref)); + HANDLE_CODE(c.mpdcch_pdsch_hop_cfg_r13.pack(bref)); HANDLE_CODE(c.mpdcch_start_sf_uess_r13.pack(bref)); - HANDLE_CODE(pack_enum(bref, c.mpdcch_num_repeat_r13)); - HANDLE_CODE(pack_unalign_integer(bref, c.mpdcch_nb_r13, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(c.mpdcch_num_repeat_r13.pack(bref)); + HANDLE_CODE(pack_integer(bref, c.mpdcch_nb_r13, (uint8_t)1u, (uint8_t)16u)); break; default: log_invalid_choice_id(type_, "epdcch_set_cfg_r11_s::mpdcch_cfg_r13_c_"); @@ -27014,17 +26978,17 @@ SRSASN_CODE epdcch_set_cfg_r11_s::mpdcch_cfg_r13_c_::pack(bit_ref& bref) const SRSASN_CODE epdcch_set_cfg_r11_s::mpdcch_cfg_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.csi_num_repeat_ce_r13, bref)); - HANDLE_CODE(unpack_enum(c.mpdcch_pdsch_hop_cfg_r13, bref)); + HANDLE_CODE(c.csi_num_repeat_ce_r13.unpack(bref)); + HANDLE_CODE(c.mpdcch_pdsch_hop_cfg_r13.unpack(bref)); HANDLE_CODE(c.mpdcch_start_sf_uess_r13.unpack(bref)); - HANDLE_CODE(unpack_enum(c.mpdcch_num_repeat_r13, bref)); - HANDLE_CODE(unpack_unalign_integer(c.mpdcch_nb_r13, bref, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(c.mpdcch_num_repeat_r13.unpack(bref)); + HANDLE_CODE(unpack_integer(c.mpdcch_nb_r13, bref, (uint8_t)1u, (uint8_t)16u)); break; default: log_invalid_choice_id(type_, "epdcch_set_cfg_r11_s::mpdcch_cfg_r13_c_"); @@ -27096,13 +27060,13 @@ void epdcch_set_cfg_r11_s::mpdcch_cfg_r13_c_::setup_s_::mpdcch_start_sf_uess_r13 } SRSASN_CODE epdcch_set_cfg_r11_s::mpdcch_cfg_r13_c_::setup_s_::mpdcch_start_sf_uess_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::fdd_r13: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; case types::tdd_r13: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; default: log_invalid_choice_id(type_, "epdcch_set_cfg_r11_s::mpdcch_cfg_r13_c_::setup_s_::mpdcch_start_sf_uess_r13_c_"); @@ -27113,14 +27077,14 @@ SRSASN_CODE epdcch_set_cfg_r11_s::mpdcch_cfg_r13_c_::setup_s_::mpdcch_start_sf_u SRSASN_CODE epdcch_set_cfg_r11_s::mpdcch_cfg_r13_c_::setup_s_::mpdcch_start_sf_uess_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::fdd_r13: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; case types::tdd_r13: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; default: log_invalid_choice_id(type_, "epdcch_set_cfg_r11_s::mpdcch_cfg_r13_c_::setup_s_::mpdcch_start_sf_uess_r13_c_"); @@ -27151,7 +27115,7 @@ void enable256_qam_r14_c::to_json(json_writer& j) const } SRSASN_CODE enable256_qam_r14_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -27167,7 +27131,7 @@ SRSASN_CODE enable256_qam_r14_c::pack(bit_ref& bref) const SRSASN_CODE enable256_qam_r14_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -27276,7 +27240,7 @@ void enable256_qam_r14_c::setup_c_::to_json(json_writer& j) const } SRSASN_CODE enable256_qam_r14_c::setup_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::tpc_sf_set_cfgured_r14: HANDLE_CODE(bref.pack(c.get().sf_set1_dci_format0_r14, 1)); @@ -27297,7 +27261,7 @@ SRSASN_CODE enable256_qam_r14_c::setup_c_::pack(bit_ref& bref) const SRSASN_CODE enable256_qam_r14_c::setup_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::tpc_sf_set_cfgured_r14: @@ -27325,11 +27289,11 @@ SRSASN_CODE lc_ch_cfg_s::pack(bit_ref& bref) const if (ul_specific_params_present) { HANDLE_CODE(bref.pack(ul_specific_params.lc_ch_group_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, ul_specific_params.prio, (uint8_t)1, (uint8_t)16)); - HANDLE_CODE(pack_enum(bref, ul_specific_params.prioritised_bit_rate)); - HANDLE_CODE(pack_enum(bref, ul_specific_params.bucket_size_dur)); + HANDLE_CODE(pack_integer(bref, ul_specific_params.prio, (uint8_t)1u, (uint8_t)16u)); + HANDLE_CODE(ul_specific_params.prioritised_bit_rate.pack(bref)); + HANDLE_CODE(ul_specific_params.bucket_size_dur.pack(bref)); if (ul_specific_params.lc_ch_group_present) { - HANDLE_CODE(pack_unalign_integer(bref, ul_specific_params.lc_ch_group, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, ul_specific_params.lc_ch_group, (uint8_t)0u, (uint8_t)3u)); } } @@ -27346,12 +27310,12 @@ SRSASN_CODE lc_ch_cfg_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(lc_ch_sr_mask_r9_present, 1)); } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(lc_ch_sr_prohibit_r12_present, 1)); if (lc_ch_sr_prohibit_r12_present) { @@ -27359,7 +27323,7 @@ SRSASN_CODE lc_ch_cfg_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(laa_ul_allowed_r14_present, 1)); HANDLE_CODE(bref.pack(bit_rate_query_prohibit_timer_r14_present, 1)); @@ -27367,11 +27331,11 @@ SRSASN_CODE lc_ch_cfg_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(laa_ul_allowed_r14, 1)); } if (bit_rate_query_prohibit_timer_r14_present) { - HANDLE_CODE(pack_enum(bref, bit_rate_query_prohibit_timer_r14)); + HANDLE_CODE(bit_rate_query_prohibit_timer_r14.pack(bref)); } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(allowed_tti_lens_r15.is_present(), 1)); HANDLE_CODE(bref.pack(lc_ch_sr_restrict_r15.is_present(), 1)); @@ -27400,11 +27364,11 @@ SRSASN_CODE lc_ch_cfg_s::unpack(bit_ref& bref) if (ul_specific_params_present) { HANDLE_CODE(bref.unpack(ul_specific_params.lc_ch_group_present, 1)); - HANDLE_CODE(unpack_unalign_integer(ul_specific_params.prio, bref, (uint8_t)1, (uint8_t)16)); - HANDLE_CODE(unpack_enum(ul_specific_params.prioritised_bit_rate, bref)); - HANDLE_CODE(unpack_enum(ul_specific_params.bucket_size_dur, bref)); + HANDLE_CODE(unpack_integer(ul_specific_params.prio, bref, (uint8_t)1u, (uint8_t)16u)); + HANDLE_CODE(ul_specific_params.prioritised_bit_rate.unpack(bref)); + HANDLE_CODE(ul_specific_params.bucket_size_dur.unpack(bref)); if (ul_specific_params.lc_ch_group_present) { - HANDLE_CODE(unpack_unalign_integer(ul_specific_params.lc_ch_group, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(ul_specific_params.lc_ch_group, bref, (uint8_t)0u, (uint8_t)3u)); } } @@ -27413,12 +27377,12 @@ SRSASN_CODE lc_ch_cfg_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(lc_ch_sr_mask_r9_present, 1)); } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(lc_ch_sr_prohibit_r12_present, 1)); if (lc_ch_sr_prohibit_r12_present) { @@ -27426,7 +27390,7 @@ SRSASN_CODE lc_ch_cfg_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(laa_ul_allowed_r14_present, 1)); HANDLE_CODE(bref.unpack(bit_rate_query_prohibit_timer_r14_present, 1)); @@ -27434,11 +27398,11 @@ SRSASN_CODE lc_ch_cfg_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(laa_ul_allowed_r14, 1)); } if (bit_rate_query_prohibit_timer_r14_present) { - HANDLE_CODE(unpack_enum(bit_rate_query_prohibit_timer_r14, bref)); + HANDLE_CODE(bit_rate_query_prohibit_timer_r14.unpack(bref)); } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool allowed_tti_lens_r15_present; HANDLE_CODE(bref.unpack(allowed_tti_lens_r15_present, 1)); @@ -27536,7 +27500,7 @@ void lc_ch_cfg_s::allowed_tti_lens_r15_c_::to_json(json_writer& j) const } SRSASN_CODE lc_ch_cfg_s::allowed_tti_lens_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -27553,7 +27517,7 @@ SRSASN_CODE lc_ch_cfg_s::allowed_tti_lens_r15_c_::pack(bit_ref& bref) const SRSASN_CODE lc_ch_cfg_s::allowed_tti_lens_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -27589,12 +27553,12 @@ void lc_ch_cfg_s::lc_ch_sr_restrict_r15_c_::to_json(json_writer& j) const } SRSASN_CODE lc_ch_cfg_s::lc_ch_sr_restrict_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c)); + HANDLE_CODE(c.pack(bref)); break; default: log_invalid_choice_id(type_, "lc_ch_cfg_s::lc_ch_sr_restrict_r15_c_"); @@ -27605,13 +27569,13 @@ SRSASN_CODE lc_ch_cfg_s::lc_ch_sr_restrict_r15_c_::pack(bit_ref& bref) const SRSASN_CODE lc_ch_cfg_s::lc_ch_sr_restrict_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c, bref)); + HANDLE_CODE(c.unpack(bref)); break; default: log_invalid_choice_id(type_, "lc_ch_cfg_s::lc_ch_sr_restrict_r15_c_"); @@ -27640,12 +27604,12 @@ void lc_ch_cfg_s::chl_access_prio_r15_c_::to_json(json_writer& j) const } SRSASN_CODE lc_ch_cfg_s::chl_access_prio_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, c, (uint8_t)1u, (uint8_t)4u)); break; default: log_invalid_choice_id(type_, "lc_ch_cfg_s::chl_access_prio_r15_c_"); @@ -27656,13 +27620,13 @@ SRSASN_CODE lc_ch_cfg_s::chl_access_prio_r15_c_::pack(bit_ref& bref) const SRSASN_CODE lc_ch_cfg_s::chl_access_prio_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(unpack_integer(c, bref, (uint8_t)1u, (uint8_t)4u)); break; default: log_invalid_choice_id(type_, "lc_ch_cfg_s::chl_access_prio_r15_c_"); @@ -27678,19 +27642,19 @@ SRSASN_CODE pdsch_re_map_qcl_cfg_r11_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(optional_set_of_fields_r11_present, 1)); HANDLE_CODE(bref.pack(qcl_csi_rs_cfg_nzp_id_r11_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, pdsch_re_map_qcl_cfg_id_r11, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, pdsch_re_map_qcl_cfg_id_r11, (uint8_t)1u, (uint8_t)4u)); if (optional_set_of_fields_r11_present) { HANDLE_CODE(bref.pack(optional_set_of_fields_r11.mbsfn_sf_cfg_list_r11_present, 1)); - HANDLE_CODE(pack_enum(bref, optional_set_of_fields_r11.crs_ports_count_r11)); - HANDLE_CODE(pack_unalign_integer(bref, optional_set_of_fields_r11.crs_freq_shift_r11, (uint8_t)0, (uint8_t)5)); + HANDLE_CODE(optional_set_of_fields_r11.crs_ports_count_r11.pack(bref)); + HANDLE_CODE(pack_integer(bref, optional_set_of_fields_r11.crs_freq_shift_r11, (uint8_t)0u, (uint8_t)5u)); if (optional_set_of_fields_r11.mbsfn_sf_cfg_list_r11_present) { HANDLE_CODE(optional_set_of_fields_r11.mbsfn_sf_cfg_list_r11.pack(bref)); } - HANDLE_CODE(pack_enum(bref, optional_set_of_fields_r11.pdsch_start_r11)); + HANDLE_CODE(optional_set_of_fields_r11.pdsch_start_r11.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, csi_rs_cfg_zp_id_r11, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, csi_rs_cfg_zp_id_r11, (uint8_t)1u, (uint8_t)4u)); if (qcl_csi_rs_cfg_nzp_id_r11_present) { - HANDLE_CODE(pack_unalign_integer(bref, qcl_csi_rs_cfg_nzp_id_r11, (uint8_t)1, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, qcl_csi_rs_cfg_nzp_id_r11, (uint8_t)1u, (uint8_t)3u)); } if (ext) { @@ -27700,7 +27664,7 @@ SRSASN_CODE pdsch_re_map_qcl_cfg_r11_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(mbsfn_sf_cfg_list_v1430.is_present(), 1)); if (mbsfn_sf_cfg_list_v1430.is_present()) { @@ -27708,7 +27672,7 @@ SRSASN_CODE pdsch_re_map_qcl_cfg_r11_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(codeword_one_cfg_v1530.is_present(), 1)); if (codeword_one_cfg_v1530.is_present()) { @@ -27724,19 +27688,19 @@ SRSASN_CODE pdsch_re_map_qcl_cfg_r11_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(optional_set_of_fields_r11_present, 1)); HANDLE_CODE(bref.unpack(qcl_csi_rs_cfg_nzp_id_r11_present, 1)); - HANDLE_CODE(unpack_unalign_integer(pdsch_re_map_qcl_cfg_id_r11, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(unpack_integer(pdsch_re_map_qcl_cfg_id_r11, bref, (uint8_t)1u, (uint8_t)4u)); if (optional_set_of_fields_r11_present) { HANDLE_CODE(bref.unpack(optional_set_of_fields_r11.mbsfn_sf_cfg_list_r11_present, 1)); - HANDLE_CODE(unpack_enum(optional_set_of_fields_r11.crs_ports_count_r11, bref)); - HANDLE_CODE(unpack_unalign_integer(optional_set_of_fields_r11.crs_freq_shift_r11, bref, (uint8_t)0, (uint8_t)5)); + HANDLE_CODE(optional_set_of_fields_r11.crs_ports_count_r11.unpack(bref)); + HANDLE_CODE(unpack_integer(optional_set_of_fields_r11.crs_freq_shift_r11, bref, (uint8_t)0u, (uint8_t)5u)); if (optional_set_of_fields_r11.mbsfn_sf_cfg_list_r11_present) { HANDLE_CODE(optional_set_of_fields_r11.mbsfn_sf_cfg_list_r11.unpack(bref)); } - HANDLE_CODE(unpack_enum(optional_set_of_fields_r11.pdsch_start_r11, bref)); + HANDLE_CODE(optional_set_of_fields_r11.pdsch_start_r11.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(csi_rs_cfg_zp_id_r11, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(unpack_integer(csi_rs_cfg_zp_id_r11, bref, (uint8_t)1u, (uint8_t)4u)); if (qcl_csi_rs_cfg_nzp_id_r11_present) { - HANDLE_CODE(unpack_unalign_integer(qcl_csi_rs_cfg_nzp_id_r11, bref, (uint8_t)1, (uint8_t)3)); + HANDLE_CODE(unpack_integer(qcl_csi_rs_cfg_nzp_id_r11, bref, (uint8_t)1u, (uint8_t)3u)); } if (ext) { @@ -27744,7 +27708,7 @@ SRSASN_CODE pdsch_re_map_qcl_cfg_r11_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool mbsfn_sf_cfg_list_v1430_present; HANDLE_CODE(bref.unpack(mbsfn_sf_cfg_list_v1430_present, 1)); @@ -27754,7 +27718,7 @@ SRSASN_CODE pdsch_re_map_qcl_cfg_r11_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool codeword_one_cfg_v1530_present; HANDLE_CODE(bref.unpack(codeword_one_cfg_v1530_present, 1)); @@ -27828,7 +27792,7 @@ void pdsch_re_map_qcl_cfg_r11_s::optional_set_of_fields_r11_s_::mbsfn_sf_cfg_lis SRSASN_CODE pdsch_re_map_qcl_cfg_r11_s::optional_set_of_fields_r11_s_::mbsfn_sf_cfg_list_r11_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -27845,7 +27809,7 @@ pdsch_re_map_qcl_cfg_r11_s::optional_set_of_fields_r11_s_::mbsfn_sf_cfg_list_r11 SRSASN_CODE pdsch_re_map_qcl_cfg_r11_s::optional_set_of_fields_r11_s_::mbsfn_sf_cfg_list_r11_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -27888,7 +27852,7 @@ void pdsch_re_map_qcl_cfg_r11_s::mbsfn_sf_cfg_list_v1430_c_::to_json(json_writer } SRSASN_CODE pdsch_re_map_qcl_cfg_r11_s::mbsfn_sf_cfg_list_v1430_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -27904,7 +27868,7 @@ SRSASN_CODE pdsch_re_map_qcl_cfg_r11_s::mbsfn_sf_cfg_list_v1430_c_::pack(bit_ref SRSASN_CODE pdsch_re_map_qcl_cfg_r11_s::mbsfn_sf_cfg_list_v1430_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -27962,7 +27926,7 @@ void pdsch_re_map_qcl_cfg_r11_s::codeword_one_cfg_v1530_c_::to_json(json_writer& } SRSASN_CODE pdsch_re_map_qcl_cfg_r11_s::codeword_one_cfg_v1530_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -27970,18 +27934,18 @@ SRSASN_CODE pdsch_re_map_qcl_cfg_r11_s::codeword_one_cfg_v1530_c_::pack(bit_ref& HANDLE_CODE(bref.pack(c.mbsfn_sf_cfg_list_v1530_present, 1)); HANDLE_CODE(bref.pack(c.mbsfn_sf_cfg_list_ext_v1530_present, 1)); HANDLE_CODE(bref.pack(c.qcl_csi_rs_cfg_nzp_id_v1530_present, 1)); - HANDLE_CODE(pack_enum(bref, c.crs_ports_count_v1530)); - HANDLE_CODE(pack_unalign_integer(bref, c.crs_freq_shift_v1530, (uint8_t)0, (uint8_t)5)); + HANDLE_CODE(c.crs_ports_count_v1530.pack(bref)); + HANDLE_CODE(pack_integer(bref, c.crs_freq_shift_v1530, (uint8_t)0u, (uint8_t)5u)); if (c.mbsfn_sf_cfg_list_v1530_present) { HANDLE_CODE(pack_dyn_seq_of(bref, c.mbsfn_sf_cfg_list_v1530, 1, 8)); } if (c.mbsfn_sf_cfg_list_ext_v1530_present) { HANDLE_CODE(pack_dyn_seq_of(bref, c.mbsfn_sf_cfg_list_ext_v1530, 1, 8)); } - HANDLE_CODE(pack_enum(bref, c.pdsch_start_v1530)); - HANDLE_CODE(pack_unalign_integer(bref, c.csi_rs_cfg_zp_id_v1530, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(c.pdsch_start_v1530.pack(bref)); + HANDLE_CODE(pack_integer(bref, c.csi_rs_cfg_zp_id_v1530, (uint8_t)1u, (uint8_t)4u)); if (c.qcl_csi_rs_cfg_nzp_id_v1530_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.qcl_csi_rs_cfg_nzp_id_v1530, (uint8_t)1, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, c.qcl_csi_rs_cfg_nzp_id_v1530, (uint8_t)1u, (uint8_t)3u)); } break; default: @@ -27993,7 +27957,7 @@ SRSASN_CODE pdsch_re_map_qcl_cfg_r11_s::codeword_one_cfg_v1530_c_::pack(bit_ref& SRSASN_CODE pdsch_re_map_qcl_cfg_r11_s::codeword_one_cfg_v1530_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -28002,18 +27966,18 @@ SRSASN_CODE pdsch_re_map_qcl_cfg_r11_s::codeword_one_cfg_v1530_c_::unpack(bit_re HANDLE_CODE(bref.unpack(c.mbsfn_sf_cfg_list_v1530_present, 1)); HANDLE_CODE(bref.unpack(c.mbsfn_sf_cfg_list_ext_v1530_present, 1)); HANDLE_CODE(bref.unpack(c.qcl_csi_rs_cfg_nzp_id_v1530_present, 1)); - HANDLE_CODE(unpack_enum(c.crs_ports_count_v1530, bref)); - HANDLE_CODE(unpack_unalign_integer(c.crs_freq_shift_v1530, bref, (uint8_t)0, (uint8_t)5)); + HANDLE_CODE(c.crs_ports_count_v1530.unpack(bref)); + HANDLE_CODE(unpack_integer(c.crs_freq_shift_v1530, bref, (uint8_t)0u, (uint8_t)5u)); if (c.mbsfn_sf_cfg_list_v1530_present) { HANDLE_CODE(unpack_dyn_seq_of(c.mbsfn_sf_cfg_list_v1530, bref, 1, 8)); } if (c.mbsfn_sf_cfg_list_ext_v1530_present) { HANDLE_CODE(unpack_dyn_seq_of(c.mbsfn_sf_cfg_list_ext_v1530, bref, 1, 8)); } - HANDLE_CODE(unpack_enum(c.pdsch_start_v1530, bref)); - HANDLE_CODE(unpack_unalign_integer(c.csi_rs_cfg_zp_id_v1530, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(c.pdsch_start_v1530.unpack(bref)); + HANDLE_CODE(unpack_integer(c.csi_rs_cfg_zp_id_v1530, bref, (uint8_t)1u, (uint8_t)4u)); if (c.qcl_csi_rs_cfg_nzp_id_v1530_present) { - HANDLE_CODE(unpack_unalign_integer(c.qcl_csi_rs_cfg_nzp_id_v1530, bref, (uint8_t)1, (uint8_t)3)); + HANDLE_CODE(unpack_integer(c.qcl_csi_rs_cfg_nzp_id_v1530, bref, (uint8_t)1u, (uint8_t)3u)); } break; default: @@ -28192,7 +28156,7 @@ void rlc_cfg_r15_s::mode_r15_c_::to_json(json_writer& j) const } SRSASN_CODE rlc_cfg_r15_s::mode_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::am_r15: HANDLE_CODE(c.get().ul_am_rlc_r15.pack(bref)); @@ -28217,7 +28181,7 @@ SRSASN_CODE rlc_cfg_r15_s::mode_r15_c_::pack(bit_ref& bref) const SRSASN_CODE rlc_cfg_r15_s::mode_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::am_r15: @@ -28267,7 +28231,7 @@ void tpc_pdcch_cfg_c::to_json(json_writer& j) const } SRSASN_CODE tpc_pdcch_cfg_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -28284,7 +28248,7 @@ SRSASN_CODE tpc_pdcch_cfg_c::pack(bit_ref& bref) const SRSASN_CODE tpc_pdcch_cfg_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -28303,19 +28267,19 @@ SRSASN_CODE tpc_pdcch_cfg_c::unpack(bit_ref& bref) // UL-AM-RLC ::= SEQUENCE SRSASN_CODE ul_am_rlc_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, t_poll_retx)); - HANDLE_CODE(pack_enum(bref, poll_pdu)); - HANDLE_CODE(pack_enum(bref, poll_byte)); - HANDLE_CODE(pack_enum(bref, max_retx_thres)); + HANDLE_CODE(t_poll_retx.pack(bref)); + HANDLE_CODE(poll_pdu.pack(bref)); + HANDLE_CODE(poll_byte.pack(bref)); + HANDLE_CODE(max_retx_thres.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE ul_am_rlc_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(t_poll_retx, bref)); - HANDLE_CODE(unpack_enum(poll_pdu, bref)); - HANDLE_CODE(unpack_enum(poll_byte, bref)); - HANDLE_CODE(unpack_enum(max_retx_thres, bref)); + HANDLE_CODE(t_poll_retx.unpack(bref)); + HANDLE_CODE(poll_pdu.unpack(bref)); + HANDLE_CODE(poll_byte.unpack(bref)); + HANDLE_CODE(max_retx_thres.unpack(bref)); return SRSASN_SUCCESS; } @@ -28367,7 +28331,7 @@ void ant_info_ded_stti_r15_c::to_json(json_writer& j) const } SRSASN_CODE ant_info_ded_stti_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -28377,16 +28341,16 @@ SRSASN_CODE ant_info_ded_stti_r15_c::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.codebook_subset_restrict_present, 1)); HANDLE_CODE(bref.pack(c.max_layers_mimo_stti_r15_present, 1)); if (c.tx_mode_dl_mbsfn_r15_present) { - HANDLE_CODE(pack_enum(bref, c.tx_mode_dl_mbsfn_r15)); + HANDLE_CODE(c.tx_mode_dl_mbsfn_r15.pack(bref)); } if (c.tx_mode_dl_non_mbsfn_r15_present) { - HANDLE_CODE(pack_enum(bref, c.tx_mode_dl_non_mbsfn_r15)); + HANDLE_CODE(c.tx_mode_dl_non_mbsfn_r15.pack(bref)); } if (c.codebook_subset_restrict_present) { HANDLE_CODE(c.codebook_subset_restrict.pack(bref)); } if (c.max_layers_mimo_stti_r15_present) { - HANDLE_CODE(pack_enum(bref, c.max_layers_mimo_stti_r15)); + HANDLE_CODE(c.max_layers_mimo_stti_r15.pack(bref)); } HANDLE_CODE(bref.pack(c.slot_subslot_pdsch_tx_div_minus2_layer_r15, 1)); HANDLE_CODE(bref.pack(c.slot_subslot_pdsch_tx_div_minus4_layer_r15, 1)); @@ -28400,7 +28364,7 @@ SRSASN_CODE ant_info_ded_stti_r15_c::pack(bit_ref& bref) const SRSASN_CODE ant_info_ded_stti_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -28411,16 +28375,16 @@ SRSASN_CODE ant_info_ded_stti_r15_c::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.codebook_subset_restrict_present, 1)); HANDLE_CODE(bref.unpack(c.max_layers_mimo_stti_r15_present, 1)); if (c.tx_mode_dl_mbsfn_r15_present) { - HANDLE_CODE(unpack_enum(c.tx_mode_dl_mbsfn_r15, bref)); + HANDLE_CODE(c.tx_mode_dl_mbsfn_r15.unpack(bref)); } if (c.tx_mode_dl_non_mbsfn_r15_present) { - HANDLE_CODE(unpack_enum(c.tx_mode_dl_non_mbsfn_r15, bref)); + HANDLE_CODE(c.tx_mode_dl_non_mbsfn_r15.unpack(bref)); } if (c.codebook_subset_restrict_present) { HANDLE_CODE(c.codebook_subset_restrict.unpack(bref)); } if (c.max_layers_mimo_stti_r15_present) { - HANDLE_CODE(unpack_enum(c.max_layers_mimo_stti_r15, bref)); + HANDLE_CODE(c.max_layers_mimo_stti_r15.unpack(bref)); } HANDLE_CODE(bref.unpack(c.slot_subslot_pdsch_tx_div_minus2_layer_r15, 1)); HANDLE_CODE(bref.unpack(c.slot_subslot_pdsch_tx_div_minus4_layer_r15, 1)); @@ -28684,7 +28648,7 @@ void ant_info_ded_stti_r15_c::setup_s_::codebook_subset_restrict_c_::to_json(jso } SRSASN_CODE ant_info_ded_stti_r15_c::setup_s_::codebook_subset_restrict_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::n2_tx_ant_tm3_r15: HANDLE_CODE(c.get >().pack(bref)); @@ -28734,7 +28698,7 @@ SRSASN_CODE ant_info_ded_stti_r15_c::setup_s_::codebook_subset_restrict_c_::pack SRSASN_CODE ant_info_ded_stti_r15_c::setup_s_::codebook_subset_restrict_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::n2_tx_ant_tm3_r15: @@ -28789,7 +28753,7 @@ SRSASN_CODE ant_info_ul_stti_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(tx_mode_ul_stti_r15_present, 1)); if (tx_mode_ul_stti_r15_present) { - HANDLE_CODE(pack_enum(bref, tx_mode_ul_stti_r15)); + HANDLE_CODE(tx_mode_ul_stti_r15.pack(bref)); } return SRSASN_SUCCESS; @@ -28799,7 +28763,7 @@ SRSASN_CODE ant_info_ul_stti_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(tx_mode_ul_stti_r15_present, 1)); if (tx_mode_ul_stti_r15_present) { - HANDLE_CODE(unpack_enum(tx_mode_ul_stti_r15, bref)); + HANDLE_CODE(tx_mode_ul_stti_r15.unpack(bref)); } return SRSASN_SUCCESS; @@ -28863,7 +28827,7 @@ void cqi_report_cfg_r15_c::to_json(json_writer& j) const } SRSASN_CODE cqi_report_cfg_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -28894,7 +28858,7 @@ SRSASN_CODE cqi_report_cfg_r15_c::pack(bit_ref& bref) const HANDLE_CODE(c.cqi_report_cfg_v1430.pack(bref)); } if (c.alt_cqi_table_minus1024_qam_r15_present) { - HANDLE_CODE(pack_enum(bref, c.alt_cqi_table_minus1024_qam_r15)); + HANDLE_CODE(c.alt_cqi_table_minus1024_qam_r15.pack(bref)); } break; default: @@ -28906,7 +28870,7 @@ SRSASN_CODE cqi_report_cfg_r15_c::pack(bit_ref& bref) const SRSASN_CODE cqi_report_cfg_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -28938,7 +28902,7 @@ SRSASN_CODE cqi_report_cfg_r15_c::unpack(bit_ref& bref) HANDLE_CODE(c.cqi_report_cfg_v1430.unpack(bref)); } if (c.alt_cqi_table_minus1024_qam_r15_present) { - HANDLE_CODE(unpack_enum(c.alt_cqi_table_minus1024_qam_r15, bref)); + HANDLE_CODE(c.alt_cqi_table_minus1024_qam_r15.unpack(bref)); } break; default: @@ -28979,17 +28943,17 @@ void cqi_report_periodic_c::to_json(json_writer& j) const } SRSASN_CODE cqi_report_periodic_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.ri_cfg_idx_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, c.cqi_pucch_res_idx, (uint16_t)0, (uint16_t)1185)); - HANDLE_CODE(pack_unalign_integer(bref, c.cqi_pmi_cfg_idx, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.cqi_pucch_res_idx, (uint16_t)0u, (uint16_t)1185u)); + HANDLE_CODE(pack_integer(bref, c.cqi_pmi_cfg_idx, (uint16_t)0u, (uint16_t)1023u)); HANDLE_CODE(c.cqi_format_ind_periodic.pack(bref)); if (c.ri_cfg_idx_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.ri_cfg_idx, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.ri_cfg_idx, (uint16_t)0u, (uint16_t)1023u)); } HANDLE_CODE(bref.pack(c.simul_ack_nack_and_cqi, 1)); break; @@ -29002,18 +28966,18 @@ SRSASN_CODE cqi_report_periodic_c::pack(bit_ref& bref) const SRSASN_CODE cqi_report_periodic_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.unpack(c.ri_cfg_idx_present, 1)); - HANDLE_CODE(unpack_unalign_integer(c.cqi_pucch_res_idx, bref, (uint16_t)0, (uint16_t)1185)); - HANDLE_CODE(unpack_unalign_integer(c.cqi_pmi_cfg_idx, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.cqi_pucch_res_idx, bref, (uint16_t)0u, (uint16_t)1185u)); + HANDLE_CODE(unpack_integer(c.cqi_pmi_cfg_idx, bref, (uint16_t)0u, (uint16_t)1023u)); HANDLE_CODE(c.cqi_format_ind_periodic.unpack(bref)); if (c.ri_cfg_idx_present) { - HANDLE_CODE(unpack_unalign_integer(c.ri_cfg_idx, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.ri_cfg_idx, bref, (uint16_t)0u, (uint16_t)1023u)); } HANDLE_CODE(bref.unpack(c.simul_ack_nack_and_cqi, 1)); break; @@ -29047,12 +29011,12 @@ void cqi_report_periodic_c::setup_s_::cqi_format_ind_periodic_c_::to_json(json_w } SRSASN_CODE cqi_report_periodic_c::setup_s_::cqi_format_ind_periodic_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::wideband_cqi: break; case types::subband_cqi: - HANDLE_CODE(pack_unalign_integer(bref, c.k, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, c.k, (uint8_t)1u, (uint8_t)4u)); break; default: log_invalid_choice_id(type_, "cqi_report_periodic_c::setup_s_::cqi_format_ind_periodic_c_"); @@ -29063,13 +29027,13 @@ SRSASN_CODE cqi_report_periodic_c::setup_s_::cqi_format_ind_periodic_c_::pack(bi SRSASN_CODE cqi_report_periodic_c::setup_s_::cqi_format_ind_periodic_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::wideband_cqi: break; case types::subband_cqi: - HANDLE_CODE(unpack_unalign_integer(c.k, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(unpack_integer(c.k, bref, (uint8_t)1u, (uint8_t)4u)); break; default: log_invalid_choice_id(type_, "cqi_report_periodic_c::setup_s_::cqi_format_ind_periodic_c_"); @@ -29082,8 +29046,8 @@ SRSASN_CODE cqi_report_periodic_c::setup_s_::cqi_format_ind_periodic_c_::unpack( SRSASN_CODE crs_assist_info_r11_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, pci_r11, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_enum(bref, ant_ports_count_r11)); + HANDLE_CODE(pack_integer(bref, pci_r11, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(ant_ports_count_r11.pack(bref)); HANDLE_CODE(pack_dyn_seq_of(bref, mbsfn_sf_cfg_list_r11, 1, 8)); if (ext) { @@ -29092,7 +29056,7 @@ SRSASN_CODE crs_assist_info_r11_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(mbsfn_sf_cfg_list_v1430.is_present(), 1)); if (mbsfn_sf_cfg_list_v1430.is_present()) { @@ -29105,8 +29069,8 @@ SRSASN_CODE crs_assist_info_r11_s::pack(bit_ref& bref) const SRSASN_CODE crs_assist_info_r11_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(pci_r11, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_enum(ant_ports_count_r11, bref)); + HANDLE_CODE(unpack_integer(pci_r11, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(ant_ports_count_r11.unpack(bref)); HANDLE_CODE(unpack_dyn_seq_of(mbsfn_sf_cfg_list_r11, bref, 1, 8)); if (ext) { @@ -29114,7 +29078,7 @@ SRSASN_CODE crs_assist_info_r11_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool mbsfn_sf_cfg_list_v1430_present; HANDLE_CODE(bref.unpack(mbsfn_sf_cfg_list_v1430_present, 1)); @@ -29154,8 +29118,8 @@ SRSASN_CODE crs_assist_info_r13_s::pack(bit_ref& bref) const bref.pack(ext, 1); HANDLE_CODE(bref.pack(mbsfn_sf_cfg_list_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, pci_r13, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_enum(bref, ant_ports_count_r13)); + HANDLE_CODE(pack_integer(bref, pci_r13, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(ant_ports_count_r13.pack(bref)); if (mbsfn_sf_cfg_list_r13_present) { HANDLE_CODE(pack_dyn_seq_of(bref, mbsfn_sf_cfg_list_r13, 1, 8)); } @@ -29166,7 +29130,7 @@ SRSASN_CODE crs_assist_info_r13_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(mbsfn_sf_cfg_list_v1430.is_present(), 1)); if (mbsfn_sf_cfg_list_v1430.is_present()) { @@ -29181,8 +29145,8 @@ SRSASN_CODE crs_assist_info_r13_s::unpack(bit_ref& bref) bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(mbsfn_sf_cfg_list_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(pci_r13, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_enum(ant_ports_count_r13, bref)); + HANDLE_CODE(unpack_integer(pci_r13, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(ant_ports_count_r13.unpack(bref)); if (mbsfn_sf_cfg_list_r13_present) { HANDLE_CODE(unpack_dyn_seq_of(mbsfn_sf_cfg_list_r13, bref, 1, 8)); } @@ -29192,7 +29156,7 @@ SRSASN_CODE crs_assist_info_r13_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool mbsfn_sf_cfg_list_v1430_present; HANDLE_CODE(bref.unpack(mbsfn_sf_cfg_list_v1430_present, 1)); @@ -29233,7 +29197,7 @@ SRSASN_CODE crs_assist_info_r15_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(crs_intf_mitig_enabled_minus15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, pci_r15, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(pack_integer(bref, pci_r15, (uint16_t)0u, (uint16_t)503u)); return SRSASN_SUCCESS; } @@ -29241,7 +29205,7 @@ SRSASN_CODE crs_assist_info_r15_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(crs_intf_mitig_enabled_minus15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(pci_r15, bref, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(unpack_integer(pci_r15, bref, (uint16_t)0u, (uint16_t)503u)); return SRSASN_SUCCESS; } @@ -29294,7 +29258,7 @@ void csi_rs_cfg_r15_c::to_json(json_writer& j) const } SRSASN_CODE csi_rs_cfg_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -29325,7 +29289,7 @@ SRSASN_CODE csi_rs_cfg_r15_c::pack(bit_ref& bref) const SRSASN_CODE csi_rs_cfg_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -29380,7 +29344,7 @@ void csi_rs_cfg_zp_ap_list_r14_c::to_json(json_writer& j) const } SRSASN_CODE csi_rs_cfg_zp_ap_list_r14_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -29396,7 +29360,7 @@ SRSASN_CODE csi_rs_cfg_zp_ap_list_r14_c::pack(bit_ref& bref) const SRSASN_CODE csi_rs_cfg_zp_ap_list_r14_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -29436,13 +29400,13 @@ void dmrs_cfg_r11_c::to_json(json_writer& j) const } SRSASN_CODE dmrs_cfg_r11_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c.scrambling_id_r11, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_unalign_integer(bref, c.scrambling_id2_r11, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(pack_integer(bref, c.scrambling_id_r11, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(pack_integer(bref, c.scrambling_id2_r11, (uint16_t)0u, (uint16_t)503u)); break; default: log_invalid_choice_id(type_, "dmrs_cfg_r11_c"); @@ -29453,14 +29417,14 @@ SRSASN_CODE dmrs_cfg_r11_c::pack(bit_ref& bref) const SRSASN_CODE dmrs_cfg_r11_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c.scrambling_id_r11, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_unalign_integer(c.scrambling_id2_r11, bref, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(unpack_integer(c.scrambling_id_r11, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(unpack_integer(c.scrambling_id2_r11, bref, (uint16_t)0u, (uint16_t)503u)); break; default: log_invalid_choice_id(type_, "dmrs_cfg_r11_c"); @@ -29495,20 +29459,20 @@ void dmrs_cfg_v1310_s::to_json(json_writer& j) const SRSASN_CODE delta_tx_d_offset_list_pucch_r10_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_enum(bref, delta_tx_d_offset_pucch_format1_r10)); - HANDLE_CODE(pack_enum(bref, delta_tx_d_offset_pucch_format1a1b_r10)); - HANDLE_CODE(pack_enum(bref, delta_tx_d_offset_pucch_format22a2b_r10)); - HANDLE_CODE(pack_enum(bref, delta_tx_d_offset_pucch_format3_r10)); + HANDLE_CODE(delta_tx_d_offset_pucch_format1_r10.pack(bref)); + HANDLE_CODE(delta_tx_d_offset_pucch_format1a1b_r10.pack(bref)); + HANDLE_CODE(delta_tx_d_offset_pucch_format22a2b_r10.pack(bref)); + HANDLE_CODE(delta_tx_d_offset_pucch_format3_r10.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE delta_tx_d_offset_list_pucch_r10_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_enum(delta_tx_d_offset_pucch_format1_r10, bref)); - HANDLE_CODE(unpack_enum(delta_tx_d_offset_pucch_format1a1b_r10, bref)); - HANDLE_CODE(unpack_enum(delta_tx_d_offset_pucch_format22a2b_r10, bref)); - HANDLE_CODE(unpack_enum(delta_tx_d_offset_pucch_format3_r10, bref)); + HANDLE_CODE(delta_tx_d_offset_pucch_format1_r10.unpack(bref)); + HANDLE_CODE(delta_tx_d_offset_pucch_format1a1b_r10.unpack(bref)); + HANDLE_CODE(delta_tx_d_offset_pucch_format22a2b_r10.unpack(bref)); + HANDLE_CODE(delta_tx_d_offset_pucch_format3_r10.unpack(bref)); return SRSASN_SUCCESS; } @@ -29525,13 +29489,13 @@ void delta_tx_d_offset_list_pucch_r10_s::to_json(json_writer& j) const // DeltaTxD-OffsetListPUCCH-v1130 ::= SEQUENCE SRSASN_CODE delta_tx_d_offset_list_pucch_v1130_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, delta_tx_d_offset_pucch_format1b_cs_r11)); + HANDLE_CODE(delta_tx_d_offset_pucch_format1b_cs_r11.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE delta_tx_d_offset_list_pucch_v1130_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(delta_tx_d_offset_pucch_format1b_cs_r11, bref)); + HANDLE_CODE(delta_tx_d_offset_pucch_format1b_cs_r11.unpack(bref)); return SRSASN_SUCCESS; } @@ -29568,13 +29532,13 @@ void eimta_main_cfg_r12_c::to_json(json_writer& j) const } SRSASN_CODE eimta_main_cfg_r12_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(c.eimta_rnti_r12.pack(bref)); - HANDLE_CODE(pack_enum(bref, c.eimta_cmd_periodicity_r12)); + HANDLE_CODE(c.eimta_cmd_periodicity_r12.pack(bref)); HANDLE_CODE(c.eimta_cmd_sf_set_r12.pack(bref)); break; default: @@ -29586,14 +29550,14 @@ SRSASN_CODE eimta_main_cfg_r12_c::pack(bit_ref& bref) const SRSASN_CODE eimta_main_cfg_r12_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(c.eimta_rnti_r12.unpack(bref)); - HANDLE_CODE(unpack_enum(c.eimta_cmd_periodicity_r12, bref)); + HANDLE_CODE(c.eimta_cmd_periodicity_r12.unpack(bref)); HANDLE_CODE(c.eimta_cmd_sf_set_r12.unpack(bref)); break; default: @@ -29630,13 +29594,13 @@ void eimta_main_cfg_serv_cell_r12_c::to_json(json_writer& j) const } SRSASN_CODE eimta_main_cfg_serv_cell_r12_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c.eimta_ul_dl_cfg_idx_r12, (uint8_t)1, (uint8_t)5)); - HANDLE_CODE(pack_enum(bref, c.eimta_harq_ref_cfg_r12)); + HANDLE_CODE(pack_integer(bref, c.eimta_ul_dl_cfg_idx_r12, (uint8_t)1u, (uint8_t)5u)); + HANDLE_CODE(c.eimta_harq_ref_cfg_r12.pack(bref)); HANDLE_CODE(c.mbsfn_sf_cfg_list_v1250.pack(bref)); break; default: @@ -29648,14 +29612,14 @@ SRSASN_CODE eimta_main_cfg_serv_cell_r12_c::pack(bit_ref& bref) const SRSASN_CODE eimta_main_cfg_serv_cell_r12_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c.eimta_ul_dl_cfg_idx_r12, bref, (uint8_t)1, (uint8_t)5)); - HANDLE_CODE(unpack_enum(c.eimta_harq_ref_cfg_r12, bref)); + HANDLE_CODE(unpack_integer(c.eimta_ul_dl_cfg_idx_r12, bref, (uint8_t)1u, (uint8_t)5u)); + HANDLE_CODE(c.eimta_harq_ref_cfg_r12.unpack(bref)); HANDLE_CODE(c.mbsfn_sf_cfg_list_v1250.unpack(bref)); break; default: @@ -29692,7 +29656,7 @@ void eimta_main_cfg_serv_cell_r12_c::setup_s_::mbsfn_sf_cfg_list_v1250_c_::to_js } SRSASN_CODE eimta_main_cfg_serv_cell_r12_c::setup_s_::mbsfn_sf_cfg_list_v1250_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -29708,7 +29672,7 @@ SRSASN_CODE eimta_main_cfg_serv_cell_r12_c::setup_s_::mbsfn_sf_cfg_list_v1250_c_ SRSASN_CODE eimta_main_cfg_serv_cell_r12_c::setup_s_::mbsfn_sf_cfg_list_v1250_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -29726,15 +29690,15 @@ SRSASN_CODE eimta_main_cfg_serv_cell_r12_c::setup_s_::mbsfn_sf_cfg_list_v1250_c_ // Format4-resource-r13 ::= SEQUENCE SRSASN_CODE format4_res_r13_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, start_prb_format4_r13, (uint8_t)0, (uint8_t)109)); - HANDLE_CODE(pack_unalign_integer(bref, nof_prb_format4_r13, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, start_prb_format4_r13, (uint8_t)0u, (uint8_t)109u)); + HANDLE_CODE(pack_integer(bref, nof_prb_format4_r13, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } SRSASN_CODE format4_res_r13_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(start_prb_format4_r13, bref, (uint8_t)0, (uint8_t)109)); - HANDLE_CODE(unpack_unalign_integer(nof_prb_format4_r13, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(start_prb_format4_r13, bref, (uint8_t)0u, (uint8_t)109u)); + HANDLE_CODE(unpack_integer(nof_prb_format4_r13, bref, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } @@ -29749,15 +29713,15 @@ void format4_res_r13_s::to_json(json_writer& j) const // Format5-resource-r13 ::= SEQUENCE SRSASN_CODE format5_res_r13_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, start_prb_format5_r13, (uint8_t)0, (uint8_t)109)); - HANDLE_CODE(pack_unalign_integer(bref, cdm_idx_format5_r13, (uint8_t)0, (uint8_t)1)); + HANDLE_CODE(pack_integer(bref, start_prb_format5_r13, (uint8_t)0u, (uint8_t)109u)); + HANDLE_CODE(pack_integer(bref, cdm_idx_format5_r13, (uint8_t)0u, (uint8_t)1u)); return SRSASN_SUCCESS; } SRSASN_CODE format5_res_r13_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(start_prb_format5_r13, bref, (uint8_t)0, (uint8_t)109)); - HANDLE_CODE(unpack_unalign_integer(cdm_idx_format5_r13, bref, (uint8_t)0, (uint8_t)1)); + HANDLE_CODE(unpack_integer(start_prb_format5_r13, bref, (uint8_t)0u, (uint8_t)109u)); + HANDLE_CODE(unpack_integer(cdm_idx_format5_r13, bref, (uint8_t)0u, (uint8_t)1u)); return SRSASN_SUCCESS; } @@ -29775,15 +29739,15 @@ SRSASN_CODE neigh_cells_info_r12_s::pack(bit_ref& bref) const bref.pack(ext, 1); HANDLE_CODE(bref.pack(mbsfn_sf_cfg_r12_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, pci_r12, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_unalign_integer(bref, p_b_r12, (uint8_t)0, (uint8_t)3)); - HANDLE_CODE(pack_enum(bref, crs_ports_count_r12)); + HANDLE_CODE(pack_integer(bref, pci_r12, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(pack_integer(bref, p_b_r12, (uint8_t)0u, (uint8_t)3u)); + HANDLE_CODE(crs_ports_count_r12.pack(bref)); if (mbsfn_sf_cfg_r12_present) { HANDLE_CODE(pack_dyn_seq_of(bref, mbsfn_sf_cfg_r12, 1, 8)); } - HANDLE_CODE(pack_dyn_seq_of(bref, p_a_list_r12, 1, 3, EnumPacker())); + HANDLE_CODE(pack_dyn_seq_of(bref, p_a_list_r12, 1, 3)); HANDLE_CODE(tx_mode_list_r12.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, res_alloc_granularity_r12, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, res_alloc_granularity_r12, (uint8_t)1u, (uint8_t)4u)); return SRSASN_SUCCESS; } @@ -29792,15 +29756,15 @@ SRSASN_CODE neigh_cells_info_r12_s::unpack(bit_ref& bref) bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(mbsfn_sf_cfg_r12_present, 1)); - HANDLE_CODE(unpack_unalign_integer(pci_r12, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_unalign_integer(p_b_r12, bref, (uint8_t)0, (uint8_t)3)); - HANDLE_CODE(unpack_enum(crs_ports_count_r12, bref)); + HANDLE_CODE(unpack_integer(pci_r12, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(unpack_integer(p_b_r12, bref, (uint8_t)0u, (uint8_t)3u)); + HANDLE_CODE(crs_ports_count_r12.unpack(bref)); if (mbsfn_sf_cfg_r12_present) { HANDLE_CODE(unpack_dyn_seq_of(mbsfn_sf_cfg_r12, bref, 1, 8)); } - HANDLE_CODE(unpack_dyn_seq_of(p_a_list_r12, bref, 1, 3, EnumPacker())); + HANDLE_CODE(unpack_dyn_seq_of(p_a_list_r12, bref, 1, 3)); HANDLE_CODE(tx_mode_list_r12.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(res_alloc_granularity_r12, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(unpack_integer(res_alloc_granularity_r12, bref, (uint8_t)1u, (uint8_t)4u)); return SRSASN_SUCCESS; } @@ -29836,13 +29800,13 @@ SRSASN_CODE pdcp_cfg_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(rlc_um_present, 1)); if (discard_timer_present) { - HANDLE_CODE(pack_enum(bref, discard_timer)); + HANDLE_CODE(discard_timer.pack(bref)); } if (rlc_am_present) { HANDLE_CODE(bref.pack(rlc_am.status_report_required, 1)); } if (rlc_um_present) { - HANDLE_CODE(pack_enum(bref, rlc_um.pdcp_sn_size)); + HANDLE_CODE(rlc_um.pdcp_sn_size.pack(bref)); } HANDLE_CODE(hdr_compress.pack(bref)); @@ -29862,17 +29826,17 @@ SRSASN_CODE pdcp_cfg_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(rn_integrity_protection_r10_present, 1)); } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(pdcp_sn_size_v1130_present, 1)); } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ul_data_split_drb_via_scg_r12_present, 1)); HANDLE_CODE(bref.pack(t_reordering_r12_present, 1)); @@ -29880,11 +29844,11 @@ SRSASN_CODE pdcp_cfg_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(ul_data_split_drb_via_scg_r12, 1)); } if (t_reordering_r12_present) { - HANDLE_CODE(pack_enum(bref, t_reordering_r12)); + HANDLE_CODE(t_reordering_r12.pack(bref)); } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ul_data_split_thres_r13.is_present(), 1)); HANDLE_CODE(bref.pack(pdcp_sn_size_v1310_present, 1)); @@ -29897,7 +29861,7 @@ SRSASN_CODE pdcp_cfg_s::pack(bit_ref& bref) const } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ul_lwa_cfg_r14.is_present(), 1)); HANDLE_CODE(bref.pack(ul_only_hdr_compress_r14.is_present(), 1)); @@ -29909,16 +29873,16 @@ SRSASN_CODE pdcp_cfg_s::pack(bit_ref& bref) const } } if (group_flags[5]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ul_data_compress_r15.is_present(), 1)); HANDLE_CODE(bref.pack(pdcp_dupl_cfg_r15.is_present(), 1)); if (ul_data_compress_r15.is_present()) { bref.pack(ul_data_compress_r15->ext, 1); HANDLE_CODE(bref.pack(ul_data_compress_r15->dictionary_r15_present, 1)); - HANDLE_CODE(pack_enum(bref, ul_data_compress_r15->buffer_size_r15)); + HANDLE_CODE(ul_data_compress_r15->buffer_size_r15.pack(bref)); if (ul_data_compress_r15->dictionary_r15_present) { - HANDLE_CODE(pack_enum(bref, ul_data_compress_r15->dictionary_r15)); + HANDLE_CODE(ul_data_compress_r15->dictionary_r15.pack(bref)); } } if (pdcp_dupl_cfg_r15.is_present()) { @@ -29936,13 +29900,13 @@ SRSASN_CODE pdcp_cfg_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(rlc_um_present, 1)); if (discard_timer_present) { - HANDLE_CODE(unpack_enum(discard_timer, bref)); + HANDLE_CODE(discard_timer.unpack(bref)); } if (rlc_am_present) { HANDLE_CODE(bref.unpack(rlc_am.status_report_required, 1)); } if (rlc_um_present) { - HANDLE_CODE(unpack_enum(rlc_um.pdcp_sn_size, bref)); + HANDLE_CODE(rlc_um.pdcp_sn_size.unpack(bref)); } HANDLE_CODE(hdr_compress.unpack(bref)); @@ -29951,17 +29915,17 @@ SRSASN_CODE pdcp_cfg_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(rn_integrity_protection_r10_present, 1)); } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(pdcp_sn_size_v1130_present, 1)); } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(ul_data_split_drb_via_scg_r12_present, 1)); HANDLE_CODE(bref.unpack(t_reordering_r12_present, 1)); @@ -29969,11 +29933,11 @@ SRSASN_CODE pdcp_cfg_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ul_data_split_drb_via_scg_r12, 1)); } if (t_reordering_r12_present) { - HANDLE_CODE(unpack_enum(t_reordering_r12, bref)); + HANDLE_CODE(t_reordering_r12.unpack(bref)); } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool ul_data_split_thres_r13_present; HANDLE_CODE(bref.unpack(ul_data_split_thres_r13_present, 1)); @@ -29990,7 +29954,7 @@ SRSASN_CODE pdcp_cfg_s::unpack(bit_ref& bref) } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool ul_lwa_cfg_r14_present; HANDLE_CODE(bref.unpack(ul_lwa_cfg_r14_present, 1)); @@ -30006,7 +29970,7 @@ SRSASN_CODE pdcp_cfg_s::unpack(bit_ref& bref) } } if (group_flags[5]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool ul_data_compress_r15_present; HANDLE_CODE(bref.unpack(ul_data_compress_r15_present, 1)); @@ -30017,9 +29981,9 @@ SRSASN_CODE pdcp_cfg_s::unpack(bit_ref& bref) if (ul_data_compress_r15.is_present()) { bref.unpack(ul_data_compress_r15->ext, 1); HANDLE_CODE(bref.unpack(ul_data_compress_r15->dictionary_r15_present, 1)); - HANDLE_CODE(unpack_enum(ul_data_compress_r15->buffer_size_r15, bref)); + HANDLE_CODE(ul_data_compress_r15->buffer_size_r15.unpack(bref)); if (ul_data_compress_r15->dictionary_r15_present) { - HANDLE_CODE(unpack_enum(ul_data_compress_r15->dictionary_r15, bref)); + HANDLE_CODE(ul_data_compress_r15->dictionary_r15.unpack(bref)); } } if (pdcp_dupl_cfg_r15.is_present()) { @@ -30135,7 +30099,7 @@ void pdcp_cfg_s::hdr_compress_c_::to_json(json_writer& j) const } SRSASN_CODE pdcp_cfg_s::hdr_compress_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::not_used: break; @@ -30143,7 +30107,7 @@ SRSASN_CODE pdcp_cfg_s::hdr_compress_c_::pack(bit_ref& bref) const bref.pack(c.ext, 1); HANDLE_CODE(bref.pack(c.max_cid_present, 1)); if (c.max_cid_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.max_cid, (uint16_t)1, (uint16_t)16383)); + HANDLE_CODE(pack_integer(bref, c.max_cid, (uint16_t)1u, (uint16_t)16383u)); } HANDLE_CODE(bref.pack(c.profiles.profile0x0001, 1)); HANDLE_CODE(bref.pack(c.profiles.profile0x0002, 1)); @@ -30164,7 +30128,7 @@ SRSASN_CODE pdcp_cfg_s::hdr_compress_c_::pack(bit_ref& bref) const SRSASN_CODE pdcp_cfg_s::hdr_compress_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::not_used: @@ -30173,7 +30137,7 @@ SRSASN_CODE pdcp_cfg_s::hdr_compress_c_::unpack(bit_ref& bref) bref.unpack(c.ext, 1); HANDLE_CODE(bref.unpack(c.max_cid_present, 1)); if (c.max_cid_present) { - HANDLE_CODE(unpack_unalign_integer(c.max_cid, bref, (uint16_t)1, (uint16_t)16383)); + HANDLE_CODE(unpack_integer(c.max_cid, bref, (uint16_t)1u, (uint16_t)16383u)); } HANDLE_CODE(bref.unpack(c.profiles.profile0x0001, 1)); HANDLE_CODE(bref.unpack(c.profiles.profile0x0002, 1)); @@ -30212,12 +30176,12 @@ void pdcp_cfg_s::ul_data_split_thres_r13_c_::to_json(json_writer& j) const } SRSASN_CODE pdcp_cfg_s::ul_data_split_thres_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c)); + HANDLE_CODE(c.pack(bref)); break; default: log_invalid_choice_id(type_, "pdcp_cfg_s::ul_data_split_thres_r13_c_"); @@ -30228,13 +30192,13 @@ SRSASN_CODE pdcp_cfg_s::ul_data_split_thres_r13_c_::pack(bit_ref& bref) const SRSASN_CODE pdcp_cfg_s::ul_data_split_thres_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c, bref)); + HANDLE_CODE(c.unpack(bref)); break; default: log_invalid_choice_id(type_, "pdcp_cfg_s::ul_data_split_thres_r13_c_"); @@ -30277,7 +30241,7 @@ void pdcp_cfg_s::status_feedback_r13_c_::to_json(json_writer& j) const } SRSASN_CODE pdcp_cfg_s::status_feedback_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -30287,16 +30251,16 @@ SRSASN_CODE pdcp_cfg_s::status_feedback_r13_c_::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.status_pdu_periodicity_type2_r13_present, 1)); HANDLE_CODE(bref.pack(c.status_pdu_periodicity_offset_r13_present, 1)); if (c.status_pdu_type_for_polling_r13_present) { - HANDLE_CODE(pack_enum(bref, c.status_pdu_type_for_polling_r13)); + HANDLE_CODE(c.status_pdu_type_for_polling_r13.pack(bref)); } if (c.status_pdu_periodicity_type1_r13_present) { - HANDLE_CODE(pack_enum(bref, c.status_pdu_periodicity_type1_r13)); + HANDLE_CODE(c.status_pdu_periodicity_type1_r13.pack(bref)); } if (c.status_pdu_periodicity_type2_r13_present) { - HANDLE_CODE(pack_enum(bref, c.status_pdu_periodicity_type2_r13)); + HANDLE_CODE(c.status_pdu_periodicity_type2_r13.pack(bref)); } if (c.status_pdu_periodicity_offset_r13_present) { - HANDLE_CODE(pack_enum(bref, c.status_pdu_periodicity_offset_r13)); + HANDLE_CODE(c.status_pdu_periodicity_offset_r13.pack(bref)); } break; default: @@ -30308,7 +30272,7 @@ SRSASN_CODE pdcp_cfg_s::status_feedback_r13_c_::pack(bit_ref& bref) const SRSASN_CODE pdcp_cfg_s::status_feedback_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -30319,16 +30283,16 @@ SRSASN_CODE pdcp_cfg_s::status_feedback_r13_c_::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.status_pdu_periodicity_type2_r13_present, 1)); HANDLE_CODE(bref.unpack(c.status_pdu_periodicity_offset_r13_present, 1)); if (c.status_pdu_type_for_polling_r13_present) { - HANDLE_CODE(unpack_enum(c.status_pdu_type_for_polling_r13, bref)); + HANDLE_CODE(c.status_pdu_type_for_polling_r13.unpack(bref)); } if (c.status_pdu_periodicity_type1_r13_present) { - HANDLE_CODE(unpack_enum(c.status_pdu_periodicity_type1_r13, bref)); + HANDLE_CODE(c.status_pdu_periodicity_type1_r13.unpack(bref)); } if (c.status_pdu_periodicity_type2_r13_present) { - HANDLE_CODE(unpack_enum(c.status_pdu_periodicity_type2_r13, bref)); + HANDLE_CODE(c.status_pdu_periodicity_type2_r13.unpack(bref)); } if (c.status_pdu_periodicity_offset_r13_present) { - HANDLE_CODE(unpack_enum(c.status_pdu_periodicity_offset_r13, bref)); + HANDLE_CODE(c.status_pdu_periodicity_offset_r13.unpack(bref)); } break; default: @@ -30364,7 +30328,7 @@ void pdcp_cfg_s::ul_lwa_cfg_r14_c_::to_json(json_writer& j) const } SRSASN_CODE pdcp_cfg_s::ul_lwa_cfg_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -30372,7 +30336,7 @@ SRSASN_CODE pdcp_cfg_s::ul_lwa_cfg_r14_c_::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.ul_lwa_data_split_thres_r14_present, 1)); HANDLE_CODE(bref.pack(c.ul_lwa_drb_via_wlan_r14, 1)); if (c.ul_lwa_data_split_thres_r14_present) { - HANDLE_CODE(pack_enum(bref, c.ul_lwa_data_split_thres_r14)); + HANDLE_CODE(c.ul_lwa_data_split_thres_r14.pack(bref)); } break; default: @@ -30384,7 +30348,7 @@ SRSASN_CODE pdcp_cfg_s::ul_lwa_cfg_r14_c_::pack(bit_ref& bref) const SRSASN_CODE pdcp_cfg_s::ul_lwa_cfg_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -30393,7 +30357,7 @@ SRSASN_CODE pdcp_cfg_s::ul_lwa_cfg_r14_c_::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.ul_lwa_data_split_thres_r14_present, 1)); HANDLE_CODE(bref.unpack(c.ul_lwa_drb_via_wlan_r14, 1)); if (c.ul_lwa_data_split_thres_r14_present) { - HANDLE_CODE(unpack_enum(c.ul_lwa_data_split_thres_r14, bref)); + HANDLE_CODE(c.ul_lwa_data_split_thres_r14.unpack(bref)); } break; default: @@ -30432,7 +30396,7 @@ void pdcp_cfg_s::ul_only_hdr_compress_r14_c_::to_json(json_writer& j) const } SRSASN_CODE pdcp_cfg_s::ul_only_hdr_compress_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::not_used_r14: break; @@ -30440,7 +30404,7 @@ SRSASN_CODE pdcp_cfg_s::ul_only_hdr_compress_r14_c_::pack(bit_ref& bref) const bref.pack(c.ext, 1); HANDLE_CODE(bref.pack(c.max_cid_r14_present, 1)); if (c.max_cid_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.max_cid_r14, (uint16_t)1, (uint16_t)16383)); + HANDLE_CODE(pack_integer(bref, c.max_cid_r14, (uint16_t)1u, (uint16_t)16383u)); } HANDLE_CODE(bref.pack(c.profiles_r14.profile0x0006_r14, 1)); break; @@ -30453,7 +30417,7 @@ SRSASN_CODE pdcp_cfg_s::ul_only_hdr_compress_r14_c_::pack(bit_ref& bref) const SRSASN_CODE pdcp_cfg_s::ul_only_hdr_compress_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::not_used_r14: @@ -30462,7 +30426,7 @@ SRSASN_CODE pdcp_cfg_s::ul_only_hdr_compress_r14_c_::unpack(bit_ref& bref) bref.unpack(c.ext, 1); HANDLE_CODE(bref.unpack(c.max_cid_r14_present, 1)); if (c.max_cid_r14_present) { - HANDLE_CODE(unpack_unalign_integer(c.max_cid_r14, bref, (uint16_t)1, (uint16_t)16383)); + HANDLE_CODE(unpack_integer(c.max_cid_r14, bref, (uint16_t)1u, (uint16_t)16383u)); } HANDLE_CODE(bref.unpack(c.profiles_r14.profile0x0006_r14, 1)); break; @@ -30496,12 +30460,12 @@ void pdcp_cfg_s::pdcp_dupl_cfg_r15_c_::to_json(json_writer& j) const } SRSASN_CODE pdcp_cfg_s::pdcp_dupl_cfg_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.pdcp_dupl_r15)); + HANDLE_CODE(c.pdcp_dupl_r15.pack(bref)); break; default: log_invalid_choice_id(type_, "pdcp_cfg_s::pdcp_dupl_cfg_r15_c_"); @@ -30512,13 +30476,13 @@ SRSASN_CODE pdcp_cfg_s::pdcp_dupl_cfg_r15_c_::pack(bit_ref& bref) const SRSASN_CODE pdcp_cfg_s::pdcp_dupl_cfg_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.pdcp_dupl_r15, bref)); + HANDLE_CODE(c.pdcp_dupl_r15.unpack(bref)); break; default: log_invalid_choice_id(type_, "pdcp_cfg_s::pdcp_dupl_cfg_r15_c_"); @@ -30534,10 +30498,10 @@ SRSASN_CODE pucch_cfg_ded_v1530_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(codebooksize_determination_stti_r15_present, 1)); if (n1_pucch_an_spt_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, n1_pucch_an_spt_r15, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(pack_integer(bref, n1_pucch_an_spt_r15, (uint16_t)0u, (uint16_t)2047u)); } if (codebooksize_determination_stti_r15_present) { - HANDLE_CODE(pack_enum(bref, codebooksize_determination_stti_r15)); + HANDLE_CODE(codebooksize_determination_stti_r15.pack(bref)); } return SRSASN_SUCCESS; @@ -30548,10 +30512,10 @@ SRSASN_CODE pucch_cfg_ded_v1530_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(codebooksize_determination_stti_r15_present, 1)); if (n1_pucch_an_spt_r15_present) { - HANDLE_CODE(unpack_unalign_integer(n1_pucch_an_spt_r15, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(unpack_integer(n1_pucch_an_spt_r15, bref, (uint16_t)0u, (uint16_t)2047u)); } if (codebooksize_determination_stti_r15_present) { - HANDLE_CODE(unpack_enum(codebooksize_determination_stti_r15, bref)); + HANDLE_CODE(codebooksize_determination_stti_r15.unpack(bref)); } return SRSASN_SUCCESS; @@ -30575,7 +30539,7 @@ SRSASN_CODE pucch_format3_conf_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(two_ant_port_activ_pucch_format3_r13_present, 1)); if (n3_pucch_an_list_r13_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, n3_pucch_an_list_r13, 1, 4, UnalignedIntegerPacker(0, 549))); + HANDLE_CODE(pack_dyn_seq_of(bref, n3_pucch_an_list_r13, 1, 4, integer_packer(0, 549))); } if (two_ant_port_activ_pucch_format3_r13_present) { HANDLE_CODE(two_ant_port_activ_pucch_format3_r13.pack(bref)); @@ -30589,7 +30553,7 @@ SRSASN_CODE pucch_format3_conf_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(two_ant_port_activ_pucch_format3_r13_present, 1)); if (n3_pucch_an_list_r13_present) { - HANDLE_CODE(unpack_dyn_seq_of(n3_pucch_an_list_r13, bref, 1, 4, UnalignedIntegerPacker(0, 549))); + HANDLE_CODE(unpack_dyn_seq_of(n3_pucch_an_list_r13, bref, 1, 4, integer_packer(0, 549))); } if (two_ant_port_activ_pucch_format3_r13_present) { HANDLE_CODE(two_ant_port_activ_pucch_format3_r13.unpack(bref)); @@ -30641,12 +30605,12 @@ void pucch_format3_conf_r13_s::two_ant_port_activ_pucch_format3_r13_c_::to_json( } SRSASN_CODE pucch_format3_conf_r13_s::two_ant_port_activ_pucch_format3_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_dyn_seq_of(bref, c.n3_pucch_an_list_p1_r13, 1, 4, UnalignedIntegerPacker(0, 549))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.n3_pucch_an_list_p1_r13, 1, 4, integer_packer(0, 549))); break; default: log_invalid_choice_id(type_, "pucch_format3_conf_r13_s::two_ant_port_activ_pucch_format3_r13_c_"); @@ -30657,13 +30621,13 @@ SRSASN_CODE pucch_format3_conf_r13_s::two_ant_port_activ_pucch_format3_r13_c_::p SRSASN_CODE pucch_format3_conf_r13_s::two_ant_port_activ_pucch_format3_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_dyn_seq_of(c.n3_pucch_an_list_p1_r13, bref, 1, 4, UnalignedIntegerPacker(0, 549))); + HANDLE_CODE(unpack_dyn_seq_of(c.n3_pucch_an_list_p1_r13, bref, 1, 4, integer_packer(0, 549))); break; default: log_invalid_choice_id(type_, "pucch_format3_conf_r13_s::two_ant_port_activ_pucch_format3_r13_c_"); @@ -30705,7 +30669,7 @@ void rlc_bearer_cfg_r15_c::to_json(json_writer& j) const } SRSASN_CODE rlc_bearer_cfg_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -30729,7 +30693,7 @@ SRSASN_CODE rlc_bearer_cfg_r15_c::pack(bit_ref& bref) const SRSASN_CODE rlc_bearer_cfg_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -30814,13 +30778,13 @@ void rlc_bearer_cfg_r15_c::setup_s_::lc_ch_id_cfg_r15_c_::to_json(json_writer& j } SRSASN_CODE rlc_bearer_cfg_r15_c::setup_s_::lc_ch_id_cfg_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::lc_ch_id_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)1, (uint8_t)10)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)1u, (uint8_t)10u)); break; case types::lc_ch_id_ext_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)32, (uint8_t)38)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)32u, (uint8_t)38u)); break; default: log_invalid_choice_id(type_, "rlc_bearer_cfg_r15_c::setup_s_::lc_ch_id_cfg_r15_c_"); @@ -30831,14 +30795,14 @@ SRSASN_CODE rlc_bearer_cfg_r15_c::setup_s_::lc_ch_id_cfg_r15_c_::pack(bit_ref& b SRSASN_CODE rlc_bearer_cfg_r15_c::setup_s_::lc_ch_id_cfg_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::lc_ch_id_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)1, (uint8_t)10)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)1u, (uint8_t)10u)); break; case types::lc_ch_id_ext_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)32, (uint8_t)38)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)32u, (uint8_t)38u)); break; default: log_invalid_choice_id(type_, "rlc_bearer_cfg_r15_c::setup_s_::lc_ch_id_cfg_r15_c_"); @@ -30982,7 +30946,7 @@ void rlc_cfg_c::to_json(json_writer& j) const } SRSASN_CODE rlc_cfg_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::am: HANDLE_CODE(c.get().ul_am_rlc.pack(bref)); @@ -31007,7 +30971,7 @@ SRSASN_CODE rlc_cfg_c::pack(bit_ref& bref) const SRSASN_CODE rlc_cfg_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::am: @@ -31062,7 +31026,7 @@ SRSASN_CODE rlc_cfg_v1310_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(ul_extended_rlc_am_sn_r13, 1)); HANDLE_CODE(bref.pack(dl_extended_rlc_am_sn_r13, 1)); if (poll_pdu_v1310_present) { - HANDLE_CODE(pack_enum(bref, poll_pdu_v1310)); + HANDLE_CODE(poll_pdu_v1310.pack(bref)); } return SRSASN_SUCCESS; @@ -31074,7 +31038,7 @@ SRSASN_CODE rlc_cfg_v1310_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ul_extended_rlc_am_sn_r13, 1)); HANDLE_CODE(bref.unpack(dl_extended_rlc_am_sn_r13, 1)); if (poll_pdu_v1310_present) { - HANDLE_CODE(unpack_enum(poll_pdu_v1310, bref)); + HANDLE_CODE(poll_pdu_v1310.unpack(bref)); } return SRSASN_SUCCESS; @@ -31114,12 +31078,12 @@ void rlc_cfg_v1430_c::to_json(json_writer& j) const } SRSASN_CODE rlc_cfg_v1430_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.poll_byte_r14)); + HANDLE_CODE(c.poll_byte_r14.pack(bref)); break; default: log_invalid_choice_id(type_, "rlc_cfg_v1430_c"); @@ -31130,13 +31094,13 @@ SRSASN_CODE rlc_cfg_v1430_c::pack(bit_ref& bref) const SRSASN_CODE rlc_cfg_v1430_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.poll_byte_r14, bref)); + HANDLE_CODE(c.poll_byte_r14.unpack(bref)); break; default: log_invalid_choice_id(type_, "rlc_cfg_v1430_c"); @@ -31185,7 +31149,7 @@ void rlc_cfg_v1530_c::to_json(json_writer& j) const } SRSASN_CODE rlc_cfg_v1530_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -31200,7 +31164,7 @@ SRSASN_CODE rlc_cfg_v1530_c::pack(bit_ref& bref) const SRSASN_CODE rlc_cfg_v1530_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -31276,7 +31240,7 @@ void spdcch_cfg_r15_c::to_json(json_writer& j) const } SRSASN_CODE spdcch_cfg_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -31284,7 +31248,7 @@ SRSASN_CODE spdcch_cfg_r15_c::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.spdcch_l1_reuse_ind_r15_present, 1)); HANDLE_CODE(bref.pack(c.spdcch_set_cfg_r15_present, 1)); if (c.spdcch_l1_reuse_ind_r15_present) { - HANDLE_CODE(pack_enum(bref, c.spdcch_l1_reuse_ind_r15)); + HANDLE_CODE(c.spdcch_l1_reuse_ind_r15.pack(bref)); } if (c.spdcch_set_cfg_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, c.spdcch_set_cfg_r15, 1, 4)); @@ -31299,7 +31263,7 @@ SRSASN_CODE spdcch_cfg_r15_c::pack(bit_ref& bref) const SRSASN_CODE spdcch_cfg_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -31308,7 +31272,7 @@ SRSASN_CODE spdcch_cfg_r15_c::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.spdcch_l1_reuse_ind_r15_present, 1)); HANDLE_CODE(bref.unpack(c.spdcch_set_cfg_r15_present, 1)); if (c.spdcch_l1_reuse_ind_r15_present) { - HANDLE_CODE(unpack_enum(c.spdcch_l1_reuse_ind_r15, bref)); + HANDLE_CODE(c.spdcch_l1_reuse_ind_r15.unpack(bref)); } if (c.spdcch_set_cfg_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(c.spdcch_set_cfg_r15, bref, 1, 4)); @@ -31324,15 +31288,15 @@ SRSASN_CODE spdcch_cfg_r15_c::unpack(bit_ref& bref) // SPS-ConfigSL-r14 ::= SEQUENCE SRSASN_CODE sps_cfg_sl_r14_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, sps_cfg_idx_r14, (uint8_t)1, (uint8_t)8)); - HANDLE_CODE(pack_enum(bref, semi_persist_sched_interv_sl_r14)); + HANDLE_CODE(pack_integer(bref, sps_cfg_idx_r14, (uint8_t)1u, (uint8_t)8u)); + HANDLE_CODE(semi_persist_sched_interv_sl_r14.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE sps_cfg_sl_r14_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(sps_cfg_idx_r14, bref, (uint8_t)1, (uint8_t)8)); - HANDLE_CODE(unpack_enum(semi_persist_sched_interv_sl_r14, bref)); + HANDLE_CODE(unpack_integer(sps_cfg_idx_r14, bref, (uint8_t)1u, (uint8_t)8u)); + HANDLE_CODE(semi_persist_sched_interv_sl_r14.unpack(bref)); return SRSASN_SUCCESS; } @@ -31366,7 +31330,7 @@ void sps_cfg_ul_c::to_json(json_writer& j) const } SRSASN_CODE sps_cfg_ul_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -31382,7 +31346,7 @@ SRSASN_CODE sps_cfg_ul_c::pack(bit_ref& bref) const SRSASN_CODE sps_cfg_ul_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -31403,11 +31367,11 @@ SRSASN_CODE sps_cfg_ul_c::setup_s_::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(p0_persistent_present, 1)); HANDLE_CODE(bref.pack(two_intervs_cfg_present, 1)); - HANDLE_CODE(pack_enum(bref, semi_persist_sched_interv_ul)); - HANDLE_CODE(pack_enum(bref, implicit_release_after)); + HANDLE_CODE(semi_persist_sched_interv_ul.pack(bref)); + HANDLE_CODE(implicit_release_after.pack(bref)); if (p0_persistent_present) { - HANDLE_CODE(pack_unalign_integer(bref, p0_persistent.p0_nominal_pusch_persistent, (int8_t)-126, (int8_t)24)); - HANDLE_CODE(pack_unalign_integer(bref, p0_persistent.p0_ue_pusch_persistent, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(pack_integer(bref, p0_persistent.p0_nominal_pusch_persistent, (int8_t)-126, (int8_t)24)); + HANDLE_CODE(pack_integer(bref, p0_persistent.p0_ue_pusch_persistent, (int8_t)-8, (int8_t)7)); } if (ext) { @@ -31426,7 +31390,7 @@ SRSASN_CODE sps_cfg_ul_c::setup_s_::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(p0_persistent_sf_set2_r12.is_present(), 1)); if (p0_persistent_sf_set2_r12.is_present()) { @@ -31434,28 +31398,28 @@ SRSASN_CODE sps_cfg_ul_c::setup_s_::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(nof_conf_ul_sps_processes_r13_present, 1)); if (nof_conf_ul_sps_processes_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, nof_conf_ul_sps_processes_r13, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, nof_conf_ul_sps_processes_r13, (uint8_t)1u, (uint8_t)8u)); } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(fixed_rv_non_adaptive_r14_present, 1)); HANDLE_CODE(bref.pack(sps_cfg_idx_r14_present, 1)); HANDLE_CODE(bref.pack(semi_persist_sched_interv_ul_v1430_present, 1)); if (sps_cfg_idx_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, sps_cfg_idx_r14, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, sps_cfg_idx_r14, (uint8_t)1u, (uint8_t)8u)); } if (semi_persist_sched_interv_ul_v1430_present) { - HANDLE_CODE(pack_enum(bref, semi_persist_sched_interv_ul_v1430)); + HANDLE_CODE(semi_persist_sched_interv_ul_v1430.pack(bref)); } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(cyclic_shift_sps_r15_present, 1)); HANDLE_CODE(bref.pack(harq_proc_id_offset_r15_present, 1)); @@ -31464,22 +31428,22 @@ SRSASN_CODE sps_cfg_ul_c::setup_s_::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(total_num_pusch_sps_ul_repeats_r15_present, 1)); HANDLE_CODE(bref.pack(sps_cfg_idx_r15_present, 1)); if (cyclic_shift_sps_r15_present) { - HANDLE_CODE(pack_enum(bref, cyclic_shift_sps_r15)); + HANDLE_CODE(cyclic_shift_sps_r15.pack(bref)); } if (harq_proc_id_offset_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, harq_proc_id_offset_r15, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, harq_proc_id_offset_r15, (uint8_t)0u, (uint8_t)7u)); } if (rv_sps_ul_repeats_r15_present) { - HANDLE_CODE(pack_enum(bref, rv_sps_ul_repeats_r15)); + HANDLE_CODE(rv_sps_ul_repeats_r15.pack(bref)); } if (tpc_pdcch_cfg_pusch_sps_r15.is_present()) { HANDLE_CODE(tpc_pdcch_cfg_pusch_sps_r15->pack(bref)); } if (total_num_pusch_sps_ul_repeats_r15_present) { - HANDLE_CODE(pack_enum(bref, total_num_pusch_sps_ul_repeats_r15)); + HANDLE_CODE(total_num_pusch_sps_ul_repeats_r15.pack(bref)); } if (sps_cfg_idx_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, sps_cfg_idx_r15, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(pack_integer(bref, sps_cfg_idx_r15, (uint8_t)1u, (uint8_t)6u)); } } } @@ -31491,11 +31455,11 @@ SRSASN_CODE sps_cfg_ul_c::setup_s_::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(p0_persistent_present, 1)); HANDLE_CODE(bref.unpack(two_intervs_cfg_present, 1)); - HANDLE_CODE(unpack_enum(semi_persist_sched_interv_ul, bref)); - HANDLE_CODE(unpack_enum(implicit_release_after, bref)); + HANDLE_CODE(semi_persist_sched_interv_ul.unpack(bref)); + HANDLE_CODE(implicit_release_after.unpack(bref)); if (p0_persistent_present) { - HANDLE_CODE(unpack_unalign_integer(p0_persistent.p0_nominal_pusch_persistent, bref, (int8_t)-126, (int8_t)24)); - HANDLE_CODE(unpack_unalign_integer(p0_persistent.p0_ue_pusch_persistent, bref, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(unpack_integer(p0_persistent.p0_nominal_pusch_persistent, bref, (int8_t)-126, (int8_t)24)); + HANDLE_CODE(unpack_integer(p0_persistent.p0_ue_pusch_persistent, bref, (int8_t)-8, (int8_t)7)); } if (ext) { @@ -31503,7 +31467,7 @@ SRSASN_CODE sps_cfg_ul_c::setup_s_::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool p0_persistent_sf_set2_r12_present; HANDLE_CODE(bref.unpack(p0_persistent_sf_set2_r12_present, 1)); @@ -31513,28 +31477,28 @@ SRSASN_CODE sps_cfg_ul_c::setup_s_::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(nof_conf_ul_sps_processes_r13_present, 1)); if (nof_conf_ul_sps_processes_r13_present) { - HANDLE_CODE(unpack_unalign_integer(nof_conf_ul_sps_processes_r13, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(nof_conf_ul_sps_processes_r13, bref, (uint8_t)1u, (uint8_t)8u)); } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(fixed_rv_non_adaptive_r14_present, 1)); HANDLE_CODE(bref.unpack(sps_cfg_idx_r14_present, 1)); HANDLE_CODE(bref.unpack(semi_persist_sched_interv_ul_v1430_present, 1)); if (sps_cfg_idx_r14_present) { - HANDLE_CODE(unpack_unalign_integer(sps_cfg_idx_r14, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(sps_cfg_idx_r14, bref, (uint8_t)1u, (uint8_t)8u)); } if (semi_persist_sched_interv_ul_v1430_present) { - HANDLE_CODE(unpack_enum(semi_persist_sched_interv_ul_v1430, bref)); + HANDLE_CODE(semi_persist_sched_interv_ul_v1430.unpack(bref)); } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(cyclic_shift_sps_r15_present, 1)); HANDLE_CODE(bref.unpack(harq_proc_id_offset_r15_present, 1)); @@ -31545,22 +31509,22 @@ SRSASN_CODE sps_cfg_ul_c::setup_s_::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(total_num_pusch_sps_ul_repeats_r15_present, 1)); HANDLE_CODE(bref.unpack(sps_cfg_idx_r15_present, 1)); if (cyclic_shift_sps_r15_present) { - HANDLE_CODE(unpack_enum(cyclic_shift_sps_r15, bref)); + HANDLE_CODE(cyclic_shift_sps_r15.unpack(bref)); } if (harq_proc_id_offset_r15_present) { - HANDLE_CODE(unpack_unalign_integer(harq_proc_id_offset_r15, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(harq_proc_id_offset_r15, bref, (uint8_t)0u, (uint8_t)7u)); } if (rv_sps_ul_repeats_r15_present) { - HANDLE_CODE(unpack_enum(rv_sps_ul_repeats_r15, bref)); + HANDLE_CODE(rv_sps_ul_repeats_r15.unpack(bref)); } if (tpc_pdcch_cfg_pusch_sps_r15.is_present()) { HANDLE_CODE(tpc_pdcch_cfg_pusch_sps_r15->unpack(bref)); } if (total_num_pusch_sps_ul_repeats_r15_present) { - HANDLE_CODE(unpack_enum(total_num_pusch_sps_ul_repeats_r15, bref)); + HANDLE_CODE(total_num_pusch_sps_ul_repeats_r15.unpack(bref)); } if (sps_cfg_idx_r15_present) { - HANDLE_CODE(unpack_unalign_integer(sps_cfg_idx_r15, bref, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(unpack_integer(sps_cfg_idx_r15, bref, (uint8_t)1u, (uint8_t)6u)); } } } @@ -31645,13 +31609,13 @@ void sps_cfg_ul_c::setup_s_::p0_persistent_sf_set2_r12_c_::to_json(json_writer& } SRSASN_CODE sps_cfg_ul_c::setup_s_::p0_persistent_sf_set2_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c.p0_nominal_pusch_persistent_sf_set2_r12, (int8_t)-126, (int8_t)24)); - HANDLE_CODE(pack_unalign_integer(bref, c.p0_ue_pusch_persistent_sf_set2_r12, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(pack_integer(bref, c.p0_nominal_pusch_persistent_sf_set2_r12, (int8_t)-126, (int8_t)24)); + HANDLE_CODE(pack_integer(bref, c.p0_ue_pusch_persistent_sf_set2_r12, (int8_t)-8, (int8_t)7)); break; default: log_invalid_choice_id(type_, "sps_cfg_ul_c::setup_s_::p0_persistent_sf_set2_r12_c_"); @@ -31662,14 +31626,14 @@ SRSASN_CODE sps_cfg_ul_c::setup_s_::p0_persistent_sf_set2_r12_c_::pack(bit_ref& SRSASN_CODE sps_cfg_ul_c::setup_s_::p0_persistent_sf_set2_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c.p0_nominal_pusch_persistent_sf_set2_r12, bref, (int8_t)-126, (int8_t)24)); - HANDLE_CODE(unpack_unalign_integer(c.p0_ue_pusch_persistent_sf_set2_r12, bref, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(unpack_integer(c.p0_nominal_pusch_persistent_sf_set2_r12, bref, (int8_t)-126, (int8_t)24)); + HANDLE_CODE(unpack_integer(c.p0_ue_pusch_persistent_sf_set2_r12, bref, (int8_t)-8, (int8_t)7)); break; default: log_invalid_choice_id(type_, "sps_cfg_ul_c::setup_s_::p0_persistent_sf_set2_r12_c_"); @@ -31711,7 +31675,7 @@ void sps_cfg_ul_stti_r15_c::to_json(json_writer& j) const if (c.nof_conf_ul_sps_processes_stti_r15_present) { j.write_int("numberOfConfUL-SPS-Processes-STTI-r15", c.nof_conf_ul_sps_processes_stti_r15); } - j.write_int("sTTI-StartTimeUL-r15", c.s_tti_start_time_ul_r15); + j.write_int("sTTI-StartTimeUL-r15", c.stti_start_time_ul_r15); if (c.tpc_pdcch_cfg_pusch_sps_r15_present) { j.write_fieldname("tpc-PDCCH-ConfigPUSCH-SPS-r15"); c.tpc_pdcch_cfg_pusch_sps_r15.to_json(j); @@ -31748,7 +31712,7 @@ void sps_cfg_ul_stti_r15_c::to_json(json_writer& j) const } SRSASN_CODE sps_cfg_ul_stti_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -31766,43 +31730,42 @@ SRSASN_CODE sps_cfg_ul_stti_r15_c::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.sps_cfg_idx_r15_present, 1)); HANDLE_CODE(bref.pack(c.tbs_scaling_factor_subslot_sps_ul_repeats_r15_present, 1)); HANDLE_CODE(bref.pack(c.total_num_pusch_sps_stti_ul_repeats_r15_present, 1)); - HANDLE_CODE(pack_enum(bref, c.semi_persist_sched_interv_ul_stti_r15)); - HANDLE_CODE(pack_enum(bref, c.implicit_release_after)); + HANDLE_CODE(c.semi_persist_sched_interv_ul_stti_r15.pack(bref)); + HANDLE_CODE(c.implicit_release_after.pack(bref)); if (c.p0_persistent_r15_present) { - HANDLE_CODE( - pack_unalign_integer(bref, c.p0_persistent_r15.p0_nominal_spusch_persistent_r15, (int8_t)-126, (int8_t)24)); - HANDLE_CODE(pack_unalign_integer(bref, c.p0_persistent_r15.p0_ue_spusch_persistent_r15, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(pack_integer(bref, c.p0_persistent_r15.p0_nominal_spusch_persistent_r15, (int8_t)-126, (int8_t)24)); + HANDLE_CODE(pack_integer(bref, c.p0_persistent_r15.p0_ue_spusch_persistent_r15, (int8_t)-8, (int8_t)7)); } if (c.p0_persistent_sf_set2_r15_present) { HANDLE_CODE(c.p0_persistent_sf_set2_r15.pack(bref)); } if (c.nof_conf_ul_sps_processes_stti_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.nof_conf_ul_sps_processes_stti_r15, (uint8_t)1, (uint8_t)12)); + HANDLE_CODE(pack_integer(bref, c.nof_conf_ul_sps_processes_stti_r15, (uint8_t)1u, (uint8_t)12u)); } - HANDLE_CODE(pack_unalign_integer(bref, c.s_tti_start_time_ul_r15, (uint8_t)0, (uint8_t)5)); + HANDLE_CODE(pack_integer(bref, c.stti_start_time_ul_r15, (uint8_t)0u, (uint8_t)5u)); if (c.tpc_pdcch_cfg_pusch_sps_r15_present) { HANDLE_CODE(c.tpc_pdcch_cfg_pusch_sps_r15.pack(bref)); } if (c.cyclic_shift_sps_s_tti_r15_present) { - HANDLE_CODE(pack_enum(bref, c.cyclic_shift_sps_s_tti_r15)); + HANDLE_CODE(c.cyclic_shift_sps_s_tti_r15.pack(bref)); } if (c.ifdma_cfg_sps_r15_present) { HANDLE_CODE(bref.pack(c.ifdma_cfg_sps_r15, 1)); } if (c.harq_proc_id_offset_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.harq_proc_id_offset_r15, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, c.harq_proc_id_offset_r15, (uint8_t)0u, (uint8_t)15u)); } if (c.rv_sps_stti_ul_repeats_r15_present) { - HANDLE_CODE(pack_enum(bref, c.rv_sps_stti_ul_repeats_r15)); + HANDLE_CODE(c.rv_sps_stti_ul_repeats_r15.pack(bref)); } if (c.sps_cfg_idx_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.sps_cfg_idx_r15, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(pack_integer(bref, c.sps_cfg_idx_r15, (uint8_t)1u, (uint8_t)6u)); } if (c.tbs_scaling_factor_subslot_sps_ul_repeats_r15_present) { - HANDLE_CODE(pack_enum(bref, c.tbs_scaling_factor_subslot_sps_ul_repeats_r15)); + HANDLE_CODE(c.tbs_scaling_factor_subslot_sps_ul_repeats_r15.pack(bref)); } if (c.total_num_pusch_sps_stti_ul_repeats_r15_present) { - HANDLE_CODE(pack_enum(bref, c.total_num_pusch_sps_stti_ul_repeats_r15)); + HANDLE_CODE(c.total_num_pusch_sps_stti_ul_repeats_r15.pack(bref)); } break; default: @@ -31814,7 +31777,7 @@ SRSASN_CODE sps_cfg_ul_stti_r15_c::pack(bit_ref& bref) const SRSASN_CODE sps_cfg_ul_stti_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -31833,44 +31796,43 @@ SRSASN_CODE sps_cfg_ul_stti_r15_c::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.sps_cfg_idx_r15_present, 1)); HANDLE_CODE(bref.unpack(c.tbs_scaling_factor_subslot_sps_ul_repeats_r15_present, 1)); HANDLE_CODE(bref.unpack(c.total_num_pusch_sps_stti_ul_repeats_r15_present, 1)); - HANDLE_CODE(unpack_enum(c.semi_persist_sched_interv_ul_stti_r15, bref)); - HANDLE_CODE(unpack_enum(c.implicit_release_after, bref)); + HANDLE_CODE(c.semi_persist_sched_interv_ul_stti_r15.unpack(bref)); + HANDLE_CODE(c.implicit_release_after.unpack(bref)); if (c.p0_persistent_r15_present) { - HANDLE_CODE(unpack_unalign_integer( - c.p0_persistent_r15.p0_nominal_spusch_persistent_r15, bref, (int8_t)-126, (int8_t)24)); HANDLE_CODE( - unpack_unalign_integer(c.p0_persistent_r15.p0_ue_spusch_persistent_r15, bref, (int8_t)-8, (int8_t)7)); + unpack_integer(c.p0_persistent_r15.p0_nominal_spusch_persistent_r15, bref, (int8_t)-126, (int8_t)24)); + HANDLE_CODE(unpack_integer(c.p0_persistent_r15.p0_ue_spusch_persistent_r15, bref, (int8_t)-8, (int8_t)7)); } if (c.p0_persistent_sf_set2_r15_present) { HANDLE_CODE(c.p0_persistent_sf_set2_r15.unpack(bref)); } if (c.nof_conf_ul_sps_processes_stti_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.nof_conf_ul_sps_processes_stti_r15, bref, (uint8_t)1, (uint8_t)12)); + HANDLE_CODE(unpack_integer(c.nof_conf_ul_sps_processes_stti_r15, bref, (uint8_t)1u, (uint8_t)12u)); } - HANDLE_CODE(unpack_unalign_integer(c.s_tti_start_time_ul_r15, bref, (uint8_t)0, (uint8_t)5)); + HANDLE_CODE(unpack_integer(c.stti_start_time_ul_r15, bref, (uint8_t)0u, (uint8_t)5u)); if (c.tpc_pdcch_cfg_pusch_sps_r15_present) { HANDLE_CODE(c.tpc_pdcch_cfg_pusch_sps_r15.unpack(bref)); } if (c.cyclic_shift_sps_s_tti_r15_present) { - HANDLE_CODE(unpack_enum(c.cyclic_shift_sps_s_tti_r15, bref)); + HANDLE_CODE(c.cyclic_shift_sps_s_tti_r15.unpack(bref)); } if (c.ifdma_cfg_sps_r15_present) { HANDLE_CODE(bref.unpack(c.ifdma_cfg_sps_r15, 1)); } if (c.harq_proc_id_offset_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.harq_proc_id_offset_r15, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(c.harq_proc_id_offset_r15, bref, (uint8_t)0u, (uint8_t)15u)); } if (c.rv_sps_stti_ul_repeats_r15_present) { - HANDLE_CODE(unpack_enum(c.rv_sps_stti_ul_repeats_r15, bref)); + HANDLE_CODE(c.rv_sps_stti_ul_repeats_r15.unpack(bref)); } if (c.sps_cfg_idx_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.sps_cfg_idx_r15, bref, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(unpack_integer(c.sps_cfg_idx_r15, bref, (uint8_t)1u, (uint8_t)6u)); } if (c.tbs_scaling_factor_subslot_sps_ul_repeats_r15_present) { - HANDLE_CODE(unpack_enum(c.tbs_scaling_factor_subslot_sps_ul_repeats_r15, bref)); + HANDLE_CODE(c.tbs_scaling_factor_subslot_sps_ul_repeats_r15.unpack(bref)); } if (c.total_num_pusch_sps_stti_ul_repeats_r15_present) { - HANDLE_CODE(unpack_enum(c.total_num_pusch_sps_stti_ul_repeats_r15, bref)); + HANDLE_CODE(c.total_num_pusch_sps_stti_ul_repeats_r15.unpack(bref)); } break; default: @@ -31904,13 +31866,13 @@ void sps_cfg_ul_stti_r15_c::setup_s_::p0_persistent_sf_set2_r15_c_::to_json(json } SRSASN_CODE sps_cfg_ul_stti_r15_c::setup_s_::p0_persistent_sf_set2_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c.p0_nominal_spusch_persistent_sf_set2_r15, (int8_t)-126, (int8_t)24)); - HANDLE_CODE(pack_unalign_integer(bref, c.p0_ue_spusch_persistent_sf_set2_r15, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(pack_integer(bref, c.p0_nominal_spusch_persistent_sf_set2_r15, (int8_t)-126, (int8_t)24)); + HANDLE_CODE(pack_integer(bref, c.p0_ue_spusch_persistent_sf_set2_r15, (int8_t)-8, (int8_t)7)); break; default: log_invalid_choice_id(type_, "sps_cfg_ul_stti_r15_c::setup_s_::p0_persistent_sf_set2_r15_c_"); @@ -31921,14 +31883,14 @@ SRSASN_CODE sps_cfg_ul_stti_r15_c::setup_s_::p0_persistent_sf_set2_r15_c_::pack( SRSASN_CODE sps_cfg_ul_stti_r15_c::setup_s_::p0_persistent_sf_set2_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c.p0_nominal_spusch_persistent_sf_set2_r15, bref, (int8_t)-126, (int8_t)24)); - HANDLE_CODE(unpack_unalign_integer(c.p0_ue_spusch_persistent_sf_set2_r15, bref, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(unpack_integer(c.p0_nominal_spusch_persistent_sf_set2_r15, bref, (int8_t)-126, (int8_t)24)); + HANDLE_CODE(unpack_integer(c.p0_ue_spusch_persistent_sf_set2_r15, bref, (int8_t)-8, (int8_t)7)); break; default: log_invalid_choice_id(type_, "sps_cfg_ul_stti_r15_c::setup_s_::p0_persistent_sf_set2_r15_c_"); @@ -31978,7 +31940,7 @@ void spucch_cfg_r15_c::to_json(json_writer& j) const } SRSASN_CODE spucch_cfg_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -31988,11 +31950,8 @@ SRSASN_CODE spucch_cfg_r15_c::pack(bit_ref& bref) const if (c.spucch_set_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, c.spucch_set_r15, 1, 4)); } - HANDLE_CODE(pack_dyn_seq_of(bref, - c.two_ant_port_activ_spucch_format3_r15.n3_spucch_an_list_r15, - 1, - 4, - UnalignedIntegerPacker(0, 549))); + HANDLE_CODE(pack_dyn_seq_of( + bref, c.two_ant_port_activ_spucch_format3_r15.n3_spucch_an_list_r15, 1, 4, integer_packer(0, 549))); break; default: log_invalid_choice_id(type_, "spucch_cfg_r15_c"); @@ -32003,7 +31962,7 @@ SRSASN_CODE spucch_cfg_r15_c::pack(bit_ref& bref) const SRSASN_CODE spucch_cfg_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -32014,11 +31973,8 @@ SRSASN_CODE spucch_cfg_r15_c::unpack(bit_ref& bref) if (c.spucch_set_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(c.spucch_set_r15, bref, 1, 4)); } - HANDLE_CODE(unpack_dyn_seq_of(c.two_ant_port_activ_spucch_format3_r15.n3_spucch_an_list_r15, - bref, - 1, - 4, - UnalignedIntegerPacker(0, 549))); + HANDLE_CODE(unpack_dyn_seq_of( + c.two_ant_port_activ_spucch_format3_r15.n3_spucch_an_list_r15, bref, 1, 4, integer_packer(0, 549))); break; default: log_invalid_choice_id(type_, "spucch_cfg_r15_c"); @@ -32030,15 +31986,15 @@ SRSASN_CODE spucch_cfg_r15_c::unpack(bit_ref& bref) // SRS-CC-SetIndex-r14 ::= SEQUENCE SRSASN_CODE srs_cc_set_idx_r14_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, cc_set_idx_r14, (uint8_t)0, (uint8_t)3)); - HANDLE_CODE(pack_unalign_integer(bref, cc_idx_in_one_cc_set_r14, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, cc_set_idx_r14, (uint8_t)0u, (uint8_t)3u)); + HANDLE_CODE(pack_integer(bref, cc_idx_in_one_cc_set_r14, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } SRSASN_CODE srs_cc_set_idx_r14_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(cc_set_idx_r14, bref, (uint8_t)0, (uint8_t)3)); - HANDLE_CODE(unpack_unalign_integer(cc_idx_in_one_cc_set_r14, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(cc_set_idx_r14, bref, (uint8_t)0u, (uint8_t)3u)); + HANDLE_CODE(unpack_integer(cc_idx_in_one_cc_set_r14, bref, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } @@ -32053,21 +32009,21 @@ void srs_cc_set_idx_r14_s::to_json(json_writer& j) const // SRS-ConfigAp-r10 ::= SEQUENCE SRSASN_CODE srs_cfg_ap_r10_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, srs_ant_port_ap_r10)); - HANDLE_CODE(pack_enum(bref, srs_bw_ap_r10)); - HANDLE_CODE(pack_unalign_integer(bref, freq_domain_position_ap_r10, (uint8_t)0, (uint8_t)23)); - HANDLE_CODE(pack_unalign_integer(bref, tx_comb_ap_r10, (uint8_t)0, (uint8_t)1)); - HANDLE_CODE(pack_enum(bref, cyclic_shift_ap_r10)); + HANDLE_CODE(srs_ant_port_ap_r10.pack(bref)); + HANDLE_CODE(srs_bw_ap_r10.pack(bref)); + HANDLE_CODE(pack_integer(bref, freq_domain_position_ap_r10, (uint8_t)0u, (uint8_t)23u)); + HANDLE_CODE(pack_integer(bref, tx_comb_ap_r10, (uint8_t)0u, (uint8_t)1u)); + HANDLE_CODE(cyclic_shift_ap_r10.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE srs_cfg_ap_r10_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(srs_ant_port_ap_r10, bref)); - HANDLE_CODE(unpack_enum(srs_bw_ap_r10, bref)); - HANDLE_CODE(unpack_unalign_integer(freq_domain_position_ap_r10, bref, (uint8_t)0, (uint8_t)23)); - HANDLE_CODE(unpack_unalign_integer(tx_comb_ap_r10, bref, (uint8_t)0, (uint8_t)1)); - HANDLE_CODE(unpack_enum(cyclic_shift_ap_r10, bref)); + HANDLE_CODE(srs_ant_port_ap_r10.unpack(bref)); + HANDLE_CODE(srs_bw_ap_r10.unpack(bref)); + HANDLE_CODE(unpack_integer(freq_domain_position_ap_r10, bref, (uint8_t)0u, (uint8_t)23u)); + HANDLE_CODE(unpack_integer(tx_comb_ap_r10, bref, (uint8_t)0u, (uint8_t)1u)); + HANDLE_CODE(cyclic_shift_ap_r10.unpack(bref)); return SRSASN_SUCCESS; } @@ -32085,23 +32041,23 @@ void srs_cfg_ap_r10_s::to_json(json_writer& j) const // SRS-ConfigAp-r13 ::= SEQUENCE SRSASN_CODE srs_cfg_ap_r13_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, srs_ant_port_ap_r13)); - HANDLE_CODE(pack_enum(bref, srs_bw_ap_r13)); - HANDLE_CODE(pack_unalign_integer(bref, freq_domain_position_ap_r13, (uint8_t)0, (uint8_t)23)); - HANDLE_CODE(pack_unalign_integer(bref, tx_comb_ap_r13, (uint8_t)0, (uint8_t)3)); - HANDLE_CODE(pack_enum(bref, cyclic_shift_ap_r13)); - HANDLE_CODE(pack_enum(bref, tx_comb_num_r13)); + HANDLE_CODE(srs_ant_port_ap_r13.pack(bref)); + HANDLE_CODE(srs_bw_ap_r13.pack(bref)); + HANDLE_CODE(pack_integer(bref, freq_domain_position_ap_r13, (uint8_t)0u, (uint8_t)23u)); + HANDLE_CODE(pack_integer(bref, tx_comb_ap_r13, (uint8_t)0u, (uint8_t)3u)); + HANDLE_CODE(cyclic_shift_ap_r13.pack(bref)); + HANDLE_CODE(tx_comb_num_r13.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE srs_cfg_ap_r13_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(srs_ant_port_ap_r13, bref)); - HANDLE_CODE(unpack_enum(srs_bw_ap_r13, bref)); - HANDLE_CODE(unpack_unalign_integer(freq_domain_position_ap_r13, bref, (uint8_t)0, (uint8_t)23)); - HANDLE_CODE(unpack_unalign_integer(tx_comb_ap_r13, bref, (uint8_t)0, (uint8_t)3)); - HANDLE_CODE(unpack_enum(cyclic_shift_ap_r13, bref)); - HANDLE_CODE(unpack_enum(tx_comb_num_r13, bref)); + HANDLE_CODE(srs_ant_port_ap_r13.unpack(bref)); + HANDLE_CODE(srs_bw_ap_r13.unpack(bref)); + HANDLE_CODE(unpack_integer(freq_domain_position_ap_r13, bref, (uint8_t)0u, (uint8_t)23u)); + HANDLE_CODE(unpack_integer(tx_comb_ap_r13, bref, (uint8_t)0u, (uint8_t)3u)); + HANDLE_CODE(cyclic_shift_ap_r13.unpack(bref)); + HANDLE_CODE(tx_comb_num_r13.unpack(bref)); return SRSASN_SUCCESS; } @@ -32125,13 +32081,13 @@ SRSASN_CODE srs_cfg_ap_v1310_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(tx_comb_num_r13_present, 1)); if (tx_comb_ap_v1310_present) { - HANDLE_CODE(pack_unalign_integer(bref, tx_comb_ap_v1310, (uint8_t)2, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, tx_comb_ap_v1310, (uint8_t)2u, (uint8_t)3u)); } if (cyclic_shift_ap_v1310_present) { - HANDLE_CODE(pack_enum(bref, cyclic_shift_ap_v1310)); + HANDLE_CODE(cyclic_shift_ap_v1310.pack(bref)); } if (tx_comb_num_r13_present) { - HANDLE_CODE(pack_enum(bref, tx_comb_num_r13)); + HANDLE_CODE(tx_comb_num_r13.pack(bref)); } return SRSASN_SUCCESS; @@ -32143,13 +32099,13 @@ SRSASN_CODE srs_cfg_ap_v1310_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(tx_comb_num_r13_present, 1)); if (tx_comb_ap_v1310_present) { - HANDLE_CODE(unpack_unalign_integer(tx_comb_ap_v1310, bref, (uint8_t)2, (uint8_t)3)); + HANDLE_CODE(unpack_integer(tx_comb_ap_v1310, bref, (uint8_t)2u, (uint8_t)3u)); } if (cyclic_shift_ap_v1310_present) { - HANDLE_CODE(unpack_enum(cyclic_shift_ap_v1310, bref)); + HANDLE_CODE(cyclic_shift_ap_v1310.unpack(bref)); } if (tx_comb_num_r13_present) { - HANDLE_CODE(unpack_enum(tx_comb_num_r13, bref)); + HANDLE_CODE(tx_comb_num_r13.unpack(bref)); } return SRSASN_SUCCESS; @@ -32173,16 +32129,16 @@ void srs_cfg_ap_v1310_s::to_json(json_writer& j) const SRSASN_CODE stag_to_add_mod_r11_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, stag_id_r11, (uint8_t)1, (uint8_t)3)); - HANDLE_CODE(pack_enum(bref, time_align_timer_stag_r11)); + HANDLE_CODE(pack_integer(bref, stag_id_r11, (uint8_t)1u, (uint8_t)3u)); + HANDLE_CODE(time_align_timer_stag_r11.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE stag_to_add_mod_r11_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(stag_id_r11, bref, (uint8_t)1, (uint8_t)3)); - HANDLE_CODE(unpack_enum(time_align_timer_stag_r11, bref)); + HANDLE_CODE(unpack_integer(stag_id_r11, bref, (uint8_t)1u, (uint8_t)3u)); + HANDLE_CODE(time_align_timer_stag_r11.unpack(bref)); return SRSASN_SUCCESS; } @@ -32237,7 +32193,7 @@ void sched_request_cfg_v1530_c::to_json(json_writer& j) const } SRSASN_CODE sched_request_cfg_v1530_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -32248,22 +32204,21 @@ SRSASN_CODE sched_request_cfg_v1530_c::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.sr_cfg_idx_slot_r15_present, 1)); HANDLE_CODE(bref.pack(c.sr_cfg_idx_subslot_r15_present, 1)); if (c.sr_slot_spucch_idx_fh_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.sr_slot_spucch_idx_fh_r15, (uint16_t)0, (uint16_t)1319)); + HANDLE_CODE(pack_integer(bref, c.sr_slot_spucch_idx_fh_r15, (uint16_t)0u, (uint16_t)1319u)); } if (c.sr_slot_spucch_idx_no_fh_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.sr_slot_spucch_idx_no_fh_r15, (uint16_t)0, (uint16_t)3959)); + HANDLE_CODE(pack_integer(bref, c.sr_slot_spucch_idx_no_fh_r15, (uint16_t)0u, (uint16_t)3959u)); } if (c.sr_subslot_spucch_res_list_r15_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, c.sr_subslot_spucch_res_list_r15, 1, 4, UnalignedIntegerPacker(0, 1319))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.sr_subslot_spucch_res_list_r15, 1, 4, integer_packer(0, 1319))); } if (c.sr_cfg_idx_slot_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.sr_cfg_idx_slot_r15, (uint8_t)0, (uint8_t)36)); + HANDLE_CODE(pack_integer(bref, c.sr_cfg_idx_slot_r15, (uint8_t)0u, (uint8_t)36u)); } if (c.sr_cfg_idx_subslot_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.sr_cfg_idx_subslot_r15, (uint8_t)0, (uint8_t)122)); + HANDLE_CODE(pack_integer(bref, c.sr_cfg_idx_subslot_r15, (uint8_t)0u, (uint8_t)122u)); } - HANDLE_CODE(pack_enum(bref, c.dssr_trans_max_r15)); + HANDLE_CODE(c.dssr_trans_max_r15.pack(bref)); break; default: log_invalid_choice_id(type_, "sched_request_cfg_v1530_c"); @@ -32274,7 +32229,7 @@ SRSASN_CODE sched_request_cfg_v1530_c::pack(bit_ref& bref) const SRSASN_CODE sched_request_cfg_v1530_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -32286,22 +32241,21 @@ SRSASN_CODE sched_request_cfg_v1530_c::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.sr_cfg_idx_slot_r15_present, 1)); HANDLE_CODE(bref.unpack(c.sr_cfg_idx_subslot_r15_present, 1)); if (c.sr_slot_spucch_idx_fh_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.sr_slot_spucch_idx_fh_r15, bref, (uint16_t)0, (uint16_t)1319)); + HANDLE_CODE(unpack_integer(c.sr_slot_spucch_idx_fh_r15, bref, (uint16_t)0u, (uint16_t)1319u)); } if (c.sr_slot_spucch_idx_no_fh_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.sr_slot_spucch_idx_no_fh_r15, bref, (uint16_t)0, (uint16_t)3959)); + HANDLE_CODE(unpack_integer(c.sr_slot_spucch_idx_no_fh_r15, bref, (uint16_t)0u, (uint16_t)3959u)); } if (c.sr_subslot_spucch_res_list_r15_present) { - HANDLE_CODE( - unpack_dyn_seq_of(c.sr_subslot_spucch_res_list_r15, bref, 1, 4, UnalignedIntegerPacker(0, 1319))); + HANDLE_CODE(unpack_dyn_seq_of(c.sr_subslot_spucch_res_list_r15, bref, 1, 4, integer_packer(0, 1319))); } if (c.sr_cfg_idx_slot_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.sr_cfg_idx_slot_r15, bref, (uint8_t)0, (uint8_t)36)); + HANDLE_CODE(unpack_integer(c.sr_cfg_idx_slot_r15, bref, (uint8_t)0u, (uint8_t)36u)); } if (c.sr_cfg_idx_subslot_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.sr_cfg_idx_subslot_r15, bref, (uint8_t)0, (uint8_t)122)); + HANDLE_CODE(unpack_integer(c.sr_cfg_idx_subslot_r15, bref, (uint8_t)0u, (uint8_t)122u)); } - HANDLE_CODE(unpack_enum(c.dssr_trans_max_r15, bref)); + HANDLE_CODE(c.dssr_trans_max_r15.unpack(bref)); break; default: log_invalid_choice_id(type_, "sched_request_cfg_v1530_c"); @@ -32317,10 +32271,10 @@ SRSASN_CODE short_tti_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(ul_stti_len_r15_present, 1)); if (dl_stti_len_r15_present) { - HANDLE_CODE(pack_enum(bref, dl_stti_len_r15)); + HANDLE_CODE(dl_stti_len_r15.pack(bref)); } if (ul_stti_len_r15_present) { - HANDLE_CODE(pack_enum(bref, ul_stti_len_r15)); + HANDLE_CODE(ul_stti_len_r15.pack(bref)); } return SRSASN_SUCCESS; @@ -32331,10 +32285,10 @@ SRSASN_CODE short_tti_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ul_stti_len_r15_present, 1)); if (dl_stti_len_r15_present) { - HANDLE_CODE(unpack_enum(dl_stti_len_r15, bref)); + HANDLE_CODE(dl_stti_len_r15.unpack(bref)); } if (ul_stti_len_r15_present) { - HANDLE_CODE(unpack_enum(ul_stti_len_r15, bref)); + HANDLE_CODE(ul_stti_len_r15.unpack(bref)); } return SRSASN_SUCCESS; @@ -32392,7 +32346,7 @@ void slot_or_subslot_pdsch_cfg_r15_c::to_json(json_writer& j) const } SRSASN_CODE slot_or_subslot_pdsch_cfg_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -32405,13 +32359,13 @@ SRSASN_CODE slot_or_subslot_pdsch_cfg_r15_c::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.tbs_idx_alt2_stti_r15_present, 1)); HANDLE_CODE(bref.pack(c.tbs_idx_alt3_stti_r15_present, 1)); if (c.alt_cqi_table_stti_r15_present) { - HANDLE_CODE(pack_enum(bref, c.alt_cqi_table_stti_r15)); + HANDLE_CODE(c.alt_cqi_table_stti_r15.pack(bref)); } if (c.alt_cqi_table1024_qam_stti_r15_present) { - HANDLE_CODE(pack_enum(bref, c.alt_cqi_table1024_qam_stti_r15)); + HANDLE_CODE(c.alt_cqi_table1024_qam_stti_r15.pack(bref)); } if (c.res_alloc_r15_present) { - HANDLE_CODE(pack_enum(bref, c.res_alloc_r15)); + HANDLE_CODE(c.res_alloc_r15.pack(bref)); } break; default: @@ -32423,7 +32377,7 @@ SRSASN_CODE slot_or_subslot_pdsch_cfg_r15_c::pack(bit_ref& bref) const SRSASN_CODE slot_or_subslot_pdsch_cfg_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -32437,13 +32391,13 @@ SRSASN_CODE slot_or_subslot_pdsch_cfg_r15_c::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.tbs_idx_alt2_stti_r15_present, 1)); HANDLE_CODE(bref.unpack(c.tbs_idx_alt3_stti_r15_present, 1)); if (c.alt_cqi_table_stti_r15_present) { - HANDLE_CODE(unpack_enum(c.alt_cqi_table_stti_r15, bref)); + HANDLE_CODE(c.alt_cqi_table_stti_r15.unpack(bref)); } if (c.alt_cqi_table1024_qam_stti_r15_present) { - HANDLE_CODE(unpack_enum(c.alt_cqi_table1024_qam_stti_r15, bref)); + HANDLE_CODE(c.alt_cqi_table1024_qam_stti_r15.unpack(bref)); } if (c.res_alloc_r15_present) { - HANDLE_CODE(unpack_enum(c.res_alloc_r15, bref)); + HANDLE_CODE(c.res_alloc_r15.unpack(bref)); } break; default: @@ -32520,7 +32474,7 @@ void slot_or_subslot_pusch_cfg_r15_c::to_json(json_writer& j) const } SRSASN_CODE slot_or_subslot_pusch_cfg_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -32537,37 +32491,34 @@ SRSASN_CODE slot_or_subslot_pusch_cfg_r15_c::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.enable256_qam_slot_or_subslot_r15_present, 1)); HANDLE_CODE(bref.pack(c.res_alloc_offset_r15_present, 1)); if (c.beta_offset_slot_ack_idx_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.beta_offset_slot_ack_idx_r15, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, c.beta_offset_slot_ack_idx_r15, (uint8_t)0u, (uint8_t)15u)); } if (c.beta_offset2_slot_ack_idx_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.beta_offset2_slot_ack_idx_r15, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, c.beta_offset2_slot_ack_idx_r15, (uint8_t)0u, (uint8_t)15u)); } if (c.beta_offset_subslot_ack_idx_r15_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, c.beta_offset_subslot_ack_idx_r15, 1, 2, UnalignedIntegerPacker(0, 15))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.beta_offset_subslot_ack_idx_r15, 1, 2, integer_packer(0, 15))); } if (c.beta_offset2_subslot_ack_idx_r15_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, c.beta_offset2_subslot_ack_idx_r15, 1, 2, UnalignedIntegerPacker(0, 15))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.beta_offset2_subslot_ack_idx_r15, 1, 2, integer_packer(0, 15))); } if (c.beta_offset_slot_ri_idx_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.beta_offset_slot_ri_idx_r15, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, c.beta_offset_slot_ri_idx_r15, (uint8_t)0u, (uint8_t)15u)); } if (c.beta_offset_subslot_ri_idx_r15_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, c.beta_offset_subslot_ri_idx_r15, 1, 2, UnalignedIntegerPacker(0, 15))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.beta_offset_subslot_ri_idx_r15, 1, 2, integer_packer(0, 15))); } if (c.beta_offset_slot_cqi_idx_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.beta_offset_slot_cqi_idx_r15, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, c.beta_offset_slot_cqi_idx_r15, (uint8_t)0u, (uint8_t)15u)); } if (c.beta_offset_subslot_cqi_idx_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.beta_offset_subslot_cqi_idx_r15, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, c.beta_offset_subslot_cqi_idx_r15, (uint8_t)0u, (uint8_t)15u)); } if (c.enable256_qam_slot_or_subslot_r15_present) { HANDLE_CODE(c.enable256_qam_slot_or_subslot_r15.pack(bref)); } if (c.res_alloc_offset_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.res_alloc_offset_r15, (uint8_t)1, (uint8_t)2)); + HANDLE_CODE(pack_integer(bref, c.res_alloc_offset_r15, (uint8_t)1u, (uint8_t)2u)); } HANDLE_CODE(bref.pack(c.ul_dmrs_ifdma_slot_or_subslot_r15, 1)); break; @@ -32580,7 +32531,7 @@ SRSASN_CODE slot_or_subslot_pusch_cfg_r15_c::pack(bit_ref& bref) const SRSASN_CODE slot_or_subslot_pusch_cfg_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -32598,37 +32549,34 @@ SRSASN_CODE slot_or_subslot_pusch_cfg_r15_c::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.enable256_qam_slot_or_subslot_r15_present, 1)); HANDLE_CODE(bref.unpack(c.res_alloc_offset_r15_present, 1)); if (c.beta_offset_slot_ack_idx_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.beta_offset_slot_ack_idx_r15, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(c.beta_offset_slot_ack_idx_r15, bref, (uint8_t)0u, (uint8_t)15u)); } if (c.beta_offset2_slot_ack_idx_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.beta_offset2_slot_ack_idx_r15, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(c.beta_offset2_slot_ack_idx_r15, bref, (uint8_t)0u, (uint8_t)15u)); } if (c.beta_offset_subslot_ack_idx_r15_present) { - HANDLE_CODE( - unpack_dyn_seq_of(c.beta_offset_subslot_ack_idx_r15, bref, 1, 2, UnalignedIntegerPacker(0, 15))); + HANDLE_CODE(unpack_dyn_seq_of(c.beta_offset_subslot_ack_idx_r15, bref, 1, 2, integer_packer(0, 15))); } if (c.beta_offset2_subslot_ack_idx_r15_present) { - HANDLE_CODE( - unpack_dyn_seq_of(c.beta_offset2_subslot_ack_idx_r15, bref, 1, 2, UnalignedIntegerPacker(0, 15))); + HANDLE_CODE(unpack_dyn_seq_of(c.beta_offset2_subslot_ack_idx_r15, bref, 1, 2, integer_packer(0, 15))); } if (c.beta_offset_slot_ri_idx_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.beta_offset_slot_ri_idx_r15, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(c.beta_offset_slot_ri_idx_r15, bref, (uint8_t)0u, (uint8_t)15u)); } if (c.beta_offset_subslot_ri_idx_r15_present) { - HANDLE_CODE( - unpack_dyn_seq_of(c.beta_offset_subslot_ri_idx_r15, bref, 1, 2, UnalignedIntegerPacker(0, 15))); + HANDLE_CODE(unpack_dyn_seq_of(c.beta_offset_subslot_ri_idx_r15, bref, 1, 2, integer_packer(0, 15))); } if (c.beta_offset_slot_cqi_idx_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.beta_offset_slot_cqi_idx_r15, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(c.beta_offset_slot_cqi_idx_r15, bref, (uint8_t)0u, (uint8_t)15u)); } if (c.beta_offset_subslot_cqi_idx_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.beta_offset_subslot_cqi_idx_r15, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(c.beta_offset_subslot_cqi_idx_r15, bref, (uint8_t)0u, (uint8_t)15u)); } if (c.enable256_qam_slot_or_subslot_r15_present) { HANDLE_CODE(c.enable256_qam_slot_or_subslot_r15.unpack(bref)); } if (c.res_alloc_offset_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.res_alloc_offset_r15, bref, (uint8_t)1, (uint8_t)2)); + HANDLE_CODE(unpack_integer(c.res_alloc_offset_r15, bref, (uint8_t)1u, (uint8_t)2u)); } HANDLE_CODE(bref.unpack(c.ul_dmrs_ifdma_slot_or_subslot_r15, 1)); break; @@ -32668,7 +32616,7 @@ void tdd_pusch_up_pts_r14_c::to_json(json_writer& j) const } SRSASN_CODE tdd_pusch_up_pts_r14_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -32676,7 +32624,7 @@ SRSASN_CODE tdd_pusch_up_pts_r14_c::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.sym_pusch_up_pts_r14_present, 1)); HANDLE_CODE(bref.pack(c.dmrs_less_up_pts_cfg_r14_present, 1)); if (c.sym_pusch_up_pts_r14_present) { - HANDLE_CODE(pack_enum(bref, c.sym_pusch_up_pts_r14)); + HANDLE_CODE(c.sym_pusch_up_pts_r14.pack(bref)); } break; default: @@ -32688,7 +32636,7 @@ SRSASN_CODE tdd_pusch_up_pts_r14_c::pack(bit_ref& bref) const SRSASN_CODE tdd_pusch_up_pts_r14_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -32697,7 +32645,7 @@ SRSASN_CODE tdd_pusch_up_pts_r14_c::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.sym_pusch_up_pts_r14_present, 1)); HANDLE_CODE(bref.unpack(c.dmrs_less_up_pts_cfg_r14_present, 1)); if (c.sym_pusch_up_pts_r14_present) { - HANDLE_CODE(unpack_enum(c.sym_pusch_up_pts_r14, bref)); + HANDLE_CODE(c.sym_pusch_up_pts_r14.unpack(bref)); } break; default: @@ -32749,7 +32697,7 @@ SRSASN_CODE ant_info_ded_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(codebook_subset_restrict_present, 1)); - HANDLE_CODE(pack_enum(bref, tx_mode)); + HANDLE_CODE(tx_mode.pack(bref)); if (codebook_subset_restrict_present) { HANDLE_CODE(codebook_subset_restrict.pack(bref)); } @@ -32761,7 +32709,7 @@ SRSASN_CODE ant_info_ded_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(codebook_subset_restrict_present, 1)); - HANDLE_CODE(unpack_enum(tx_mode, bref)); + HANDLE_CODE(tx_mode.unpack(bref)); if (codebook_subset_restrict_present) { HANDLE_CODE(codebook_subset_restrict.unpack(bref)); } @@ -32958,7 +32906,7 @@ void ant_info_ded_s::codebook_subset_restrict_c_::to_json(json_writer& j) const } SRSASN_CODE ant_info_ded_s::codebook_subset_restrict_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::n2_tx_ant_tm3: HANDLE_CODE(c.get >().pack(bref)); @@ -32993,7 +32941,7 @@ SRSASN_CODE ant_info_ded_s::codebook_subset_restrict_c_::pack(bit_ref& bref) con SRSASN_CODE ant_info_ded_s::codebook_subset_restrict_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::n2_tx_ant_tm3: @@ -33047,12 +32995,12 @@ void ant_info_ded_s::ue_tx_ant_sel_c_::to_json(json_writer& j) const } SRSASN_CODE ant_info_ded_s::ue_tx_ant_sel_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c)); + HANDLE_CODE(c.pack(bref)); break; default: log_invalid_choice_id(type_, "ant_info_ded_s::ue_tx_ant_sel_c_"); @@ -33063,13 +33011,13 @@ SRSASN_CODE ant_info_ded_s::ue_tx_ant_sel_c_::pack(bit_ref& bref) const SRSASN_CODE ant_info_ded_s::ue_tx_ant_sel_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c, bref)); + HANDLE_CODE(c.unpack(bref)); break; default: log_invalid_choice_id(type_, "ant_info_ded_s::ue_tx_ant_sel_c_"); @@ -33083,7 +33031,7 @@ SRSASN_CODE ant_info_ded_r10_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(codebook_subset_restrict_r10_present, 1)); - HANDLE_CODE(pack_enum(bref, tx_mode_r10)); + HANDLE_CODE(tx_mode_r10.pack(bref)); if (codebook_subset_restrict_r10_present) { HANDLE_CODE(codebook_subset_restrict_r10.pack(bref)); } @@ -33095,7 +33043,7 @@ SRSASN_CODE ant_info_ded_r10_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(codebook_subset_restrict_r10_present, 1)); - HANDLE_CODE(unpack_enum(tx_mode_r10, bref)); + HANDLE_CODE(tx_mode_r10.unpack(bref)); if (codebook_subset_restrict_r10_present) { HANDLE_CODE(codebook_subset_restrict_r10.unpack(bref)); } @@ -33135,12 +33083,12 @@ void ant_info_ded_r10_s::ue_tx_ant_sel_c_::to_json(json_writer& j) const } SRSASN_CODE ant_info_ded_r10_s::ue_tx_ant_sel_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c)); + HANDLE_CODE(c.pack(bref)); break; default: log_invalid_choice_id(type_, "ant_info_ded_r10_s::ue_tx_ant_sel_c_"); @@ -33151,13 +33099,13 @@ SRSASN_CODE ant_info_ded_r10_s::ue_tx_ant_sel_c_::pack(bit_ref& bref) const SRSASN_CODE ant_info_ded_r10_s::ue_tx_ant_sel_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c, bref)); + HANDLE_CODE(c.unpack(bref)); break; default: log_invalid_choice_id(type_, "ant_info_ded_r10_s::ue_tx_ant_sel_c_"); @@ -33169,20 +33117,20 @@ SRSASN_CODE ant_info_ded_r10_s::ue_tx_ant_sel_c_::unpack(bit_ref& bref) // AntennaInfoDedicated-v1250 ::= SEQUENCE SRSASN_CODE ant_info_ded_v1250_s::pack(bit_ref& bref) const { - HANDLE_CODE(bref.pack(alternative_codebook_enabled_for4_tx_r12, 1)); + HANDLE_CODE(bref.pack(alt_codebook_enabled_for4_tx_r12, 1)); return SRSASN_SUCCESS; } SRSASN_CODE ant_info_ded_v1250_s::unpack(bit_ref& bref) { - HANDLE_CODE(bref.unpack(alternative_codebook_enabled_for4_tx_r12, 1)); + HANDLE_CODE(bref.unpack(alt_codebook_enabled_for4_tx_r12, 1)); return SRSASN_SUCCESS; } void ant_info_ded_v1250_s::to_json(json_writer& j) const { j.start_obj(); - j.write_bool("alternativeCodebookEnabledFor4TX-r12", alternative_codebook_enabled_for4_tx_r12); + j.write_bool("alternativeCodebookEnabledFor4TX-r12", alt_codebook_enabled_for4_tx_r12); j.end_obj(); } @@ -33230,7 +33178,7 @@ void ant_info_ded_v1530_c::to_json(json_writer& j) const } SRSASN_CODE ant_info_ded_v1530_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -33246,7 +33194,7 @@ SRSASN_CODE ant_info_ded_v1530_c::pack(bit_ref& bref) const SRSASN_CODE ant_info_ded_v1530_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -33281,12 +33229,12 @@ void ant_info_ded_v1530_c::setup_c_::to_json(json_writer& j) const } SRSASN_CODE ant_info_ded_v1530_c::setup_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ue_tx_ant_sel_srs_minus1_t4_r_cfg_r15: break; case types::ue_tx_ant_sel_srs_minus2_t4_r_nr_of_pairs_r15: - HANDLE_CODE(pack_enum(bref, c)); + HANDLE_CODE(c.pack(bref)); break; default: log_invalid_choice_id(type_, "ant_info_ded_v1530_c::setup_c_"); @@ -33297,13 +33245,13 @@ SRSASN_CODE ant_info_ded_v1530_c::setup_c_::pack(bit_ref& bref) const SRSASN_CODE ant_info_ded_v1530_c::setup_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ue_tx_ant_sel_srs_minus1_t4_r_cfg_r15: break; case types::ue_tx_ant_sel_srs_minus2_t4_r_nr_of_pairs_r15: - HANDLE_CODE(unpack_enum(c, bref)); + HANDLE_CODE(c.unpack(bref)); break; default: log_invalid_choice_id(type_, "ant_info_ded_v1530_c::setup_c_"); @@ -33429,7 +33377,7 @@ void ant_info_ded_v920_s::codebook_subset_restrict_v920_c_::to_json(json_writer& } SRSASN_CODE ant_info_ded_v920_s::codebook_subset_restrict_v920_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::n2_tx_ant_tm8_r9: HANDLE_CODE(c.get >().pack(bref)); @@ -33446,7 +33394,7 @@ SRSASN_CODE ant_info_ded_v920_s::codebook_subset_restrict_v920_c_::pack(bit_ref& SRSASN_CODE ant_info_ded_v920_s::codebook_subset_restrict_v920_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::n2_tx_ant_tm8_r9: @@ -33469,7 +33417,7 @@ SRSASN_CODE ant_info_ul_r10_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(four_ant_port_activ_r10_present, 1)); if (tx_mode_ul_r10_present) { - HANDLE_CODE(pack_enum(bref, tx_mode_ul_r10)); + HANDLE_CODE(tx_mode_ul_r10.pack(bref)); } return SRSASN_SUCCESS; @@ -33480,7 +33428,7 @@ SRSASN_CODE ant_info_ul_r10_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(four_ant_port_activ_r10_present, 1)); if (tx_mode_ul_r10_present) { - HANDLE_CODE(unpack_enum(tx_mode_ul_r10, bref)); + HANDLE_CODE(tx_mode_ul_r10.unpack(bref)); } return SRSASN_SUCCESS; @@ -33500,15 +33448,15 @@ void ant_info_ul_r10_s::to_json(json_writer& j) const // BandClassPriority1XRTT ::= SEQUENCE SRSASN_CODE band_class_prio1_xrtt_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, band_class)); - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_prio, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(band_class.pack(bref)); + HANDLE_CODE(pack_integer(bref, cell_resel_prio, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } SRSASN_CODE band_class_prio1_xrtt_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(band_class, bref)); - HANDLE_CODE(unpack_unalign_integer(cell_resel_prio, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(band_class.unpack(bref)); + HANDLE_CODE(unpack_integer(cell_resel_prio, bref, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } @@ -33523,15 +33471,15 @@ void band_class_prio1_xrtt_s::to_json(json_writer& j) const // BandClassPriorityHRPD ::= SEQUENCE SRSASN_CODE band_class_prio_hrpd_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, band_class)); - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_prio, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(band_class.pack(bref)); + HANDLE_CODE(pack_integer(bref, cell_resel_prio, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } SRSASN_CODE band_class_prio_hrpd_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(band_class, bref)); - HANDLE_CODE(unpack_unalign_integer(cell_resel_prio, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(band_class.unpack(bref)); + HANDLE_CODE(unpack_integer(cell_resel_prio, bref, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } @@ -33552,16 +33500,16 @@ SRSASN_CODE cfi_cfg_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(cfi_slot_subslot_mbsfn_r15_present, 1)); if (cfi_sf_non_mbsfn_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, cfi_sf_non_mbsfn_r15, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, cfi_sf_non_mbsfn_r15, (uint8_t)1u, (uint8_t)4u)); } if (cfi_slot_subslot_non_mbsfn_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, cfi_slot_subslot_non_mbsfn_r15, (uint8_t)1, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, cfi_slot_subslot_non_mbsfn_r15, (uint8_t)1u, (uint8_t)3u)); } if (cfi_sf_mbsfn_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, cfi_sf_mbsfn_r15, (uint8_t)1, (uint8_t)2)); + HANDLE_CODE(pack_integer(bref, cfi_sf_mbsfn_r15, (uint8_t)1u, (uint8_t)2u)); } if (cfi_slot_subslot_mbsfn_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, cfi_slot_subslot_mbsfn_r15, (uint8_t)1, (uint8_t)2)); + HANDLE_CODE(pack_integer(bref, cfi_slot_subslot_mbsfn_r15, (uint8_t)1u, (uint8_t)2u)); } return SRSASN_SUCCESS; @@ -33574,16 +33522,16 @@ SRSASN_CODE cfi_cfg_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(cfi_slot_subslot_mbsfn_r15_present, 1)); if (cfi_sf_non_mbsfn_r15_present) { - HANDLE_CODE(unpack_unalign_integer(cfi_sf_non_mbsfn_r15, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(unpack_integer(cfi_sf_non_mbsfn_r15, bref, (uint8_t)1u, (uint8_t)4u)); } if (cfi_slot_subslot_non_mbsfn_r15_present) { - HANDLE_CODE(unpack_unalign_integer(cfi_slot_subslot_non_mbsfn_r15, bref, (uint8_t)1, (uint8_t)3)); + HANDLE_CODE(unpack_integer(cfi_slot_subslot_non_mbsfn_r15, bref, (uint8_t)1u, (uint8_t)3u)); } if (cfi_sf_mbsfn_r15_present) { - HANDLE_CODE(unpack_unalign_integer(cfi_sf_mbsfn_r15, bref, (uint8_t)1, (uint8_t)2)); + HANDLE_CODE(unpack_integer(cfi_sf_mbsfn_r15, bref, (uint8_t)1u, (uint8_t)2u)); } if (cfi_slot_subslot_mbsfn_r15_present) { - HANDLE_CODE(unpack_unalign_integer(cfi_slot_subslot_mbsfn_r15, bref, (uint8_t)1, (uint8_t)2)); + HANDLE_CODE(unpack_integer(cfi_slot_subslot_mbsfn_r15, bref, (uint8_t)1u, (uint8_t)2u)); } return SRSASN_SUCCESS; @@ -33613,14 +33561,12 @@ SRSASN_CODE cfi_pattern_cfg_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(cfi_pattern_slot_subslot_r15_present, 1)); if (cfi_pattern_sf_r15_present) { - HANDLE_CODE(pack_fixed_seq_of( - bref, &(cfi_pattern_sf_r15)[0], cfi_pattern_sf_r15.size(), UnalignedIntegerPacker(1, 4))); + HANDLE_CODE( + pack_fixed_seq_of(bref, &(cfi_pattern_sf_r15)[0], cfi_pattern_sf_r15.size(), integer_packer(1, 4))); } if (cfi_pattern_slot_subslot_r15_present) { - HANDLE_CODE(pack_fixed_seq_of(bref, - &(cfi_pattern_slot_subslot_r15)[0], - cfi_pattern_slot_subslot_r15.size(), - UnalignedIntegerPacker(1, 3))); + HANDLE_CODE(pack_fixed_seq_of( + bref, &(cfi_pattern_slot_subslot_r15)[0], cfi_pattern_slot_subslot_r15.size(), integer_packer(1, 3))); } return SRSASN_SUCCESS; @@ -33631,14 +33577,12 @@ SRSASN_CODE cfi_pattern_cfg_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(cfi_pattern_slot_subslot_r15_present, 1)); if (cfi_pattern_sf_r15_present) { - HANDLE_CODE(unpack_fixed_seq_of( - &(cfi_pattern_sf_r15)[0], bref, cfi_pattern_sf_r15.size(), UnalignedIntegerPacker(1, 4))); + HANDLE_CODE( + unpack_fixed_seq_of(&(cfi_pattern_sf_r15)[0], bref, cfi_pattern_sf_r15.size(), integer_packer(1, 4))); } if (cfi_pattern_slot_subslot_r15_present) { - HANDLE_CODE(unpack_fixed_seq_of(&(cfi_pattern_slot_subslot_r15)[0], - bref, - cfi_pattern_slot_subslot_r15.size(), - UnalignedIntegerPacker(1, 3))); + HANDLE_CODE(unpack_fixed_seq_of( + &(cfi_pattern_slot_subslot_r15)[0], bref, cfi_pattern_slot_subslot_r15.size(), integer_packer(1, 3))); } return SRSASN_SUCCESS; @@ -33670,9 +33614,9 @@ SRSASN_CODE cqi_report_cfg_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(cqi_report_periodic_present, 1)); if (cqi_report_mode_aperiodic_present) { - HANDLE_CODE(pack_enum(bref, cqi_report_mode_aperiodic)); + HANDLE_CODE(cqi_report_mode_aperiodic.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, nom_pdsch_rs_epre_offset, (int8_t)-1, (int8_t)6)); + HANDLE_CODE(pack_integer(bref, nom_pdsch_rs_epre_offset, (int8_t)-1, (int8_t)6)); if (cqi_report_periodic_present) { HANDLE_CODE(cqi_report_periodic.pack(bref)); } @@ -33685,9 +33629,9 @@ SRSASN_CODE cqi_report_cfg_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(cqi_report_periodic_present, 1)); if (cqi_report_mode_aperiodic_present) { - HANDLE_CODE(unpack_enum(cqi_report_mode_aperiodic, bref)); + HANDLE_CODE(cqi_report_mode_aperiodic.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(nom_pdsch_rs_epre_offset, bref, (int8_t)-1, (int8_t)6)); + HANDLE_CODE(unpack_integer(nom_pdsch_rs_epre_offset, bref, (int8_t)-1, (int8_t)6)); if (cqi_report_periodic_present) { HANDLE_CODE(cqi_report_periodic.unpack(bref)); } @@ -33714,7 +33658,7 @@ SRSASN_CODE cqi_report_cfg_v1530_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(alt_cqi_table_minus1024_qam_r15_present, 1)); if (alt_cqi_table_minus1024_qam_r15_present) { - HANDLE_CODE(pack_enum(bref, alt_cqi_table_minus1024_qam_r15)); + HANDLE_CODE(alt_cqi_table_minus1024_qam_r15.pack(bref)); } return SRSASN_SUCCESS; @@ -33724,7 +33668,7 @@ SRSASN_CODE cqi_report_cfg_v1530_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(alt_cqi_table_minus1024_qam_r15_present, 1)); if (alt_cqi_table_minus1024_qam_r15_present) { - HANDLE_CODE(unpack_enum(alt_cqi_table_minus1024_qam_r15, bref)); + HANDLE_CODE(alt_cqi_table_minus1024_qam_r15.unpack(bref)); } return SRSASN_SUCCESS; @@ -33768,20 +33712,20 @@ void cqi_report_cfg_v920_s::to_json(json_writer& j) const // CSI-RS-Config-v1480 ::= SEQUENCE SRSASN_CODE csi_rs_cfg_v1480_s::pack(bit_ref& bref) const { - HANDLE_CODE(bref.pack(e_mimo_type_v1480_present, 1)); + HANDLE_CODE(bref.pack(emimo_type_v1480_present, 1)); - if (e_mimo_type_v1480_present) { - HANDLE_CODE(e_mimo_type_v1480.pack(bref)); + if (emimo_type_v1480_present) { + HANDLE_CODE(emimo_type_v1480.pack(bref)); } return SRSASN_SUCCESS; } SRSASN_CODE csi_rs_cfg_v1480_s::unpack(bit_ref& bref) { - HANDLE_CODE(bref.unpack(e_mimo_type_v1480_present, 1)); + HANDLE_CODE(bref.unpack(emimo_type_v1480_present, 1)); - if (e_mimo_type_v1480_present) { - HANDLE_CODE(e_mimo_type_v1480.unpack(bref)); + if (emimo_type_v1480_present) { + HANDLE_CODE(emimo_type_v1480.unpack(bref)); } return SRSASN_SUCCESS; @@ -33789,9 +33733,9 @@ SRSASN_CODE csi_rs_cfg_v1480_s::unpack(bit_ref& bref) void csi_rs_cfg_v1480_s::to_json(json_writer& j) const { j.start_obj(); - if (e_mimo_type_v1480_present) { + if (emimo_type_v1480_present) { j.write_fieldname("eMIMO-Type-v1480"); - e_mimo_type_v1480.to_json(j); + emimo_type_v1480.to_json(j); } j.end_obj(); } @@ -33799,20 +33743,20 @@ void csi_rs_cfg_v1480_s::to_json(json_writer& j) const // CSI-RS-Config-v1530 ::= SEQUENCE SRSASN_CODE csi_rs_cfg_v1530_s::pack(bit_ref& bref) const { - HANDLE_CODE(bref.pack(e_mimo_type_v1530_present, 1)); + HANDLE_CODE(bref.pack(emimo_type_v1530_present, 1)); - if (e_mimo_type_v1530_present) { - HANDLE_CODE(e_mimo_type_v1530.pack(bref)); + if (emimo_type_v1530_present) { + HANDLE_CODE(emimo_type_v1530.pack(bref)); } return SRSASN_SUCCESS; } SRSASN_CODE csi_rs_cfg_v1530_s::unpack(bit_ref& bref) { - HANDLE_CODE(bref.unpack(e_mimo_type_v1530_present, 1)); + HANDLE_CODE(bref.unpack(emimo_type_v1530_present, 1)); - if (e_mimo_type_v1530_present) { - HANDLE_CODE(e_mimo_type_v1530.unpack(bref)); + if (emimo_type_v1530_present) { + HANDLE_CODE(emimo_type_v1530.unpack(bref)); } return SRSASN_SUCCESS; @@ -33820,9 +33764,9 @@ SRSASN_CODE csi_rs_cfg_v1530_s::unpack(bit_ref& bref) void csi_rs_cfg_v1530_s::to_json(json_writer& j) const { j.start_obj(); - if (e_mimo_type_v1530_present) { + if (emimo_type_v1530_present) { j.write_fieldname("eMIMO-Type-v1530"); - e_mimo_type_v1530.to_json(j); + emimo_type_v1530.to_json(j); } j.end_obj(); } @@ -33838,9 +33782,9 @@ SRSASN_CODE drb_to_add_mod_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(lc_ch_cfg_present, 1)); if (eps_bearer_id_present) { - HANDLE_CODE(pack_unalign_integer(bref, eps_bearer_id, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, eps_bearer_id, (uint8_t)0u, (uint8_t)15u)); } - HANDLE_CODE(pack_unalign_integer(bref, drb_id, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, drb_id, (uint8_t)1u, (uint8_t)32u)); if (pdcp_cfg_present) { HANDLE_CODE(pdcp_cfg.pack(bref)); } @@ -33848,7 +33792,7 @@ SRSASN_CODE drb_to_add_mod_s::pack(bit_ref& bref) const HANDLE_CODE(rlc_cfg.pack(bref)); } if (lc_ch_id_present) { - HANDLE_CODE(pack_unalign_integer(bref, lc_ch_id, (uint8_t)3, (uint8_t)10)); + HANDLE_CODE(pack_integer(bref, lc_ch_id, (uint8_t)3u, (uint8_t)10u)); } if (lc_ch_cfg_present) { HANDLE_CODE(lc_ch_cfg.pack(bref)); @@ -33872,7 +33816,7 @@ SRSASN_CODE drb_to_add_mod_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(drb_type_change_r12_present, 1)); HANDLE_CODE(bref.pack(rlc_cfg_v1250.is_present(), 1)); @@ -33881,7 +33825,7 @@ SRSASN_CODE drb_to_add_mod_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(rlc_cfg_v1310.is_present(), 1)); HANDLE_CODE(bref.pack(drb_type_lwa_r13_present, 1)); @@ -33893,11 +33837,11 @@ SRSASN_CODE drb_to_add_mod_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(drb_type_lwa_r13, 1)); } if (drb_type_lwip_r13_present) { - HANDLE_CODE(pack_enum(bref, drb_type_lwip_r13)); + HANDLE_CODE(drb_type_lwip_r13.pack(bref)); } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(rlc_cfg_v1430.is_present(), 1)); HANDLE_CODE(bref.pack(lwip_ul_aggregation_r14_present, 1)); @@ -33913,11 +33857,11 @@ SRSASN_CODE drb_to_add_mod_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(lwip_dl_aggregation_r14, 1)); } if (lwa_wlan_ac_r14_present) { - HANDLE_CODE(pack_enum(bref, lwa_wlan_ac_r14)); + HANDLE_CODE(lwa_wlan_ac_r14.pack(bref)); } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(rlc_cfg_v1510.is_present(), 1)); if (rlc_cfg_v1510.is_present()) { @@ -33925,7 +33869,7 @@ SRSASN_CODE drb_to_add_mod_s::pack(bit_ref& bref) const } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(rlc_cfg_v1530.is_present(), 1)); HANDLE_CODE(bref.pack(rlc_bearer_cfg_dupl_r15.is_present(), 1)); @@ -33937,7 +33881,7 @@ SRSASN_CODE drb_to_add_mod_s::pack(bit_ref& bref) const HANDLE_CODE(rlc_bearer_cfg_dupl_r15->pack(bref)); } if (lc_ch_id_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, lc_ch_id_r15, (uint8_t)32, (uint8_t)38)); + HANDLE_CODE(pack_integer(bref, lc_ch_id_r15, (uint8_t)32u, (uint8_t)38u)); } } } @@ -33953,9 +33897,9 @@ SRSASN_CODE drb_to_add_mod_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(lc_ch_cfg_present, 1)); if (eps_bearer_id_present) { - HANDLE_CODE(unpack_unalign_integer(eps_bearer_id, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(eps_bearer_id, bref, (uint8_t)0u, (uint8_t)15u)); } - HANDLE_CODE(unpack_unalign_integer(drb_id, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(drb_id, bref, (uint8_t)1u, (uint8_t)32u)); if (pdcp_cfg_present) { HANDLE_CODE(pdcp_cfg.unpack(bref)); } @@ -33963,7 +33907,7 @@ SRSASN_CODE drb_to_add_mod_s::unpack(bit_ref& bref) HANDLE_CODE(rlc_cfg.unpack(bref)); } if (lc_ch_id_present) { - HANDLE_CODE(unpack_unalign_integer(lc_ch_id, bref, (uint8_t)3, (uint8_t)10)); + HANDLE_CODE(unpack_integer(lc_ch_id, bref, (uint8_t)3u, (uint8_t)10u)); } if (lc_ch_cfg_present) { HANDLE_CODE(lc_ch_cfg.unpack(bref)); @@ -33974,7 +33918,7 @@ SRSASN_CODE drb_to_add_mod_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(drb_type_change_r12_present, 1)); bool rlc_cfg_v1250_present; @@ -33985,7 +33929,7 @@ SRSASN_CODE drb_to_add_mod_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool rlc_cfg_v1310_present; HANDLE_CODE(bref.unpack(rlc_cfg_v1310_present, 1)); @@ -33999,11 +33943,11 @@ SRSASN_CODE drb_to_add_mod_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(drb_type_lwa_r13, 1)); } if (drb_type_lwip_r13_present) { - HANDLE_CODE(unpack_enum(drb_type_lwip_r13, bref)); + HANDLE_CODE(drb_type_lwip_r13.unpack(bref)); } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool rlc_cfg_v1430_present; HANDLE_CODE(bref.unpack(rlc_cfg_v1430_present, 1)); @@ -34021,11 +33965,11 @@ SRSASN_CODE drb_to_add_mod_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(lwip_dl_aggregation_r14, 1)); } if (lwa_wlan_ac_r14_present) { - HANDLE_CODE(unpack_enum(lwa_wlan_ac_r14, bref)); + HANDLE_CODE(lwa_wlan_ac_r14.unpack(bref)); } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool rlc_cfg_v1510_present; HANDLE_CODE(bref.unpack(rlc_cfg_v1510_present, 1)); @@ -34035,7 +33979,7 @@ SRSASN_CODE drb_to_add_mod_s::unpack(bit_ref& bref) } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool rlc_cfg_v1530_present; HANDLE_CODE(bref.unpack(rlc_cfg_v1530_present, 1)); @@ -34051,7 +33995,7 @@ SRSASN_CODE drb_to_add_mod_s::unpack(bit_ref& bref) HANDLE_CODE(rlc_bearer_cfg_dupl_r15->unpack(bref)); } if (lc_ch_id_r15_present) { - HANDLE_CODE(unpack_unalign_integer(lc_ch_id_r15, bref, (uint8_t)32, (uint8_t)38)); + HANDLE_CODE(unpack_integer(lc_ch_id_r15, bref, (uint8_t)32u, (uint8_t)38u)); } } } @@ -34164,19 +34108,19 @@ void drx_cfg_c::to_json(json_writer& j) const } SRSASN_CODE drx_cfg_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.short_drx_present, 1)); - HANDLE_CODE(pack_enum(bref, c.on_dur_timer)); - HANDLE_CODE(pack_enum(bref, c.drx_inactivity_timer)); - HANDLE_CODE(pack_enum(bref, c.drx_retx_timer)); + HANDLE_CODE(c.on_dur_timer.pack(bref)); + HANDLE_CODE(c.drx_inactivity_timer.pack(bref)); + HANDLE_CODE(c.drx_retx_timer.pack(bref)); HANDLE_CODE(c.long_drx_cycle_start_offset.pack(bref)); if (c.short_drx_present) { - HANDLE_CODE(pack_enum(bref, c.short_drx.short_drx_cycle)); - HANDLE_CODE(pack_unalign_integer(bref, c.short_drx.drx_short_cycle_timer, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(c.short_drx.short_drx_cycle.pack(bref)); + HANDLE_CODE(pack_integer(bref, c.short_drx.drx_short_cycle_timer, (uint8_t)1u, (uint8_t)16u)); } break; default: @@ -34188,20 +34132,20 @@ SRSASN_CODE drx_cfg_c::pack(bit_ref& bref) const SRSASN_CODE drx_cfg_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.unpack(c.short_drx_present, 1)); - HANDLE_CODE(unpack_enum(c.on_dur_timer, bref)); - HANDLE_CODE(unpack_enum(c.drx_inactivity_timer, bref)); - HANDLE_CODE(unpack_enum(c.drx_retx_timer, bref)); + HANDLE_CODE(c.on_dur_timer.unpack(bref)); + HANDLE_CODE(c.drx_inactivity_timer.unpack(bref)); + HANDLE_CODE(c.drx_retx_timer.unpack(bref)); HANDLE_CODE(c.long_drx_cycle_start_offset.unpack(bref)); if (c.short_drx_present) { - HANDLE_CODE(unpack_enum(c.short_drx.short_drx_cycle, bref)); - HANDLE_CODE(unpack_unalign_integer(c.short_drx.drx_short_cycle_timer, bref, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(c.short_drx.short_drx_cycle.unpack(bref)); + HANDLE_CODE(unpack_integer(c.short_drx.drx_short_cycle_timer, bref, (uint8_t)1u, (uint8_t)16u)); } break; default: @@ -34247,7 +34191,7 @@ drx_cfg_c::setup_s_::long_drx_cycle_start_offset_c_::long_drx_cycle_start_offset c.init(other.c.get()); break; case types::sf256: - c.init(other.c.get()); + c.init(other.c.get()); break; case types::sf320: c.init(other.c.get()); @@ -34309,7 +34253,7 @@ drx_cfg_c::setup_s_::long_drx_cycle_start_offset_c_& drx_cfg_c::setup_s_::long_d c.set(other.c.get()); break; case types::sf256: - c.set(other.c.get()); + c.set(other.c.get()); break; case types::sf320: c.set(other.c.get()); @@ -34369,7 +34313,7 @@ void drx_cfg_c::setup_s_::long_drx_cycle_start_offset_c_::to_json(json_writer& j j.write_int("sf160", c.get()); break; case types::sf256: - j.write_int("sf256", c.get()); + j.write_int("sf256", c.get()); break; case types::sf320: j.write_int("sf320", c.get()); @@ -34399,55 +34343,55 @@ void drx_cfg_c::setup_s_::long_drx_cycle_start_offset_c_::to_json(json_writer& j } SRSASN_CODE drx_cfg_c::setup_s_::long_drx_cycle_start_offset_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sf10: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)9u)); break; case types::sf20: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)19)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)19u)); break; case types::sf32: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)31u)); break; case types::sf40: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)39)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)39u)); break; case types::sf64: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)63u)); break; case types::sf80: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)79)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)79u)); break; case types::sf128: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)127u)); break; case types::sf160: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)159u)); break; case types::sf256: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)255u)); break; case types::sf320: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)319u)); break; case types::sf512: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)511u)); break; case types::sf640: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)639u)); break; case types::sf1024: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1023u)); break; case types::sf1280: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1279u)); break; case types::sf2048: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)2047u)); break; case types::sf2560: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)2559)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)2559u)); break; default: log_invalid_choice_id(type_, "drx_cfg_c::setup_s_::long_drx_cycle_start_offset_c_"); @@ -34458,56 +34402,56 @@ SRSASN_CODE drx_cfg_c::setup_s_::long_drx_cycle_start_offset_c_::pack(bit_ref& b SRSASN_CODE drx_cfg_c::setup_s_::long_drx_cycle_start_offset_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sf10: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)9u)); break; case types::sf20: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)19)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)19u)); break; case types::sf32: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)31u)); break; case types::sf40: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)39)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)39u)); break; case types::sf64: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)63u)); break; case types::sf80: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)79)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)79u)); break; case types::sf128: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)127u)); break; case types::sf160: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)159u)); break; case types::sf256: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)255u)); break; case types::sf320: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)319u)); break; case types::sf512: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)511u)); break; case types::sf640: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)639u)); break; case types::sf1024: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1023u)); break; case types::sf1280: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1279u)); break; case types::sf2048: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)2047u)); break; case types::sf2560: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)2559)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)2559u)); break; default: log_invalid_choice_id(type_, "drx_cfg_c::setup_s_::long_drx_cycle_start_offset_c_"); @@ -34524,13 +34468,13 @@ SRSASN_CODE drx_cfg_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(drx_ul_retx_timer_r13_present, 1)); if (on_dur_timer_v1310_present) { - HANDLE_CODE(pack_enum(bref, on_dur_timer_v1310)); + HANDLE_CODE(on_dur_timer_v1310.pack(bref)); } if (drx_retx_timer_v1310_present) { - HANDLE_CODE(pack_enum(bref, drx_retx_timer_v1310)); + HANDLE_CODE(drx_retx_timer_v1310.pack(bref)); } if (drx_ul_retx_timer_r13_present) { - HANDLE_CODE(pack_enum(bref, drx_ul_retx_timer_r13)); + HANDLE_CODE(drx_ul_retx_timer_r13.pack(bref)); } return SRSASN_SUCCESS; @@ -34542,13 +34486,13 @@ SRSASN_CODE drx_cfg_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(drx_ul_retx_timer_r13_present, 1)); if (on_dur_timer_v1310_present) { - HANDLE_CODE(unpack_enum(on_dur_timer_v1310, bref)); + HANDLE_CODE(on_dur_timer_v1310.unpack(bref)); } if (drx_retx_timer_v1310_present) { - HANDLE_CODE(unpack_enum(drx_retx_timer_v1310, bref)); + HANDLE_CODE(drx_retx_timer_v1310.unpack(bref)); } if (drx_ul_retx_timer_r13_present) { - HANDLE_CODE(unpack_enum(drx_ul_retx_timer_r13, bref)); + HANDLE_CODE(drx_ul_retx_timer_r13.unpack(bref)); } return SRSASN_SUCCESS; @@ -34575,10 +34519,10 @@ SRSASN_CODE drx_cfg_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(drx_ul_retx_timer_short_tti_r15_present, 1)); if (drx_retx_timer_short_tti_r15_present) { - HANDLE_CODE(pack_enum(bref, drx_retx_timer_short_tti_r15)); + HANDLE_CODE(drx_retx_timer_short_tti_r15.pack(bref)); } if (drx_ul_retx_timer_short_tti_r15_present) { - HANDLE_CODE(pack_enum(bref, drx_ul_retx_timer_short_tti_r15)); + HANDLE_CODE(drx_ul_retx_timer_short_tti_r15.pack(bref)); } return SRSASN_SUCCESS; @@ -34589,10 +34533,10 @@ SRSASN_CODE drx_cfg_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(drx_ul_retx_timer_short_tti_r15_present, 1)); if (drx_retx_timer_short_tti_r15_present) { - HANDLE_CODE(unpack_enum(drx_retx_timer_short_tti_r15, bref)); + HANDLE_CODE(drx_retx_timer_short_tti_r15.unpack(bref)); } if (drx_ul_retx_timer_short_tti_r15_present) { - HANDLE_CODE(unpack_enum(drx_ul_retx_timer_short_tti_r15, bref)); + HANDLE_CODE(drx_ul_retx_timer_short_tti_r15.unpack(bref)); } return SRSASN_SUCCESS; @@ -34712,13 +34656,13 @@ void drx_cfg_v1130_s::long_drx_cycle_start_offset_v1130_c_::to_json(json_writer& } SRSASN_CODE drx_cfg_v1130_s::long_drx_cycle_start_offset_v1130_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sf60_v1130: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)59)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)59u)); break; case types::sf70_v1130: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)69)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)69u)); break; default: log_invalid_choice_id(type_, "drx_cfg_v1130_s::long_drx_cycle_start_offset_v1130_c_"); @@ -34729,14 +34673,14 @@ SRSASN_CODE drx_cfg_v1130_s::long_drx_cycle_start_offset_v1130_c_::pack(bit_ref& SRSASN_CODE drx_cfg_v1130_s::long_drx_cycle_start_offset_v1130_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sf60_v1130: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)59)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)59u)); break; case types::sf70_v1130: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)69)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)69u)); break; default: log_invalid_choice_id(type_, "drx_cfg_v1130_s::long_drx_cycle_start_offset_v1130_c_"); @@ -34751,7 +34695,7 @@ SRSASN_CODE drx_cfg_v1310_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(long_drx_cycle_start_offset_v1310_present, 1)); if (long_drx_cycle_start_offset_v1310_present) { - HANDLE_CODE(pack_unalign_integer(bref, long_drx_cycle_start_offset_v1310.sf60_v1310, (uint8_t)0, (uint8_t)59)); + HANDLE_CODE(pack_integer(bref, long_drx_cycle_start_offset_v1310.sf60_v1310, (uint8_t)0u, (uint8_t)59u)); } return SRSASN_SUCCESS; @@ -34761,7 +34705,7 @@ SRSASN_CODE drx_cfg_v1310_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(long_drx_cycle_start_offset_v1310_present, 1)); if (long_drx_cycle_start_offset_v1310_present) { - HANDLE_CODE(unpack_unalign_integer(long_drx_cycle_start_offset_v1310.sf60_v1310, bref, (uint8_t)0, (uint8_t)59)); + HANDLE_CODE(unpack_integer(long_drx_cycle_start_offset_v1310.sf60_v1310, bref, (uint8_t)0u, (uint8_t)59u)); } return SRSASN_SUCCESS; @@ -34842,7 +34786,7 @@ void epdcch_cfg_r11_s::cfg_r11_c_::to_json(json_writer& j) const } SRSASN_CODE epdcch_cfg_r11_s::cfg_r11_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -34855,10 +34799,10 @@ SRSASN_CODE epdcch_cfg_r11_s::cfg_r11_c_::pack(bit_ref& bref) const HANDLE_CODE(c.sf_pattern_cfg_r11.pack(bref)); } if (c.start_symbol_r11_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.start_symbol_r11, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, c.start_symbol_r11, (uint8_t)1u, (uint8_t)4u)); } if (c.set_cfg_to_release_list_r11_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, c.set_cfg_to_release_list_r11, 1, 2, UnalignedIntegerPacker(0, 1))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.set_cfg_to_release_list_r11, 1, 2, integer_packer(0, 1))); } if (c.set_cfg_to_add_mod_list_r11_present) { HANDLE_CODE(pack_dyn_seq_of(bref, c.set_cfg_to_add_mod_list_r11, 1, 2)); @@ -34873,7 +34817,7 @@ SRSASN_CODE epdcch_cfg_r11_s::cfg_r11_c_::pack(bit_ref& bref) const SRSASN_CODE epdcch_cfg_r11_s::cfg_r11_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -34887,11 +34831,10 @@ SRSASN_CODE epdcch_cfg_r11_s::cfg_r11_c_::unpack(bit_ref& bref) HANDLE_CODE(c.sf_pattern_cfg_r11.unpack(bref)); } if (c.start_symbol_r11_present) { - HANDLE_CODE(unpack_unalign_integer(c.start_symbol_r11, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(unpack_integer(c.start_symbol_r11, bref, (uint8_t)1u, (uint8_t)4u)); } if (c.set_cfg_to_release_list_r11_present) { - HANDLE_CODE( - unpack_dyn_seq_of(c.set_cfg_to_release_list_r11, bref, 1, 2, UnalignedIntegerPacker(0, 1))); + HANDLE_CODE(unpack_dyn_seq_of(c.set_cfg_to_release_list_r11, bref, 1, 2, integer_packer(0, 1))); } if (c.set_cfg_to_add_mod_list_r11_present) { HANDLE_CODE(unpack_dyn_seq_of(c.set_cfg_to_add_mod_list_r11, bref, 1, 2)); @@ -34928,7 +34871,7 @@ void epdcch_cfg_r11_s::cfg_r11_c_::setup_s_::sf_pattern_cfg_r11_c_::to_json(json } SRSASN_CODE epdcch_cfg_r11_s::cfg_r11_c_::setup_s_::sf_pattern_cfg_r11_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -34944,7 +34887,7 @@ SRSASN_CODE epdcch_cfg_r11_s::cfg_r11_c_::setup_s_::sf_pattern_cfg_r11_c_::pack( SRSASN_CODE epdcch_cfg_r11_s::cfg_r11_c_::setup_s_::sf_pattern_cfg_r11_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -34962,15 +34905,15 @@ SRSASN_CODE epdcch_cfg_r11_s::cfg_r11_c_::setup_s_::sf_pattern_cfg_r11_c_::unpac // FreqPriorityEUTRA ::= SEQUENCE SRSASN_CODE freq_prio_eutra_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq, (uint16_t)0, (uint16_t)65535)); - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_prio, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, carrier_freq, (uint32_t)0u, (uint32_t)65535u)); + HANDLE_CODE(pack_integer(bref, cell_resel_prio, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } SRSASN_CODE freq_prio_eutra_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq, bref, (uint16_t)0, (uint16_t)65535)); - HANDLE_CODE(unpack_unalign_integer(cell_resel_prio, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(carrier_freq, bref, (uint32_t)0u, (uint32_t)65535u)); + HANDLE_CODE(unpack_integer(cell_resel_prio, bref, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } @@ -34985,15 +34928,15 @@ void freq_prio_eutra_s::to_json(json_writer& j) const // FreqPriorityEUTRA-r12 ::= SEQUENCE SRSASN_CODE freq_prio_eutra_r12_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r12, (uint32_t)0, (uint32_t)262143)); - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_prio_r12, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r12, (uint32_t)0u, (uint32_t)262143u)); + HANDLE_CODE(pack_integer(bref, cell_resel_prio_r12, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } SRSASN_CODE freq_prio_eutra_r12_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r12, bref, (uint32_t)0, (uint32_t)262143)); - HANDLE_CODE(unpack_unalign_integer(cell_resel_prio_r12, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(carrier_freq_r12, bref, (uint32_t)0u, (uint32_t)262143u)); + HANDLE_CODE(unpack_integer(cell_resel_prio_r12, bref, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } @@ -35011,7 +34954,7 @@ SRSASN_CODE freq_prio_eutra_v1310_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(cell_resel_sub_prio_r13_present, 1)); if (cell_resel_sub_prio_r13_present) { - HANDLE_CODE(pack_enum(bref, cell_resel_sub_prio_r13)); + HANDLE_CODE(cell_resel_sub_prio_r13.pack(bref)); } return SRSASN_SUCCESS; @@ -35021,7 +34964,7 @@ SRSASN_CODE freq_prio_eutra_v1310_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(cell_resel_sub_prio_r13_present, 1)); if (cell_resel_sub_prio_r13_present) { - HANDLE_CODE(unpack_enum(cell_resel_sub_prio_r13, bref)); + HANDLE_CODE(cell_resel_sub_prio_r13.unpack(bref)); } return SRSASN_SUCCESS; @@ -35040,10 +34983,10 @@ SRSASN_CODE freq_prio_nr_r15_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(cell_resel_sub_prio_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r15, (uint32_t)0, (uint32_t)3279165)); - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_prio_r15, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r15, (uint32_t)0u, (uint32_t)3279165u)); + HANDLE_CODE(pack_integer(bref, cell_resel_prio_r15, (uint8_t)0u, (uint8_t)7u)); if (cell_resel_sub_prio_r15_present) { - HANDLE_CODE(pack_enum(bref, cell_resel_sub_prio_r15)); + HANDLE_CODE(cell_resel_sub_prio_r15.pack(bref)); } return SRSASN_SUCCESS; @@ -35052,10 +34995,10 @@ SRSASN_CODE freq_prio_nr_r15_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(cell_resel_sub_prio_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r15, bref, (uint32_t)0, (uint32_t)3279165)); - HANDLE_CODE(unpack_unalign_integer(cell_resel_prio_r15, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(carrier_freq_r15, bref, (uint32_t)0u, (uint32_t)3279165u)); + HANDLE_CODE(unpack_integer(cell_resel_prio_r15, bref, (uint8_t)0u, (uint8_t)7u)); if (cell_resel_sub_prio_r15_present) { - HANDLE_CODE(unpack_enum(cell_resel_sub_prio_r15, bref)); + HANDLE_CODE(cell_resel_sub_prio_r15.unpack(bref)); } return SRSASN_SUCCESS; @@ -35074,15 +35017,15 @@ void freq_prio_nr_r15_s::to_json(json_writer& j) const // FreqPriorityUTRA-FDD ::= SEQUENCE SRSASN_CODE freq_prio_utra_fdd_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq, (uint16_t)0, (uint16_t)16383)); - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_prio, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, carrier_freq, (uint16_t)0u, (uint16_t)16383u)); + HANDLE_CODE(pack_integer(bref, cell_resel_prio, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } SRSASN_CODE freq_prio_utra_fdd_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq, bref, (uint16_t)0, (uint16_t)16383)); - HANDLE_CODE(unpack_unalign_integer(cell_resel_prio, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(carrier_freq, bref, (uint16_t)0u, (uint16_t)16383u)); + HANDLE_CODE(unpack_integer(cell_resel_prio, bref, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } @@ -35097,15 +35040,15 @@ void freq_prio_utra_fdd_s::to_json(json_writer& j) const // FreqPriorityUTRA-TDD ::= SEQUENCE SRSASN_CODE freq_prio_utra_tdd_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq, (uint16_t)0, (uint16_t)16383)); - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_prio, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, carrier_freq, (uint16_t)0u, (uint16_t)16383u)); + HANDLE_CODE(pack_integer(bref, cell_resel_prio, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } SRSASN_CODE freq_prio_utra_tdd_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq, bref, (uint16_t)0, (uint16_t)16383)); - HANDLE_CODE(unpack_unalign_integer(cell_resel_prio, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(carrier_freq, bref, (uint16_t)0u, (uint16_t)16383u)); + HANDLE_CODE(unpack_integer(cell_resel_prio, bref, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } @@ -35121,14 +35064,14 @@ void freq_prio_utra_tdd_s::to_json(json_writer& j) const SRSASN_CODE freqs_prio_geran_s::pack(bit_ref& bref) const { HANDLE_CODE(carrier_freqs.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_prio, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, cell_resel_prio, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } SRSASN_CODE freqs_prio_geran_s::unpack(bit_ref& bref) { HANDLE_CODE(carrier_freqs.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(cell_resel_prio, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(cell_resel_prio, bref, (uint8_t)0u, (uint8_t)7u)); return SRSASN_SUCCESS; } @@ -35169,16 +35112,16 @@ void pdcch_candidate_reductions_r13_c::to_json(json_writer& j) const } SRSASN_CODE pdcch_candidate_reductions_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.pdcch_candidate_reduction_al1_r13)); - HANDLE_CODE(pack_enum(bref, c.pdcch_candidate_reduction_al2_r13)); - HANDLE_CODE(pack_enum(bref, c.pdcch_candidate_reduction_al3_r13)); - HANDLE_CODE(pack_enum(bref, c.pdcch_candidate_reduction_al4_r13)); - HANDLE_CODE(pack_enum(bref, c.pdcch_candidate_reduction_al5_r13)); + HANDLE_CODE(c.pdcch_candidate_reduction_al1_r13.pack(bref)); + HANDLE_CODE(c.pdcch_candidate_reduction_al2_r13.pack(bref)); + HANDLE_CODE(c.pdcch_candidate_reduction_al3_r13.pack(bref)); + HANDLE_CODE(c.pdcch_candidate_reduction_al4_r13.pack(bref)); + HANDLE_CODE(c.pdcch_candidate_reduction_al5_r13.pack(bref)); break; default: log_invalid_choice_id(type_, "pdcch_candidate_reductions_r13_c"); @@ -35189,17 +35132,17 @@ SRSASN_CODE pdcch_candidate_reductions_r13_c::pack(bit_ref& bref) const SRSASN_CODE pdcch_candidate_reductions_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.pdcch_candidate_reduction_al1_r13, bref)); - HANDLE_CODE(unpack_enum(c.pdcch_candidate_reduction_al2_r13, bref)); - HANDLE_CODE(unpack_enum(c.pdcch_candidate_reduction_al3_r13, bref)); - HANDLE_CODE(unpack_enum(c.pdcch_candidate_reduction_al4_r13, bref)); - HANDLE_CODE(unpack_enum(c.pdcch_candidate_reduction_al5_r13, bref)); + HANDLE_CODE(c.pdcch_candidate_reduction_al1_r13.unpack(bref)); + HANDLE_CODE(c.pdcch_candidate_reduction_al2_r13.unpack(bref)); + HANDLE_CODE(c.pdcch_candidate_reduction_al3_r13.unpack(bref)); + HANDLE_CODE(c.pdcch_candidate_reduction_al4_r13.unpack(bref)); + HANDLE_CODE(c.pdcch_candidate_reduction_al5_r13.unpack(bref)); break; default: log_invalid_choice_id(type_, "pdcch_candidate_reductions_r13_c"); @@ -35211,13 +35154,13 @@ SRSASN_CODE pdcch_candidate_reductions_r13_c::unpack(bit_ref& bref) // PDSCH-ConfigDedicated ::= SEQUENCE SRSASN_CODE pdsch_cfg_ded_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, p_a)); + HANDLE_CODE(p_a.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE pdsch_cfg_ded_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(p_a, bref)); + HANDLE_CODE(p_a.unpack(bref)); return SRSASN_SUCCESS; } @@ -35240,10 +35183,10 @@ SRSASN_CODE pdsch_cfg_ded_v1130_s::pack(bit_ref& bref) const HANDLE_CODE(dmrs_cfg_pdsch_r11.pack(bref)); } if (qcl_operation_present) { - HANDLE_CODE(pack_enum(bref, qcl_operation)); + HANDLE_CODE(qcl_operation.pack(bref)); } if (re_map_qcl_cfg_to_release_list_r11_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, re_map_qcl_cfg_to_release_list_r11, 1, 4, UnalignedIntegerPacker(1, 4))); + HANDLE_CODE(pack_dyn_seq_of(bref, re_map_qcl_cfg_to_release_list_r11, 1, 4, integer_packer(1, 4))); } if (re_map_qcl_cfg_to_add_mod_list_r11_present) { HANDLE_CODE(pack_dyn_seq_of(bref, re_map_qcl_cfg_to_add_mod_list_r11, 1, 4)); @@ -35262,11 +35205,10 @@ SRSASN_CODE pdsch_cfg_ded_v1130_s::unpack(bit_ref& bref) HANDLE_CODE(dmrs_cfg_pdsch_r11.unpack(bref)); } if (qcl_operation_present) { - HANDLE_CODE(unpack_enum(qcl_operation, bref)); + HANDLE_CODE(qcl_operation.unpack(bref)); } if (re_map_qcl_cfg_to_release_list_r11_present) { - HANDLE_CODE( - unpack_dyn_seq_of(re_map_qcl_cfg_to_release_list_r11, bref, 1, 4, UnalignedIntegerPacker(1, 4))); + HANDLE_CODE(unpack_dyn_seq_of(re_map_qcl_cfg_to_release_list_r11, bref, 1, 4, integer_packer(1, 4))); } if (re_map_qcl_cfg_to_add_mod_list_r11_present) { HANDLE_CODE(unpack_dyn_seq_of(re_map_qcl_cfg_to_add_mod_list_r11, bref, 1, 4)); @@ -35307,7 +35249,7 @@ SRSASN_CODE pdsch_cfg_ded_v1280_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(tbs_idx_alt_r12_present, 1)); if (tbs_idx_alt_r12_present) { - HANDLE_CODE(pack_enum(bref, tbs_idx_alt_r12)); + HANDLE_CODE(tbs_idx_alt_r12.pack(bref)); } return SRSASN_SUCCESS; @@ -35317,7 +35259,7 @@ SRSASN_CODE pdsch_cfg_ded_v1280_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(tbs_idx_alt_r12_present, 1)); if (tbs_idx_alt_r12_present) { - HANDLE_CODE(unpack_enum(tbs_idx_alt_r12, bref)); + HANDLE_CODE(tbs_idx_alt_r12.unpack(bref)); } return SRSASN_SUCCESS; @@ -35372,10 +35314,10 @@ SRSASN_CODE pdsch_cfg_ded_v1430_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(tbs_idx_alt2_r14_present, 1)); if (ce_pdsch_max_bw_r14_present) { - HANDLE_CODE(pack_enum(bref, ce_pdsch_max_bw_r14)); + HANDLE_CODE(ce_pdsch_max_bw_r14.pack(bref)); } if (ce_sched_enhancement_r14_present) { - HANDLE_CODE(pack_enum(bref, ce_sched_enhancement_r14)); + HANDLE_CODE(ce_sched_enhancement_r14.pack(bref)); } return SRSASN_SUCCESS; @@ -35389,10 +35331,10 @@ SRSASN_CODE pdsch_cfg_ded_v1430_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(tbs_idx_alt2_r14_present, 1)); if (ce_pdsch_max_bw_r14_present) { - HANDLE_CODE(unpack_enum(ce_pdsch_max_bw_r14, bref)); + HANDLE_CODE(ce_pdsch_max_bw_r14.unpack(bref)); } if (ce_sched_enhancement_r14_present) { - HANDLE_CODE(unpack_enum(ce_sched_enhancement_r14, bref)); + HANDLE_CODE(ce_sched_enhancement_r14.unpack(bref)); } return SRSASN_SUCCESS; @@ -35423,13 +35365,13 @@ SRSASN_CODE pdsch_cfg_ded_v1530_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(qcl_operation_v1530_present, 1)); HANDLE_CODE(bref.pack(tbs_idx_alt3_r15_present, 1)); - HANDLE_CODE(bref.pack(ce_cqi_alternative_table_cfg_r15_present, 1)); + HANDLE_CODE(bref.pack(ce_cqi_alt_table_cfg_r15_present, 1)); HANDLE_CODE(bref.pack(ce_pdsch_minus64_qam_cfg_r15_present, 1)); HANDLE_CODE(bref.pack(ce_pdsch_flex_start_prb_alloc_cfg_r15_present, 1)); HANDLE_CODE(bref.pack(alt_mcs_table_scaling_cfg_r15_present, 1)); if (alt_mcs_table_scaling_cfg_r15_present) { - HANDLE_CODE(pack_enum(bref, alt_mcs_table_scaling_cfg_r15)); + HANDLE_CODE(alt_mcs_table_scaling_cfg_r15.pack(bref)); } return SRSASN_SUCCESS; @@ -35438,13 +35380,13 @@ SRSASN_CODE pdsch_cfg_ded_v1530_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(qcl_operation_v1530_present, 1)); HANDLE_CODE(bref.unpack(tbs_idx_alt3_r15_present, 1)); - HANDLE_CODE(bref.unpack(ce_cqi_alternative_table_cfg_r15_present, 1)); + HANDLE_CODE(bref.unpack(ce_cqi_alt_table_cfg_r15_present, 1)); HANDLE_CODE(bref.unpack(ce_pdsch_minus64_qam_cfg_r15_present, 1)); HANDLE_CODE(bref.unpack(ce_pdsch_flex_start_prb_alloc_cfg_r15_present, 1)); HANDLE_CODE(bref.unpack(alt_mcs_table_scaling_cfg_r15_present, 1)); if (alt_mcs_table_scaling_cfg_r15_present) { - HANDLE_CODE(unpack_enum(alt_mcs_table_scaling_cfg_r15, bref)); + HANDLE_CODE(alt_mcs_table_scaling_cfg_r15.unpack(bref)); } return SRSASN_SUCCESS; @@ -35458,7 +35400,7 @@ void pdsch_cfg_ded_v1530_s::to_json(json_writer& j) const if (tbs_idx_alt3_r15_present) { j.write_str("tbs-IndexAlt3-r15", "a37"); } - if (ce_cqi_alternative_table_cfg_r15_present) { + if (ce_cqi_alt_table_cfg_r15_present) { j.write_str("ce-CQI-AlternativeTableConfig-r15", "on"); } if (ce_pdsch_minus64_qam_cfg_r15_present) { @@ -35480,7 +35422,7 @@ SRSASN_CODE pucch_cfg_ded_s::pack(bit_ref& bref) const HANDLE_CODE(ack_nack_repeat.pack(bref)); if (tdd_ack_nack_feedback_mode_present) { - HANDLE_CODE(pack_enum(bref, tdd_ack_nack_feedback_mode)); + HANDLE_CODE(tdd_ack_nack_feedback_mode.pack(bref)); } return SRSASN_SUCCESS; @@ -35491,7 +35433,7 @@ SRSASN_CODE pucch_cfg_ded_s::unpack(bit_ref& bref) HANDLE_CODE(ack_nack_repeat.unpack(bref)); if (tdd_ack_nack_feedback_mode_present) { - HANDLE_CODE(unpack_enum(tdd_ack_nack_feedback_mode, bref)); + HANDLE_CODE(tdd_ack_nack_feedback_mode.unpack(bref)); } return SRSASN_SUCCESS; @@ -35531,13 +35473,13 @@ void pucch_cfg_ded_s::ack_nack_repeat_c_::to_json(json_writer& j) const } SRSASN_CODE pucch_cfg_ded_s::ack_nack_repeat_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.repeat_factor)); - HANDLE_CODE(pack_unalign_integer(bref, c.n1_pucch_an_rep, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(c.repeat_factor.pack(bref)); + HANDLE_CODE(pack_integer(bref, c.n1_pucch_an_rep, (uint16_t)0u, (uint16_t)2047u)); break; default: log_invalid_choice_id(type_, "pucch_cfg_ded_s::ack_nack_repeat_c_"); @@ -35548,14 +35490,14 @@ SRSASN_CODE pucch_cfg_ded_s::ack_nack_repeat_c_::pack(bit_ref& bref) const SRSASN_CODE pucch_cfg_ded_s::ack_nack_repeat_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.repeat_factor, bref)); - HANDLE_CODE(unpack_unalign_integer(c.n1_pucch_an_rep, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(c.repeat_factor.unpack(bref)); + HANDLE_CODE(unpack_integer(c.n1_pucch_an_rep, bref, (uint16_t)0u, (uint16_t)2047u)); break; default: log_invalid_choice_id(type_, "pucch_cfg_ded_s::ack_nack_repeat_c_"); @@ -35572,7 +35514,7 @@ SRSASN_CODE pucch_cfg_ded_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(two_ant_port_activ_pucch_format1a1b_r13_present, 1)); HANDLE_CODE(bref.pack(simul_pucch_pusch_r13_present, 1)); HANDLE_CODE(bref.pack(n1_pucch_an_rep_p1_r13_present, 1)); - HANDLE_CODE(bref.pack(n_pucch_param_r13_present, 1)); + HANDLE_CODE(bref.pack(npucch_param_r13_present, 1)); HANDLE_CODE(bref.pack(nka_pucch_param_r13_present, 1)); HANDLE_CODE(bref.pack(codebooksize_determination_r13_present, 1)); HANDLE_CODE(bref.pack(maximum_payload_coderate_r13_present, 1)); @@ -35580,16 +35522,16 @@ SRSASN_CODE pucch_cfg_ded_r13_s::pack(bit_ref& bref) const HANDLE_CODE(ack_nack_repeat_r13.pack(bref)); if (tdd_ack_nack_feedback_mode_r13_present) { - HANDLE_CODE(pack_enum(bref, tdd_ack_nack_feedback_mode_r13)); + HANDLE_CODE(tdd_ack_nack_feedback_mode_r13.pack(bref)); } if (pucch_format_r13_present) { HANDLE_CODE(pucch_format_r13.pack(bref)); } if (n1_pucch_an_rep_p1_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, n1_pucch_an_rep_p1_r13, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(pack_integer(bref, n1_pucch_an_rep_p1_r13, (uint16_t)0u, (uint16_t)2047u)); } - if (n_pucch_param_r13_present) { - HANDLE_CODE(n_pucch_param_r13.pack(bref)); + if (npucch_param_r13_present) { + HANDLE_CODE(npucch_param_r13.pack(bref)); } if (nka_pucch_param_r13_present) { HANDLE_CODE(nka_pucch_param_r13.pack(bref)); @@ -35598,10 +35540,10 @@ SRSASN_CODE pucch_cfg_ded_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(spatial_bundling_pusch_r13, 1)); HANDLE_CODE(bref.pack(harq_timing_tdd_r13, 1)); if (codebooksize_determination_r13_present) { - HANDLE_CODE(pack_enum(bref, codebooksize_determination_r13)); + HANDLE_CODE(codebooksize_determination_r13.pack(bref)); } if (maximum_payload_coderate_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, maximum_payload_coderate_r13, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, maximum_payload_coderate_r13, (uint8_t)0u, (uint8_t)7u)); } if (pucch_num_repeat_ce_r13_present) { HANDLE_CODE(pucch_num_repeat_ce_r13.pack(bref)); @@ -35616,7 +35558,7 @@ SRSASN_CODE pucch_cfg_ded_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(two_ant_port_activ_pucch_format1a1b_r13_present, 1)); HANDLE_CODE(bref.unpack(simul_pucch_pusch_r13_present, 1)); HANDLE_CODE(bref.unpack(n1_pucch_an_rep_p1_r13_present, 1)); - HANDLE_CODE(bref.unpack(n_pucch_param_r13_present, 1)); + HANDLE_CODE(bref.unpack(npucch_param_r13_present, 1)); HANDLE_CODE(bref.unpack(nka_pucch_param_r13_present, 1)); HANDLE_CODE(bref.unpack(codebooksize_determination_r13_present, 1)); HANDLE_CODE(bref.unpack(maximum_payload_coderate_r13_present, 1)); @@ -35624,16 +35566,16 @@ SRSASN_CODE pucch_cfg_ded_r13_s::unpack(bit_ref& bref) HANDLE_CODE(ack_nack_repeat_r13.unpack(bref)); if (tdd_ack_nack_feedback_mode_r13_present) { - HANDLE_CODE(unpack_enum(tdd_ack_nack_feedback_mode_r13, bref)); + HANDLE_CODE(tdd_ack_nack_feedback_mode_r13.unpack(bref)); } if (pucch_format_r13_present) { HANDLE_CODE(pucch_format_r13.unpack(bref)); } if (n1_pucch_an_rep_p1_r13_present) { - HANDLE_CODE(unpack_unalign_integer(n1_pucch_an_rep_p1_r13, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(unpack_integer(n1_pucch_an_rep_p1_r13, bref, (uint16_t)0u, (uint16_t)2047u)); } - if (n_pucch_param_r13_present) { - HANDLE_CODE(n_pucch_param_r13.unpack(bref)); + if (npucch_param_r13_present) { + HANDLE_CODE(npucch_param_r13.unpack(bref)); } if (nka_pucch_param_r13_present) { HANDLE_CODE(nka_pucch_param_r13.unpack(bref)); @@ -35642,10 +35584,10 @@ SRSASN_CODE pucch_cfg_ded_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(spatial_bundling_pusch_r13, 1)); HANDLE_CODE(bref.unpack(harq_timing_tdd_r13, 1)); if (codebooksize_determination_r13_present) { - HANDLE_CODE(unpack_enum(codebooksize_determination_r13, bref)); + HANDLE_CODE(codebooksize_determination_r13.unpack(bref)); } if (maximum_payload_coderate_r13_present) { - HANDLE_CODE(unpack_unalign_integer(maximum_payload_coderate_r13, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(maximum_payload_coderate_r13, bref, (uint8_t)0u, (uint8_t)7u)); } if (pucch_num_repeat_ce_r13_present) { HANDLE_CODE(pucch_num_repeat_ce_r13.unpack(bref)); @@ -35674,9 +35616,9 @@ void pucch_cfg_ded_r13_s::to_json(json_writer& j) const if (n1_pucch_an_rep_p1_r13_present) { j.write_int("n1PUCCH-AN-RepP1-r13", n1_pucch_an_rep_p1_r13); } - if (n_pucch_param_r13_present) { + if (npucch_param_r13_present) { j.write_fieldname("nPUCCH-Param-r13"); - n_pucch_param_r13.to_json(j); + npucch_param_r13.to_json(j); } if (nka_pucch_param_r13_present) { j.write_fieldname("nkaPUCCH-Param-r13"); @@ -35722,13 +35664,13 @@ void pucch_cfg_ded_r13_s::ack_nack_repeat_r13_c_::to_json(json_writer& j) const } SRSASN_CODE pucch_cfg_ded_r13_s::ack_nack_repeat_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.repeat_factor_r13)); - HANDLE_CODE(pack_unalign_integer(bref, c.n1_pucch_an_rep_r13, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(c.repeat_factor_r13.pack(bref)); + HANDLE_CODE(pack_integer(bref, c.n1_pucch_an_rep_r13, (uint16_t)0u, (uint16_t)2047u)); break; default: log_invalid_choice_id(type_, "pucch_cfg_ded_r13_s::ack_nack_repeat_r13_c_"); @@ -35739,14 +35681,14 @@ SRSASN_CODE pucch_cfg_ded_r13_s::ack_nack_repeat_r13_c_::pack(bit_ref& bref) con SRSASN_CODE pucch_cfg_ded_r13_s::ack_nack_repeat_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.repeat_factor_r13, bref)); - HANDLE_CODE(unpack_unalign_integer(c.n1_pucch_an_rep_r13, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(c.repeat_factor_r13.unpack(bref)); + HANDLE_CODE(unpack_integer(c.n1_pucch_an_rep_r13, bref, (uint16_t)0u, (uint16_t)2047u)); break; default: log_invalid_choice_id(type_, "pucch_cfg_ded_r13_s::ack_nack_repeat_r13_c_"); @@ -35914,14 +35856,14 @@ void pucch_cfg_ded_r13_s::pucch_format_r13_c_::to_json(json_writer& j) const } SRSASN_CODE pucch_cfg_ded_r13_s::pucch_format_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::format3_r13: HANDLE_CODE(bref.pack(c.get().n3_pucch_an_list_r13_present, 1)); HANDLE_CODE(bref.pack(c.get().two_ant_port_activ_pucch_format3_r13_present, 1)); if (c.get().n3_pucch_an_list_r13_present) { HANDLE_CODE(pack_dyn_seq_of( - bref, c.get().n3_pucch_an_list_r13, 1, 4, UnalignedIntegerPacker(0, 549))); + bref, c.get().n3_pucch_an_list_r13, 1, 4, integer_packer(0, 549))); } if (c.get().two_ant_port_activ_pucch_format3_r13_present) { HANDLE_CODE(c.get().two_ant_port_activ_pucch_format3_r13.pack(bref)); @@ -35958,7 +35900,7 @@ SRSASN_CODE pucch_cfg_ded_r13_s::pucch_format_r13_c_::pack(bit_ref& bref) const SRSASN_CODE pucch_cfg_ded_r13_s::pucch_format_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::format3_r13: @@ -35966,7 +35908,7 @@ SRSASN_CODE pucch_cfg_ded_r13_s::pucch_format_r13_c_::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.get().two_ant_port_activ_pucch_format3_r13_present, 1)); if (c.get().n3_pucch_an_list_r13_present) { HANDLE_CODE(unpack_dyn_seq_of( - c.get().n3_pucch_an_list_r13, bref, 1, 4, UnalignedIntegerPacker(0, 549))); + c.get().n3_pucch_an_list_r13, bref, 1, 4, integer_packer(0, 549))); } if (c.get().two_ant_port_activ_pucch_format3_r13_present) { HANDLE_CODE(c.get().two_ant_port_activ_pucch_format3_r13.unpack(bref)); @@ -36032,12 +35974,12 @@ void pucch_cfg_ded_r13_s::pucch_format_r13_c_::format3_r13_s_::two_ant_port_acti SRSASN_CODE pucch_cfg_ded_r13_s::pucch_format_r13_c_::format3_r13_s_::two_ant_port_activ_pucch_format3_r13_c_::pack( bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_dyn_seq_of(bref, c.n3_pucch_an_list_p1_r13, 1, 4, UnalignedIntegerPacker(0, 549))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.n3_pucch_an_list_p1_r13, 1, 4, integer_packer(0, 549))); break; default: log_invalid_choice_id( @@ -36050,13 +35992,13 @@ SRSASN_CODE pucch_cfg_ded_r13_s::pucch_format_r13_c_::format3_r13_s_::two_ant_port_activ_pucch_format3_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_dyn_seq_of(c.n3_pucch_an_list_p1_r13, bref, 1, 4, UnalignedIntegerPacker(0, 549))); + HANDLE_CODE(unpack_dyn_seq_of(c.n3_pucch_an_list_p1_r13, bref, 1, 4, integer_packer(0, 549))); break; default: log_invalid_choice_id( @@ -36102,18 +36044,17 @@ void pucch_cfg_ded_r13_s::pucch_format_r13_c_::ch_sel_r13_s_::n1_pucch_an_cs_r13 } SRSASN_CODE pucch_cfg_ded_r13_s::pucch_format_r13_c_::ch_sel_r13_s_::n1_pucch_an_cs_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_dyn_seq_of( - bref, - c.n1_pucch_an_cs_list_r13, - 1, - 2, - SeqOfPacker >(1, 4, UnalignedIntegerPacker(0, 2047)))); - HANDLE_CODE(pack_dyn_seq_of(bref, c.n1_pucch_an_cs_list_p1_r13, 2, 4, UnalignedIntegerPacker(0, 2047))); + HANDLE_CODE(pack_dyn_seq_of(bref, + c.n1_pucch_an_cs_list_r13, + 1, + 2, + SeqOfPacker >(1, 4, integer_packer(0, 2047)))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.n1_pucch_an_cs_list_p1_r13, 2, 4, integer_packer(0, 2047))); break; default: log_invalid_choice_id(type_, "pucch_cfg_ded_r13_s::pucch_format_r13_c_::ch_sel_r13_s_::n1_pucch_an_cs_r13_c_"); @@ -36124,20 +36065,18 @@ SRSASN_CODE pucch_cfg_ded_r13_s::pucch_format_r13_c_::ch_sel_r13_s_::n1_pucch_an SRSASN_CODE pucch_cfg_ded_r13_s::pucch_format_r13_c_::ch_sel_r13_s_::n1_pucch_an_cs_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_dyn_seq_of( - c.n1_pucch_an_cs_list_r13, - bref, - 1, - 2, - SeqOfPacker >(1, 4, UnalignedIntegerPacker(0, 2047)))); - HANDLE_CODE( - unpack_dyn_seq_of(c.n1_pucch_an_cs_list_p1_r13, bref, 2, 4, UnalignedIntegerPacker(0, 2047))); + HANDLE_CODE(unpack_dyn_seq_of(c.n1_pucch_an_cs_list_r13, + bref, + 1, + 2, + SeqOfPacker >(1, 4, integer_packer(0, 2047)))); + HANDLE_CODE(unpack_dyn_seq_of(c.n1_pucch_an_cs_list_p1_r13, bref, 2, 4, integer_packer(0, 2047))); break; default: log_invalid_choice_id(type_, "pucch_cfg_ded_r13_s::pucch_format_r13_c_::ch_sel_r13_s_::n1_pucch_an_cs_r13_c_"); @@ -36146,11 +36085,11 @@ SRSASN_CODE pucch_cfg_ded_r13_s::pucch_format_r13_c_::ch_sel_r13_s_::n1_pucch_an return SRSASN_SUCCESS; } -void pucch_cfg_ded_r13_s::n_pucch_param_r13_c_::set(types::options e) +void pucch_cfg_ded_r13_s::npucch_param_r13_c_::set(types::options e) { type_ = e; } -void pucch_cfg_ded_r13_s::n_pucch_param_r13_c_::to_json(json_writer& j) const +void pucch_cfg_ded_r13_s::npucch_param_r13_c_::to_json(json_writer& j) const { j.start_obj(); switch (type_) { @@ -36159,45 +36098,45 @@ void pucch_cfg_ded_r13_s::n_pucch_param_r13_c_::to_json(json_writer& j) const case types::setup: j.write_fieldname("setup"); j.start_obj(); - j.write_int("nPUCCH-Identity-r13", c.n_pucch_id_r13); + j.write_int("nPUCCH-Identity-r13", c.npucch_id_r13); j.write_int("n1PUCCH-AN-r13", c.n1_pucch_an_r13); j.end_obj(); break; default: - log_invalid_choice_id(type_, "pucch_cfg_ded_r13_s::n_pucch_param_r13_c_"); + log_invalid_choice_id(type_, "pucch_cfg_ded_r13_s::npucch_param_r13_c_"); } j.end_obj(); } -SRSASN_CODE pucch_cfg_ded_r13_s::n_pucch_param_r13_c_::pack(bit_ref& bref) const +SRSASN_CODE pucch_cfg_ded_r13_s::npucch_param_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c.n_pucch_id_r13, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_unalign_integer(bref, c.n1_pucch_an_r13, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(pack_integer(bref, c.npucch_id_r13, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(pack_integer(bref, c.n1_pucch_an_r13, (uint16_t)0u, (uint16_t)2047u)); break; default: - log_invalid_choice_id(type_, "pucch_cfg_ded_r13_s::n_pucch_param_r13_c_"); + log_invalid_choice_id(type_, "pucch_cfg_ded_r13_s::npucch_param_r13_c_"); return SRSASN_ERROR_ENCODE_FAIL; } return SRSASN_SUCCESS; } -SRSASN_CODE pucch_cfg_ded_r13_s::n_pucch_param_r13_c_::unpack(bit_ref& bref) +SRSASN_CODE pucch_cfg_ded_r13_s::npucch_param_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c.n_pucch_id_r13, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_unalign_integer(c.n1_pucch_an_r13, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(unpack_integer(c.npucch_id_r13, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(unpack_integer(c.n1_pucch_an_r13, bref, (uint16_t)0u, (uint16_t)2047u)); break; default: - log_invalid_choice_id(type_, "pucch_cfg_ded_r13_s::n_pucch_param_r13_c_"); + log_invalid_choice_id(type_, "pucch_cfg_ded_r13_s::npucch_param_r13_c_"); return SRSASN_ERROR_DECODE_FAIL; } return SRSASN_SUCCESS; @@ -36226,12 +36165,12 @@ void pucch_cfg_ded_r13_s::nka_pucch_param_r13_c_::to_json(json_writer& j) const } SRSASN_CODE pucch_cfg_ded_r13_s::nka_pucch_param_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c.nka_pucch_an_r13, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(pack_integer(bref, c.nka_pucch_an_r13, (uint16_t)0u, (uint16_t)2047u)); break; default: log_invalid_choice_id(type_, "pucch_cfg_ded_r13_s::nka_pucch_param_r13_c_"); @@ -36242,13 +36181,13 @@ SRSASN_CODE pucch_cfg_ded_r13_s::nka_pucch_param_r13_c_::pack(bit_ref& bref) con SRSASN_CODE pucch_cfg_ded_r13_s::nka_pucch_param_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c.nka_pucch_an_r13, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(unpack_integer(c.nka_pucch_an_r13, bref, (uint16_t)0u, (uint16_t)2047u)); break; default: log_invalid_choice_id(type_, "pucch_cfg_ded_r13_s::nka_pucch_param_r13_c_"); @@ -36278,7 +36217,7 @@ void pucch_cfg_ded_r13_s::pucch_num_repeat_ce_r13_c_::to_json(json_writer& j) co } SRSASN_CODE pucch_cfg_ded_r13_s::pucch_num_repeat_ce_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -36294,7 +36233,7 @@ SRSASN_CODE pucch_cfg_ded_r13_s::pucch_num_repeat_ce_r13_c_::pack(bit_ref& bref) SRSASN_CODE pucch_cfg_ded_r13_s::pucch_num_repeat_ce_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -36403,15 +36342,15 @@ void pucch_cfg_ded_r13_s::pucch_num_repeat_ce_r13_c_::setup_c_::to_json(json_wri } SRSASN_CODE pucch_cfg_ded_r13_s::pucch_num_repeat_ce_r13_c_::setup_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::mode_a: - HANDLE_CODE(pack_enum(bref, c.get().pucch_num_repeat_ce_format1_r13)); - HANDLE_CODE(pack_enum(bref, c.get().pucch_num_repeat_ce_format2_r13)); + HANDLE_CODE(c.get().pucch_num_repeat_ce_format1_r13.pack(bref)); + HANDLE_CODE(c.get().pucch_num_repeat_ce_format2_r13.pack(bref)); break; case types::mode_b: - HANDLE_CODE(pack_enum(bref, c.get().pucch_num_repeat_ce_format1_r13)); - HANDLE_CODE(pack_enum(bref, c.get().pucch_num_repeat_ce_format2_r13)); + HANDLE_CODE(c.get().pucch_num_repeat_ce_format1_r13.pack(bref)); + HANDLE_CODE(c.get().pucch_num_repeat_ce_format2_r13.pack(bref)); break; default: log_invalid_choice_id(type_, "pucch_cfg_ded_r13_s::pucch_num_repeat_ce_r13_c_::setup_c_"); @@ -36422,16 +36361,16 @@ SRSASN_CODE pucch_cfg_ded_r13_s::pucch_num_repeat_ce_r13_c_::setup_c_::pack(bit_ SRSASN_CODE pucch_cfg_ded_r13_s::pucch_num_repeat_ce_r13_c_::setup_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::mode_a: - HANDLE_CODE(unpack_enum(c.get().pucch_num_repeat_ce_format1_r13, bref)); - HANDLE_CODE(unpack_enum(c.get().pucch_num_repeat_ce_format2_r13, bref)); + HANDLE_CODE(c.get().pucch_num_repeat_ce_format1_r13.unpack(bref)); + HANDLE_CODE(c.get().pucch_num_repeat_ce_format2_r13.unpack(bref)); break; case types::mode_b: - HANDLE_CODE(unpack_enum(c.get().pucch_num_repeat_ce_format1_r13, bref)); - HANDLE_CODE(unpack_enum(c.get().pucch_num_repeat_ce_format2_r13, bref)); + HANDLE_CODE(c.get().pucch_num_repeat_ce_format1_r13.unpack(bref)); + HANDLE_CODE(c.get().pucch_num_repeat_ce_format2_r13.unpack(bref)); break; default: log_invalid_choice_id(type_, "pucch_cfg_ded_r13_s::pucch_num_repeat_ce_r13_c_::setup_c_"); @@ -36452,7 +36391,7 @@ SRSASN_CODE pucch_cfg_ded_v1020_s::pack(bit_ref& bref) const HANDLE_CODE(pucch_format_r10.pack(bref)); } if (n1_pucch_an_rep_p1_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, n1_pucch_an_rep_p1_r10, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(pack_integer(bref, n1_pucch_an_rep_p1_r10, (uint16_t)0u, (uint16_t)2047u)); } return SRSASN_SUCCESS; @@ -36468,7 +36407,7 @@ SRSASN_CODE pucch_cfg_ded_v1020_s::unpack(bit_ref& bref) HANDLE_CODE(pucch_format_r10.unpack(bref)); } if (n1_pucch_an_rep_p1_r10_present) { - HANDLE_CODE(unpack_unalign_integer(n1_pucch_an_rep_p1_r10, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(unpack_integer(n1_pucch_an_rep_p1_r10, bref, (uint16_t)0u, (uint16_t)2047u)); } return SRSASN_SUCCESS; @@ -36584,7 +36523,7 @@ void pucch_cfg_ded_v1020_s::pucch_format_r10_c_::to_json(json_writer& j) const } SRSASN_CODE pucch_cfg_ded_v1020_s::pucch_format_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::format3_r10: HANDLE_CODE(c.get().pack(bref)); @@ -36604,7 +36543,7 @@ SRSASN_CODE pucch_cfg_ded_v1020_s::pucch_format_r10_c_::pack(bit_ref& bref) cons SRSASN_CODE pucch_cfg_ded_v1020_s::pucch_format_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::format3_r10: @@ -36654,17 +36593,16 @@ void pucch_cfg_ded_v1020_s::pucch_format_r10_c_::ch_sel_r10_s_::n1_pucch_an_cs_r } SRSASN_CODE pucch_cfg_ded_v1020_s::pucch_format_r10_c_::ch_sel_r10_s_::n1_pucch_an_cs_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_dyn_seq_of( - bref, - c.n1_pucch_an_cs_list_r10, - 1, - 2, - SeqOfPacker >(1, 4, UnalignedIntegerPacker(0, 2047)))); + HANDLE_CODE(pack_dyn_seq_of(bref, + c.n1_pucch_an_cs_list_r10, + 1, + 2, + SeqOfPacker >(1, 4, integer_packer(0, 2047)))); break; default: log_invalid_choice_id(type_, "pucch_cfg_ded_v1020_s::pucch_format_r10_c_::ch_sel_r10_s_::n1_pucch_an_cs_r10_c_"); @@ -36675,18 +36613,17 @@ SRSASN_CODE pucch_cfg_ded_v1020_s::pucch_format_r10_c_::ch_sel_r10_s_::n1_pucch_ SRSASN_CODE pucch_cfg_ded_v1020_s::pucch_format_r10_c_::ch_sel_r10_s_::n1_pucch_an_cs_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_dyn_seq_of( - c.n1_pucch_an_cs_list_r10, - bref, - 1, - 2, - SeqOfPacker >(1, 4, UnalignedIntegerPacker(0, 2047)))); + HANDLE_CODE(unpack_dyn_seq_of(c.n1_pucch_an_cs_list_r10, + bref, + 1, + 2, + SeqOfPacker >(1, 4, integer_packer(0, 2047)))); break; default: log_invalid_choice_id(type_, "pucch_cfg_ded_v1020_s::pucch_format_r10_c_::ch_sel_r10_s_::n1_pucch_an_cs_r10_c_"); @@ -36699,13 +36636,13 @@ SRSASN_CODE pucch_cfg_ded_v1020_s::pucch_format_r10_c_::ch_sel_r10_s_::n1_pucch_ SRSASN_CODE pucch_cfg_ded_v1130_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(n1_pucch_an_cs_v1130_present, 1)); - HANDLE_CODE(bref.pack(n_pucch_param_r11_present, 1)); + HANDLE_CODE(bref.pack(npucch_param_r11_present, 1)); if (n1_pucch_an_cs_v1130_present) { HANDLE_CODE(n1_pucch_an_cs_v1130.pack(bref)); } - if (n_pucch_param_r11_present) { - HANDLE_CODE(n_pucch_param_r11.pack(bref)); + if (npucch_param_r11_present) { + HANDLE_CODE(npucch_param_r11.pack(bref)); } return SRSASN_SUCCESS; @@ -36713,13 +36650,13 @@ SRSASN_CODE pucch_cfg_ded_v1130_s::pack(bit_ref& bref) const SRSASN_CODE pucch_cfg_ded_v1130_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(n1_pucch_an_cs_v1130_present, 1)); - HANDLE_CODE(bref.unpack(n_pucch_param_r11_present, 1)); + HANDLE_CODE(bref.unpack(npucch_param_r11_present, 1)); if (n1_pucch_an_cs_v1130_present) { HANDLE_CODE(n1_pucch_an_cs_v1130.unpack(bref)); } - if (n_pucch_param_r11_present) { - HANDLE_CODE(n_pucch_param_r11.unpack(bref)); + if (npucch_param_r11_present) { + HANDLE_CODE(npucch_param_r11.unpack(bref)); } return SRSASN_SUCCESS; @@ -36731,9 +36668,9 @@ void pucch_cfg_ded_v1130_s::to_json(json_writer& j) const j.write_fieldname("n1PUCCH-AN-CS-v1130"); n1_pucch_an_cs_v1130.to_json(j); } - if (n_pucch_param_r11_present) { + if (npucch_param_r11_present) { j.write_fieldname("nPUCCH-Param-r11"); - n_pucch_param_r11.to_json(j); + npucch_param_r11.to_json(j); } j.end_obj(); } @@ -36765,12 +36702,12 @@ void pucch_cfg_ded_v1130_s::n1_pucch_an_cs_v1130_c_::to_json(json_writer& j) con } SRSASN_CODE pucch_cfg_ded_v1130_s::n1_pucch_an_cs_v1130_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_dyn_seq_of(bref, c.n1_pucch_an_cs_list_p1_r11, 2, 4, UnalignedIntegerPacker(0, 2047))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.n1_pucch_an_cs_list_p1_r11, 2, 4, integer_packer(0, 2047))); break; default: log_invalid_choice_id(type_, "pucch_cfg_ded_v1130_s::n1_pucch_an_cs_v1130_c_"); @@ -36781,14 +36718,13 @@ SRSASN_CODE pucch_cfg_ded_v1130_s::n1_pucch_an_cs_v1130_c_::pack(bit_ref& bref) SRSASN_CODE pucch_cfg_ded_v1130_s::n1_pucch_an_cs_v1130_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE( - unpack_dyn_seq_of(c.n1_pucch_an_cs_list_p1_r11, bref, 2, 4, UnalignedIntegerPacker(0, 2047))); + HANDLE_CODE(unpack_dyn_seq_of(c.n1_pucch_an_cs_list_p1_r11, bref, 2, 4, integer_packer(0, 2047))); break; default: log_invalid_choice_id(type_, "pucch_cfg_ded_v1130_s::n1_pucch_an_cs_v1130_c_"); @@ -36797,11 +36733,11 @@ SRSASN_CODE pucch_cfg_ded_v1130_s::n1_pucch_an_cs_v1130_c_::unpack(bit_ref& bref return SRSASN_SUCCESS; } -void pucch_cfg_ded_v1130_s::n_pucch_param_r11_c_::set(types::options e) +void pucch_cfg_ded_v1130_s::npucch_param_r11_c_::set(types::options e) { type_ = e; } -void pucch_cfg_ded_v1130_s::n_pucch_param_r11_c_::to_json(json_writer& j) const +void pucch_cfg_ded_v1130_s::npucch_param_r11_c_::to_json(json_writer& j) const { j.start_obj(); switch (type_) { @@ -36810,45 +36746,45 @@ void pucch_cfg_ded_v1130_s::n_pucch_param_r11_c_::to_json(json_writer& j) const case types::setup: j.write_fieldname("setup"); j.start_obj(); - j.write_int("nPUCCH-Identity-r11", c.n_pucch_id_r11); + j.write_int("nPUCCH-Identity-r11", c.npucch_id_r11); j.write_int("n1PUCCH-AN-r11", c.n1_pucch_an_r11); j.end_obj(); break; default: - log_invalid_choice_id(type_, "pucch_cfg_ded_v1130_s::n_pucch_param_r11_c_"); + log_invalid_choice_id(type_, "pucch_cfg_ded_v1130_s::npucch_param_r11_c_"); } j.end_obj(); } -SRSASN_CODE pucch_cfg_ded_v1130_s::n_pucch_param_r11_c_::pack(bit_ref& bref) const +SRSASN_CODE pucch_cfg_ded_v1130_s::npucch_param_r11_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c.n_pucch_id_r11, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_unalign_integer(bref, c.n1_pucch_an_r11, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(pack_integer(bref, c.npucch_id_r11, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(pack_integer(bref, c.n1_pucch_an_r11, (uint16_t)0u, (uint16_t)2047u)); break; default: - log_invalid_choice_id(type_, "pucch_cfg_ded_v1130_s::n_pucch_param_r11_c_"); + log_invalid_choice_id(type_, "pucch_cfg_ded_v1130_s::npucch_param_r11_c_"); return SRSASN_ERROR_ENCODE_FAIL; } return SRSASN_SUCCESS; } -SRSASN_CODE pucch_cfg_ded_v1130_s::n_pucch_param_r11_c_::unpack(bit_ref& bref) +SRSASN_CODE pucch_cfg_ded_v1130_s::npucch_param_r11_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c.n_pucch_id_r11, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_unalign_integer(c.n1_pucch_an_r11, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(unpack_integer(c.npucch_id_r11, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(unpack_integer(c.n1_pucch_an_r11, bref, (uint16_t)0u, (uint16_t)2047u)); break; default: - log_invalid_choice_id(type_, "pucch_cfg_ded_v1130_s::n_pucch_param_r11_c_"); + log_invalid_choice_id(type_, "pucch_cfg_ded_v1130_s::npucch_param_r11_c_"); return SRSASN_ERROR_DECODE_FAIL; } return SRSASN_SUCCESS; @@ -36898,12 +36834,12 @@ void pucch_cfg_ded_v1250_s::nka_pucch_param_r12_c_::to_json(json_writer& j) cons } SRSASN_CODE pucch_cfg_ded_v1250_s::nka_pucch_param_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c.nka_pucch_an_r12, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(pack_integer(bref, c.nka_pucch_an_r12, (uint16_t)0u, (uint16_t)2047u)); break; default: log_invalid_choice_id(type_, "pucch_cfg_ded_v1250_s::nka_pucch_param_r12_c_"); @@ -36914,13 +36850,13 @@ SRSASN_CODE pucch_cfg_ded_v1250_s::nka_pucch_param_r12_c_::pack(bit_ref& bref) c SRSASN_CODE pucch_cfg_ded_v1250_s::nka_pucch_param_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c.nka_pucch_an_r12, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(unpack_integer(c.nka_pucch_an_r12, bref, (uint16_t)0u, (uint16_t)2047u)); break; default: log_invalid_choice_id(type_, "pucch_cfg_ded_v1250_s::nka_pucch_param_r12_c_"); @@ -36935,7 +36871,7 @@ SRSASN_CODE pucch_cfg_ded_v1430_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(pucch_num_repeat_ce_format1_r14_present, 1)); if (pucch_num_repeat_ce_format1_r14_present) { - HANDLE_CODE(pack_enum(bref, pucch_num_repeat_ce_format1_r14)); + HANDLE_CODE(pucch_num_repeat_ce_format1_r14.pack(bref)); } return SRSASN_SUCCESS; @@ -36945,7 +36881,7 @@ SRSASN_CODE pucch_cfg_ded_v1430_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(pucch_num_repeat_ce_format1_r14_present, 1)); if (pucch_num_repeat_ce_format1_r14_present) { - HANDLE_CODE(unpack_enum(pucch_num_repeat_ce_format1_r14, bref)); + HANDLE_CODE(pucch_num_repeat_ce_format1_r14.unpack(bref)); } return SRSASN_SUCCESS; @@ -36962,17 +36898,17 @@ void pucch_cfg_ded_v1430_s::to_json(json_writer& j) const // PUSCH-ConfigDedicated ::= SEQUENCE SRSASN_CODE pusch_cfg_ded_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, beta_offset_ack_idx, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(pack_unalign_integer(bref, beta_offset_ri_idx, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(pack_unalign_integer(bref, beta_offset_cqi_idx, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, beta_offset_ack_idx, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(pack_integer(bref, beta_offset_ri_idx, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(pack_integer(bref, beta_offset_cqi_idx, (uint8_t)0u, (uint8_t)15u)); return SRSASN_SUCCESS; } SRSASN_CODE pusch_cfg_ded_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(beta_offset_ack_idx, bref, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(unpack_unalign_integer(beta_offset_ri_idx, bref, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(unpack_unalign_integer(beta_offset_cqi_idx, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(beta_offset_ack_idx, bref, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(unpack_integer(beta_offset_ri_idx, bref, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(unpack_integer(beta_offset_cqi_idx, bref, (uint8_t)0u, (uint8_t)15u)); return SRSASN_SUCCESS; } @@ -36996,20 +36932,20 @@ SRSASN_CODE pusch_cfg_ded_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(uci_on_pusch_present, 1)); HANDLE_CODE(bref.pack(pusch_hop_cfg_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, beta_offset_ack_idx_r13, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, beta_offset_ack_idx_r13, (uint8_t)0u, (uint8_t)15u)); if (beta_offset2_ack_idx_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, beta_offset2_ack_idx_r13, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, beta_offset2_ack_idx_r13, (uint8_t)0u, (uint8_t)15u)); } - HANDLE_CODE(pack_unalign_integer(bref, beta_offset_ri_idx_r13, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(pack_unalign_integer(bref, beta_offset_cqi_idx_r13, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, beta_offset_ri_idx_r13, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(pack_integer(bref, beta_offset_cqi_idx_r13, (uint8_t)0u, (uint8_t)15u)); if (beta_offset_mc_r13_present) { HANDLE_CODE(bref.pack(beta_offset_mc_r13.beta_offset2_ack_idx_mc_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, beta_offset_mc_r13.beta_offset_ack_idx_mc_r13, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, beta_offset_mc_r13.beta_offset_ack_idx_mc_r13, (uint8_t)0u, (uint8_t)15u)); if (beta_offset_mc_r13.beta_offset2_ack_idx_mc_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, beta_offset_mc_r13.beta_offset2_ack_idx_mc_r13, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, beta_offset_mc_r13.beta_offset2_ack_idx_mc_r13, (uint8_t)0u, (uint8_t)15u)); } - HANDLE_CODE(pack_unalign_integer(bref, beta_offset_mc_r13.beta_offset_ri_idx_mc_r13, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(pack_unalign_integer(bref, beta_offset_mc_r13.beta_offset_cqi_idx_mc_r13, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, beta_offset_mc_r13.beta_offset_ri_idx_mc_r13, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(pack_integer(bref, beta_offset_mc_r13.beta_offset_cqi_idx_mc_r13, (uint8_t)0u, (uint8_t)15u)); } if (pusch_dmrs_r11_present) { HANDLE_CODE(pusch_dmrs_r11.pack(bref)); @@ -37030,21 +36966,20 @@ SRSASN_CODE pusch_cfg_ded_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(uci_on_pusch_present, 1)); HANDLE_CODE(bref.unpack(pusch_hop_cfg_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(beta_offset_ack_idx_r13, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(beta_offset_ack_idx_r13, bref, (uint8_t)0u, (uint8_t)15u)); if (beta_offset2_ack_idx_r13_present) { - HANDLE_CODE(unpack_unalign_integer(beta_offset2_ack_idx_r13, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(beta_offset2_ack_idx_r13, bref, (uint8_t)0u, (uint8_t)15u)); } - HANDLE_CODE(unpack_unalign_integer(beta_offset_ri_idx_r13, bref, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(unpack_unalign_integer(beta_offset_cqi_idx_r13, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(beta_offset_ri_idx_r13, bref, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(unpack_integer(beta_offset_cqi_idx_r13, bref, (uint8_t)0u, (uint8_t)15u)); if (beta_offset_mc_r13_present) { HANDLE_CODE(bref.unpack(beta_offset_mc_r13.beta_offset2_ack_idx_mc_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(beta_offset_mc_r13.beta_offset_ack_idx_mc_r13, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(beta_offset_mc_r13.beta_offset_ack_idx_mc_r13, bref, (uint8_t)0u, (uint8_t)15u)); if (beta_offset_mc_r13.beta_offset2_ack_idx_mc_r13_present) { - HANDLE_CODE( - unpack_unalign_integer(beta_offset_mc_r13.beta_offset2_ack_idx_mc_r13, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(beta_offset_mc_r13.beta_offset2_ack_idx_mc_r13, bref, (uint8_t)0u, (uint8_t)15u)); } - HANDLE_CODE(unpack_unalign_integer(beta_offset_mc_r13.beta_offset_ri_idx_mc_r13, bref, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(unpack_unalign_integer(beta_offset_mc_r13.beta_offset_cqi_idx_mc_r13, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(beta_offset_mc_r13.beta_offset_ri_idx_mc_r13, bref, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(unpack_integer(beta_offset_mc_r13.beta_offset_cqi_idx_mc_r13, bref, (uint8_t)0u, (uint8_t)15u)); } if (pusch_dmrs_r11_present) { HANDLE_CODE(pusch_dmrs_r11.unpack(bref)); @@ -37108,8 +37043,8 @@ void pusch_cfg_ded_r13_s::pusch_dmrs_r11_c_::to_json(json_writer& j) const case types::setup: j.write_fieldname("setup"); j.start_obj(); - j.write_int("nPUSCH-Identity-r13", c.n_pusch_id_r13); - j.write_int("nDMRS-CSH-Identity-r13", c.n_dmrs_csh_id_r13); + j.write_int("nPUSCH-Identity-r13", c.npusch_id_r13); + j.write_int("nDMRS-CSH-Identity-r13", c.ndmrs_csh_id_r13); j.end_obj(); break; default: @@ -37119,13 +37054,13 @@ void pusch_cfg_ded_r13_s::pusch_dmrs_r11_c_::to_json(json_writer& j) const } SRSASN_CODE pusch_cfg_ded_r13_s::pusch_dmrs_r11_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c.n_pusch_id_r13, (uint16_t)0, (uint16_t)509)); - HANDLE_CODE(pack_unalign_integer(bref, c.n_dmrs_csh_id_r13, (uint16_t)0, (uint16_t)509)); + HANDLE_CODE(pack_integer(bref, c.npusch_id_r13, (uint16_t)0u, (uint16_t)509u)); + HANDLE_CODE(pack_integer(bref, c.ndmrs_csh_id_r13, (uint16_t)0u, (uint16_t)509u)); break; default: log_invalid_choice_id(type_, "pusch_cfg_ded_r13_s::pusch_dmrs_r11_c_"); @@ -37136,14 +37071,14 @@ SRSASN_CODE pusch_cfg_ded_r13_s::pusch_dmrs_r11_c_::pack(bit_ref& bref) const SRSASN_CODE pusch_cfg_ded_r13_s::pusch_dmrs_r11_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c.n_pusch_id_r13, bref, (uint16_t)0, (uint16_t)509)); - HANDLE_CODE(unpack_unalign_integer(c.n_dmrs_csh_id_r13, bref, (uint16_t)0, (uint16_t)509)); + HANDLE_CODE(unpack_integer(c.npusch_id_r13, bref, (uint16_t)0u, (uint16_t)509u)); + HANDLE_CODE(unpack_integer(c.ndmrs_csh_id_r13, bref, (uint16_t)0u, (uint16_t)509u)); break; default: log_invalid_choice_id(type_, "pusch_cfg_ded_r13_s::pusch_dmrs_r11_c_"); @@ -37194,31 +37129,31 @@ void pusch_cfg_ded_r13_s::uci_on_pusch_c_::to_json(json_writer& j) const } SRSASN_CODE pusch_cfg_ded_r13_s::uci_on_pusch_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.beta_offset2_ack_idx_sf_set2_r13_present, 1)); HANDLE_CODE(bref.pack(c.beta_offset_mc_r12_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, c.beta_offset_ack_idx_sf_set2_r13, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, c.beta_offset_ack_idx_sf_set2_r13, (uint8_t)0u, (uint8_t)15u)); if (c.beta_offset2_ack_idx_sf_set2_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.beta_offset2_ack_idx_sf_set2_r13, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, c.beta_offset2_ack_idx_sf_set2_r13, (uint8_t)0u, (uint8_t)15u)); } - HANDLE_CODE(pack_unalign_integer(bref, c.beta_offset_ri_idx_sf_set2_r13, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(pack_unalign_integer(bref, c.beta_offset_cqi_idx_sf_set2_r13, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, c.beta_offset_ri_idx_sf_set2_r13, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(pack_integer(bref, c.beta_offset_cqi_idx_sf_set2_r13, (uint8_t)0u, (uint8_t)15u)); if (c.beta_offset_mc_r12_present) { HANDLE_CODE(bref.pack(c.beta_offset_mc_r12.beta_offset2_ack_idx_mc_sf_set2_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer( - bref, c.beta_offset_mc_r12.beta_offset_ack_idx_mc_sf_set2_r13, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE( + pack_integer(bref, c.beta_offset_mc_r12.beta_offset_ack_idx_mc_sf_set2_r13, (uint8_t)0u, (uint8_t)15u)); if (c.beta_offset_mc_r12.beta_offset2_ack_idx_mc_sf_set2_r13_present) { - HANDLE_CODE(pack_unalign_integer( - bref, c.beta_offset_mc_r12.beta_offset2_ack_idx_mc_sf_set2_r13, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE( + pack_integer(bref, c.beta_offset_mc_r12.beta_offset2_ack_idx_mc_sf_set2_r13, (uint8_t)0u, (uint8_t)15u)); } - HANDLE_CODE(pack_unalign_integer( - bref, c.beta_offset_mc_r12.beta_offset_ri_idx_mc_sf_set2_r13, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(pack_unalign_integer( - bref, c.beta_offset_mc_r12.beta_offset_cqi_idx_mc_sf_set2_r13, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE( + pack_integer(bref, c.beta_offset_mc_r12.beta_offset_ri_idx_mc_sf_set2_r13, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE( + pack_integer(bref, c.beta_offset_mc_r12.beta_offset_cqi_idx_mc_sf_set2_r13, (uint8_t)0u, (uint8_t)15u)); } break; default: @@ -37230,7 +37165,7 @@ SRSASN_CODE pusch_cfg_ded_r13_s::uci_on_pusch_c_::pack(bit_ref& bref) const SRSASN_CODE pusch_cfg_ded_r13_s::uci_on_pusch_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -37238,24 +37173,24 @@ SRSASN_CODE pusch_cfg_ded_r13_s::uci_on_pusch_c_::unpack(bit_ref& bref) case types::setup: HANDLE_CODE(bref.unpack(c.beta_offset2_ack_idx_sf_set2_r13_present, 1)); HANDLE_CODE(bref.unpack(c.beta_offset_mc_r12_present, 1)); - HANDLE_CODE(unpack_unalign_integer(c.beta_offset_ack_idx_sf_set2_r13, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(c.beta_offset_ack_idx_sf_set2_r13, bref, (uint8_t)0u, (uint8_t)15u)); if (c.beta_offset2_ack_idx_sf_set2_r13_present) { - HANDLE_CODE(unpack_unalign_integer(c.beta_offset2_ack_idx_sf_set2_r13, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(c.beta_offset2_ack_idx_sf_set2_r13, bref, (uint8_t)0u, (uint8_t)15u)); } - HANDLE_CODE(unpack_unalign_integer(c.beta_offset_ri_idx_sf_set2_r13, bref, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(unpack_unalign_integer(c.beta_offset_cqi_idx_sf_set2_r13, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(c.beta_offset_ri_idx_sf_set2_r13, bref, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(unpack_integer(c.beta_offset_cqi_idx_sf_set2_r13, bref, (uint8_t)0u, (uint8_t)15u)); if (c.beta_offset_mc_r12_present) { HANDLE_CODE(bref.unpack(c.beta_offset_mc_r12.beta_offset2_ack_idx_mc_sf_set2_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer( - c.beta_offset_mc_r12.beta_offset_ack_idx_mc_sf_set2_r13, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE( + unpack_integer(c.beta_offset_mc_r12.beta_offset_ack_idx_mc_sf_set2_r13, bref, (uint8_t)0u, (uint8_t)15u)); if (c.beta_offset_mc_r12.beta_offset2_ack_idx_mc_sf_set2_r13_present) { - HANDLE_CODE(unpack_unalign_integer( - c.beta_offset_mc_r12.beta_offset2_ack_idx_mc_sf_set2_r13, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer( + c.beta_offset_mc_r12.beta_offset2_ack_idx_mc_sf_set2_r13, bref, (uint8_t)0u, (uint8_t)15u)); } - HANDLE_CODE(unpack_unalign_integer( - c.beta_offset_mc_r12.beta_offset_ri_idx_mc_sf_set2_r13, bref, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(unpack_unalign_integer( - c.beta_offset_mc_r12.beta_offset_cqi_idx_mc_sf_set2_r13, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE( + unpack_integer(c.beta_offset_mc_r12.beta_offset_ri_idx_mc_sf_set2_r13, bref, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE( + unpack_integer(c.beta_offset_mc_r12.beta_offset_cqi_idx_mc_sf_set2_r13, bref, (uint8_t)0u, (uint8_t)15u)); } break; default: @@ -37273,9 +37208,9 @@ SRSASN_CODE pusch_cfg_ded_v1020_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(dmrs_with_occ_activ_r10_present, 1)); if (beta_offset_mc_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, beta_offset_mc_r10.beta_offset_ack_idx_mc_r10, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(pack_unalign_integer(bref, beta_offset_mc_r10.beta_offset_ri_idx_mc_r10, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(pack_unalign_integer(bref, beta_offset_mc_r10.beta_offset_cqi_idx_mc_r10, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, beta_offset_mc_r10.beta_offset_ack_idx_mc_r10, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(pack_integer(bref, beta_offset_mc_r10.beta_offset_ri_idx_mc_r10, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(pack_integer(bref, beta_offset_mc_r10.beta_offset_cqi_idx_mc_r10, (uint8_t)0u, (uint8_t)15u)); } return SRSASN_SUCCESS; @@ -37287,9 +37222,9 @@ SRSASN_CODE pusch_cfg_ded_v1020_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(dmrs_with_occ_activ_r10_present, 1)); if (beta_offset_mc_r10_present) { - HANDLE_CODE(unpack_unalign_integer(beta_offset_mc_r10.beta_offset_ack_idx_mc_r10, bref, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(unpack_unalign_integer(beta_offset_mc_r10.beta_offset_ri_idx_mc_r10, bref, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(unpack_unalign_integer(beta_offset_mc_r10.beta_offset_cqi_idx_mc_r10, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(beta_offset_mc_r10.beta_offset_ack_idx_mc_r10, bref, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(unpack_integer(beta_offset_mc_r10.beta_offset_ri_idx_mc_r10, bref, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(unpack_integer(beta_offset_mc_r10.beta_offset_cqi_idx_mc_r10, bref, (uint8_t)0u, (uint8_t)15u)); } return SRSASN_SUCCESS; @@ -37348,8 +37283,8 @@ void pusch_cfg_ded_v1130_s::pusch_dmrs_r11_c_::to_json(json_writer& j) const case types::setup: j.write_fieldname("setup"); j.start_obj(); - j.write_int("nPUSCH-Identity-r11", c.n_pusch_id_r11); - j.write_int("nDMRS-CSH-Identity-r11", c.n_dmrs_csh_id_r11); + j.write_int("nPUSCH-Identity-r11", c.npusch_id_r11); + j.write_int("nDMRS-CSH-Identity-r11", c.ndmrs_csh_id_r11); j.end_obj(); break; default: @@ -37359,13 +37294,13 @@ void pusch_cfg_ded_v1130_s::pusch_dmrs_r11_c_::to_json(json_writer& j) const } SRSASN_CODE pusch_cfg_ded_v1130_s::pusch_dmrs_r11_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c.n_pusch_id_r11, (uint16_t)0, (uint16_t)509)); - HANDLE_CODE(pack_unalign_integer(bref, c.n_dmrs_csh_id_r11, (uint16_t)0, (uint16_t)509)); + HANDLE_CODE(pack_integer(bref, c.npusch_id_r11, (uint16_t)0u, (uint16_t)509u)); + HANDLE_CODE(pack_integer(bref, c.ndmrs_csh_id_r11, (uint16_t)0u, (uint16_t)509u)); break; default: log_invalid_choice_id(type_, "pusch_cfg_ded_v1130_s::pusch_dmrs_r11_c_"); @@ -37376,14 +37311,14 @@ SRSASN_CODE pusch_cfg_ded_v1130_s::pusch_dmrs_r11_c_::pack(bit_ref& bref) const SRSASN_CODE pusch_cfg_ded_v1130_s::pusch_dmrs_r11_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c.n_pusch_id_r11, bref, (uint16_t)0, (uint16_t)509)); - HANDLE_CODE(unpack_unalign_integer(c.n_dmrs_csh_id_r11, bref, (uint16_t)0, (uint16_t)509)); + HANDLE_CODE(unpack_integer(c.npusch_id_r11, bref, (uint16_t)0u, (uint16_t)509u)); + HANDLE_CODE(unpack_integer(c.ndmrs_csh_id_r11, bref, (uint16_t)0u, (uint16_t)509u)); break; default: log_invalid_choice_id(type_, "pusch_cfg_ded_v1130_s::pusch_dmrs_r11_c_"); @@ -37448,22 +37383,22 @@ void pusch_cfg_ded_v1250_s::uci_on_pusch_c_::to_json(json_writer& j) const } SRSASN_CODE pusch_cfg_ded_v1250_s::uci_on_pusch_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.beta_offset_mc_r12_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, c.beta_offset_ack_idx_sf_set2_r12, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(pack_unalign_integer(bref, c.beta_offset_ri_idx_sf_set2_r12, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(pack_unalign_integer(bref, c.beta_offset_cqi_idx_sf_set2_r12, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, c.beta_offset_ack_idx_sf_set2_r12, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(pack_integer(bref, c.beta_offset_ri_idx_sf_set2_r12, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(pack_integer(bref, c.beta_offset_cqi_idx_sf_set2_r12, (uint8_t)0u, (uint8_t)15u)); if (c.beta_offset_mc_r12_present) { - HANDLE_CODE(pack_unalign_integer( - bref, c.beta_offset_mc_r12.beta_offset_ack_idx_mc_sf_set2_r12, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(pack_unalign_integer( - bref, c.beta_offset_mc_r12.beta_offset_ri_idx_mc_sf_set2_r12, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(pack_unalign_integer( - bref, c.beta_offset_mc_r12.beta_offset_cqi_idx_mc_sf_set2_r12, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE( + pack_integer(bref, c.beta_offset_mc_r12.beta_offset_ack_idx_mc_sf_set2_r12, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE( + pack_integer(bref, c.beta_offset_mc_r12.beta_offset_ri_idx_mc_sf_set2_r12, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE( + pack_integer(bref, c.beta_offset_mc_r12.beta_offset_cqi_idx_mc_sf_set2_r12, (uint8_t)0u, (uint8_t)15u)); } break; default: @@ -37475,23 +37410,23 @@ SRSASN_CODE pusch_cfg_ded_v1250_s::uci_on_pusch_c_::pack(bit_ref& bref) const SRSASN_CODE pusch_cfg_ded_v1250_s::uci_on_pusch_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.unpack(c.beta_offset_mc_r12_present, 1)); - HANDLE_CODE(unpack_unalign_integer(c.beta_offset_ack_idx_sf_set2_r12, bref, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(unpack_unalign_integer(c.beta_offset_ri_idx_sf_set2_r12, bref, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(unpack_unalign_integer(c.beta_offset_cqi_idx_sf_set2_r12, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(c.beta_offset_ack_idx_sf_set2_r12, bref, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(unpack_integer(c.beta_offset_ri_idx_sf_set2_r12, bref, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(unpack_integer(c.beta_offset_cqi_idx_sf_set2_r12, bref, (uint8_t)0u, (uint8_t)15u)); if (c.beta_offset_mc_r12_present) { - HANDLE_CODE(unpack_unalign_integer( - c.beta_offset_mc_r12.beta_offset_ack_idx_mc_sf_set2_r12, bref, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(unpack_unalign_integer( - c.beta_offset_mc_r12.beta_offset_ri_idx_mc_sf_set2_r12, bref, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(unpack_unalign_integer( - c.beta_offset_mc_r12.beta_offset_cqi_idx_mc_sf_set2_r12, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE( + unpack_integer(c.beta_offset_mc_r12.beta_offset_ack_idx_mc_sf_set2_r12, bref, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE( + unpack_integer(c.beta_offset_mc_r12.beta_offset_ri_idx_mc_sf_set2_r12, bref, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE( + unpack_integer(c.beta_offset_mc_r12.beta_offset_cqi_idx_mc_sf_set2_r12, bref, (uint8_t)0u, (uint8_t)15u)); } break; default: @@ -37617,14 +37552,14 @@ void pusch_cfg_ded_v1530_s::ce_pusch_flex_start_prb_alloc_cfg_r15_c_::to_json(js } SRSASN_CODE pusch_cfg_ded_v1530_s::ce_pusch_flex_start_prb_alloc_cfg_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.offset_ce_mode_b_r15_present, 1)); if (c.offset_ce_mode_b_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.offset_ce_mode_b_r15, (int8_t)-1, (int8_t)3)); + HANDLE_CODE(pack_integer(bref, c.offset_ce_mode_b_r15, (int8_t)-1, (int8_t)3)); } break; default: @@ -37636,7 +37571,7 @@ SRSASN_CODE pusch_cfg_ded_v1530_s::ce_pusch_flex_start_prb_alloc_cfg_r15_c_::pac SRSASN_CODE pusch_cfg_ded_v1530_s::ce_pusch_flex_start_prb_alloc_cfg_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -37644,7 +37579,7 @@ SRSASN_CODE pusch_cfg_ded_v1530_s::ce_pusch_flex_start_prb_alloc_cfg_r15_c_::unp case types::setup: HANDLE_CODE(bref.unpack(c.offset_ce_mode_b_r15_present, 1)); if (c.offset_ce_mode_b_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.offset_ce_mode_b_r15, bref, (int8_t)-1, (int8_t)3)); + HANDLE_CODE(unpack_integer(c.offset_ce_mode_b_r15, bref, (int8_t)-1, (int8_t)3)); } break; default: @@ -37681,17 +37616,17 @@ void pusch_cfg_ded_v1530_s::ce_pusch_sub_prb_cfg_r15_c_::to_json(json_writer& j) } SRSASN_CODE pusch_cfg_ded_v1530_s::ce_pusch_sub_prb_cfg_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.location_ce_mode_b_r15_present, 1)); if (c.location_ce_mode_b_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.location_ce_mode_b_r15, (uint8_t)0, (uint8_t)5)); + HANDLE_CODE(pack_integer(bref, c.location_ce_mode_b_r15, (uint8_t)0u, (uint8_t)5u)); } - HANDLE_CODE(pack_unalign_integer(bref, c.six_tone_cyclic_shift_r15, (uint8_t)0, (uint8_t)3)); - HANDLE_CODE(pack_unalign_integer(bref, c.three_tone_cyclic_shift_r15, (uint8_t)0, (uint8_t)2)); + HANDLE_CODE(pack_integer(bref, c.six_tone_cyclic_shift_r15, (uint8_t)0u, (uint8_t)3u)); + HANDLE_CODE(pack_integer(bref, c.three_tone_cyclic_shift_r15, (uint8_t)0u, (uint8_t)2u)); break; default: log_invalid_choice_id(type_, "pusch_cfg_ded_v1530_s::ce_pusch_sub_prb_cfg_r15_c_"); @@ -37702,7 +37637,7 @@ SRSASN_CODE pusch_cfg_ded_v1530_s::ce_pusch_sub_prb_cfg_r15_c_::pack(bit_ref& br SRSASN_CODE pusch_cfg_ded_v1530_s::ce_pusch_sub_prb_cfg_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -37710,10 +37645,10 @@ SRSASN_CODE pusch_cfg_ded_v1530_s::ce_pusch_sub_prb_cfg_r15_c_::unpack(bit_ref& case types::setup: HANDLE_CODE(bref.unpack(c.location_ce_mode_b_r15_present, 1)); if (c.location_ce_mode_b_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.location_ce_mode_b_r15, bref, (uint8_t)0, (uint8_t)5)); + HANDLE_CODE(unpack_integer(c.location_ce_mode_b_r15, bref, (uint8_t)0u, (uint8_t)5u)); } - HANDLE_CODE(unpack_unalign_integer(c.six_tone_cyclic_shift_r15, bref, (uint8_t)0, (uint8_t)3)); - HANDLE_CODE(unpack_unalign_integer(c.three_tone_cyclic_shift_r15, bref, (uint8_t)0, (uint8_t)2)); + HANDLE_CODE(unpack_integer(c.six_tone_cyclic_shift_r15, bref, (uint8_t)0u, (uint8_t)3u)); + HANDLE_CODE(unpack_integer(c.three_tone_cyclic_shift_r15, bref, (uint8_t)0u, (uint8_t)2u)); break; default: log_invalid_choice_id(type_, "pusch_cfg_ded_v1530_s::ce_pusch_sub_prb_cfg_r15_c_"); @@ -37752,7 +37687,7 @@ void pusch_enhance_cfg_r14_c::to_json(json_writer& j) const } SRSASN_CODE pusch_enhance_cfg_r14_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -37760,7 +37695,7 @@ SRSASN_CODE pusch_enhance_cfg_r14_c::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.pusch_hop_offset_pusch_enh_r14_present, 1)); HANDLE_CODE(bref.pack(c.interv_ul_hop_pusch_enh_r14_present, 1)); if (c.pusch_hop_offset_pusch_enh_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.pusch_hop_offset_pusch_enh_r14, (uint8_t)1, (uint8_t)100)); + HANDLE_CODE(pack_integer(bref, c.pusch_hop_offset_pusch_enh_r14, (uint8_t)1u, (uint8_t)100u)); } if (c.interv_ul_hop_pusch_enh_r14_present) { HANDLE_CODE(c.interv_ul_hop_pusch_enh_r14.pack(bref)); @@ -37775,7 +37710,7 @@ SRSASN_CODE pusch_enhance_cfg_r14_c::pack(bit_ref& bref) const SRSASN_CODE pusch_enhance_cfg_r14_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -37784,7 +37719,7 @@ SRSASN_CODE pusch_enhance_cfg_r14_c::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.pusch_hop_offset_pusch_enh_r14_present, 1)); HANDLE_CODE(bref.unpack(c.interv_ul_hop_pusch_enh_r14_present, 1)); if (c.pusch_hop_offset_pusch_enh_r14_present) { - HANDLE_CODE(unpack_unalign_integer(c.pusch_hop_offset_pusch_enh_r14, bref, (uint8_t)1, (uint8_t)100)); + HANDLE_CODE(unpack_integer(c.pusch_hop_offset_pusch_enh_r14, bref, (uint8_t)1u, (uint8_t)100u)); } if (c.interv_ul_hop_pusch_enh_r14_present) { HANDLE_CODE(c.interv_ul_hop_pusch_enh_r14.unpack(bref)); @@ -37860,13 +37795,13 @@ void pusch_enhance_cfg_r14_c::setup_s_::interv_ul_hop_pusch_enh_r14_c_::to_json( } SRSASN_CODE pusch_enhance_cfg_r14_c::setup_s_::interv_ul_hop_pusch_enh_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::interv_fdd_pusch_enh_r14: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; case types::interv_tdd_pusch_enh_r14: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; default: log_invalid_choice_id(type_, "pusch_enhance_cfg_r14_c::setup_s_::interv_ul_hop_pusch_enh_r14_c_"); @@ -37877,14 +37812,14 @@ SRSASN_CODE pusch_enhance_cfg_r14_c::setup_s_::interv_ul_hop_pusch_enh_r14_c_::p SRSASN_CODE pusch_enhance_cfg_r14_c::setup_s_::interv_ul_hop_pusch_enh_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::interv_fdd_pusch_enh_r14: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; case types::interv_tdd_pusch_enh_r14: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; default: log_invalid_choice_id(type_, "pusch_enhance_cfg_r14_c::setup_s_::interv_ul_hop_pusch_enh_r14_c_"); @@ -37992,7 +37927,7 @@ void phys_cfg_ded_stti_r15_c::to_json(json_writer& j) const j.write_fieldname("spucch-Config-r15"); c.spucch_cfg_r15.to_json(j); } - j.write_bool("srs-DCI7-TriggeringConfig-r15", c.srs_dci7_triggering_cfg_r15); + j.write_bool("srs-DCI7-TriggeringConfig-r15", c.srs_dci7_trigger_cfg_r15); j.write_bool("shortProcessingTime-r15", c.short_processing_time_r15); if (c.short_tti_r15_present) { j.write_fieldname("shortTTI-r15"); @@ -38007,7 +37942,7 @@ void phys_cfg_ded_stti_r15_c::to_json(json_writer& j) const } SRSASN_CODE phys_cfg_ded_stti_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -38053,15 +37988,13 @@ SRSASN_CODE phys_cfg_ded_stti_r15_c::pack(bit_ref& bref) const HANDLE_CODE(c.csi_rs_cfg_r15.pack(bref)); } if (c.csi_rs_cfg_nzp_to_release_list_r15_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, c.csi_rs_cfg_nzp_to_release_list_r15, 1, 24, UnalignedIntegerPacker(1, 24))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.csi_rs_cfg_nzp_to_release_list_r15, 1, 24, integer_packer(1, 24))); } if (c.csi_rs_cfg_nzp_to_add_mod_list_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, c.csi_rs_cfg_nzp_to_add_mod_list_r15, 1, 24)); } if (c.csi_rs_cfg_zp_to_release_list_r15_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, c.csi_rs_cfg_zp_to_release_list_r15, 1, 4, UnalignedIntegerPacker(1, 4))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.csi_rs_cfg_zp_to_release_list_r15, 1, 4, integer_packer(1, 4))); } if (c.csi_rs_cfg_zp_to_add_mod_list_r11_present) { HANDLE_CODE(pack_dyn_seq_of(bref, c.csi_rs_cfg_zp_to_add_mod_list_r11, 1, 4)); @@ -38088,7 +38021,7 @@ SRSASN_CODE phys_cfg_ded_stti_r15_c::pack(bit_ref& bref) const if (c.spucch_cfg_r15_present) { HANDLE_CODE(c.spucch_cfg_r15.pack(bref)); } - HANDLE_CODE(bref.pack(c.srs_dci7_triggering_cfg_r15, 1)); + HANDLE_CODE(bref.pack(c.srs_dci7_trigger_cfg_r15, 1)); HANDLE_CODE(bref.pack(c.short_processing_time_r15, 1)); if (c.short_tti_r15_present) { HANDLE_CODE(c.short_tti_r15.pack(bref)); @@ -38103,7 +38036,7 @@ SRSASN_CODE phys_cfg_ded_stti_r15_c::pack(bit_ref& bref) const SRSASN_CODE phys_cfg_ded_stti_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -38150,15 +38083,14 @@ SRSASN_CODE phys_cfg_ded_stti_r15_c::unpack(bit_ref& bref) HANDLE_CODE(c.csi_rs_cfg_r15.unpack(bref)); } if (c.csi_rs_cfg_nzp_to_release_list_r15_present) { - HANDLE_CODE(unpack_dyn_seq_of( - c.csi_rs_cfg_nzp_to_release_list_r15, bref, 1, 24, UnalignedIntegerPacker(1, 24))); + HANDLE_CODE( + unpack_dyn_seq_of(c.csi_rs_cfg_nzp_to_release_list_r15, bref, 1, 24, integer_packer(1, 24))); } if (c.csi_rs_cfg_nzp_to_add_mod_list_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(c.csi_rs_cfg_nzp_to_add_mod_list_r15, bref, 1, 24)); } if (c.csi_rs_cfg_zp_to_release_list_r15_present) { - HANDLE_CODE( - unpack_dyn_seq_of(c.csi_rs_cfg_zp_to_release_list_r15, bref, 1, 4, UnalignedIntegerPacker(1, 4))); + HANDLE_CODE(unpack_dyn_seq_of(c.csi_rs_cfg_zp_to_release_list_r15, bref, 1, 4, integer_packer(1, 4))); } if (c.csi_rs_cfg_zp_to_add_mod_list_r11_present) { HANDLE_CODE(unpack_dyn_seq_of(c.csi_rs_cfg_zp_to_add_mod_list_r11, bref, 1, 4)); @@ -38185,7 +38117,7 @@ SRSASN_CODE phys_cfg_ded_stti_r15_c::unpack(bit_ref& bref) if (c.spucch_cfg_r15_present) { HANDLE_CODE(c.spucch_cfg_r15.unpack(bref)); } - HANDLE_CODE(bref.unpack(c.srs_dci7_triggering_cfg_r15, 1)); + HANDLE_CODE(bref.unpack(c.srs_dci7_trigger_cfg_r15, 1)); HANDLE_CODE(bref.unpack(c.short_processing_time_r15, 1)); if (c.short_tti_r15_present) { HANDLE_CODE(c.short_tti_r15.unpack(bref)); @@ -38205,8 +38137,8 @@ SRSASN_CODE rrc_conn_reject_v1130_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (depriorit_req_r11_present) { - HANDLE_CODE(pack_enum(bref, depriorit_req_r11.depriorit_type_r11)); - HANDLE_CODE(pack_enum(bref, depriorit_req_r11.depriorit_timer_r11)); + HANDLE_CODE(depriorit_req_r11.depriorit_type_r11.pack(bref)); + HANDLE_CODE(depriorit_req_r11.depriorit_timer_r11.pack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -38220,8 +38152,8 @@ SRSASN_CODE rrc_conn_reject_v1130_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (depriorit_req_r11_present) { - HANDLE_CODE(unpack_enum(depriorit_req_r11.depriorit_type_r11, bref)); - HANDLE_CODE(unpack_enum(depriorit_req_r11.depriorit_timer_r11, bref)); + HANDLE_CODE(depriorit_req_r11.depriorit_type_r11.unpack(bref)); + HANDLE_CODE(depriorit_req_r11.depriorit_timer_r11.unpack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -38268,7 +38200,7 @@ void sps_cfg_dl_c::to_json(json_writer& j) const } SRSASN_CODE sps_cfg_dl_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -38284,7 +38216,7 @@ SRSASN_CODE sps_cfg_dl_c::pack(bit_ref& bref) const SRSASN_CODE sps_cfg_dl_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -38302,9 +38234,9 @@ SRSASN_CODE sps_cfg_dl_c::unpack(bit_ref& bref) SRSASN_CODE sps_cfg_dl_c::setup_s_::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_enum(bref, semi_persist_sched_interv_dl)); - HANDLE_CODE(pack_unalign_integer(bref, nof_conf_sps_processes, (uint8_t)1, (uint8_t)8)); - HANDLE_CODE(pack_dyn_seq_of(bref, n1_pucch_an_persistent_list, 1, 4, UnalignedIntegerPacker(0, 2047))); + HANDLE_CODE(semi_persist_sched_interv_dl.pack(bref)); + HANDLE_CODE(pack_integer(bref, nof_conf_sps_processes, (uint8_t)1u, (uint8_t)8u)); + HANDLE_CODE(pack_dyn_seq_of(bref, n1_pucch_an_persistent_list, 1, 4, integer_packer(0, 2047))); if (ext) { ext_groups_packer_guard group_flags; @@ -38312,7 +38244,7 @@ SRSASN_CODE sps_cfg_dl_c::setup_s_::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(two_ant_port_activ_r10.is_present(), 1)); if (two_ant_port_activ_r10.is_present()) { @@ -38325,16 +38257,16 @@ SRSASN_CODE sps_cfg_dl_c::setup_s_::pack(bit_ref& bref) const SRSASN_CODE sps_cfg_dl_c::setup_s_::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_enum(semi_persist_sched_interv_dl, bref)); - HANDLE_CODE(unpack_unalign_integer(nof_conf_sps_processes, bref, (uint8_t)1, (uint8_t)8)); - HANDLE_CODE(unpack_dyn_seq_of(n1_pucch_an_persistent_list, bref, 1, 4, UnalignedIntegerPacker(0, 2047))); + HANDLE_CODE(semi_persist_sched_interv_dl.unpack(bref)); + HANDLE_CODE(unpack_integer(nof_conf_sps_processes, bref, (uint8_t)1u, (uint8_t)8u)); + HANDLE_CODE(unpack_dyn_seq_of(n1_pucch_an_persistent_list, bref, 1, 4, integer_packer(0, 2047))); if (ext) { ext_groups_unpacker_guard group_flags(1); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool two_ant_port_activ_r10_present; HANDLE_CODE(bref.unpack(two_ant_port_activ_r10_present, 1)); @@ -38392,13 +38324,12 @@ void sps_cfg_dl_c::setup_s_::two_ant_port_activ_r10_c_::to_json(json_writer& j) } SRSASN_CODE sps_cfg_dl_c::setup_s_::two_ant_port_activ_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE( - pack_dyn_seq_of(bref, c.n1_pucch_an_persistent_list_p1_r10, 1, 4, UnalignedIntegerPacker(0, 2047))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.n1_pucch_an_persistent_list_p1_r10, 1, 4, integer_packer(0, 2047))); break; default: log_invalid_choice_id(type_, "sps_cfg_dl_c::setup_s_::two_ant_port_activ_r10_c_"); @@ -38409,14 +38340,14 @@ SRSASN_CODE sps_cfg_dl_c::setup_s_::two_ant_port_activ_r10_c_::pack(bit_ref& bre SRSASN_CODE sps_cfg_dl_c::setup_s_::two_ant_port_activ_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_dyn_seq_of( - c.n1_pucch_an_persistent_list_p1_r10, bref, 1, 4, UnalignedIntegerPacker(0, 2047))); + HANDLE_CODE( + unpack_dyn_seq_of(c.n1_pucch_an_persistent_list_p1_r10, bref, 1, 4, integer_packer(0, 2047))); break; default: log_invalid_choice_id(type_, "sps_cfg_dl_c::setup_s_::two_ant_port_activ_r10_c_"); @@ -38432,7 +38363,7 @@ SRSASN_CODE srb_to_add_mod_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(rlc_cfg_present, 1)); HANDLE_CODE(bref.pack(lc_ch_cfg_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, srb_id, (uint8_t)1, (uint8_t)2)); + HANDLE_CODE(pack_integer(bref, srb_id, (uint8_t)1u, (uint8_t)2u)); if (rlc_cfg_present) { HANDLE_CODE(rlc_cfg.pack(bref)); } @@ -38449,7 +38380,7 @@ SRSASN_CODE srb_to_add_mod_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(pdcp_ver_change_r15_present, 1)); HANDLE_CODE(bref.pack(rlc_cfg_v1530.is_present(), 1)); @@ -38462,7 +38393,7 @@ SRSASN_CODE srb_to_add_mod_s::pack(bit_ref& bref) const HANDLE_CODE(rlc_bearer_cfg_dupl_r15->pack(bref)); } if (srb_id_v1530_present) { - HANDLE_CODE(pack_unalign_integer(bref, srb_id_v1530, (uint8_t)4, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, srb_id_v1530, (uint8_t)4u, (uint8_t)4u)); } } } @@ -38474,7 +38405,7 @@ SRSASN_CODE srb_to_add_mod_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(rlc_cfg_present, 1)); HANDLE_CODE(bref.unpack(lc_ch_cfg_present, 1)); - HANDLE_CODE(unpack_unalign_integer(srb_id, bref, (uint8_t)1, (uint8_t)2)); + HANDLE_CODE(unpack_integer(srb_id, bref, (uint8_t)1u, (uint8_t)2u)); if (rlc_cfg_present) { HANDLE_CODE(rlc_cfg.unpack(bref)); } @@ -38487,7 +38418,7 @@ SRSASN_CODE srb_to_add_mod_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(pdcp_ver_change_r15_present, 1)); bool rlc_cfg_v1530_present; @@ -38504,7 +38435,7 @@ SRSASN_CODE srb_to_add_mod_s::unpack(bit_ref& bref) HANDLE_CODE(rlc_bearer_cfg_dupl_r15->unpack(bref)); } if (srb_id_v1530_present) { - HANDLE_CODE(unpack_unalign_integer(srb_id_v1530, bref, (uint8_t)4, (uint8_t)4)); + HANDLE_CODE(unpack_integer(srb_id_v1530, bref, (uint8_t)4u, (uint8_t)4u)); } } } @@ -38562,7 +38493,7 @@ void srb_to_add_mod_s::rlc_cfg_c_::to_json(json_writer& j) const } SRSASN_CODE srb_to_add_mod_s::rlc_cfg_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::explicit_value: HANDLE_CODE(c.pack(bref)); @@ -38578,7 +38509,7 @@ SRSASN_CODE srb_to_add_mod_s::rlc_cfg_c_::pack(bit_ref& bref) const SRSASN_CODE srb_to_add_mod_s::rlc_cfg_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::explicit_value: @@ -38614,7 +38545,7 @@ void srb_to_add_mod_s::lc_ch_cfg_c_::to_json(json_writer& j) const } SRSASN_CODE srb_to_add_mod_s::lc_ch_cfg_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::explicit_value: HANDLE_CODE(c.pack(bref)); @@ -38630,7 +38561,7 @@ SRSASN_CODE srb_to_add_mod_s::lc_ch_cfg_c_::pack(bit_ref& bref) const SRSASN_CODE srb_to_add_mod_s::lc_ch_cfg_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::explicit_value: @@ -38678,15 +38609,15 @@ void srs_tpc_pdcch_cfg_r14_c::to_json(json_writer& j) const } SRSASN_CODE srs_tpc_pdcch_cfg_r14_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.srs_cc_set_idxlist_r14_present, 1)); HANDLE_CODE(c.srs_tpc_rnti_r14.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, c.start_bit_of_format3_b_r14, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, c.field_type_format3_b_r14, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, c.start_bit_of_format3_b_r14, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, c.field_type_format3_b_r14, (uint8_t)1u, (uint8_t)4u)); if (c.srs_cc_set_idxlist_r14_present) { HANDLE_CODE(pack_dyn_seq_of(bref, c.srs_cc_set_idxlist_r14, 1, 4)); } @@ -38700,7 +38631,7 @@ SRSASN_CODE srs_tpc_pdcch_cfg_r14_c::pack(bit_ref& bref) const SRSASN_CODE srs_tpc_pdcch_cfg_r14_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -38708,8 +38639,8 @@ SRSASN_CODE srs_tpc_pdcch_cfg_r14_c::unpack(bit_ref& bref) case types::setup: HANDLE_CODE(bref.unpack(c.srs_cc_set_idxlist_r14_present, 1)); HANDLE_CODE(c.srs_tpc_rnti_r14.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(c.start_bit_of_format3_b_r14, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(c.field_type_format3_b_r14, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(unpack_integer(c.start_bit_of_format3_b_r14, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(c.field_type_format3_b_r14, bref, (uint8_t)1u, (uint8_t)4u)); if (c.srs_cc_set_idxlist_r14_present) { HANDLE_CODE(unpack_dyn_seq_of(c.srs_cc_set_idxlist_r14, bref, 1, 4)); } @@ -38747,14 +38678,14 @@ void sched_request_cfg_c::to_json(json_writer& j) const } SRSASN_CODE sched_request_cfg_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c.sr_pucch_res_idx, (uint16_t)0, (uint16_t)2047)); - HANDLE_CODE(pack_unalign_integer(bref, c.sr_cfg_idx, (uint8_t)0, (uint8_t)157)); - HANDLE_CODE(pack_enum(bref, c.dsr_trans_max)); + HANDLE_CODE(pack_integer(bref, c.sr_pucch_res_idx, (uint16_t)0u, (uint16_t)2047u)); + HANDLE_CODE(pack_integer(bref, c.sr_cfg_idx, (uint8_t)0u, (uint8_t)157u)); + HANDLE_CODE(c.dsr_trans_max.pack(bref)); break; default: log_invalid_choice_id(type_, "sched_request_cfg_c"); @@ -38765,15 +38696,15 @@ SRSASN_CODE sched_request_cfg_c::pack(bit_ref& bref) const SRSASN_CODE sched_request_cfg_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c.sr_pucch_res_idx, bref, (uint16_t)0, (uint16_t)2047)); - HANDLE_CODE(unpack_unalign_integer(c.sr_cfg_idx, bref, (uint8_t)0, (uint8_t)157)); - HANDLE_CODE(unpack_enum(c.dsr_trans_max, bref)); + HANDLE_CODE(unpack_integer(c.sr_pucch_res_idx, bref, (uint16_t)0u, (uint16_t)2047u)); + HANDLE_CODE(unpack_integer(c.sr_cfg_idx, bref, (uint8_t)0u, (uint8_t)157u)); + HANDLE_CODE(c.dsr_trans_max.unpack(bref)); break; default: log_invalid_choice_id(type_, "sched_request_cfg_c"); @@ -38788,7 +38719,7 @@ SRSASN_CODE sched_request_cfg_v1020_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(sr_pucch_res_idx_p1_r10_present, 1)); if (sr_pucch_res_idx_p1_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, sr_pucch_res_idx_p1_r10, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(pack_integer(bref, sr_pucch_res_idx_p1_r10, (uint16_t)0u, (uint16_t)2047u)); } return SRSASN_SUCCESS; @@ -38798,7 +38729,7 @@ SRSASN_CODE sched_request_cfg_v1020_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(sr_pucch_res_idx_p1_r10_present, 1)); if (sr_pucch_res_idx_p1_r10_present) { - HANDLE_CODE(unpack_unalign_integer(sr_pucch_res_idx_p1_r10, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(unpack_integer(sr_pucch_res_idx_p1_r10, bref, (uint16_t)0u, (uint16_t)2047u)); } return SRSASN_SUCCESS; @@ -38842,18 +38773,18 @@ void srs_ul_cfg_ded_c::to_json(json_writer& j) const } SRSASN_CODE srs_ul_cfg_ded_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.srs_bw)); - HANDLE_CODE(pack_enum(bref, c.srs_hop_bw)); - HANDLE_CODE(pack_unalign_integer(bref, c.freq_domain_position, (uint8_t)0, (uint8_t)23)); + HANDLE_CODE(c.srs_bw.pack(bref)); + HANDLE_CODE(c.srs_hop_bw.pack(bref)); + HANDLE_CODE(pack_integer(bref, c.freq_domain_position, (uint8_t)0u, (uint8_t)23u)); HANDLE_CODE(bref.pack(c.dur, 1)); - HANDLE_CODE(pack_unalign_integer(bref, c.srs_cfg_idx, (uint16_t)0, (uint16_t)1023)); - HANDLE_CODE(pack_unalign_integer(bref, c.tx_comb, (uint8_t)0, (uint8_t)1)); - HANDLE_CODE(pack_enum(bref, c.cyclic_shift)); + HANDLE_CODE(pack_integer(bref, c.srs_cfg_idx, (uint16_t)0u, (uint16_t)1023u)); + HANDLE_CODE(pack_integer(bref, c.tx_comb, (uint8_t)0u, (uint8_t)1u)); + HANDLE_CODE(c.cyclic_shift.pack(bref)); break; default: log_invalid_choice_id(type_, "srs_ul_cfg_ded_c"); @@ -38864,19 +38795,19 @@ SRSASN_CODE srs_ul_cfg_ded_c::pack(bit_ref& bref) const SRSASN_CODE srs_ul_cfg_ded_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.srs_bw, bref)); - HANDLE_CODE(unpack_enum(c.srs_hop_bw, bref)); - HANDLE_CODE(unpack_unalign_integer(c.freq_domain_position, bref, (uint8_t)0, (uint8_t)23)); + HANDLE_CODE(c.srs_bw.unpack(bref)); + HANDLE_CODE(c.srs_hop_bw.unpack(bref)); + HANDLE_CODE(unpack_integer(c.freq_domain_position, bref, (uint8_t)0u, (uint8_t)23u)); HANDLE_CODE(bref.unpack(c.dur, 1)); - HANDLE_CODE(unpack_unalign_integer(c.srs_cfg_idx, bref, (uint16_t)0, (uint16_t)1023)); - HANDLE_CODE(unpack_unalign_integer(c.tx_comb, bref, (uint8_t)0, (uint8_t)1)); - HANDLE_CODE(unpack_enum(c.cyclic_shift, bref)); + HANDLE_CODE(unpack_integer(c.srs_cfg_idx, bref, (uint16_t)0u, (uint16_t)1023u)); + HANDLE_CODE(unpack_integer(c.tx_comb, bref, (uint8_t)0u, (uint8_t)1u)); + HANDLE_CODE(c.cyclic_shift.unpack(bref)); break; default: log_invalid_choice_id(type_, "srs_ul_cfg_ded_c"); @@ -38888,13 +38819,13 @@ SRSASN_CODE srs_ul_cfg_ded_c::unpack(bit_ref& bref) // SoundingRS-UL-ConfigDedicated-v1020 ::= SEQUENCE SRSASN_CODE srs_ul_cfg_ded_v1020_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, srs_ant_port_r10)); + HANDLE_CODE(srs_ant_port_r10.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE srs_ul_cfg_ded_v1020_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(srs_ant_port_r10, bref)); + HANDLE_CODE(srs_ant_port_r10.unpack(bref)); return SRSASN_SUCCESS; } @@ -38937,7 +38868,7 @@ void srs_ul_cfg_ded_v1310_c::to_json(json_writer& j) const } SRSASN_CODE srs_ul_cfg_ded_v1310_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -38946,13 +38877,13 @@ SRSASN_CODE srs_ul_cfg_ded_v1310_c::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.cyclic_shift_v1310_present, 1)); HANDLE_CODE(bref.pack(c.tx_comb_num_r13_present, 1)); if (c.tx_comb_v1310_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.tx_comb_v1310, (uint8_t)2, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, c.tx_comb_v1310, (uint8_t)2u, (uint8_t)3u)); } if (c.cyclic_shift_v1310_present) { - HANDLE_CODE(pack_enum(bref, c.cyclic_shift_v1310)); + HANDLE_CODE(c.cyclic_shift_v1310.pack(bref)); } if (c.tx_comb_num_r13_present) { - HANDLE_CODE(pack_enum(bref, c.tx_comb_num_r13)); + HANDLE_CODE(c.tx_comb_num_r13.pack(bref)); } break; default: @@ -38964,7 +38895,7 @@ SRSASN_CODE srs_ul_cfg_ded_v1310_c::pack(bit_ref& bref) const SRSASN_CODE srs_ul_cfg_ded_v1310_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -38974,13 +38905,13 @@ SRSASN_CODE srs_ul_cfg_ded_v1310_c::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.cyclic_shift_v1310_present, 1)); HANDLE_CODE(bref.unpack(c.tx_comb_num_r13_present, 1)); if (c.tx_comb_v1310_present) { - HANDLE_CODE(unpack_unalign_integer(c.tx_comb_v1310, bref, (uint8_t)2, (uint8_t)3)); + HANDLE_CODE(unpack_integer(c.tx_comb_v1310, bref, (uint8_t)2u, (uint8_t)3u)); } if (c.cyclic_shift_v1310_present) { - HANDLE_CODE(unpack_enum(c.cyclic_shift_v1310, bref)); + HANDLE_CODE(c.cyclic_shift_v1310.unpack(bref)); } if (c.tx_comb_num_r13_present) { - HANDLE_CODE(unpack_enum(c.tx_comb_num_r13, bref)); + HANDLE_CODE(c.tx_comb_num_r13.unpack(bref)); } break; default: @@ -39025,14 +38956,14 @@ void srs_ul_cfg_ded_aperiodic_r10_c::to_json(json_writer& j) const } SRSASN_CODE srs_ul_cfg_ded_aperiodic_r10_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.srs_cfg_ap_dci_format4_r10_present, 1)); HANDLE_CODE(bref.pack(c.srs_activ_ap_r10_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, c.srs_cfg_idx_ap_r10, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, c.srs_cfg_idx_ap_r10, (uint8_t)0u, (uint8_t)31u)); if (c.srs_cfg_ap_dci_format4_r10_present) { HANDLE_CODE(pack_dyn_seq_of(bref, c.srs_cfg_ap_dci_format4_r10, 1, 3)); } @@ -39049,7 +38980,7 @@ SRSASN_CODE srs_ul_cfg_ded_aperiodic_r10_c::pack(bit_ref& bref) const SRSASN_CODE srs_ul_cfg_ded_aperiodic_r10_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -39057,7 +38988,7 @@ SRSASN_CODE srs_ul_cfg_ded_aperiodic_r10_c::unpack(bit_ref& bref) case types::setup: HANDLE_CODE(bref.unpack(c.srs_cfg_ap_dci_format4_r10_present, 1)); HANDLE_CODE(bref.unpack(c.srs_activ_ap_r10_present, 1)); - HANDLE_CODE(unpack_unalign_integer(c.srs_cfg_idx_ap_r10, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(c.srs_cfg_idx_ap_r10, bref, (uint8_t)0u, (uint8_t)31u)); if (c.srs_cfg_ap_dci_format4_r10_present) { HANDLE_CODE(unpack_dyn_seq_of(c.srs_cfg_ap_dci_format4_r10, bref, 1, 3)); } @@ -39098,7 +39029,7 @@ void srs_ul_cfg_ded_aperiodic_r10_c::setup_s_::srs_activ_ap_r10_c_::to_json(json } SRSASN_CODE srs_ul_cfg_ded_aperiodic_r10_c::setup_s_::srs_activ_ap_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -39116,7 +39047,7 @@ SRSASN_CODE srs_ul_cfg_ded_aperiodic_r10_c::setup_s_::srs_activ_ap_r10_c_::pack( SRSASN_CODE srs_ul_cfg_ded_aperiodic_r10_c::setup_s_::srs_activ_ap_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -39167,7 +39098,7 @@ void srs_ul_cfg_ded_aperiodic_v1310_c::to_json(json_writer& j) const } SRSASN_CODE srs_ul_cfg_ded_aperiodic_v1310_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -39190,7 +39121,7 @@ SRSASN_CODE srs_ul_cfg_ded_aperiodic_v1310_c::pack(bit_ref& bref) const SRSASN_CODE srs_ul_cfg_ded_aperiodic_v1310_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -39242,7 +39173,7 @@ void srs_ul_cfg_ded_aperiodic_v1310_c::setup_s_::srs_activ_ap_v1310_c_::to_json( } SRSASN_CODE srs_ul_cfg_ded_aperiodic_v1310_c::setup_s_::srs_activ_ap_v1310_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -39265,7 +39196,7 @@ SRSASN_CODE srs_ul_cfg_ded_aperiodic_v1310_c::setup_s_::srs_activ_ap_v1310_c_::p SRSASN_CODE srs_ul_cfg_ded_aperiodic_v1310_c::setup_s_::srs_activ_ap_v1310_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -39323,15 +39254,15 @@ void srs_ul_cfg_ded_aperiodic_up_pts_ext_r13_c::to_json(json_writer& j) const } SRSASN_CODE srs_ul_cfg_ded_aperiodic_up_pts_ext_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.srs_cfg_ap_dci_format4_r13_present, 1)); HANDLE_CODE(bref.pack(c.srs_activ_ap_r13_present, 1)); - HANDLE_CODE(pack_enum(bref, c.srs_up_pts_add_r13)); - HANDLE_CODE(pack_unalign_integer(bref, c.srs_cfg_idx_ap_r13, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(c.srs_up_pts_add_r13.pack(bref)); + HANDLE_CODE(pack_integer(bref, c.srs_cfg_idx_ap_r13, (uint8_t)0u, (uint8_t)31u)); if (c.srs_cfg_ap_dci_format4_r13_present) { HANDLE_CODE(pack_dyn_seq_of(bref, c.srs_cfg_ap_dci_format4_r13, 1, 3)); } @@ -39348,7 +39279,7 @@ SRSASN_CODE srs_ul_cfg_ded_aperiodic_up_pts_ext_r13_c::pack(bit_ref& bref) const SRSASN_CODE srs_ul_cfg_ded_aperiodic_up_pts_ext_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -39356,8 +39287,8 @@ SRSASN_CODE srs_ul_cfg_ded_aperiodic_up_pts_ext_r13_c::unpack(bit_ref& bref) case types::setup: HANDLE_CODE(bref.unpack(c.srs_cfg_ap_dci_format4_r13_present, 1)); HANDLE_CODE(bref.unpack(c.srs_activ_ap_r13_present, 1)); - HANDLE_CODE(unpack_enum(c.srs_up_pts_add_r13, bref)); - HANDLE_CODE(unpack_unalign_integer(c.srs_cfg_idx_ap_r13, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(c.srs_up_pts_add_r13.unpack(bref)); + HANDLE_CODE(unpack_integer(c.srs_cfg_idx_ap_r13, bref, (uint8_t)0u, (uint8_t)31u)); if (c.srs_cfg_ap_dci_format4_r13_present) { HANDLE_CODE(unpack_dyn_seq_of(c.srs_cfg_ap_dci_format4_r13, bref, 1, 3)); } @@ -39398,7 +39329,7 @@ void srs_ul_cfg_ded_aperiodic_up_pts_ext_r13_c::setup_s_::srs_activ_ap_r13_c_::t } SRSASN_CODE srs_ul_cfg_ded_aperiodic_up_pts_ext_r13_c::setup_s_::srs_activ_ap_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -39415,7 +39346,7 @@ SRSASN_CODE srs_ul_cfg_ded_aperiodic_up_pts_ext_r13_c::setup_s_::srs_activ_ap_r1 SRSASN_CODE srs_ul_cfg_ded_aperiodic_up_pts_ext_r13_c::setup_s_::srs_activ_ap_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -39464,21 +39395,21 @@ void srs_ul_cfg_ded_up_pts_ext_r13_c::to_json(json_writer& j) const } SRSASN_CODE srs_ul_cfg_ded_up_pts_ext_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.srs_up_pts_add_r13)); - HANDLE_CODE(pack_enum(bref, c.srs_bw_r13)); - HANDLE_CODE(pack_enum(bref, c.srs_hop_bw_r13)); - HANDLE_CODE(pack_unalign_integer(bref, c.freq_domain_position_r13, (uint8_t)0, (uint8_t)23)); + HANDLE_CODE(c.srs_up_pts_add_r13.pack(bref)); + HANDLE_CODE(c.srs_bw_r13.pack(bref)); + HANDLE_CODE(c.srs_hop_bw_r13.pack(bref)); + HANDLE_CODE(pack_integer(bref, c.freq_domain_position_r13, (uint8_t)0u, (uint8_t)23u)); HANDLE_CODE(bref.pack(c.dur_r13, 1)); - HANDLE_CODE(pack_unalign_integer(bref, c.srs_cfg_idx_r13, (uint16_t)0, (uint16_t)1023)); - HANDLE_CODE(pack_unalign_integer(bref, c.tx_comb_r13, (uint8_t)0, (uint8_t)3)); - HANDLE_CODE(pack_enum(bref, c.cyclic_shift_r13)); - HANDLE_CODE(pack_enum(bref, c.srs_ant_port_r13)); - HANDLE_CODE(pack_enum(bref, c.tx_comb_num_r13)); + HANDLE_CODE(pack_integer(bref, c.srs_cfg_idx_r13, (uint16_t)0u, (uint16_t)1023u)); + HANDLE_CODE(pack_integer(bref, c.tx_comb_r13, (uint8_t)0u, (uint8_t)3u)); + HANDLE_CODE(c.cyclic_shift_r13.pack(bref)); + HANDLE_CODE(c.srs_ant_port_r13.pack(bref)); + HANDLE_CODE(c.tx_comb_num_r13.pack(bref)); break; default: log_invalid_choice_id(type_, "srs_ul_cfg_ded_up_pts_ext_r13_c"); @@ -39489,22 +39420,22 @@ SRSASN_CODE srs_ul_cfg_ded_up_pts_ext_r13_c::pack(bit_ref& bref) const SRSASN_CODE srs_ul_cfg_ded_up_pts_ext_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.srs_up_pts_add_r13, bref)); - HANDLE_CODE(unpack_enum(c.srs_bw_r13, bref)); - HANDLE_CODE(unpack_enum(c.srs_hop_bw_r13, bref)); - HANDLE_CODE(unpack_unalign_integer(c.freq_domain_position_r13, bref, (uint8_t)0, (uint8_t)23)); + HANDLE_CODE(c.srs_up_pts_add_r13.unpack(bref)); + HANDLE_CODE(c.srs_bw_r13.unpack(bref)); + HANDLE_CODE(c.srs_hop_bw_r13.unpack(bref)); + HANDLE_CODE(unpack_integer(c.freq_domain_position_r13, bref, (uint8_t)0u, (uint8_t)23u)); HANDLE_CODE(bref.unpack(c.dur_r13, 1)); - HANDLE_CODE(unpack_unalign_integer(c.srs_cfg_idx_r13, bref, (uint16_t)0, (uint16_t)1023)); - HANDLE_CODE(unpack_unalign_integer(c.tx_comb_r13, bref, (uint8_t)0, (uint8_t)3)); - HANDLE_CODE(unpack_enum(c.cyclic_shift_r13, bref)); - HANDLE_CODE(unpack_enum(c.srs_ant_port_r13, bref)); - HANDLE_CODE(unpack_enum(c.tx_comb_num_r13, bref)); + HANDLE_CODE(unpack_integer(c.srs_cfg_idx_r13, bref, (uint16_t)0u, (uint16_t)1023u)); + HANDLE_CODE(unpack_integer(c.tx_comb_r13, bref, (uint8_t)0u, (uint8_t)3u)); + HANDLE_CODE(c.cyclic_shift_r13.unpack(bref)); + HANDLE_CODE(c.srs_ant_port_r13.unpack(bref)); + HANDLE_CODE(c.tx_comb_num_r13.unpack(bref)); break; default: log_invalid_choice_id(type_, "srs_ul_cfg_ded_up_pts_ext_r13_c"); @@ -39518,13 +39449,13 @@ SRSASN_CODE ul_pwr_ctrl_ded_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(filt_coef_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, p0_ue_pusch, (int8_t)-8, (int8_t)7)); - HANDLE_CODE(pack_enum(bref, delta_mcs_enabled)); + HANDLE_CODE(pack_integer(bref, p0_ue_pusch, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(delta_mcs_enabled.pack(bref)); HANDLE_CODE(bref.pack(accumulation_enabled, 1)); - HANDLE_CODE(pack_unalign_integer(bref, p0_ue_pucch, (int8_t)-8, (int8_t)7)); - HANDLE_CODE(pack_unalign_integer(bref, p_srs_offset, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, p0_ue_pucch, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(pack_integer(bref, psrs_offset, (uint8_t)0u, (uint8_t)15u)); if (filt_coef_present) { - HANDLE_CODE(pack_enum(bref, filt_coef)); + HANDLE_CODE(filt_coef.pack(bref)); } return SRSASN_SUCCESS; @@ -39533,13 +39464,13 @@ SRSASN_CODE ul_pwr_ctrl_ded_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(filt_coef_present, 1)); - HANDLE_CODE(unpack_unalign_integer(p0_ue_pusch, bref, (int8_t)-8, (int8_t)7)); - HANDLE_CODE(unpack_enum(delta_mcs_enabled, bref)); + HANDLE_CODE(unpack_integer(p0_ue_pusch, bref, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(delta_mcs_enabled.unpack(bref)); HANDLE_CODE(bref.unpack(accumulation_enabled, 1)); - HANDLE_CODE(unpack_unalign_integer(p0_ue_pucch, bref, (int8_t)-8, (int8_t)7)); - HANDLE_CODE(unpack_unalign_integer(p_srs_offset, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(p0_ue_pucch, bref, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(unpack_integer(psrs_offset, bref, (uint8_t)0u, (uint8_t)15u)); if (filt_coef_present) { - HANDLE_CODE(unpack_enum(filt_coef, bref)); + HANDLE_CODE(filt_coef.unpack(bref)); } return SRSASN_SUCCESS; @@ -39551,7 +39482,7 @@ void ul_pwr_ctrl_ded_s::to_json(json_writer& j) const j.write_str("deltaMCS-Enabled", delta_mcs_enabled.to_string()); j.write_bool("accumulationEnabled", accumulation_enabled); j.write_int("p0-UE-PUCCH", p0_ue_pucch); - j.write_int("pSRS-Offset", p_srs_offset); + j.write_int("pSRS-Offset", psrs_offset); if (filt_coef_present) { j.write_str("filterCoefficient", filt_coef.to_string()); } @@ -39562,13 +39493,13 @@ void ul_pwr_ctrl_ded_s::to_json(json_writer& j) const SRSASN_CODE ul_pwr_ctrl_ded_v1020_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(delta_tx_d_offset_list_pucch_r10_present, 1)); - HANDLE_CODE(bref.pack(p_srs_offset_ap_r10_present, 1)); + HANDLE_CODE(bref.pack(psrs_offset_ap_r10_present, 1)); if (delta_tx_d_offset_list_pucch_r10_present) { HANDLE_CODE(delta_tx_d_offset_list_pucch_r10.pack(bref)); } - if (p_srs_offset_ap_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, p_srs_offset_ap_r10, (uint8_t)0, (uint8_t)15)); + if (psrs_offset_ap_r10_present) { + HANDLE_CODE(pack_integer(bref, psrs_offset_ap_r10, (uint8_t)0u, (uint8_t)15u)); } return SRSASN_SUCCESS; @@ -39576,13 +39507,13 @@ SRSASN_CODE ul_pwr_ctrl_ded_v1020_s::pack(bit_ref& bref) const SRSASN_CODE ul_pwr_ctrl_ded_v1020_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(delta_tx_d_offset_list_pucch_r10_present, 1)); - HANDLE_CODE(bref.unpack(p_srs_offset_ap_r10_present, 1)); + HANDLE_CODE(bref.unpack(psrs_offset_ap_r10_present, 1)); if (delta_tx_d_offset_list_pucch_r10_present) { HANDLE_CODE(delta_tx_d_offset_list_pucch_r10.unpack(bref)); } - if (p_srs_offset_ap_r10_present) { - HANDLE_CODE(unpack_unalign_integer(p_srs_offset_ap_r10, bref, (uint8_t)0, (uint8_t)15)); + if (psrs_offset_ap_r10_present) { + HANDLE_CODE(unpack_integer(psrs_offset_ap_r10, bref, (uint8_t)0u, (uint8_t)15u)); } return SRSASN_SUCCESS; @@ -39594,8 +39525,8 @@ void ul_pwr_ctrl_ded_v1020_s::to_json(json_writer& j) const j.write_fieldname("deltaTxD-OffsetListPUCCH-r10"); delta_tx_d_offset_list_pucch_r10.to_json(j); } - if (p_srs_offset_ap_r10_present) { - j.write_int("pSRS-OffsetAp-r10", p_srs_offset_ap_r10); + if (psrs_offset_ap_r10_present) { + j.write_int("pSRS-OffsetAp-r10", psrs_offset_ap_r10); } j.end_obj(); } @@ -39603,15 +39534,15 @@ void ul_pwr_ctrl_ded_v1020_s::to_json(json_writer& j) const // UplinkPowerControlDedicated-v1130 ::= SEQUENCE SRSASN_CODE ul_pwr_ctrl_ded_v1130_s::pack(bit_ref& bref) const { - HANDLE_CODE(bref.pack(p_srs_offset_v1130_present, 1)); - HANDLE_CODE(bref.pack(p_srs_offset_ap_v1130_present, 1)); + HANDLE_CODE(bref.pack(psrs_offset_v1130_present, 1)); + HANDLE_CODE(bref.pack(psrs_offset_ap_v1130_present, 1)); HANDLE_CODE(bref.pack(delta_tx_d_offset_list_pucch_v1130_present, 1)); - if (p_srs_offset_v1130_present) { - HANDLE_CODE(pack_unalign_integer(bref, p_srs_offset_v1130, (uint8_t)16, (uint8_t)31)); + if (psrs_offset_v1130_present) { + HANDLE_CODE(pack_integer(bref, psrs_offset_v1130, (uint8_t)16u, (uint8_t)31u)); } - if (p_srs_offset_ap_v1130_present) { - HANDLE_CODE(pack_unalign_integer(bref, p_srs_offset_ap_v1130, (uint8_t)16, (uint8_t)31)); + if (psrs_offset_ap_v1130_present) { + HANDLE_CODE(pack_integer(bref, psrs_offset_ap_v1130, (uint8_t)16u, (uint8_t)31u)); } if (delta_tx_d_offset_list_pucch_v1130_present) { HANDLE_CODE(delta_tx_d_offset_list_pucch_v1130.pack(bref)); @@ -39621,15 +39552,15 @@ SRSASN_CODE ul_pwr_ctrl_ded_v1130_s::pack(bit_ref& bref) const } SRSASN_CODE ul_pwr_ctrl_ded_v1130_s::unpack(bit_ref& bref) { - HANDLE_CODE(bref.unpack(p_srs_offset_v1130_present, 1)); - HANDLE_CODE(bref.unpack(p_srs_offset_ap_v1130_present, 1)); + HANDLE_CODE(bref.unpack(psrs_offset_v1130_present, 1)); + HANDLE_CODE(bref.unpack(psrs_offset_ap_v1130_present, 1)); HANDLE_CODE(bref.unpack(delta_tx_d_offset_list_pucch_v1130_present, 1)); - if (p_srs_offset_v1130_present) { - HANDLE_CODE(unpack_unalign_integer(p_srs_offset_v1130, bref, (uint8_t)16, (uint8_t)31)); + if (psrs_offset_v1130_present) { + HANDLE_CODE(unpack_integer(psrs_offset_v1130, bref, (uint8_t)16u, (uint8_t)31u)); } - if (p_srs_offset_ap_v1130_present) { - HANDLE_CODE(unpack_unalign_integer(p_srs_offset_ap_v1130, bref, (uint8_t)16, (uint8_t)31)); + if (psrs_offset_ap_v1130_present) { + HANDLE_CODE(unpack_integer(psrs_offset_ap_v1130, bref, (uint8_t)16u, (uint8_t)31u)); } if (delta_tx_d_offset_list_pucch_v1130_present) { HANDLE_CODE(delta_tx_d_offset_list_pucch_v1130.unpack(bref)); @@ -39640,11 +39571,11 @@ SRSASN_CODE ul_pwr_ctrl_ded_v1130_s::unpack(bit_ref& bref) void ul_pwr_ctrl_ded_v1130_s::to_json(json_writer& j) const { j.start_obj(); - if (p_srs_offset_v1130_present) { - j.write_int("pSRS-Offset-v1130", p_srs_offset_v1130); + if (psrs_offset_v1130_present) { + j.write_int("pSRS-Offset-v1130", psrs_offset_v1130); } - if (p_srs_offset_ap_v1130_present) { - j.write_int("pSRS-OffsetAp-v1130", p_srs_offset_ap_v1130); + if (psrs_offset_ap_v1130_present) { + j.write_int("pSRS-OffsetAp-v1130", psrs_offset_ap_v1130); } if (delta_tx_d_offset_list_pucch_v1130_present) { j.write_fieldname("deltaTxD-OffsetListPUCCH-v1130"); @@ -39700,15 +39631,15 @@ void ul_pwr_ctrl_ded_v1250_s::set2_pwr_ctrl_param_c_::to_json(json_writer& j) co } SRSASN_CODE ul_pwr_ctrl_ded_v1250_s::set2_pwr_ctrl_param_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(c.tpc_sf_set_r12.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, c.p0_nominal_pusch_sf_set2_r12, (int8_t)-126, (int8_t)24)); - HANDLE_CODE(pack_enum(bref, c.alpha_sf_set2_r12)); - HANDLE_CODE(pack_unalign_integer(bref, c.p0_ue_pusch_sf_set2_r12, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(pack_integer(bref, c.p0_nominal_pusch_sf_set2_r12, (int8_t)-126, (int8_t)24)); + HANDLE_CODE(c.alpha_sf_set2_r12.pack(bref)); + HANDLE_CODE(pack_integer(bref, c.p0_ue_pusch_sf_set2_r12, (int8_t)-8, (int8_t)7)); break; default: log_invalid_choice_id(type_, "ul_pwr_ctrl_ded_v1250_s::set2_pwr_ctrl_param_c_"); @@ -39719,16 +39650,16 @@ SRSASN_CODE ul_pwr_ctrl_ded_v1250_s::set2_pwr_ctrl_param_c_::pack(bit_ref& bref) SRSASN_CODE ul_pwr_ctrl_ded_v1250_s::set2_pwr_ctrl_param_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(c.tpc_sf_set_r12.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(c.p0_nominal_pusch_sf_set2_r12, bref, (int8_t)-126, (int8_t)24)); - HANDLE_CODE(unpack_enum(c.alpha_sf_set2_r12, bref)); - HANDLE_CODE(unpack_unalign_integer(c.p0_ue_pusch_sf_set2_r12, bref, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(unpack_integer(c.p0_nominal_pusch_sf_set2_r12, bref, (int8_t)-126, (int8_t)24)); + HANDLE_CODE(c.alpha_sf_set2_r12.unpack(bref)); + HANDLE_CODE(unpack_integer(c.p0_ue_pusch_sf_set2_r12, bref, (int8_t)-8, (int8_t)7)); break; default: log_invalid_choice_id(type_, "ul_pwr_ctrl_ded_v1250_s::set2_pwr_ctrl_param_c_"); @@ -39744,10 +39675,10 @@ SRSASN_CODE ul_pwr_ctrl_ded_v1530_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(p0_ue_pusch_r15_present, 1)); if (alpha_ue_r15_present) { - HANDLE_CODE(pack_enum(bref, alpha_ue_r15)); + HANDLE_CODE(alpha_ue_r15.pack(bref)); } if (p0_ue_pusch_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, p0_ue_pusch_r15, (int8_t)-16, (int8_t)15)); + HANDLE_CODE(pack_integer(bref, p0_ue_pusch_r15, (int8_t)-16, (int8_t)15)); } return SRSASN_SUCCESS; @@ -39758,10 +39689,10 @@ SRSASN_CODE ul_pwr_ctrl_ded_v1530_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(p0_ue_pusch_r15_present, 1)); if (alpha_ue_r15_present) { - HANDLE_CODE(unpack_enum(alpha_ue_r15, bref)); + HANDLE_CODE(alpha_ue_r15.unpack(bref)); } if (p0_ue_pusch_r15_present) { - HANDLE_CODE(unpack_unalign_integer(p0_ue_pusch_r15, bref, (int8_t)-16, (int8_t)15)); + HANDLE_CODE(unpack_integer(p0_ue_pusch_r15, bref, (int8_t)-16, (int8_t)15)); } return SRSASN_SUCCESS; @@ -39781,15 +39712,15 @@ void ul_pwr_ctrl_ded_v1530_s::to_json(json_writer& j) const // CarrierFreqCDMA2000 ::= SEQUENCE SRSASN_CODE carrier_freq_cdma2000_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, band_class)); - HANDLE_CODE(pack_unalign_integer(bref, arfcn, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(band_class.pack(bref)); + HANDLE_CODE(pack_integer(bref, arfcn, (uint16_t)0u, (uint16_t)2047u)); return SRSASN_SUCCESS; } SRSASN_CODE carrier_freq_cdma2000_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(band_class, bref)); - HANDLE_CODE(unpack_unalign_integer(arfcn, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(band_class.unpack(bref)); + HANDLE_CODE(unpack_integer(arfcn, bref, (uint16_t)0u, (uint16_t)2047u)); return SRSASN_SUCCESS; } @@ -39807,7 +39738,7 @@ SRSASN_CODE freq_prio_eutra_v9e0_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(carrier_freq_v9e0_present, 1)); if (carrier_freq_v9e0_present) { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_v9e0, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, carrier_freq_v9e0, (uint32_t)65536u, (uint32_t)262143u)); } return SRSASN_SUCCESS; @@ -39817,7 +39748,7 @@ SRSASN_CODE freq_prio_eutra_v9e0_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(carrier_freq_v9e0_present, 1)); if (carrier_freq_v9e0_present) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq_v9e0, bref, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(carrier_freq_v9e0, bref, (uint32_t)65536u, (uint32_t)262143u)); } return SRSASN_SUCCESS; @@ -39843,18 +39774,18 @@ SRSASN_CODE mac_main_cfg_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(ul_sch_cfg.max_harq_tx_present, 1)); HANDLE_CODE(bref.pack(ul_sch_cfg.periodic_bsr_timer_present, 1)); if (ul_sch_cfg.max_harq_tx_present) { - HANDLE_CODE(pack_enum(bref, ul_sch_cfg.max_harq_tx)); + HANDLE_CODE(ul_sch_cfg.max_harq_tx.pack(bref)); } if (ul_sch_cfg.periodic_bsr_timer_present) { - HANDLE_CODE(pack_enum(bref, ul_sch_cfg.periodic_bsr_timer)); + HANDLE_CODE(ul_sch_cfg.periodic_bsr_timer.pack(bref)); } - HANDLE_CODE(pack_enum(bref, ul_sch_cfg.retx_bsr_timer)); + HANDLE_CODE(ul_sch_cfg.retx_bsr_timer.pack(bref)); HANDLE_CODE(bref.pack(ul_sch_cfg.tti_bundling, 1)); } if (drx_cfg_present) { HANDLE_CODE(drx_cfg.pack(bref)); } - HANDLE_CODE(pack_enum(bref, time_align_timer_ded)); + HANDLE_CODE(time_align_timer_ded.pack(bref)); if (phr_cfg_present) { HANDLE_CODE(phr_cfg.pack(bref)); } @@ -39871,7 +39802,7 @@ SRSASN_CODE mac_main_cfg_s::pack(bit_ref& bref) const group_flags[3] |= lc_ch_sr_cfg_r12.is_present(); group_flags[4] |= drx_cfg_v1310.is_present(); group_flags[4] |= extended_phr2_r13_present; - group_flags[4] |= e_drx_cfg_cycle_start_offset_r13.is_present(); + group_flags[4] |= edrx_cfg_cycle_start_offset_r13.is_present(); group_flags[5] |= drx_cfg_r13.is_present(); group_flags[6] |= skip_ul_tx_r14.is_present(); group_flags[6] |= data_inactivity_timer_cfg_r14.is_present(); @@ -39882,34 +39813,34 @@ SRSASN_CODE mac_main_cfg_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(sr_prohibit_timer_r9_present, 1)); if (sr_prohibit_timer_r9_present) { - HANDLE_CODE(pack_unalign_integer(bref, sr_prohibit_timer_r9, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, sr_prohibit_timer_r9, (uint8_t)0u, (uint8_t)7u)); } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(mac_main_cfg_v1020.is_present(), 1)); if (mac_main_cfg_v1020.is_present()) { - HANDLE_CODE(bref.pack(mac_main_cfg_v1020->s_cell_deactivation_timer_r10_present, 1)); + HANDLE_CODE(bref.pack(mac_main_cfg_v1020->scell_deactivation_timer_r10_present, 1)); HANDLE_CODE(bref.pack(mac_main_cfg_v1020->extended_bsr_sizes_r10_present, 1)); HANDLE_CODE(bref.pack(mac_main_cfg_v1020->extended_phr_r10_present, 1)); - if (mac_main_cfg_v1020->s_cell_deactivation_timer_r10_present) { - HANDLE_CODE(pack_enum(bref, mac_main_cfg_v1020->s_cell_deactivation_timer_r10)); + if (mac_main_cfg_v1020->scell_deactivation_timer_r10_present) { + HANDLE_CODE(mac_main_cfg_v1020->scell_deactivation_timer_r10.pack(bref)); } } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(stag_to_release_list_r11.is_present(), 1)); HANDLE_CODE(bref.pack(stag_to_add_mod_list_r11.is_present(), 1)); HANDLE_CODE(bref.pack(drx_cfg_v1130.is_present(), 1)); if (stag_to_release_list_r11.is_present()) { - HANDLE_CODE(pack_dyn_seq_of(bref, *stag_to_release_list_r11, 1, 3, UnalignedIntegerPacker(1, 3))); + HANDLE_CODE(pack_dyn_seq_of(bref, *stag_to_release_list_r11, 1, 3, integer_packer(1, 3))); } if (stag_to_add_mod_list_r11.is_present()) { HANDLE_CODE(pack_dyn_seq_of(bref, *stag_to_add_mod_list_r11, 1, 3)); @@ -39919,7 +39850,7 @@ SRSASN_CODE mac_main_cfg_s::pack(bit_ref& bref) const } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(e_harq_pattern_r12_present, 1)); HANDLE_CODE(bref.pack(dual_connect_phr.is_present(), 1)); @@ -39935,23 +39866,23 @@ SRSASN_CODE mac_main_cfg_s::pack(bit_ref& bref) const } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(drx_cfg_v1310.is_present(), 1)); HANDLE_CODE(bref.pack(extended_phr2_r13_present, 1)); - HANDLE_CODE(bref.pack(e_drx_cfg_cycle_start_offset_r13.is_present(), 1)); + HANDLE_CODE(bref.pack(edrx_cfg_cycle_start_offset_r13.is_present(), 1)); if (drx_cfg_v1310.is_present()) { HANDLE_CODE(drx_cfg_v1310->pack(bref)); } if (extended_phr2_r13_present) { HANDLE_CODE(bref.pack(extended_phr2_r13, 1)); } - if (e_drx_cfg_cycle_start_offset_r13.is_present()) { - HANDLE_CODE(e_drx_cfg_cycle_start_offset_r13->pack(bref)); + if (edrx_cfg_cycle_start_offset_r13.is_present()) { + HANDLE_CODE(edrx_cfg_cycle_start_offset_r13->pack(bref)); } } if (group_flags[5]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(drx_cfg_r13.is_present(), 1)); if (drx_cfg_r13.is_present()) { @@ -39959,7 +39890,7 @@ SRSASN_CODE mac_main_cfg_s::pack(bit_ref& bref) const } } if (group_flags[6]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(skip_ul_tx_r14.is_present(), 1)); HANDLE_CODE(bref.pack(data_inactivity_timer_cfg_r14.is_present(), 1)); @@ -39971,12 +39902,12 @@ SRSASN_CODE mac_main_cfg_s::pack(bit_ref& bref) const } } if (group_flags[7]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(rai_activation_r14_present, 1)); } if (group_flags[8]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(short_tti_and_spt_r15.is_present(), 1)); HANDLE_CODE(bref.pack(mpdcch_ul_harq_ack_feedback_cfg_r15_present, 1)); @@ -40005,18 +39936,18 @@ SRSASN_CODE mac_main_cfg_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ul_sch_cfg.max_harq_tx_present, 1)); HANDLE_CODE(bref.unpack(ul_sch_cfg.periodic_bsr_timer_present, 1)); if (ul_sch_cfg.max_harq_tx_present) { - HANDLE_CODE(unpack_enum(ul_sch_cfg.max_harq_tx, bref)); + HANDLE_CODE(ul_sch_cfg.max_harq_tx.unpack(bref)); } if (ul_sch_cfg.periodic_bsr_timer_present) { - HANDLE_CODE(unpack_enum(ul_sch_cfg.periodic_bsr_timer, bref)); + HANDLE_CODE(ul_sch_cfg.periodic_bsr_timer.unpack(bref)); } - HANDLE_CODE(unpack_enum(ul_sch_cfg.retx_bsr_timer, bref)); + HANDLE_CODE(ul_sch_cfg.retx_bsr_timer.unpack(bref)); HANDLE_CODE(bref.unpack(ul_sch_cfg.tti_bundling, 1)); } if (drx_cfg_present) { HANDLE_CODE(drx_cfg.unpack(bref)); } - HANDLE_CODE(unpack_enum(time_align_timer_ded, bref)); + HANDLE_CODE(time_align_timer_ded.unpack(bref)); if (phr_cfg_present) { HANDLE_CODE(phr_cfg.unpack(bref)); } @@ -40026,30 +39957,30 @@ SRSASN_CODE mac_main_cfg_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(sr_prohibit_timer_r9_present, 1)); if (sr_prohibit_timer_r9_present) { - HANDLE_CODE(unpack_unalign_integer(sr_prohibit_timer_r9, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(sr_prohibit_timer_r9, bref, (uint8_t)0u, (uint8_t)7u)); } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool mac_main_cfg_v1020_present; HANDLE_CODE(bref.unpack(mac_main_cfg_v1020_present, 1)); mac_main_cfg_v1020.set_present(mac_main_cfg_v1020_present); if (mac_main_cfg_v1020.is_present()) { - HANDLE_CODE(bref.unpack(mac_main_cfg_v1020->s_cell_deactivation_timer_r10_present, 1)); + HANDLE_CODE(bref.unpack(mac_main_cfg_v1020->scell_deactivation_timer_r10_present, 1)); HANDLE_CODE(bref.unpack(mac_main_cfg_v1020->extended_bsr_sizes_r10_present, 1)); HANDLE_CODE(bref.unpack(mac_main_cfg_v1020->extended_phr_r10_present, 1)); - if (mac_main_cfg_v1020->s_cell_deactivation_timer_r10_present) { - HANDLE_CODE(unpack_enum(mac_main_cfg_v1020->s_cell_deactivation_timer_r10, bref)); + if (mac_main_cfg_v1020->scell_deactivation_timer_r10_present) { + HANDLE_CODE(mac_main_cfg_v1020->scell_deactivation_timer_r10.unpack(bref)); } } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool stag_to_release_list_r11_present; HANDLE_CODE(bref.unpack(stag_to_release_list_r11_present, 1)); @@ -40061,7 +39992,7 @@ SRSASN_CODE mac_main_cfg_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(drx_cfg_v1130_present, 1)); drx_cfg_v1130.set_present(drx_cfg_v1130_present); if (stag_to_release_list_r11.is_present()) { - HANDLE_CODE(unpack_dyn_seq_of(*stag_to_release_list_r11, bref, 1, 3, UnalignedIntegerPacker(1, 3))); + HANDLE_CODE(unpack_dyn_seq_of(*stag_to_release_list_r11, bref, 1, 3, integer_packer(1, 3))); } if (stag_to_add_mod_list_r11.is_present()) { HANDLE_CODE(unpack_dyn_seq_of(*stag_to_add_mod_list_r11, bref, 1, 3)); @@ -40071,7 +40002,7 @@ SRSASN_CODE mac_main_cfg_s::unpack(bit_ref& bref) } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(e_harq_pattern_r12_present, 1)); bool dual_connect_phr_present; @@ -40091,27 +40022,27 @@ SRSASN_CODE mac_main_cfg_s::unpack(bit_ref& bref) } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool drx_cfg_v1310_present; HANDLE_CODE(bref.unpack(drx_cfg_v1310_present, 1)); drx_cfg_v1310.set_present(drx_cfg_v1310_present); HANDLE_CODE(bref.unpack(extended_phr2_r13_present, 1)); - bool e_drx_cfg_cycle_start_offset_r13_present; - HANDLE_CODE(bref.unpack(e_drx_cfg_cycle_start_offset_r13_present, 1)); - e_drx_cfg_cycle_start_offset_r13.set_present(e_drx_cfg_cycle_start_offset_r13_present); + bool edrx_cfg_cycle_start_offset_r13_present; + HANDLE_CODE(bref.unpack(edrx_cfg_cycle_start_offset_r13_present, 1)); + edrx_cfg_cycle_start_offset_r13.set_present(edrx_cfg_cycle_start_offset_r13_present); if (drx_cfg_v1310.is_present()) { HANDLE_CODE(drx_cfg_v1310->unpack(bref)); } if (extended_phr2_r13_present) { HANDLE_CODE(bref.unpack(extended_phr2_r13, 1)); } - if (e_drx_cfg_cycle_start_offset_r13.is_present()) { - HANDLE_CODE(e_drx_cfg_cycle_start_offset_r13->unpack(bref)); + if (edrx_cfg_cycle_start_offset_r13.is_present()) { + HANDLE_CODE(edrx_cfg_cycle_start_offset_r13->unpack(bref)); } } if (group_flags[5]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool drx_cfg_r13_present; HANDLE_CODE(bref.unpack(drx_cfg_r13_present, 1)); @@ -40121,7 +40052,7 @@ SRSASN_CODE mac_main_cfg_s::unpack(bit_ref& bref) } } if (group_flags[6]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool skip_ul_tx_r14_present; HANDLE_CODE(bref.unpack(skip_ul_tx_r14_present, 1)); @@ -40137,12 +40068,12 @@ SRSASN_CODE mac_main_cfg_s::unpack(bit_ref& bref) } } if (group_flags[7]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(rai_activation_r14_present, 1)); } if (group_flags[8]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool short_tti_and_spt_r15_present; HANDLE_CODE(bref.unpack(short_tti_and_spt_r15_present, 1)); @@ -40196,8 +40127,8 @@ void mac_main_cfg_s::to_json(json_writer& j) const if (mac_main_cfg_v1020.is_present()) { j.write_fieldname("mac-MainConfig-v1020"); j.start_obj(); - if (mac_main_cfg_v1020->s_cell_deactivation_timer_r10_present) { - j.write_str("sCellDeactivationTimer-r10", mac_main_cfg_v1020->s_cell_deactivation_timer_r10.to_string()); + if (mac_main_cfg_v1020->scell_deactivation_timer_r10_present) { + j.write_str("sCellDeactivationTimer-r10", mac_main_cfg_v1020->scell_deactivation_timer_r10.to_string()); } if (mac_main_cfg_v1020->extended_bsr_sizes_r10_present) { j.write_str("extendedBSR-Sizes-r10", "setup"); @@ -40243,9 +40174,9 @@ void mac_main_cfg_s::to_json(json_writer& j) const if (extended_phr2_r13_present) { j.write_bool("extendedPHR2-r13", extended_phr2_r13); } - if (e_drx_cfg_cycle_start_offset_r13.is_present()) { + if (edrx_cfg_cycle_start_offset_r13.is_present()) { j.write_fieldname("eDRX-Config-CycleStartOffset-r13"); - e_drx_cfg_cycle_start_offset_r13->to_json(j); + edrx_cfg_cycle_start_offset_r13->to_json(j); } if (drx_cfg_r13.is_present()) { j.write_fieldname("drx-Config-r13"); @@ -40302,14 +40233,14 @@ void mac_main_cfg_s::phr_cfg_c_::to_json(json_writer& j) const } SRSASN_CODE mac_main_cfg_s::phr_cfg_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.periodic_phr_timer)); - HANDLE_CODE(pack_enum(bref, c.prohibit_phr_timer)); - HANDLE_CODE(pack_enum(bref, c.dl_pathloss_change)); + HANDLE_CODE(c.periodic_phr_timer.pack(bref)); + HANDLE_CODE(c.prohibit_phr_timer.pack(bref)); + HANDLE_CODE(c.dl_pathloss_change.pack(bref)); break; default: log_invalid_choice_id(type_, "mac_main_cfg_s::phr_cfg_c_"); @@ -40320,15 +40251,15 @@ SRSASN_CODE mac_main_cfg_s::phr_cfg_c_::pack(bit_ref& bref) const SRSASN_CODE mac_main_cfg_s::phr_cfg_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.periodic_phr_timer, bref)); - HANDLE_CODE(unpack_enum(c.prohibit_phr_timer, bref)); - HANDLE_CODE(unpack_enum(c.dl_pathloss_change, bref)); + HANDLE_CODE(c.periodic_phr_timer.unpack(bref)); + HANDLE_CODE(c.prohibit_phr_timer.unpack(bref)); + HANDLE_CODE(c.dl_pathloss_change.unpack(bref)); break; default: log_invalid_choice_id(type_, "mac_main_cfg_s::phr_cfg_c_"); @@ -40360,12 +40291,12 @@ void mac_main_cfg_s::dual_connect_phr_c_::to_json(json_writer& j) const } SRSASN_CODE mac_main_cfg_s::dual_connect_phr_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.phr_mode_other_cg_r12)); + HANDLE_CODE(c.phr_mode_other_cg_r12.pack(bref)); break; default: log_invalid_choice_id(type_, "mac_main_cfg_s::dual_connect_phr_c_"); @@ -40376,13 +40307,13 @@ SRSASN_CODE mac_main_cfg_s::dual_connect_phr_c_::pack(bit_ref& bref) const SRSASN_CODE mac_main_cfg_s::dual_connect_phr_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.phr_mode_other_cg_r12, bref)); + HANDLE_CODE(c.phr_mode_other_cg_r12.unpack(bref)); break; default: log_invalid_choice_id(type_, "mac_main_cfg_s::dual_connect_phr_c_"); @@ -40414,12 +40345,12 @@ void mac_main_cfg_s::lc_ch_sr_cfg_r12_c_::to_json(json_writer& j) const } SRSASN_CODE mac_main_cfg_s::lc_ch_sr_cfg_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.lc_ch_sr_prohibit_timer_r12)); + HANDLE_CODE(c.lc_ch_sr_prohibit_timer_r12.pack(bref)); break; default: log_invalid_choice_id(type_, "mac_main_cfg_s::lc_ch_sr_cfg_r12_c_"); @@ -40430,13 +40361,13 @@ SRSASN_CODE mac_main_cfg_s::lc_ch_sr_cfg_r12_c_::pack(bit_ref& bref) const SRSASN_CODE mac_main_cfg_s::lc_ch_sr_cfg_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.lc_ch_sr_prohibit_timer_r12, bref)); + HANDLE_CODE(c.lc_ch_sr_prohibit_timer_r12.unpack(bref)); break; default: log_invalid_choice_id(type_, "mac_main_cfg_s::lc_ch_sr_cfg_r12_c_"); @@ -40445,11 +40376,11 @@ SRSASN_CODE mac_main_cfg_s::lc_ch_sr_cfg_r12_c_::unpack(bit_ref& bref) return SRSASN_SUCCESS; } -void mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::set(types::options e) +void mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::set(types::options e) { type_ = e; } -void mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::to_json(json_writer& j) const +void mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::to_json(json_writer& j) const { j.start_obj(); switch (type_) { @@ -40460,13 +40391,13 @@ void mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::to_json(json_writer& j c.to_json(j); break; default: - log_invalid_choice_id(type_, "mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_"); + log_invalid_choice_id(type_, "mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_"); } j.end_obj(); } -SRSASN_CODE mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::pack(bit_ref& bref) const +SRSASN_CODE mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -40474,15 +40405,15 @@ SRSASN_CODE mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::pack(bit_ref& b HANDLE_CODE(c.pack(bref)); break; default: - log_invalid_choice_id(type_, "mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_"); + log_invalid_choice_id(type_, "mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_"); return SRSASN_ERROR_ENCODE_FAIL; } return SRSASN_SUCCESS; } -SRSASN_CODE mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::unpack(bit_ref& bref) +SRSASN_CODE mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -40491,20 +40422,20 @@ SRSASN_CODE mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::unpack(bit_ref& HANDLE_CODE(c.unpack(bref)); break; default: - log_invalid_choice_id(type_, "mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_"); + log_invalid_choice_id(type_, "mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_"); return SRSASN_ERROR_DECODE_FAIL; } return SRSASN_SUCCESS; } -void mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_::destroy_() {} -void mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_::set(types::options e) +void mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_::destroy_() {} +void mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_::set(types::options e) { destroy_(); type_ = e; } -mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_::setup_c_( - const mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_& other) +mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_::setup_c_( + const mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_& other) { type_ = other.type(); switch (type_) { @@ -40517,12 +40448,12 @@ mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_::setup_c_( case types::nulltype: break; default: - log_invalid_choice_id(type_, "mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_"); + log_invalid_choice_id(type_, "mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_"); } } -mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_& -mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_:: -operator=(const mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_& other) +mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_& +mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_:: +operator=(const mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_& other) { if (this == &other) { return *this; @@ -40538,12 +40469,12 @@ operator=(const mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_& o case types::nulltype: break; default: - log_invalid_choice_id(type_, "mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_"); + log_invalid_choice_id(type_, "mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_"); } return *this; } -void mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_::to_json(json_writer& j) const +void mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_::to_json(json_writer& j) const { j.start_obj(); switch (type_) { @@ -40554,40 +40485,40 @@ void mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_::to_json(json j.write_int("sf10240", c.get()); break; default: - log_invalid_choice_id(type_, "mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_"); + log_invalid_choice_id(type_, "mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_"); } j.end_obj(); } -SRSASN_CODE mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_::pack(bit_ref& bref) const +SRSASN_CODE mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sf5120: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)1)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)1u)); break; case types::sf10240: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)3u)); break; default: - log_invalid_choice_id(type_, "mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_"); + log_invalid_choice_id(type_, "mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_"); return SRSASN_ERROR_ENCODE_FAIL; } return SRSASN_SUCCESS; } -SRSASN_CODE mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_::unpack(bit_ref& bref) +SRSASN_CODE mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sf5120: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)1)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)1u)); break; case types::sf10240: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)3u)); break; default: - log_invalid_choice_id(type_, "mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_"); + log_invalid_choice_id(type_, "mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_"); return SRSASN_ERROR_DECODE_FAIL; } return SRSASN_SUCCESS; @@ -40614,7 +40545,7 @@ void mac_main_cfg_s::drx_cfg_r13_c_::to_json(json_writer& j) const } SRSASN_CODE mac_main_cfg_s::drx_cfg_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -40630,7 +40561,7 @@ SRSASN_CODE mac_main_cfg_s::drx_cfg_r13_c_::pack(bit_ref& bref) const SRSASN_CODE mac_main_cfg_s::drx_cfg_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -40673,7 +40604,7 @@ void mac_main_cfg_s::skip_ul_tx_r14_c_::to_json(json_writer& j) const } SRSASN_CODE mac_main_cfg_s::skip_ul_tx_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -40690,7 +40621,7 @@ SRSASN_CODE mac_main_cfg_s::skip_ul_tx_r14_c_::pack(bit_ref& bref) const SRSASN_CODE mac_main_cfg_s::skip_ul_tx_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -40729,12 +40660,12 @@ void mac_main_cfg_s::data_inactivity_timer_cfg_r14_c_::to_json(json_writer& j) c } SRSASN_CODE mac_main_cfg_s::data_inactivity_timer_cfg_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.data_inactivity_timer_r14)); + HANDLE_CODE(c.data_inactivity_timer_r14.pack(bref)); break; default: log_invalid_choice_id(type_, "mac_main_cfg_s::data_inactivity_timer_cfg_r14_c_"); @@ -40745,13 +40676,13 @@ SRSASN_CODE mac_main_cfg_s::data_inactivity_timer_cfg_r14_c_::pack(bit_ref& bref SRSASN_CODE mac_main_cfg_s::data_inactivity_timer_cfg_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.data_inactivity_timer_r14, bref)); + HANDLE_CODE(c.data_inactivity_timer_r14.unpack(bref)); break; default: log_invalid_choice_id(type_, "mac_main_cfg_s::data_inactivity_timer_cfg_r14_c_"); @@ -40795,7 +40726,7 @@ void mac_main_cfg_s::short_tti_and_spt_r15_c_::to_json(json_writer& j) const } SRSASN_CODE mac_main_cfg_s::short_tti_and_spt_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -40808,13 +40739,13 @@ SRSASN_CODE mac_main_cfg_s::short_tti_and_spt_r15_c_::pack(bit_ref& bref) const HANDLE_CODE(c.drx_cfg_r15.pack(bref)); } if (c.periodic_bsr_timer_r15_present) { - HANDLE_CODE(pack_enum(bref, c.periodic_bsr_timer_r15)); + HANDLE_CODE(c.periodic_bsr_timer_r15.pack(bref)); } if (c.proc_timeline_r15_present) { - HANDLE_CODE(pack_enum(bref, c.proc_timeline_r15)); + HANDLE_CODE(c.proc_timeline_r15.pack(bref)); } if (c.ssr_prohibit_timer_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.ssr_prohibit_timer_r15, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, c.ssr_prohibit_timer_r15, (uint8_t)0u, (uint8_t)7u)); } break; default: @@ -40826,7 +40757,7 @@ SRSASN_CODE mac_main_cfg_s::short_tti_and_spt_r15_c_::pack(bit_ref& bref) const SRSASN_CODE mac_main_cfg_s::short_tti_and_spt_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -40840,13 +40771,13 @@ SRSASN_CODE mac_main_cfg_s::short_tti_and_spt_r15_c_::unpack(bit_ref& bref) HANDLE_CODE(c.drx_cfg_r15.unpack(bref)); } if (c.periodic_bsr_timer_r15_present) { - HANDLE_CODE(unpack_enum(c.periodic_bsr_timer_r15, bref)); + HANDLE_CODE(c.periodic_bsr_timer_r15.unpack(bref)); } if (c.proc_timeline_r15_present) { - HANDLE_CODE(unpack_enum(c.proc_timeline_r15, bref)); + HANDLE_CODE(c.proc_timeline_r15.unpack(bref)); } if (c.ssr_prohibit_timer_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.ssr_prohibit_timer_r15, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(c.ssr_prohibit_timer_r15, bref, (uint8_t)0u, (uint8_t)7u)); } break; default: @@ -40869,8 +40800,8 @@ void mac_main_cfg_s::dormant_state_timers_r15_c_::to_json(json_writer& j) const case types::setup: j.write_fieldname("setup"); j.start_obj(); - if (c.s_cell_hibernation_timer_r15_present) { - j.write_str("sCellHibernationTimer-r15", c.s_cell_hibernation_timer_r15.to_string()); + if (c.scell_hibernation_timer_r15_present) { + j.write_str("sCellHibernationTimer-r15", c.scell_hibernation_timer_r15.to_string()); } if (c.dormant_scell_deactivation_timer_r15_present) { j.write_str("dormantSCellDeactivationTimer-r15", c.dormant_scell_deactivation_timer_r15.to_string()); @@ -40884,18 +40815,18 @@ void mac_main_cfg_s::dormant_state_timers_r15_c_::to_json(json_writer& j) const } SRSASN_CODE mac_main_cfg_s::dormant_state_timers_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(bref.pack(c.s_cell_hibernation_timer_r15_present, 1)); + HANDLE_CODE(bref.pack(c.scell_hibernation_timer_r15_present, 1)); HANDLE_CODE(bref.pack(c.dormant_scell_deactivation_timer_r15_present, 1)); - if (c.s_cell_hibernation_timer_r15_present) { - HANDLE_CODE(pack_enum(bref, c.s_cell_hibernation_timer_r15)); + if (c.scell_hibernation_timer_r15_present) { + HANDLE_CODE(c.scell_hibernation_timer_r15.pack(bref)); } if (c.dormant_scell_deactivation_timer_r15_present) { - HANDLE_CODE(pack_enum(bref, c.dormant_scell_deactivation_timer_r15)); + HANDLE_CODE(c.dormant_scell_deactivation_timer_r15.pack(bref)); } break; default: @@ -40907,19 +40838,19 @@ SRSASN_CODE mac_main_cfg_s::dormant_state_timers_r15_c_::pack(bit_ref& bref) con SRSASN_CODE mac_main_cfg_s::dormant_state_timers_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(bref.unpack(c.s_cell_hibernation_timer_r15_present, 1)); + HANDLE_CODE(bref.unpack(c.scell_hibernation_timer_r15_present, 1)); HANDLE_CODE(bref.unpack(c.dormant_scell_deactivation_timer_r15_present, 1)); - if (c.s_cell_hibernation_timer_r15_present) { - HANDLE_CODE(unpack_enum(c.s_cell_hibernation_timer_r15, bref)); + if (c.scell_hibernation_timer_r15_present) { + HANDLE_CODE(c.scell_hibernation_timer_r15.unpack(bref)); } if (c.dormant_scell_deactivation_timer_r15_present) { - HANDLE_CODE(unpack_enum(c.dormant_scell_deactivation_timer_r15, bref)); + HANDLE_CODE(c.dormant_scell_deactivation_timer_r15.unpack(bref)); } break; default: @@ -40951,7 +40882,7 @@ void meas_sf_pattern_pcell_r10_c::to_json(json_writer& j) const } SRSASN_CODE meas_sf_pattern_pcell_r10_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -40967,7 +40898,7 @@ SRSASN_CODE meas_sf_pattern_pcell_r10_c::pack(bit_ref& bref) const SRSASN_CODE meas_sf_pattern_pcell_r10_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -41022,7 +40953,7 @@ void naics_assist_info_r12_c::to_json(json_writer& j) const } SRSASN_CODE naics_assist_info_r12_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -41031,14 +40962,13 @@ SRSASN_CODE naics_assist_info_r12_c::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.neigh_cells_to_add_mod_list_r12_present, 1)); HANDLE_CODE(bref.pack(c.serv_cellp_a_r12_present, 1)); if (c.neigh_cells_to_release_list_r12_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, c.neigh_cells_to_release_list_r12, 1, 8, UnalignedIntegerPacker(0, 503))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.neigh_cells_to_release_list_r12, 1, 8, integer_packer(0, 503))); } if (c.neigh_cells_to_add_mod_list_r12_present) { HANDLE_CODE(pack_dyn_seq_of(bref, c.neigh_cells_to_add_mod_list_r12, 1, 8)); } if (c.serv_cellp_a_r12_present) { - HANDLE_CODE(pack_enum(bref, c.serv_cellp_a_r12)); + HANDLE_CODE(c.serv_cellp_a_r12.pack(bref)); } break; default: @@ -41050,7 +40980,7 @@ SRSASN_CODE naics_assist_info_r12_c::pack(bit_ref& bref) const SRSASN_CODE naics_assist_info_r12_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -41060,14 +40990,13 @@ SRSASN_CODE naics_assist_info_r12_c::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.neigh_cells_to_add_mod_list_r12_present, 1)); HANDLE_CODE(bref.unpack(c.serv_cellp_a_r12_present, 1)); if (c.neigh_cells_to_release_list_r12_present) { - HANDLE_CODE( - unpack_dyn_seq_of(c.neigh_cells_to_release_list_r12, bref, 1, 8, UnalignedIntegerPacker(0, 503))); + HANDLE_CODE(unpack_dyn_seq_of(c.neigh_cells_to_release_list_r12, bref, 1, 8, integer_packer(0, 503))); } if (c.neigh_cells_to_add_mod_list_r12_present) { HANDLE_CODE(unpack_dyn_seq_of(c.neigh_cells_to_add_mod_list_r12, bref, 1, 8)); } if (c.serv_cellp_a_r12_present) { - HANDLE_CODE(unpack_enum(c.serv_cellp_a_r12, bref)); + HANDLE_CODE(c.serv_cellp_a_r12.unpack(bref)); } break; default: @@ -41102,7 +41031,7 @@ void neigh_cells_crs_info_r11_c::to_json(json_writer& j) const } SRSASN_CODE neigh_cells_crs_info_r11_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -41118,7 +41047,7 @@ SRSASN_CODE neigh_cells_crs_info_r11_c::pack(bit_ref& bref) const SRSASN_CODE neigh_cells_crs_info_r11_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -41158,7 +41087,7 @@ void neigh_cells_crs_info_r13_c::to_json(json_writer& j) const } SRSASN_CODE neigh_cells_crs_info_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -41174,7 +41103,7 @@ SRSASN_CODE neigh_cells_crs_info_r13_c::pack(bit_ref& bref) const SRSASN_CODE neigh_cells_crs_info_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -41214,7 +41143,7 @@ void neigh_cells_crs_info_r15_c::to_json(json_writer& j) const } SRSASN_CODE neigh_cells_crs_info_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -41230,7 +41159,7 @@ SRSASN_CODE neigh_cells_crs_info_r15_c::pack(bit_ref& bref) const SRSASN_CODE neigh_cells_crs_info_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -41369,7 +41298,7 @@ SRSASN_CODE phys_cfg_ded_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(cqi_report_cfg_v920.is_present(), 1)); HANDLE_CODE(bref.pack(ant_info_v920.is_present(), 1)); @@ -41381,7 +41310,7 @@ SRSASN_CODE phys_cfg_ded_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ant_info_r10.is_present(), 1)); HANDLE_CODE(bref.pack(ant_info_ul_r10.is_present(), 1)); @@ -41429,7 +41358,7 @@ SRSASN_CODE phys_cfg_ded_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(add_spec_emission_ca_r10.is_present(), 1)); if (add_spec_emission_ca_r10.is_present()) { @@ -41437,7 +41366,7 @@ SRSASN_CODE phys_cfg_ded_s::pack(bit_ref& bref) const } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(csi_rs_cfg_nzp_to_release_list_r11.is_present(), 1)); HANDLE_CODE(bref.pack(csi_rs_cfg_nzp_to_add_mod_list_r11.is_present(), 1)); @@ -41450,15 +41379,13 @@ SRSASN_CODE phys_cfg_ded_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(pusch_cfg_ded_v1130.is_present(), 1)); HANDLE_CODE(bref.pack(ul_pwr_ctrl_ded_v1130.is_present(), 1)); if (csi_rs_cfg_nzp_to_release_list_r11.is_present()) { - HANDLE_CODE( - pack_dyn_seq_of(bref, *csi_rs_cfg_nzp_to_release_list_r11, 1, 3, UnalignedIntegerPacker(1, 3))); + HANDLE_CODE(pack_dyn_seq_of(bref, *csi_rs_cfg_nzp_to_release_list_r11, 1, 3, integer_packer(1, 3))); } if (csi_rs_cfg_nzp_to_add_mod_list_r11.is_present()) { HANDLE_CODE(pack_dyn_seq_of(bref, *csi_rs_cfg_nzp_to_add_mod_list_r11, 1, 3)); } if (csi_rs_cfg_zp_to_release_list_r11.is_present()) { - HANDLE_CODE( - pack_dyn_seq_of(bref, *csi_rs_cfg_zp_to_release_list_r11, 1, 4, UnalignedIntegerPacker(1, 4))); + HANDLE_CODE(pack_dyn_seq_of(bref, *csi_rs_cfg_zp_to_release_list_r11, 1, 4, integer_packer(1, 4))); } if (csi_rs_cfg_zp_to_add_mod_list_r11.is_present()) { HANDLE_CODE(pack_dyn_seq_of(bref, *csi_rs_cfg_zp_to_add_mod_list_r11, 1, 4)); @@ -41483,7 +41410,7 @@ SRSASN_CODE phys_cfg_ded_s::pack(bit_ref& bref) const } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ant_info_v1250.is_present(), 1)); HANDLE_CODE(bref.pack(eimta_main_cfg_r12.is_present(), 1)); @@ -41519,7 +41446,7 @@ SRSASN_CODE phys_cfg_ded_s::pack(bit_ref& bref) const } } if (group_flags[5]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(pdsch_cfg_ded_v1280.is_present(), 1)); if (pdsch_cfg_ded_v1280.is_present()) { @@ -41527,7 +41454,7 @@ SRSASN_CODE phys_cfg_ded_s::pack(bit_ref& bref) const } } if (group_flags[6]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(pdsch_cfg_ded_v1310.is_present(), 1)); HANDLE_CODE(bref.pack(pucch_cfg_ded_r13.is_present(), 1)); @@ -41579,12 +41506,12 @@ SRSASN_CODE phys_cfg_ded_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, *csi_rs_cfg_nzp_to_add_mod_list_ext_r13, 1, 21)); } if (csi_rs_cfg_nzp_to_release_list_ext_r13.is_present()) { - HANDLE_CODE(pack_dyn_seq_of( - bref, *csi_rs_cfg_nzp_to_release_list_ext_r13, 1, 21, UnalignedIntegerPacker(4, 24))); + HANDLE_CODE( + pack_dyn_seq_of(bref, *csi_rs_cfg_nzp_to_release_list_ext_r13, 1, 21, integer_packer(4, 24))); } } if (group_flags[7]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(cqi_report_cfg_v1320.is_present(), 1)); if (cqi_report_cfg_v1320.is_present()) { @@ -41592,7 +41519,7 @@ SRSASN_CODE phys_cfg_ded_s::pack(bit_ref& bref) const } } if (group_flags[8]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(type_a_srs_tpc_pdcch_group_r14.is_present(), 1)); HANDLE_CODE(bref.pack(must_cfg_r14.is_present(), 1)); @@ -41657,7 +41584,7 @@ SRSASN_CODE phys_cfg_ded_s::pack(bit_ref& bref) const } } if (group_flags[9]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(csi_rs_cfg_v1480.is_present(), 1)); if (csi_rs_cfg_v1480.is_present()) { @@ -41665,7 +41592,7 @@ SRSASN_CODE phys_cfg_ded_s::pack(bit_ref& bref) const } } if (group_flags[10]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(phys_cfg_ded_stti_r15.is_present(), 1)); HANDLE_CODE(bref.pack(pdsch_cfg_ded_v1530.is_present(), 1)); @@ -41757,7 +41684,7 @@ SRSASN_CODE phys_cfg_ded_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool cqi_report_cfg_v920_present; HANDLE_CODE(bref.unpack(cqi_report_cfg_v920_present, 1)); @@ -41773,7 +41700,7 @@ SRSASN_CODE phys_cfg_ded_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool ant_info_r10_present; HANDLE_CODE(bref.unpack(ant_info_r10_present, 1)); @@ -41841,7 +41768,7 @@ SRSASN_CODE phys_cfg_ded_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool add_spec_emission_ca_r10_present; HANDLE_CODE(bref.unpack(add_spec_emission_ca_r10_present, 1)); @@ -41851,7 +41778,7 @@ SRSASN_CODE phys_cfg_ded_s::unpack(bit_ref& bref) } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool csi_rs_cfg_nzp_to_release_list_r11_present; HANDLE_CODE(bref.unpack(csi_rs_cfg_nzp_to_release_list_r11_present, 1)); @@ -41884,15 +41811,13 @@ SRSASN_CODE phys_cfg_ded_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ul_pwr_ctrl_ded_v1130_present, 1)); ul_pwr_ctrl_ded_v1130.set_present(ul_pwr_ctrl_ded_v1130_present); if (csi_rs_cfg_nzp_to_release_list_r11.is_present()) { - HANDLE_CODE( - unpack_dyn_seq_of(*csi_rs_cfg_nzp_to_release_list_r11, bref, 1, 3, UnalignedIntegerPacker(1, 3))); + HANDLE_CODE(unpack_dyn_seq_of(*csi_rs_cfg_nzp_to_release_list_r11, bref, 1, 3, integer_packer(1, 3))); } if (csi_rs_cfg_nzp_to_add_mod_list_r11.is_present()) { HANDLE_CODE(unpack_dyn_seq_of(*csi_rs_cfg_nzp_to_add_mod_list_r11, bref, 1, 3)); } if (csi_rs_cfg_zp_to_release_list_r11.is_present()) { - HANDLE_CODE( - unpack_dyn_seq_of(*csi_rs_cfg_zp_to_release_list_r11, bref, 1, 4, UnalignedIntegerPacker(1, 4))); + HANDLE_CODE(unpack_dyn_seq_of(*csi_rs_cfg_zp_to_release_list_r11, bref, 1, 4, integer_packer(1, 4))); } if (csi_rs_cfg_zp_to_add_mod_list_r11.is_present()) { HANDLE_CODE(unpack_dyn_seq_of(*csi_rs_cfg_zp_to_add_mod_list_r11, bref, 1, 4)); @@ -41917,7 +41842,7 @@ SRSASN_CODE phys_cfg_ded_s::unpack(bit_ref& bref) } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool ant_info_v1250_present; HANDLE_CODE(bref.unpack(ant_info_v1250_present, 1)); @@ -41969,7 +41894,7 @@ SRSASN_CODE phys_cfg_ded_s::unpack(bit_ref& bref) } } if (group_flags[5]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool pdsch_cfg_ded_v1280_present; HANDLE_CODE(bref.unpack(pdsch_cfg_ded_v1280_present, 1)); @@ -41979,7 +41904,7 @@ SRSASN_CODE phys_cfg_ded_s::unpack(bit_ref& bref) } } if (group_flags[6]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool pdsch_cfg_ded_v1310_present; HANDLE_CODE(bref.unpack(pdsch_cfg_ded_v1310_present, 1)); @@ -42057,12 +41982,12 @@ SRSASN_CODE phys_cfg_ded_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(*csi_rs_cfg_nzp_to_add_mod_list_ext_r13, bref, 1, 21)); } if (csi_rs_cfg_nzp_to_release_list_ext_r13.is_present()) { - HANDLE_CODE(unpack_dyn_seq_of( - *csi_rs_cfg_nzp_to_release_list_ext_r13, bref, 1, 21, UnalignedIntegerPacker(4, 24))); + HANDLE_CODE( + unpack_dyn_seq_of(*csi_rs_cfg_nzp_to_release_list_ext_r13, bref, 1, 21, integer_packer(4, 24))); } } if (group_flags[7]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool cqi_report_cfg_v1320_present; HANDLE_CODE(bref.unpack(cqi_report_cfg_v1320_present, 1)); @@ -42072,7 +41997,7 @@ SRSASN_CODE phys_cfg_ded_s::unpack(bit_ref& bref) } } if (group_flags[8]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool type_a_srs_tpc_pdcch_group_r14_present; HANDLE_CODE(bref.unpack(type_a_srs_tpc_pdcch_group_r14_present, 1)); @@ -42165,7 +42090,7 @@ SRSASN_CODE phys_cfg_ded_s::unpack(bit_ref& bref) } } if (group_flags[9]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool csi_rs_cfg_v1480_present; HANDLE_CODE(bref.unpack(csi_rs_cfg_v1480_present, 1)); @@ -42175,7 +42100,7 @@ SRSASN_CODE phys_cfg_ded_s::unpack(bit_ref& bref) } } if (group_flags[10]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool phys_cfg_ded_stti_r15_present; HANDLE_CODE(bref.unpack(phys_cfg_ded_stti_r15_present, 1)); @@ -42623,7 +42548,7 @@ void phys_cfg_ded_s::ant_info_c_::to_json(json_writer& j) const } SRSASN_CODE phys_cfg_ded_s::ant_info_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::explicit_value: HANDLE_CODE(c.pack(bref)); @@ -42639,7 +42564,7 @@ SRSASN_CODE phys_cfg_ded_s::ant_info_c_::pack(bit_ref& bref) const SRSASN_CODE phys_cfg_ded_s::ant_info_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::explicit_value: @@ -42675,7 +42600,7 @@ void phys_cfg_ded_s::ant_info_r10_c_::to_json(json_writer& j) const } SRSASN_CODE phys_cfg_ded_s::ant_info_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::explicit_value_r10: HANDLE_CODE(c.pack(bref)); @@ -42691,7 +42616,7 @@ SRSASN_CODE phys_cfg_ded_s::ant_info_r10_c_::pack(bit_ref& bref) const SRSASN_CODE phys_cfg_ded_s::ant_info_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::explicit_value_r10: @@ -42729,12 +42654,12 @@ void phys_cfg_ded_s::add_spec_emission_ca_r10_c_::to_json(json_writer& j) const } SRSASN_CODE phys_cfg_ded_s::add_spec_emission_ca_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c.add_spec_emission_pcell_r10, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, c.add_spec_emission_pcell_r10, (uint8_t)1u, (uint8_t)32u)); break; default: log_invalid_choice_id(type_, "phys_cfg_ded_s::add_spec_emission_ca_r10_c_"); @@ -42745,13 +42670,13 @@ SRSASN_CODE phys_cfg_ded_s::add_spec_emission_ca_r10_c_::pack(bit_ref& bref) con SRSASN_CODE phys_cfg_ded_s::add_spec_emission_ca_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c.add_spec_emission_pcell_r10, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(c.add_spec_emission_pcell_r10, bref, (uint8_t)1u, (uint8_t)32u)); break; default: log_invalid_choice_id(type_, "phys_cfg_ded_s::add_spec_emission_ca_r10_c_"); @@ -42780,12 +42705,12 @@ void phys_cfg_ded_s::ce_mode_r13_c_::to_json(json_writer& j) const } SRSASN_CODE phys_cfg_ded_s::ce_mode_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c)); + HANDLE_CODE(c.pack(bref)); break; default: log_invalid_choice_id(type_, "phys_cfg_ded_s::ce_mode_r13_c_"); @@ -42796,13 +42721,13 @@ SRSASN_CODE phys_cfg_ded_s::ce_mode_r13_c_::pack(bit_ref& bref) const SRSASN_CODE phys_cfg_ded_s::ce_mode_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c, bref)); + HANDLE_CODE(c.unpack(bref)); break; default: log_invalid_choice_id(type_, "phys_cfg_ded_s::ce_mode_r13_c_"); @@ -42835,7 +42760,7 @@ void phys_cfg_ded_s::type_a_srs_tpc_pdcch_group_r14_c_::to_json(json_writer& j) } SRSASN_CODE phys_cfg_ded_s::type_a_srs_tpc_pdcch_group_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -42851,7 +42776,7 @@ SRSASN_CODE phys_cfg_ded_s::type_a_srs_tpc_pdcch_group_r14_c_::pack(bit_ref& bre SRSASN_CODE phys_cfg_ded_s::type_a_srs_tpc_pdcch_group_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -42892,15 +42817,15 @@ void phys_cfg_ded_s::must_cfg_r14_c_::to_json(json_writer& j) const } SRSASN_CODE phys_cfg_ded_s::must_cfg_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.p_a_must_r14_present, 1)); - HANDLE_CODE(pack_enum(bref, c.k_max_r14)); + HANDLE_CODE(c.k_max_r14.pack(bref)); if (c.p_a_must_r14_present) { - HANDLE_CODE(pack_enum(bref, c.p_a_must_r14)); + HANDLE_CODE(c.p_a_must_r14.pack(bref)); } break; default: @@ -42912,16 +42837,16 @@ SRSASN_CODE phys_cfg_ded_s::must_cfg_r14_c_::pack(bit_ref& bref) const SRSASN_CODE phys_cfg_ded_s::must_cfg_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.unpack(c.p_a_must_r14_present, 1)); - HANDLE_CODE(unpack_enum(c.k_max_r14, bref)); + HANDLE_CODE(c.k_max_r14.unpack(bref)); if (c.p_a_must_r14_present) { - HANDLE_CODE(unpack_enum(c.p_a_must_r14, bref)); + HANDLE_CODE(c.p_a_must_r14.unpack(bref)); } break; default: @@ -42952,7 +42877,7 @@ void phys_cfg_ded_s::semi_static_cfi_cfg_r15_c_::to_json(json_writer& j) const } SRSASN_CODE phys_cfg_ded_s::semi_static_cfi_cfg_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -42968,7 +42893,7 @@ SRSASN_CODE phys_cfg_ded_s::semi_static_cfi_cfg_r15_c_::pack(bit_ref& bref) cons SRSASN_CODE phys_cfg_ded_s::semi_static_cfi_cfg_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -43071,7 +42996,7 @@ void phys_cfg_ded_s::semi_static_cfi_cfg_r15_c_::setup_c_::to_json(json_writer& } SRSASN_CODE phys_cfg_ded_s::semi_static_cfi_cfg_r15_c_::setup_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::cfi_cfg_r15: HANDLE_CODE(c.get().pack(bref)); @@ -43088,7 +43013,7 @@ SRSASN_CODE phys_cfg_ded_s::semi_static_cfi_cfg_r15_c_::setup_c_::pack(bit_ref& SRSASN_CODE phys_cfg_ded_s::semi_static_cfi_cfg_r15_c_::setup_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::cfi_cfg_r15: @@ -43154,7 +43079,7 @@ void phys_cfg_ded_s::blind_pdsch_repeat_cfg_r15_c_::to_json(json_writer& j) cons } SRSASN_CODE phys_cfg_ded_s::blind_pdsch_repeat_cfg_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -43170,29 +43095,28 @@ SRSASN_CODE phys_cfg_ded_s::blind_pdsch_repeat_cfg_r15_c_::pack(bit_ref& bref) c HANDLE_CODE(bref.pack(c.blind_sf_pdsch_repeats_r15, 1)); HANDLE_CODE(bref.pack(c.blind_slot_subslot_pdsch_repeats_r15, 1)); if (c.max_num_sf_pdsch_repeats_r15_present) { - HANDLE_CODE(pack_enum(bref, c.max_num_sf_pdsch_repeats_r15)); + HANDLE_CODE(c.max_num_sf_pdsch_repeats_r15.pack(bref)); } if (c.max_num_slot_subslot_pdsch_repeats_r15_present) { - HANDLE_CODE(pack_enum(bref, c.max_num_slot_subslot_pdsch_repeats_r15)); + HANDLE_CODE(c.max_num_slot_subslot_pdsch_repeats_r15.pack(bref)); } if (c.rv_sf_pdsch_repeats_r15_present) { - HANDLE_CODE(pack_enum(bref, c.rv_sf_pdsch_repeats_r15)); + HANDLE_CODE(c.rv_sf_pdsch_repeats_r15.pack(bref)); } if (c.rv_slotsublot_pdsch_repeats_r15_present) { - HANDLE_CODE(pack_enum(bref, c.rv_slotsublot_pdsch_repeats_r15)); + HANDLE_CODE(c.rv_slotsublot_pdsch_repeats_r15.pack(bref)); } if (c.nof_processes_sf_pdsch_repeats_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.nof_processes_sf_pdsch_repeats_r15, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(pack_integer(bref, c.nof_processes_sf_pdsch_repeats_r15, (uint8_t)1u, (uint8_t)16u)); } if (c.nof_processes_slot_subslot_pdsch_repeats_r15_present) { - HANDLE_CODE( - pack_unalign_integer(bref, c.nof_processes_slot_subslot_pdsch_repeats_r15, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(pack_integer(bref, c.nof_processes_slot_subslot_pdsch_repeats_r15, (uint8_t)1u, (uint8_t)16u)); } if (c.mcs_restrict_sf_pdsch_repeats_r15_present) { - HANDLE_CODE(pack_enum(bref, c.mcs_restrict_sf_pdsch_repeats_r15)); + HANDLE_CODE(c.mcs_restrict_sf_pdsch_repeats_r15.pack(bref)); } if (c.mcs_restrict_slot_subslot_pdsch_repeats_r15_present) { - HANDLE_CODE(pack_enum(bref, c.mcs_restrict_slot_subslot_pdsch_repeats_r15)); + HANDLE_CODE(c.mcs_restrict_slot_subslot_pdsch_repeats_r15.pack(bref)); } break; default: @@ -43204,7 +43128,7 @@ SRSASN_CODE phys_cfg_ded_s::blind_pdsch_repeat_cfg_r15_c_::pack(bit_ref& bref) c SRSASN_CODE phys_cfg_ded_s::blind_pdsch_repeat_cfg_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -43221,29 +43145,28 @@ SRSASN_CODE phys_cfg_ded_s::blind_pdsch_repeat_cfg_r15_c_::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.blind_sf_pdsch_repeats_r15, 1)); HANDLE_CODE(bref.unpack(c.blind_slot_subslot_pdsch_repeats_r15, 1)); if (c.max_num_sf_pdsch_repeats_r15_present) { - HANDLE_CODE(unpack_enum(c.max_num_sf_pdsch_repeats_r15, bref)); + HANDLE_CODE(c.max_num_sf_pdsch_repeats_r15.unpack(bref)); } if (c.max_num_slot_subslot_pdsch_repeats_r15_present) { - HANDLE_CODE(unpack_enum(c.max_num_slot_subslot_pdsch_repeats_r15, bref)); + HANDLE_CODE(c.max_num_slot_subslot_pdsch_repeats_r15.unpack(bref)); } if (c.rv_sf_pdsch_repeats_r15_present) { - HANDLE_CODE(unpack_enum(c.rv_sf_pdsch_repeats_r15, bref)); + HANDLE_CODE(c.rv_sf_pdsch_repeats_r15.unpack(bref)); } if (c.rv_slotsublot_pdsch_repeats_r15_present) { - HANDLE_CODE(unpack_enum(c.rv_slotsublot_pdsch_repeats_r15, bref)); + HANDLE_CODE(c.rv_slotsublot_pdsch_repeats_r15.unpack(bref)); } if (c.nof_processes_sf_pdsch_repeats_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.nof_processes_sf_pdsch_repeats_r15, bref, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(unpack_integer(c.nof_processes_sf_pdsch_repeats_r15, bref, (uint8_t)1u, (uint8_t)16u)); } if (c.nof_processes_slot_subslot_pdsch_repeats_r15_present) { - HANDLE_CODE( - unpack_unalign_integer(c.nof_processes_slot_subslot_pdsch_repeats_r15, bref, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(unpack_integer(c.nof_processes_slot_subslot_pdsch_repeats_r15, bref, (uint8_t)1u, (uint8_t)16u)); } if (c.mcs_restrict_sf_pdsch_repeats_r15_present) { - HANDLE_CODE(unpack_enum(c.mcs_restrict_sf_pdsch_repeats_r15, bref)); + HANDLE_CODE(c.mcs_restrict_sf_pdsch_repeats_r15.unpack(bref)); } if (c.mcs_restrict_slot_subslot_pdsch_repeats_r15_present) { - HANDLE_CODE(unpack_enum(c.mcs_restrict_slot_subslot_pdsch_repeats_r15, bref)); + HANDLE_CODE(c.mcs_restrict_slot_subslot_pdsch_repeats_r15.unpack(bref)); } break; default: @@ -43275,7 +43198,7 @@ void rlf_timers_and_consts_r13_c::to_json(json_writer& j) const } SRSASN_CODE rlf_timers_and_consts_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -43291,7 +43214,7 @@ SRSASN_CODE rlf_timers_and_consts_r13_c::pack(bit_ref& bref) const SRSASN_CODE rlf_timers_and_consts_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -43309,7 +43232,7 @@ SRSASN_CODE rlf_timers_and_consts_r13_c::unpack(bit_ref& bref) SRSASN_CODE rlf_timers_and_consts_r13_c::setup_s_::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_enum(bref, t301_v1310)); + HANDLE_CODE(t301_v1310.pack(bref)); if (ext) { ext_groups_packer_guard group_flags; @@ -43317,11 +43240,11 @@ SRSASN_CODE rlf_timers_and_consts_r13_c::setup_s_::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(t310_v1330_present, 1)); if (t310_v1330_present) { - HANDLE_CODE(pack_enum(bref, t310_v1330)); + HANDLE_CODE(t310_v1330.pack(bref)); } } } @@ -43330,18 +43253,18 @@ SRSASN_CODE rlf_timers_and_consts_r13_c::setup_s_::pack(bit_ref& bref) const SRSASN_CODE rlf_timers_and_consts_r13_c::setup_s_::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_enum(t301_v1310, bref)); + HANDLE_CODE(t301_v1310.unpack(bref)); if (ext) { ext_groups_unpacker_guard group_flags(1); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(t310_v1330_present, 1)); if (t310_v1330_present) { - HANDLE_CODE(unpack_enum(t310_v1330, bref)); + HANDLE_CODE(t310_v1330.unpack(bref)); } } } @@ -43387,17 +43310,17 @@ void rlf_timers_and_consts_r9_c::to_json(json_writer& j) const } SRSASN_CODE rlf_timers_and_consts_r9_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: bref.pack(c.ext, 1); - HANDLE_CODE(pack_enum(bref, c.t301_r9)); - HANDLE_CODE(pack_enum(bref, c.t310_r9)); - HANDLE_CODE(pack_enum(bref, c.n310_r9)); - HANDLE_CODE(pack_enum(bref, c.t311_r9)); - HANDLE_CODE(pack_enum(bref, c.n311_r9)); + HANDLE_CODE(c.t301_r9.pack(bref)); + HANDLE_CODE(c.t310_r9.pack(bref)); + HANDLE_CODE(c.n310_r9.pack(bref)); + HANDLE_CODE(c.t311_r9.pack(bref)); + HANDLE_CODE(c.n311_r9.pack(bref)); break; default: log_invalid_choice_id(type_, "rlf_timers_and_consts_r9_c"); @@ -43408,18 +43331,18 @@ SRSASN_CODE rlf_timers_and_consts_r9_c::pack(bit_ref& bref) const SRSASN_CODE rlf_timers_and_consts_r9_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: bref.unpack(c.ext, 1); - HANDLE_CODE(unpack_enum(c.t301_r9, bref)); - HANDLE_CODE(unpack_enum(c.t310_r9, bref)); - HANDLE_CODE(unpack_enum(c.n310_r9, bref)); - HANDLE_CODE(unpack_enum(c.t311_r9, bref)); - HANDLE_CODE(unpack_enum(c.n311_r9, bref)); + HANDLE_CODE(c.t301_r9.unpack(bref)); + HANDLE_CODE(c.t310_r9.unpack(bref)); + HANDLE_CODE(c.n310_r9.unpack(bref)); + HANDLE_CODE(c.t311_r9.unpack(bref)); + HANDLE_CODE(c.n311_r9.unpack(bref)); break; default: log_invalid_choice_id(type_, "rlf_timers_and_consts_r9_c"); @@ -43435,7 +43358,7 @@ SRSASN_CODE rrc_conn_reject_v1020_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (extended_wait_time_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, extended_wait_time_r10, (uint16_t)1, (uint16_t)1800)); + HANDLE_CODE(pack_integer(bref, extended_wait_time_r10, (uint16_t)1u, (uint16_t)1800u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -43449,7 +43372,7 @@ SRSASN_CODE rrc_conn_reject_v1020_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (extended_wait_time_r10_present) { - HANDLE_CODE(unpack_unalign_integer(extended_wait_time_r10, bref, (uint16_t)1, (uint16_t)1800)); + HANDLE_CODE(unpack_integer(extended_wait_time_r10, bref, (uint16_t)1u, (uint16_t)1800u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -43544,13 +43467,13 @@ SRSASN_CODE sps_cfg_v1430_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, sps_cfg_ul_to_add_mod_list_r14, 1, 8)); } if (sps_cfg_ul_to_release_list_r14_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, sps_cfg_ul_to_release_list_r14, 1, 8, UnalignedIntegerPacker(1, 8))); + HANDLE_CODE(pack_dyn_seq_of(bref, sps_cfg_ul_to_release_list_r14, 1, 8, integer_packer(1, 8))); } if (sps_cfg_sl_to_add_mod_list_r14_present) { HANDLE_CODE(pack_dyn_seq_of(bref, sps_cfg_sl_to_add_mod_list_r14, 1, 8)); } if (sps_cfg_sl_to_release_list_r14_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, sps_cfg_sl_to_release_list_r14, 1, 8, UnalignedIntegerPacker(1, 8))); + HANDLE_CODE(pack_dyn_seq_of(bref, sps_cfg_sl_to_release_list_r14, 1, 8, integer_packer(1, 8))); } return SRSASN_SUCCESS; @@ -43574,13 +43497,13 @@ SRSASN_CODE sps_cfg_v1430_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(sps_cfg_ul_to_add_mod_list_r14, bref, 1, 8)); } if (sps_cfg_ul_to_release_list_r14_present) { - HANDLE_CODE(unpack_dyn_seq_of(sps_cfg_ul_to_release_list_r14, bref, 1, 8, UnalignedIntegerPacker(1, 8))); + HANDLE_CODE(unpack_dyn_seq_of(sps_cfg_ul_to_release_list_r14, bref, 1, 8, integer_packer(1, 8))); } if (sps_cfg_sl_to_add_mod_list_r14_present) { HANDLE_CODE(unpack_dyn_seq_of(sps_cfg_sl_to_add_mod_list_r14, bref, 1, 8)); } if (sps_cfg_sl_to_release_list_r14_present) { - HANDLE_CODE(unpack_dyn_seq_of(sps_cfg_sl_to_release_list_r14, bref, 1, 8, UnalignedIntegerPacker(1, 8))); + HANDLE_CODE(unpack_dyn_seq_of(sps_cfg_sl_to_release_list_r14, bref, 1, 8, integer_packer(1, 8))); } return SRSASN_SUCCESS; @@ -43645,14 +43568,13 @@ SRSASN_CODE sps_cfg_v1530_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, sps_cfg_ul_stti_to_add_mod_list_r15, 1, 6)); } if (sps_cfg_ul_stti_to_release_list_r15_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, sps_cfg_ul_stti_to_release_list_r15, 1, 6, UnalignedIntegerPacker(1, 6))); + HANDLE_CODE(pack_dyn_seq_of(bref, sps_cfg_ul_stti_to_release_list_r15, 1, 6, integer_packer(1, 6))); } if (sps_cfg_ul_to_add_mod_list_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, sps_cfg_ul_to_add_mod_list_r15, 1, 6)); } if (sps_cfg_ul_to_release_list_r15_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, sps_cfg_ul_to_release_list_r15, 1, 6, UnalignedIntegerPacker(1, 6))); + HANDLE_CODE(pack_dyn_seq_of(bref, sps_cfg_ul_to_release_list_r15, 1, 6, integer_packer(1, 6))); } return SRSASN_SUCCESS; @@ -43676,14 +43598,13 @@ SRSASN_CODE sps_cfg_v1530_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(sps_cfg_ul_stti_to_add_mod_list_r15, bref, 1, 6)); } if (sps_cfg_ul_stti_to_release_list_r15_present) { - HANDLE_CODE( - unpack_dyn_seq_of(sps_cfg_ul_stti_to_release_list_r15, bref, 1, 6, UnalignedIntegerPacker(1, 6))); + HANDLE_CODE(unpack_dyn_seq_of(sps_cfg_ul_stti_to_release_list_r15, bref, 1, 6, integer_packer(1, 6))); } if (sps_cfg_ul_to_add_mod_list_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(sps_cfg_ul_to_add_mod_list_r15, bref, 1, 6)); } if (sps_cfg_ul_to_release_list_r15_present) { - HANDLE_CODE(unpack_dyn_seq_of(sps_cfg_ul_to_release_list_r15, bref, 1, 6, UnalignedIntegerPacker(1, 6))); + HANDLE_CODE(unpack_dyn_seq_of(sps_cfg_ul_to_release_list_r15, bref, 1, 6, integer_packer(1, 6))); } return SRSASN_SUCCESS; @@ -43760,7 +43681,7 @@ SRSASN_CODE idle_mode_mob_ctrl_info_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, band_class_prio_list1_xrtt, 1, 32)); } if (t320_present) { - HANDLE_CODE(pack_enum(bref, t320)); + HANDLE_CODE(t320.pack(bref)); } if (ext) { @@ -43772,7 +43693,7 @@ SRSASN_CODE idle_mode_mob_ctrl_info_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(freq_prio_list_ext_eutra_r12.is_present(), 1)); if (freq_prio_list_ext_eutra_r12.is_present()) { @@ -43780,7 +43701,7 @@ SRSASN_CODE idle_mode_mob_ctrl_info_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(freq_prio_list_eutra_v1310.is_present(), 1)); HANDLE_CODE(bref.pack(freq_prio_list_ext_eutra_v1310.is_present(), 1)); @@ -43792,7 +43713,7 @@ SRSASN_CODE idle_mode_mob_ctrl_info_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(freq_prio_list_nr_r15.is_present(), 1)); if (freq_prio_list_nr_r15.is_present()) { @@ -43832,7 +43753,7 @@ SRSASN_CODE idle_mode_mob_ctrl_info_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(band_class_prio_list1_xrtt, bref, 1, 32)); } if (t320_present) { - HANDLE_CODE(unpack_enum(t320, bref)); + HANDLE_CODE(t320.unpack(bref)); } if (ext) { @@ -43840,7 +43761,7 @@ SRSASN_CODE idle_mode_mob_ctrl_info_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool freq_prio_list_ext_eutra_r12_present; HANDLE_CODE(bref.unpack(freq_prio_list_ext_eutra_r12_present, 1)); @@ -43850,7 +43771,7 @@ SRSASN_CODE idle_mode_mob_ctrl_info_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool freq_prio_list_eutra_v1310_present; HANDLE_CODE(bref.unpack(freq_prio_list_eutra_v1310_present, 1)); @@ -43866,7 +43787,7 @@ SRSASN_CODE idle_mode_mob_ctrl_info_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool freq_prio_list_nr_r15_present; HANDLE_CODE(bref.unpack(freq_prio_list_nr_r15_present, 1)); @@ -44154,7 +44075,7 @@ SRSASN_CODE rr_cfg_ded_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, drb_to_add_mod_list, 1, 11)); } if (drb_to_release_list_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, drb_to_release_list, 1, 11, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(pack_dyn_seq_of(bref, drb_to_release_list, 1, 11, integer_packer(1, 32))); } if (mac_main_cfg_present) { HANDLE_CODE(mac_main_cfg.pack(bref)); @@ -44186,7 +44107,7 @@ SRSASN_CODE rr_cfg_ded_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(rlf_timers_and_consts_r9.is_present(), 1)); if (rlf_timers_and_consts_r9.is_present()) { @@ -44194,7 +44115,7 @@ SRSASN_CODE rr_cfg_ded_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_sf_pattern_pcell_r10.is_present(), 1)); if (meas_sf_pattern_pcell_r10.is_present()) { @@ -44202,7 +44123,7 @@ SRSASN_CODE rr_cfg_ded_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(neigh_cells_crs_info_r11.is_present(), 1)); if (neigh_cells_crs_info_r11.is_present()) { @@ -44210,7 +44131,7 @@ SRSASN_CODE rr_cfg_ded_s::pack(bit_ref& bref) const } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(naics_info_r12.is_present(), 1)); if (naics_info_r12.is_present()) { @@ -44218,7 +44139,7 @@ SRSASN_CODE rr_cfg_ded_s::pack(bit_ref& bref) const } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(neigh_cells_crs_info_r13.is_present(), 1)); HANDLE_CODE(bref.pack(rlf_timers_and_consts_r13.is_present(), 1)); @@ -44230,7 +44151,7 @@ SRSASN_CODE rr_cfg_ded_s::pack(bit_ref& bref) const } } if (group_flags[5]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(sps_cfg_v1430.is_present(), 1)); if (sps_cfg_v1430.is_present()) { @@ -44238,7 +44159,7 @@ SRSASN_CODE rr_cfg_ded_s::pack(bit_ref& bref) const } } if (group_flags[6]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(srb_to_add_mod_ext_list_r15.is_present(), 1)); HANDLE_CODE(bref.pack(srb_to_release_ext_list_r15_present, 1)); @@ -44252,7 +44173,7 @@ SRSASN_CODE rr_cfg_ded_s::pack(bit_ref& bref) const HANDLE_CODE(pack_fixed_seq_of(bref, &(*srb_to_add_mod_ext_list_r15)[0], srb_to_add_mod_ext_list_r15->size())); } if (srb_to_release_ext_list_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, srb_to_release_ext_list_r15, (uint8_t)4, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, srb_to_release_ext_list_r15, (uint8_t)4u, (uint8_t)4u)); } if (sps_cfg_v1530.is_present()) { HANDLE_CODE(sps_cfg_v1530->pack(bref)); @@ -44267,10 +44188,10 @@ SRSASN_CODE rr_cfg_ded_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, *drb_to_add_mod_list_r15, 1, 15)); } if (drb_to_release_list_r15.is_present()) { - HANDLE_CODE(pack_dyn_seq_of(bref, *drb_to_release_list_r15, 1, 15, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(pack_dyn_seq_of(bref, *drb_to_release_list_r15, 1, 15, integer_packer(1, 32))); } if (srb_to_release_list_dupl_r15.is_present()) { - HANDLE_CODE(pack_dyn_seq_of(bref, *srb_to_release_list_dupl_r15, 1, 2, UnalignedIntegerPacker(1, 2))); + HANDLE_CODE(pack_dyn_seq_of(bref, *srb_to_release_list_dupl_r15, 1, 2, integer_packer(1, 2))); } } } @@ -44293,7 +44214,7 @@ SRSASN_CODE rr_cfg_ded_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(drb_to_add_mod_list, bref, 1, 11)); } if (drb_to_release_list_present) { - HANDLE_CODE(unpack_dyn_seq_of(drb_to_release_list, bref, 1, 11, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(unpack_dyn_seq_of(drb_to_release_list, bref, 1, 11, integer_packer(1, 32))); } if (mac_main_cfg_present) { HANDLE_CODE(mac_main_cfg.unpack(bref)); @@ -44310,7 +44231,7 @@ SRSASN_CODE rr_cfg_ded_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool rlf_timers_and_consts_r9_present; HANDLE_CODE(bref.unpack(rlf_timers_and_consts_r9_present, 1)); @@ -44320,7 +44241,7 @@ SRSASN_CODE rr_cfg_ded_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool meas_sf_pattern_pcell_r10_present; HANDLE_CODE(bref.unpack(meas_sf_pattern_pcell_r10_present, 1)); @@ -44330,7 +44251,7 @@ SRSASN_CODE rr_cfg_ded_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool neigh_cells_crs_info_r11_present; HANDLE_CODE(bref.unpack(neigh_cells_crs_info_r11_present, 1)); @@ -44340,7 +44261,7 @@ SRSASN_CODE rr_cfg_ded_s::unpack(bit_ref& bref) } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool naics_info_r12_present; HANDLE_CODE(bref.unpack(naics_info_r12_present, 1)); @@ -44350,7 +44271,7 @@ SRSASN_CODE rr_cfg_ded_s::unpack(bit_ref& bref) } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool neigh_cells_crs_info_r13_present; HANDLE_CODE(bref.unpack(neigh_cells_crs_info_r13_present, 1)); @@ -44366,7 +44287,7 @@ SRSASN_CODE rr_cfg_ded_s::unpack(bit_ref& bref) } } if (group_flags[5]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool sps_cfg_v1430_present; HANDLE_CODE(bref.unpack(sps_cfg_v1430_present, 1)); @@ -44376,7 +44297,7 @@ SRSASN_CODE rr_cfg_ded_s::unpack(bit_ref& bref) } } if (group_flags[6]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool srb_to_add_mod_ext_list_r15_present; HANDLE_CODE(bref.unpack(srb_to_add_mod_ext_list_r15_present, 1)); @@ -44404,7 +44325,7 @@ SRSASN_CODE rr_cfg_ded_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_fixed_seq_of(&(*srb_to_add_mod_ext_list_r15)[0], bref, srb_to_add_mod_ext_list_r15->size())); } if (srb_to_release_ext_list_r15_present) { - HANDLE_CODE(unpack_unalign_integer(srb_to_release_ext_list_r15, bref, (uint8_t)4, (uint8_t)4)); + HANDLE_CODE(unpack_integer(srb_to_release_ext_list_r15, bref, (uint8_t)4u, (uint8_t)4u)); } if (sps_cfg_v1530.is_present()) { HANDLE_CODE(sps_cfg_v1530->unpack(bref)); @@ -44419,11 +44340,10 @@ SRSASN_CODE rr_cfg_ded_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(*drb_to_add_mod_list_r15, bref, 1, 15)); } if (drb_to_release_list_r15.is_present()) { - HANDLE_CODE(unpack_dyn_seq_of(*drb_to_release_list_r15, bref, 1, 15, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(unpack_dyn_seq_of(*drb_to_release_list_r15, bref, 1, 15, integer_packer(1, 32))); } if (srb_to_release_list_dupl_r15.is_present()) { - HANDLE_CODE( - unpack_dyn_seq_of(*srb_to_release_list_dupl_r15, bref, 1, 2, UnalignedIntegerPacker(1, 2))); + HANDLE_CODE(unpack_dyn_seq_of(*srb_to_release_list_dupl_r15, bref, 1, 2, integer_packer(1, 2))); } } } @@ -44562,7 +44482,7 @@ void rr_cfg_ded_s::mac_main_cfg_c_::to_json(json_writer& j) const } SRSASN_CODE rr_cfg_ded_s::mac_main_cfg_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::explicit_value: HANDLE_CODE(c.pack(bref)); @@ -44578,7 +44498,7 @@ SRSASN_CODE rr_cfg_ded_s::mac_main_cfg_c_::pack(bit_ref& bref) const SRSASN_CODE rr_cfg_ded_s::mac_main_cfg_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::explicit_value: @@ -44614,7 +44534,7 @@ void rr_cfg_ded_s::crs_intf_mitig_cfg_r15_c_::to_json(json_writer& j) const } SRSASN_CODE rr_cfg_ded_s::crs_intf_mitig_cfg_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -44630,7 +44550,7 @@ SRSASN_CODE rr_cfg_ded_s::crs_intf_mitig_cfg_r15_c_::pack(bit_ref& bref) const SRSASN_CODE rr_cfg_ded_s::crs_intf_mitig_cfg_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -44665,12 +44585,12 @@ void rr_cfg_ded_s::crs_intf_mitig_cfg_r15_c_::setup_c_::to_json(json_writer& j) } SRSASN_CODE rr_cfg_ded_s::crs_intf_mitig_cfg_r15_c_::setup_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::crs_intf_mitig_enabled_minus15: break; case types::crs_intf_mitig_num_prbs_r15: - HANDLE_CODE(pack_enum(bref, c)); + HANDLE_CODE(c.pack(bref)); break; default: log_invalid_choice_id(type_, "rr_cfg_ded_s::crs_intf_mitig_cfg_r15_c_::setup_c_"); @@ -44681,13 +44601,13 @@ SRSASN_CODE rr_cfg_ded_s::crs_intf_mitig_cfg_r15_c_::setup_c_::pack(bit_ref& bre SRSASN_CODE rr_cfg_ded_s::crs_intf_mitig_cfg_r15_c_::setup_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::crs_intf_mitig_enabled_minus15: break; case types::crs_intf_mitig_num_prbs_r15: - HANDLE_CODE(unpack_enum(c, bref)); + HANDLE_CODE(c.unpack(bref)); break; default: log_invalid_choice_id(type_, "rr_cfg_ded_s::crs_intf_mitig_cfg_r15_c_::setup_c_"); @@ -44841,16 +44761,16 @@ void redirected_carrier_info_r15_ies_c::to_json(json_writer& j) const } SRSASN_CODE redirected_carrier_info_r15_ies_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::eutra_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint32_t)0u, (uint32_t)262143u)); break; case types::geran_r15: HANDLE_CODE(c.get().pack(bref)); break; case types::utra_fdd_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)16383u)); break; case types::cdma2000_hrpd_r15: HANDLE_CODE(c.get().pack(bref)); @@ -44859,8 +44779,8 @@ SRSASN_CODE redirected_carrier_info_r15_ies_c::pack(bit_ref& bref) const HANDLE_CODE(c.get().pack(bref)); break; case types::utra_tdd_r15: - HANDLE_CODE(pack_dyn_seq_of( - bref, c.get(), 1, 6, UnalignedIntegerPacker(0, 16383))); + HANDLE_CODE( + pack_dyn_seq_of(bref, c.get(), 1, 6, integer_packer(0, 16383))); break; default: log_invalid_choice_id(type_, "redirected_carrier_info_r15_ies_c"); @@ -44871,17 +44791,17 @@ SRSASN_CODE redirected_carrier_info_r15_ies_c::pack(bit_ref& bref) const SRSASN_CODE redirected_carrier_info_r15_ies_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::eutra_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint32_t)0u, (uint32_t)262143u)); break; case types::geran_r15: HANDLE_CODE(c.get().unpack(bref)); break; case types::utra_fdd_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)16383u)); break; case types::cdma2000_hrpd_r15: HANDLE_CODE(c.get().unpack(bref)); @@ -44890,8 +44810,8 @@ SRSASN_CODE redirected_carrier_info_r15_ies_c::unpack(bit_ref& bref) HANDLE_CODE(c.get().unpack(bref)); break; case types::utra_tdd_r15: - HANDLE_CODE(unpack_dyn_seq_of( - c.get(), bref, 1, 6, UnalignedIntegerPacker(0, 16383))); + HANDLE_CODE( + unpack_dyn_seq_of(c.get(), bref, 1, 6, integer_packer(0, 16383))); break; default: log_invalid_choice_id(type_, "redirected_carrier_info_r15_ies_c"); @@ -44906,7 +44826,7 @@ SRSASN_CODE rrc_conn_reest_r8_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); HANDLE_CODE(rr_cfg_ded.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, next_hop_chaining_count, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, next_hop_chaining_count, (uint8_t)0u, (uint8_t)7u)); if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); } @@ -44918,7 +44838,7 @@ SRSASN_CODE rrc_conn_reest_r8_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); HANDLE_CODE(rr_cfg_ded.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(next_hop_chaining_count, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(next_hop_chaining_count, bref, (uint8_t)0u, (uint8_t)7u)); if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); } @@ -44974,7 +44894,7 @@ SRSASN_CODE rrc_conn_reject_r8_ies_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, wait_time, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(pack_integer(bref, wait_time, (uint8_t)1u, (uint8_t)16u)); if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); } @@ -44985,7 +44905,7 @@ SRSASN_CODE rrc_conn_reject_r8_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); - HANDLE_CODE(unpack_unalign_integer(wait_time, bref, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(unpack_integer(wait_time, bref, (uint8_t)1u, (uint8_t)16u)); if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); } @@ -45052,7 +44972,7 @@ SRSASN_CODE rrc_early_data_complete_r15_ies_s::pack(bit_ref& bref) const HANDLE_CODE(ded_info_nas_r15.pack(bref)); } if (extended_wait_time_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, extended_wait_time_r15, (uint16_t)1, (uint16_t)1800)); + HANDLE_CODE(pack_integer(bref, extended_wait_time_r15, (uint16_t)1u, (uint16_t)1800u)); } if (idle_mode_mob_ctrl_info_r15_present) { HANDLE_CODE(idle_mode_mob_ctrl_info_r15.pack(bref)); @@ -45079,7 +44999,7 @@ SRSASN_CODE rrc_early_data_complete_r15_ies_s::unpack(bit_ref& bref) HANDLE_CODE(ded_info_nas_r15.unpack(bref)); } if (extended_wait_time_r15_present) { - HANDLE_CODE(unpack_unalign_integer(extended_wait_time_r15, bref, (uint16_t)1, (uint16_t)1800)); + HANDLE_CODE(unpack_integer(extended_wait_time_r15, bref, (uint16_t)1u, (uint16_t)1800u)); } if (idle_mode_mob_ctrl_info_r15_present) { HANDLE_CODE(idle_mode_mob_ctrl_info_r15.unpack(bref)); @@ -45125,14 +45045,14 @@ void rrc_early_data_complete_r15_ies_s::to_json(json_writer& j) const // RRCConnectionReestablishment ::= SEQUENCE SRSASN_CODE rrc_conn_reest_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE rrc_conn_reest_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -45224,7 +45144,7 @@ void rrc_conn_reest_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_reest_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -45240,7 +45160,7 @@ SRSASN_CODE rrc_conn_reest_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_reest_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -45288,7 +45208,7 @@ void rrc_conn_reest_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_reest_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_conn_reest_r8: HANDLE_CODE(c.pack(bref)); @@ -45316,7 +45236,7 @@ SRSASN_CODE rrc_conn_reest_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_reest_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_conn_reest_r8: @@ -45443,7 +45363,7 @@ void rrc_conn_reest_reject_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_reest_reject_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_conn_reest_reject_r8: HANDLE_CODE(c.get().pack(bref)); @@ -45459,7 +45379,7 @@ SRSASN_CODE rrc_conn_reest_reject_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_reest_reject_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_conn_reest_reject_r8: @@ -45574,7 +45494,7 @@ void rrc_conn_reject_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_reject_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -45590,7 +45510,7 @@ SRSASN_CODE rrc_conn_reject_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_reject_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -45630,7 +45550,7 @@ void rrc_conn_reject_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_reject_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_conn_reject_r8: HANDLE_CODE(c.pack(bref)); @@ -45650,7 +45570,7 @@ SRSASN_CODE rrc_conn_reject_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_reject_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_conn_reject_r8: @@ -45672,14 +45592,14 @@ SRSASN_CODE rrc_conn_reject_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) // RRCConnectionSetup ::= SEQUENCE SRSASN_CODE rrc_conn_setup_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE rrc_conn_setup_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -45771,7 +45691,7 @@ void rrc_conn_setup_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_setup_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -45787,7 +45707,7 @@ SRSASN_CODE rrc_conn_setup_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_setup_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -45835,7 +45755,7 @@ void rrc_conn_setup_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_setup_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_conn_setup_r8: HANDLE_CODE(c.pack(bref)); @@ -45863,7 +45783,7 @@ SRSASN_CODE rrc_conn_setup_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_setup_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_conn_setup_r8: @@ -45990,7 +45910,7 @@ void rrc_early_data_complete_r15_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_early_data_complete_r15_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_early_data_complete_r15: HANDLE_CODE(c.get().pack(bref)); @@ -46006,7 +45926,7 @@ SRSASN_CODE rrc_early_data_complete_r15_s::crit_exts_c_::pack(bit_ref& bref) con SRSASN_CODE rrc_early_data_complete_r15_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_early_data_complete_r15: @@ -46108,7 +46028,7 @@ void dl_ccch_msg_type_c::to_json(json_writer& j) const } SRSASN_CODE dl_ccch_msg_type_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -46125,7 +46045,7 @@ SRSASN_CODE dl_ccch_msg_type_c::pack(bit_ref& bref) const SRSASN_CODE dl_ccch_msg_type_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -46259,7 +46179,7 @@ void dl_ccch_msg_type_c::c1_c_::to_json(json_writer& j) const } SRSASN_CODE dl_ccch_msg_type_c::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_conn_reest: HANDLE_CODE(c.get().pack(bref)); @@ -46282,7 +46202,7 @@ SRSASN_CODE dl_ccch_msg_type_c::c1_c_::pack(bit_ref& bref) const SRSASN_CODE dl_ccch_msg_type_c::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_conn_reest: @@ -46383,7 +46303,7 @@ void dl_ccch_msg_type_c::msg_class_ext_c_::to_json(json_writer& j) const } SRSASN_CODE dl_ccch_msg_type_c::msg_class_ext_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c2: HANDLE_CODE(c.get().pack(bref)); @@ -46399,7 +46319,7 @@ SRSASN_CODE dl_ccch_msg_type_c::msg_class_ext_c_::pack(bit_ref& bref) const SRSASN_CODE dl_ccch_msg_type_c::msg_class_ext_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c2: @@ -46439,7 +46359,7 @@ void dl_ccch_msg_type_c::msg_class_ext_c_::c2_c_::to_json(json_writer& j) const } SRSASN_CODE dl_ccch_msg_type_c::msg_class_ext_c_::c2_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_early_data_complete_r15: HANDLE_CODE(c.pack(bref)); @@ -46459,7 +46379,7 @@ SRSASN_CODE dl_ccch_msg_type_c::msg_class_ext_c_::c2_c_::pack(bit_ref& bref) con SRSASN_CODE dl_ccch_msg_type_c::msg_class_ext_c_::c2_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_early_data_complete_r15: @@ -46535,16 +46455,16 @@ void pdcch_candidate_reductions_laa_ul_r14_c::to_json(json_writer& j) const } SRSASN_CODE pdcch_candidate_reductions_laa_ul_r14_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.pdcch_candidate_reduction_al1_r14)); - HANDLE_CODE(pack_enum(bref, c.pdcch_candidate_reduction_al2_r14)); - HANDLE_CODE(pack_enum(bref, c.pdcch_candidate_reduction_al3_r14)); - HANDLE_CODE(pack_enum(bref, c.pdcch_candidate_reduction_al4_r14)); - HANDLE_CODE(pack_enum(bref, c.pdcch_candidate_reduction_al5_r14)); + HANDLE_CODE(c.pdcch_candidate_reduction_al1_r14.pack(bref)); + HANDLE_CODE(c.pdcch_candidate_reduction_al2_r14.pack(bref)); + HANDLE_CODE(c.pdcch_candidate_reduction_al3_r14.pack(bref)); + HANDLE_CODE(c.pdcch_candidate_reduction_al4_r14.pack(bref)); + HANDLE_CODE(c.pdcch_candidate_reduction_al5_r14.pack(bref)); break; default: log_invalid_choice_id(type_, "pdcch_candidate_reductions_laa_ul_r14_c"); @@ -46555,17 +46475,17 @@ SRSASN_CODE pdcch_candidate_reductions_laa_ul_r14_c::pack(bit_ref& bref) const SRSASN_CODE pdcch_candidate_reductions_laa_ul_r14_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.pdcch_candidate_reduction_al1_r14, bref)); - HANDLE_CODE(unpack_enum(c.pdcch_candidate_reduction_al2_r14, bref)); - HANDLE_CODE(unpack_enum(c.pdcch_candidate_reduction_al3_r14, bref)); - HANDLE_CODE(unpack_enum(c.pdcch_candidate_reduction_al4_r14, bref)); - HANDLE_CODE(unpack_enum(c.pdcch_candidate_reduction_al5_r14, bref)); + HANDLE_CODE(c.pdcch_candidate_reduction_al1_r14.unpack(bref)); + HANDLE_CODE(c.pdcch_candidate_reduction_al2_r14.unpack(bref)); + HANDLE_CODE(c.pdcch_candidate_reduction_al3_r14.unpack(bref)); + HANDLE_CODE(c.pdcch_candidate_reduction_al4_r14.unpack(bref)); + HANDLE_CODE(c.pdcch_candidate_reduction_al5_r14.unpack(bref)); break; default: log_invalid_choice_id(type_, "pdcch_candidate_reductions_laa_ul_r14_c"); @@ -46609,23 +46529,23 @@ void aul_cfg_r15_c::to_json(json_writer& j) const } SRSASN_CODE aul_cfg_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(c.aul_crnti_r15.pack(bref)); HANDLE_CODE(c.aul_sfs_r15.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, c.aul_harq_processes_r15, (uint8_t)1, (uint8_t)16)); - HANDLE_CODE(pack_enum(bref, c.tx_mode_ul_aul_r15)); + HANDLE_CODE(pack_integer(bref, c.aul_harq_processes_r15, (uint8_t)1u, (uint8_t)16u)); + HANDLE_CODE(c.tx_mode_ul_aul_r15.pack(bref)); HANDLE_CODE(c.aul_start_full_bw_inside_mcot_r15.pack(bref)); HANDLE_CODE(c.aul_start_full_bw_outside_mcot_r15.pack(bref)); - HANDLE_CODE(pack_enum(bref, c.aul_start_partial_bw_inside_mcot_r15)); - HANDLE_CODE(pack_enum(bref, c.aul_start_partial_bw_outside_mcot_r15)); - HANDLE_CODE(pack_enum(bref, c.aul_retx_timer_r15)); - HANDLE_CODE(pack_unalign_integer(bref, c.ending_symbol_aul_r15, (uint8_t)12, (uint8_t)13)); - HANDLE_CODE(pack_unalign_integer(bref, c.sf_offset_cot_sharing_r15, (uint8_t)2, (uint8_t)4)); - HANDLE_CODE(pack_enum(bref, c.contention_win_size_timer_r15)); + HANDLE_CODE(c.aul_start_partial_bw_inside_mcot_r15.pack(bref)); + HANDLE_CODE(c.aul_start_partial_bw_outside_mcot_r15.pack(bref)); + HANDLE_CODE(c.aul_retx_timer_r15.pack(bref)); + HANDLE_CODE(pack_integer(bref, c.ending_symbol_aul_r15, (uint8_t)12u, (uint8_t)13u)); + HANDLE_CODE(pack_integer(bref, c.sf_offset_cot_sharing_r15, (uint8_t)2u, (uint8_t)4u)); + HANDLE_CODE(c.contention_win_size_timer_r15.pack(bref)); break; default: log_invalid_choice_id(type_, "aul_cfg_r15_c"); @@ -46636,7 +46556,7 @@ SRSASN_CODE aul_cfg_r15_c::pack(bit_ref& bref) const SRSASN_CODE aul_cfg_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -46644,16 +46564,16 @@ SRSASN_CODE aul_cfg_r15_c::unpack(bit_ref& bref) case types::setup: HANDLE_CODE(c.aul_crnti_r15.unpack(bref)); HANDLE_CODE(c.aul_sfs_r15.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(c.aul_harq_processes_r15, bref, (uint8_t)1, (uint8_t)16)); - HANDLE_CODE(unpack_enum(c.tx_mode_ul_aul_r15, bref)); + HANDLE_CODE(unpack_integer(c.aul_harq_processes_r15, bref, (uint8_t)1u, (uint8_t)16u)); + HANDLE_CODE(c.tx_mode_ul_aul_r15.unpack(bref)); HANDLE_CODE(c.aul_start_full_bw_inside_mcot_r15.unpack(bref)); HANDLE_CODE(c.aul_start_full_bw_outside_mcot_r15.unpack(bref)); - HANDLE_CODE(unpack_enum(c.aul_start_partial_bw_inside_mcot_r15, bref)); - HANDLE_CODE(unpack_enum(c.aul_start_partial_bw_outside_mcot_r15, bref)); - HANDLE_CODE(unpack_enum(c.aul_retx_timer_r15, bref)); - HANDLE_CODE(unpack_unalign_integer(c.ending_symbol_aul_r15, bref, (uint8_t)12, (uint8_t)13)); - HANDLE_CODE(unpack_unalign_integer(c.sf_offset_cot_sharing_r15, bref, (uint8_t)2, (uint8_t)4)); - HANDLE_CODE(unpack_enum(c.contention_win_size_timer_r15, bref)); + HANDLE_CODE(c.aul_start_partial_bw_inside_mcot_r15.unpack(bref)); + HANDLE_CODE(c.aul_start_partial_bw_outside_mcot_r15.unpack(bref)); + HANDLE_CODE(c.aul_retx_timer_r15.unpack(bref)); + HANDLE_CODE(unpack_integer(c.ending_symbol_aul_r15, bref, (uint8_t)12u, (uint8_t)13u)); + HANDLE_CODE(unpack_integer(c.sf_offset_cot_sharing_r15, bref, (uint8_t)2u, (uint8_t)4u)); + HANDLE_CODE(c.contention_win_size_timer_r15.unpack(bref)); break; default: log_invalid_choice_id(type_, "aul_cfg_r15_c"); @@ -46697,7 +46617,7 @@ void cqi_report_periodic_scell_r15_c::to_json(json_writer& j) const } SRSASN_CODE cqi_report_periodic_scell_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -46705,9 +46625,9 @@ SRSASN_CODE cqi_report_periodic_scell_r15_c::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.ri_cfg_idx_dormant_r15_present, 1)); HANDLE_CODE(bref.pack(c.csi_sf_pattern_dormant_r15_present, 1)); HANDLE_CODE(bref.pack(c.cqi_format_ind_dormant_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, c.cqi_pmi_cfg_idx_dormant_r15, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.cqi_pmi_cfg_idx_dormant_r15, (uint16_t)0u, (uint16_t)1023u)); if (c.ri_cfg_idx_dormant_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.ri_cfg_idx_dormant_r15, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.ri_cfg_idx_dormant_r15, (uint16_t)0u, (uint16_t)1023u)); } if (c.csi_sf_pattern_dormant_r15_present) { HANDLE_CODE(c.csi_sf_pattern_dormant_r15.pack(bref)); @@ -46725,7 +46645,7 @@ SRSASN_CODE cqi_report_periodic_scell_r15_c::pack(bit_ref& bref) const SRSASN_CODE cqi_report_periodic_scell_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -46734,9 +46654,9 @@ SRSASN_CODE cqi_report_periodic_scell_r15_c::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.ri_cfg_idx_dormant_r15_present, 1)); HANDLE_CODE(bref.unpack(c.csi_sf_pattern_dormant_r15_present, 1)); HANDLE_CODE(bref.unpack(c.cqi_format_ind_dormant_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(c.cqi_pmi_cfg_idx_dormant_r15, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.cqi_pmi_cfg_idx_dormant_r15, bref, (uint16_t)0u, (uint16_t)1023u)); if (c.ri_cfg_idx_dormant_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.ri_cfg_idx_dormant_r15, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.ri_cfg_idx_dormant_r15, bref, (uint16_t)0u, (uint16_t)1023u)); } if (c.csi_sf_pattern_dormant_r15_present) { HANDLE_CODE(c.csi_sf_pattern_dormant_r15.unpack(bref)); @@ -46778,7 +46698,7 @@ void cqi_report_periodic_scell_r15_c::setup_s_::csi_sf_pattern_dormant_r15_c_::t } SRSASN_CODE cqi_report_periodic_scell_r15_c::setup_s_::csi_sf_pattern_dormant_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -46795,7 +46715,7 @@ SRSASN_CODE cqi_report_periodic_scell_r15_c::setup_s_::csi_sf_pattern_dormant_r1 SRSASN_CODE cqi_report_periodic_scell_r15_c::setup_s_::csi_sf_pattern_dormant_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -46907,17 +46827,17 @@ void cqi_report_periodic_scell_r15_c::setup_s_::cqi_format_ind_dormant_r15_c_::t } SRSASN_CODE cqi_report_periodic_scell_r15_c::setup_s_::cqi_format_ind_dormant_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::wideband_cqi_r15: HANDLE_CODE(bref.pack(c.get().csi_report_mode_r15_present, 1)); if (c.get().csi_report_mode_r15_present) { - HANDLE_CODE(pack_enum(bref, c.get().csi_report_mode_r15)); + HANDLE_CODE(c.get().csi_report_mode_r15.pack(bref)); } break; case types::subband_cqi_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get().k_r15, (uint8_t)1, (uint8_t)4)); - HANDLE_CODE(pack_enum(bref, c.get().periodicity_factor_r15)); + HANDLE_CODE(pack_integer(bref, c.get().k_r15, (uint8_t)1u, (uint8_t)4u)); + HANDLE_CODE(c.get().periodicity_factor_r15.pack(bref)); break; default: log_invalid_choice_id(type_, "cqi_report_periodic_scell_r15_c::setup_s_::cqi_format_ind_dormant_r15_c_"); @@ -46928,18 +46848,18 @@ SRSASN_CODE cqi_report_periodic_scell_r15_c::setup_s_::cqi_format_ind_dormant_r1 SRSASN_CODE cqi_report_periodic_scell_r15_c::setup_s_::cqi_format_ind_dormant_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::wideband_cqi_r15: HANDLE_CODE(bref.unpack(c.get().csi_report_mode_r15_present, 1)); if (c.get().csi_report_mode_r15_present) { - HANDLE_CODE(unpack_enum(c.get().csi_report_mode_r15, bref)); + HANDLE_CODE(c.get().csi_report_mode_r15.unpack(bref)); } break; case types::subband_cqi_r15: - HANDLE_CODE(unpack_unalign_integer(c.get().k_r15, bref, (uint8_t)1, (uint8_t)4)); - HANDLE_CODE(unpack_enum(c.get().periodicity_factor_r15, bref)); + HANDLE_CODE(unpack_integer(c.get().k_r15, bref, (uint8_t)1u, (uint8_t)4u)); + HANDLE_CODE(c.get().periodicity_factor_r15.unpack(bref)); break; default: log_invalid_choice_id(type_, "cqi_report_periodic_scell_r15_c::setup_s_::cqi_format_ind_dormant_r15_c_"); @@ -46951,15 +46871,15 @@ SRSASN_CODE cqi_report_periodic_scell_r15_c::setup_s_::cqi_format_ind_dormant_r1 // CrossCarrierSchedulingConfigLAA-UL-r14 ::= SEQUENCE SRSASN_CODE cross_carrier_sched_cfg_laa_ul_r14_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, sched_cell_id_r14, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, cif_in_sched_cell_r14, (uint8_t)1, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, sched_cell_id_r14, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, cif_in_sched_cell_r14, (uint8_t)1u, (uint8_t)7u)); return SRSASN_SUCCESS; } SRSASN_CODE cross_carrier_sched_cfg_laa_ul_r14_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(sched_cell_id_r14, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(cif_in_sched_cell_r14, bref, (uint8_t)1, (uint8_t)7)); + HANDLE_CODE(unpack_integer(sched_cell_id_r14, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(cif_in_sched_cell_r14, bref, (uint8_t)1u, (uint8_t)7u)); return SRSASN_SUCCESS; } @@ -47032,13 +46952,13 @@ void lbt_cfg_r14_c::to_json(json_writer& j) const } SRSASN_CODE lbt_cfg_r14_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::max_energy_detection_thres_r14: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (int8_t)-85, (int8_t)-52)); + HANDLE_CODE(pack_integer(bref, c.get(), (int8_t)-85, (int8_t)-52)); break; case types::energy_detection_thres_offset_r14: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (int8_t)-13, (int8_t)20)); + HANDLE_CODE(pack_integer(bref, c.get(), (int8_t)-13, (int8_t)20)); break; default: log_invalid_choice_id(type_, "lbt_cfg_r14_c"); @@ -47049,14 +46969,14 @@ SRSASN_CODE lbt_cfg_r14_c::pack(bit_ref& bref) const SRSASN_CODE lbt_cfg_r14_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::max_energy_detection_thres_r14: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (int8_t)-85, (int8_t)-52)); + HANDLE_CODE(unpack_integer(c.get(), bref, (int8_t)-85, (int8_t)-52)); break; case types::energy_detection_thres_offset_r14: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (int8_t)-13, (int8_t)20)); + HANDLE_CODE(unpack_integer(c.get(), bref, (int8_t)-13, (int8_t)20)); break; default: log_invalid_choice_id(type_, "lbt_cfg_r14_c"); @@ -47078,10 +46998,10 @@ SRSASN_CODE pdcch_cfg_laa_r14_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(pdcch_candidate_reductions_format4_b_r14_present, 1)); if (max_nof_sched_sfs_format0_b_r14_present) { - HANDLE_CODE(pack_enum(bref, max_nof_sched_sfs_format0_b_r14)); + HANDLE_CODE(max_nof_sched_sfs_format0_b_r14.pack(bref)); } if (max_nof_sched_sfs_format4_b_r14_present) { - HANDLE_CODE(pack_enum(bref, max_nof_sched_sfs_format4_b_r14)); + HANDLE_CODE(max_nof_sched_sfs_format4_b_r14.pack(bref)); } if (pdcch_candidate_reductions_format0_a_r14_present) { HANDLE_CODE(pdcch_candidate_reductions_format0_a_r14.pack(bref)); @@ -47110,10 +47030,10 @@ SRSASN_CODE pdcch_cfg_laa_r14_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(pdcch_candidate_reductions_format4_b_r14_present, 1)); if (max_nof_sched_sfs_format0_b_r14_present) { - HANDLE_CODE(unpack_enum(max_nof_sched_sfs_format0_b_r14, bref)); + HANDLE_CODE(max_nof_sched_sfs_format0_b_r14.unpack(bref)); } if (max_nof_sched_sfs_format4_b_r14_present) { - HANDLE_CODE(unpack_enum(max_nof_sched_sfs_format4_b_r14, bref)); + HANDLE_CODE(max_nof_sched_sfs_format4_b_r14.unpack(bref)); } if (pdcch_candidate_reductions_format0_a_r14_present) { HANDLE_CODE(pdcch_candidate_reductions_format0_a_r14.unpack(bref)); @@ -47216,14 +47136,14 @@ void srs_ul_cfg_ded_aperiodic_v1430_c::to_json(json_writer& j) const } SRSASN_CODE srs_ul_cfg_ded_aperiodic_v1430_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.srs_sf_ind_r14_present, 1)); if (c.srs_sf_ind_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.srs_sf_ind_r14, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, c.srs_sf_ind_r14, (uint8_t)1u, (uint8_t)4u)); } break; default: @@ -47235,7 +47155,7 @@ SRSASN_CODE srs_ul_cfg_ded_aperiodic_v1430_c::pack(bit_ref& bref) const SRSASN_CODE srs_ul_cfg_ded_aperiodic_v1430_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -47243,7 +47163,7 @@ SRSASN_CODE srs_ul_cfg_ded_aperiodic_v1430_c::unpack(bit_ref& bref) case types::setup: HANDLE_CODE(bref.unpack(c.srs_sf_ind_r14_present, 1)); if (c.srs_sf_ind_r14_present) { - HANDLE_CODE(unpack_unalign_integer(c.srs_sf_ind_r14, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(unpack_integer(c.srs_sf_ind_r14, bref, (uint8_t)1u, (uint8_t)4u)); } break; default: @@ -47261,9 +47181,9 @@ SRSASN_CODE cqi_report_cfg_scell_r10_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(pmi_ri_report_r10_present, 1)); if (cqi_report_mode_aperiodic_r10_present) { - HANDLE_CODE(pack_enum(bref, cqi_report_mode_aperiodic_r10)); + HANDLE_CODE(cqi_report_mode_aperiodic_r10.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, nom_pdsch_rs_epre_offset_r10, (int8_t)-1, (int8_t)6)); + HANDLE_CODE(pack_integer(bref, nom_pdsch_rs_epre_offset_r10, (int8_t)-1, (int8_t)6)); if (cqi_report_periodic_scell_r10_present) { HANDLE_CODE(cqi_report_periodic_scell_r10.pack(bref)); } @@ -47277,9 +47197,9 @@ SRSASN_CODE cqi_report_cfg_scell_r10_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(pmi_ri_report_r10_present, 1)); if (cqi_report_mode_aperiodic_r10_present) { - HANDLE_CODE(unpack_enum(cqi_report_mode_aperiodic_r10, bref)); + HANDLE_CODE(cqi_report_mode_aperiodic_r10.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(nom_pdsch_rs_epre_offset_r10, bref, (int8_t)-1, (int8_t)6)); + HANDLE_CODE(unpack_integer(nom_pdsch_rs_epre_offset_r10, bref, (int8_t)-1, (int8_t)6)); if (cqi_report_periodic_scell_r10_present) { HANDLE_CODE(cqi_report_periodic_scell_r10.unpack(bref)); } @@ -47313,7 +47233,7 @@ SRSASN_CODE cqi_report_cfg_scell_r15_s::pack(bit_ref& bref) const HANDLE_CODE(cqi_report_periodic_scell_r15.pack(bref)); } if (alt_cqi_table_minus1024_qam_r15_present) { - HANDLE_CODE(pack_enum(bref, alt_cqi_table_minus1024_qam_r15)); + HANDLE_CODE(alt_cqi_table_minus1024_qam_r15.pack(bref)); } return SRSASN_SUCCESS; @@ -47327,7 +47247,7 @@ SRSASN_CODE cqi_report_cfg_scell_r15_s::unpack(bit_ref& bref) HANDLE_CODE(cqi_report_periodic_scell_r15.unpack(bref)); } if (alt_cqi_table_minus1024_qam_r15_present) { - HANDLE_CODE(unpack_enum(alt_cqi_table_minus1024_qam_r15, bref)); + HANDLE_CODE(alt_cqi_table_minus1024_qam_r15.unpack(bref)); } return SRSASN_SUCCESS; @@ -47376,16 +47296,16 @@ void cqi_short_cfg_scell_r15_c::to_json(json_writer& j) const } SRSASN_CODE cqi_short_cfg_scell_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.ri_cfg_idx_short_r15_present, 1)); HANDLE_CODE(bref.pack(c.cqi_format_ind_short_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, c.cqi_pmi_cfg_idx_short_r15, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.cqi_pmi_cfg_idx_short_r15, (uint16_t)0u, (uint16_t)1023u)); if (c.ri_cfg_idx_short_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.ri_cfg_idx_short_r15, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.ri_cfg_idx_short_r15, (uint16_t)0u, (uint16_t)1023u)); } if (c.cqi_format_ind_short_r15_present) { HANDLE_CODE(c.cqi_format_ind_short_r15.pack(bref)); @@ -47400,7 +47320,7 @@ SRSASN_CODE cqi_short_cfg_scell_r15_c::pack(bit_ref& bref) const SRSASN_CODE cqi_short_cfg_scell_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -47408,9 +47328,9 @@ SRSASN_CODE cqi_short_cfg_scell_r15_c::unpack(bit_ref& bref) case types::setup: HANDLE_CODE(bref.unpack(c.ri_cfg_idx_short_r15_present, 1)); HANDLE_CODE(bref.unpack(c.cqi_format_ind_short_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(c.cqi_pmi_cfg_idx_short_r15, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.cqi_pmi_cfg_idx_short_r15, bref, (uint16_t)0u, (uint16_t)1023u)); if (c.ri_cfg_idx_short_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.ri_cfg_idx_short_r15, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.ri_cfg_idx_short_r15, bref, (uint16_t)0u, (uint16_t)1023u)); } if (c.cqi_format_ind_short_r15_present) { HANDLE_CODE(c.cqi_format_ind_short_r15.unpack(bref)); @@ -47520,17 +47440,17 @@ void cqi_short_cfg_scell_r15_c::setup_s_::cqi_format_ind_short_r15_c_::to_json(j } SRSASN_CODE cqi_short_cfg_scell_r15_c::setup_s_::cqi_format_ind_short_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::wideband_cqi_short_r15: HANDLE_CODE(bref.pack(c.get().csi_report_mode_short_r15_present, 1)); if (c.get().csi_report_mode_short_r15_present) { - HANDLE_CODE(pack_enum(bref, c.get().csi_report_mode_short_r15)); + HANDLE_CODE(c.get().csi_report_mode_short_r15.pack(bref)); } break; case types::subband_cqi_short_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get().k_r15, (uint8_t)1, (uint8_t)4)); - HANDLE_CODE(pack_enum(bref, c.get().periodicity_factor_r15)); + HANDLE_CODE(pack_integer(bref, c.get().k_r15, (uint8_t)1u, (uint8_t)4u)); + HANDLE_CODE(c.get().periodicity_factor_r15.pack(bref)); break; default: log_invalid_choice_id(type_, "cqi_short_cfg_scell_r15_c::setup_s_::cqi_format_ind_short_r15_c_"); @@ -47541,18 +47461,18 @@ SRSASN_CODE cqi_short_cfg_scell_r15_c::setup_s_::cqi_format_ind_short_r15_c_::pa SRSASN_CODE cqi_short_cfg_scell_r15_c::setup_s_::cqi_format_ind_short_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::wideband_cqi_short_r15: HANDLE_CODE(bref.unpack(c.get().csi_report_mode_short_r15_present, 1)); if (c.get().csi_report_mode_short_r15_present) { - HANDLE_CODE(unpack_enum(c.get().csi_report_mode_short_r15, bref)); + HANDLE_CODE(c.get().csi_report_mode_short_r15.unpack(bref)); } break; case types::subband_cqi_short_r15: - HANDLE_CODE(unpack_unalign_integer(c.get().k_r15, bref, (uint8_t)1, (uint8_t)4)); - HANDLE_CODE(unpack_enum(c.get().periodicity_factor_r15, bref)); + HANDLE_CODE(unpack_integer(c.get().k_r15, bref, (uint8_t)1u, (uint8_t)4u)); + HANDLE_CODE(c.get().periodicity_factor_r15.unpack(bref)); break; default: log_invalid_choice_id(type_, "cqi_short_cfg_scell_r15_c::setup_s_::cqi_format_ind_short_r15_c_"); @@ -47675,14 +47595,14 @@ void cross_carrier_sched_cfg_r10_s::sched_cell_info_r10_c_::to_json(json_writer& } SRSASN_CODE cross_carrier_sched_cfg_r10_s::sched_cell_info_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::own_r10: HANDLE_CODE(bref.pack(c.get().cif_presence_r10, 1)); break; case types::other_r10: - HANDLE_CODE(pack_unalign_integer(bref, c.get().sched_cell_id_r10, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(pack_unalign_integer(bref, c.get().pdsch_start_r10, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, c.get().sched_cell_id_r10, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(pack_integer(bref, c.get().pdsch_start_r10, (uint8_t)1u, (uint8_t)4u)); break; default: log_invalid_choice_id(type_, "cross_carrier_sched_cfg_r10_s::sched_cell_info_r10_c_"); @@ -47693,15 +47613,15 @@ SRSASN_CODE cross_carrier_sched_cfg_r10_s::sched_cell_info_r10_c_::pack(bit_ref& SRSASN_CODE cross_carrier_sched_cfg_r10_s::sched_cell_info_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::own_r10: HANDLE_CODE(bref.unpack(c.get().cif_presence_r10, 1)); break; case types::other_r10: - HANDLE_CODE(unpack_unalign_integer(c.get().sched_cell_id_r10, bref, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(unpack_unalign_integer(c.get().pdsch_start_r10, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(unpack_integer(c.get().sched_cell_id_r10, bref, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(unpack_integer(c.get().pdsch_start_r10, bref, (uint8_t)1u, (uint8_t)4u)); break; default: log_invalid_choice_id(type_, "cross_carrier_sched_cfg_r10_s::sched_cell_info_r10_c_"); @@ -47825,15 +47745,15 @@ void cross_carrier_sched_cfg_r13_s::sched_cell_info_r13_c_::to_json(json_writer& } SRSASN_CODE cross_carrier_sched_cfg_r13_s::sched_cell_info_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::own_r13: HANDLE_CODE(bref.pack(c.get().cif_presence_r13, 1)); break; case types::other_r13: - HANDLE_CODE(pack_unalign_integer(bref, c.get().sched_cell_id_r13, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, c.get().pdsch_start_r13, (uint8_t)1, (uint8_t)4)); - HANDLE_CODE(pack_unalign_integer(bref, c.get().cif_in_sched_cell_r13, (uint8_t)1, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, c.get().sched_cell_id_r13, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, c.get().pdsch_start_r13, (uint8_t)1u, (uint8_t)4u)); + HANDLE_CODE(pack_integer(bref, c.get().cif_in_sched_cell_r13, (uint8_t)1u, (uint8_t)7u)); break; default: log_invalid_choice_id(type_, "cross_carrier_sched_cfg_r13_s::sched_cell_info_r13_c_"); @@ -47844,16 +47764,16 @@ SRSASN_CODE cross_carrier_sched_cfg_r13_s::sched_cell_info_r13_c_::pack(bit_ref& SRSASN_CODE cross_carrier_sched_cfg_r13_s::sched_cell_info_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::own_r13: HANDLE_CODE(bref.unpack(c.get().cif_presence_r13, 1)); break; case types::other_r13: - HANDLE_CODE(unpack_unalign_integer(c.get().sched_cell_id_r13, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(c.get().pdsch_start_r13, bref, (uint8_t)1, (uint8_t)4)); - HANDLE_CODE(unpack_unalign_integer(c.get().cif_in_sched_cell_r13, bref, (uint8_t)1, (uint8_t)7)); + HANDLE_CODE(unpack_integer(c.get().sched_cell_id_r13, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(c.get().pdsch_start_r13, bref, (uint8_t)1u, (uint8_t)4u)); + HANDLE_CODE(unpack_integer(c.get().cif_in_sched_cell_r13, bref, (uint8_t)1u, (uint8_t)7u)); break; default: log_invalid_choice_id(type_, "cross_carrier_sched_cfg_r13_s::sched_cell_info_r13_c_"); @@ -47915,7 +47835,7 @@ void delta_flist_spucch_r15_c::to_json(json_writer& j) const } SRSASN_CODE delta_flist_spucch_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -47932,34 +47852,34 @@ SRSASN_CODE delta_flist_spucch_r15_c::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.delta_f_subslot_spucch_rm_format4_r15_present, 1)); HANDLE_CODE(bref.pack(c.delta_f_subslot_spucch_tbcc_format4_r15_present, 1)); if (c.delta_f_slot_spucch_format1_r15_present) { - HANDLE_CODE(pack_enum(bref, c.delta_f_slot_spucch_format1_r15)); + HANDLE_CODE(c.delta_f_slot_spucch_format1_r15.pack(bref)); } if (c.delta_f_slot_spucch_format1a_r15_present) { - HANDLE_CODE(pack_enum(bref, c.delta_f_slot_spucch_format1a_r15)); + HANDLE_CODE(c.delta_f_slot_spucch_format1a_r15.pack(bref)); } if (c.delta_f_slot_spucch_format1b_r15_present) { - HANDLE_CODE(pack_enum(bref, c.delta_f_slot_spucch_format1b_r15)); + HANDLE_CODE(c.delta_f_slot_spucch_format1b_r15.pack(bref)); } if (c.delta_f_slot_spucch_format3_r15_present) { - HANDLE_CODE(pack_enum(bref, c.delta_f_slot_spucch_format3_r15)); + HANDLE_CODE(c.delta_f_slot_spucch_format3_r15.pack(bref)); } if (c.delta_f_slot_spucch_rm_format4_r15_present) { - HANDLE_CODE(pack_enum(bref, c.delta_f_slot_spucch_rm_format4_r15)); + HANDLE_CODE(c.delta_f_slot_spucch_rm_format4_r15.pack(bref)); } if (c.delta_f_slot_spucch_tbcc_format4_r15_present) { - HANDLE_CODE(pack_enum(bref, c.delta_f_slot_spucch_tbcc_format4_r15)); + HANDLE_CODE(c.delta_f_slot_spucch_tbcc_format4_r15.pack(bref)); } if (c.delta_f_subslot_spucch_format1and1a_r15_present) { - HANDLE_CODE(pack_enum(bref, c.delta_f_subslot_spucch_format1and1a_r15)); + HANDLE_CODE(c.delta_f_subslot_spucch_format1and1a_r15.pack(bref)); } if (c.delta_f_subslot_spucch_format1b_r15_present) { - HANDLE_CODE(pack_enum(bref, c.delta_f_subslot_spucch_format1b_r15)); + HANDLE_CODE(c.delta_f_subslot_spucch_format1b_r15.pack(bref)); } if (c.delta_f_subslot_spucch_rm_format4_r15_present) { - HANDLE_CODE(pack_enum(bref, c.delta_f_subslot_spucch_rm_format4_r15)); + HANDLE_CODE(c.delta_f_subslot_spucch_rm_format4_r15.pack(bref)); } if (c.delta_f_subslot_spucch_tbcc_format4_r15_present) { - HANDLE_CODE(pack_enum(bref, c.delta_f_subslot_spucch_tbcc_format4_r15)); + HANDLE_CODE(c.delta_f_subslot_spucch_tbcc_format4_r15.pack(bref)); } break; default: @@ -47971,7 +47891,7 @@ SRSASN_CODE delta_flist_spucch_r15_c::pack(bit_ref& bref) const SRSASN_CODE delta_flist_spucch_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -47989,34 +47909,34 @@ SRSASN_CODE delta_flist_spucch_r15_c::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.delta_f_subslot_spucch_rm_format4_r15_present, 1)); HANDLE_CODE(bref.unpack(c.delta_f_subslot_spucch_tbcc_format4_r15_present, 1)); if (c.delta_f_slot_spucch_format1_r15_present) { - HANDLE_CODE(unpack_enum(c.delta_f_slot_spucch_format1_r15, bref)); + HANDLE_CODE(c.delta_f_slot_spucch_format1_r15.unpack(bref)); } if (c.delta_f_slot_spucch_format1a_r15_present) { - HANDLE_CODE(unpack_enum(c.delta_f_slot_spucch_format1a_r15, bref)); + HANDLE_CODE(c.delta_f_slot_spucch_format1a_r15.unpack(bref)); } if (c.delta_f_slot_spucch_format1b_r15_present) { - HANDLE_CODE(unpack_enum(c.delta_f_slot_spucch_format1b_r15, bref)); + HANDLE_CODE(c.delta_f_slot_spucch_format1b_r15.unpack(bref)); } if (c.delta_f_slot_spucch_format3_r15_present) { - HANDLE_CODE(unpack_enum(c.delta_f_slot_spucch_format3_r15, bref)); + HANDLE_CODE(c.delta_f_slot_spucch_format3_r15.unpack(bref)); } if (c.delta_f_slot_spucch_rm_format4_r15_present) { - HANDLE_CODE(unpack_enum(c.delta_f_slot_spucch_rm_format4_r15, bref)); + HANDLE_CODE(c.delta_f_slot_spucch_rm_format4_r15.unpack(bref)); } if (c.delta_f_slot_spucch_tbcc_format4_r15_present) { - HANDLE_CODE(unpack_enum(c.delta_f_slot_spucch_tbcc_format4_r15, bref)); + HANDLE_CODE(c.delta_f_slot_spucch_tbcc_format4_r15.unpack(bref)); } if (c.delta_f_subslot_spucch_format1and1a_r15_present) { - HANDLE_CODE(unpack_enum(c.delta_f_subslot_spucch_format1and1a_r15, bref)); + HANDLE_CODE(c.delta_f_subslot_spucch_format1and1a_r15.unpack(bref)); } if (c.delta_f_subslot_spucch_format1b_r15_present) { - HANDLE_CODE(unpack_enum(c.delta_f_subslot_spucch_format1b_r15, bref)); + HANDLE_CODE(c.delta_f_subslot_spucch_format1b_r15.unpack(bref)); } if (c.delta_f_subslot_spucch_rm_format4_r15_present) { - HANDLE_CODE(unpack_enum(c.delta_f_subslot_spucch_rm_format4_r15, bref)); + HANDLE_CODE(c.delta_f_subslot_spucch_rm_format4_r15.unpack(bref)); } if (c.delta_f_subslot_spucch_tbcc_format4_r15_present) { - HANDLE_CODE(unpack_enum(c.delta_f_subslot_spucch_tbcc_format4_r15, bref)); + HANDLE_CODE(c.delta_f_subslot_spucch_tbcc_format4_r15.unpack(bref)); } break; default: @@ -48029,14 +47949,14 @@ SRSASN_CODE delta_flist_spucch_r15_c::unpack(bit_ref& bref) // LAA-SCellConfiguration-r13 ::= SEQUENCE SRSASN_CODE laa_scell_cfg_r13_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, sf_start_position_r13)); + HANDLE_CODE(sf_start_position_r13.pack(bref)); HANDLE_CODE(laa_scell_sf_cfg_r13.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE laa_scell_cfg_r13_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(sf_start_position_r13, bref)); + HANDLE_CODE(sf_start_position_r13.unpack(bref)); HANDLE_CODE(laa_scell_sf_cfg_r13.unpack(bref)); return SRSASN_SUCCESS; @@ -48145,7 +48065,7 @@ void laa_scell_cfg_v1430_s::cross_carrier_sched_cfg_ul_r14_c_::to_json(json_writ } SRSASN_CODE laa_scell_cfg_v1430_s::cross_carrier_sched_cfg_ul_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -48161,7 +48081,7 @@ SRSASN_CODE laa_scell_cfg_v1430_s::cross_carrier_sched_cfg_ul_r14_c_::pack(bit_r SRSASN_CODE laa_scell_cfg_v1430_s::cross_carrier_sched_cfg_ul_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -48305,7 +48225,7 @@ void pucch_cfg_ded_v1370_s::pucch_format_v1370_c_::to_json(json_writer& j) const } SRSASN_CODE pucch_cfg_ded_v1370_s::pucch_format_v1370_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -48321,7 +48241,7 @@ SRSASN_CODE pucch_cfg_ded_v1370_s::pucch_format_v1370_c_::pack(bit_ref& bref) co SRSASN_CODE pucch_cfg_ded_v1370_s::pucch_format_v1370_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -48438,12 +48358,12 @@ void pusch_cfg_ded_scell_v1530_s::uci_on_pusch_r15_c_::to_json(json_writer& j) c } SRSASN_CODE pusch_cfg_ded_scell_v1530_s::uci_on_pusch_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c.beta_offset_aul_r15, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, c.beta_offset_aul_r15, (uint8_t)0u, (uint8_t)15u)); break; default: log_invalid_choice_id(type_, "pusch_cfg_ded_scell_v1530_s::uci_on_pusch_r15_c_"); @@ -48454,13 +48374,13 @@ SRSASN_CODE pusch_cfg_ded_scell_v1530_s::uci_on_pusch_r15_c_::pack(bit_ref& bref SRSASN_CODE pusch_cfg_ded_scell_v1530_s::uci_on_pusch_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c.beta_offset_aul_r15, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(c.beta_offset_aul_r15, bref, (uint8_t)0u, (uint8_t)15u)); break; default: log_invalid_choice_id(type_, "pusch_cfg_ded_scell_v1530_s::uci_on_pusch_r15_c_"); @@ -48498,18 +48418,18 @@ void sched_request_cfg_scell_r13_c::to_json(json_writer& j) const } SRSASN_CODE sched_request_cfg_scell_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.sr_pucch_res_idx_p1_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, c.sr_pucch_res_idx_r13, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(pack_integer(bref, c.sr_pucch_res_idx_r13, (uint16_t)0u, (uint16_t)2047u)); if (c.sr_pucch_res_idx_p1_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.sr_pucch_res_idx_p1_r13, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(pack_integer(bref, c.sr_pucch_res_idx_p1_r13, (uint16_t)0u, (uint16_t)2047u)); } - HANDLE_CODE(pack_unalign_integer(bref, c.sr_cfg_idx_r13, (uint8_t)0, (uint8_t)157)); - HANDLE_CODE(pack_enum(bref, c.dsr_trans_max_r13)); + HANDLE_CODE(pack_integer(bref, c.sr_cfg_idx_r13, (uint8_t)0u, (uint8_t)157u)); + HANDLE_CODE(c.dsr_trans_max_r13.pack(bref)); break; default: log_invalid_choice_id(type_, "sched_request_cfg_scell_r13_c"); @@ -48520,19 +48440,19 @@ SRSASN_CODE sched_request_cfg_scell_r13_c::pack(bit_ref& bref) const SRSASN_CODE sched_request_cfg_scell_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.unpack(c.sr_pucch_res_idx_p1_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(c.sr_pucch_res_idx_r13, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(unpack_integer(c.sr_pucch_res_idx_r13, bref, (uint16_t)0u, (uint16_t)2047u)); if (c.sr_pucch_res_idx_p1_r13_present) { - HANDLE_CODE(unpack_unalign_integer(c.sr_pucch_res_idx_p1_r13, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(unpack_integer(c.sr_pucch_res_idx_p1_r13, bref, (uint16_t)0u, (uint16_t)2047u)); } - HANDLE_CODE(unpack_unalign_integer(c.sr_cfg_idx_r13, bref, (uint8_t)0, (uint8_t)157)); - HANDLE_CODE(unpack_enum(c.dsr_trans_max_r13, bref)); + HANDLE_CODE(unpack_integer(c.sr_cfg_idx_r13, bref, (uint8_t)0u, (uint8_t)157u)); + HANDLE_CODE(c.dsr_trans_max_r13.unpack(bref)); break; default: log_invalid_choice_id(type_, "sched_request_cfg_scell_r13_c"); @@ -48642,7 +48562,7 @@ void tpc_pdcch_cfg_scell_r13_c::to_json(json_writer& j) const } SRSASN_CODE tpc_pdcch_cfg_scell_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -48658,7 +48578,7 @@ SRSASN_CODE tpc_pdcch_cfg_scell_r13_c::pack(bit_ref& bref) const SRSASN_CODE tpc_pdcch_cfg_scell_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -48680,10 +48600,10 @@ SRSASN_CODE ul_pusch_less_pwr_ctrl_ded_v1430_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(p0_ue_aperiodic_srs_r14_present, 1)); if (p0_ue_periodic_srs_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, p0_ue_periodic_srs_r14, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(pack_integer(bref, p0_ue_periodic_srs_r14, (int8_t)-8, (int8_t)7)); } if (p0_ue_aperiodic_srs_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, p0_ue_aperiodic_srs_r14, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(pack_integer(bref, p0_ue_aperiodic_srs_r14, (int8_t)-8, (int8_t)7)); } HANDLE_CODE(bref.pack(accumulation_enabled_r14, 1)); @@ -48695,10 +48615,10 @@ SRSASN_CODE ul_pusch_less_pwr_ctrl_ded_v1430_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(p0_ue_aperiodic_srs_r14_present, 1)); if (p0_ue_periodic_srs_r14_present) { - HANDLE_CODE(unpack_unalign_integer(p0_ue_periodic_srs_r14, bref, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(unpack_integer(p0_ue_periodic_srs_r14, bref, (int8_t)-8, (int8_t)7)); } if (p0_ue_aperiodic_srs_r14_present) { - HANDLE_CODE(unpack_unalign_integer(p0_ue_aperiodic_srs_r14, bref, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(unpack_integer(p0_ue_aperiodic_srs_r14, bref, (int8_t)-8, (int8_t)7)); } HANDLE_CODE(bref.unpack(accumulation_enabled_r14, 1)); @@ -48720,39 +48640,39 @@ void ul_pusch_less_pwr_ctrl_ded_v1430_s::to_json(json_writer& j) const // UplinkPowerControlDedicatedSCell-r10 ::= SEQUENCE SRSASN_CODE ul_pwr_ctrl_ded_scell_r10_s::pack(bit_ref& bref) const { - HANDLE_CODE(bref.pack(p_srs_offset_ap_r10_present, 1)); + HANDLE_CODE(bref.pack(psrs_offset_ap_r10_present, 1)); HANDLE_CODE(bref.pack(filt_coef_r10_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, p0_ue_pusch_r10, (int8_t)-8, (int8_t)7)); - HANDLE_CODE(pack_enum(bref, delta_mcs_enabled_r10)); + HANDLE_CODE(pack_integer(bref, p0_ue_pusch_r10, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(delta_mcs_enabled_r10.pack(bref)); HANDLE_CODE(bref.pack(accumulation_enabled_r10, 1)); - HANDLE_CODE(pack_unalign_integer(bref, p_srs_offset_r10, (uint8_t)0, (uint8_t)15)); - if (p_srs_offset_ap_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, p_srs_offset_ap_r10, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, psrs_offset_r10, (uint8_t)0u, (uint8_t)15u)); + if (psrs_offset_ap_r10_present) { + HANDLE_CODE(pack_integer(bref, psrs_offset_ap_r10, (uint8_t)0u, (uint8_t)15u)); } if (filt_coef_r10_present) { - HANDLE_CODE(pack_enum(bref, filt_coef_r10)); + HANDLE_CODE(filt_coef_r10.pack(bref)); } - HANDLE_CODE(pack_enum(bref, pathloss_ref_linking_r10)); + HANDLE_CODE(pathloss_ref_linking_r10.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE ul_pwr_ctrl_ded_scell_r10_s::unpack(bit_ref& bref) { - HANDLE_CODE(bref.unpack(p_srs_offset_ap_r10_present, 1)); + HANDLE_CODE(bref.unpack(psrs_offset_ap_r10_present, 1)); HANDLE_CODE(bref.unpack(filt_coef_r10_present, 1)); - HANDLE_CODE(unpack_unalign_integer(p0_ue_pusch_r10, bref, (int8_t)-8, (int8_t)7)); - HANDLE_CODE(unpack_enum(delta_mcs_enabled_r10, bref)); + HANDLE_CODE(unpack_integer(p0_ue_pusch_r10, bref, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(delta_mcs_enabled_r10.unpack(bref)); HANDLE_CODE(bref.unpack(accumulation_enabled_r10, 1)); - HANDLE_CODE(unpack_unalign_integer(p_srs_offset_r10, bref, (uint8_t)0, (uint8_t)15)); - if (p_srs_offset_ap_r10_present) { - HANDLE_CODE(unpack_unalign_integer(p_srs_offset_ap_r10, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(psrs_offset_r10, bref, (uint8_t)0u, (uint8_t)15u)); + if (psrs_offset_ap_r10_present) { + HANDLE_CODE(unpack_integer(psrs_offset_ap_r10, bref, (uint8_t)0u, (uint8_t)15u)); } if (filt_coef_r10_present) { - HANDLE_CODE(unpack_enum(filt_coef_r10, bref)); + HANDLE_CODE(filt_coef_r10.unpack(bref)); } - HANDLE_CODE(unpack_enum(pathloss_ref_linking_r10, bref)); + HANDLE_CODE(pathloss_ref_linking_r10.unpack(bref)); return SRSASN_SUCCESS; } @@ -48762,9 +48682,9 @@ void ul_pwr_ctrl_ded_scell_r10_s::to_json(json_writer& j) const j.write_int("p0-UE-PUSCH-r10", p0_ue_pusch_r10); j.write_str("deltaMCS-Enabled-r10", delta_mcs_enabled_r10.to_string()); j.write_bool("accumulationEnabled-r10", accumulation_enabled_r10); - j.write_int("pSRS-Offset-r10", p_srs_offset_r10); - if (p_srs_offset_ap_r10_present) { - j.write_int("pSRS-OffsetAp-r10", p_srs_offset_ap_r10); + j.write_int("pSRS-Offset-r10", psrs_offset_r10); + if (psrs_offset_ap_r10_present) { + j.write_int("pSRS-OffsetAp-r10", psrs_offset_ap_r10); } if (filt_coef_r10_present) { j.write_str("filterCoefficient-r10", filt_coef_r10.to_string()); @@ -48778,7 +48698,7 @@ SRSASN_CODE ul_pwr_ctrl_ded_scell_v1310_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(delta_tx_d_offset_list_pucch_r10_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, p0_ue_pucch, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(pack_integer(bref, p0_ue_pucch, (int8_t)-8, (int8_t)7)); if (delta_tx_d_offset_list_pucch_r10_present) { HANDLE_CODE(delta_tx_d_offset_list_pucch_r10.pack(bref)); } @@ -48789,7 +48709,7 @@ SRSASN_CODE ul_pwr_ctrl_ded_scell_v1310_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(delta_tx_d_offset_list_pucch_r10_present, 1)); - HANDLE_CODE(unpack_unalign_integer(p0_ue_pucch, bref, (int8_t)-8, (int8_t)7)); + HANDLE_CODE(unpack_integer(p0_ue_pucch, bref, (int8_t)-8, (int8_t)7)); if (delta_tx_d_offset_list_pucch_r10_present) { HANDLE_CODE(delta_tx_d_offset_list_pucch_r10.unpack(bref)); } @@ -48810,13 +48730,13 @@ void ul_pwr_ctrl_ded_scell_v1310_s::to_json(json_writer& j) const // AntennaInfoCommon ::= SEQUENCE SRSASN_CODE ant_info_common_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, ant_ports_count)); + HANDLE_CODE(ant_ports_count.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE ant_info_common_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(ant_ports_count, bref)); + HANDLE_CODE(ant_ports_count.unpack(bref)); return SRSASN_SUCCESS; } @@ -48856,7 +48776,7 @@ SRSASN_CODE mac_main_cfg_scell_r11_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(stag_id_r11_present, 1)); if (stag_id_r11_present) { - HANDLE_CODE(pack_unalign_integer(bref, stag_id_r11, (uint8_t)1, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, stag_id_r11, (uint8_t)1u, (uint8_t)3u)); } return SRSASN_SUCCESS; @@ -48867,7 +48787,7 @@ SRSASN_CODE mac_main_cfg_scell_r11_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(stag_id_r11_present, 1)); if (stag_id_r11_present) { - HANDLE_CODE(unpack_unalign_integer(stag_id_r11, bref, (uint8_t)1, (uint8_t)3)); + HANDLE_CODE(unpack_integer(stag_id_r11, bref, (uint8_t)1u, (uint8_t)3u)); } return SRSASN_SUCCESS; @@ -48886,7 +48806,7 @@ SRSASN_CODE prach_cfg_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(prach_cfg_info_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, root_seq_idx, (uint16_t)0, (uint16_t)837)); + HANDLE_CODE(pack_integer(bref, root_seq_idx, (uint16_t)0u, (uint16_t)837u)); if (prach_cfg_info_present) { HANDLE_CODE(prach_cfg_info.pack(bref)); } @@ -48897,7 +48817,7 @@ SRSASN_CODE prach_cfg_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(prach_cfg_info_present, 1)); - HANDLE_CODE(unpack_unalign_integer(root_seq_idx, bref, (uint16_t)0, (uint16_t)837)); + HANDLE_CODE(unpack_integer(root_seq_idx, bref, (uint16_t)0u, (uint16_t)837u)); if (prach_cfg_info_present) { HANDLE_CODE(prach_cfg_info.unpack(bref)); } @@ -48918,13 +48838,13 @@ void prach_cfg_s::to_json(json_writer& j) const // PRACH-ConfigSCell-r10 ::= SEQUENCE SRSASN_CODE prach_cfg_scell_r10_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, prach_cfg_idx_r10, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(pack_integer(bref, prach_cfg_idx_r10, (uint8_t)0u, (uint8_t)63u)); return SRSASN_SUCCESS; } SRSASN_CODE prach_cfg_scell_r10_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(prach_cfg_idx_r10, bref, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(unpack_integer(prach_cfg_idx_r10, bref, (uint8_t)0u, (uint8_t)63u)); return SRSASN_SUCCESS; } @@ -49052,7 +48972,7 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(csi_rs_cfg_nzp_to_release_list_r11.is_present(), 1)); HANDLE_CODE(bref.pack(csi_rs_cfg_nzp_to_add_mod_list_r11.is_present(), 1)); @@ -49064,15 +48984,13 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(pusch_cfg_ded_v1130.is_present(), 1)); HANDLE_CODE(bref.pack(ul_pwr_ctrl_ded_scell_v1130.is_present(), 1)); if (csi_rs_cfg_nzp_to_release_list_r11.is_present()) { - HANDLE_CODE( - pack_dyn_seq_of(bref, *csi_rs_cfg_nzp_to_release_list_r11, 1, 3, UnalignedIntegerPacker(1, 3))); + HANDLE_CODE(pack_dyn_seq_of(bref, *csi_rs_cfg_nzp_to_release_list_r11, 1, 3, integer_packer(1, 3))); } if (csi_rs_cfg_nzp_to_add_mod_list_r11.is_present()) { HANDLE_CODE(pack_dyn_seq_of(bref, *csi_rs_cfg_nzp_to_add_mod_list_r11, 1, 3)); } if (csi_rs_cfg_zp_to_release_list_r11.is_present()) { - HANDLE_CODE( - pack_dyn_seq_of(bref, *csi_rs_cfg_zp_to_release_list_r11, 1, 4, UnalignedIntegerPacker(1, 4))); + HANDLE_CODE(pack_dyn_seq_of(bref, *csi_rs_cfg_zp_to_release_list_r11, 1, 4, integer_packer(1, 4))); } if (csi_rs_cfg_zp_to_add_mod_list_r11.is_present()) { HANDLE_CODE(pack_dyn_seq_of(bref, *csi_rs_cfg_zp_to_add_mod_list_r11, 1, 4)); @@ -49094,7 +49012,7 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ant_info_v1250.is_present(), 1)); HANDLE_CODE(bref.pack(eimta_main_cfg_scell_r12.is_present(), 1)); @@ -49118,7 +49036,7 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(pdsch_cfg_ded_v1280.is_present(), 1)); if (pdsch_cfg_ded_v1280.is_present()) { @@ -49126,7 +49044,7 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::pack(bit_ref& bref) const } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(pucch_cell_r13_present, 1)); HANDLE_CODE(bref.pack(pucch_scell.is_present(), 1)); @@ -49179,12 +49097,12 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, *csi_rs_cfg_nzp_to_add_mod_list_ext_r13, 1, 21)); } if (csi_rs_cfg_nzp_to_release_list_ext_r13.is_present()) { - HANDLE_CODE(pack_dyn_seq_of( - bref, *csi_rs_cfg_nzp_to_release_list_ext_r13, 1, 21, UnalignedIntegerPacker(4, 24))); + HANDLE_CODE( + pack_dyn_seq_of(bref, *csi_rs_cfg_nzp_to_release_list_ext_r13, 1, 21, integer_packer(4, 24))); } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(cqi_report_cfg_v1320.is_present(), 1)); if (cqi_report_cfg_v1320.is_present()) { @@ -49192,7 +49110,7 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::pack(bit_ref& bref) const } } if (group_flags[5]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(laa_scell_cfg_v1430.is_present(), 1)); HANDLE_CODE(bref.pack(type_b_srs_tpc_pdcch_cfg_r14.is_present(), 1)); @@ -49252,7 +49170,7 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::pack(bit_ref& bref) const } } if (group_flags[6]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(csi_rs_cfg_v1480.is_present(), 1)); if (csi_rs_cfg_v1480.is_present()) { @@ -49260,7 +49178,7 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::pack(bit_ref& bref) const } } if (group_flags[7]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(phys_cfg_ded_stti_r15.is_present(), 1)); HANDLE_CODE(bref.pack(pdsch_cfg_ded_v1530.is_present(), 1)); @@ -49370,7 +49288,7 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool csi_rs_cfg_nzp_to_release_list_r11_present; HANDLE_CODE(bref.unpack(csi_rs_cfg_nzp_to_release_list_r11_present, 1)); @@ -49400,15 +49318,13 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ul_pwr_ctrl_ded_scell_v1130_present, 1)); ul_pwr_ctrl_ded_scell_v1130.set_present(ul_pwr_ctrl_ded_scell_v1130_present); if (csi_rs_cfg_nzp_to_release_list_r11.is_present()) { - HANDLE_CODE( - unpack_dyn_seq_of(*csi_rs_cfg_nzp_to_release_list_r11, bref, 1, 3, UnalignedIntegerPacker(1, 3))); + HANDLE_CODE(unpack_dyn_seq_of(*csi_rs_cfg_nzp_to_release_list_r11, bref, 1, 3, integer_packer(1, 3))); } if (csi_rs_cfg_nzp_to_add_mod_list_r11.is_present()) { HANDLE_CODE(unpack_dyn_seq_of(*csi_rs_cfg_nzp_to_add_mod_list_r11, bref, 1, 3)); } if (csi_rs_cfg_zp_to_release_list_r11.is_present()) { - HANDLE_CODE( - unpack_dyn_seq_of(*csi_rs_cfg_zp_to_release_list_r11, bref, 1, 4, UnalignedIntegerPacker(1, 4))); + HANDLE_CODE(unpack_dyn_seq_of(*csi_rs_cfg_zp_to_release_list_r11, bref, 1, 4, integer_packer(1, 4))); } if (csi_rs_cfg_zp_to_add_mod_list_r11.is_present()) { HANDLE_CODE(unpack_dyn_seq_of(*csi_rs_cfg_zp_to_add_mod_list_r11, bref, 1, 4)); @@ -49430,7 +49346,7 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool ant_info_v1250_present; HANDLE_CODE(bref.unpack(ant_info_v1250_present, 1)); @@ -49464,7 +49380,7 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool pdsch_cfg_ded_v1280_present; HANDLE_CODE(bref.unpack(pdsch_cfg_ded_v1280_present, 1)); @@ -49474,7 +49390,7 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::unpack(bit_ref& bref) } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(pucch_cell_r13_present, 1)); bool pucch_scell_present; @@ -49553,12 +49469,12 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(*csi_rs_cfg_nzp_to_add_mod_list_ext_r13, bref, 1, 21)); } if (csi_rs_cfg_nzp_to_release_list_ext_r13.is_present()) { - HANDLE_CODE(unpack_dyn_seq_of( - *csi_rs_cfg_nzp_to_release_list_ext_r13, bref, 1, 21, UnalignedIntegerPacker(4, 24))); + HANDLE_CODE( + unpack_dyn_seq_of(*csi_rs_cfg_nzp_to_release_list_ext_r13, bref, 1, 21, integer_packer(4, 24))); } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool cqi_report_cfg_v1320_present; HANDLE_CODE(bref.unpack(cqi_report_cfg_v1320_present, 1)); @@ -49568,7 +49484,7 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::unpack(bit_ref& bref) } } if (group_flags[5]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool laa_scell_cfg_v1430_present; HANDLE_CODE(bref.unpack(laa_scell_cfg_v1430_present, 1)); @@ -49654,7 +49570,7 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::unpack(bit_ref& bref) } } if (group_flags[6]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool csi_rs_cfg_v1480_present; HANDLE_CODE(bref.unpack(csi_rs_cfg_v1480_present, 1)); @@ -49664,7 +49580,7 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::unpack(bit_ref& bref) } } if (group_flags[7]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool phys_cfg_ded_stti_r15_present; HANDLE_CODE(bref.unpack(phys_cfg_ded_stti_r15_present, 1)); @@ -50092,7 +50008,7 @@ void phys_cfg_ded_scell_r10_s::pucch_scell_c_::to_json(json_writer& j) const } SRSASN_CODE phys_cfg_ded_scell_r10_s::pucch_scell_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -50127,7 +50043,7 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::pucch_scell_c_::pack(bit_ref& bref) const SRSASN_CODE phys_cfg_ded_scell_r10_s::pucch_scell_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -50187,15 +50103,15 @@ void phys_cfg_ded_scell_r10_s::must_cfg_r14_c_::to_json(json_writer& j) const } SRSASN_CODE phys_cfg_ded_scell_r10_s::must_cfg_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.p_a_must_r14_present, 1)); - HANDLE_CODE(pack_enum(bref, c.k_max_r14)); + HANDLE_CODE(c.k_max_r14.pack(bref)); if (c.p_a_must_r14_present) { - HANDLE_CODE(pack_enum(bref, c.p_a_must_r14)); + HANDLE_CODE(c.p_a_must_r14.pack(bref)); } break; default: @@ -50207,16 +50123,16 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::must_cfg_r14_c_::pack(bit_ref& bref) const SRSASN_CODE phys_cfg_ded_scell_r10_s::must_cfg_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.unpack(c.p_a_must_r14_present, 1)); - HANDLE_CODE(unpack_enum(c.k_max_r14, bref)); + HANDLE_CODE(c.k_max_r14.unpack(bref)); if (c.p_a_must_r14_present) { - HANDLE_CODE(unpack_enum(c.p_a_must_r14, bref)); + HANDLE_CODE(c.p_a_must_r14.unpack(bref)); } break; default: @@ -50247,7 +50163,7 @@ void phys_cfg_ded_scell_r10_s::semi_static_cfi_cfg_r15_c_::to_json(json_writer& } SRSASN_CODE phys_cfg_ded_scell_r10_s::semi_static_cfi_cfg_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -50263,7 +50179,7 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::semi_static_cfi_cfg_r15_c_::pack(bit_ref& SRSASN_CODE phys_cfg_ded_scell_r10_s::semi_static_cfi_cfg_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -50367,7 +50283,7 @@ void phys_cfg_ded_scell_r10_s::semi_static_cfi_cfg_r15_c_::setup_c_::to_json(jso } SRSASN_CODE phys_cfg_ded_scell_r10_s::semi_static_cfi_cfg_r15_c_::setup_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::cfi_cfg_r15: HANDLE_CODE(c.get().pack(bref)); @@ -50384,7 +50300,7 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::semi_static_cfi_cfg_r15_c_::setup_c_::pack SRSASN_CODE phys_cfg_ded_scell_r10_s::semi_static_cfi_cfg_r15_c_::setup_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::cfi_cfg_r15: @@ -50450,7 +50366,7 @@ void phys_cfg_ded_scell_r10_s::blind_pdsch_repeat_cfg_r15_c_::to_json(json_write } SRSASN_CODE phys_cfg_ded_scell_r10_s::blind_pdsch_repeat_cfg_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -50466,29 +50382,28 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::blind_pdsch_repeat_cfg_r15_c_::pack(bit_re HANDLE_CODE(bref.pack(c.blind_sf_pdsch_repeats_r15, 1)); HANDLE_CODE(bref.pack(c.blind_slot_subslot_pdsch_repeats_r15, 1)); if (c.max_num_sf_pdsch_repeats_r15_present) { - HANDLE_CODE(pack_enum(bref, c.max_num_sf_pdsch_repeats_r15)); + HANDLE_CODE(c.max_num_sf_pdsch_repeats_r15.pack(bref)); } if (c.max_num_slot_subslot_pdsch_repeats_r15_present) { - HANDLE_CODE(pack_enum(bref, c.max_num_slot_subslot_pdsch_repeats_r15)); + HANDLE_CODE(c.max_num_slot_subslot_pdsch_repeats_r15.pack(bref)); } if (c.rv_sf_pdsch_repeats_r15_present) { - HANDLE_CODE(pack_enum(bref, c.rv_sf_pdsch_repeats_r15)); + HANDLE_CODE(c.rv_sf_pdsch_repeats_r15.pack(bref)); } if (c.rv_slotsublot_pdsch_repeats_r15_present) { - HANDLE_CODE(pack_enum(bref, c.rv_slotsublot_pdsch_repeats_r15)); + HANDLE_CODE(c.rv_slotsublot_pdsch_repeats_r15.pack(bref)); } if (c.nof_processes_sf_pdsch_repeats_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.nof_processes_sf_pdsch_repeats_r15, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(pack_integer(bref, c.nof_processes_sf_pdsch_repeats_r15, (uint8_t)1u, (uint8_t)16u)); } if (c.nof_processes_slot_subslot_pdsch_repeats_r15_present) { - HANDLE_CODE( - pack_unalign_integer(bref, c.nof_processes_slot_subslot_pdsch_repeats_r15, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(pack_integer(bref, c.nof_processes_slot_subslot_pdsch_repeats_r15, (uint8_t)1u, (uint8_t)16u)); } if (c.mcs_restrict_sf_pdsch_repeats_r15_present) { - HANDLE_CODE(pack_enum(bref, c.mcs_restrict_sf_pdsch_repeats_r15)); + HANDLE_CODE(c.mcs_restrict_sf_pdsch_repeats_r15.pack(bref)); } if (c.mcs_restrict_slot_subslot_pdsch_repeats_r15_present) { - HANDLE_CODE(pack_enum(bref, c.mcs_restrict_slot_subslot_pdsch_repeats_r15)); + HANDLE_CODE(c.mcs_restrict_slot_subslot_pdsch_repeats_r15.pack(bref)); } break; default: @@ -50500,7 +50415,7 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::blind_pdsch_repeat_cfg_r15_c_::pack(bit_re SRSASN_CODE phys_cfg_ded_scell_r10_s::blind_pdsch_repeat_cfg_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -50517,29 +50432,28 @@ SRSASN_CODE phys_cfg_ded_scell_r10_s::blind_pdsch_repeat_cfg_r15_c_::unpack(bit_ HANDLE_CODE(bref.unpack(c.blind_sf_pdsch_repeats_r15, 1)); HANDLE_CODE(bref.unpack(c.blind_slot_subslot_pdsch_repeats_r15, 1)); if (c.max_num_sf_pdsch_repeats_r15_present) { - HANDLE_CODE(unpack_enum(c.max_num_sf_pdsch_repeats_r15, bref)); + HANDLE_CODE(c.max_num_sf_pdsch_repeats_r15.unpack(bref)); } if (c.max_num_slot_subslot_pdsch_repeats_r15_present) { - HANDLE_CODE(unpack_enum(c.max_num_slot_subslot_pdsch_repeats_r15, bref)); + HANDLE_CODE(c.max_num_slot_subslot_pdsch_repeats_r15.unpack(bref)); } if (c.rv_sf_pdsch_repeats_r15_present) { - HANDLE_CODE(unpack_enum(c.rv_sf_pdsch_repeats_r15, bref)); + HANDLE_CODE(c.rv_sf_pdsch_repeats_r15.unpack(bref)); } if (c.rv_slotsublot_pdsch_repeats_r15_present) { - HANDLE_CODE(unpack_enum(c.rv_slotsublot_pdsch_repeats_r15, bref)); + HANDLE_CODE(c.rv_slotsublot_pdsch_repeats_r15.unpack(bref)); } if (c.nof_processes_sf_pdsch_repeats_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.nof_processes_sf_pdsch_repeats_r15, bref, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(unpack_integer(c.nof_processes_sf_pdsch_repeats_r15, bref, (uint8_t)1u, (uint8_t)16u)); } if (c.nof_processes_slot_subslot_pdsch_repeats_r15_present) { - HANDLE_CODE( - unpack_unalign_integer(c.nof_processes_slot_subslot_pdsch_repeats_r15, bref, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(unpack_integer(c.nof_processes_slot_subslot_pdsch_repeats_r15, bref, (uint8_t)1u, (uint8_t)16u)); } if (c.mcs_restrict_sf_pdsch_repeats_r15_present) { - HANDLE_CODE(unpack_enum(c.mcs_restrict_sf_pdsch_repeats_r15, bref)); + HANDLE_CODE(c.mcs_restrict_sf_pdsch_repeats_r15.unpack(bref)); } if (c.mcs_restrict_slot_subslot_pdsch_repeats_r15_present) { - HANDLE_CODE(unpack_enum(c.mcs_restrict_slot_subslot_pdsch_repeats_r15, bref)); + HANDLE_CODE(c.mcs_restrict_slot_subslot_pdsch_repeats_r15.unpack(bref)); } break; default: @@ -50596,7 +50510,7 @@ void phys_cfg_ded_scell_v1370_s::pucch_scell_v1370_c_::to_json(json_writer& j) c } SRSASN_CODE phys_cfg_ded_scell_v1370_s::pucch_scell_v1370_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -50615,7 +50529,7 @@ SRSASN_CODE phys_cfg_ded_scell_v1370_s::pucch_scell_v1370_c_::pack(bit_ref& bref SRSASN_CODE phys_cfg_ded_scell_v1370_s::pucch_scell_v1370_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -50638,7 +50552,7 @@ SRSASN_CODE rach_cfg_common_scell_r11_s::pack(bit_ref& bref) const { bref.pack(ext, 1); HANDLE_CODE(pwr_ramp_params_r11.pack(bref)); - HANDLE_CODE(pack_enum(bref, ra_supervision_info_r11.preamb_trans_max_r11)); + HANDLE_CODE(ra_supervision_info_r11.preamb_trans_max_r11.pack(bref)); return SRSASN_SUCCESS; } @@ -50646,7 +50560,7 @@ SRSASN_CODE rach_cfg_common_scell_r11_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); HANDLE_CODE(pwr_ramp_params_r11.unpack(bref)); - HANDLE_CODE(unpack_enum(ra_supervision_info_r11.preamb_trans_max_r11, bref)); + HANDLE_CODE(ra_supervision_info_r11.preamb_trans_max_r11.unpack(bref)); return SRSASN_SUCCESS; } @@ -50691,13 +50605,13 @@ SRSASN_CODE ul_pwr_ctrl_common_pusch_less_cell_v1430_s::pack(bit_ref& bref) cons HANDLE_CODE(bref.pack(alpha_srs_r14_present, 1)); if (p0_nominal_periodic_srs_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, p0_nominal_periodic_srs_r14, (int8_t)-126, (int8_t)24)); + HANDLE_CODE(pack_integer(bref, p0_nominal_periodic_srs_r14, (int8_t)-126, (int8_t)24)); } if (p0_nominal_aperiodic_srs_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, p0_nominal_aperiodic_srs_r14, (int8_t)-126, (int8_t)24)); + HANDLE_CODE(pack_integer(bref, p0_nominal_aperiodic_srs_r14, (int8_t)-126, (int8_t)24)); } if (alpha_srs_r14_present) { - HANDLE_CODE(pack_enum(bref, alpha_srs_r14)); + HANDLE_CODE(alpha_srs_r14.pack(bref)); } return SRSASN_SUCCESS; @@ -50709,13 +50623,13 @@ SRSASN_CODE ul_pwr_ctrl_common_pusch_less_cell_v1430_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(alpha_srs_r14_present, 1)); if (p0_nominal_periodic_srs_r14_present) { - HANDLE_CODE(unpack_unalign_integer(p0_nominal_periodic_srs_r14, bref, (int8_t)-126, (int8_t)24)); + HANDLE_CODE(unpack_integer(p0_nominal_periodic_srs_r14, bref, (int8_t)-126, (int8_t)24)); } if (p0_nominal_aperiodic_srs_r14_present) { - HANDLE_CODE(unpack_unalign_integer(p0_nominal_aperiodic_srs_r14, bref, (int8_t)-126, (int8_t)24)); + HANDLE_CODE(unpack_integer(p0_nominal_aperiodic_srs_r14, bref, (int8_t)-126, (int8_t)24)); } if (alpha_srs_r14_present) { - HANDLE_CODE(unpack_enum(alpha_srs_r14, bref)); + HANDLE_CODE(alpha_srs_r14.unpack(bref)); } return SRSASN_SUCCESS; @@ -50738,15 +50652,15 @@ void ul_pwr_ctrl_common_pusch_less_cell_v1430_s::to_json(json_writer& j) const // UplinkPowerControlCommonSCell-r10 ::= SEQUENCE SRSASN_CODE ul_pwr_ctrl_common_scell_r10_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, p0_nominal_pusch_r10, (int8_t)-126, (int8_t)24)); - HANDLE_CODE(pack_enum(bref, alpha_r10)); + HANDLE_CODE(pack_integer(bref, p0_nominal_pusch_r10, (int8_t)-126, (int8_t)24)); + HANDLE_CODE(alpha_r10.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE ul_pwr_ctrl_common_scell_r10_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(p0_nominal_pusch_r10, bref, (int8_t)-126, (int8_t)24)); - HANDLE_CODE(unpack_enum(alpha_r10, bref)); + HANDLE_CODE(unpack_integer(p0_nominal_pusch_r10, bref, (int8_t)-126, (int8_t)24)); + HANDLE_CODE(alpha_r10.unpack(bref)); return SRSASN_SUCCESS; } @@ -50761,13 +50675,13 @@ void ul_pwr_ctrl_common_scell_r10_s::to_json(json_writer& j) const // UplinkPowerControlCommonSCell-v1130 ::= SEQUENCE SRSASN_CODE ul_pwr_ctrl_common_scell_v1130_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, delta_preamb_msg3_r11, (int8_t)-1, (int8_t)6)); + HANDLE_CODE(pack_integer(bref, delta_preamb_msg3_r11, (int8_t)-1, (int8_t)6)); return SRSASN_SUCCESS; } SRSASN_CODE ul_pwr_ctrl_common_scell_v1130_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(delta_preamb_msg3_r11, bref, (int8_t)-1, (int8_t)6)); + HANDLE_CODE(unpack_integer(delta_preamb_msg3_r11, bref, (int8_t)-1, (int8_t)6)); return SRSASN_SUCCESS; } @@ -50786,19 +50700,19 @@ SRSASN_CODE ul_pwr_ctrl_common_scell_v1310_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(delta_f_pucch_format4_r13_present, 1)); HANDLE_CODE(bref.pack(delta_f_pucch_format5_minus13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, p0_nominal_pucch, (int8_t)-127, (int8_t)-96)); + HANDLE_CODE(pack_integer(bref, p0_nominal_pucch, (int8_t)-127, (int8_t)-96)); HANDLE_CODE(delta_flist_pucch.pack(bref)); if (delta_f_pucch_format3_r12_present) { - HANDLE_CODE(pack_enum(bref, delta_f_pucch_format3_r12)); + HANDLE_CODE(delta_f_pucch_format3_r12.pack(bref)); } if (delta_f_pucch_format1b_cs_r12_present) { - HANDLE_CODE(pack_enum(bref, delta_f_pucch_format1b_cs_r12)); + HANDLE_CODE(delta_f_pucch_format1b_cs_r12.pack(bref)); } if (delta_f_pucch_format4_r13_present) { - HANDLE_CODE(pack_enum(bref, delta_f_pucch_format4_r13)); + HANDLE_CODE(delta_f_pucch_format4_r13.pack(bref)); } if (delta_f_pucch_format5_minus13_present) { - HANDLE_CODE(pack_enum(bref, delta_f_pucch_format5_minus13)); + HANDLE_CODE(delta_f_pucch_format5_minus13.pack(bref)); } return SRSASN_SUCCESS; @@ -50810,19 +50724,19 @@ SRSASN_CODE ul_pwr_ctrl_common_scell_v1310_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(delta_f_pucch_format4_r13_present, 1)); HANDLE_CODE(bref.unpack(delta_f_pucch_format5_minus13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(p0_nominal_pucch, bref, (int8_t)-127, (int8_t)-96)); + HANDLE_CODE(unpack_integer(p0_nominal_pucch, bref, (int8_t)-127, (int8_t)-96)); HANDLE_CODE(delta_flist_pucch.unpack(bref)); if (delta_f_pucch_format3_r12_present) { - HANDLE_CODE(unpack_enum(delta_f_pucch_format3_r12, bref)); + HANDLE_CODE(delta_f_pucch_format3_r12.unpack(bref)); } if (delta_f_pucch_format1b_cs_r12_present) { - HANDLE_CODE(unpack_enum(delta_f_pucch_format1b_cs_r12, bref)); + HANDLE_CODE(delta_f_pucch_format1b_cs_r12.unpack(bref)); } if (delta_f_pucch_format4_r13_present) { - HANDLE_CODE(unpack_enum(delta_f_pucch_format4_r13, bref)); + HANDLE_CODE(delta_f_pucch_format4_r13.unpack(bref)); } if (delta_f_pucch_format5_minus13_present) { - HANDLE_CODE(unpack_enum(delta_f_pucch_format5_minus13, bref)); + HANDLE_CODE(delta_f_pucch_format5_minus13.unpack(bref)); } return SRSASN_SUCCESS; @@ -50854,7 +50768,7 @@ SRSASN_CODE ant_info_ded_v10i0_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(max_layers_mimo_r10_present, 1)); if (max_layers_mimo_r10_present) { - HANDLE_CODE(pack_enum(bref, max_layers_mimo_r10)); + HANDLE_CODE(max_layers_mimo_r10.pack(bref)); } return SRSASN_SUCCESS; @@ -50864,7 +50778,7 @@ SRSASN_CODE ant_info_ded_v10i0_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(max_layers_mimo_r10_present, 1)); if (max_layers_mimo_r10_present) { - HANDLE_CODE(unpack_enum(max_layers_mimo_r10, bref)); + HANDLE_CODE(max_layers_mimo_r10.unpack(bref)); } return SRSASN_SUCCESS; @@ -50886,7 +50800,7 @@ SRSASN_CODE rr_cfg_common_scell_r10_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_ul_cfg_r10.mbsfn_sf_cfg_list_r10_present, 1)); HANDLE_CODE(bref.pack(non_ul_cfg_r10.tdd_cfg_r10_present, 1)); - HANDLE_CODE(pack_enum(bref, non_ul_cfg_r10.dl_bw_r10)); + HANDLE_CODE(non_ul_cfg_r10.dl_bw_r10.pack(bref)); HANDLE_CODE(non_ul_cfg_r10.ant_info_common_r10.pack(bref)); if (non_ul_cfg_r10.mbsfn_sf_cfg_list_r10_present) { HANDLE_CODE(pack_dyn_seq_of(bref, non_ul_cfg_r10.mbsfn_sf_cfg_list_r10, 1, 8)); @@ -50902,20 +50816,18 @@ SRSASN_CODE rr_cfg_common_scell_r10_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(ul_cfg_r10.ul_freq_info_r10.ul_carrier_freq_r10_present, 1)); HANDLE_CODE(bref.pack(ul_cfg_r10.ul_freq_info_r10.ul_bw_r10_present, 1)); if (ul_cfg_r10.ul_freq_info_r10.ul_carrier_freq_r10_present) { - HANDLE_CODE( - pack_unalign_integer(bref, ul_cfg_r10.ul_freq_info_r10.ul_carrier_freq_r10, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, ul_cfg_r10.ul_freq_info_r10.ul_carrier_freq_r10, (uint32_t)0u, (uint32_t)65535u)); } if (ul_cfg_r10.ul_freq_info_r10.ul_bw_r10_present) { - HANDLE_CODE(pack_enum(bref, ul_cfg_r10.ul_freq_info_r10.ul_bw_r10)); + HANDLE_CODE(ul_cfg_r10.ul_freq_info_r10.ul_bw_r10.pack(bref)); } - HANDLE_CODE( - pack_unalign_integer(bref, ul_cfg_r10.ul_freq_info_r10.add_spec_emission_scell_r10, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, ul_cfg_r10.ul_freq_info_r10.add_spec_emission_scell_r10, (uint8_t)1u, (uint8_t)32u)); if (ul_cfg_r10.p_max_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, ul_cfg_r10.p_max_r10, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, ul_cfg_r10.p_max_r10, (int8_t)-30, (int8_t)33)); } HANDLE_CODE(ul_cfg_r10.ul_pwr_ctrl_common_scell_r10.pack(bref)); HANDLE_CODE(ul_cfg_r10.srs_ul_cfg_common_r10.pack(bref)); - HANDLE_CODE(pack_enum(bref, ul_cfg_r10.ul_cp_len_r10)); + HANDLE_CODE(ul_cfg_r10.ul_cp_len_r10.pack(bref)); if (ul_cfg_r10.prach_cfg_scell_r10_present) { HANDLE_CODE(ul_cfg_r10.prach_cfg_scell_r10.pack(bref)); } @@ -50942,15 +50854,15 @@ SRSASN_CODE rr_cfg_common_scell_r10_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ul_carrier_freq_v1090_present, 1)); if (ul_carrier_freq_v1090_present) { - HANDLE_CODE(pack_unalign_integer(bref, ul_carrier_freq_v1090, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, ul_carrier_freq_v1090, (uint32_t)65536u, (uint32_t)262143u)); } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(rach_cfg_common_scell_r11.is_present(), 1)); HANDLE_CODE(bref.pack(prach_cfg_scell_r11.is_present(), 1)); @@ -50970,7 +50882,7 @@ SRSASN_CODE rr_cfg_common_scell_r10_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(pusch_cfg_common_v1270.is_present(), 1)); if (pusch_cfg_common_v1270.is_present()) { @@ -50978,7 +50890,7 @@ SRSASN_CODE rr_cfg_common_scell_r10_s::pack(bit_ref& bref) const } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(pucch_cfg_common_r13.is_present(), 1)); HANDLE_CODE(bref.pack(ul_pwr_ctrl_common_scell_v1310.is_present(), 1)); @@ -50990,7 +50902,7 @@ SRSASN_CODE rr_cfg_common_scell_r10_s::pack(bit_ref& bref) const } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(high_speed_cfg_scell_r14.is_present(), 1)); HANDLE_CODE(bref.pack(prach_cfg_v1430.is_present(), 1)); @@ -51010,19 +50922,19 @@ SRSASN_CODE rr_cfg_common_scell_r10_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(ul_cfg_r14->ul_freq_info_r14.ul_carrier_freq_r14_present, 1)); HANDLE_CODE(bref.pack(ul_cfg_r14->ul_freq_info_r14.ul_bw_r14_present, 1)); if (ul_cfg_r14->ul_freq_info_r14.ul_carrier_freq_r14_present) { - HANDLE_CODE(pack_unalign_integer( - bref, ul_cfg_r14->ul_freq_info_r14.ul_carrier_freq_r14, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE( + pack_integer(bref, ul_cfg_r14->ul_freq_info_r14.ul_carrier_freq_r14, (uint32_t)0u, (uint32_t)262143u)); } if (ul_cfg_r14->ul_freq_info_r14.ul_bw_r14_present) { - HANDLE_CODE(pack_enum(bref, ul_cfg_r14->ul_freq_info_r14.ul_bw_r14)); + HANDLE_CODE(ul_cfg_r14->ul_freq_info_r14.ul_bw_r14.pack(bref)); } - HANDLE_CODE(pack_unalign_integer( - bref, ul_cfg_r14->ul_freq_info_r14.add_spec_emission_scell_r14, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE( + pack_integer(bref, ul_cfg_r14->ul_freq_info_r14.add_spec_emission_scell_r14, (uint8_t)1u, (uint8_t)32u)); if (ul_cfg_r14->p_max_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, ul_cfg_r14->p_max_r14, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, ul_cfg_r14->p_max_r14, (int8_t)-30, (int8_t)33)); } HANDLE_CODE(ul_cfg_r14->srs_ul_cfg_common_r14.pack(bref)); - HANDLE_CODE(pack_enum(bref, ul_cfg_r14->ul_cp_len_r14)); + HANDLE_CODE(ul_cfg_r14->ul_cp_len_r14.pack(bref)); if (ul_cfg_r14->prach_cfg_scell_r14_present) { HANDLE_CODE(ul_cfg_r14->prach_cfg_scell_r14.pack(bref)); } @@ -51031,11 +50943,11 @@ SRSASN_CODE rr_cfg_common_scell_r10_s::pack(bit_ref& bref) const } } if (harq_ref_cfg_r14_present) { - HANDLE_CODE(pack_enum(bref, harq_ref_cfg_r14)); + HANDLE_CODE(harq_ref_cfg_r14.pack(bref)); } } if (group_flags[5]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(mbsfn_sf_cfg_list_v1430.is_present(), 1)); if (mbsfn_sf_cfg_list_v1430.is_present()) { @@ -51043,7 +50955,7 @@ SRSASN_CODE rr_cfg_common_scell_r10_s::pack(bit_ref& bref) const } } if (group_flags[6]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ul_pwr_ctrl_common_scell_v1530.is_present(), 1)); if (ul_pwr_ctrl_common_scell_v1530.is_present()) { @@ -51060,7 +50972,7 @@ SRSASN_CODE rr_cfg_common_scell_r10_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_ul_cfg_r10.mbsfn_sf_cfg_list_r10_present, 1)); HANDLE_CODE(bref.unpack(non_ul_cfg_r10.tdd_cfg_r10_present, 1)); - HANDLE_CODE(unpack_enum(non_ul_cfg_r10.dl_bw_r10, bref)); + HANDLE_CODE(non_ul_cfg_r10.dl_bw_r10.unpack(bref)); HANDLE_CODE(non_ul_cfg_r10.ant_info_common_r10.unpack(bref)); if (non_ul_cfg_r10.mbsfn_sf_cfg_list_r10_present) { HANDLE_CODE(unpack_dyn_seq_of(non_ul_cfg_r10.mbsfn_sf_cfg_list_r10, bref, 1, 8)); @@ -51077,19 +50989,19 @@ SRSASN_CODE rr_cfg_common_scell_r10_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ul_cfg_r10.ul_freq_info_r10.ul_bw_r10_present, 1)); if (ul_cfg_r10.ul_freq_info_r10.ul_carrier_freq_r10_present) { HANDLE_CODE( - unpack_unalign_integer(ul_cfg_r10.ul_freq_info_r10.ul_carrier_freq_r10, bref, (uint16_t)0, (uint16_t)65535)); + unpack_integer(ul_cfg_r10.ul_freq_info_r10.ul_carrier_freq_r10, bref, (uint32_t)0u, (uint32_t)65535u)); } if (ul_cfg_r10.ul_freq_info_r10.ul_bw_r10_present) { - HANDLE_CODE(unpack_enum(ul_cfg_r10.ul_freq_info_r10.ul_bw_r10, bref)); + HANDLE_CODE(ul_cfg_r10.ul_freq_info_r10.ul_bw_r10.unpack(bref)); } HANDLE_CODE( - unpack_unalign_integer(ul_cfg_r10.ul_freq_info_r10.add_spec_emission_scell_r10, bref, (uint8_t)1, (uint8_t)32)); + unpack_integer(ul_cfg_r10.ul_freq_info_r10.add_spec_emission_scell_r10, bref, (uint8_t)1u, (uint8_t)32u)); if (ul_cfg_r10.p_max_r10_present) { - HANDLE_CODE(unpack_unalign_integer(ul_cfg_r10.p_max_r10, bref, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(unpack_integer(ul_cfg_r10.p_max_r10, bref, (int8_t)-30, (int8_t)33)); } HANDLE_CODE(ul_cfg_r10.ul_pwr_ctrl_common_scell_r10.unpack(bref)); HANDLE_CODE(ul_cfg_r10.srs_ul_cfg_common_r10.unpack(bref)); - HANDLE_CODE(unpack_enum(ul_cfg_r10.ul_cp_len_r10, bref)); + HANDLE_CODE(ul_cfg_r10.ul_cp_len_r10.unpack(bref)); if (ul_cfg_r10.prach_cfg_scell_r10_present) { HANDLE_CODE(ul_cfg_r10.prach_cfg_scell_r10.unpack(bref)); } @@ -51101,15 +51013,15 @@ SRSASN_CODE rr_cfg_common_scell_r10_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(ul_carrier_freq_v1090_present, 1)); if (ul_carrier_freq_v1090_present) { - HANDLE_CODE(unpack_unalign_integer(ul_carrier_freq_v1090, bref, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(ul_carrier_freq_v1090, bref, (uint32_t)65536u, (uint32_t)262143u)); } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool rach_cfg_common_scell_r11_present; HANDLE_CODE(bref.unpack(rach_cfg_common_scell_r11_present, 1)); @@ -51137,7 +51049,7 @@ SRSASN_CODE rr_cfg_common_scell_r10_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool pusch_cfg_common_v1270_present; HANDLE_CODE(bref.unpack(pusch_cfg_common_v1270_present, 1)); @@ -51147,7 +51059,7 @@ SRSASN_CODE rr_cfg_common_scell_r10_s::unpack(bit_ref& bref) } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool pucch_cfg_common_r13_present; HANDLE_CODE(bref.unpack(pucch_cfg_common_r13_present, 1)); @@ -51163,7 +51075,7 @@ SRSASN_CODE rr_cfg_common_scell_r10_s::unpack(bit_ref& bref) } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool high_speed_cfg_scell_r14_present; HANDLE_CODE(bref.unpack(high_speed_cfg_scell_r14_present, 1)); @@ -51189,19 +51101,19 @@ SRSASN_CODE rr_cfg_common_scell_r10_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ul_cfg_r14->ul_freq_info_r14.ul_carrier_freq_r14_present, 1)); HANDLE_CODE(bref.unpack(ul_cfg_r14->ul_freq_info_r14.ul_bw_r14_present, 1)); if (ul_cfg_r14->ul_freq_info_r14.ul_carrier_freq_r14_present) { - HANDLE_CODE(unpack_unalign_integer( - ul_cfg_r14->ul_freq_info_r14.ul_carrier_freq_r14, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE( + unpack_integer(ul_cfg_r14->ul_freq_info_r14.ul_carrier_freq_r14, bref, (uint32_t)0u, (uint32_t)262143u)); } if (ul_cfg_r14->ul_freq_info_r14.ul_bw_r14_present) { - HANDLE_CODE(unpack_enum(ul_cfg_r14->ul_freq_info_r14.ul_bw_r14, bref)); + HANDLE_CODE(ul_cfg_r14->ul_freq_info_r14.ul_bw_r14.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer( - ul_cfg_r14->ul_freq_info_r14.add_spec_emission_scell_r14, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE( + unpack_integer(ul_cfg_r14->ul_freq_info_r14.add_spec_emission_scell_r14, bref, (uint8_t)1u, (uint8_t)32u)); if (ul_cfg_r14->p_max_r14_present) { - HANDLE_CODE(unpack_unalign_integer(ul_cfg_r14->p_max_r14, bref, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(unpack_integer(ul_cfg_r14->p_max_r14, bref, (int8_t)-30, (int8_t)33)); } HANDLE_CODE(ul_cfg_r14->srs_ul_cfg_common_r14.unpack(bref)); - HANDLE_CODE(unpack_enum(ul_cfg_r14->ul_cp_len_r14, bref)); + HANDLE_CODE(ul_cfg_r14->ul_cp_len_r14.unpack(bref)); if (ul_cfg_r14->prach_cfg_scell_r14_present) { HANDLE_CODE(ul_cfg_r14->prach_cfg_scell_r14.unpack(bref)); } @@ -51210,11 +51122,11 @@ SRSASN_CODE rr_cfg_common_scell_r10_s::unpack(bit_ref& bref) } } if (harq_ref_cfg_r14_present) { - HANDLE_CODE(unpack_enum(harq_ref_cfg_r14, bref)); + HANDLE_CODE(harq_ref_cfg_r14.unpack(bref)); } } if (group_flags[5]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool mbsfn_sf_cfg_list_v1430_present; HANDLE_CODE(bref.unpack(mbsfn_sf_cfg_list_v1430_present, 1)); @@ -51224,7 +51136,7 @@ SRSASN_CODE rr_cfg_common_scell_r10_s::unpack(bit_ref& bref) } } if (group_flags[6]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool ul_pwr_ctrl_common_scell_v1530_present; HANDLE_CODE(bref.unpack(ul_pwr_ctrl_common_scell_v1530_present, 1)); @@ -51401,7 +51313,7 @@ SRSASN_CODE rr_cfg_ded_scell_r10_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(mac_main_cfg_scell_r11.is_present(), 1)); if (mac_main_cfg_scell_r11.is_present()) { @@ -51409,7 +51321,7 @@ SRSASN_CODE rr_cfg_ded_scell_r10_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(naics_info_r12.is_present(), 1)); if (naics_info_r12.is_present()) { @@ -51417,7 +51329,7 @@ SRSASN_CODE rr_cfg_ded_scell_r10_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(neigh_cells_crs_info_scell_r13.is_present(), 1)); if (neigh_cells_crs_info_scell_r13.is_present()) { @@ -51425,7 +51337,7 @@ SRSASN_CODE rr_cfg_ded_scell_r10_s::pack(bit_ref& bref) const } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(phys_cfg_ded_scell_v1370.is_present(), 1)); if (phys_cfg_ded_scell_v1370.is_present()) { @@ -51433,7 +51345,7 @@ SRSASN_CODE rr_cfg_ded_scell_r10_s::pack(bit_ref& bref) const } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(crs_intf_mitig_enabled_r15_present, 1)); HANDLE_CODE(bref.pack(neigh_cells_crs_info_r15.is_present(), 1)); @@ -51465,7 +51377,7 @@ SRSASN_CODE rr_cfg_ded_scell_r10_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool mac_main_cfg_scell_r11_present; HANDLE_CODE(bref.unpack(mac_main_cfg_scell_r11_present, 1)); @@ -51475,7 +51387,7 @@ SRSASN_CODE rr_cfg_ded_scell_r10_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool naics_info_r12_present; HANDLE_CODE(bref.unpack(naics_info_r12_present, 1)); @@ -51485,7 +51397,7 @@ SRSASN_CODE rr_cfg_ded_scell_r10_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool neigh_cells_crs_info_scell_r13_present; HANDLE_CODE(bref.unpack(neigh_cells_crs_info_scell_r13_present, 1)); @@ -51495,7 +51407,7 @@ SRSASN_CODE rr_cfg_ded_scell_r10_s::unpack(bit_ref& bref) } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool phys_cfg_ded_scell_v1370_present; HANDLE_CODE(bref.unpack(phys_cfg_ded_scell_v1370_present, 1)); @@ -51505,7 +51417,7 @@ SRSASN_CODE rr_cfg_ded_scell_r10_s::unpack(bit_ref& bref) } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(crs_intf_mitig_enabled_r15_present, 1)); bool neigh_cells_crs_info_r15_present; @@ -51574,10 +51486,10 @@ SRSASN_CODE scell_to_add_mod_ext_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(rr_cfg_ded_scell_r13_present, 1)); HANDLE_CODE(bref.pack(ant_info_ded_scell_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, s_cell_idx_r13, (uint8_t)1, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, scell_idx_r13, (uint8_t)1u, (uint8_t)31u)); if (cell_identif_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, cell_identif_r13.pci_r13, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_unalign_integer(bref, cell_identif_r13.dl_carrier_freq_r13, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, cell_identif_r13.pci_r13, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(pack_integer(bref, cell_identif_r13.dl_carrier_freq_r13, (uint32_t)0u, (uint32_t)262143u)); } if (rr_cfg_common_scell_r13_present) { HANDLE_CODE(rr_cfg_common_scell_r13.pack(bref)); @@ -51598,10 +51510,10 @@ SRSASN_CODE scell_to_add_mod_ext_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(rr_cfg_ded_scell_r13_present, 1)); HANDLE_CODE(bref.unpack(ant_info_ded_scell_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(s_cell_idx_r13, bref, (uint8_t)1, (uint8_t)31)); + HANDLE_CODE(unpack_integer(scell_idx_r13, bref, (uint8_t)1u, (uint8_t)31u)); if (cell_identif_r13_present) { - HANDLE_CODE(unpack_unalign_integer(cell_identif_r13.pci_r13, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_unalign_integer(cell_identif_r13.dl_carrier_freq_r13, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(cell_identif_r13.pci_r13, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(unpack_integer(cell_identif_r13.dl_carrier_freq_r13, bref, (uint32_t)0u, (uint32_t)262143u)); } if (rr_cfg_common_scell_r13_present) { HANDLE_CODE(rr_cfg_common_scell_r13.unpack(bref)); @@ -51618,7 +51530,7 @@ SRSASN_CODE scell_to_add_mod_ext_r13_s::unpack(bit_ref& bref) void scell_to_add_mod_ext_r13_s::to_json(json_writer& j) const { j.start_obj(); - j.write_int("sCellIndex-r13", s_cell_idx_r13); + j.write_int("sCellIndex-r13", scell_idx_r13); if (cell_identif_r13_present) { j.write_fieldname("cellIdentification-r13"); j.start_obj(); @@ -51699,14 +51611,14 @@ void scell_cfg_common_r15_s::to_json(json_writer& j) const // SL-DiscTxPoolToAddMod-r12 ::= SEQUENCE SRSASN_CODE sl_disc_tx_pool_to_add_mod_r12_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, pool_id_r12, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, pool_id_r12, (uint8_t)1u, (uint8_t)4u)); HANDLE_CODE(pool_r12.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE sl_disc_tx_pool_to_add_mod_r12_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(pool_id_r12, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(unpack_integer(pool_id_r12, bref, (uint8_t)1u, (uint8_t)4u)); HANDLE_CODE(pool_r12.unpack(bref)); return SRSASN_SUCCESS; @@ -51727,10 +51639,10 @@ SRSASN_CODE sl_tf_idx_pair_r12b_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(disc_prb_idx_r12b_present, 1)); if (disc_sf_idx_r12b_present) { - HANDLE_CODE(pack_unalign_integer(bref, disc_sf_idx_r12b, (uint8_t)0, (uint8_t)209)); + HANDLE_CODE(pack_integer(bref, disc_sf_idx_r12b, (uint8_t)0u, (uint8_t)209u)); } if (disc_prb_idx_r12b_present) { - HANDLE_CODE(pack_unalign_integer(bref, disc_prb_idx_r12b, (uint8_t)0, (uint8_t)49)); + HANDLE_CODE(pack_integer(bref, disc_prb_idx_r12b, (uint8_t)0u, (uint8_t)49u)); } return SRSASN_SUCCESS; @@ -51741,10 +51653,10 @@ SRSASN_CODE sl_tf_idx_pair_r12b_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(disc_prb_idx_r12b_present, 1)); if (disc_sf_idx_r12b_present) { - HANDLE_CODE(unpack_unalign_integer(disc_sf_idx_r12b, bref, (uint8_t)0, (uint8_t)209)); + HANDLE_CODE(unpack_integer(disc_sf_idx_r12b, bref, (uint8_t)0u, (uint8_t)209u)); } if (disc_prb_idx_r12b_present) { - HANDLE_CODE(unpack_unalign_integer(disc_prb_idx_r12b, bref, (uint8_t)0, (uint8_t)49)); + HANDLE_CODE(unpack_integer(disc_prb_idx_r12b, bref, (uint8_t)0u, (uint8_t)49u)); } return SRSASN_SUCCESS; @@ -51764,38 +51676,38 @@ void sl_tf_idx_pair_r12b_s::to_json(json_writer& j) const // SCellGroupToAddMod-r15 ::= SEQUENCE SRSASN_CODE scell_group_to_add_mod_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(bref.pack(s_cell_cfg_common_r15_present, 1)); - HANDLE_CODE(bref.pack(s_cell_to_release_list_r15_present, 1)); - HANDLE_CODE(bref.pack(s_cell_to_add_mod_list_r15_present, 1)); + HANDLE_CODE(bref.pack(scell_cfg_common_r15_present, 1)); + HANDLE_CODE(bref.pack(scell_to_release_list_r15_present, 1)); + HANDLE_CODE(bref.pack(scell_to_add_mod_list_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, s_cell_group_idx_r15, (uint8_t)1, (uint8_t)4)); - if (s_cell_cfg_common_r15_present) { - HANDLE_CODE(s_cell_cfg_common_r15.pack(bref)); + HANDLE_CODE(pack_integer(bref, scell_group_idx_r15, (uint8_t)1u, (uint8_t)4u)); + if (scell_cfg_common_r15_present) { + HANDLE_CODE(scell_cfg_common_r15.pack(bref)); } - if (s_cell_to_release_list_r15_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_to_release_list_r15, 1, 31, UnalignedIntegerPacker(1, 31))); + if (scell_to_release_list_r15_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_to_release_list_r15, 1, 31, integer_packer(1, 31))); } - if (s_cell_to_add_mod_list_r15_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_to_add_mod_list_r15, 1, 31)); + if (scell_to_add_mod_list_r15_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_to_add_mod_list_r15, 1, 31)); } return SRSASN_SUCCESS; } SRSASN_CODE scell_group_to_add_mod_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(bref.unpack(s_cell_cfg_common_r15_present, 1)); - HANDLE_CODE(bref.unpack(s_cell_to_release_list_r15_present, 1)); - HANDLE_CODE(bref.unpack(s_cell_to_add_mod_list_r15_present, 1)); + HANDLE_CODE(bref.unpack(scell_cfg_common_r15_present, 1)); + HANDLE_CODE(bref.unpack(scell_to_release_list_r15_present, 1)); + HANDLE_CODE(bref.unpack(scell_to_add_mod_list_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(s_cell_group_idx_r15, bref, (uint8_t)1, (uint8_t)4)); - if (s_cell_cfg_common_r15_present) { - HANDLE_CODE(s_cell_cfg_common_r15.unpack(bref)); + HANDLE_CODE(unpack_integer(scell_group_idx_r15, bref, (uint8_t)1u, (uint8_t)4u)); + if (scell_cfg_common_r15_present) { + HANDLE_CODE(scell_cfg_common_r15.unpack(bref)); } - if (s_cell_to_release_list_r15_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_to_release_list_r15, bref, 1, 31, UnalignedIntegerPacker(1, 31))); + if (scell_to_release_list_r15_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_to_release_list_r15, bref, 1, 31, integer_packer(1, 31))); } - if (s_cell_to_add_mod_list_r15_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_to_add_mod_list_r15, bref, 1, 31)); + if (scell_to_add_mod_list_r15_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_to_add_mod_list_r15, bref, 1, 31)); } return SRSASN_SUCCESS; @@ -51803,22 +51715,22 @@ SRSASN_CODE scell_group_to_add_mod_r15_s::unpack(bit_ref& bref) void scell_group_to_add_mod_r15_s::to_json(json_writer& j) const { j.start_obj(); - j.write_int("sCellGroupIndex-r15", s_cell_group_idx_r15); - if (s_cell_cfg_common_r15_present) { + j.write_int("sCellGroupIndex-r15", scell_group_idx_r15); + if (scell_cfg_common_r15_present) { j.write_fieldname("sCellConfigCommon-r15"); - s_cell_cfg_common_r15.to_json(j); + scell_cfg_common_r15.to_json(j); } - if (s_cell_to_release_list_r15_present) { + if (scell_to_release_list_r15_present) { j.start_array("sCellToReleaseList-r15"); - for (uint32_t i1 = 0; i1 < s_cell_to_release_list_r15.size(); ++i1) { - j.write_int(s_cell_to_release_list_r15[i1]); + for (uint32_t i1 = 0; i1 < scell_to_release_list_r15.size(); ++i1) { + j.write_int(scell_to_release_list_r15[i1]); } j.end_array(); } - if (s_cell_to_add_mod_list_r15_present) { + if (scell_to_add_mod_list_r15_present) { j.start_array("sCellToAddModList-r15"); - for (uint32_t i1 = 0; i1 < s_cell_to_add_mod_list_r15.size(); ++i1) { - s_cell_to_add_mod_list_r15[i1].to_json(j); + for (uint32_t i1 = 0; i1 < scell_to_add_mod_list_r15.size(); ++i1) { + scell_to_add_mod_list_r15[i1].to_json(j); } j.end_array(); } @@ -51828,17 +51740,17 @@ void scell_group_to_add_mod_r15_s::to_json(json_writer& j) const // SL-HoppingConfigDisc-r12 ::= SEQUENCE SRSASN_CODE sl_hop_cfg_disc_r12_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, a_r12, (uint8_t)1, (uint8_t)200)); - HANDLE_CODE(pack_unalign_integer(bref, b_r12, (uint8_t)1, (uint8_t)10)); - HANDLE_CODE(pack_enum(bref, c_r12)); + HANDLE_CODE(pack_integer(bref, a_r12, (uint8_t)1u, (uint8_t)200u)); + HANDLE_CODE(pack_integer(bref, b_r12, (uint8_t)1u, (uint8_t)10u)); + HANDLE_CODE(c_r12.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE sl_hop_cfg_disc_r12_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(a_r12, bref, (uint8_t)1, (uint8_t)200)); - HANDLE_CODE(unpack_unalign_integer(b_r12, bref, (uint8_t)1, (uint8_t)10)); - HANDLE_CODE(unpack_enum(c_r12, bref)); + HANDLE_CODE(unpack_integer(a_r12, bref, (uint8_t)1u, (uint8_t)200u)); + HANDLE_CODE(unpack_integer(b_r12, bref, (uint8_t)1u, (uint8_t)10u)); + HANDLE_CODE(c_r12.unpack(bref)); return SRSASN_SUCCESS; } @@ -51854,15 +51766,15 @@ void sl_hop_cfg_disc_r12_s::to_json(json_writer& j) const // SecurityAlgorithmConfig ::= SEQUENCE SRSASN_CODE security_algorithm_cfg_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, ciphering_algorithm)); - HANDLE_CODE(pack_enum(bref, integrity_prot_algorithm)); + HANDLE_CODE(ciphering_algorithm.pack(bref)); + HANDLE_CODE(integrity_prot_algorithm.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE security_algorithm_cfg_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(ciphering_algorithm, bref)); - HANDLE_CODE(unpack_enum(integrity_prot_algorithm, bref)); + HANDLE_CODE(ciphering_algorithm.unpack(bref)); + HANDLE_CODE(integrity_prot_algorithm.unpack(bref)); return SRSASN_SUCCESS; } @@ -51884,7 +51796,7 @@ SRSASN_CODE drb_to_add_mod_scg_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(lc_ch_id_scg_r12_present, 1)); HANDLE_CODE(bref.pack(lc_ch_cfg_scg_r12_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, drb_id_r12, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, drb_id_r12, (uint8_t)1u, (uint8_t)32u)); if (drb_type_r12_present) { HANDLE_CODE(drb_type_r12.pack(bref)); } @@ -51895,7 +51807,7 @@ SRSASN_CODE drb_to_add_mod_scg_r12_s::pack(bit_ref& bref) const HANDLE_CODE(rlc_cfg_v1250.pack(bref)); } if (lc_ch_id_scg_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, lc_ch_id_scg_r12, (uint8_t)3, (uint8_t)10)); + HANDLE_CODE(pack_integer(bref, lc_ch_id_scg_r12, (uint8_t)3u, (uint8_t)10u)); } if (lc_ch_cfg_scg_r12_present) { HANDLE_CODE(lc_ch_cfg_scg_r12.pack(bref)); @@ -51910,7 +51822,7 @@ SRSASN_CODE drb_to_add_mod_scg_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(rlc_cfg_v1430.is_present(), 1)); if (rlc_cfg_v1430.is_present()) { @@ -51918,13 +51830,13 @@ SRSASN_CODE drb_to_add_mod_scg_r12_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(lc_ch_id_scg_r15_present, 1)); HANDLE_CODE(bref.pack(rlc_cfg_v1530.is_present(), 1)); HANDLE_CODE(bref.pack(rlc_bearer_cfg_dupl_r15.is_present(), 1)); if (lc_ch_id_scg_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, lc_ch_id_scg_r15, (uint8_t)32, (uint8_t)38)); + HANDLE_CODE(pack_integer(bref, lc_ch_id_scg_r15, (uint8_t)32u, (uint8_t)38u)); } if (rlc_cfg_v1530.is_present()) { HANDLE_CODE(rlc_cfg_v1530->pack(bref)); @@ -51945,7 +51857,7 @@ SRSASN_CODE drb_to_add_mod_scg_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(lc_ch_id_scg_r12_present, 1)); HANDLE_CODE(bref.unpack(lc_ch_cfg_scg_r12_present, 1)); - HANDLE_CODE(unpack_unalign_integer(drb_id_r12, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(drb_id_r12, bref, (uint8_t)1u, (uint8_t)32u)); if (drb_type_r12_present) { HANDLE_CODE(drb_type_r12.unpack(bref)); } @@ -51956,7 +51868,7 @@ SRSASN_CODE drb_to_add_mod_scg_r12_s::unpack(bit_ref& bref) HANDLE_CODE(rlc_cfg_v1250.unpack(bref)); } if (lc_ch_id_scg_r12_present) { - HANDLE_CODE(unpack_unalign_integer(lc_ch_id_scg_r12, bref, (uint8_t)3, (uint8_t)10)); + HANDLE_CODE(unpack_integer(lc_ch_id_scg_r12, bref, (uint8_t)3u, (uint8_t)10u)); } if (lc_ch_cfg_scg_r12_present) { HANDLE_CODE(lc_ch_cfg_scg_r12.unpack(bref)); @@ -51967,7 +51879,7 @@ SRSASN_CODE drb_to_add_mod_scg_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool rlc_cfg_v1430_present; HANDLE_CODE(bref.unpack(rlc_cfg_v1430_present, 1)); @@ -51977,7 +51889,7 @@ SRSASN_CODE drb_to_add_mod_scg_r12_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(lc_ch_id_scg_r15_present, 1)); bool rlc_cfg_v1530_present; @@ -51987,7 +51899,7 @@ SRSASN_CODE drb_to_add_mod_scg_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(rlc_bearer_cfg_dupl_r15_present, 1)); rlc_bearer_cfg_dupl_r15.set_present(rlc_bearer_cfg_dupl_r15_present); if (lc_ch_id_scg_r15_present) { - HANDLE_CODE(unpack_unalign_integer(lc_ch_id_scg_r15, bref, (uint8_t)32, (uint8_t)38)); + HANDLE_CODE(unpack_integer(lc_ch_id_scg_r15, bref, (uint8_t)32u, (uint8_t)38u)); } if (rlc_cfg_v1530.is_present()) { HANDLE_CODE(rlc_cfg_v1530->unpack(bref)); @@ -52071,7 +51983,7 @@ void drb_to_add_mod_scg_r12_s::drb_type_r12_c_::to_json(json_writer& j) const } SRSASN_CODE drb_to_add_mod_scg_r12_s::drb_type_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::split_r12: break; @@ -52079,7 +51991,7 @@ SRSASN_CODE drb_to_add_mod_scg_r12_s::drb_type_r12_c_::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.eps_bearer_id_r12_present, 1)); HANDLE_CODE(bref.pack(c.pdcp_cfg_r12_present, 1)); if (c.eps_bearer_id_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.eps_bearer_id_r12, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, c.eps_bearer_id_r12, (uint8_t)0u, (uint8_t)15u)); } if (c.pdcp_cfg_r12_present) { HANDLE_CODE(c.pdcp_cfg_r12.pack(bref)); @@ -52094,7 +52006,7 @@ SRSASN_CODE drb_to_add_mod_scg_r12_s::drb_type_r12_c_::pack(bit_ref& bref) const SRSASN_CODE drb_to_add_mod_scg_r12_s::drb_type_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::split_r12: @@ -52103,7 +52015,7 @@ SRSASN_CODE drb_to_add_mod_scg_r12_s::drb_type_r12_c_::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.eps_bearer_id_r12_present, 1)); HANDLE_CODE(bref.unpack(c.pdcp_cfg_r12_present, 1)); if (c.eps_bearer_id_r12_present) { - HANDLE_CODE(unpack_unalign_integer(c.eps_bearer_id_r12, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(c.eps_bearer_id_r12, bref, (uint8_t)0u, (uint8_t)15u)); } if (c.pdcp_cfg_r12_present) { HANDLE_CODE(c.pdcp_cfg_r12.unpack(bref)); @@ -52221,7 +52133,7 @@ void ip_address_r13_c::to_json(json_writer& j) const } SRSASN_CODE ip_address_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ipv4_r13: HANDLE_CODE(c.get >().pack(bref)); @@ -52238,7 +52150,7 @@ SRSASN_CODE ip_address_r13_c::pack(bit_ref& bref) const SRSASN_CODE ip_address_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ipv4_r13: @@ -52292,7 +52204,7 @@ SRSASN_CODE ran_area_cfg_r15_s::pack(bit_ref& bref) const HANDLE_CODE(tac_minus5_gc_r15.pack(bref)); if (ran_area_code_list_r15_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, ran_area_code_list_r15, 1, 32, UnalignedIntegerPacker(0, 255))); + HANDLE_CODE(pack_dyn_seq_of(bref, ran_area_code_list_r15, 1, 32, integer_packer(0, 255))); } return SRSASN_SUCCESS; @@ -52303,7 +52215,7 @@ SRSASN_CODE ran_area_cfg_r15_s::unpack(bit_ref& bref) HANDLE_CODE(tac_minus5_gc_r15.unpack(bref)); if (ran_area_code_list_r15_present) { - HANDLE_CODE(unpack_dyn_seq_of(ran_area_code_list_r15, bref, 1, 32, UnalignedIntegerPacker(0, 255))); + HANDLE_CODE(unpack_dyn_seq_of(ran_area_code_list_r15, bref, 1, 32, integer_packer(0, 255))); } return SRSASN_SUCCESS; @@ -52325,13 +52237,13 @@ void ran_area_cfg_r15_s::to_json(json_writer& j) const // RadioResourceConfigCommonSCell-v10l0 ::= SEQUENCE SRSASN_CODE rr_cfg_common_scell_v10l0_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, ul_cfg_v10l0.add_spec_emission_scell_v10l0, (uint16_t)33, (uint16_t)288)); + HANDLE_CODE(pack_integer(bref, ul_cfg_v10l0.add_spec_emission_scell_v10l0, (uint16_t)33u, (uint16_t)288u)); return SRSASN_SUCCESS; } SRSASN_CODE rr_cfg_common_scell_v10l0_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(ul_cfg_v10l0.add_spec_emission_scell_v10l0, bref, (uint16_t)33, (uint16_t)288)); + HANDLE_CODE(unpack_integer(ul_cfg_v10l0.add_spec_emission_scell_v10l0, bref, (uint16_t)33u, (uint16_t)288u)); return SRSASN_SUCCESS; } @@ -52348,15 +52260,15 @@ void rr_cfg_common_scell_v10l0_s::to_json(json_writer& j) const // RadioResourceConfigCommonSCell-v1440 ::= SEQUENCE SRSASN_CODE rr_cfg_common_scell_v1440_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer( - bref, ul_cfg_v1440.ul_freq_info_v1440.add_spec_emission_scell_v1440, (uint16_t)33, (uint16_t)288)); + HANDLE_CODE( + pack_integer(bref, ul_cfg_v1440.ul_freq_info_v1440.add_spec_emission_scell_v1440, (uint16_t)33u, (uint16_t)288u)); return SRSASN_SUCCESS; } SRSASN_CODE rr_cfg_common_scell_v1440_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer( - ul_cfg_v1440.ul_freq_info_v1440.add_spec_emission_scell_v1440, bref, (uint16_t)33, (uint16_t)288)); + HANDLE_CODE(unpack_integer( + ul_cfg_v1440.ul_freq_info_v1440.add_spec_emission_scell_v1440, bref, (uint16_t)33u, (uint16_t)288u)); return SRSASN_SUCCESS; } @@ -52440,7 +52352,7 @@ SRSASN_CODE sl_disc_tx_pool_ded_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(pool_to_add_mod_list_r13_present, 1)); if (pool_to_release_list_r13_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, pool_to_release_list_r13, 1, 4, UnalignedIntegerPacker(1, 4))); + HANDLE_CODE(pack_dyn_seq_of(bref, pool_to_release_list_r13, 1, 4, integer_packer(1, 4))); } if (pool_to_add_mod_list_r13_present) { HANDLE_CODE(pack_dyn_seq_of(bref, pool_to_add_mod_list_r13, 1, 4)); @@ -52454,7 +52366,7 @@ SRSASN_CODE sl_disc_tx_pool_ded_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(pool_to_add_mod_list_r13_present, 1)); if (pool_to_release_list_r13_present) { - HANDLE_CODE(unpack_dyn_seq_of(pool_to_release_list_r13, bref, 1, 4, UnalignedIntegerPacker(1, 4))); + HANDLE_CODE(unpack_dyn_seq_of(pool_to_release_list_r13, bref, 1, 4, integer_packer(1, 4))); } if (pool_to_add_mod_list_r13_present) { HANDLE_CODE(unpack_dyn_seq_of(pool_to_add_mod_list_r13, bref, 1, 4)); @@ -52485,14 +52397,14 @@ void sl_disc_tx_pool_ded_r13_s::to_json(json_writer& j) const // SL-TxPoolToAddMod-r14 ::= SEQUENCE SRSASN_CODE sl_tx_pool_to_add_mod_r14_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, pool_id_r14, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, pool_id_r14, (uint8_t)1u, (uint8_t)8u)); HANDLE_CODE(pool_r14.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE sl_tx_pool_to_add_mod_r14_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(pool_id_r14, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(pool_id_r14, bref, (uint8_t)1u, (uint8_t)8u)); HANDLE_CODE(pool_r14.unpack(bref)); return SRSASN_SUCCESS; @@ -52650,7 +52562,7 @@ void security_cfg_ho_v1530_s::ho_type_v1530_c_::to_json(json_writer& j) const } SRSASN_CODE security_cfg_ho_v1530_s::ho_type_v1530_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::intra5_gc_r15: HANDLE_CODE(bref.pack(c.get().security_algorithm_cfg_r15_present, 1)); @@ -52659,16 +52571,14 @@ SRSASN_CODE security_cfg_ho_v1530_s::ho_type_v1530_c_::pack(bit_ref& bref) const HANDLE_CODE(c.get().security_algorithm_cfg_r15.pack(bref)); } HANDLE_CODE(bref.pack(c.get().key_change_ind_r15, 1)); - HANDLE_CODE( - pack_unalign_integer(bref, c.get().next_hop_chaining_count_r15, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, c.get().next_hop_chaining_count_r15, (uint8_t)0u, (uint8_t)7u)); if (c.get().nas_container_r15_present) { HANDLE_CODE(c.get().nas_container_r15.pack(bref)); } break; case types::ngc_to_epc_r15: HANDLE_CODE(c.get().security_algorithm_cfg_r15.pack(bref)); - HANDLE_CODE( - pack_unalign_integer(bref, c.get().next_hop_chaining_count_r15, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, c.get().next_hop_chaining_count_r15, (uint8_t)0u, (uint8_t)7u)); break; case types::epc_to_ngc_r15: HANDLE_CODE(c.get().security_algorithm_cfg_r15.pack(bref)); @@ -52683,7 +52593,7 @@ SRSASN_CODE security_cfg_ho_v1530_s::ho_type_v1530_c_::pack(bit_ref& bref) const SRSASN_CODE security_cfg_ho_v1530_s::ho_type_v1530_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::intra5_gc_r15: @@ -52694,7 +52604,7 @@ SRSASN_CODE security_cfg_ho_v1530_s::ho_type_v1530_c_::unpack(bit_ref& bref) } HANDLE_CODE(bref.unpack(c.get().key_change_ind_r15, 1)); HANDLE_CODE( - unpack_unalign_integer(c.get().next_hop_chaining_count_r15, bref, (uint8_t)0, (uint8_t)7)); + unpack_integer(c.get().next_hop_chaining_count_r15, bref, (uint8_t)0u, (uint8_t)7u)); if (c.get().nas_container_r15_present) { HANDLE_CODE(c.get().nas_container_r15.unpack(bref)); } @@ -52702,7 +52612,7 @@ SRSASN_CODE security_cfg_ho_v1530_s::ho_type_v1530_c_::unpack(bit_ref& bref) case types::ngc_to_epc_r15: HANDLE_CODE(c.get().security_algorithm_cfg_r15.unpack(bref)); HANDLE_CODE( - unpack_unalign_integer(c.get().next_hop_chaining_count_r15, bref, (uint8_t)0, (uint8_t)7)); + unpack_integer(c.get().next_hop_chaining_count_r15, bref, (uint8_t)0u, (uint8_t)7u)); break; case types::epc_to_ngc_r15: HANDLE_CODE(c.get().security_algorithm_cfg_r15.unpack(bref)); @@ -52722,10 +52632,10 @@ SRSASN_CODE ul_pwr_ctrl_common_v1310_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(delta_f_pucch_format5_minus13_present, 1)); if (delta_f_pucch_format4_r13_present) { - HANDLE_CODE(pack_enum(bref, delta_f_pucch_format4_r13)); + HANDLE_CODE(delta_f_pucch_format4_r13.pack(bref)); } if (delta_f_pucch_format5_minus13_present) { - HANDLE_CODE(pack_enum(bref, delta_f_pucch_format5_minus13)); + HANDLE_CODE(delta_f_pucch_format5_minus13.pack(bref)); } return SRSASN_SUCCESS; @@ -52736,10 +52646,10 @@ SRSASN_CODE ul_pwr_ctrl_common_v1310_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(delta_f_pucch_format5_minus13_present, 1)); if (delta_f_pucch_format4_r13_present) { - HANDLE_CODE(unpack_enum(delta_f_pucch_format4_r13, bref)); + HANDLE_CODE(delta_f_pucch_format4_r13.unpack(bref)); } if (delta_f_pucch_format5_minus13_present) { - HANDLE_CODE(unpack_enum(delta_f_pucch_format5_minus13, bref)); + HANDLE_CODE(delta_f_pucch_format5_minus13.unpack(bref)); } return SRSASN_SUCCESS; @@ -52759,18 +52669,18 @@ void ul_pwr_ctrl_common_v1310_s::to_json(json_writer& j) const // UplinkPowerControlCommonPSCell-r12 ::= SEQUENCE SRSASN_CODE ul_pwr_ctrl_common_ps_cell_r12_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, delta_f_pucch_format3_r12)); - HANDLE_CODE(pack_enum(bref, delta_f_pucch_format1b_cs_r12)); - HANDLE_CODE(pack_unalign_integer(bref, p0_nominal_pucch_r12, (int8_t)-127, (int8_t)-96)); + HANDLE_CODE(delta_f_pucch_format3_r12.pack(bref)); + HANDLE_CODE(delta_f_pucch_format1b_cs_r12.pack(bref)); + HANDLE_CODE(pack_integer(bref, p0_nominal_pucch_r12, (int8_t)-127, (int8_t)-96)); HANDLE_CODE(delta_flist_pucch_r12.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE ul_pwr_ctrl_common_ps_cell_r12_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(delta_f_pucch_format3_r12, bref)); - HANDLE_CODE(unpack_enum(delta_f_pucch_format1b_cs_r12, bref)); - HANDLE_CODE(unpack_unalign_integer(p0_nominal_pucch_r12, bref, (int8_t)-127, (int8_t)-96)); + HANDLE_CODE(delta_f_pucch_format3_r12.unpack(bref)); + HANDLE_CODE(delta_f_pucch_format1b_cs_r12.unpack(bref)); + HANDLE_CODE(unpack_integer(p0_nominal_pucch_r12, bref, (int8_t)-127, (int8_t)-96)); HANDLE_CODE(delta_flist_pucch_r12.unpack(bref)); return SRSASN_SUCCESS; @@ -52833,9 +52743,9 @@ SRSASN_CODE mac_main_cfg_sl_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(periodic_bsr_timer_sl_present, 1)); if (periodic_bsr_timer_sl_present) { - HANDLE_CODE(pack_enum(bref, periodic_bsr_timer_sl)); + HANDLE_CODE(periodic_bsr_timer_sl.pack(bref)); } - HANDLE_CODE(pack_enum(bref, retx_bsr_timer_sl)); + HANDLE_CODE(retx_bsr_timer_sl.pack(bref)); return SRSASN_SUCCESS; } @@ -52844,9 +52754,9 @@ SRSASN_CODE mac_main_cfg_sl_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(periodic_bsr_timer_sl_present, 1)); if (periodic_bsr_timer_sl_present) { - HANDLE_CODE(unpack_enum(periodic_bsr_timer_sl, bref)); + HANDLE_CODE(periodic_bsr_timer_sl.unpack(bref)); } - HANDLE_CODE(unpack_enum(retx_bsr_timer_sl, bref)); + HANDLE_CODE(retx_bsr_timer_sl.unpack(bref)); return SRSASN_SUCCESS; } @@ -52939,15 +52849,15 @@ void plmn_ran_area_cfg_r15_s::to_json(json_writer& j) const // RACH-ConfigDedicated ::= SEQUENCE SRSASN_CODE rach_cfg_ded_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, ra_preamb_idx, (uint8_t)0, (uint8_t)63)); - HANDLE_CODE(pack_unalign_integer(bref, ra_prach_mask_idx, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, ra_preamb_idx, (uint8_t)0u, (uint8_t)63u)); + HANDLE_CODE(pack_integer(bref, ra_prach_mask_idx, (uint8_t)0u, (uint8_t)15u)); return SRSASN_SUCCESS; } SRSASN_CODE rach_cfg_ded_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(ra_preamb_idx, bref, (uint8_t)0, (uint8_t)63)); - HANDLE_CODE(unpack_unalign_integer(ra_prach_mask_idx, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(ra_preamb_idx, bref, (uint8_t)0u, (uint8_t)63u)); + HANDLE_CODE(unpack_integer(ra_prach_mask_idx, bref, (uint8_t)0u, (uint8_t)15u)); return SRSASN_SUCCESS; } @@ -52966,9 +52876,9 @@ SRSASN_CODE rach_skip_r14_s::pack(bit_ref& bref) const HANDLE_CODE(target_ta_r14.pack(bref)); if (ul_cfg_info_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, ul_cfg_info_r14.nof_conf_ul_processes_r14, (uint8_t)1, (uint8_t)8)); - HANDLE_CODE(pack_enum(bref, ul_cfg_info_r14.ul_sched_interv_r14)); - HANDLE_CODE(pack_unalign_integer(bref, ul_cfg_info_r14.ul_start_sf_r14, (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(pack_integer(bref, ul_cfg_info_r14.nof_conf_ul_processes_r14, (uint8_t)1u, (uint8_t)8u)); + HANDLE_CODE(ul_cfg_info_r14.ul_sched_interv_r14.pack(bref)); + HANDLE_CODE(pack_integer(bref, ul_cfg_info_r14.ul_start_sf_r14, (uint8_t)0u, (uint8_t)9u)); HANDLE_CODE(ul_cfg_info_r14.ul_grant_r14.pack(bref)); } @@ -52980,9 +52890,9 @@ SRSASN_CODE rach_skip_r14_s::unpack(bit_ref& bref) HANDLE_CODE(target_ta_r14.unpack(bref)); if (ul_cfg_info_r14_present) { - HANDLE_CODE(unpack_unalign_integer(ul_cfg_info_r14.nof_conf_ul_processes_r14, bref, (uint8_t)1, (uint8_t)8)); - HANDLE_CODE(unpack_enum(ul_cfg_info_r14.ul_sched_interv_r14, bref)); - HANDLE_CODE(unpack_unalign_integer(ul_cfg_info_r14.ul_start_sf_r14, bref, (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(unpack_integer(ul_cfg_info_r14.nof_conf_ul_processes_r14, bref, (uint8_t)1u, (uint8_t)8u)); + HANDLE_CODE(ul_cfg_info_r14.ul_sched_interv_r14.unpack(bref)); + HANDLE_CODE(unpack_integer(ul_cfg_info_r14.ul_start_sf_r14, bref, (uint8_t)0u, (uint8_t)9u)); HANDLE_CODE(ul_cfg_info_r14.ul_grant_r14.unpack(bref)); } @@ -53084,7 +52994,7 @@ void rach_skip_r14_s::target_ta_r14_c_::to_json(json_writer& j) const } SRSASN_CODE rach_skip_r14_s::target_ta_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ta0_r14: break; @@ -53093,10 +53003,10 @@ SRSASN_CODE rach_skip_r14_s::target_ta_r14_c_::pack(bit_ref& bref) const case types::scg_ptag_r14: break; case types::mcg_stag_r14: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)1, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)1u, (uint8_t)3u)); break; case types::scg_stag_r14: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)1, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)1u, (uint8_t)3u)); break; default: log_invalid_choice_id(type_, "rach_skip_r14_s::target_ta_r14_c_"); @@ -53107,7 +53017,7 @@ SRSASN_CODE rach_skip_r14_s::target_ta_r14_c_::pack(bit_ref& bref) const SRSASN_CODE rach_skip_r14_s::target_ta_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ta0_r14: @@ -53117,10 +53027,10 @@ SRSASN_CODE rach_skip_r14_s::target_ta_r14_c_::unpack(bit_ref& bref) case types::scg_ptag_r14: break; case types::mcg_stag_r14: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)1, (uint8_t)3)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)1u, (uint8_t)3u)); break; case types::scg_stag_r14: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)1, (uint8_t)3)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)1u, (uint8_t)3u)); break; default: log_invalid_choice_id(type_, "rach_skip_r14_s::target_ta_r14_c_"); @@ -53155,15 +53065,15 @@ void rlf_timers_and_consts_scg_r12_c::to_json(json_writer& j) const } SRSASN_CODE rlf_timers_and_consts_scg_r12_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: bref.pack(c.ext, 1); - HANDLE_CODE(pack_enum(bref, c.t313_r12)); - HANDLE_CODE(pack_enum(bref, c.n313_r12)); - HANDLE_CODE(pack_enum(bref, c.n314_r12)); + HANDLE_CODE(c.t313_r12.pack(bref)); + HANDLE_CODE(c.n313_r12.pack(bref)); + HANDLE_CODE(c.n314_r12.pack(bref)); break; default: log_invalid_choice_id(type_, "rlf_timers_and_consts_scg_r12_c"); @@ -53174,16 +53084,16 @@ SRSASN_CODE rlf_timers_and_consts_scg_r12_c::pack(bit_ref& bref) const SRSASN_CODE rlf_timers_and_consts_scg_r12_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: bref.unpack(c.ext, 1); - HANDLE_CODE(unpack_enum(c.t313_r12, bref)); - HANDLE_CODE(unpack_enum(c.n313_r12, bref)); - HANDLE_CODE(unpack_enum(c.n314_r12, bref)); + HANDLE_CODE(c.t313_r12.unpack(bref)); + HANDLE_CODE(c.n313_r12.unpack(bref)); + HANDLE_CODE(c.n314_r12.unpack(bref)); break; default: log_invalid_choice_id(type_, "rlf_timers_and_consts_scg_r12_c"); @@ -53196,8 +53106,8 @@ SRSASN_CODE rlf_timers_and_consts_scg_r12_c::unpack(bit_ref& bref) SRSASN_CODE rrc_conn_recfg_v1530_ies_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(security_cfg_ho_v1530_present, 1)); - HANDLE_CODE(bref.pack(s_cell_group_to_release_list_r15_present, 1)); - HANDLE_CODE(bref.pack(s_cell_group_to_add_mod_list_r15_present, 1)); + HANDLE_CODE(bref.pack(scell_group_to_release_list_r15_present, 1)); + HANDLE_CODE(bref.pack(scell_group_to_add_mod_list_r15_present, 1)); HANDLE_CODE(bref.pack(ded_info_nas_list_r15_present, 1)); HANDLE_CODE(bref.pack(p_max_ue_fr1_r15_present, 1)); HANDLE_CODE(bref.pack(smtc_r15_present, 1)); @@ -53206,17 +53116,17 @@ SRSASN_CODE rrc_conn_recfg_v1530_ies_s::pack(bit_ref& bref) const if (security_cfg_ho_v1530_present) { HANDLE_CODE(security_cfg_ho_v1530.pack(bref)); } - if (s_cell_group_to_release_list_r15_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_group_to_release_list_r15, 1, 4, UnalignedIntegerPacker(1, 4))); + if (scell_group_to_release_list_r15_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_group_to_release_list_r15, 1, 4, integer_packer(1, 4))); } - if (s_cell_group_to_add_mod_list_r15_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_group_to_add_mod_list_r15, 1, 4)); + if (scell_group_to_add_mod_list_r15_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_group_to_add_mod_list_r15, 1, 4)); } if (ded_info_nas_list_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, ded_info_nas_list_r15, 1, 15)); } if (p_max_ue_fr1_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, p_max_ue_fr1_r15, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, p_max_ue_fr1_r15, (int8_t)-30, (int8_t)33)); } if (smtc_r15_present) { HANDLE_CODE(smtc_r15.pack(bref)); @@ -53227,8 +53137,8 @@ SRSASN_CODE rrc_conn_recfg_v1530_ies_s::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_recfg_v1530_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(security_cfg_ho_v1530_present, 1)); - HANDLE_CODE(bref.unpack(s_cell_group_to_release_list_r15_present, 1)); - HANDLE_CODE(bref.unpack(s_cell_group_to_add_mod_list_r15_present, 1)); + HANDLE_CODE(bref.unpack(scell_group_to_release_list_r15_present, 1)); + HANDLE_CODE(bref.unpack(scell_group_to_add_mod_list_r15_present, 1)); HANDLE_CODE(bref.unpack(ded_info_nas_list_r15_present, 1)); HANDLE_CODE(bref.unpack(p_max_ue_fr1_r15_present, 1)); HANDLE_CODE(bref.unpack(smtc_r15_present, 1)); @@ -53237,17 +53147,17 @@ SRSASN_CODE rrc_conn_recfg_v1530_ies_s::unpack(bit_ref& bref) if (security_cfg_ho_v1530_present) { HANDLE_CODE(security_cfg_ho_v1530.unpack(bref)); } - if (s_cell_group_to_release_list_r15_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_group_to_release_list_r15, bref, 1, 4, UnalignedIntegerPacker(1, 4))); + if (scell_group_to_release_list_r15_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_group_to_release_list_r15, bref, 1, 4, integer_packer(1, 4))); } - if (s_cell_group_to_add_mod_list_r15_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_group_to_add_mod_list_r15, bref, 1, 4)); + if (scell_group_to_add_mod_list_r15_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_group_to_add_mod_list_r15, bref, 1, 4)); } if (ded_info_nas_list_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(ded_info_nas_list_r15, bref, 1, 15)); } if (p_max_ue_fr1_r15_present) { - HANDLE_CODE(unpack_unalign_integer(p_max_ue_fr1_r15, bref, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(unpack_integer(p_max_ue_fr1_r15, bref, (int8_t)-30, (int8_t)33)); } if (smtc_r15_present) { HANDLE_CODE(smtc_r15.unpack(bref)); @@ -53262,17 +53172,17 @@ void rrc_conn_recfg_v1530_ies_s::to_json(json_writer& j) const j.write_fieldname("securityConfigHO-v1530"); security_cfg_ho_v1530.to_json(j); } - if (s_cell_group_to_release_list_r15_present) { + if (scell_group_to_release_list_r15_present) { j.start_array("sCellGroupToReleaseList-r15"); - for (uint32_t i1 = 0; i1 < s_cell_group_to_release_list_r15.size(); ++i1) { - j.write_int(s_cell_group_to_release_list_r15[i1]); + for (uint32_t i1 = 0; i1 < scell_group_to_release_list_r15.size(); ++i1) { + j.write_int(scell_group_to_release_list_r15[i1]); } j.end_array(); } - if (s_cell_group_to_add_mod_list_r15_present) { + if (scell_group_to_add_mod_list_r15_present) { j.start_array("sCellGroupToAddModList-r15"); - for (uint32_t i1 = 0; i1 < s_cell_group_to_add_mod_list_r15.size(); ++i1) { - s_cell_group_to_add_mod_list_r15[i1].to_json(j); + for (uint32_t i1 = 0; i1 < scell_group_to_add_mod_list_r15.size(); ++i1) { + scell_group_to_add_mod_list_r15[i1].to_json(j); } j.end_array(); } @@ -53314,7 +53224,7 @@ SRSASN_CODE rr_cfg_common_ps_cell_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ul_pwr_ctrl_common_ps_cell_v1310.is_present(), 1)); if (ul_pwr_ctrl_common_ps_cell_v1310.is_present()) { @@ -53322,7 +53232,7 @@ SRSASN_CODE rr_cfg_common_ps_cell_r12_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ul_pwr_ctrl_common_ps_cell_v1530.is_present(), 1)); if (ul_pwr_ctrl_common_ps_cell_v1530.is_present()) { @@ -53345,7 +53255,7 @@ SRSASN_CODE rr_cfg_common_ps_cell_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool ul_pwr_ctrl_common_ps_cell_v1310_present; HANDLE_CODE(bref.unpack(ul_pwr_ctrl_common_ps_cell_v1310_present, 1)); @@ -53355,7 +53265,7 @@ SRSASN_CODE rr_cfg_common_ps_cell_r12_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool ul_pwr_ctrl_common_ps_cell_v1530_present; HANDLE_CODE(bref.unpack(ul_pwr_ctrl_common_ps_cell_v1530_present, 1)); @@ -53461,7 +53371,7 @@ SRSASN_CODE rr_cfg_ded_ps_cell_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(neigh_cells_crs_info_ps_cell_r13.is_present(), 1)); if (neigh_cells_crs_info_ps_cell_r13.is_present()) { @@ -53469,7 +53379,7 @@ SRSASN_CODE rr_cfg_ded_ps_cell_r12_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(sps_cfg_v1430.is_present(), 1)); if (sps_cfg_v1430.is_present()) { @@ -53477,7 +53387,7 @@ SRSASN_CODE rr_cfg_ded_ps_cell_r12_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(sps_cfg_v1530.is_present(), 1)); HANDLE_CODE(bref.pack(crs_intf_mitig_enabled_r15_present, 1)); @@ -53517,7 +53427,7 @@ SRSASN_CODE rr_cfg_ded_ps_cell_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool neigh_cells_crs_info_ps_cell_r13_present; HANDLE_CODE(bref.unpack(neigh_cells_crs_info_ps_cell_r13_present, 1)); @@ -53527,7 +53437,7 @@ SRSASN_CODE rr_cfg_ded_ps_cell_r12_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool sps_cfg_v1430_present; HANDLE_CODE(bref.unpack(sps_cfg_v1430_present, 1)); @@ -53537,7 +53447,7 @@ SRSASN_CODE rr_cfg_ded_ps_cell_r12_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool sps_cfg_v1530_present; HANDLE_CODE(bref.unpack(sps_cfg_v1530_present, 1)); @@ -53637,10 +53547,10 @@ SRSASN_CODE scell_to_add_mod_r10_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(rr_cfg_common_scell_r10_present, 1)); HANDLE_CODE(bref.pack(rr_cfg_ded_scell_r10_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, s_cell_idx_r10, (uint8_t)1, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, scell_idx_r10, (uint8_t)1u, (uint8_t)7u)); if (cell_identif_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, cell_identif_r10.pci_r10, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_unalign_integer(bref, cell_identif_r10.dl_carrier_freq_r10, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, cell_identif_r10.pci_r10, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(pack_integer(bref, cell_identif_r10.dl_carrier_freq_r10, (uint32_t)0u, (uint32_t)65535u)); } if (rr_cfg_common_scell_r10_present) { HANDLE_CODE(rr_cfg_common_scell_r10.pack(bref)); @@ -53654,19 +53564,19 @@ SRSASN_CODE scell_to_add_mod_r10_s::pack(bit_ref& bref) const group_flags[0] |= dl_carrier_freq_v1090_present; group_flags[1] |= ant_info_ded_scell_v10i0.is_present(); group_flags[2] |= srs_switch_from_serv_cell_idx_r14_present; - group_flags[3] |= s_cell_state_r15_present; + group_flags[3] |= scell_state_r15_present; group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(dl_carrier_freq_v1090_present, 1)); if (dl_carrier_freq_v1090_present) { - HANDLE_CODE(pack_unalign_integer(bref, dl_carrier_freq_v1090, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, dl_carrier_freq_v1090, (uint32_t)65536u, (uint32_t)262143u)); } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ant_info_ded_scell_v10i0.is_present(), 1)); if (ant_info_ded_scell_v10i0.is_present()) { @@ -53674,19 +53584,19 @@ SRSASN_CODE scell_to_add_mod_r10_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(srs_switch_from_serv_cell_idx_r14_present, 1)); if (srs_switch_from_serv_cell_idx_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, srs_switch_from_serv_cell_idx_r14, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, srs_switch_from_serv_cell_idx_r14, (uint8_t)0u, (uint8_t)31u)); } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); - HANDLE_CODE(bref.pack(s_cell_state_r15_present, 1)); - if (s_cell_state_r15_present) { - HANDLE_CODE(pack_enum(bref, s_cell_state_r15)); + HANDLE_CODE(bref.pack(scell_state_r15_present, 1)); + if (scell_state_r15_present) { + HANDLE_CODE(scell_state_r15.pack(bref)); } } } @@ -53699,10 +53609,10 @@ SRSASN_CODE scell_to_add_mod_r10_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(rr_cfg_common_scell_r10_present, 1)); HANDLE_CODE(bref.unpack(rr_cfg_ded_scell_r10_present, 1)); - HANDLE_CODE(unpack_unalign_integer(s_cell_idx_r10, bref, (uint8_t)1, (uint8_t)7)); + HANDLE_CODE(unpack_integer(scell_idx_r10, bref, (uint8_t)1u, (uint8_t)7u)); if (cell_identif_r10_present) { - HANDLE_CODE(unpack_unalign_integer(cell_identif_r10.pci_r10, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_unalign_integer(cell_identif_r10.dl_carrier_freq_r10, bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(cell_identif_r10.pci_r10, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(unpack_integer(cell_identif_r10.dl_carrier_freq_r10, bref, (uint32_t)0u, (uint32_t)65535u)); } if (rr_cfg_common_scell_r10_present) { HANDLE_CODE(rr_cfg_common_scell_r10.unpack(bref)); @@ -53716,15 +53626,15 @@ SRSASN_CODE scell_to_add_mod_r10_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(dl_carrier_freq_v1090_present, 1)); if (dl_carrier_freq_v1090_present) { - HANDLE_CODE(unpack_unalign_integer(dl_carrier_freq_v1090, bref, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(dl_carrier_freq_v1090, bref, (uint32_t)65536u, (uint32_t)262143u)); } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool ant_info_ded_scell_v10i0_present; HANDLE_CODE(bref.unpack(ant_info_ded_scell_v10i0_present, 1)); @@ -53734,19 +53644,19 @@ SRSASN_CODE scell_to_add_mod_r10_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(srs_switch_from_serv_cell_idx_r14_present, 1)); if (srs_switch_from_serv_cell_idx_r14_present) { - HANDLE_CODE(unpack_unalign_integer(srs_switch_from_serv_cell_idx_r14, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(srs_switch_from_serv_cell_idx_r14, bref, (uint8_t)0u, (uint8_t)31u)); } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); - HANDLE_CODE(bref.unpack(s_cell_state_r15_present, 1)); - if (s_cell_state_r15_present) { - HANDLE_CODE(unpack_enum(s_cell_state_r15, bref)); + HANDLE_CODE(bref.unpack(scell_state_r15_present, 1)); + if (scell_state_r15_present) { + HANDLE_CODE(scell_state_r15.unpack(bref)); } } } @@ -53755,7 +53665,7 @@ SRSASN_CODE scell_to_add_mod_r10_s::unpack(bit_ref& bref) void scell_to_add_mod_r10_s::to_json(json_writer& j) const { j.start_obj(); - j.write_int("sCellIndex-r10", s_cell_idx_r10); + j.write_int("sCellIndex-r10", scell_idx_r10); if (cell_identif_r10_present) { j.write_fieldname("cellIdentification-r10"); j.start_obj(); @@ -53782,8 +53692,8 @@ void scell_to_add_mod_r10_s::to_json(json_writer& j) const if (srs_switch_from_serv_cell_idx_r14_present) { j.write_int("srs-SwitchFromServCellIndex-r14", srs_switch_from_serv_cell_idx_r14); } - if (s_cell_state_r15_present) { - j.write_str("sCellState-r15", s_cell_state_r15.to_string()); + if (scell_state_r15_present) { + j.write_str("sCellState-r15", scell_state_r15.to_string()); } } j.end_obj(); @@ -53858,20 +53768,20 @@ SRSASN_CODE scell_to_add_mod_ext_v1430_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(srs_switch_from_serv_cell_idx_r14_present, 1)); if (srs_switch_from_serv_cell_idx_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, srs_switch_from_serv_cell_idx_r14, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, srs_switch_from_serv_cell_idx_r14, (uint8_t)0u, (uint8_t)31u)); } if (ext) { ext_groups_packer_guard group_flags; - group_flags[0] |= s_cell_state_r15_present; + group_flags[0] |= scell_state_r15_present; group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); - HANDLE_CODE(bref.pack(s_cell_state_r15_present, 1)); - if (s_cell_state_r15_present) { - HANDLE_CODE(pack_enum(bref, s_cell_state_r15)); + HANDLE_CODE(bref.pack(scell_state_r15_present, 1)); + if (scell_state_r15_present) { + HANDLE_CODE(scell_state_r15.pack(bref)); } } } @@ -53883,7 +53793,7 @@ SRSASN_CODE scell_to_add_mod_ext_v1430_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(srs_switch_from_serv_cell_idx_r14_present, 1)); if (srs_switch_from_serv_cell_idx_r14_present) { - HANDLE_CODE(unpack_unalign_integer(srs_switch_from_serv_cell_idx_r14, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(srs_switch_from_serv_cell_idx_r14, bref, (uint8_t)0u, (uint8_t)31u)); } if (ext) { @@ -53891,11 +53801,11 @@ SRSASN_CODE scell_to_add_mod_ext_v1430_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); - HANDLE_CODE(bref.unpack(s_cell_state_r15_present, 1)); - if (s_cell_state_r15_present) { - HANDLE_CODE(unpack_enum(s_cell_state_r15, bref)); + HANDLE_CODE(bref.unpack(scell_state_r15_present, 1)); + if (scell_state_r15_present) { + HANDLE_CODE(scell_state_r15.unpack(bref)); } } } @@ -53908,8 +53818,8 @@ void scell_to_add_mod_ext_v1430_s::to_json(json_writer& j) const j.write_int("srs-SwitchFromServCellIndex-r14", srs_switch_from_serv_cell_idx_r14); } if (ext) { - if (s_cell_state_r15_present) { - j.write_str("sCellState-r15", s_cell_state_r15.to_string()); + if (scell_state_r15_present) { + j.write_str("sCellState-r15", scell_state_r15.to_string()); } } j.end_obj(); @@ -53924,9 +53834,9 @@ void sl_disc_tx_ref_carrier_ded_r13_c::to_json(json_writer& j) const { j.start_obj(); switch (type_) { - case types::p_cell: + case types::pcell: break; - case types::s_cell: + case types::scell: j.write_int("sCell", c); break; default: @@ -53936,12 +53846,12 @@ void sl_disc_tx_ref_carrier_ded_r13_c::to_json(json_writer& j) const } SRSASN_CODE sl_disc_tx_ref_carrier_ded_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { - case types::p_cell: + case types::pcell: break; - case types::s_cell: - HANDLE_CODE(pack_unalign_integer(bref, c, (uint8_t)1, (uint8_t)7)); + case types::scell: + HANDLE_CODE(pack_integer(bref, c, (uint8_t)1u, (uint8_t)7u)); break; default: log_invalid_choice_id(type_, "sl_disc_tx_ref_carrier_ded_r13_c"); @@ -53952,13 +53862,13 @@ SRSASN_CODE sl_disc_tx_ref_carrier_ded_r13_c::pack(bit_ref& bref) const SRSASN_CODE sl_disc_tx_ref_carrier_ded_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { - case types::p_cell: + case types::pcell: break; - case types::s_cell: - HANDLE_CODE(unpack_unalign_integer(c, bref, (uint8_t)1, (uint8_t)7)); + case types::scell: + HANDLE_CODE(unpack_integer(c, bref, (uint8_t)1u, (uint8_t)7u)); break; default: log_invalid_choice_id(type_, "sl_disc_tx_ref_carrier_ded_r13_c"); @@ -53989,7 +53899,7 @@ void sl_disc_tx_res_r13_c::to_json(json_writer& j) const } SRSASN_CODE sl_disc_tx_res_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -54005,7 +53915,7 @@ SRSASN_CODE sl_disc_tx_res_r13_c::pack(bit_ref& bref) const SRSASN_CODE sl_disc_tx_res_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -54106,7 +54016,7 @@ void sl_disc_tx_res_r13_c::setup_c_::to_json(json_writer& j) const } SRSASN_CODE sl_disc_tx_res_r13_c::setup_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sched_r13: HANDLE_CODE(c.get().pack(bref)); @@ -54123,7 +54033,7 @@ SRSASN_CODE sl_disc_tx_res_r13_c::setup_c_::pack(bit_ref& bref) const SRSASN_CODE sl_disc_tx_res_r13_c::setup_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sched_r13: @@ -54143,7 +54053,7 @@ SRSASN_CODE sl_disc_tx_res_r13_c::setup_c_::unpack(bit_ref& bref) SRSASN_CODE sl_gap_pattern_r13_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_enum(bref, gap_period_r13)); + HANDLE_CODE(gap_period_r13.pack(bref)); HANDLE_CODE(gap_offset_r12.pack(bref)); HANDLE_CODE(gap_sf_bitmap_r13.pack(bref)); @@ -54152,7 +54062,7 @@ SRSASN_CODE sl_gap_pattern_r13_s::pack(bit_ref& bref) const SRSASN_CODE sl_gap_pattern_r13_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_enum(gap_period_r13, bref)); + HANDLE_CODE(gap_period_r13.unpack(bref)); HANDLE_CODE(gap_offset_r12.unpack(bref)); HANDLE_CODE(gap_sf_bitmap_r13.unpack(bref)); @@ -54181,11 +54091,11 @@ SRSASN_CODE tunnel_cfg_lwip_r13_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(lwip_counter_r13_present, 1)); if (lwip_counter_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, lwip_counter_r13, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, lwip_counter_r13, (uint32_t)0u, (uint32_t)65535u)); } } } @@ -54202,11 +54112,11 @@ SRSASN_CODE tunnel_cfg_lwip_r13_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(lwip_counter_r13_present, 1)); if (lwip_counter_r13_present) { - HANDLE_CODE(unpack_unalign_integer(lwip_counter_r13, bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(lwip_counter_r13, bref, (uint32_t)0u, (uint32_t)65535u)); } } } @@ -54233,7 +54143,7 @@ SRSASN_CODE wlan_mob_cfg_r13_s::pack(bit_ref& bref) const bref.pack(ext, 1); HANDLE_CODE(bref.pack(wlan_to_release_list_r13_present, 1)); HANDLE_CODE(bref.pack(wlan_to_add_list_r13_present, 1)); - HANDLE_CODE(bref.pack(association_timer_r13_present, 1)); + HANDLE_CODE(bref.pack(assoc_timer_r13_present, 1)); HANDLE_CODE(bref.pack(success_report_requested_r13_present, 1)); if (wlan_to_release_list_r13_present) { @@ -54242,8 +54152,8 @@ SRSASN_CODE wlan_mob_cfg_r13_s::pack(bit_ref& bref) const if (wlan_to_add_list_r13_present) { HANDLE_CODE(pack_dyn_seq_of(bref, wlan_to_add_list_r13, 1, 32)); } - if (association_timer_r13_present) { - HANDLE_CODE(pack_enum(bref, association_timer_r13)); + if (assoc_timer_r13_present) { + HANDLE_CODE(assoc_timer_r13.pack(bref)); } if (ext) { @@ -54252,7 +54162,7 @@ SRSASN_CODE wlan_mob_cfg_r13_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(wlan_suspend_cfg_r14.is_present(), 1)); if (wlan_suspend_cfg_r14.is_present()) { @@ -54267,7 +54177,7 @@ SRSASN_CODE wlan_mob_cfg_r13_s::unpack(bit_ref& bref) bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(wlan_to_release_list_r13_present, 1)); HANDLE_CODE(bref.unpack(wlan_to_add_list_r13_present, 1)); - HANDLE_CODE(bref.unpack(association_timer_r13_present, 1)); + HANDLE_CODE(bref.unpack(assoc_timer_r13_present, 1)); HANDLE_CODE(bref.unpack(success_report_requested_r13_present, 1)); if (wlan_to_release_list_r13_present) { @@ -54276,8 +54186,8 @@ SRSASN_CODE wlan_mob_cfg_r13_s::unpack(bit_ref& bref) if (wlan_to_add_list_r13_present) { HANDLE_CODE(unpack_dyn_seq_of(wlan_to_add_list_r13, bref, 1, 32)); } - if (association_timer_r13_present) { - HANDLE_CODE(unpack_enum(association_timer_r13, bref)); + if (assoc_timer_r13_present) { + HANDLE_CODE(assoc_timer_r13.unpack(bref)); } if (ext) { @@ -54285,7 +54195,7 @@ SRSASN_CODE wlan_mob_cfg_r13_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool wlan_suspend_cfg_r14_present; HANDLE_CODE(bref.unpack(wlan_suspend_cfg_r14_present, 1)); @@ -54314,8 +54224,8 @@ void wlan_mob_cfg_r13_s::to_json(json_writer& j) const } j.end_array(); } - if (association_timer_r13_present) { - j.write_str("associationTimer-r13", association_timer_r13.to_string()); + if (assoc_timer_r13_present) { + j.write_str("associationTimer-r13", assoc_timer_r13.to_string()); } if (success_report_requested_r13_present) { j.write_str("successReportRequested-r13", "true"); @@ -54340,7 +54250,7 @@ SRSASN_CODE lwa_cfg_r13_s::pack(bit_ref& bref) const HANDLE_CODE(lwa_mob_cfg_r13.pack(bref)); } if (lwa_wt_counter_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, lwa_wt_counter_r13, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, lwa_wt_counter_r13, (uint32_t)0u, (uint32_t)65535u)); } if (ext) { @@ -54349,7 +54259,7 @@ SRSASN_CODE lwa_cfg_r13_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(wt_mac_address_r14_present, 1)); if (wt_mac_address_r14_present) { @@ -54369,7 +54279,7 @@ SRSASN_CODE lwa_cfg_r13_s::unpack(bit_ref& bref) HANDLE_CODE(lwa_mob_cfg_r13.unpack(bref)); } if (lwa_wt_counter_r13_present) { - HANDLE_CODE(unpack_unalign_integer(lwa_wt_counter_r13, bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(lwa_wt_counter_r13, bref, (uint32_t)0u, (uint32_t)65535u)); } if (ext) { @@ -54377,7 +54287,7 @@ SRSASN_CODE lwa_cfg_r13_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(wt_mac_address_r14_present, 1)); if (wt_mac_address_r14_present) { @@ -54458,7 +54368,7 @@ SRSASN_CODE mob_ctrl_info_scg_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(rach_cfg_ded_r12_present, 1)); HANDLE_CODE(bref.pack(ciphering_algorithm_scg_r12_present, 1)); - HANDLE_CODE(pack_enum(bref, t307_r12)); + HANDLE_CODE(t307_r12.pack(bref)); if (ue_id_scg_r12_present) { HANDLE_CODE(ue_id_scg_r12.pack(bref)); } @@ -54466,7 +54376,7 @@ SRSASN_CODE mob_ctrl_info_scg_r12_s::pack(bit_ref& bref) const HANDLE_CODE(rach_cfg_ded_r12.pack(bref)); } if (ciphering_algorithm_scg_r12_present) { - HANDLE_CODE(pack_enum(bref, ciphering_algorithm_scg_r12)); + HANDLE_CODE(ciphering_algorithm_scg_r12.pack(bref)); } if (ext) { @@ -54476,7 +54386,7 @@ SRSASN_CODE mob_ctrl_info_scg_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(make_before_break_scg_r14_present, 1)); HANDLE_CODE(bref.pack(rach_skip_scg_r14.is_present(), 1)); @@ -54494,7 +54404,7 @@ SRSASN_CODE mob_ctrl_info_scg_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(rach_cfg_ded_r12_present, 1)); HANDLE_CODE(bref.unpack(ciphering_algorithm_scg_r12_present, 1)); - HANDLE_CODE(unpack_enum(t307_r12, bref)); + HANDLE_CODE(t307_r12.unpack(bref)); if (ue_id_scg_r12_present) { HANDLE_CODE(ue_id_scg_r12.unpack(bref)); } @@ -54502,7 +54412,7 @@ SRSASN_CODE mob_ctrl_info_scg_r12_s::unpack(bit_ref& bref) HANDLE_CODE(rach_cfg_ded_r12.unpack(bref)); } if (ciphering_algorithm_scg_r12_present) { - HANDLE_CODE(unpack_enum(ciphering_algorithm_scg_r12, bref)); + HANDLE_CODE(ciphering_algorithm_scg_r12.unpack(bref)); } if (ext) { @@ -54510,7 +54420,7 @@ SRSASN_CODE mob_ctrl_info_scg_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(make_before_break_scg_r14_present, 1)); bool rach_skip_scg_r14_present; @@ -54557,10 +54467,10 @@ SRSASN_CODE ps_cell_to_add_mod_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(rr_cfg_common_ps_cell_r12_present, 1)); HANDLE_CODE(bref.pack(rr_cfg_ded_ps_cell_r12_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, s_cell_idx_r12, (uint8_t)1, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, scell_idx_r12, (uint8_t)1u, (uint8_t)7u)); if (cell_identif_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, cell_identif_r12.pci_r12, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_unalign_integer(bref, cell_identif_r12.dl_carrier_freq_r12, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, cell_identif_r12.pci_r12, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(pack_integer(bref, cell_identif_r12.dl_carrier_freq_r12, (uint32_t)0u, (uint32_t)262143u)); } if (rr_cfg_common_ps_cell_r12_present) { HANDLE_CODE(rr_cfg_common_ps_cell_r12.pack(bref)); @@ -54572,12 +54482,12 @@ SRSASN_CODE ps_cell_to_add_mod_r12_s::pack(bit_ref& bref) const if (ext) { ext_groups_packer_guard group_flags; group_flags[0] |= ant_info_ded_ps_cell_v1280.is_present(); - group_flags[1] |= s_cell_idx_r13_present; + group_flags[1] |= scell_idx_r13_present; group_flags[2] |= rr_cfg_ded_ps_cell_v1370.is_present(); group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ant_info_ded_ps_cell_v1280.is_present(), 1)); if (ant_info_ded_ps_cell_v1280.is_present()) { @@ -54585,15 +54495,15 @@ SRSASN_CODE ps_cell_to_add_mod_r12_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); - HANDLE_CODE(bref.pack(s_cell_idx_r13_present, 1)); - if (s_cell_idx_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, s_cell_idx_r13, (uint8_t)1, (uint8_t)31)); + HANDLE_CODE(bref.pack(scell_idx_r13_present, 1)); + if (scell_idx_r13_present) { + HANDLE_CODE(pack_integer(bref, scell_idx_r13, (uint8_t)1u, (uint8_t)31u)); } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(rr_cfg_ded_ps_cell_v1370.is_present(), 1)); if (rr_cfg_ded_ps_cell_v1370.is_present()) { @@ -54610,10 +54520,10 @@ SRSASN_CODE ps_cell_to_add_mod_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(rr_cfg_common_ps_cell_r12_present, 1)); HANDLE_CODE(bref.unpack(rr_cfg_ded_ps_cell_r12_present, 1)); - HANDLE_CODE(unpack_unalign_integer(s_cell_idx_r12, bref, (uint8_t)1, (uint8_t)7)); + HANDLE_CODE(unpack_integer(scell_idx_r12, bref, (uint8_t)1u, (uint8_t)7u)); if (cell_identif_r12_present) { - HANDLE_CODE(unpack_unalign_integer(cell_identif_r12.pci_r12, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_unalign_integer(cell_identif_r12.dl_carrier_freq_r12, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(cell_identif_r12.pci_r12, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(unpack_integer(cell_identif_r12.dl_carrier_freq_r12, bref, (uint32_t)0u, (uint32_t)262143u)); } if (rr_cfg_common_ps_cell_r12_present) { HANDLE_CODE(rr_cfg_common_ps_cell_r12.unpack(bref)); @@ -54627,7 +54537,7 @@ SRSASN_CODE ps_cell_to_add_mod_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool ant_info_ded_ps_cell_v1280_present; HANDLE_CODE(bref.unpack(ant_info_ded_ps_cell_v1280_present, 1)); @@ -54637,15 +54547,15 @@ SRSASN_CODE ps_cell_to_add_mod_r12_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); - HANDLE_CODE(bref.unpack(s_cell_idx_r13_present, 1)); - if (s_cell_idx_r13_present) { - HANDLE_CODE(unpack_unalign_integer(s_cell_idx_r13, bref, (uint8_t)1, (uint8_t)31)); + HANDLE_CODE(bref.unpack(scell_idx_r13_present, 1)); + if (scell_idx_r13_present) { + HANDLE_CODE(unpack_integer(scell_idx_r13, bref, (uint8_t)1u, (uint8_t)31u)); } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool rr_cfg_ded_ps_cell_v1370_present; HANDLE_CODE(bref.unpack(rr_cfg_ded_ps_cell_v1370_present, 1)); @@ -54660,7 +54570,7 @@ SRSASN_CODE ps_cell_to_add_mod_r12_s::unpack(bit_ref& bref) void ps_cell_to_add_mod_r12_s::to_json(json_writer& j) const { j.start_obj(); - j.write_int("sCellIndex-r12", s_cell_idx_r12); + j.write_int("sCellIndex-r12", scell_idx_r12); if (cell_identif_r12_present) { j.write_fieldname("cellIdentification-r12"); j.start_obj(); @@ -54681,8 +54591,8 @@ void ps_cell_to_add_mod_r12_s::to_json(json_writer& j) const j.write_fieldname("antennaInfoDedicatedPSCell-v1280"); ant_info_ded_ps_cell_v1280->to_json(j); } - if (s_cell_idx_r13_present) { - j.write_int("sCellIndex-r13", s_cell_idx_r13); + if (scell_idx_r13_present) { + j.write_int("sCellIndex-r13", scell_idx_r13); } if (rr_cfg_ded_ps_cell_v1370.is_present()) { j.write_fieldname("radioResourceConfigDedicatedPSCell-v1370"); @@ -54804,7 +54714,7 @@ void rclwi_cfg_r13_s::cmd_c_::to_json(json_writer& j) const } SRSASN_CODE rclwi_cfg_r13_s::cmd_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::steer_to_wlan_r13: HANDLE_CODE(pack_dyn_seq_of(bref, c.mob_cfg_r13, 1, 16)); @@ -54820,7 +54730,7 @@ SRSASN_CODE rclwi_cfg_r13_s::cmd_c_::pack(bit_ref& bref) const SRSASN_CODE rclwi_cfg_r13_s::cmd_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::steer_to_wlan_r13: @@ -54849,7 +54759,7 @@ SRSASN_CODE rrc_conn_recfg_v1510_ies_s::pack(bit_ref& bref) const HANDLE_CODE(nr_cfg_r15.pack(bref)); } if (sk_counter_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, sk_counter_r15, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, sk_counter_r15, (uint32_t)0u, (uint32_t)65535u)); } if (nr_radio_bearer_cfg1_r15_present) { HANDLE_CODE(nr_radio_bearer_cfg1_r15.pack(bref)); @@ -54879,7 +54789,7 @@ SRSASN_CODE rrc_conn_recfg_v1510_ies_s::unpack(bit_ref& bref) HANDLE_CODE(nr_cfg_r15.unpack(bref)); } if (sk_counter_r15_present) { - HANDLE_CODE(unpack_unalign_integer(sk_counter_r15, bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(sk_counter_r15, bref, (uint32_t)0u, (uint32_t)65535u)); } if (nr_radio_bearer_cfg1_r15_present) { HANDLE_CODE(nr_radio_bearer_cfg1_r15.unpack(bref)); @@ -54952,7 +54862,7 @@ void rrc_conn_recfg_v1510_ies_s::nr_cfg_r15_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_recfg_v1510_ies_s::nr_cfg_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -54964,7 +54874,7 @@ SRSASN_CODE rrc_conn_recfg_v1510_ies_s::nr_cfg_r15_c_::pack(bit_ref& bref) const HANDLE_CODE(c.nr_secondary_cell_group_cfg_r15.pack(bref)); } if (c.p_max_eutra_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.p_max_eutra_r15, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, c.p_max_eutra_r15, (int8_t)-30, (int8_t)33)); } break; default: @@ -54976,7 +54886,7 @@ SRSASN_CODE rrc_conn_recfg_v1510_ies_s::nr_cfg_r15_c_::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_recfg_v1510_ies_s::nr_cfg_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -54989,7 +54899,7 @@ SRSASN_CODE rrc_conn_recfg_v1510_ies_s::nr_cfg_r15_c_::unpack(bit_ref& bref) HANDLE_CODE(c.nr_secondary_cell_group_cfg_r15.unpack(bref)); } if (c.p_max_eutra_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.p_max_eutra_r15, bref, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(unpack_integer(c.p_max_eutra_r15, bref, (int8_t)-30, (int8_t)33)); } break; default: @@ -55023,13 +54933,13 @@ void rrc_conn_recfg_v1510_ies_s::tdm_pattern_cfg_r15_c_::to_json(json_writer& j) } SRSASN_CODE rrc_conn_recfg_v1510_ies_s::tdm_pattern_cfg_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.sf_assign_r15)); - HANDLE_CODE(pack_unalign_integer(bref, c.harq_offset_r15, (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(c.sf_assign_r15.pack(bref)); + HANDLE_CODE(pack_integer(bref, c.harq_offset_r15, (uint8_t)0u, (uint8_t)9u)); break; default: log_invalid_choice_id(type_, "rrc_conn_recfg_v1510_ies_s::tdm_pattern_cfg_r15_c_"); @@ -55040,14 +54950,14 @@ SRSASN_CODE rrc_conn_recfg_v1510_ies_s::tdm_pattern_cfg_r15_c_::pack(bit_ref& br SRSASN_CODE rrc_conn_recfg_v1510_ies_s::tdm_pattern_cfg_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.sf_assign_r15, bref)); - HANDLE_CODE(unpack_unalign_integer(c.harq_offset_r15, bref, (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(c.sf_assign_r15.unpack(bref)); + HANDLE_CODE(unpack_integer(c.harq_offset_r15, bref, (uint8_t)0u, (uint8_t)9u)); break; default: log_invalid_choice_id(type_, "rrc_conn_recfg_v1510_ies_s::tdm_pattern_cfg_r15_c_"); @@ -55080,7 +54990,7 @@ SRSASN_CODE rr_cfg_ded_scg_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(drb_to_add_mod_list_scg_r15.is_present(), 1)); if (drb_to_add_mod_list_scg_r15.is_present()) { @@ -55112,7 +55022,7 @@ SRSASN_CODE rr_cfg_ded_scg_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool drb_to_add_mod_list_scg_r15_present; HANDLE_CODE(bref.unpack(drb_to_add_mod_list_scg_r15_present, 1)); @@ -55157,14 +55067,14 @@ void rr_cfg_ded_scg_r12_s::to_json(json_writer& j) const // SL-CommTxPoolToAddMod-r12 ::= SEQUENCE SRSASN_CODE sl_comm_tx_pool_to_add_mod_r12_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, pool_id_r12, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, pool_id_r12, (uint8_t)1u, (uint8_t)4u)); HANDLE_CODE(pool_r12.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE sl_comm_tx_pool_to_add_mod_r12_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(pool_id_r12, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(unpack_integer(pool_id_r12, bref, (uint8_t)1u, (uint8_t)4u)); HANDLE_CODE(pool_r12.unpack(bref)); return SRSASN_SUCCESS; @@ -55181,14 +55091,14 @@ void sl_comm_tx_pool_to_add_mod_r12_s::to_json(json_writer& j) const // SL-CommTxPoolToAddModExt-r13 ::= SEQUENCE SRSASN_CODE sl_comm_tx_pool_to_add_mod_ext_r13_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, pool_id_v1310, (uint8_t)5, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, pool_id_v1310, (uint8_t)5u, (uint8_t)8u)); HANDLE_CODE(pool_r13.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE sl_comm_tx_pool_to_add_mod_ext_r13_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(pool_id_v1310, bref, (uint8_t)5, (uint8_t)8)); + HANDLE_CODE(unpack_integer(pool_id_v1310, bref, (uint8_t)5u, (uint8_t)8u)); HANDLE_CODE(pool_r13.unpack(bref)); return SRSASN_SUCCESS; @@ -55211,7 +55121,7 @@ SRSASN_CODE sl_disc_tx_res_info_per_freq_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(disc_tx_ref_carrier_ded_r13_present, 1)); HANDLE_CODE(bref.pack(disc_cell_sel_info_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, disc_tx_carrier_freq_r13, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, disc_tx_carrier_freq_r13, (uint32_t)0u, (uint32_t)262143u)); if (disc_tx_res_r13_present) { HANDLE_CODE(disc_tx_res_r13.pack(bref)); } @@ -55235,7 +55145,7 @@ SRSASN_CODE sl_disc_tx_res_info_per_freq_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(disc_tx_ref_carrier_ded_r13_present, 1)); HANDLE_CODE(bref.unpack(disc_cell_sel_info_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(disc_tx_carrier_freq_r13, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(disc_tx_carrier_freq_r13, bref, (uint32_t)0u, (uint32_t)262143u)); if (disc_tx_res_r13_present) { HANDLE_CODE(disc_tx_res_r13.unpack(bref)); } @@ -55281,10 +55191,10 @@ SRSASN_CODE sl_tf_idx_pair_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(disc_prb_idx_r12_present, 1)); if (disc_sf_idx_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, disc_sf_idx_r12, (uint8_t)1, (uint8_t)200)); + HANDLE_CODE(pack_integer(bref, disc_sf_idx_r12, (uint8_t)1u, (uint8_t)200u)); } if (disc_prb_idx_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, disc_prb_idx_r12, (uint8_t)1, (uint8_t)50)); + HANDLE_CODE(pack_integer(bref, disc_prb_idx_r12, (uint8_t)1u, (uint8_t)50u)); } return SRSASN_SUCCESS; @@ -55295,10 +55205,10 @@ SRSASN_CODE sl_tf_idx_pair_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(disc_prb_idx_r12_present, 1)); if (disc_sf_idx_r12_present) { - HANDLE_CODE(unpack_unalign_integer(disc_sf_idx_r12, bref, (uint8_t)1, (uint8_t)200)); + HANDLE_CODE(unpack_integer(disc_sf_idx_r12, bref, (uint8_t)1u, (uint8_t)200u)); } if (disc_prb_idx_r12_present) { - HANDLE_CODE(unpack_unalign_integer(disc_prb_idx_r12, bref, (uint8_t)1, (uint8_t)50)); + HANDLE_CODE(unpack_integer(disc_prb_idx_r12, bref, (uint8_t)1u, (uint8_t)50u)); } return SRSASN_SUCCESS; @@ -55332,10 +55242,10 @@ SRSASN_CODE sl_v2x_cfg_ded_r14_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, v2x_inter_freq_info_list_r14, 0, 7)); } if (thres_sl_tx_prioritization_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, thres_sl_tx_prioritization_r14, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, thres_sl_tx_prioritization_r14, (uint8_t)1u, (uint8_t)8u)); } if (type_tx_sync_r14_present) { - HANDLE_CODE(pack_enum(bref, type_tx_sync_r14)); + HANDLE_CODE(type_tx_sync_r14.pack(bref)); } if (cbr_ded_tx_cfg_list_r14_present) { HANDLE_CODE(cbr_ded_tx_cfg_list_r14.pack(bref)); @@ -55350,7 +55260,7 @@ SRSASN_CODE sl_v2x_cfg_ded_r14_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(comm_tx_res_v1530.is_present(), 1)); HANDLE_CODE(bref.pack(v2x_packet_dupl_cfg_r15.is_present(), 1)); @@ -55363,7 +55273,7 @@ SRSASN_CODE sl_v2x_cfg_ded_r14_s::pack(bit_ref& bref) const HANDLE_CODE(v2x_packet_dupl_cfg_r15->pack(bref)); } if (sync_freq_list_r15.is_present()) { - HANDLE_CODE(pack_dyn_seq_of(bref, *sync_freq_list_r15, 1, 8, UnalignedIntegerPacker(0, 262143))); + HANDLE_CODE(pack_dyn_seq_of(bref, *sync_freq_list_r15, 1, 8, integer_packer(0, 262143))); } } } @@ -55385,10 +55295,10 @@ SRSASN_CODE sl_v2x_cfg_ded_r14_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(v2x_inter_freq_info_list_r14, bref, 0, 7)); } if (thres_sl_tx_prioritization_r14_present) { - HANDLE_CODE(unpack_unalign_integer(thres_sl_tx_prioritization_r14, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(thres_sl_tx_prioritization_r14, bref, (uint8_t)1u, (uint8_t)8u)); } if (type_tx_sync_r14_present) { - HANDLE_CODE(unpack_enum(type_tx_sync_r14, bref)); + HANDLE_CODE(type_tx_sync_r14.unpack(bref)); } if (cbr_ded_tx_cfg_list_r14_present) { HANDLE_CODE(cbr_ded_tx_cfg_list_r14.unpack(bref)); @@ -55399,7 +55309,7 @@ SRSASN_CODE sl_v2x_cfg_ded_r14_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool comm_tx_res_v1530_present; HANDLE_CODE(bref.unpack(comm_tx_res_v1530_present, 1)); @@ -55418,7 +55328,7 @@ SRSASN_CODE sl_v2x_cfg_ded_r14_s::unpack(bit_ref& bref) HANDLE_CODE(v2x_packet_dupl_cfg_r15->unpack(bref)); } if (sync_freq_list_r15.is_present()) { - HANDLE_CODE(unpack_dyn_seq_of(*sync_freq_list_r15, bref, 1, 8, UnalignedIntegerPacker(0, 262143))); + HANDLE_CODE(unpack_dyn_seq_of(*sync_freq_list_r15, bref, 1, 8, integer_packer(0, 262143))); } } } @@ -55492,7 +55402,7 @@ void sl_v2x_cfg_ded_r14_s::comm_tx_res_r14_c_::to_json(json_writer& j) const } SRSASN_CODE sl_v2x_cfg_ded_r14_s::comm_tx_res_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -55508,7 +55418,7 @@ SRSASN_CODE sl_v2x_cfg_ded_r14_s::comm_tx_res_r14_c_::pack(bit_ref& bref) const SRSASN_CODE sl_v2x_cfg_ded_r14_s::comm_tx_res_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -55657,7 +55567,7 @@ void sl_v2x_cfg_ded_r14_s::comm_tx_res_r14_c_::setup_c_::to_json(json_writer& j) } SRSASN_CODE sl_v2x_cfg_ded_r14_s::comm_tx_res_r14_c_::setup_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sched_r14: HANDLE_CODE(bref.pack(c.get().v2x_sched_pool_r14_present, 1)); @@ -55668,14 +55578,13 @@ SRSASN_CODE sl_v2x_cfg_ded_r14_s::comm_tx_res_r14_c_::setup_c_::pack(bit_ref& br HANDLE_CODE(c.get().v2x_sched_pool_r14.pack(bref)); } if (c.get().mcs_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.get().mcs_r14, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, c.get().mcs_r14, (uint8_t)0u, (uint8_t)31u)); } - HANDLE_CODE( - pack_dyn_seq_of(bref, - c.get().lc_ch_group_info_list_r14, - 1, - 4, - SeqOfPacker >(1, 8, UnalignedIntegerPacker(1, 8)))); + HANDLE_CODE(pack_dyn_seq_of(bref, + c.get().lc_ch_group_info_list_r14, + 1, + 4, + SeqOfPacker >(1, 8, integer_packer(1, 8)))); break; case types::ue_sel_r14: HANDLE_CODE( @@ -55689,7 +55598,7 @@ SRSASN_CODE sl_v2x_cfg_ded_r14_s::comm_tx_res_r14_c_::setup_c_::pack(bit_ref& br c.get().v2x_comm_tx_pool_normal_ded_r14.pool_to_release_list_r14, 1, 8, - UnalignedIntegerPacker(1, 8))); + integer_packer(1, 8))); } if (c.get().v2x_comm_tx_pool_normal_ded_r14.pool_to_add_mod_list_r14_present) { HANDLE_CODE(pack_dyn_seq_of( @@ -55708,7 +55617,7 @@ SRSASN_CODE sl_v2x_cfg_ded_r14_s::comm_tx_res_r14_c_::setup_c_::pack(bit_ref& br SRSASN_CODE sl_v2x_cfg_ded_r14_s::comm_tx_res_r14_c_::setup_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sched_r14: @@ -55720,14 +55629,13 @@ SRSASN_CODE sl_v2x_cfg_ded_r14_s::comm_tx_res_r14_c_::setup_c_::unpack(bit_ref& HANDLE_CODE(c.get().v2x_sched_pool_r14.unpack(bref)); } if (c.get().mcs_r14_present) { - HANDLE_CODE(unpack_unalign_integer(c.get().mcs_r14, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(c.get().mcs_r14, bref, (uint8_t)0u, (uint8_t)31u)); } - HANDLE_CODE(unpack_dyn_seq_of( - c.get().lc_ch_group_info_list_r14, - bref, - 1, - 4, - SeqOfPacker >(1, 8, UnalignedIntegerPacker(1, 8)))); + HANDLE_CODE(unpack_dyn_seq_of(c.get().lc_ch_group_info_list_r14, + bref, + 1, + 4, + SeqOfPacker >(1, 8, integer_packer(1, 8)))); break; case types::ue_sel_r14: HANDLE_CODE( @@ -55741,7 +55649,7 @@ SRSASN_CODE sl_v2x_cfg_ded_r14_s::comm_tx_res_r14_c_::setup_c_::unpack(bit_ref& bref, 1, 8, - UnalignedIntegerPacker(1, 8))); + integer_packer(1, 8))); } if (c.get().v2x_comm_tx_pool_normal_ded_r14.pool_to_add_mod_list_r14_present) { HANDLE_CODE(unpack_dyn_seq_of( @@ -55780,7 +55688,7 @@ void sl_v2x_cfg_ded_r14_s::comm_tx_res_v1530_c_::to_json(json_writer& j) const } SRSASN_CODE sl_v2x_cfg_ded_r14_s::comm_tx_res_v1530_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -55796,7 +55704,7 @@ SRSASN_CODE sl_v2x_cfg_ded_r14_s::comm_tx_res_v1530_c_::pack(bit_ref& bref) cons SRSASN_CODE sl_v2x_cfg_ded_r14_s::comm_tx_res_v1530_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -55922,21 +55830,20 @@ void sl_v2x_cfg_ded_r14_s::comm_tx_res_v1530_c_::setup_c_::to_json(json_writer& } SRSASN_CODE sl_v2x_cfg_ded_r14_s::comm_tx_res_v1530_c_::setup_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sched_v1530: HANDLE_CODE(bref.pack(c.get().lc_ch_group_info_list_v1530_present, 1)); HANDLE_CODE(bref.pack(c.get().mcs_r15_present, 1)); if (c.get().lc_ch_group_info_list_v1530_present) { - HANDLE_CODE(pack_dyn_seq_of( - bref, - c.get().lc_ch_group_info_list_v1530, - 1, - 4, - SeqOfPacker >(1, 8, UnalignedIntegerPacker(1, 8)))); + HANDLE_CODE(pack_dyn_seq_of(bref, + c.get().lc_ch_group_info_list_v1530, + 1, + 4, + SeqOfPacker >(1, 8, integer_packer(1, 8)))); } if (c.get().mcs_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.get().mcs_r15, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, c.get().mcs_r15, (uint8_t)0u, (uint8_t)31u)); } break; case types::ue_sel_v1530: @@ -55954,22 +55861,21 @@ SRSASN_CODE sl_v2x_cfg_ded_r14_s::comm_tx_res_v1530_c_::setup_c_::pack(bit_ref& SRSASN_CODE sl_v2x_cfg_ded_r14_s::comm_tx_res_v1530_c_::setup_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sched_v1530: HANDLE_CODE(bref.unpack(c.get().lc_ch_group_info_list_v1530_present, 1)); HANDLE_CODE(bref.unpack(c.get().mcs_r15_present, 1)); if (c.get().lc_ch_group_info_list_v1530_present) { - HANDLE_CODE(unpack_dyn_seq_of( - c.get().lc_ch_group_info_list_v1530, - bref, - 1, - 4, - SeqOfPacker >(1, 8, UnalignedIntegerPacker(1, 8)))); + HANDLE_CODE(unpack_dyn_seq_of(c.get().lc_ch_group_info_list_v1530, + bref, + 1, + 4, + SeqOfPacker >(1, 8, integer_packer(1, 8)))); } if (c.get().mcs_r15_present) { - HANDLE_CODE(unpack_unalign_integer(c.get().mcs_r15, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(c.get().mcs_r15, bref, (uint8_t)0u, (uint8_t)31u)); } break; case types::ue_sel_v1530: @@ -55990,10 +55896,10 @@ SRSASN_CODE band_ind_r14_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(ca_bw_class_ul_r14_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, band_eutra_r14, (uint16_t)1, (uint16_t)256)); - HANDLE_CODE(pack_enum(bref, ca_bw_class_dl_r14)); + HANDLE_CODE(pack_integer(bref, band_eutra_r14, (uint16_t)1u, (uint16_t)256u)); + HANDLE_CODE(ca_bw_class_dl_r14.pack(bref)); if (ca_bw_class_ul_r14_present) { - HANDLE_CODE(pack_enum(bref, ca_bw_class_ul_r14)); + HANDLE_CODE(ca_bw_class_ul_r14.pack(bref)); } return SRSASN_SUCCESS; @@ -56002,10 +55908,10 @@ SRSASN_CODE band_ind_r14_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(ca_bw_class_ul_r14_present, 1)); - HANDLE_CODE(unpack_unalign_integer(band_eutra_r14, bref, (uint16_t)1, (uint16_t)256)); - HANDLE_CODE(unpack_enum(ca_bw_class_dl_r14, bref)); + HANDLE_CODE(unpack_integer(band_eutra_r14, bref, (uint16_t)1u, (uint16_t)256u)); + HANDLE_CODE(ca_bw_class_dl_r14.unpack(bref)); if (ca_bw_class_ul_r14_present) { - HANDLE_CODE(unpack_enum(ca_bw_class_ul_r14, bref)); + HANDLE_CODE(ca_bw_class_ul_r14.unpack(bref)); } return SRSASN_SUCCESS; @@ -56046,7 +55952,7 @@ void lwa_cfg_r13_c::to_json(json_writer& j) const } SRSASN_CODE lwa_cfg_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -56062,7 +55968,7 @@ SRSASN_CODE lwa_cfg_r13_c::pack(bit_ref& bref) const SRSASN_CODE lwa_cfg_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -56102,7 +56008,7 @@ void lwip_cfg_r13_c::to_json(json_writer& j) const } SRSASN_CODE lwip_cfg_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -56118,7 +56024,7 @@ SRSASN_CODE lwip_cfg_r13_c::pack(bit_ref& bref) const SRSASN_CODE lwip_cfg_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -56137,24 +56043,24 @@ SRSASN_CODE lwip_cfg_r13_c::unpack(bit_ref& bref) SRSASN_CODE meas_csi_rs_cfg_r12_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, meas_csi_rs_id_r12, (uint8_t)1, (uint8_t)96)); - HANDLE_CODE(pack_unalign_integer(bref, pci_r12, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_unalign_integer(bref, scrambling_id_r12, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_unalign_integer(bref, res_cfg_r12, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, sf_offset_r12, (uint8_t)0, (uint8_t)4)); - HANDLE_CODE(pack_enum(bref, csi_rs_individual_offset_r12)); + HANDLE_CODE(pack_integer(bref, meas_csi_rs_id_r12, (uint8_t)1u, (uint8_t)96u)); + HANDLE_CODE(pack_integer(bref, pci_r12, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(pack_integer(bref, scrambling_id_r12, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(pack_integer(bref, res_cfg_r12, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, sf_offset_r12, (uint8_t)0u, (uint8_t)4u)); + HANDLE_CODE(csi_rs_individual_offset_r12.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE meas_csi_rs_cfg_r12_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(meas_csi_rs_id_r12, bref, (uint8_t)1, (uint8_t)96)); - HANDLE_CODE(unpack_unalign_integer(pci_r12, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_unalign_integer(scrambling_id_r12, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_unalign_integer(res_cfg_r12, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(sf_offset_r12, bref, (uint8_t)0, (uint8_t)4)); - HANDLE_CODE(unpack_enum(csi_rs_individual_offset_r12, bref)); + HANDLE_CODE(unpack_integer(meas_csi_rs_id_r12, bref, (uint8_t)1u, (uint8_t)96u)); + HANDLE_CODE(unpack_integer(pci_r12, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(unpack_integer(scrambling_id_r12, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(unpack_integer(res_cfg_r12, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(sf_offset_r12, bref, (uint8_t)0u, (uint8_t)4u)); + HANDLE_CODE(csi_rs_individual_offset_r12.unpack(bref)); return SRSASN_SUCCESS; } @@ -56175,9 +56081,9 @@ SRSASN_CODE pci_range_utra_fdd_r9_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(range_r9_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, start_r9, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(pack_integer(bref, start_r9, (uint16_t)0u, (uint16_t)511u)); if (range_r9_present) { - HANDLE_CODE(pack_unalign_integer(bref, range_r9, (uint16_t)2, (uint16_t)512)); + HANDLE_CODE(pack_integer(bref, range_r9, (uint16_t)2u, (uint16_t)512u)); } return SRSASN_SUCCESS; @@ -56186,9 +56092,9 @@ SRSASN_CODE pci_range_utra_fdd_r9_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(range_r9_present, 1)); - HANDLE_CODE(unpack_unalign_integer(start_r9, bref, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(unpack_integer(start_r9, bref, (uint16_t)0u, (uint16_t)511u)); if (range_r9_present) { - HANDLE_CODE(unpack_unalign_integer(range_r9, bref, (uint16_t)2, (uint16_t)512)); + HANDLE_CODE(unpack_integer(range_r9, bref, (uint16_t)2u, (uint16_t)512u)); } return SRSASN_SUCCESS; @@ -56206,17 +56112,17 @@ void pci_range_utra_fdd_r9_s::to_json(json_writer& j) const // PowerCoordinationInfo-r12 ::= SEQUENCE SRSASN_CODE pwr_coordination_info_r12_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, p_me_nb_r12, (uint8_t)1, (uint8_t)16)); - HANDLE_CODE(pack_unalign_integer(bref, p_se_nb_r12, (uint8_t)1, (uint8_t)16)); - HANDLE_CODE(pack_unalign_integer(bref, pwr_ctrl_mode_r12, (uint8_t)1, (uint8_t)2)); + HANDLE_CODE(pack_integer(bref, p_me_nb_r12, (uint8_t)1u, (uint8_t)16u)); + HANDLE_CODE(pack_integer(bref, p_se_nb_r12, (uint8_t)1u, (uint8_t)16u)); + HANDLE_CODE(pack_integer(bref, pwr_ctrl_mode_r12, (uint8_t)1u, (uint8_t)2u)); return SRSASN_SUCCESS; } SRSASN_CODE pwr_coordination_info_r12_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(p_me_nb_r12, bref, (uint8_t)1, (uint8_t)16)); - HANDLE_CODE(unpack_unalign_integer(p_se_nb_r12, bref, (uint8_t)1, (uint8_t)16)); - HANDLE_CODE(unpack_unalign_integer(pwr_ctrl_mode_r12, bref, (uint8_t)1, (uint8_t)2)); + HANDLE_CODE(unpack_integer(p_me_nb_r12, bref, (uint8_t)1u, (uint8_t)16u)); + HANDLE_CODE(unpack_integer(p_se_nb_r12, bref, (uint8_t)1u, (uint8_t)16u)); + HANDLE_CODE(unpack_integer(pwr_ctrl_mode_r12, bref, (uint8_t)1u, (uint8_t)2u)); return SRSASN_SUCCESS; } @@ -56322,7 +56228,7 @@ void ran_notif_area_info_r15_c::to_json(json_writer& j) const } SRSASN_CODE ran_notif_area_info_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::cell_list_r15: HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 1, 8)); @@ -56339,7 +56245,7 @@ SRSASN_CODE ran_notif_area_info_r15_c::pack(bit_ref& bref) const SRSASN_CODE ran_notif_area_info_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::cell_list_r15: @@ -56380,7 +56286,7 @@ void rclwi_cfg_r13_c::to_json(json_writer& j) const } SRSASN_CODE rclwi_cfg_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -56396,7 +56302,7 @@ SRSASN_CODE rclwi_cfg_r13_c::pack(bit_ref& bref) const SRSASN_CODE rclwi_cfg_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -56415,7 +56321,7 @@ SRSASN_CODE rclwi_cfg_r13_c::unpack(bit_ref& bref) SRSASN_CODE rrc_conn_recfg_v1430_ies_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(sl_v2x_cfg_ded_r14_present, 1)); - HANDLE_CODE(bref.pack(s_cell_to_add_mod_list_ext_v1430_present, 1)); + HANDLE_CODE(bref.pack(scell_to_add_mod_list_ext_v1430_present, 1)); HANDLE_CODE(bref.pack(per_cc_gap_ind_request_r14_present, 1)); HANDLE_CODE(bref.pack(sib_type2_ded_r14_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); @@ -56423,8 +56329,8 @@ SRSASN_CODE rrc_conn_recfg_v1430_ies_s::pack(bit_ref& bref) const if (sl_v2x_cfg_ded_r14_present) { HANDLE_CODE(sl_v2x_cfg_ded_r14.pack(bref)); } - if (s_cell_to_add_mod_list_ext_v1430_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_to_add_mod_list_ext_v1430, 1, 31)); + if (scell_to_add_mod_list_ext_v1430_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_to_add_mod_list_ext_v1430, 1, 31)); } if (sib_type2_ded_r14_present) { HANDLE_CODE(sib_type2_ded_r14.pack(bref)); @@ -56438,7 +56344,7 @@ SRSASN_CODE rrc_conn_recfg_v1430_ies_s::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_recfg_v1430_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(sl_v2x_cfg_ded_r14_present, 1)); - HANDLE_CODE(bref.unpack(s_cell_to_add_mod_list_ext_v1430_present, 1)); + HANDLE_CODE(bref.unpack(scell_to_add_mod_list_ext_v1430_present, 1)); HANDLE_CODE(bref.unpack(per_cc_gap_ind_request_r14_present, 1)); HANDLE_CODE(bref.unpack(sib_type2_ded_r14_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); @@ -56446,8 +56352,8 @@ SRSASN_CODE rrc_conn_recfg_v1430_ies_s::unpack(bit_ref& bref) if (sl_v2x_cfg_ded_r14_present) { HANDLE_CODE(sl_v2x_cfg_ded_r14.unpack(bref)); } - if (s_cell_to_add_mod_list_ext_v1430_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_to_add_mod_list_ext_v1430, bref, 1, 31)); + if (scell_to_add_mod_list_ext_v1430_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_to_add_mod_list_ext_v1430, bref, 1, 31)); } if (sib_type2_ded_r14_present) { HANDLE_CODE(sib_type2_ded_r14.unpack(bref)); @@ -56465,10 +56371,10 @@ void rrc_conn_recfg_v1430_ies_s::to_json(json_writer& j) const j.write_fieldname("sl-V2X-ConfigDedicated-r14"); sl_v2x_cfg_ded_r14.to_json(j); } - if (s_cell_to_add_mod_list_ext_v1430_present) { + if (scell_to_add_mod_list_ext_v1430_present) { j.start_array("sCellToAddModListExt-v1430"); - for (uint32_t i1 = 0; i1 < s_cell_to_add_mod_list_ext_v1430.size(); ++i1) { - s_cell_to_add_mod_list_ext_v1430[i1].to_json(j); + for (uint32_t i1 = 0; i1 < scell_to_add_mod_list_ext_v1430.size(); ++i1) { + scell_to_add_mod_list_ext_v1430[i1].to_json(j); } j.end_array(); } @@ -56521,22 +56427,22 @@ SRSASN_CODE scg_cfg_part_scg_r12_s::pack(bit_ref& bref) const { bref.pack(ext, 1); HANDLE_CODE(bref.pack(rr_cfg_ded_scg_r12_present, 1)); - HANDLE_CODE(bref.pack(s_cell_to_release_list_scg_r12_present, 1)); - HANDLE_CODE(bref.pack(p_scell_to_add_mod_r12_present, 1)); - HANDLE_CODE(bref.pack(s_cell_to_add_mod_list_scg_r12_present, 1)); + HANDLE_CODE(bref.pack(scell_to_release_list_scg_r12_present, 1)); + HANDLE_CODE(bref.pack(pscell_to_add_mod_r12_present, 1)); + HANDLE_CODE(bref.pack(scell_to_add_mod_list_scg_r12_present, 1)); HANDLE_CODE(bref.pack(mob_ctrl_info_scg_r12_present, 1)); if (rr_cfg_ded_scg_r12_present) { HANDLE_CODE(rr_cfg_ded_scg_r12.pack(bref)); } - if (s_cell_to_release_list_scg_r12_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_to_release_list_scg_r12, 1, 4, UnalignedIntegerPacker(1, 7))); + if (scell_to_release_list_scg_r12_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_to_release_list_scg_r12, 1, 4, integer_packer(1, 7))); } - if (p_scell_to_add_mod_r12_present) { - HANDLE_CODE(p_scell_to_add_mod_r12.pack(bref)); + if (pscell_to_add_mod_r12_present) { + HANDLE_CODE(pscell_to_add_mod_r12.pack(bref)); } - if (s_cell_to_add_mod_list_scg_r12_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_to_add_mod_list_scg_r12, 1, 4)); + if (scell_to_add_mod_list_scg_r12_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_to_add_mod_list_scg_r12, 1, 4)); } if (mob_ctrl_info_scg_r12_present) { HANDLE_CODE(mob_ctrl_info_scg_r12.pack(bref)); @@ -56544,54 +56450,52 @@ SRSASN_CODE scg_cfg_part_scg_r12_s::pack(bit_ref& bref) const if (ext) { ext_groups_packer_guard group_flags; - group_flags[0] |= s_cell_to_release_list_scg_ext_r13.is_present(); - group_flags[0] |= s_cell_to_add_mod_list_scg_ext_r13.is_present(); - group_flags[1] |= s_cell_to_add_mod_list_scg_ext_v1370.is_present(); - group_flags[2] |= p_scell_to_add_mod_v1440.is_present(); - group_flags[3] |= s_cell_group_to_release_list_scg_r15.is_present(); - group_flags[3] |= s_cell_group_to_add_mod_list_scg_r15.is_present(); + group_flags[0] |= scell_to_release_list_scg_ext_r13.is_present(); + group_flags[0] |= scell_to_add_mod_list_scg_ext_r13.is_present(); + group_flags[1] |= scell_to_add_mod_list_scg_ext_v1370.is_present(); + group_flags[2] |= pscell_to_add_mod_v1440.is_present(); + group_flags[3] |= scell_group_to_release_list_scg_r15.is_present(); + group_flags[3] |= scell_group_to_add_mod_list_scg_r15.is_present(); group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); - HANDLE_CODE(bref.pack(s_cell_to_release_list_scg_ext_r13.is_present(), 1)); - HANDLE_CODE(bref.pack(s_cell_to_add_mod_list_scg_ext_r13.is_present(), 1)); - if (s_cell_to_release_list_scg_ext_r13.is_present()) { - HANDLE_CODE( - pack_dyn_seq_of(bref, *s_cell_to_release_list_scg_ext_r13, 1, 31, UnalignedIntegerPacker(1, 31))); + HANDLE_CODE(bref.pack(scell_to_release_list_scg_ext_r13.is_present(), 1)); + HANDLE_CODE(bref.pack(scell_to_add_mod_list_scg_ext_r13.is_present(), 1)); + if (scell_to_release_list_scg_ext_r13.is_present()) { + HANDLE_CODE(pack_dyn_seq_of(bref, *scell_to_release_list_scg_ext_r13, 1, 31, integer_packer(1, 31))); } - if (s_cell_to_add_mod_list_scg_ext_r13.is_present()) { - HANDLE_CODE(pack_dyn_seq_of(bref, *s_cell_to_add_mod_list_scg_ext_r13, 1, 31)); + if (scell_to_add_mod_list_scg_ext_r13.is_present()) { + HANDLE_CODE(pack_dyn_seq_of(bref, *scell_to_add_mod_list_scg_ext_r13, 1, 31)); } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); - HANDLE_CODE(bref.pack(s_cell_to_add_mod_list_scg_ext_v1370.is_present(), 1)); - if (s_cell_to_add_mod_list_scg_ext_v1370.is_present()) { - HANDLE_CODE(pack_dyn_seq_of(bref, *s_cell_to_add_mod_list_scg_ext_v1370, 1, 31)); + HANDLE_CODE(bref.pack(scell_to_add_mod_list_scg_ext_v1370.is_present(), 1)); + if (scell_to_add_mod_list_scg_ext_v1370.is_present()) { + HANDLE_CODE(pack_dyn_seq_of(bref, *scell_to_add_mod_list_scg_ext_v1370, 1, 31)); } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); - HANDLE_CODE(bref.pack(p_scell_to_add_mod_v1440.is_present(), 1)); - if (p_scell_to_add_mod_v1440.is_present()) { - HANDLE_CODE(p_scell_to_add_mod_v1440->pack(bref)); + HANDLE_CODE(bref.pack(pscell_to_add_mod_v1440.is_present(), 1)); + if (pscell_to_add_mod_v1440.is_present()) { + HANDLE_CODE(pscell_to_add_mod_v1440->pack(bref)); } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); - HANDLE_CODE(bref.pack(s_cell_group_to_release_list_scg_r15.is_present(), 1)); - HANDLE_CODE(bref.pack(s_cell_group_to_add_mod_list_scg_r15.is_present(), 1)); - if (s_cell_group_to_release_list_scg_r15.is_present()) { - HANDLE_CODE( - pack_dyn_seq_of(bref, *s_cell_group_to_release_list_scg_r15, 1, 4, UnalignedIntegerPacker(1, 4))); + HANDLE_CODE(bref.pack(scell_group_to_release_list_scg_r15.is_present(), 1)); + HANDLE_CODE(bref.pack(scell_group_to_add_mod_list_scg_r15.is_present(), 1)); + if (scell_group_to_release_list_scg_r15.is_present()) { + HANDLE_CODE(pack_dyn_seq_of(bref, *scell_group_to_release_list_scg_r15, 1, 4, integer_packer(1, 4))); } - if (s_cell_group_to_add_mod_list_scg_r15.is_present()) { - HANDLE_CODE(pack_dyn_seq_of(bref, *s_cell_group_to_add_mod_list_scg_r15, 1, 4)); + if (scell_group_to_add_mod_list_scg_r15.is_present()) { + HANDLE_CODE(pack_dyn_seq_of(bref, *scell_group_to_add_mod_list_scg_r15, 1, 4)); } } } @@ -56601,22 +56505,22 @@ SRSASN_CODE scg_cfg_part_scg_r12_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(rr_cfg_ded_scg_r12_present, 1)); - HANDLE_CODE(bref.unpack(s_cell_to_release_list_scg_r12_present, 1)); - HANDLE_CODE(bref.unpack(p_scell_to_add_mod_r12_present, 1)); - HANDLE_CODE(bref.unpack(s_cell_to_add_mod_list_scg_r12_present, 1)); + HANDLE_CODE(bref.unpack(scell_to_release_list_scg_r12_present, 1)); + HANDLE_CODE(bref.unpack(pscell_to_add_mod_r12_present, 1)); + HANDLE_CODE(bref.unpack(scell_to_add_mod_list_scg_r12_present, 1)); HANDLE_CODE(bref.unpack(mob_ctrl_info_scg_r12_present, 1)); if (rr_cfg_ded_scg_r12_present) { HANDLE_CODE(rr_cfg_ded_scg_r12.unpack(bref)); } - if (s_cell_to_release_list_scg_r12_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_to_release_list_scg_r12, bref, 1, 4, UnalignedIntegerPacker(1, 7))); + if (scell_to_release_list_scg_r12_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_to_release_list_scg_r12, bref, 1, 4, integer_packer(1, 7))); } - if (p_scell_to_add_mod_r12_present) { - HANDLE_CODE(p_scell_to_add_mod_r12.unpack(bref)); + if (pscell_to_add_mod_r12_present) { + HANDLE_CODE(pscell_to_add_mod_r12.unpack(bref)); } - if (s_cell_to_add_mod_list_scg_r12_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_to_add_mod_list_scg_r12, bref, 1, 4)); + if (scell_to_add_mod_list_scg_r12_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_to_add_mod_list_scg_r12, bref, 1, 4)); } if (mob_ctrl_info_scg_r12_present) { HANDLE_CODE(mob_ctrl_info_scg_r12.unpack(bref)); @@ -56627,57 +56531,55 @@ SRSASN_CODE scg_cfg_part_scg_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); - - bool s_cell_to_release_list_scg_ext_r13_present; - HANDLE_CODE(bref.unpack(s_cell_to_release_list_scg_ext_r13_present, 1)); - s_cell_to_release_list_scg_ext_r13.set_present(s_cell_to_release_list_scg_ext_r13_present); - bool s_cell_to_add_mod_list_scg_ext_r13_present; - HANDLE_CODE(bref.unpack(s_cell_to_add_mod_list_scg_ext_r13_present, 1)); - s_cell_to_add_mod_list_scg_ext_r13.set_present(s_cell_to_add_mod_list_scg_ext_r13_present); - if (s_cell_to_release_list_scg_ext_r13.is_present()) { - HANDLE_CODE(unpack_dyn_seq_of( - *s_cell_to_release_list_scg_ext_r13, bref, 1, 31, UnalignedIntegerPacker(1, 31))); + varlength_field_unpack_guard varlen_scope(bref, false); + + bool scell_to_release_list_scg_ext_r13_present; + HANDLE_CODE(bref.unpack(scell_to_release_list_scg_ext_r13_present, 1)); + scell_to_release_list_scg_ext_r13.set_present(scell_to_release_list_scg_ext_r13_present); + bool scell_to_add_mod_list_scg_ext_r13_present; + HANDLE_CODE(bref.unpack(scell_to_add_mod_list_scg_ext_r13_present, 1)); + scell_to_add_mod_list_scg_ext_r13.set_present(scell_to_add_mod_list_scg_ext_r13_present); + if (scell_to_release_list_scg_ext_r13.is_present()) { + HANDLE_CODE(unpack_dyn_seq_of(*scell_to_release_list_scg_ext_r13, bref, 1, 31, integer_packer(1, 31))); } - if (s_cell_to_add_mod_list_scg_ext_r13.is_present()) { - HANDLE_CODE(unpack_dyn_seq_of(*s_cell_to_add_mod_list_scg_ext_r13, bref, 1, 31)); + if (scell_to_add_mod_list_scg_ext_r13.is_present()) { + HANDLE_CODE(unpack_dyn_seq_of(*scell_to_add_mod_list_scg_ext_r13, bref, 1, 31)); } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); - bool s_cell_to_add_mod_list_scg_ext_v1370_present; - HANDLE_CODE(bref.unpack(s_cell_to_add_mod_list_scg_ext_v1370_present, 1)); - s_cell_to_add_mod_list_scg_ext_v1370.set_present(s_cell_to_add_mod_list_scg_ext_v1370_present); - if (s_cell_to_add_mod_list_scg_ext_v1370.is_present()) { - HANDLE_CODE(unpack_dyn_seq_of(*s_cell_to_add_mod_list_scg_ext_v1370, bref, 1, 31)); + bool scell_to_add_mod_list_scg_ext_v1370_present; + HANDLE_CODE(bref.unpack(scell_to_add_mod_list_scg_ext_v1370_present, 1)); + scell_to_add_mod_list_scg_ext_v1370.set_present(scell_to_add_mod_list_scg_ext_v1370_present); + if (scell_to_add_mod_list_scg_ext_v1370.is_present()) { + HANDLE_CODE(unpack_dyn_seq_of(*scell_to_add_mod_list_scg_ext_v1370, bref, 1, 31)); } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); - bool p_scell_to_add_mod_v1440_present; - HANDLE_CODE(bref.unpack(p_scell_to_add_mod_v1440_present, 1)); - p_scell_to_add_mod_v1440.set_present(p_scell_to_add_mod_v1440_present); - if (p_scell_to_add_mod_v1440.is_present()) { - HANDLE_CODE(p_scell_to_add_mod_v1440->unpack(bref)); + bool pscell_to_add_mod_v1440_present; + HANDLE_CODE(bref.unpack(pscell_to_add_mod_v1440_present, 1)); + pscell_to_add_mod_v1440.set_present(pscell_to_add_mod_v1440_present); + if (pscell_to_add_mod_v1440.is_present()) { + HANDLE_CODE(pscell_to_add_mod_v1440->unpack(bref)); } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); - - bool s_cell_group_to_release_list_scg_r15_present; - HANDLE_CODE(bref.unpack(s_cell_group_to_release_list_scg_r15_present, 1)); - s_cell_group_to_release_list_scg_r15.set_present(s_cell_group_to_release_list_scg_r15_present); - bool s_cell_group_to_add_mod_list_scg_r15_present; - HANDLE_CODE(bref.unpack(s_cell_group_to_add_mod_list_scg_r15_present, 1)); - s_cell_group_to_add_mod_list_scg_r15.set_present(s_cell_group_to_add_mod_list_scg_r15_present); - if (s_cell_group_to_release_list_scg_r15.is_present()) { - HANDLE_CODE(unpack_dyn_seq_of( - *s_cell_group_to_release_list_scg_r15, bref, 1, 4, UnalignedIntegerPacker(1, 4))); + varlength_field_unpack_guard varlen_scope(bref, false); + + bool scell_group_to_release_list_scg_r15_present; + HANDLE_CODE(bref.unpack(scell_group_to_release_list_scg_r15_present, 1)); + scell_group_to_release_list_scg_r15.set_present(scell_group_to_release_list_scg_r15_present); + bool scell_group_to_add_mod_list_scg_r15_present; + HANDLE_CODE(bref.unpack(scell_group_to_add_mod_list_scg_r15_present, 1)); + scell_group_to_add_mod_list_scg_r15.set_present(scell_group_to_add_mod_list_scg_r15_present); + if (scell_group_to_release_list_scg_r15.is_present()) { + HANDLE_CODE(unpack_dyn_seq_of(*scell_group_to_release_list_scg_r15, bref, 1, 4, integer_packer(1, 4))); } - if (s_cell_group_to_add_mod_list_scg_r15.is_present()) { - HANDLE_CODE(unpack_dyn_seq_of(*s_cell_group_to_add_mod_list_scg_r15, bref, 1, 4)); + if (scell_group_to_add_mod_list_scg_r15.is_present()) { + HANDLE_CODE(unpack_dyn_seq_of(*scell_group_to_add_mod_list_scg_r15, bref, 1, 4)); } } } @@ -56690,21 +56592,21 @@ void scg_cfg_part_scg_r12_s::to_json(json_writer& j) const j.write_fieldname("radioResourceConfigDedicatedSCG-r12"); rr_cfg_ded_scg_r12.to_json(j); } - if (s_cell_to_release_list_scg_r12_present) { + if (scell_to_release_list_scg_r12_present) { j.start_array("sCellToReleaseListSCG-r12"); - for (uint32_t i1 = 0; i1 < s_cell_to_release_list_scg_r12.size(); ++i1) { - j.write_int(s_cell_to_release_list_scg_r12[i1]); + for (uint32_t i1 = 0; i1 < scell_to_release_list_scg_r12.size(); ++i1) { + j.write_int(scell_to_release_list_scg_r12[i1]); } j.end_array(); } - if (p_scell_to_add_mod_r12_present) { + if (pscell_to_add_mod_r12_present) { j.write_fieldname("pSCellToAddMod-r12"); - p_scell_to_add_mod_r12.to_json(j); + pscell_to_add_mod_r12.to_json(j); } - if (s_cell_to_add_mod_list_scg_r12_present) { + if (scell_to_add_mod_list_scg_r12_present) { j.start_array("sCellToAddModListSCG-r12"); - for (uint32_t i1 = 0; i1 < s_cell_to_add_mod_list_scg_r12.size(); ++i1) { - s_cell_to_add_mod_list_scg_r12[i1].to_json(j); + for (uint32_t i1 = 0; i1 < scell_to_add_mod_list_scg_r12.size(); ++i1) { + scell_to_add_mod_list_scg_r12[i1].to_json(j); } j.end_array(); } @@ -56713,42 +56615,42 @@ void scg_cfg_part_scg_r12_s::to_json(json_writer& j) const mob_ctrl_info_scg_r12.to_json(j); } if (ext) { - if (s_cell_to_release_list_scg_ext_r13.is_present()) { + if (scell_to_release_list_scg_ext_r13.is_present()) { j.start_array("sCellToReleaseListSCG-Ext-r13"); - for (uint32_t i1 = 0; i1 < s_cell_to_release_list_scg_ext_r13->size(); ++i1) { - j.write_int(((*s_cell_to_release_list_scg_ext_r13)[i1])); + for (uint32_t i1 = 0; i1 < scell_to_release_list_scg_ext_r13->size(); ++i1) { + j.write_int(((*scell_to_release_list_scg_ext_r13)[i1])); } j.end_array(); } - if (s_cell_to_add_mod_list_scg_ext_r13.is_present()) { + if (scell_to_add_mod_list_scg_ext_r13.is_present()) { j.start_array("sCellToAddModListSCG-Ext-r13"); - for (uint32_t i1 = 0; i1 < s_cell_to_add_mod_list_scg_ext_r13->size(); ++i1) { - ((*s_cell_to_add_mod_list_scg_ext_r13)[i1]).to_json(j); + for (uint32_t i1 = 0; i1 < scell_to_add_mod_list_scg_ext_r13->size(); ++i1) { + ((*scell_to_add_mod_list_scg_ext_r13)[i1]).to_json(j); } j.end_array(); } - if (s_cell_to_add_mod_list_scg_ext_v1370.is_present()) { + if (scell_to_add_mod_list_scg_ext_v1370.is_present()) { j.start_array("sCellToAddModListSCG-Ext-v1370"); - for (uint32_t i1 = 0; i1 < s_cell_to_add_mod_list_scg_ext_v1370->size(); ++i1) { - ((*s_cell_to_add_mod_list_scg_ext_v1370)[i1]).to_json(j); + for (uint32_t i1 = 0; i1 < scell_to_add_mod_list_scg_ext_v1370->size(); ++i1) { + ((*scell_to_add_mod_list_scg_ext_v1370)[i1]).to_json(j); } j.end_array(); } - if (p_scell_to_add_mod_v1440.is_present()) { + if (pscell_to_add_mod_v1440.is_present()) { j.write_fieldname("pSCellToAddMod-v1440"); - p_scell_to_add_mod_v1440->to_json(j); + pscell_to_add_mod_v1440->to_json(j); } - if (s_cell_group_to_release_list_scg_r15.is_present()) { + if (scell_group_to_release_list_scg_r15.is_present()) { j.start_array("sCellGroupToReleaseListSCG-r15"); - for (uint32_t i1 = 0; i1 < s_cell_group_to_release_list_scg_r15->size(); ++i1) { - j.write_int(((*s_cell_group_to_release_list_scg_r15)[i1])); + for (uint32_t i1 = 0; i1 < scell_group_to_release_list_scg_r15->size(); ++i1) { + j.write_int(((*scell_group_to_release_list_scg_r15)[i1])); } j.end_array(); } - if (s_cell_group_to_add_mod_list_scg_r15.is_present()) { + if (scell_group_to_add_mod_list_scg_r15.is_present()) { j.start_array("sCellGroupToAddModListSCG-r15"); - for (uint32_t i1 = 0; i1 < s_cell_group_to_add_mod_list_scg_r15->size(); ++i1) { - ((*s_cell_group_to_add_mod_list_scg_r15)[i1]).to_json(j); + for (uint32_t i1 = 0; i1 < scell_group_to_add_mod_list_scg_r15->size(); ++i1) { + ((*scell_group_to_add_mod_list_scg_r15)[i1]).to_json(j); } j.end_array(); } @@ -56759,28 +56661,28 @@ void scg_cfg_part_scg_r12_s::to_json(json_writer& j) const // SCG-ConfigPartSCG-v12f0 ::= SEQUENCE SRSASN_CODE scg_cfg_part_scg_v12f0_s::pack(bit_ref& bref) const { - HANDLE_CODE(bref.pack(p_scell_to_add_mod_v12f0_present, 1)); - HANDLE_CODE(bref.pack(s_cell_to_add_mod_list_scg_v12f0_present, 1)); + HANDLE_CODE(bref.pack(pscell_to_add_mod_v12f0_present, 1)); + HANDLE_CODE(bref.pack(scell_to_add_mod_list_scg_v12f0_present, 1)); - if (p_scell_to_add_mod_v12f0_present) { - HANDLE_CODE(p_scell_to_add_mod_v12f0.pack(bref)); + if (pscell_to_add_mod_v12f0_present) { + HANDLE_CODE(pscell_to_add_mod_v12f0.pack(bref)); } - if (s_cell_to_add_mod_list_scg_v12f0_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_to_add_mod_list_scg_v12f0, 1, 4)); + if (scell_to_add_mod_list_scg_v12f0_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_to_add_mod_list_scg_v12f0, 1, 4)); } return SRSASN_SUCCESS; } SRSASN_CODE scg_cfg_part_scg_v12f0_s::unpack(bit_ref& bref) { - HANDLE_CODE(bref.unpack(p_scell_to_add_mod_v12f0_present, 1)); - HANDLE_CODE(bref.unpack(s_cell_to_add_mod_list_scg_v12f0_present, 1)); + HANDLE_CODE(bref.unpack(pscell_to_add_mod_v12f0_present, 1)); + HANDLE_CODE(bref.unpack(scell_to_add_mod_list_scg_v12f0_present, 1)); - if (p_scell_to_add_mod_v12f0_present) { - HANDLE_CODE(p_scell_to_add_mod_v12f0.unpack(bref)); + if (pscell_to_add_mod_v12f0_present) { + HANDLE_CODE(pscell_to_add_mod_v12f0.unpack(bref)); } - if (s_cell_to_add_mod_list_scg_v12f0_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_to_add_mod_list_scg_v12f0, bref, 1, 4)); + if (scell_to_add_mod_list_scg_v12f0_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_to_add_mod_list_scg_v12f0, bref, 1, 4)); } return SRSASN_SUCCESS; @@ -56788,14 +56690,14 @@ SRSASN_CODE scg_cfg_part_scg_v12f0_s::unpack(bit_ref& bref) void scg_cfg_part_scg_v12f0_s::to_json(json_writer& j) const { j.start_obj(); - if (p_scell_to_add_mod_v12f0_present) { + if (pscell_to_add_mod_v12f0_present) { j.write_fieldname("pSCellToAddMod-v12f0"); - p_scell_to_add_mod_v12f0.to_json(j); + pscell_to_add_mod_v12f0.to_json(j); } - if (s_cell_to_add_mod_list_scg_v12f0_present) { + if (scell_to_add_mod_list_scg_v12f0_present) { j.start_array("sCellToAddModListSCG-v12f0"); - for (uint32_t i1 = 0; i1 < s_cell_to_add_mod_list_scg_v12f0.size(); ++i1) { - s_cell_to_add_mod_list_scg_v12f0[i1].to_json(j); + for (uint32_t i1 = 0; i1 < scell_to_add_mod_list_scg_v12f0.size(); ++i1) { + scell_to_add_mod_list_scg_v12f0[i1].to_json(j); } j.end_array(); } @@ -56813,8 +56715,7 @@ SRSASN_CODE sl_disc_tx_info_inter_freq_list_add_r13_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, disc_tx_freq_to_add_mod_list_r13, 1, 8)); } if (disc_tx_freq_to_release_list_r13_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, disc_tx_freq_to_release_list_r13, 1, 8, UnalignedIntegerPacker(0, 262143))); + HANDLE_CODE(pack_dyn_seq_of(bref, disc_tx_freq_to_release_list_r13, 1, 8, integer_packer(0, 262143))); } return SRSASN_SUCCESS; @@ -56829,8 +56730,7 @@ SRSASN_CODE sl_disc_tx_info_inter_freq_list_add_r13_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(disc_tx_freq_to_add_mod_list_r13, bref, 1, 8)); } if (disc_tx_freq_to_release_list_r13_present) { - HANDLE_CODE( - unpack_dyn_seq_of(disc_tx_freq_to_release_list_r13, bref, 1, 8, UnalignedIntegerPacker(0, 262143))); + HANDLE_CODE(unpack_dyn_seq_of(disc_tx_freq_to_release_list_r13, bref, 1, 8, integer_packer(0, 262143))); } return SRSASN_SUCCESS; @@ -56882,14 +56782,14 @@ void sl_gap_cfg_r13_s::to_json(json_writer& j) const // AltTTT-CellsToAddMod-r12 ::= SEQUENCE SRSASN_CODE alt_ttt_cells_to_add_mod_r12_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, cell_idx_r12, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, cell_idx_r12, (uint8_t)1u, (uint8_t)32u)); HANDLE_CODE(pci_range_r12.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE alt_ttt_cells_to_add_mod_r12_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(cell_idx_r12, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(cell_idx_r12, bref, (uint8_t)1u, (uint8_t)32u)); HANDLE_CODE(pci_range_r12.unpack(bref)); return SRSASN_SUCCESS; @@ -56906,14 +56806,14 @@ void alt_ttt_cells_to_add_mod_r12_s::to_json(json_writer& j) const // BlackCellsToAddMod ::= SEQUENCE SRSASN_CODE black_cells_to_add_mod_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, cell_idx, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, cell_idx, (uint8_t)1u, (uint8_t)32u)); HANDLE_CODE(pci_range.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE black_cells_to_add_mod_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(cell_idx, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(cell_idx, bref, (uint8_t)1u, (uint8_t)32u)); HANDLE_CODE(pci_range.unpack(bref)); return SRSASN_SUCCESS; @@ -56930,17 +56830,17 @@ void black_cells_to_add_mod_s::to_json(json_writer& j) const // CellsToAddMod ::= SEQUENCE SRSASN_CODE cells_to_add_mod_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, cell_idx, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(pack_unalign_integer(bref, pci, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_enum(bref, cell_individual_offset)); + HANDLE_CODE(pack_integer(bref, cell_idx, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(pack_integer(bref, pci, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(cell_individual_offset.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE cells_to_add_mod_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(cell_idx, bref, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(unpack_unalign_integer(pci, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_enum(cell_individual_offset, bref)); + HANDLE_CODE(unpack_integer(cell_idx, bref, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(unpack_integer(pci, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(cell_individual_offset.unpack(bref)); return SRSASN_SUCCESS; } @@ -56956,15 +56856,15 @@ void cells_to_add_mod_s::to_json(json_writer& j) const // CellsToAddModCDMA2000 ::= SEQUENCE SRSASN_CODE cells_to_add_mod_cdma2000_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, cell_idx, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(pack_unalign_integer(bref, pci, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(pack_integer(bref, cell_idx, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(pack_integer(bref, pci, (uint16_t)0u, (uint16_t)511u)); return SRSASN_SUCCESS; } SRSASN_CODE cells_to_add_mod_cdma2000_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(cell_idx, bref, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(unpack_unalign_integer(pci, bref, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(unpack_integer(cell_idx, bref, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(unpack_integer(pci, bref, (uint16_t)0u, (uint16_t)511u)); return SRSASN_SUCCESS; } @@ -56979,15 +56879,15 @@ void cells_to_add_mod_cdma2000_s::to_json(json_writer& j) const // CellsToAddModNR-r15 ::= SEQUENCE SRSASN_CODE cells_to_add_mod_nr_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, cell_idx_r15, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(pack_unalign_integer(bref, pci_r15, (uint16_t)0, (uint16_t)1007)); + HANDLE_CODE(pack_integer(bref, cell_idx_r15, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(pack_integer(bref, pci_r15, (uint16_t)0u, (uint16_t)1007u)); return SRSASN_SUCCESS; } SRSASN_CODE cells_to_add_mod_nr_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(cell_idx_r15, bref, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(unpack_unalign_integer(pci_r15, bref, (uint16_t)0, (uint16_t)1007)); + HANDLE_CODE(unpack_integer(cell_idx_r15, bref, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(unpack_integer(pci_r15, bref, (uint16_t)0u, (uint16_t)1007u)); return SRSASN_SUCCESS; } @@ -57002,15 +56902,15 @@ void cells_to_add_mod_nr_r15_s::to_json(json_writer& j) const // CellsToAddModUTRA-FDD ::= SEQUENCE SRSASN_CODE cells_to_add_mod_utra_fdd_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, cell_idx, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(pack_unalign_integer(bref, pci, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(pack_integer(bref, cell_idx, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(pack_integer(bref, pci, (uint16_t)0u, (uint16_t)511u)); return SRSASN_SUCCESS; } SRSASN_CODE cells_to_add_mod_utra_fdd_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(cell_idx, bref, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(unpack_unalign_integer(pci, bref, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(unpack_integer(cell_idx, bref, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(unpack_integer(pci, bref, (uint16_t)0u, (uint16_t)511u)); return SRSASN_SUCCESS; } @@ -57025,15 +56925,15 @@ void cells_to_add_mod_utra_fdd_s::to_json(json_writer& j) const // CellsToAddModUTRA-TDD ::= SEQUENCE SRSASN_CODE cells_to_add_mod_utra_tdd_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, cell_idx, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(pack_unalign_integer(bref, pci, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, cell_idx, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(pack_integer(bref, pci, (uint8_t)0u, (uint8_t)127u)); return SRSASN_SUCCESS; } SRSASN_CODE cells_to_add_mod_utra_tdd_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(cell_idx, bref, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(unpack_unalign_integer(pci, bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(cell_idx, bref, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(unpack_integer(pci, bref, (uint8_t)0u, (uint8_t)127u)); return SRSASN_SUCCESS; } @@ -57050,7 +56950,7 @@ SRSASN_CODE flight_path_info_report_cfg_r15_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(include_time_stamp_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, max_way_point_num_r15, (uint8_t)1, (uint8_t)20)); + HANDLE_CODE(pack_integer(bref, max_way_point_num_r15, (uint8_t)1u, (uint8_t)20u)); return SRSASN_SUCCESS; } @@ -57058,7 +56958,7 @@ SRSASN_CODE flight_path_info_report_cfg_r15_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(include_time_stamp_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(max_way_point_num_r15, bref, (uint8_t)1, (uint8_t)20)); + HANDLE_CODE(unpack_integer(max_way_point_num_r15, bref, (uint8_t)1u, (uint8_t)20u)); return SRSASN_SUCCESS; } @@ -57081,7 +56981,7 @@ SRSASN_CODE meas_idle_cfg_ded_r15_s::pack(bit_ref& bref) const if (meas_idle_carrier_list_eutra_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, meas_idle_carrier_list_eutra_r15, 1, 8)); } - HANDLE_CODE(pack_enum(bref, meas_idle_dur_r15)); + HANDLE_CODE(meas_idle_dur_r15.pack(bref)); return SRSASN_SUCCESS; } @@ -57093,7 +56993,7 @@ SRSASN_CODE meas_idle_cfg_ded_r15_s::unpack(bit_ref& bref) if (meas_idle_carrier_list_eutra_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(meas_idle_carrier_list_eutra_r15, bref, 1, 8)); } - HANDLE_CODE(unpack_enum(meas_idle_dur_r15, bref)); + HANDLE_CODE(meas_idle_dur_r15.unpack(bref)); return SRSASN_SUCCESS; } @@ -57123,16 +57023,16 @@ SRSASN_CODE rrc_inactive_cfg_r15_s::pack(bit_ref& bref) const HANDLE_CODE(full_i_rnti_r15.pack(bref)); HANDLE_CODE(short_i_rnti_r15.pack(bref)); if (ran_paging_cycle_r15_present) { - HANDLE_CODE(pack_enum(bref, ran_paging_cycle_r15)); + HANDLE_CODE(ran_paging_cycle_r15.pack(bref)); } if (ran_notif_area_info_r15_present) { HANDLE_CODE(ran_notif_area_info_r15.pack(bref)); } if (periodic_rnau_timer_r15_present) { - HANDLE_CODE(pack_enum(bref, periodic_rnau_timer_r15)); + HANDLE_CODE(periodic_rnau_timer_r15.pack(bref)); } if (next_hop_chaining_count_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, next_hop_chaining_count_r15, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, next_hop_chaining_count_r15, (uint8_t)0u, (uint8_t)7u)); } return SRSASN_SUCCESS; @@ -57148,16 +57048,16 @@ SRSASN_CODE rrc_inactive_cfg_r15_s::unpack(bit_ref& bref) HANDLE_CODE(full_i_rnti_r15.unpack(bref)); HANDLE_CODE(short_i_rnti_r15.unpack(bref)); if (ran_paging_cycle_r15_present) { - HANDLE_CODE(unpack_enum(ran_paging_cycle_r15, bref)); + HANDLE_CODE(ran_paging_cycle_r15.unpack(bref)); } if (ran_notif_area_info_r15_present) { HANDLE_CODE(ran_notif_area_info_r15.unpack(bref)); } if (periodic_rnau_timer_r15_present) { - HANDLE_CODE(unpack_enum(periodic_rnau_timer_r15, bref)); + HANDLE_CODE(periodic_rnau_timer_r15.unpack(bref)); } if (next_hop_chaining_count_r15_present) { - HANDLE_CODE(unpack_unalign_integer(next_hop_chaining_count_r15, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(next_hop_chaining_count_r15, bref, (uint8_t)0u, (uint8_t)7u)); } return SRSASN_SUCCESS; @@ -57191,18 +57091,18 @@ void rrc_inactive_cfg_r15_s::to_json(json_writer& j) const // RRCConnectionReconfiguration-v1310-IEs ::= SEQUENCE SRSASN_CODE rrc_conn_recfg_v1310_ies_s::pack(bit_ref& bref) const { - HANDLE_CODE(bref.pack(s_cell_to_release_list_ext_r13_present, 1)); - HANDLE_CODE(bref.pack(s_cell_to_add_mod_list_ext_r13_present, 1)); + HANDLE_CODE(bref.pack(scell_to_release_list_ext_r13_present, 1)); + HANDLE_CODE(bref.pack(scell_to_add_mod_list_ext_r13_present, 1)); HANDLE_CODE(bref.pack(lwa_cfg_r13_present, 1)); HANDLE_CODE(bref.pack(lwip_cfg_r13_present, 1)); HANDLE_CODE(bref.pack(rclwi_cfg_r13_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); - if (s_cell_to_release_list_ext_r13_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_to_release_list_ext_r13, 1, 31, UnalignedIntegerPacker(1, 31))); + if (scell_to_release_list_ext_r13_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_to_release_list_ext_r13, 1, 31, integer_packer(1, 31))); } - if (s_cell_to_add_mod_list_ext_r13_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_to_add_mod_list_ext_r13, 1, 31)); + if (scell_to_add_mod_list_ext_r13_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_to_add_mod_list_ext_r13, 1, 31)); } if (lwa_cfg_r13_present) { HANDLE_CODE(lwa_cfg_r13.pack(bref)); @@ -57221,18 +57121,18 @@ SRSASN_CODE rrc_conn_recfg_v1310_ies_s::pack(bit_ref& bref) const } SRSASN_CODE rrc_conn_recfg_v1310_ies_s::unpack(bit_ref& bref) { - HANDLE_CODE(bref.unpack(s_cell_to_release_list_ext_r13_present, 1)); - HANDLE_CODE(bref.unpack(s_cell_to_add_mod_list_ext_r13_present, 1)); + HANDLE_CODE(bref.unpack(scell_to_release_list_ext_r13_present, 1)); + HANDLE_CODE(bref.unpack(scell_to_add_mod_list_ext_r13_present, 1)); HANDLE_CODE(bref.unpack(lwa_cfg_r13_present, 1)); HANDLE_CODE(bref.unpack(lwip_cfg_r13_present, 1)); HANDLE_CODE(bref.unpack(rclwi_cfg_r13_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); - if (s_cell_to_release_list_ext_r13_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_to_release_list_ext_r13, bref, 1, 31, UnalignedIntegerPacker(1, 31))); + if (scell_to_release_list_ext_r13_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_to_release_list_ext_r13, bref, 1, 31, integer_packer(1, 31))); } - if (s_cell_to_add_mod_list_ext_r13_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_to_add_mod_list_ext_r13, bref, 1, 31)); + if (scell_to_add_mod_list_ext_r13_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_to_add_mod_list_ext_r13, bref, 1, 31)); } if (lwa_cfg_r13_present) { HANDLE_CODE(lwa_cfg_r13.unpack(bref)); @@ -57252,17 +57152,17 @@ SRSASN_CODE rrc_conn_recfg_v1310_ies_s::unpack(bit_ref& bref) void rrc_conn_recfg_v1310_ies_s::to_json(json_writer& j) const { j.start_obj(); - if (s_cell_to_release_list_ext_r13_present) { + if (scell_to_release_list_ext_r13_present) { j.start_array("sCellToReleaseListExt-r13"); - for (uint32_t i1 = 0; i1 < s_cell_to_release_list_ext_r13.size(); ++i1) { - j.write_int(s_cell_to_release_list_ext_r13[i1]); + for (uint32_t i1 = 0; i1 < scell_to_release_list_ext_r13.size(); ++i1) { + j.write_int(scell_to_release_list_ext_r13[i1]); } j.end_array(); } - if (s_cell_to_add_mod_list_ext_r13_present) { + if (scell_to_add_mod_list_ext_r13_present) { j.start_array("sCellToAddModListExt-r13"); - for (uint32_t i1 = 0; i1 < s_cell_to_add_mod_list_ext_r13.size(); ++i1) { - s_cell_to_add_mod_list_ext_r13[i1].to_json(j); + for (uint32_t i1 = 0; i1 < scell_to_add_mod_list_ext_r13.size(); ++i1) { + scell_to_add_mod_list_ext_r13[i1].to_json(j); } j.end_array(); } @@ -57289,14 +57189,14 @@ void rrc_conn_recfg_v1310_ies_s::to_json(json_writer& j) const SRSASN_CODE rrc_conn_recfg_v1370_ies_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(rr_cfg_ded_v1370_present, 1)); - HANDLE_CODE(bref.pack(s_cell_to_add_mod_list_ext_v1370_present, 1)); + HANDLE_CODE(bref.pack(scell_to_add_mod_list_ext_v1370_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (rr_cfg_ded_v1370_present) { HANDLE_CODE(rr_cfg_ded_v1370.pack(bref)); } - if (s_cell_to_add_mod_list_ext_v1370_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_to_add_mod_list_ext_v1370, 1, 31)); + if (scell_to_add_mod_list_ext_v1370_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_to_add_mod_list_ext_v1370, 1, 31)); } return SRSASN_SUCCESS; @@ -57304,14 +57204,14 @@ SRSASN_CODE rrc_conn_recfg_v1370_ies_s::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_recfg_v1370_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(rr_cfg_ded_v1370_present, 1)); - HANDLE_CODE(bref.unpack(s_cell_to_add_mod_list_ext_v1370_present, 1)); + HANDLE_CODE(bref.unpack(scell_to_add_mod_list_ext_v1370_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (rr_cfg_ded_v1370_present) { HANDLE_CODE(rr_cfg_ded_v1370.unpack(bref)); } - if (s_cell_to_add_mod_list_ext_v1370_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_to_add_mod_list_ext_v1370, bref, 1, 31)); + if (scell_to_add_mod_list_ext_v1370_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_to_add_mod_list_ext_v1370, bref, 1, 31)); } return SRSASN_SUCCESS; @@ -57323,10 +57223,10 @@ void rrc_conn_recfg_v1370_ies_s::to_json(json_writer& j) const j.write_fieldname("radioResourceConfigDedicated-v1370"); rr_cfg_ded_v1370.to_json(j); } - if (s_cell_to_add_mod_list_ext_v1370_present) { + if (scell_to_add_mod_list_ext_v1370_present) { j.start_array("sCellToAddModListExt-v1370"); - for (uint32_t i1 = 0; i1 < s_cell_to_add_mod_list_ext_v1370.size(); ++i1) { - s_cell_to_add_mod_list_ext_v1370[i1].to_json(j); + for (uint32_t i1 = 0; i1 < scell_to_add_mod_list_ext_v1370.size(); ++i1) { + scell_to_add_mod_list_ext_v1370[i1].to_json(j); } j.end_array(); } @@ -57377,7 +57277,7 @@ void scg_cfg_r12_c::to_json(json_writer& j) const } SRSASN_CODE scg_cfg_r12_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -57389,7 +57289,7 @@ SRSASN_CODE scg_cfg_r12_c::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.scg_cfg_part_mcg_r12.scg_counter_r12_present, 1)); HANDLE_CODE(bref.pack(c.scg_cfg_part_mcg_r12.pwr_coordination_info_r12_present, 1)); if (c.scg_cfg_part_mcg_r12.scg_counter_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.scg_cfg_part_mcg_r12.scg_counter_r12, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, c.scg_cfg_part_mcg_r12.scg_counter_r12, (uint32_t)0u, (uint32_t)65535u)); } if (c.scg_cfg_part_mcg_r12.pwr_coordination_info_r12_present) { HANDLE_CODE(c.scg_cfg_part_mcg_r12.pwr_coordination_info_r12.pack(bref)); @@ -57408,7 +57308,7 @@ SRSASN_CODE scg_cfg_r12_c::pack(bit_ref& bref) const SRSASN_CODE scg_cfg_r12_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -57421,8 +57321,7 @@ SRSASN_CODE scg_cfg_r12_c::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.scg_cfg_part_mcg_r12.scg_counter_r12_present, 1)); HANDLE_CODE(bref.unpack(c.scg_cfg_part_mcg_r12.pwr_coordination_info_r12_present, 1)); if (c.scg_cfg_part_mcg_r12.scg_counter_r12_present) { - HANDLE_CODE( - unpack_unalign_integer(c.scg_cfg_part_mcg_r12.scg_counter_r12, bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(c.scg_cfg_part_mcg_r12.scg_counter_r12, bref, (uint32_t)0u, (uint32_t)65535u)); } if (c.scg_cfg_part_mcg_r12.pwr_coordination_info_r12_present) { HANDLE_CODE(c.scg_cfg_part_mcg_r12.pwr_coordination_info_r12.unpack(bref)); @@ -57466,7 +57365,7 @@ void scg_cfg_v12f0_c::to_json(json_writer& j) const } SRSASN_CODE scg_cfg_v12f0_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -57485,7 +57384,7 @@ SRSASN_CODE scg_cfg_v12f0_c::pack(bit_ref& bref) const SRSASN_CODE scg_cfg_v12f0_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -57520,7 +57419,7 @@ SRSASN_CODE sl_comm_cfg_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(comm_tx_res_v1310.is_present(), 1)); HANDLE_CODE(bref.pack(comm_tx_allow_relay_ded_r13_present, 1)); @@ -57548,7 +57447,7 @@ SRSASN_CODE sl_comm_cfg_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool comm_tx_res_v1310_present; HANDLE_CODE(bref.unpack(comm_tx_res_v1310_present, 1)); @@ -57604,7 +57503,7 @@ void sl_comm_cfg_r12_s::comm_tx_res_r12_c_::to_json(json_writer& j) const } SRSASN_CODE sl_comm_cfg_r12_s::comm_tx_res_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -57620,7 +57519,7 @@ SRSASN_CODE sl_comm_cfg_r12_s::comm_tx_res_r12_c_::pack(bit_ref& bref) const SRSASN_CODE sl_comm_cfg_r12_s::comm_tx_res_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -57751,7 +57650,7 @@ void sl_comm_cfg_r12_s::comm_tx_res_r12_c_::setup_c_::to_json(json_writer& j) co } SRSASN_CODE sl_comm_cfg_r12_s::comm_tx_res_r12_c_::setup_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sched_r12: HANDLE_CODE(bref.pack(c.get().mcs_r12_present, 1)); @@ -57759,7 +57658,7 @@ SRSASN_CODE sl_comm_cfg_r12_s::comm_tx_res_r12_c_::setup_c_::pack(bit_ref& bref) HANDLE_CODE(c.get().mac_main_cfg_r12.pack(bref)); HANDLE_CODE(c.get().sc_comm_tx_cfg_r12.pack(bref)); if (c.get().mcs_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.get().mcs_r12, (uint8_t)0, (uint8_t)28)); + HANDLE_CODE(pack_integer(bref, c.get().mcs_r12, (uint8_t)0u, (uint8_t)28u)); } break; case types::ue_sel_r12: @@ -57770,7 +57669,7 @@ SRSASN_CODE sl_comm_cfg_r12_s::comm_tx_res_r12_c_::setup_c_::pack(bit_ref& bref) c.get().comm_tx_pool_normal_ded_r12.pool_to_release_list_r12, 1, 4, - UnalignedIntegerPacker(1, 4))); + integer_packer(1, 4))); } if (c.get().comm_tx_pool_normal_ded_r12.pool_to_add_mod_list_r12_present) { HANDLE_CODE( @@ -57786,7 +57685,7 @@ SRSASN_CODE sl_comm_cfg_r12_s::comm_tx_res_r12_c_::setup_c_::pack(bit_ref& bref) SRSASN_CODE sl_comm_cfg_r12_s::comm_tx_res_r12_c_::setup_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sched_r12: @@ -57795,7 +57694,7 @@ SRSASN_CODE sl_comm_cfg_r12_s::comm_tx_res_r12_c_::setup_c_::unpack(bit_ref& bre HANDLE_CODE(c.get().mac_main_cfg_r12.unpack(bref)); HANDLE_CODE(c.get().sc_comm_tx_cfg_r12.unpack(bref)); if (c.get().mcs_r12_present) { - HANDLE_CODE(unpack_unalign_integer(c.get().mcs_r12, bref, (uint8_t)0, (uint8_t)28)); + HANDLE_CODE(unpack_integer(c.get().mcs_r12, bref, (uint8_t)0u, (uint8_t)28u)); } break; case types::ue_sel_r12: @@ -57806,7 +57705,7 @@ SRSASN_CODE sl_comm_cfg_r12_s::comm_tx_res_r12_c_::setup_c_::unpack(bit_ref& bre bref, 1, 4, - UnalignedIntegerPacker(1, 4))); + integer_packer(1, 4))); } if (c.get().comm_tx_pool_normal_ded_r12.pool_to_add_mod_list_r12_present) { HANDLE_CODE( @@ -57841,7 +57740,7 @@ void sl_comm_cfg_r12_s::comm_tx_res_v1310_c_::to_json(json_writer& j) const } SRSASN_CODE sl_comm_cfg_r12_s::comm_tx_res_v1310_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -57857,7 +57756,7 @@ SRSASN_CODE sl_comm_cfg_r12_s::comm_tx_res_v1310_c_::pack(bit_ref& bref) const SRSASN_CODE sl_comm_cfg_r12_s::comm_tx_res_v1310_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -57993,15 +57892,14 @@ void sl_comm_cfg_r12_s::comm_tx_res_v1310_c_::setup_c_::to_json(json_writer& j) } SRSASN_CODE sl_comm_cfg_r12_s::comm_tx_res_v1310_c_::setup_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sched_v1310: - HANDLE_CODE( - pack_dyn_seq_of(bref, - c.get().lc_ch_group_info_list_r13, - 1, - 4, - SeqOfPacker >(1, 8, UnalignedIntegerPacker(1, 8)))); + HANDLE_CODE(pack_dyn_seq_of(bref, + c.get().lc_ch_group_info_list_r13, + 1, + 4, + SeqOfPacker >(1, 8, integer_packer(1, 8)))); HANDLE_CODE(bref.pack(c.get().multiple_tx_r13, 1)); break; case types::ue_sel_v1310: @@ -58015,7 +57913,7 @@ SRSASN_CODE sl_comm_cfg_r12_s::comm_tx_res_v1310_c_::setup_c_::pack(bit_ref& bre c.get().comm_tx_pool_normal_ded_ext_r13.pool_to_release_list_ext_r13, 1, 4, - UnalignedIntegerPacker(5, 8))); + integer_packer(5, 8))); } if (c.get().comm_tx_pool_normal_ded_ext_r13.pool_to_add_mod_list_ext_r13_present) { HANDLE_CODE(pack_dyn_seq_of( @@ -58031,16 +57929,15 @@ SRSASN_CODE sl_comm_cfg_r12_s::comm_tx_res_v1310_c_::setup_c_::pack(bit_ref& bre SRSASN_CODE sl_comm_cfg_r12_s::comm_tx_res_v1310_c_::setup_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sched_v1310: - HANDLE_CODE(unpack_dyn_seq_of( - c.get().lc_ch_group_info_list_r13, - bref, - 1, - 4, - SeqOfPacker >(1, 8, UnalignedIntegerPacker(1, 8)))); + HANDLE_CODE(unpack_dyn_seq_of(c.get().lc_ch_group_info_list_r13, + bref, + 1, + 4, + SeqOfPacker >(1, 8, integer_packer(1, 8)))); HANDLE_CODE(bref.unpack(c.get().multiple_tx_r13, 1)); break; case types::ue_sel_v1310: @@ -58054,7 +57951,7 @@ SRSASN_CODE sl_comm_cfg_r12_s::comm_tx_res_v1310_c_::setup_c_::unpack(bit_ref& b bref, 1, 4, - UnalignedIntegerPacker(5, 8))); + integer_packer(5, 8))); } if (c.get().comm_tx_pool_normal_ded_ext_r13.pool_to_add_mod_list_ext_r13_present) { HANDLE_CODE(unpack_dyn_seq_of( @@ -58090,7 +57987,7 @@ SRSASN_CODE sl_disc_cfg_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(disc_tf_idx_list_v1260.is_present(), 1)); if (disc_tf_idx_list_v1260.is_present()) { @@ -58098,7 +57995,7 @@ SRSASN_CODE sl_disc_cfg_r12_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(disc_tx_res_ps_r13.is_present(), 1)); HANDLE_CODE(bref.pack(disc_tx_inter_freq_info_r13.is_present(), 1)); @@ -58142,7 +58039,7 @@ SRSASN_CODE sl_disc_cfg_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool disc_tf_idx_list_v1260_present; HANDLE_CODE(bref.unpack(disc_tf_idx_list_v1260_present, 1)); @@ -58152,7 +58049,7 @@ SRSASN_CODE sl_disc_cfg_r12_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool disc_tx_res_ps_r13_present; HANDLE_CODE(bref.unpack(disc_tx_res_ps_r13_present, 1)); @@ -58252,7 +58149,7 @@ void sl_disc_cfg_r12_s::disc_tx_res_r12_c_::to_json(json_writer& j) const } SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_res_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -58268,7 +58165,7 @@ SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_res_r12_c_::pack(bit_ref& bref) const SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_res_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -58408,7 +58305,7 @@ void sl_disc_cfg_r12_s::disc_tx_res_r12_c_::setup_c_::to_json(json_writer& j) co } SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_res_r12_c_::setup_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sched_r12: HANDLE_CODE(bref.pack(c.get().disc_tx_cfg_r12_present, 1)); @@ -58434,7 +58331,7 @@ SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_res_r12_c_::setup_c_::pack(bit_ref& bref) c.get().disc_tx_pool_ded_r12.pool_to_release_list_r12, 1, 4, - UnalignedIntegerPacker(1, 4))); + integer_packer(1, 4))); } if (c.get().disc_tx_pool_ded_r12.pool_to_add_mod_list_r12_present) { HANDLE_CODE( @@ -58451,7 +58348,7 @@ SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_res_r12_c_::setup_c_::pack(bit_ref& bref) SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_res_r12_c_::setup_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sched_r12: @@ -58478,7 +58375,7 @@ SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_res_r12_c_::setup_c_::unpack(bit_ref& bre bref, 1, 4, - UnalignedIntegerPacker(1, 4))); + integer_packer(1, 4))); } if (c.get().disc_tx_pool_ded_r12.pool_to_add_mod_list_r12_present) { HANDLE_CODE( @@ -58520,7 +58417,7 @@ void sl_disc_cfg_r12_s::disc_tf_idx_list_v1260_c_::to_json(json_writer& j) const } SRSASN_CODE sl_disc_cfg_r12_s::disc_tf_idx_list_v1260_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -58536,7 +58433,7 @@ SRSASN_CODE sl_disc_cfg_r12_s::disc_tf_idx_list_v1260_c_::pack(bit_ref& bref) co SRSASN_CODE sl_disc_cfg_r12_s::disc_tf_idx_list_v1260_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -58572,7 +58469,7 @@ void sl_disc_cfg_r12_s::disc_tx_res_ps_r13_c_::to_json(json_writer& j) const } SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_res_ps_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -58588,7 +58485,7 @@ SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_res_ps_r13_c_::pack(bit_ref& bref) const SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_res_ps_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -58694,7 +58591,7 @@ void sl_disc_cfg_r12_s::disc_tx_res_ps_r13_c_::setup_c_::to_json(json_writer& j) } SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_res_ps_r13_c_::setup_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sched_r13: HANDLE_CODE(c.get().pack(bref)); @@ -58711,7 +58608,7 @@ SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_res_ps_r13_c_::setup_c_::pack(bit_ref& br SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_res_ps_r13_c_::setup_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sched_r13: @@ -58760,7 +58657,7 @@ void sl_disc_cfg_r12_s::disc_tx_inter_freq_info_r13_c_::to_json(json_writer& j) } SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_inter_freq_info_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -58769,7 +58666,7 @@ SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_inter_freq_info_r13_c_::pack(bit_ref& bre HANDLE_CODE(bref.pack(c.disc_tx_ref_carrier_ded_r13_present, 1)); HANDLE_CODE(bref.pack(c.disc_tx_info_inter_freq_list_add_r13_present, 1)); if (c.disc_tx_carrier_freq_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.disc_tx_carrier_freq_r13, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, c.disc_tx_carrier_freq_r13, (uint32_t)0u, (uint32_t)262143u)); } if (c.disc_tx_ref_carrier_ded_r13_present) { HANDLE_CODE(c.disc_tx_ref_carrier_ded_r13.pack(bref)); @@ -58787,7 +58684,7 @@ SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_inter_freq_info_r13_c_::pack(bit_ref& bre SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_inter_freq_info_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -58797,7 +58694,7 @@ SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_inter_freq_info_r13_c_::unpack(bit_ref& b HANDLE_CODE(bref.unpack(c.disc_tx_ref_carrier_ded_r13_present, 1)); HANDLE_CODE(bref.unpack(c.disc_tx_info_inter_freq_list_add_r13_present, 1)); if (c.disc_tx_carrier_freq_r13_present) { - HANDLE_CODE(unpack_unalign_integer(c.disc_tx_carrier_freq_r13, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(c.disc_tx_carrier_freq_r13, bref, (uint32_t)0u, (uint32_t)262143u)); } if (c.disc_tx_ref_carrier_ded_r13_present) { HANDLE_CODE(c.disc_tx_ref_carrier_ded_r13.unpack(bref)); @@ -58834,7 +58731,7 @@ void sl_disc_cfg_r12_s::disc_rx_gap_cfg_r13_c_::to_json(json_writer& j) const } SRSASN_CODE sl_disc_cfg_r12_s::disc_rx_gap_cfg_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -58850,7 +58747,7 @@ SRSASN_CODE sl_disc_cfg_r12_s::disc_rx_gap_cfg_r13_c_::pack(bit_ref& bref) const SRSASN_CODE sl_disc_cfg_r12_s::disc_rx_gap_cfg_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -58886,7 +58783,7 @@ void sl_disc_cfg_r12_s::disc_tx_gap_cfg_r13_c_::to_json(json_writer& j) const } SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_gap_cfg_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -58902,7 +58799,7 @@ SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_gap_cfg_r13_c_::pack(bit_ref& bref) const SRSASN_CODE sl_disc_cfg_r12_s::disc_tx_gap_cfg_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -58941,12 +58838,12 @@ void sl_disc_cfg_r12_s::disc_sys_info_to_report_cfg_r13_c_::to_json(json_writer& } SRSASN_CODE sl_disc_cfg_r12_s::disc_sys_info_to_report_cfg_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_dyn_seq_of(bref, c, 1, 8, UnalignedIntegerPacker(0, 262143))); + HANDLE_CODE(pack_dyn_seq_of(bref, c, 1, 8, integer_packer(0, 262143))); break; default: log_invalid_choice_id(type_, "sl_disc_cfg_r12_s::disc_sys_info_to_report_cfg_r13_c_"); @@ -58957,13 +58854,13 @@ SRSASN_CODE sl_disc_cfg_r12_s::disc_sys_info_to_report_cfg_r13_c_::pack(bit_ref& SRSASN_CODE sl_disc_cfg_r12_s::disc_sys_info_to_report_cfg_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_dyn_seq_of(c, bref, 1, 8, UnalignedIntegerPacker(0, 262143))); + HANDLE_CODE(unpack_dyn_seq_of(c, bref, 1, 8, integer_packer(0, 262143))); break; default: log_invalid_choice_id(type_, "sl_disc_cfg_r12_s::disc_sys_info_to_report_cfg_r13_c_"); @@ -58978,7 +58875,7 @@ SRSASN_CODE sl_sync_tx_ctrl_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(network_ctrl_sync_tx_r12_present, 1)); if (network_ctrl_sync_tx_r12_present) { - HANDLE_CODE(pack_enum(bref, network_ctrl_sync_tx_r12)); + HANDLE_CODE(network_ctrl_sync_tx_r12.pack(bref)); } return SRSASN_SUCCESS; @@ -58988,7 +58885,7 @@ SRSASN_CODE sl_sync_tx_ctrl_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(network_ctrl_sync_tx_r12_present, 1)); if (network_ctrl_sync_tx_r12_present) { - HANDLE_CODE(unpack_enum(network_ctrl_sync_tx_r12, bref)); + HANDLE_CODE(network_ctrl_sync_tx_r12.unpack(bref)); } return SRSASN_SUCCESS; @@ -59039,14 +58936,14 @@ void ue_cap_enquiry_v1530_ies_s::to_json(json_writer& j) const // WhiteCellsToAddMod-r13 ::= SEQUENCE SRSASN_CODE white_cells_to_add_mod_r13_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, cell_idx_r13, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, cell_idx_r13, (uint8_t)1u, (uint8_t)32u)); HANDLE_CODE(pci_range_r13.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE white_cells_to_add_mod_r13_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(cell_idx_r13, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(cell_idx_r13, bref, (uint8_t)1u, (uint8_t)32u)); HANDLE_CODE(pci_range_r13.unpack(bref)); return SRSASN_SUCCESS; @@ -59085,7 +58982,7 @@ void bt_name_list_cfg_r15_c::to_json(json_writer& j) const } SRSASN_CODE bt_name_list_cfg_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -59101,7 +58998,7 @@ SRSASN_CODE bt_name_list_cfg_r15_c::pack(bit_ref& bref) const SRSASN_CODE bt_name_list_cfg_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -59153,15 +59050,15 @@ void csg_allowed_report_cells_r9_s::to_json(json_writer& j) const // CarrierFreqGERAN ::= SEQUENCE SRSASN_CODE carrier_freq_geran_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, arfcn, (uint16_t)0, (uint16_t)1023)); - HANDLE_CODE(pack_enum(bref, band_ind)); + HANDLE_CODE(pack_integer(bref, arfcn, (uint16_t)0u, (uint16_t)1023u)); + HANDLE_CODE(band_ind.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE carrier_freq_geran_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(arfcn, bref, (uint16_t)0, (uint16_t)1023)); - HANDLE_CODE(unpack_enum(band_ind, bref)); + HANDLE_CODE(unpack_integer(arfcn, bref, (uint16_t)0u, (uint16_t)1023u)); + HANDLE_CODE(band_ind.unpack(bref)); return SRSASN_SUCCESS; } @@ -59214,7 +59111,7 @@ void meas_ds_cfg_r12_c::to_json(json_writer& j) const } SRSASN_CODE meas_ds_cfg_r12_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -59225,8 +59122,7 @@ SRSASN_CODE meas_ds_cfg_r12_c::pack(bit_ref& bref) const HANDLE_CODE(c.dmtc_period_offset_r12.pack(bref)); HANDLE_CODE(c.ds_occasion_dur_r12.pack(bref)); if (c.meas_csi_rs_to_rem_list_r12_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, c.meas_csi_rs_to_rem_list_r12, 1, 96, UnalignedIntegerPacker(1, 96))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.meas_csi_rs_to_rem_list_r12, 1, 96, integer_packer(1, 96))); } if (c.meas_csi_rs_to_add_mod_list_r12_present) { HANDLE_CODE(pack_dyn_seq_of(bref, c.meas_csi_rs_to_add_mod_list_r12, 1, 96)); @@ -59241,7 +59137,7 @@ SRSASN_CODE meas_ds_cfg_r12_c::pack(bit_ref& bref) const SRSASN_CODE meas_ds_cfg_r12_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -59253,8 +59149,7 @@ SRSASN_CODE meas_ds_cfg_r12_c::unpack(bit_ref& bref) HANDLE_CODE(c.dmtc_period_offset_r12.unpack(bref)); HANDLE_CODE(c.ds_occasion_dur_r12.unpack(bref)); if (c.meas_csi_rs_to_rem_list_r12_present) { - HANDLE_CODE( - unpack_dyn_seq_of(c.meas_csi_rs_to_rem_list_r12, bref, 1, 96, UnalignedIntegerPacker(1, 96))); + HANDLE_CODE(unpack_dyn_seq_of(c.meas_csi_rs_to_rem_list_r12, bref, 1, 96, integer_packer(1, 96))); } if (c.meas_csi_rs_to_add_mod_list_r12_present) { HANDLE_CODE(unpack_dyn_seq_of(c.meas_csi_rs_to_add_mod_list_r12, bref, 1, 96)); @@ -59338,16 +59233,16 @@ void meas_ds_cfg_r12_c::setup_s_::dmtc_period_offset_r12_c_::to_json(json_writer } SRSASN_CODE meas_ds_cfg_r12_c::setup_s_::dmtc_period_offset_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ms40_r12: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)39)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)39u)); break; case types::ms80_r12: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)79)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)79u)); break; case types::ms160_r12: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)159u)); break; default: log_invalid_choice_id(type_, "meas_ds_cfg_r12_c::setup_s_::dmtc_period_offset_r12_c_"); @@ -59358,17 +59253,17 @@ SRSASN_CODE meas_ds_cfg_r12_c::setup_s_::dmtc_period_offset_r12_c_::pack(bit_ref SRSASN_CODE meas_ds_cfg_r12_c::setup_s_::dmtc_period_offset_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ms40_r12: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)39)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)39u)); break; case types::ms80_r12: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)79)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)79u)); break; case types::ms160_r12: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)159u)); break; default: log_invalid_choice_id(type_, "meas_ds_cfg_r12_c::setup_s_::dmtc_period_offset_r12_c_"); @@ -59439,13 +59334,13 @@ void meas_ds_cfg_r12_c::setup_s_::ds_occasion_dur_r12_c_::to_json(json_writer& j } SRSASN_CODE meas_ds_cfg_r12_c::setup_s_::ds_occasion_dur_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::dur_fdd_r12: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)1, (uint8_t)5)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)1u, (uint8_t)5u)); break; case types::dur_tdd_r12: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)2, (uint8_t)5)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)2u, (uint8_t)5u)); break; default: log_invalid_choice_id(type_, "meas_ds_cfg_r12_c::setup_s_::ds_occasion_dur_r12_c_"); @@ -59456,14 +59351,14 @@ SRSASN_CODE meas_ds_cfg_r12_c::setup_s_::ds_occasion_dur_r12_c_::pack(bit_ref& b SRSASN_CODE meas_ds_cfg_r12_c::setup_s_::ds_occasion_dur_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::dur_fdd_r12: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)1, (uint8_t)5)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)1u, (uint8_t)5u)); break; case types::dur_tdd_r12: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)2, (uint8_t)5)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)2u, (uint8_t)5u)); break; default: log_invalid_choice_id(type_, "meas_ds_cfg_r12_c::setup_s_::ds_occasion_dur_r12_c_"); @@ -59497,7 +59392,7 @@ void meas_gap_cfg_c::to_json(json_writer& j) const } SRSASN_CODE meas_gap_cfg_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -59513,7 +59408,7 @@ SRSASN_CODE meas_gap_cfg_c::pack(bit_ref& bref) const SRSASN_CODE meas_gap_cfg_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -59751,85 +59646,85 @@ void meas_gap_cfg_c::setup_s_::gap_offset_c_::to_json(json_writer& j) const } SRSASN_CODE meas_gap_cfg_c::setup_s_::gap_offset_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::gp0: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)39)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)39u)); break; case types::gp1: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)79)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)79u)); break; case types::gp2_r14: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)39)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)39u)); } break; case types::gp3_r14: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)79)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)79u)); } break; case types::gp_ncsg0_r14: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)39)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)39u)); } break; case types::gp_ncsg1_r14: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)79)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)79u)); } break; case types::gp_ncsg2_r14: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)39)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)39u)); } break; case types::gp_ncsg3_r14: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)79)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)79u)); } break; case types::gp_non_uniform1_r14: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1279)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1279u)); } break; case types::gp_non_uniform2_r14: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)2559)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)2559u)); } break; case types::gp_non_uniform3_r14: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)5119)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)5119u)); } break; case types::gp_non_uniform4_r14: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)10239)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)10239u)); } break; case types::gp4_r15: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)19)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)19u)); } break; case types::gp5_r15: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)159)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)159u)); } break; case types::gp6_r15: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)19)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)19u)); } break; case types::gp7_r15: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)39)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)39u)); } break; case types::gp8_r15: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)79)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)79u)); } break; case types::gp9_r15: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)159)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)159u)); } break; case types::gp10_r15: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)19)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)19u)); } break; case types::gp11_r15: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)159)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)159u)); } break; default: log_invalid_choice_id(type_, "meas_gap_cfg_c::setup_s_::gap_offset_c_"); @@ -59840,86 +59735,86 @@ SRSASN_CODE meas_gap_cfg_c::setup_s_::gap_offset_c_::pack(bit_ref& bref) const SRSASN_CODE meas_gap_cfg_c::setup_s_::gap_offset_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::gp0: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)39)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)39u)); break; case types::gp1: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)79)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)79u)); break; case types::gp2_r14: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)39)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)39u)); } break; case types::gp3_r14: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)79)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)79u)); } break; case types::gp_ncsg0_r14: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)39)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)39u)); } break; case types::gp_ncsg1_r14: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)79)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)79u)); } break; case types::gp_ncsg2_r14: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)39)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)39u)); } break; case types::gp_ncsg3_r14: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)79)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)79u)); } break; case types::gp_non_uniform1_r14: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1279)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1279u)); } break; case types::gp_non_uniform2_r14: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)2559)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)2559u)); } break; case types::gp_non_uniform3_r14: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)5119)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)5119u)); } break; case types::gp_non_uniform4_r14: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)10239)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)10239u)); } break; case types::gp4_r15: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)19)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)19u)); } break; case types::gp5_r15: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)159)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)159u)); } break; case types::gp6_r15: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)19)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)19u)); } break; case types::gp7_r15: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)39)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)39u)); } break; case types::gp8_r15: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)79)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)79u)); } break; case types::gp9_r15: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)159)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)159u)); } break; case types::gp10_r15: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)19)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)19u)); } break; case types::gp11_r15: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)159)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)159u)); } break; default: log_invalid_choice_id(type_, "meas_gap_cfg_c::setup_s_::gap_offset_c_"); @@ -59934,7 +59829,7 @@ SRSASN_CODE meas_rssi_report_cfg_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(ch_occupancy_thres_r13_present, 1)); if (ch_occupancy_thres_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, ch_occupancy_thres_r13, (uint8_t)0, (uint8_t)76)); + HANDLE_CODE(pack_integer(bref, ch_occupancy_thres_r13, (uint8_t)0u, (uint8_t)76u)); } return SRSASN_SUCCESS; @@ -59944,7 +59839,7 @@ SRSASN_CODE meas_rssi_report_cfg_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ch_occupancy_thres_r13_present, 1)); if (ch_occupancy_thres_r13_present) { - HANDLE_CODE(unpack_unalign_integer(ch_occupancy_thres_r13, bref, (uint8_t)0, (uint8_t)76)); + HANDLE_CODE(unpack_integer(ch_occupancy_thres_r13, bref, (uint8_t)0u, (uint8_t)76u)); } return SRSASN_SUCCESS; @@ -59961,19 +59856,19 @@ void meas_rssi_report_cfg_r13_s::to_json(json_writer& j) const // MeasSensing-Config-r15 ::= SEQUENCE SRSASN_CODE meas_sensing_cfg_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, sensing_subch_num_r15, (uint8_t)1, (uint8_t)20)); - HANDLE_CODE(pack_enum(bref, sensing_periodicity_r15)); - HANDLE_CODE(pack_unalign_integer(bref, sensing_resel_counter_r15, (uint8_t)5, (uint8_t)75)); - HANDLE_CODE(pack_unalign_integer(bref, sensing_prio_r15, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, sensing_subch_num_r15, (uint8_t)1u, (uint8_t)20u)); + HANDLE_CODE(sensing_periodicity_r15.pack(bref)); + HANDLE_CODE(pack_integer(bref, sensing_resel_counter_r15, (uint8_t)5u, (uint8_t)75u)); + HANDLE_CODE(pack_integer(bref, sensing_prio_r15, (uint8_t)1u, (uint8_t)8u)); return SRSASN_SUCCESS; } SRSASN_CODE meas_sensing_cfg_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(sensing_subch_num_r15, bref, (uint8_t)1, (uint8_t)20)); - HANDLE_CODE(unpack_enum(sensing_periodicity_r15, bref)); - HANDLE_CODE(unpack_unalign_integer(sensing_resel_counter_r15, bref, (uint8_t)5, (uint8_t)75)); - HANDLE_CODE(unpack_unalign_integer(sensing_prio_r15, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(sensing_subch_num_r15, bref, (uint8_t)1u, (uint8_t)20u)); + HANDLE_CODE(sensing_periodicity_r15.unpack(bref)); + HANDLE_CODE(unpack_integer(sensing_resel_counter_r15, bref, (uint8_t)5u, (uint8_t)75u)); + HANDLE_CODE(unpack_integer(sensing_prio_r15, bref, (uint8_t)1u, (uint8_t)8u)); return SRSASN_SUCCESS; } @@ -60019,7 +59914,7 @@ void meas_sf_pattern_cfg_neigh_r10_c::to_json(json_writer& j) const } SRSASN_CODE meas_sf_pattern_cfg_neigh_r10_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -60039,7 +59934,7 @@ SRSASN_CODE meas_sf_pattern_cfg_neigh_r10_c::pack(bit_ref& bref) const SRSASN_CODE meas_sf_pattern_cfg_neigh_r10_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -60064,7 +59959,7 @@ SRSASN_CODE mob_ctrl_info_v10l0_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(add_spec_emission_v10l0_present, 1)); if (add_spec_emission_v10l0_present) { - HANDLE_CODE(pack_unalign_integer(bref, add_spec_emission_v10l0, (uint16_t)33, (uint16_t)288)); + HANDLE_CODE(pack_integer(bref, add_spec_emission_v10l0, (uint16_t)33u, (uint16_t)288u)); } return SRSASN_SUCCESS; @@ -60074,7 +59969,7 @@ SRSASN_CODE mob_ctrl_info_v10l0_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(add_spec_emission_v10l0_present, 1)); if (add_spec_emission_v10l0_present) { - HANDLE_CODE(unpack_unalign_integer(add_spec_emission_v10l0, bref, (uint16_t)33, (uint16_t)288)); + HANDLE_CODE(unpack_integer(add_spec_emission_v10l0, bref, (uint16_t)33u, (uint16_t)288u)); } return SRSASN_SUCCESS; @@ -60119,13 +60014,13 @@ SRSASN_CODE quant_cfg_rs_nr_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(filt_coef_sinr_r13_present, 1)); if (filt_coeff_rsrp_r15_present) { - HANDLE_CODE(pack_enum(bref, filt_coeff_rsrp_r15)); + HANDLE_CODE(filt_coeff_rsrp_r15.pack(bref)); } if (filt_coeff_rsrq_r15_present) { - HANDLE_CODE(pack_enum(bref, filt_coeff_rsrq_r15)); + HANDLE_CODE(filt_coeff_rsrq_r15.pack(bref)); } if (filt_coef_sinr_r13_present) { - HANDLE_CODE(pack_enum(bref, filt_coef_sinr_r13)); + HANDLE_CODE(filt_coef_sinr_r13.pack(bref)); } return SRSASN_SUCCESS; @@ -60137,13 +60032,13 @@ SRSASN_CODE quant_cfg_rs_nr_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(filt_coef_sinr_r13_present, 1)); if (filt_coeff_rsrp_r15_present) { - HANDLE_CODE(unpack_enum(filt_coeff_rsrp_r15, bref)); + HANDLE_CODE(filt_coeff_rsrp_r15.unpack(bref)); } if (filt_coeff_rsrq_r15_present) { - HANDLE_CODE(unpack_enum(filt_coeff_rsrq_r15, bref)); + HANDLE_CODE(filt_coeff_rsrq_r15.unpack(bref)); } if (filt_coef_sinr_r13_present) { - HANDLE_CODE(unpack_enum(filt_coef_sinr_r13, bref)); + HANDLE_CODE(filt_coef_sinr_r13.unpack(bref)); } return SRSASN_SUCCESS; @@ -60191,18 +60086,18 @@ void rmtc_cfg_r13_c::to_json(json_writer& j) const } SRSASN_CODE rmtc_cfg_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: bref.pack(c.ext, 1); HANDLE_CODE(bref.pack(c.rmtc_sf_offset_r13_present, 1)); - HANDLE_CODE(pack_enum(bref, c.rmtc_period_r13)); + HANDLE_CODE(c.rmtc_period_r13.pack(bref)); if (c.rmtc_sf_offset_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.rmtc_sf_offset_r13, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.rmtc_sf_offset_r13, (uint16_t)0u, (uint16_t)639u)); } - HANDLE_CODE(pack_enum(bref, c.meas_dur_r13)); + HANDLE_CODE(c.meas_dur_r13.pack(bref)); break; default: log_invalid_choice_id(type_, "rmtc_cfg_r13_c"); @@ -60213,7 +60108,7 @@ SRSASN_CODE rmtc_cfg_r13_c::pack(bit_ref& bref) const SRSASN_CODE rmtc_cfg_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -60221,11 +60116,11 @@ SRSASN_CODE rmtc_cfg_r13_c::unpack(bit_ref& bref) case types::setup: bref.unpack(c.ext, 1); HANDLE_CODE(bref.unpack(c.rmtc_sf_offset_r13_present, 1)); - HANDLE_CODE(unpack_enum(c.rmtc_period_r13, bref)); + HANDLE_CODE(c.rmtc_period_r13.unpack(bref)); if (c.rmtc_sf_offset_r13_present) { - HANDLE_CODE(unpack_unalign_integer(c.rmtc_sf_offset_r13, bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.rmtc_sf_offset_r13, bref, (uint16_t)0u, (uint16_t)639u)); } - HANDLE_CODE(unpack_enum(c.meas_dur_r13, bref)); + HANDLE_CODE(c.meas_dur_r13.unpack(bref)); break; default: log_invalid_choice_id(type_, "rmtc_cfg_r13_c"); @@ -60352,7 +60247,7 @@ void rrc_conn_recfg_v1250_ies_s::wlan_offload_info_r12_c_::to_json(json_writer& } SRSASN_CODE rrc_conn_recfg_v1250_ies_s::wlan_offload_info_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -60360,7 +60255,7 @@ SRSASN_CODE rrc_conn_recfg_v1250_ies_s::wlan_offload_info_r12_c_::pack(bit_ref& HANDLE_CODE(bref.pack(c.t350_r12_present, 1)); HANDLE_CODE(c.wlan_offload_cfg_ded_r12.pack(bref)); if (c.t350_r12_present) { - HANDLE_CODE(pack_enum(bref, c.t350_r12)); + HANDLE_CODE(c.t350_r12.pack(bref)); } break; default: @@ -60372,7 +60267,7 @@ SRSASN_CODE rrc_conn_recfg_v1250_ies_s::wlan_offload_info_r12_c_::pack(bit_ref& SRSASN_CODE rrc_conn_recfg_v1250_ies_s::wlan_offload_info_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -60381,7 +60276,7 @@ SRSASN_CODE rrc_conn_recfg_v1250_ies_s::wlan_offload_info_r12_c_::unpack(bit_ref HANDLE_CODE(bref.unpack(c.t350_r12_present, 1)); HANDLE_CODE(c.wlan_offload_cfg_ded_r12.unpack(bref)); if (c.t350_r12_present) { - HANDLE_CODE(unpack_enum(c.t350_r12, bref)); + HANDLE_CODE(c.t350_r12.unpack(bref)); } break; default: @@ -60456,7 +60351,7 @@ SRSASN_CODE rrc_conn_release_v1530_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (next_hop_chaining_count_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, next_hop_chaining_count_r15, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, next_hop_chaining_count_r15, (uint8_t)0u, (uint8_t)7u)); } if (meas_idle_cfg_r15_present) { HANDLE_CODE(meas_idle_cfg_r15.pack(bref)); @@ -60465,7 +60360,7 @@ SRSASN_CODE rrc_conn_release_v1530_ies_s::pack(bit_ref& bref) const HANDLE_CODE(rrc_inactive_cfg_r15.pack(bref)); } if (cn_type_r15_present) { - HANDLE_CODE(pack_enum(bref, cn_type_r15)); + HANDLE_CODE(cn_type_r15.pack(bref)); } return SRSASN_SUCCESS; @@ -60480,7 +60375,7 @@ SRSASN_CODE rrc_conn_release_v1530_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (next_hop_chaining_count_r15_present) { - HANDLE_CODE(unpack_unalign_integer(next_hop_chaining_count_r15, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(next_hop_chaining_count_r15, bref, (uint8_t)0u, (uint8_t)7u)); } if (meas_idle_cfg_r15_present) { HANDLE_CODE(meas_idle_cfg_r15.unpack(bref)); @@ -60489,7 +60384,7 @@ SRSASN_CODE rrc_conn_release_v1530_ies_s::unpack(bit_ref& bref) HANDLE_CODE(rrc_inactive_cfg_r15.unpack(bref)); } if (cn_type_r15_present) { - HANDLE_CODE(unpack_enum(cn_type_r15, bref)); + HANDLE_CODE(cn_type_r15.unpack(bref)); } return SRSASN_SUCCESS; @@ -60527,7 +60422,7 @@ SRSASN_CODE rs_cfg_ssb_nr_r15_s::pack(bit_ref& bref) const { bref.pack(ext, 1); HANDLE_CODE(meas_timing_cfg_r15.pack(bref)); - HANDLE_CODE(pack_enum(bref, subcarrier_spacing_ssb_r15)); + HANDLE_CODE(subcarrier_spacing_ssb_r15.pack(bref)); return SRSASN_SUCCESS; } @@ -60535,7 +60430,7 @@ SRSASN_CODE rs_cfg_ssb_nr_r15_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); HANDLE_CODE(meas_timing_cfg_r15.unpack(bref)); - HANDLE_CODE(unpack_enum(subcarrier_spacing_ssb_r15, bref)); + HANDLE_CODE(subcarrier_spacing_ssb_r15.unpack(bref)); return SRSASN_SUCCESS; } @@ -60569,12 +60464,12 @@ void rsrq_range_cfg_r12_c::to_json(json_writer& j) const } SRSASN_CODE rsrq_range_cfg_r12_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(pack_integer(bref, c, (int8_t)-30, (int8_t)46)); break; default: log_invalid_choice_id(type_, "rsrq_range_cfg_r12_c"); @@ -60585,13 +60480,13 @@ SRSASN_CODE rsrq_range_cfg_r12_c::pack(bit_ref& bref) const SRSASN_CODE rsrq_range_cfg_r12_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c, bref, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(unpack_integer(c, bref, (int8_t)-30, (int8_t)46)); break; default: log_invalid_choice_id(type_, "rsrq_range_cfg_r12_c"); @@ -60687,9 +60582,9 @@ SRSASN_CODE target_mbsfn_area_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(mbsfn_area_id_r12_present, 1)); if (mbsfn_area_id_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, mbsfn_area_id_r12, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(pack_integer(bref, mbsfn_area_id_r12, (uint16_t)0u, (uint16_t)255u)); } - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r12, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r12, (uint32_t)0u, (uint32_t)262143u)); return SRSASN_SUCCESS; } @@ -60699,9 +60594,9 @@ SRSASN_CODE target_mbsfn_area_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(mbsfn_area_id_r12_present, 1)); if (mbsfn_area_id_r12_present) { - HANDLE_CODE(unpack_unalign_integer(mbsfn_area_id_r12, bref, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(unpack_integer(mbsfn_area_id_r12, bref, (uint16_t)0u, (uint16_t)255u)); } - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r12, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(carrier_freq_r12, bref, (uint32_t)0u, (uint32_t)262143u)); return SRSASN_SUCCESS; } @@ -60776,13 +60671,13 @@ void thres_eutra_c::to_json(json_writer& j) const } SRSASN_CODE thres_eutra_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::thres_rsrp: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)97)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)97u)); break; case types::thres_rsrq: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)34u)); break; default: log_invalid_choice_id(type_, "thres_eutra_c"); @@ -60793,14 +60688,14 @@ SRSASN_CODE thres_eutra_c::pack(bit_ref& bref) const SRSASN_CODE thres_eutra_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::thres_rsrp: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)97)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)97u)); break; case types::thres_rsrq: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)34u)); break; default: log_invalid_choice_id(type_, "thres_eutra_c"); @@ -60879,16 +60774,16 @@ void thres_nr_r15_c::to_json(json_writer& j) const } SRSASN_CODE thres_nr_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::nr_rsrp_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)127u)); break; case types::nr_rsrq_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)127u)); break; case types::nr_sinr_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)127u)); break; default: log_invalid_choice_id(type_, "thres_nr_r15_c"); @@ -60899,17 +60794,17 @@ SRSASN_CODE thres_nr_r15_c::pack(bit_ref& bref) const SRSASN_CODE thres_nr_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::nr_rsrp_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)127u)); break; case types::nr_rsrq_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)127u)); break; case types::nr_sinr_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)127u)); break; default: log_invalid_choice_id(type_, "thres_nr_r15_c"); @@ -60979,13 +60874,13 @@ void thres_utra_c::to_json(json_writer& j) const } SRSASN_CODE thres_utra_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::utra_rscp: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (int8_t)-5, (int8_t)91)); + HANDLE_CODE(pack_integer(bref, c.get(), (int8_t)-5, (int8_t)91)); break; case types::utra_ec_n0: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)49)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)49u)); break; default: log_invalid_choice_id(type_, "thres_utra_c"); @@ -60996,14 +60891,14 @@ SRSASN_CODE thres_utra_c::pack(bit_ref& bref) const SRSASN_CODE thres_utra_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::utra_rscp: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (int8_t)-5, (int8_t)91)); + HANDLE_CODE(unpack_integer(c.get(), bref, (int8_t)-5, (int8_t)91)); break; case types::utra_ec_n0: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)49)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)49u)); break; default: log_invalid_choice_id(type_, "thres_utra_c"); @@ -61121,12 +61016,12 @@ void ul_delay_cfg_r13_c::to_json(json_writer& j) const } SRSASN_CODE ul_delay_cfg_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.delay_thres_r13)); + HANDLE_CODE(c.delay_thres_r13.pack(bref)); break; default: log_invalid_choice_id(type_, "ul_delay_cfg_r13_c"); @@ -61137,13 +61032,13 @@ SRSASN_CODE ul_delay_cfg_r13_c::pack(bit_ref& bref) const SRSASN_CODE ul_delay_cfg_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.delay_thres_r13, bref)); + HANDLE_CODE(c.delay_thres_r13.unpack(bref)); break; default: log_invalid_choice_id(type_, "ul_delay_cfg_r13_c"); @@ -61161,13 +61056,13 @@ SRSASN_CODE wlan_carrier_info_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(ch_nums_r13_present, 1)); if (operating_class_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, operating_class_r13, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(pack_integer(bref, operating_class_r13, (uint16_t)0u, (uint16_t)255u)); } if (country_code_r13_present) { - HANDLE_CODE(pack_enum(bref, country_code_r13)); + HANDLE_CODE(country_code_r13.pack(bref)); } if (ch_nums_r13_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, ch_nums_r13, 1, 16, UnalignedIntegerPacker(0, 255))); + HANDLE_CODE(pack_dyn_seq_of(bref, ch_nums_r13, 1, 16, integer_packer(0, 255))); } return SRSASN_SUCCESS; @@ -61180,13 +61075,13 @@ SRSASN_CODE wlan_carrier_info_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ch_nums_r13_present, 1)); if (operating_class_r13_present) { - HANDLE_CODE(unpack_unalign_integer(operating_class_r13, bref, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(unpack_integer(operating_class_r13, bref, (uint16_t)0u, (uint16_t)255u)); } if (country_code_r13_present) { - HANDLE_CODE(unpack_enum(country_code_r13, bref)); + HANDLE_CODE(country_code_r13.unpack(bref)); } if (ch_nums_r13_present) { - HANDLE_CODE(unpack_dyn_seq_of(ch_nums_r13, bref, 1, 16, UnalignedIntegerPacker(0, 255))); + HANDLE_CODE(unpack_dyn_seq_of(ch_nums_r13, bref, 1, 16, integer_packer(0, 255))); } return SRSASN_SUCCESS; @@ -61235,7 +61130,7 @@ void wlan_name_list_cfg_r15_c::to_json(json_writer& j) const } SRSASN_CODE wlan_name_list_cfg_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -61251,7 +61146,7 @@ SRSASN_CODE wlan_name_list_cfg_r15_c::pack(bit_ref& bref) const SRSASN_CODE wlan_name_list_cfg_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -61301,14 +61196,14 @@ void cell_info_geran_r9_s::to_json(json_writer& j) const // CellInfoUTRA-FDD-r9 ::= SEQUENCE SRSASN_CODE cell_info_utra_fdd_r9_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, pci_r9, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(pack_integer(bref, pci_r9, (uint16_t)0u, (uint16_t)511u)); HANDLE_CODE(utra_bcch_container_r9.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE cell_info_utra_fdd_r9_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(pci_r9, bref, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(unpack_integer(pci_r9, bref, (uint16_t)0u, (uint16_t)511u)); HANDLE_CODE(utra_bcch_container_r9.unpack(bref)); return SRSASN_SUCCESS; @@ -61324,16 +61219,16 @@ void cell_info_utra_fdd_r9_s::to_json(json_writer& j) const // CellInfoUTRA-TDD-r10 ::= SEQUENCE SRSASN_CODE cell_info_utra_tdd_r10_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, pci_r10, (uint8_t)0, (uint8_t)127)); - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r10, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(pack_integer(bref, pci_r10, (uint8_t)0u, (uint8_t)127u)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r10, (uint16_t)0u, (uint16_t)16383u)); HANDLE_CODE(utra_bcch_container_r10.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE cell_info_utra_tdd_r10_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(pci_r10, bref, (uint8_t)0, (uint8_t)127)); - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r10, bref, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(unpack_integer(pci_r10, bref, (uint8_t)0u, (uint8_t)127u)); + HANDLE_CODE(unpack_integer(carrier_freq_r10, bref, (uint16_t)0u, (uint16_t)16383u)); HANDLE_CODE(utra_bcch_container_r10.unpack(bref)); return SRSASN_SUCCESS; @@ -61350,14 +61245,14 @@ void cell_info_utra_tdd_r10_s::to_json(json_writer& j) const // CellInfoUTRA-TDD-r9 ::= SEQUENCE SRSASN_CODE cell_info_utra_tdd_r9_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, pci_r9, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, pci_r9, (uint8_t)0u, (uint8_t)127u)); HANDLE_CODE(utra_bcch_container_r9.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE cell_info_utra_tdd_r9_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(pci_r9, bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(pci_r9, bref, (uint8_t)0u, (uint8_t)127u)); HANDLE_CODE(utra_bcch_container_r9.unpack(bref)); return SRSASN_SUCCESS; @@ -61373,17 +61268,17 @@ void cell_info_utra_tdd_r9_s::to_json(json_writer& j) const // DRB-CountMSB-Info ::= SEQUENCE SRSASN_CODE drb_count_msb_info_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, drb_id, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(pack_unalign_integer(bref, count_msb_ul, (uint32_t)0, (uint32_t)33554431)); - HANDLE_CODE(pack_unalign_integer(bref, count_msb_dl, (uint32_t)0, (uint32_t)33554431)); + HANDLE_CODE(pack_integer(bref, drb_id, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(pack_integer(bref, count_msb_ul, (uint32_t)0u, (uint32_t)33554431u)); + HANDLE_CODE(pack_integer(bref, count_msb_dl, (uint32_t)0u, (uint32_t)33554431u)); return SRSASN_SUCCESS; } SRSASN_CODE drb_count_msb_info_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(drb_id, bref, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(unpack_unalign_integer(count_msb_ul, bref, (uint32_t)0, (uint32_t)33554431)); - HANDLE_CODE(unpack_unalign_integer(count_msb_dl, bref, (uint32_t)0, (uint32_t)33554431)); + HANDLE_CODE(unpack_integer(drb_id, bref, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(unpack_integer(count_msb_ul, bref, (uint32_t)0u, (uint32_t)33554431u)); + HANDLE_CODE(unpack_integer(count_msb_dl, bref, (uint32_t)0u, (uint32_t)33554431u)); return SRSASN_SUCCESS; } @@ -61404,8 +61299,8 @@ SRSASN_CODE idc_cfg_r11_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(autonomous_denial_params_r11_present, 1)); if (autonomous_denial_params_r11_present) { - HANDLE_CODE(pack_enum(bref, autonomous_denial_params_r11.autonomous_denial_sfs_r11)); - HANDLE_CODE(pack_enum(bref, autonomous_denial_params_r11.autonomous_denial_validity_r11)); + HANDLE_CODE(autonomous_denial_params_r11.autonomous_denial_sfs_r11.pack(bref)); + HANDLE_CODE(autonomous_denial_params_r11.autonomous_denial_validity_r11.pack(bref)); } if (ext) { @@ -61416,17 +61311,17 @@ SRSASN_CODE idc_cfg_r11_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(idc_ind_ul_ca_r11_present, 1)); } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(idc_hardware_sharing_ind_r13_present, 1)); } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(idc_ind_mrdc_r15.is_present(), 1)); if (idc_ind_mrdc_r15.is_present()) { @@ -61443,8 +61338,8 @@ SRSASN_CODE idc_cfg_r11_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(autonomous_denial_params_r11_present, 1)); if (autonomous_denial_params_r11_present) { - HANDLE_CODE(unpack_enum(autonomous_denial_params_r11.autonomous_denial_sfs_r11, bref)); - HANDLE_CODE(unpack_enum(autonomous_denial_params_r11.autonomous_denial_validity_r11, bref)); + HANDLE_CODE(autonomous_denial_params_r11.autonomous_denial_sfs_r11.unpack(bref)); + HANDLE_CODE(autonomous_denial_params_r11.autonomous_denial_validity_r11.unpack(bref)); } if (ext) { @@ -61452,17 +61347,17 @@ SRSASN_CODE idc_cfg_r11_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(idc_ind_ul_ca_r11_present, 1)); } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(idc_hardware_sharing_ind_r13_present, 1)); } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool idc_ind_mrdc_r15_present; HANDLE_CODE(bref.unpack(idc_ind_mrdc_r15_present, 1)); @@ -61527,12 +61422,12 @@ void idc_cfg_r11_s::idc_ind_mrdc_r15_c_::to_json(json_writer& j) const } SRSASN_CODE idc_cfg_r11_s::idc_ind_mrdc_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_dyn_seq_of(bref, c, 1, 32, UnalignedIntegerPacker(0, 3279165))); + HANDLE_CODE(pack_dyn_seq_of(bref, c, 1, 32, integer_packer(0, 3279165))); break; default: log_invalid_choice_id(type_, "idc_cfg_r11_s::idc_ind_mrdc_r15_c_"); @@ -61543,13 +61438,13 @@ SRSASN_CODE idc_cfg_r11_s::idc_ind_mrdc_r15_c_::pack(bit_ref& bref) const SRSASN_CODE idc_cfg_r11_s::idc_ind_mrdc_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_dyn_seq_of(c, bref, 1, 32, UnalignedIntegerPacker(0, 3279165))); + HANDLE_CODE(unpack_dyn_seq_of(c, bref, 1, 32, integer_packer(0, 3279165))); break; default: log_invalid_choice_id(type_, "idc_cfg_r11_s::idc_ind_mrdc_r15_c_"); @@ -61617,14 +61512,14 @@ void logged_meas_cfg_v1530_ies_s::to_json(json_writer& j) const // MeasGapConfigPerCC-r14 ::= SEQUENCE SRSASN_CODE meas_gap_cfg_per_cc_r14_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, serv_cell_id_r14, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, serv_cell_id_r14, (uint8_t)0u, (uint8_t)31u)); HANDLE_CODE(meas_gap_cfg_cc_r14.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE meas_gap_cfg_per_cc_r14_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(serv_cell_id_r14, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(serv_cell_id_r14, bref, (uint8_t)0u, (uint8_t)31u)); HANDLE_CODE(meas_gap_cfg_cc_r14.unpack(bref)); return SRSASN_SUCCESS; @@ -61648,22 +61543,22 @@ SRSASN_CODE meas_obj_cdma2000_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(cells_to_add_mod_list_present, 1)); HANDLE_CODE(bref.pack(cell_for_which_to_report_cgi_present, 1)); - HANDLE_CODE(pack_enum(bref, cdma2000_type)); + HANDLE_CODE(cdma2000_type.pack(bref)); HANDLE_CODE(carrier_freq.pack(bref)); if (search_win_size_present) { - HANDLE_CODE(pack_unalign_integer(bref, search_win_size, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, search_win_size, (uint8_t)0u, (uint8_t)15u)); } if (offset_freq_present) { - HANDLE_CODE(pack_unalign_integer(bref, offset_freq, (int8_t)-15, (int8_t)15)); + HANDLE_CODE(pack_integer(bref, offset_freq, (int8_t)-15, (int8_t)15)); } if (cells_to_rem_list_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, cells_to_rem_list, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(pack_dyn_seq_of(bref, cells_to_rem_list, 1, 32, integer_packer(1, 32))); } if (cells_to_add_mod_list_present) { HANDLE_CODE(pack_dyn_seq_of(bref, cells_to_add_mod_list, 1, 32)); } if (cell_for_which_to_report_cgi_present) { - HANDLE_CODE(pack_unalign_integer(bref, cell_for_which_to_report_cgi, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(pack_integer(bref, cell_for_which_to_report_cgi, (uint16_t)0u, (uint16_t)511u)); } return SRSASN_SUCCESS; @@ -61677,22 +61572,22 @@ SRSASN_CODE meas_obj_cdma2000_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(cells_to_add_mod_list_present, 1)); HANDLE_CODE(bref.unpack(cell_for_which_to_report_cgi_present, 1)); - HANDLE_CODE(unpack_enum(cdma2000_type, bref)); + HANDLE_CODE(cdma2000_type.unpack(bref)); HANDLE_CODE(carrier_freq.unpack(bref)); if (search_win_size_present) { - HANDLE_CODE(unpack_unalign_integer(search_win_size, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(search_win_size, bref, (uint8_t)0u, (uint8_t)15u)); } if (offset_freq_present) { - HANDLE_CODE(unpack_unalign_integer(offset_freq, bref, (int8_t)-15, (int8_t)15)); + HANDLE_CODE(unpack_integer(offset_freq, bref, (int8_t)-15, (int8_t)15)); } if (cells_to_rem_list_present) { - HANDLE_CODE(unpack_dyn_seq_of(cells_to_rem_list, bref, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(unpack_dyn_seq_of(cells_to_rem_list, bref, 1, 32, integer_packer(1, 32))); } if (cells_to_add_mod_list_present) { HANDLE_CODE(unpack_dyn_seq_of(cells_to_add_mod_list, bref, 1, 32)); } if (cell_for_which_to_report_cgi_present) { - HANDLE_CODE(unpack_unalign_integer(cell_for_which_to_report_cgi, bref, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(unpack_integer(cell_for_which_to_report_cgi, bref, (uint16_t)0u, (uint16_t)511u)); } return SRSASN_SUCCESS; @@ -61740,27 +61635,27 @@ SRSASN_CODE meas_obj_eutra_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(black_cells_to_add_mod_list_present, 1)); HANDLE_CODE(bref.pack(cell_for_which_to_report_cgi_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq, (uint16_t)0, (uint16_t)65535)); - HANDLE_CODE(pack_enum(bref, allowed_meas_bw)); + HANDLE_CODE(pack_integer(bref, carrier_freq, (uint32_t)0u, (uint32_t)65535u)); + HANDLE_CODE(allowed_meas_bw.pack(bref)); HANDLE_CODE(bref.pack(presence_ant_port1, 1)); HANDLE_CODE(neigh_cell_cfg.pack(bref)); if (offset_freq_present) { - HANDLE_CODE(pack_enum(bref, offset_freq)); + HANDLE_CODE(offset_freq.pack(bref)); } if (cells_to_rem_list_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, cells_to_rem_list, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(pack_dyn_seq_of(bref, cells_to_rem_list, 1, 32, integer_packer(1, 32))); } if (cells_to_add_mod_list_present) { HANDLE_CODE(pack_dyn_seq_of(bref, cells_to_add_mod_list, 1, 32)); } if (black_cells_to_rem_list_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, black_cells_to_rem_list, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(pack_dyn_seq_of(bref, black_cells_to_rem_list, 1, 32, integer_packer(1, 32))); } if (black_cells_to_add_mod_list_present) { HANDLE_CODE(pack_dyn_seq_of(bref, black_cells_to_add_mod_list, 1, 32)); } if (cell_for_which_to_report_cgi_present) { - HANDLE_CODE(pack_unalign_integer(bref, cell_for_which_to_report_cgi, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(pack_integer(bref, cell_for_which_to_report_cgi, (uint16_t)0u, (uint16_t)503u)); } if (ext) { @@ -61784,19 +61679,19 @@ SRSASN_CODE meas_obj_eutra_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_cycle_scell_r10_present, 1)); HANDLE_CODE(bref.pack(meas_sf_pattern_cfg_neigh_r10.is_present(), 1)); if (meas_cycle_scell_r10_present) { - HANDLE_CODE(pack_enum(bref, meas_cycle_scell_r10)); + HANDLE_CODE(meas_cycle_scell_r10.pack(bref)); } if (meas_sf_pattern_cfg_neigh_r10.is_present()) { HANDLE_CODE(meas_sf_pattern_cfg_neigh_r10->pack(bref)); } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(wideband_rsrq_meas_r11_present, 1)); if (wideband_rsrq_meas_r11_present) { @@ -61804,7 +61699,7 @@ SRSASN_CODE meas_obj_eutra_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(alt_ttt_cells_to_rem_list_r12.is_present(), 1)); HANDLE_CODE(bref.pack(alt_ttt_cells_to_add_mod_list_r12.is_present(), 1)); @@ -61812,8 +61707,7 @@ SRSASN_CODE meas_obj_eutra_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(reduced_meas_performance_r12_present, 1)); HANDLE_CODE(bref.pack(meas_ds_cfg_r12.is_present(), 1)); if (alt_ttt_cells_to_rem_list_r12.is_present()) { - HANDLE_CODE( - pack_dyn_seq_of(bref, *alt_ttt_cells_to_rem_list_r12, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(pack_dyn_seq_of(bref, *alt_ttt_cells_to_rem_list_r12, 1, 32, integer_packer(1, 32))); } if (alt_ttt_cells_to_add_mod_list_r12.is_present()) { HANDLE_CODE(pack_dyn_seq_of(bref, *alt_ttt_cells_to_add_mod_list_r12, 1, 32)); @@ -61829,14 +61723,14 @@ SRSASN_CODE meas_obj_eutra_s::pack(bit_ref& bref) const } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(white_cells_to_rem_list_r13.is_present(), 1)); HANDLE_CODE(bref.pack(white_cells_to_add_mod_list_r13.is_present(), 1)); HANDLE_CODE(bref.pack(rmtc_cfg_r13.is_present(), 1)); HANDLE_CODE(bref.pack(carrier_freq_r13_present, 1)); if (white_cells_to_rem_list_r13.is_present()) { - HANDLE_CODE(pack_dyn_seq_of(bref, *white_cells_to_rem_list_r13, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(pack_dyn_seq_of(bref, *white_cells_to_rem_list_r13, 1, 32, integer_packer(1, 32))); } if (white_cells_to_add_mod_list_r13.is_present()) { HANDLE_CODE(pack_dyn_seq_of(bref, *white_cells_to_add_mod_list_r13, 1, 32)); @@ -61845,27 +61739,27 @@ SRSASN_CODE meas_obj_eutra_s::pack(bit_ref& bref) const HANDLE_CODE(rmtc_cfg_r13->pack(bref)); } if (carrier_freq_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r13, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r13, (uint32_t)65536u, (uint32_t)262143u)); } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(tx_res_pool_to_rem_list_r14.is_present(), 1)); HANDLE_CODE(bref.pack(tx_res_pool_to_add_list_r14.is_present(), 1)); HANDLE_CODE(bref.pack(fembms_mixed_carrier_r14_present, 1)); if (tx_res_pool_to_rem_list_r14.is_present()) { - HANDLE_CODE(pack_dyn_seq_of(bref, *tx_res_pool_to_rem_list_r14, 1, 72, UnalignedIntegerPacker(1, 72))); + HANDLE_CODE(pack_dyn_seq_of(bref, *tx_res_pool_to_rem_list_r14, 1, 72, integer_packer(1, 72))); } if (tx_res_pool_to_add_list_r14.is_present()) { - HANDLE_CODE(pack_dyn_seq_of(bref, *tx_res_pool_to_add_list_r14, 1, 72, UnalignedIntegerPacker(1, 72))); + HANDLE_CODE(pack_dyn_seq_of(bref, *tx_res_pool_to_add_list_r14, 1, 72, integer_packer(1, 72))); } if (fembms_mixed_carrier_r14_present) { HANDLE_CODE(bref.pack(fembms_mixed_carrier_r14, 1)); } } if (group_flags[5]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_sensing_cfg_r15.is_present(), 1)); if (meas_sensing_cfg_r15.is_present()) { @@ -61885,27 +61779,27 @@ SRSASN_CODE meas_obj_eutra_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(black_cells_to_add_mod_list_present, 1)); HANDLE_CODE(bref.unpack(cell_for_which_to_report_cgi_present, 1)); - HANDLE_CODE(unpack_unalign_integer(carrier_freq, bref, (uint16_t)0, (uint16_t)65535)); - HANDLE_CODE(unpack_enum(allowed_meas_bw, bref)); + HANDLE_CODE(unpack_integer(carrier_freq, bref, (uint32_t)0u, (uint32_t)65535u)); + HANDLE_CODE(allowed_meas_bw.unpack(bref)); HANDLE_CODE(bref.unpack(presence_ant_port1, 1)); HANDLE_CODE(neigh_cell_cfg.unpack(bref)); if (offset_freq_present) { - HANDLE_CODE(unpack_enum(offset_freq, bref)); + HANDLE_CODE(offset_freq.unpack(bref)); } if (cells_to_rem_list_present) { - HANDLE_CODE(unpack_dyn_seq_of(cells_to_rem_list, bref, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(unpack_dyn_seq_of(cells_to_rem_list, bref, 1, 32, integer_packer(1, 32))); } if (cells_to_add_mod_list_present) { HANDLE_CODE(unpack_dyn_seq_of(cells_to_add_mod_list, bref, 1, 32)); } if (black_cells_to_rem_list_present) { - HANDLE_CODE(unpack_dyn_seq_of(black_cells_to_rem_list, bref, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(unpack_dyn_seq_of(black_cells_to_rem_list, bref, 1, 32, integer_packer(1, 32))); } if (black_cells_to_add_mod_list_present) { HANDLE_CODE(unpack_dyn_seq_of(black_cells_to_add_mod_list, bref, 1, 32)); } if (cell_for_which_to_report_cgi_present) { - HANDLE_CODE(unpack_unalign_integer(cell_for_which_to_report_cgi, bref, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(unpack_integer(cell_for_which_to_report_cgi, bref, (uint16_t)0u, (uint16_t)503u)); } if (ext) { @@ -61913,21 +61807,21 @@ SRSASN_CODE meas_obj_eutra_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(meas_cycle_scell_r10_present, 1)); bool meas_sf_pattern_cfg_neigh_r10_present; HANDLE_CODE(bref.unpack(meas_sf_pattern_cfg_neigh_r10_present, 1)); meas_sf_pattern_cfg_neigh_r10.set_present(meas_sf_pattern_cfg_neigh_r10_present); if (meas_cycle_scell_r10_present) { - HANDLE_CODE(unpack_enum(meas_cycle_scell_r10, bref)); + HANDLE_CODE(meas_cycle_scell_r10.unpack(bref)); } if (meas_sf_pattern_cfg_neigh_r10.is_present()) { HANDLE_CODE(meas_sf_pattern_cfg_neigh_r10->unpack(bref)); } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(wideband_rsrq_meas_r11_present, 1)); if (wideband_rsrq_meas_r11_present) { @@ -61935,7 +61829,7 @@ SRSASN_CODE meas_obj_eutra_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool alt_ttt_cells_to_rem_list_r12_present; HANDLE_CODE(bref.unpack(alt_ttt_cells_to_rem_list_r12_present, 1)); @@ -61951,8 +61845,7 @@ SRSASN_CODE meas_obj_eutra_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(meas_ds_cfg_r12_present, 1)); meas_ds_cfg_r12.set_present(meas_ds_cfg_r12_present); if (alt_ttt_cells_to_rem_list_r12.is_present()) { - HANDLE_CODE( - unpack_dyn_seq_of(*alt_ttt_cells_to_rem_list_r12, bref, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(unpack_dyn_seq_of(*alt_ttt_cells_to_rem_list_r12, bref, 1, 32, integer_packer(1, 32))); } if (alt_ttt_cells_to_add_mod_list_r12.is_present()) { HANDLE_CODE(unpack_dyn_seq_of(*alt_ttt_cells_to_add_mod_list_r12, bref, 1, 32)); @@ -61968,7 +61861,7 @@ SRSASN_CODE meas_obj_eutra_s::unpack(bit_ref& bref) } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool white_cells_to_rem_list_r13_present; HANDLE_CODE(bref.unpack(white_cells_to_rem_list_r13_present, 1)); @@ -61981,8 +61874,7 @@ SRSASN_CODE meas_obj_eutra_s::unpack(bit_ref& bref) rmtc_cfg_r13.set_present(rmtc_cfg_r13_present); HANDLE_CODE(bref.unpack(carrier_freq_r13_present, 1)); if (white_cells_to_rem_list_r13.is_present()) { - HANDLE_CODE( - unpack_dyn_seq_of(*white_cells_to_rem_list_r13, bref, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(unpack_dyn_seq_of(*white_cells_to_rem_list_r13, bref, 1, 32, integer_packer(1, 32))); } if (white_cells_to_add_mod_list_r13.is_present()) { HANDLE_CODE(unpack_dyn_seq_of(*white_cells_to_add_mod_list_r13, bref, 1, 32)); @@ -61991,11 +61883,11 @@ SRSASN_CODE meas_obj_eutra_s::unpack(bit_ref& bref) HANDLE_CODE(rmtc_cfg_r13->unpack(bref)); } if (carrier_freq_r13_present) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r13, bref, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(carrier_freq_r13, bref, (uint32_t)65536u, (uint32_t)262143u)); } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool tx_res_pool_to_rem_list_r14_present; HANDLE_CODE(bref.unpack(tx_res_pool_to_rem_list_r14_present, 1)); @@ -62005,19 +61897,17 @@ SRSASN_CODE meas_obj_eutra_s::unpack(bit_ref& bref) tx_res_pool_to_add_list_r14.set_present(tx_res_pool_to_add_list_r14_present); HANDLE_CODE(bref.unpack(fembms_mixed_carrier_r14_present, 1)); if (tx_res_pool_to_rem_list_r14.is_present()) { - HANDLE_CODE( - unpack_dyn_seq_of(*tx_res_pool_to_rem_list_r14, bref, 1, 72, UnalignedIntegerPacker(1, 72))); + HANDLE_CODE(unpack_dyn_seq_of(*tx_res_pool_to_rem_list_r14, bref, 1, 72, integer_packer(1, 72))); } if (tx_res_pool_to_add_list_r14.is_present()) { - HANDLE_CODE( - unpack_dyn_seq_of(*tx_res_pool_to_add_list_r14, bref, 1, 72, UnalignedIntegerPacker(1, 72))); + HANDLE_CODE(unpack_dyn_seq_of(*tx_res_pool_to_add_list_r14, bref, 1, 72, integer_packer(1, 72))); } if (fembms_mixed_carrier_r14_present) { HANDLE_CODE(bref.unpack(fembms_mixed_carrier_r14, 1)); } } if (group_flags[5]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool meas_sensing_cfg_r15_present; HANDLE_CODE(bref.unpack(meas_sensing_cfg_r15_present, 1)); @@ -62172,12 +62062,12 @@ void meas_obj_eutra_s::t312_r12_c_::to_json(json_writer& j) const } SRSASN_CODE meas_obj_eutra_s::t312_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c)); + HANDLE_CODE(c.pack(bref)); break; default: log_invalid_choice_id(type_, "meas_obj_eutra_s::t312_r12_c_"); @@ -62188,13 +62078,13 @@ SRSASN_CODE meas_obj_eutra_s::t312_r12_c_::pack(bit_ref& bref) const SRSASN_CODE meas_obj_eutra_s::t312_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c, bref)); + HANDLE_CODE(c.unpack(bref)); break; default: log_invalid_choice_id(type_, "meas_obj_eutra_s::t312_r12_c_"); @@ -62206,13 +62096,13 @@ SRSASN_CODE meas_obj_eutra_s::t312_r12_c_::unpack(bit_ref& bref) // MeasObjectEUTRA-v9e0 ::= SEQUENCE SRSASN_CODE meas_obj_eutra_v9e0_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_v9e0, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, carrier_freq_v9e0, (uint32_t)65536u, (uint32_t)262143u)); return SRSASN_SUCCESS; } SRSASN_CODE meas_obj_eutra_v9e0_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq_v9e0, bref, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(carrier_freq_v9e0, bref, (uint32_t)65536u, (uint32_t)262143u)); return SRSASN_SUCCESS; } @@ -62233,7 +62123,7 @@ SRSASN_CODE meas_obj_geran_s::pack(bit_ref& bref) const HANDLE_CODE(carrier_freqs.pack(bref)); if (offset_freq_present) { - HANDLE_CODE(pack_unalign_integer(bref, offset_freq, (int8_t)-15, (int8_t)15)); + HANDLE_CODE(pack_integer(bref, offset_freq, (int8_t)-15, (int8_t)15)); } if (ncc_permitted_present) { HANDLE_CODE(ncc_permitted.pack(bref)); @@ -62253,7 +62143,7 @@ SRSASN_CODE meas_obj_geran_s::unpack(bit_ref& bref) HANDLE_CODE(carrier_freqs.unpack(bref)); if (offset_freq_present) { - HANDLE_CODE(unpack_unalign_integer(offset_freq, bref, (int8_t)-15, (int8_t)15)); + HANDLE_CODE(unpack_integer(offset_freq, bref, (int8_t)-15, (int8_t)15)); } if (ncc_permitted_present) { HANDLE_CODE(ncc_permitted.unpack(bref)); @@ -62293,27 +62183,26 @@ SRSASN_CODE meas_obj_nr_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(black_cells_to_add_mod_list_r15_present, 1)); HANDLE_CODE(bref.pack(cells_for_which_to_report_sftd_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r15, (uint32_t)0, (uint32_t)3279165)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r15, (uint32_t)0u, (uint32_t)3279165u)); HANDLE_CODE(rs_cfg_ssb_r15.pack(bref)); if (thresh_rs_idx_r15_present) { HANDLE_CODE(thresh_rs_idx_r15.pack(bref)); } if (max_rs_idx_cell_qual_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, max_rs_idx_cell_qual_r15, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(pack_integer(bref, max_rs_idx_cell_qual_r15, (uint8_t)1u, (uint8_t)16u)); } if (offset_freq_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, offset_freq_r15, (int8_t)-15, (int8_t)15)); + HANDLE_CODE(pack_integer(bref, offset_freq_r15, (int8_t)-15, (int8_t)15)); } if (black_cells_to_rem_list_r15_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, black_cells_to_rem_list_r15, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(pack_dyn_seq_of(bref, black_cells_to_rem_list_r15, 1, 32, integer_packer(1, 32))); } if (black_cells_to_add_mod_list_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, black_cells_to_add_mod_list_r15, 1, 32)); } - HANDLE_CODE(pack_unalign_integer(bref, quant_cfg_set_r15, (uint8_t)1, (uint8_t)2)); + HANDLE_CODE(pack_integer(bref, quant_cfg_set_r15, (uint8_t)1u, (uint8_t)2u)); if (cells_for_which_to_report_sftd_r15_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, cells_for_which_to_report_sftd_r15, 1, 3, UnalignedIntegerPacker(0, 1007))); + HANDLE_CODE(pack_dyn_seq_of(bref, cells_for_which_to_report_sftd_r15, 1, 3, integer_packer(0, 1007))); } if (ext) { @@ -62325,14 +62214,14 @@ SRSASN_CODE meas_obj_nr_r15_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(cell_for_which_to_report_cgi_r15_present, 1)); HANDLE_CODE(bref.pack(derive_ssb_idx_from_cell_r15_present, 1)); HANDLE_CODE(bref.pack(ss_rssi_meas_r15.is_present(), 1)); HANDLE_CODE(bref.pack(band_nr_r15.is_present(), 1)); if (cell_for_which_to_report_cgi_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, cell_for_which_to_report_cgi_r15, (uint16_t)0, (uint16_t)1007)); + HANDLE_CODE(pack_integer(bref, cell_for_which_to_report_cgi_r15, (uint16_t)0u, (uint16_t)1007u)); } if (derive_ssb_idx_from_cell_r15_present) { HANDLE_CODE(bref.pack(derive_ssb_idx_from_cell_r15, 1)); @@ -62357,27 +62246,26 @@ SRSASN_CODE meas_obj_nr_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(black_cells_to_add_mod_list_r15_present, 1)); HANDLE_CODE(bref.unpack(cells_for_which_to_report_sftd_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r15, bref, (uint32_t)0, (uint32_t)3279165)); + HANDLE_CODE(unpack_integer(carrier_freq_r15, bref, (uint32_t)0u, (uint32_t)3279165u)); HANDLE_CODE(rs_cfg_ssb_r15.unpack(bref)); if (thresh_rs_idx_r15_present) { HANDLE_CODE(thresh_rs_idx_r15.unpack(bref)); } if (max_rs_idx_cell_qual_r15_present) { - HANDLE_CODE(unpack_unalign_integer(max_rs_idx_cell_qual_r15, bref, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(unpack_integer(max_rs_idx_cell_qual_r15, bref, (uint8_t)1u, (uint8_t)16u)); } if (offset_freq_r15_present) { - HANDLE_CODE(unpack_unalign_integer(offset_freq_r15, bref, (int8_t)-15, (int8_t)15)); + HANDLE_CODE(unpack_integer(offset_freq_r15, bref, (int8_t)-15, (int8_t)15)); } if (black_cells_to_rem_list_r15_present) { - HANDLE_CODE(unpack_dyn_seq_of(black_cells_to_rem_list_r15, bref, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(unpack_dyn_seq_of(black_cells_to_rem_list_r15, bref, 1, 32, integer_packer(1, 32))); } if (black_cells_to_add_mod_list_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(black_cells_to_add_mod_list_r15, bref, 1, 32)); } - HANDLE_CODE(unpack_unalign_integer(quant_cfg_set_r15, bref, (uint8_t)1, (uint8_t)2)); + HANDLE_CODE(unpack_integer(quant_cfg_set_r15, bref, (uint8_t)1u, (uint8_t)2u)); if (cells_for_which_to_report_sftd_r15_present) { - HANDLE_CODE( - unpack_dyn_seq_of(cells_for_which_to_report_sftd_r15, bref, 1, 3, UnalignedIntegerPacker(0, 1007))); + HANDLE_CODE(unpack_dyn_seq_of(cells_for_which_to_report_sftd_r15, bref, 1, 3, integer_packer(0, 1007))); } if (ext) { @@ -62385,7 +62273,7 @@ SRSASN_CODE meas_obj_nr_r15_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(cell_for_which_to_report_cgi_r15_present, 1)); HANDLE_CODE(bref.unpack(derive_ssb_idx_from_cell_r15_present, 1)); @@ -62396,7 +62284,7 @@ SRSASN_CODE meas_obj_nr_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(band_nr_r15_present, 1)); band_nr_r15.set_present(band_nr_r15_present); if (cell_for_which_to_report_cgi_r15_present) { - HANDLE_CODE(unpack_unalign_integer(cell_for_which_to_report_cgi_r15, bref, (uint16_t)0, (uint16_t)1007)); + HANDLE_CODE(unpack_integer(cell_for_which_to_report_cgi_r15, bref, (uint16_t)0u, (uint16_t)1007u)); } if (derive_ssb_idx_from_cell_r15_present) { HANDLE_CODE(bref.unpack(derive_ssb_idx_from_cell_r15, 1)); @@ -62488,12 +62376,12 @@ void meas_obj_nr_r15_s::band_nr_r15_c_::to_json(json_writer& j) const } SRSASN_CODE meas_obj_nr_r15_s::band_nr_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c, (uint16_t)1, (uint16_t)1024)); + HANDLE_CODE(pack_integer(bref, c, (uint16_t)1u, (uint16_t)1024u)); break; default: log_invalid_choice_id(type_, "meas_obj_nr_r15_s::band_nr_r15_c_"); @@ -62504,13 +62392,13 @@ SRSASN_CODE meas_obj_nr_r15_s::band_nr_r15_c_::pack(bit_ref& bref) const SRSASN_CODE meas_obj_nr_r15_s::band_nr_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c, bref, (uint16_t)1, (uint16_t)1024)); + HANDLE_CODE(unpack_integer(c, bref, (uint16_t)1u, (uint16_t)1024u)); break; default: log_invalid_choice_id(type_, "meas_obj_nr_r15_s::band_nr_r15_c_"); @@ -62528,12 +62416,12 @@ SRSASN_CODE meas_obj_utra_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(cells_to_add_mod_list_present, 1)); HANDLE_CODE(bref.pack(cell_for_which_to_report_cgi_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(pack_integer(bref, carrier_freq, (uint16_t)0u, (uint16_t)16383u)); if (offset_freq_present) { - HANDLE_CODE(pack_unalign_integer(bref, offset_freq, (int8_t)-15, (int8_t)15)); + HANDLE_CODE(pack_integer(bref, offset_freq, (int8_t)-15, (int8_t)15)); } if (cells_to_rem_list_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, cells_to_rem_list, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(pack_dyn_seq_of(bref, cells_to_rem_list, 1, 32, integer_packer(1, 32))); } if (cells_to_add_mod_list_present) { HANDLE_CODE(cells_to_add_mod_list.pack(bref)); @@ -62549,7 +62437,7 @@ SRSASN_CODE meas_obj_utra_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(csg_allowed_report_cells_v930.is_present(), 1)); if (csg_allowed_report_cells_v930.is_present()) { @@ -62557,7 +62445,7 @@ SRSASN_CODE meas_obj_utra_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(reduced_meas_performance_r12_present, 1)); if (reduced_meas_performance_r12_present) { @@ -62575,12 +62463,12 @@ SRSASN_CODE meas_obj_utra_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(cells_to_add_mod_list_present, 1)); HANDLE_CODE(bref.unpack(cell_for_which_to_report_cgi_present, 1)); - HANDLE_CODE(unpack_unalign_integer(carrier_freq, bref, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(unpack_integer(carrier_freq, bref, (uint16_t)0u, (uint16_t)16383u)); if (offset_freq_present) { - HANDLE_CODE(unpack_unalign_integer(offset_freq, bref, (int8_t)-15, (int8_t)15)); + HANDLE_CODE(unpack_integer(offset_freq, bref, (int8_t)-15, (int8_t)15)); } if (cells_to_rem_list_present) { - HANDLE_CODE(unpack_dyn_seq_of(cells_to_rem_list, bref, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(unpack_dyn_seq_of(cells_to_rem_list, bref, 1, 32, integer_packer(1, 32))); } if (cells_to_add_mod_list_present) { HANDLE_CODE(cells_to_add_mod_list.unpack(bref)); @@ -62594,7 +62482,7 @@ SRSASN_CODE meas_obj_utra_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool csg_allowed_report_cells_v930_present; HANDLE_CODE(bref.unpack(csg_allowed_report_cells_v930_present, 1)); @@ -62604,7 +62492,7 @@ SRSASN_CODE meas_obj_utra_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(reduced_meas_performance_r12_present, 1)); if (reduced_meas_performance_r12_present) { @@ -62742,7 +62630,7 @@ void meas_obj_utra_s::cells_to_add_mod_list_c_::to_json(json_writer& j) const } SRSASN_CODE meas_obj_utra_s::cells_to_add_mod_list_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::cells_to_add_mod_list_utra_fdd: HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 1, 32)); @@ -62759,7 +62647,7 @@ SRSASN_CODE meas_obj_utra_s::cells_to_add_mod_list_c_::pack(bit_ref& bref) const SRSASN_CODE meas_obj_utra_s::cells_to_add_mod_list_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::cells_to_add_mod_list_utra_fdd: @@ -62837,13 +62725,13 @@ void meas_obj_utra_s::cell_for_which_to_report_cgi_c_::to_json(json_writer& j) c } SRSASN_CODE meas_obj_utra_s::cell_for_which_to_report_cgi_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::utra_fdd: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)511u)); break; case types::utra_tdd: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)127u)); break; default: log_invalid_choice_id(type_, "meas_obj_utra_s::cell_for_which_to_report_cgi_c_"); @@ -62854,14 +62742,14 @@ SRSASN_CODE meas_obj_utra_s::cell_for_which_to_report_cgi_c_::pack(bit_ref& bref SRSASN_CODE meas_obj_utra_s::cell_for_which_to_report_cgi_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::utra_fdd: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)511u)); break; case types::utra_tdd: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)127u)); break; default: log_invalid_choice_id(type_, "meas_obj_utra_s::cell_for_which_to_report_cgi_c_"); @@ -63026,10 +62914,10 @@ void meas_obj_wlan_r13_s::carrier_freq_r13_c_::to_json(json_writer& j) const } SRSASN_CODE meas_obj_wlan_r13_s::carrier_freq_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::band_ind_list_wlan_r13: - HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 1, 8, EnumPacker())); + HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 1, 8)); break; case types::carrier_info_list_wlan_r13: HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 1, 8)); @@ -63043,11 +62931,11 @@ SRSASN_CODE meas_obj_wlan_r13_s::carrier_freq_r13_c_::pack(bit_ref& bref) const SRSASN_CODE meas_obj_wlan_r13_s::carrier_freq_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::band_ind_list_wlan_r13: - HANDLE_CODE(unpack_dyn_seq_of(c.get(), bref, 1, 8, EnumPacker())); + HANDLE_CODE(unpack_dyn_seq_of(c.get(), bref, 1, 8)); break; case types::carrier_info_list_wlan_r13: HANDLE_CODE(unpack_dyn_seq_of(c.get(), bref, 1, 8)); @@ -63105,12 +62993,12 @@ void pwr_pref_ind_cfg_r11_c::to_json(json_writer& j) const } SRSASN_CODE pwr_pref_ind_cfg_r11_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.pwr_pref_ind_timer_r11)); + HANDLE_CODE(c.pwr_pref_ind_timer_r11.pack(bref)); break; default: log_invalid_choice_id(type_, "pwr_pref_ind_cfg_r11_c"); @@ -63121,13 +63009,13 @@ SRSASN_CODE pwr_pref_ind_cfg_r11_c::pack(bit_ref& bref) const SRSASN_CODE pwr_pref_ind_cfg_r11_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.pwr_pref_ind_timer_r11, bref)); + HANDLE_CODE(c.pwr_pref_ind_timer_r11.unpack(bref)); break; default: log_invalid_choice_id(type_, "pwr_pref_ind_cfg_r11_c"); @@ -63175,15 +63063,15 @@ void quant_cfg_nr_r15_s::to_json(json_writer& j) const SRSASN_CODE rrc_conn_recfg_v10l0_ies_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(mob_ctrl_info_v10l0_present, 1)); - HANDLE_CODE(bref.pack(s_cell_to_add_mod_list_v10l0_present, 1)); + HANDLE_CODE(bref.pack(scell_to_add_mod_list_v10l0_present, 1)); HANDLE_CODE(bref.pack(late_non_crit_ext_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (mob_ctrl_info_v10l0_present) { HANDLE_CODE(mob_ctrl_info_v10l0.pack(bref)); } - if (s_cell_to_add_mod_list_v10l0_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_to_add_mod_list_v10l0, 1, 4)); + if (scell_to_add_mod_list_v10l0_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_to_add_mod_list_v10l0, 1, 4)); } if (late_non_crit_ext_present) { HANDLE_CODE(late_non_crit_ext.pack(bref)); @@ -63197,15 +63085,15 @@ SRSASN_CODE rrc_conn_recfg_v10l0_ies_s::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_recfg_v10l0_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(mob_ctrl_info_v10l0_present, 1)); - HANDLE_CODE(bref.unpack(s_cell_to_add_mod_list_v10l0_present, 1)); + HANDLE_CODE(bref.unpack(scell_to_add_mod_list_v10l0_present, 1)); HANDLE_CODE(bref.unpack(late_non_crit_ext_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (mob_ctrl_info_v10l0_present) { HANDLE_CODE(mob_ctrl_info_v10l0.unpack(bref)); } - if (s_cell_to_add_mod_list_v10l0_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_to_add_mod_list_v10l0, bref, 1, 4)); + if (scell_to_add_mod_list_v10l0_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_to_add_mod_list_v10l0, bref, 1, 4)); } if (late_non_crit_ext_present) { HANDLE_CODE(late_non_crit_ext.unpack(bref)); @@ -63223,10 +63111,10 @@ void rrc_conn_recfg_v10l0_ies_s::to_json(json_writer& j) const j.write_fieldname("mobilityControlInfo-v10l0"); mob_ctrl_info_v10l0.to_json(j); } - if (s_cell_to_add_mod_list_v10l0_present) { + if (scell_to_add_mod_list_v10l0_present) { j.start_array("sCellToAddModList-v10l0"); - for (uint32_t i1 = 0; i1 < s_cell_to_add_mod_list_v10l0.size(); ++i1) { - s_cell_to_add_mod_list_v10l0[i1].to_json(j); + for (uint32_t i1 = 0; i1 < scell_to_add_mod_list_v10l0.size(); ++i1) { + scell_to_add_mod_list_v10l0[i1].to_json(j); } j.end_array(); } @@ -63327,16 +63215,16 @@ void rrc_conn_release_v1320_ies_s::to_json(json_writer& j) const SRSASN_CODE eutra_event_s::pack(bit_ref& bref) const { HANDLE_CODE(event_id.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, hysteresis, (uint8_t)0, (uint8_t)30)); - HANDLE_CODE(pack_enum(bref, time_to_trigger)); + HANDLE_CODE(pack_integer(bref, hysteresis, (uint8_t)0u, (uint8_t)30u)); + HANDLE_CODE(time_to_trigger.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE eutra_event_s::unpack(bit_ref& bref) { HANDLE_CODE(event_id.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(hysteresis, bref, (uint8_t)0, (uint8_t)30)); - HANDLE_CODE(unpack_enum(time_to_trigger, bref)); + HANDLE_CODE(unpack_integer(hysteresis, bref, (uint8_t)0u, (uint8_t)30u)); + HANDLE_CODE(time_to_trigger.unpack(bref)); return SRSASN_SUCCESS; } @@ -63350,7 +63238,7 @@ void eutra_event_s::to_json(json_writer& j) const j.end_obj(); } -void report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_::destroy_() +void eutra_event_s::event_id_c_::destroy_() { switch (type_) { case types::event_a1: @@ -63393,7 +63281,7 @@ void report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_::destroy_() break; } } -void report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_::set(types::options e) +void eutra_event_s::event_id_c_::set(types::options e) { destroy_(); type_ = e; @@ -63437,11 +63325,10 @@ void report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_::set(types::opti case types::nulltype: break; default: - log_invalid_choice_id(type_, "report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_"); + log_invalid_choice_id(type_, "eutra_event_s::event_id_c_"); } } -report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_::event_id_c_( - const report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_& other) +eutra_event_s::event_id_c_::event_id_c_(const eutra_event_s::event_id_c_& other) { type_ = other.type(); switch (type_) { @@ -63484,11 +63371,10 @@ report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_::event_id_c_( case types::nulltype: break; default: - log_invalid_choice_id(type_, "report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_"); + log_invalid_choice_id(type_, "eutra_event_s::event_id_c_"); } } -report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_& report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_:: - operator=(const report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_& other) +eutra_event_s::event_id_c_& eutra_event_s::event_id_c_::operator=(const eutra_event_s::event_id_c_& other) { if (this == &other) { return *this; @@ -63534,12 +63420,12 @@ report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_& report_cfg_eutra_s:: case types::nulltype: break; default: - log_invalid_choice_id(type_, "report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_"); + log_invalid_choice_id(type_, "eutra_event_s::event_id_c_"); } return *this; } -void report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_::to_json(json_writer& j) const +void eutra_event_s::event_id_c_::to_json(json_writer& j) const { j.start_obj(); switch (type_) { @@ -63629,13 +63515,13 @@ void report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_::to_json(json_wr j.end_obj(); break; default: - log_invalid_choice_id(type_, "report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_"); + log_invalid_choice_id(type_, "eutra_event_s::event_id_c_"); } j.end_obj(); } -SRSASN_CODE report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_::pack(bit_ref& bref) const +SRSASN_CODE eutra_event_s::event_id_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::event_a1: HANDLE_CODE(c.get().a1_thres.pack(bref)); @@ -63644,7 +63530,7 @@ SRSASN_CODE report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_::pack(bit HANDLE_CODE(c.get().a2_thres.pack(bref)); break; case types::event_a3: - HANDLE_CODE(pack_unalign_integer(bref, c.get().a3_offset, (int8_t)-30, (int8_t)30)); + HANDLE_CODE(pack_integer(bref, c.get().a3_offset, (int8_t)-30, (int8_t)30)); HANDLE_CODE(bref.pack(c.get().report_on_leave, 1)); break; case types::event_a4: @@ -63655,49 +63541,49 @@ SRSASN_CODE report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_::pack(bit HANDLE_CODE(c.get().a5_thres2.pack(bref)); break; case types::event_a6_r10: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get().a6_offset_r10, (int8_t)-30, (int8_t)30)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get().a6_offset_r10, (int8_t)-30, (int8_t)30)); HANDLE_CODE(bref.pack(c.get().a6_report_on_leave_r10, 1)); } break; case types::event_c1_r12: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get().c1_thres_r12, (uint8_t)0, (uint8_t)97)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get().c1_thres_r12, (uint8_t)0u, (uint8_t)97u)); HANDLE_CODE(bref.pack(c.get().c1_report_on_leave_r12, 1)); } break; case types::event_c2_r12: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get().c2_ref_csi_rs_r12, (uint8_t)1, (uint8_t)96)); - HANDLE_CODE(pack_unalign_integer(bref, c.get().c2_offset_r12, (int8_t)-30, (int8_t)30)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get().c2_ref_csi_rs_r12, (uint8_t)1u, (uint8_t)96u)); + HANDLE_CODE(pack_integer(bref, c.get().c2_offset_r12, (int8_t)-30, (int8_t)30)); HANDLE_CODE(bref.pack(c.get().c2_report_on_leave_r12, 1)); } break; case types::event_v1_r14: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get().v1_thres_r14, (uint8_t)0, (uint8_t)100)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get().v1_thres_r14, (uint8_t)0u, (uint8_t)100u)); } break; case types::event_v2_r14: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get().v2_thres_r14, (uint8_t)0, (uint8_t)100)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get().v2_thres_r14, (uint8_t)0u, (uint8_t)100u)); } break; case types::event_h1_r15: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get().h1_thres_offset_r15, (uint16_t)0, (uint16_t)300)); - HANDLE_CODE(pack_unalign_integer(bref, c.get().h1_hysteresis_minus15, (uint8_t)1, (uint8_t)16)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get().h1_thres_offset_r15, (uint16_t)0u, (uint16_t)300u)); + HANDLE_CODE(pack_integer(bref, c.get().h1_hysteresis_minus15, (uint8_t)1u, (uint8_t)16u)); } break; case types::event_h2_r15: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get().h2_thres_offset_r15, (uint16_t)0, (uint16_t)300)); - HANDLE_CODE(pack_unalign_integer(bref, c.get().h2_hysteresis_minus15, (uint8_t)1, (uint8_t)16)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get().h2_thres_offset_r15, (uint16_t)0u, (uint16_t)300u)); + HANDLE_CODE(pack_integer(bref, c.get().h2_hysteresis_minus15, (uint8_t)1u, (uint8_t)16u)); } break; default: - log_invalid_choice_id(type_, "report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_"); + log_invalid_choice_id(type_, "eutra_event_s::event_id_c_"); return SRSASN_ERROR_ENCODE_FAIL; } return SRSASN_SUCCESS; } -SRSASN_CODE report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_::unpack(bit_ref& bref) +SRSASN_CODE eutra_event_s::event_id_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::event_a1: @@ -63707,7 +63593,7 @@ SRSASN_CODE report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_::unpack(b HANDLE_CODE(c.get().a2_thres.unpack(bref)); break; case types::event_a3: - HANDLE_CODE(unpack_unalign_integer(c.get().a3_offset, bref, (int8_t)-30, (int8_t)30)); + HANDLE_CODE(unpack_integer(c.get().a3_offset, bref, (int8_t)-30, (int8_t)30)); HANDLE_CODE(bref.unpack(c.get().report_on_leave, 1)); break; case types::event_a4: @@ -63718,45 +63604,41 @@ SRSASN_CODE report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_::unpack(b HANDLE_CODE(c.get().a5_thres2.unpack(bref)); break; case types::event_a6_r10: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get().a6_offset_r10, bref, (int8_t)-30, (int8_t)30)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get().a6_offset_r10, bref, (int8_t)-30, (int8_t)30)); HANDLE_CODE(bref.unpack(c.get().a6_report_on_leave_r10, 1)); } break; case types::event_c1_r12: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get().c1_thres_r12, bref, (uint8_t)0, (uint8_t)97)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get().c1_thres_r12, bref, (uint8_t)0u, (uint8_t)97u)); HANDLE_CODE(bref.unpack(c.get().c1_report_on_leave_r12, 1)); } break; case types::event_c2_r12: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get().c2_ref_csi_rs_r12, bref, (uint8_t)1, (uint8_t)96)); - HANDLE_CODE(unpack_unalign_integer(c.get().c2_offset_r12, bref, (int8_t)-30, (int8_t)30)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get().c2_ref_csi_rs_r12, bref, (uint8_t)1u, (uint8_t)96u)); + HANDLE_CODE(unpack_integer(c.get().c2_offset_r12, bref, (int8_t)-30, (int8_t)30)); HANDLE_CODE(bref.unpack(c.get().c2_report_on_leave_r12, 1)); } break; case types::event_v1_r14: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get().v1_thres_r14, bref, (uint8_t)0, (uint8_t)100)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get().v1_thres_r14, bref, (uint8_t)0u, (uint8_t)100u)); } break; case types::event_v2_r14: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get().v2_thres_r14, bref, (uint8_t)0, (uint8_t)100)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get().v2_thres_r14, bref, (uint8_t)0u, (uint8_t)100u)); } break; case types::event_h1_r15: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE( - unpack_unalign_integer(c.get().h1_thres_offset_r15, bref, (uint16_t)0, (uint16_t)300)); - HANDLE_CODE( - unpack_unalign_integer(c.get().h1_hysteresis_minus15, bref, (uint8_t)1, (uint8_t)16)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get().h1_thres_offset_r15, bref, (uint16_t)0u, (uint16_t)300u)); + HANDLE_CODE(unpack_integer(c.get().h1_hysteresis_minus15, bref, (uint8_t)1u, (uint8_t)16u)); } break; case types::event_h2_r15: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE( - unpack_unalign_integer(c.get().h2_thres_offset_r15, bref, (uint16_t)0, (uint16_t)300)); - HANDLE_CODE( - unpack_unalign_integer(c.get().h2_hysteresis_minus15, bref, (uint8_t)1, (uint8_t)16)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get().h2_thres_offset_r15, bref, (uint16_t)0u, (uint16_t)300u)); + HANDLE_CODE(unpack_integer(c.get().h2_hysteresis_minus15, bref, (uint8_t)1u, (uint8_t)16u)); } break; default: - log_invalid_choice_id(type_, "report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_"); + log_invalid_choice_id(type_, "eutra_event_s::event_id_c_"); return SRSASN_ERROR_DECODE_FAIL; } return SRSASN_SUCCESS; @@ -63767,11 +63649,11 @@ SRSASN_CODE report_cfg_eutra_s::pack(bit_ref& bref) const { bref.pack(ext, 1); HANDLE_CODE(trigger_type.pack(bref)); - HANDLE_CODE(pack_enum(bref, trigger_quant)); - HANDLE_CODE(pack_enum(bref, report_quant)); - HANDLE_CODE(pack_unalign_integer(bref, max_report_cells, (uint8_t)1, (uint8_t)8)); - HANDLE_CODE(pack_enum(bref, report_interv)); - HANDLE_CODE(pack_enum(bref, report_amount)); + HANDLE_CODE(trigger_quant.pack(bref)); + HANDLE_CODE(report_quant.pack(bref)); + HANDLE_CODE(pack_integer(bref, max_report_cells, (uint8_t)1u, (uint8_t)8u)); + HANDLE_CODE(report_interv.pack(bref)); + HANDLE_CODE(report_amount.pack(bref)); if (ext) { ext_groups_packer_guard group_flags; @@ -63779,10 +63661,10 @@ SRSASN_CODE report_cfg_eutra_s::pack(bit_ref& bref) const group_flags[0] |= ue_rx_tx_time_diff_periodical_r9_present; group_flags[1] |= include_location_info_r10_present; group_flags[1] |= report_add_neigh_meas_r10_present; - group_flags[2] |= alternative_time_to_trigger_r12.is_present(); + group_flags[2] |= alt_time_to_trigger_r12.is_present(); group_flags[2] |= use_t312_r12_present; group_flags[2] |= use_ps_cell_r12_present; - group_flags[2] |= a_n_thres1_v1250.is_present(); + group_flags[2] |= an_thres1_v1250.is_present(); group_flags[2] |= a5_thres2_v1250.is_present(); group_flags[2] |= report_strongest_csi_rss_r12_present; group_flags[2] |= report_crs_meas_r12_present; @@ -63799,35 +63681,35 @@ SRSASN_CODE report_cfg_eutra_s::pack(bit_ref& bref) const group_flags[7] |= include_bt_meas_r15.is_present(); group_flags[7] |= include_wlan_meas_r15.is_present(); group_flags[7] |= purpose_r15_present; - group_flags[7] |= nof_triggering_cells_r15_present; + group_flags[7] |= nof_trigger_cells_r15_present; group_flags[7] |= a4_a5_report_on_leave_r15_present; group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(si_request_for_ho_r9_present, 1)); HANDLE_CODE(bref.pack(ue_rx_tx_time_diff_periodical_r9_present, 1)); } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(include_location_info_r10_present, 1)); HANDLE_CODE(bref.pack(report_add_neigh_meas_r10_present, 1)); } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); - HANDLE_CODE(bref.pack(alternative_time_to_trigger_r12.is_present(), 1)); + HANDLE_CODE(bref.pack(alt_time_to_trigger_r12.is_present(), 1)); HANDLE_CODE(bref.pack(use_t312_r12_present, 1)); HANDLE_CODE(bref.pack(use_ps_cell_r12_present, 1)); - HANDLE_CODE(bref.pack(a_n_thres1_v1250.is_present(), 1)); + HANDLE_CODE(bref.pack(an_thres1_v1250.is_present(), 1)); HANDLE_CODE(bref.pack(a5_thres2_v1250.is_present(), 1)); HANDLE_CODE(bref.pack(report_strongest_csi_rss_r12_present, 1)); HANDLE_CODE(bref.pack(report_crs_meas_r12_present, 1)); HANDLE_CODE(bref.pack(trigger_quant_csi_rs_r12_present, 1)); - if (alternative_time_to_trigger_r12.is_present()) { - HANDLE_CODE(alternative_time_to_trigger_r12->pack(bref)); + if (alt_time_to_trigger_r12.is_present()) { + HANDLE_CODE(alt_time_to_trigger_r12->pack(bref)); } if (use_t312_r12_present) { HANDLE_CODE(bref.pack(use_t312_r12, 1)); @@ -63835,8 +63717,8 @@ SRSASN_CODE report_cfg_eutra_s::pack(bit_ref& bref) const if (use_ps_cell_r12_present) { HANDLE_CODE(bref.pack(use_ps_cell_r12, 1)); } - if (a_n_thres1_v1250.is_present()) { - HANDLE_CODE(a_n_thres1_v1250->pack(bref)); + if (an_thres1_v1250.is_present()) { + HANDLE_CODE(an_thres1_v1250->pack(bref)); } if (a5_thres2_v1250.is_present()) { HANDLE_CODE(a5_thres2_v1250->pack(bref)); @@ -63852,7 +63734,7 @@ SRSASN_CODE report_cfg_eutra_s::pack(bit_ref& bref) const } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(report_sstd_meas_r13_present, 1)); HANDLE_CODE(bref.pack(rs_sinr_cfg_r13.is_present(), 1)); @@ -63877,7 +63759,7 @@ SRSASN_CODE report_cfg_eutra_s::pack(bit_ref& bref) const } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ue_rx_tx_time_diff_periodical_tdd_r13_present, 1)); if (ue_rx_tx_time_diff_periodical_tdd_r13_present) { @@ -63885,28 +63767,28 @@ SRSASN_CODE report_cfg_eutra_s::pack(bit_ref& bref) const } } if (group_flags[5]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(purpose_v1430_present, 1)); if (purpose_v1430_present) { - HANDLE_CODE(pack_enum(bref, purpose_v1430)); + HANDLE_CODE(purpose_v1430.pack(bref)); } } if (group_flags[6]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(max_report_rs_idx_r15_present, 1)); if (max_report_rs_idx_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, max_report_rs_idx_r15, (uint8_t)0, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, max_report_rs_idx_r15, (uint8_t)0u, (uint8_t)32u)); } } if (group_flags[7]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(include_bt_meas_r15.is_present(), 1)); HANDLE_CODE(bref.pack(include_wlan_meas_r15.is_present(), 1)); HANDLE_CODE(bref.pack(purpose_r15_present, 1)); - HANDLE_CODE(bref.pack(nof_triggering_cells_r15_present, 1)); + HANDLE_CODE(bref.pack(nof_trigger_cells_r15_present, 1)); HANDLE_CODE(bref.pack(a4_a5_report_on_leave_r15_present, 1)); if (include_bt_meas_r15.is_present()) { HANDLE_CODE(include_bt_meas_r15->pack(bref)); @@ -63914,8 +63796,8 @@ SRSASN_CODE report_cfg_eutra_s::pack(bit_ref& bref) const if (include_wlan_meas_r15.is_present()) { HANDLE_CODE(include_wlan_meas_r15->pack(bref)); } - if (nof_triggering_cells_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, nof_triggering_cells_r15, (uint8_t)2, (uint8_t)8)); + if (nof_trigger_cells_r15_present) { + HANDLE_CODE(pack_integer(bref, nof_trigger_cells_r15, (uint8_t)2u, (uint8_t)8u)); } if (a4_a5_report_on_leave_r15_present) { HANDLE_CODE(bref.pack(a4_a5_report_on_leave_r15, 1)); @@ -63928,47 +63810,47 @@ SRSASN_CODE report_cfg_eutra_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); HANDLE_CODE(trigger_type.unpack(bref)); - HANDLE_CODE(unpack_enum(trigger_quant, bref)); - HANDLE_CODE(unpack_enum(report_quant, bref)); - HANDLE_CODE(unpack_unalign_integer(max_report_cells, bref, (uint8_t)1, (uint8_t)8)); - HANDLE_CODE(unpack_enum(report_interv, bref)); - HANDLE_CODE(unpack_enum(report_amount, bref)); + HANDLE_CODE(trigger_quant.unpack(bref)); + HANDLE_CODE(report_quant.unpack(bref)); + HANDLE_CODE(unpack_integer(max_report_cells, bref, (uint8_t)1u, (uint8_t)8u)); + HANDLE_CODE(report_interv.unpack(bref)); + HANDLE_CODE(report_amount.unpack(bref)); if (ext) { ext_groups_unpacker_guard group_flags(8); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(si_request_for_ho_r9_present, 1)); HANDLE_CODE(bref.unpack(ue_rx_tx_time_diff_periodical_r9_present, 1)); } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(include_location_info_r10_present, 1)); HANDLE_CODE(bref.unpack(report_add_neigh_meas_r10_present, 1)); } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); - bool alternative_time_to_trigger_r12_present; - HANDLE_CODE(bref.unpack(alternative_time_to_trigger_r12_present, 1)); - alternative_time_to_trigger_r12.set_present(alternative_time_to_trigger_r12_present); + bool alt_time_to_trigger_r12_present; + HANDLE_CODE(bref.unpack(alt_time_to_trigger_r12_present, 1)); + alt_time_to_trigger_r12.set_present(alt_time_to_trigger_r12_present); HANDLE_CODE(bref.unpack(use_t312_r12_present, 1)); HANDLE_CODE(bref.unpack(use_ps_cell_r12_present, 1)); - bool a_n_thres1_v1250_present; - HANDLE_CODE(bref.unpack(a_n_thres1_v1250_present, 1)); - a_n_thres1_v1250.set_present(a_n_thres1_v1250_present); + bool an_thres1_v1250_present; + HANDLE_CODE(bref.unpack(an_thres1_v1250_present, 1)); + an_thres1_v1250.set_present(an_thres1_v1250_present); bool a5_thres2_v1250_present; HANDLE_CODE(bref.unpack(a5_thres2_v1250_present, 1)); a5_thres2_v1250.set_present(a5_thres2_v1250_present); HANDLE_CODE(bref.unpack(report_strongest_csi_rss_r12_present, 1)); HANDLE_CODE(bref.unpack(report_crs_meas_r12_present, 1)); HANDLE_CODE(bref.unpack(trigger_quant_csi_rs_r12_present, 1)); - if (alternative_time_to_trigger_r12.is_present()) { - HANDLE_CODE(alternative_time_to_trigger_r12->unpack(bref)); + if (alt_time_to_trigger_r12.is_present()) { + HANDLE_CODE(alt_time_to_trigger_r12->unpack(bref)); } if (use_t312_r12_present) { HANDLE_CODE(bref.unpack(use_t312_r12, 1)); @@ -63976,8 +63858,8 @@ SRSASN_CODE report_cfg_eutra_s::unpack(bit_ref& bref) if (use_ps_cell_r12_present) { HANDLE_CODE(bref.unpack(use_ps_cell_r12, 1)); } - if (a_n_thres1_v1250.is_present()) { - HANDLE_CODE(a_n_thres1_v1250->unpack(bref)); + if (an_thres1_v1250.is_present()) { + HANDLE_CODE(an_thres1_v1250->unpack(bref)); } if (a5_thres2_v1250.is_present()) { HANDLE_CODE(a5_thres2_v1250->unpack(bref)); @@ -63993,7 +63875,7 @@ SRSASN_CODE report_cfg_eutra_s::unpack(bit_ref& bref) } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(report_sstd_meas_r13_present, 1)); bool rs_sinr_cfg_r13_present; @@ -64024,7 +63906,7 @@ SRSASN_CODE report_cfg_eutra_s::unpack(bit_ref& bref) } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(ue_rx_tx_time_diff_periodical_tdd_r13_present, 1)); if (ue_rx_tx_time_diff_periodical_tdd_r13_present) { @@ -64032,23 +63914,23 @@ SRSASN_CODE report_cfg_eutra_s::unpack(bit_ref& bref) } } if (group_flags[5]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(purpose_v1430_present, 1)); if (purpose_v1430_present) { - HANDLE_CODE(unpack_enum(purpose_v1430, bref)); + HANDLE_CODE(purpose_v1430.unpack(bref)); } } if (group_flags[6]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(max_report_rs_idx_r15_present, 1)); if (max_report_rs_idx_r15_present) { - HANDLE_CODE(unpack_unalign_integer(max_report_rs_idx_r15, bref, (uint8_t)0, (uint8_t)32)); + HANDLE_CODE(unpack_integer(max_report_rs_idx_r15, bref, (uint8_t)0u, (uint8_t)32u)); } } if (group_flags[7]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool include_bt_meas_r15_present; HANDLE_CODE(bref.unpack(include_bt_meas_r15_present, 1)); @@ -64057,7 +63939,7 @@ SRSASN_CODE report_cfg_eutra_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(include_wlan_meas_r15_present, 1)); include_wlan_meas_r15.set_present(include_wlan_meas_r15_present); HANDLE_CODE(bref.unpack(purpose_r15_present, 1)); - HANDLE_CODE(bref.unpack(nof_triggering_cells_r15_present, 1)); + HANDLE_CODE(bref.unpack(nof_trigger_cells_r15_present, 1)); HANDLE_CODE(bref.unpack(a4_a5_report_on_leave_r15_present, 1)); if (include_bt_meas_r15.is_present()) { HANDLE_CODE(include_bt_meas_r15->unpack(bref)); @@ -64065,8 +63947,8 @@ SRSASN_CODE report_cfg_eutra_s::unpack(bit_ref& bref) if (include_wlan_meas_r15.is_present()) { HANDLE_CODE(include_wlan_meas_r15->unpack(bref)); } - if (nof_triggering_cells_r15_present) { - HANDLE_CODE(unpack_unalign_integer(nof_triggering_cells_r15, bref, (uint8_t)2, (uint8_t)8)); + if (nof_trigger_cells_r15_present) { + HANDLE_CODE(unpack_integer(nof_trigger_cells_r15, bref, (uint8_t)2u, (uint8_t)8u)); } if (a4_a5_report_on_leave_r15_present) { HANDLE_CODE(bref.unpack(a4_a5_report_on_leave_r15, 1)); @@ -64098,9 +63980,9 @@ void report_cfg_eutra_s::to_json(json_writer& j) const if (report_add_neigh_meas_r10_present) { j.write_str("reportAddNeighMeas-r10", "setup"); } - if (alternative_time_to_trigger_r12.is_present()) { + if (alt_time_to_trigger_r12.is_present()) { j.write_fieldname("alternativeTimeToTrigger-r12"); - alternative_time_to_trigger_r12->to_json(j); + alt_time_to_trigger_r12->to_json(j); } if (use_t312_r12_present) { j.write_bool("useT312-r12", use_t312_r12); @@ -64108,9 +63990,9 @@ void report_cfg_eutra_s::to_json(json_writer& j) const if (use_ps_cell_r12_present) { j.write_bool("usePSCell-r12", use_ps_cell_r12); } - if (a_n_thres1_v1250.is_present()) { + if (an_thres1_v1250.is_present()) { j.write_fieldname("aN-Threshold1-v1250"); - a_n_thres1_v1250->to_json(j); + an_thres1_v1250->to_json(j); } if (a5_thres2_v1250.is_present()) { j.write_fieldname("a5-Threshold2-v1250"); @@ -64166,8 +64048,8 @@ void report_cfg_eutra_s::to_json(json_writer& j) const if (purpose_r15_present) { j.write_str("purpose-r15", "sensing"); } - if (nof_triggering_cells_r15_present) { - j.write_int("numberOfTriggeringCells-r15", nof_triggering_cells_r15); + if (nof_trigger_cells_r15_present) { + j.write_int("numberOfTriggeringCells-r15", nof_trigger_cells_r15); } if (a4_a5_report_on_leave_r15_present) { j.write_bool("a4-a5-ReportOnLeave-r15", a4_a5_report_on_leave_r15); @@ -64265,13 +64147,13 @@ void report_cfg_eutra_s::trigger_type_c_::to_json(json_writer& j) const } SRSASN_CODE report_cfg_eutra_s::trigger_type_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::event: HANDLE_CODE(c.get().pack(bref)); break; case types::periodical: - HANDLE_CODE(pack_enum(bref, c.get().purpose)); + HANDLE_CODE(c.get().purpose.pack(bref)); break; default: log_invalid_choice_id(type_, "report_cfg_eutra_s::trigger_type_c_"); @@ -64282,14 +64164,14 @@ SRSASN_CODE report_cfg_eutra_s::trigger_type_c_::pack(bit_ref& bref) const SRSASN_CODE report_cfg_eutra_s::trigger_type_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::event: HANDLE_CODE(c.get().unpack(bref)); break; case types::periodical: - HANDLE_CODE(unpack_enum(c.get().purpose, bref)); + HANDLE_CODE(c.get().purpose.unpack(bref)); break; default: log_invalid_choice_id(type_, "report_cfg_eutra_s::trigger_type_c_"); @@ -64298,11 +64180,11 @@ SRSASN_CODE report_cfg_eutra_s::trigger_type_c_::unpack(bit_ref& bref) return SRSASN_SUCCESS; } -void report_cfg_eutra_s::alternative_time_to_trigger_r12_c_::set(types::options e) +void report_cfg_eutra_s::alt_time_to_trigger_r12_c_::set(types::options e) { type_ = e; } -void report_cfg_eutra_s::alternative_time_to_trigger_r12_c_::to_json(json_writer& j) const +void report_cfg_eutra_s::alt_time_to_trigger_r12_c_::to_json(json_writer& j) const { j.start_obj(); switch (type_) { @@ -64312,38 +64194,38 @@ void report_cfg_eutra_s::alternative_time_to_trigger_r12_c_::to_json(json_writer j.write_str("setup", c.to_string()); break; default: - log_invalid_choice_id(type_, "report_cfg_eutra_s::alternative_time_to_trigger_r12_c_"); + log_invalid_choice_id(type_, "report_cfg_eutra_s::alt_time_to_trigger_r12_c_"); } j.end_obj(); } -SRSASN_CODE report_cfg_eutra_s::alternative_time_to_trigger_r12_c_::pack(bit_ref& bref) const +SRSASN_CODE report_cfg_eutra_s::alt_time_to_trigger_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c)); + HANDLE_CODE(c.pack(bref)); break; default: - log_invalid_choice_id(type_, "report_cfg_eutra_s::alternative_time_to_trigger_r12_c_"); + log_invalid_choice_id(type_, "report_cfg_eutra_s::alt_time_to_trigger_r12_c_"); return SRSASN_ERROR_ENCODE_FAIL; } return SRSASN_SUCCESS; } -SRSASN_CODE report_cfg_eutra_s::alternative_time_to_trigger_r12_c_::unpack(bit_ref& bref) +SRSASN_CODE report_cfg_eutra_s::alt_time_to_trigger_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c, bref)); + HANDLE_CODE(c.unpack(bref)); break; default: - log_invalid_choice_id(type_, "report_cfg_eutra_s::alternative_time_to_trigger_r12_c_"); + log_invalid_choice_id(type_, "report_cfg_eutra_s::alt_time_to_trigger_r12_c_"); return SRSASN_ERROR_DECODE_FAIL; } return SRSASN_SUCCESS; @@ -64365,8 +64247,8 @@ void report_cfg_eutra_s::rs_sinr_cfg_r13_c_::to_json(json_writer& j) const if (c.trigger_quant_v1310_present) { j.write_str("triggerQuantity-v1310", "sinr"); } - if (c.a_n_thres1_r13_present) { - j.write_int("aN-Threshold1-r13", c.a_n_thres1_r13); + if (c.an_thres1_r13_present) { + j.write_int("aN-Threshold1-r13", c.an_thres1_r13); } if (c.a5_thres2_r13_present) { j.write_int("a5-Threshold2-r13", c.a5_thres2_r13); @@ -64381,21 +64263,21 @@ void report_cfg_eutra_s::rs_sinr_cfg_r13_c_::to_json(json_writer& j) const } SRSASN_CODE report_cfg_eutra_s::rs_sinr_cfg_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.trigger_quant_v1310_present, 1)); - HANDLE_CODE(bref.pack(c.a_n_thres1_r13_present, 1)); + HANDLE_CODE(bref.pack(c.an_thres1_r13_present, 1)); HANDLE_CODE(bref.pack(c.a5_thres2_r13_present, 1)); - if (c.a_n_thres1_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.a_n_thres1_r13, (uint8_t)0, (uint8_t)127)); + if (c.an_thres1_r13_present) { + HANDLE_CODE(pack_integer(bref, c.an_thres1_r13, (uint8_t)0u, (uint8_t)127u)); } if (c.a5_thres2_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.a5_thres2_r13, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, c.a5_thres2_r13, (uint8_t)0u, (uint8_t)127u)); } - HANDLE_CODE(pack_enum(bref, c.report_quant_v1310)); + HANDLE_CODE(c.report_quant_v1310.pack(bref)); break; default: log_invalid_choice_id(type_, "report_cfg_eutra_s::rs_sinr_cfg_r13_c_"); @@ -64406,22 +64288,22 @@ SRSASN_CODE report_cfg_eutra_s::rs_sinr_cfg_r13_c_::pack(bit_ref& bref) const SRSASN_CODE report_cfg_eutra_s::rs_sinr_cfg_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.unpack(c.trigger_quant_v1310_present, 1)); - HANDLE_CODE(bref.unpack(c.a_n_thres1_r13_present, 1)); + HANDLE_CODE(bref.unpack(c.an_thres1_r13_present, 1)); HANDLE_CODE(bref.unpack(c.a5_thres2_r13_present, 1)); - if (c.a_n_thres1_r13_present) { - HANDLE_CODE(unpack_unalign_integer(c.a_n_thres1_r13, bref, (uint8_t)0, (uint8_t)127)); + if (c.an_thres1_r13_present) { + HANDLE_CODE(unpack_integer(c.an_thres1_r13, bref, (uint8_t)0u, (uint8_t)127u)); } if (c.a5_thres2_r13_present) { - HANDLE_CODE(unpack_unalign_integer(c.a5_thres2_r13, bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(c.a5_thres2_r13, bref, (uint8_t)0u, (uint8_t)127u)); } - HANDLE_CODE(unpack_enum(c.report_quant_v1310, bref)); + HANDLE_CODE(c.report_quant_v1310.unpack(bref)); break; default: log_invalid_choice_id(type_, "report_cfg_eutra_s::rs_sinr_cfg_r13_c_"); @@ -64435,9 +64317,9 @@ SRSASN_CODE report_cfg_inter_rat_s::pack(bit_ref& bref) const { bref.pack(ext, 1); HANDLE_CODE(trigger_type.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, max_report_cells, (uint8_t)1, (uint8_t)8)); - HANDLE_CODE(pack_enum(bref, report_interv)); - HANDLE_CODE(pack_enum(bref, report_amount)); + HANDLE_CODE(pack_integer(bref, max_report_cells, (uint8_t)1u, (uint8_t)8u)); + HANDLE_CODE(report_interv.pack(bref)); + HANDLE_CODE(report_amount.pack(bref)); if (ext) { ext_groups_packer_guard group_flags; @@ -64455,17 +64337,17 @@ SRSASN_CODE report_cfg_inter_rat_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(si_request_for_ho_r9_present, 1)); } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(report_quant_utra_fdd_r10_present, 1)); } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(include_location_info_r11_present, 1)); if (include_location_info_r11_present) { @@ -64473,7 +64355,7 @@ SRSASN_CODE report_cfg_inter_rat_s::pack(bit_ref& bref) const } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(b2_thres1_v1250.is_present(), 1)); if (b2_thres1_v1250.is_present()) { @@ -64481,7 +64363,7 @@ SRSASN_CODE report_cfg_inter_rat_s::pack(bit_ref& bref) const } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(report_quant_wlan_r13.is_present(), 1)); if (report_quant_wlan_r13.is_present()) { @@ -64489,7 +64371,7 @@ SRSASN_CODE report_cfg_inter_rat_s::pack(bit_ref& bref) const } } if (group_flags[5]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(report_any_wlan_r14_present, 1)); if (report_any_wlan_r14_present) { @@ -64497,7 +64379,7 @@ SRSASN_CODE report_cfg_inter_rat_s::pack(bit_ref& bref) const } } if (group_flags[6]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(report_quant_cell_nr_r15.is_present(), 1)); HANDLE_CODE(bref.pack(max_report_rs_idx_r15_present, 1)); @@ -64508,7 +64390,7 @@ SRSASN_CODE report_cfg_inter_rat_s::pack(bit_ref& bref) const HANDLE_CODE(report_quant_cell_nr_r15->pack(bref)); } if (max_report_rs_idx_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, max_report_rs_idx_r15, (uint8_t)0, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, max_report_rs_idx_r15, (uint8_t)0u, (uint8_t)32u)); } if (report_quant_rs_idx_nr_r15.is_present()) { HANDLE_CODE(report_quant_rs_idx_nr_r15->pack(bref)); @@ -64517,7 +64399,7 @@ SRSASN_CODE report_cfg_inter_rat_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(report_rs_idx_results_nr, 1)); } if (report_sftd_meas_r15_present) { - HANDLE_CODE(pack_enum(bref, report_sftd_meas_r15)); + HANDLE_CODE(report_sftd_meas_r15.pack(bref)); } } } @@ -64527,26 +64409,26 @@ SRSASN_CODE report_cfg_inter_rat_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); HANDLE_CODE(trigger_type.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(max_report_cells, bref, (uint8_t)1, (uint8_t)8)); - HANDLE_CODE(unpack_enum(report_interv, bref)); - HANDLE_CODE(unpack_enum(report_amount, bref)); + HANDLE_CODE(unpack_integer(max_report_cells, bref, (uint8_t)1u, (uint8_t)8u)); + HANDLE_CODE(report_interv.unpack(bref)); + HANDLE_CODE(report_amount.unpack(bref)); if (ext) { ext_groups_unpacker_guard group_flags(7); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(si_request_for_ho_r9_present, 1)); } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(report_quant_utra_fdd_r10_present, 1)); } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(include_location_info_r11_present, 1)); if (include_location_info_r11_present) { @@ -64554,7 +64436,7 @@ SRSASN_CODE report_cfg_inter_rat_s::unpack(bit_ref& bref) } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool b2_thres1_v1250_present; HANDLE_CODE(bref.unpack(b2_thres1_v1250_present, 1)); @@ -64564,7 +64446,7 @@ SRSASN_CODE report_cfg_inter_rat_s::unpack(bit_ref& bref) } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool report_quant_wlan_r13_present; HANDLE_CODE(bref.unpack(report_quant_wlan_r13_present, 1)); @@ -64574,7 +64456,7 @@ SRSASN_CODE report_cfg_inter_rat_s::unpack(bit_ref& bref) } } if (group_flags[5]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(report_any_wlan_r14_present, 1)); if (report_any_wlan_r14_present) { @@ -64582,7 +64464,7 @@ SRSASN_CODE report_cfg_inter_rat_s::unpack(bit_ref& bref) } } if (group_flags[6]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool report_quant_cell_nr_r15_present; HANDLE_CODE(bref.unpack(report_quant_cell_nr_r15_present, 1)); @@ -64597,7 +64479,7 @@ SRSASN_CODE report_cfg_inter_rat_s::unpack(bit_ref& bref) HANDLE_CODE(report_quant_cell_nr_r15->unpack(bref)); } if (max_report_rs_idx_r15_present) { - HANDLE_CODE(unpack_unalign_integer(max_report_rs_idx_r15, bref, (uint8_t)0, (uint8_t)32)); + HANDLE_CODE(unpack_integer(max_report_rs_idx_r15, bref, (uint8_t)0u, (uint8_t)32u)); } if (report_quant_rs_idx_nr_r15.is_present()) { HANDLE_CODE(report_quant_rs_idx_nr_r15->unpack(bref)); @@ -64606,7 +64488,7 @@ SRSASN_CODE report_cfg_inter_rat_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(report_rs_idx_results_nr, 1)); } if (report_sftd_meas_r15_present) { - HANDLE_CODE(unpack_enum(report_sftd_meas_r15, bref)); + HANDLE_CODE(report_sftd_meas_r15.unpack(bref)); } } } @@ -64756,15 +64638,15 @@ void report_cfg_inter_rat_s::trigger_type_c_::to_json(json_writer& j) const } SRSASN_CODE report_cfg_inter_rat_s::trigger_type_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::event: HANDLE_CODE(c.get().event_id.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, c.get().hysteresis, (uint8_t)0, (uint8_t)30)); - HANDLE_CODE(pack_enum(bref, c.get().time_to_trigger)); + HANDLE_CODE(pack_integer(bref, c.get().hysteresis, (uint8_t)0u, (uint8_t)30u)); + HANDLE_CODE(c.get().time_to_trigger.pack(bref)); break; case types::periodical: - HANDLE_CODE(pack_enum(bref, c.get().purpose)); + HANDLE_CODE(c.get().purpose.pack(bref)); break; default: log_invalid_choice_id(type_, "report_cfg_inter_rat_s::trigger_type_c_"); @@ -64775,16 +64657,16 @@ SRSASN_CODE report_cfg_inter_rat_s::trigger_type_c_::pack(bit_ref& bref) const SRSASN_CODE report_cfg_inter_rat_s::trigger_type_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::event: HANDLE_CODE(c.get().event_id.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(c.get().hysteresis, bref, (uint8_t)0, (uint8_t)30)); - HANDLE_CODE(unpack_enum(c.get().time_to_trigger, bref)); + HANDLE_CODE(unpack_integer(c.get().hysteresis, bref, (uint8_t)0u, (uint8_t)30u)); + HANDLE_CODE(c.get().time_to_trigger.unpack(bref)); break; case types::periodical: - HANDLE_CODE(unpack_enum(c.get().purpose, bref)); + HANDLE_CODE(c.get().purpose.unpack(bref)); break; default: log_invalid_choice_id(type_, "report_cfg_inter_rat_s::trigger_type_c_"); @@ -64987,7 +64869,7 @@ void report_cfg_inter_rat_s::trigger_type_c_::event_s_::event_id_c_::to_json(jso } SRSASN_CODE report_cfg_inter_rat_s::trigger_type_c_::event_s_::event_id_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::event_b1: HANDLE_CODE(c.get().b1_thres.pack(bref)); @@ -64997,25 +64879,25 @@ SRSASN_CODE report_cfg_inter_rat_s::trigger_type_c_::event_s_::event_id_c_::pack HANDLE_CODE(c.get().b2_thres2.pack(bref)); break; case types::event_w1_r13: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get().w1_thres_r13, (uint8_t)0, (uint8_t)141)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get().w1_thres_r13, (uint8_t)0u, (uint8_t)141u)); } break; case types::event_w2_r13: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get().w2_thres1_r13, (uint8_t)0, (uint8_t)141)); - HANDLE_CODE(pack_unalign_integer(bref, c.get().w2_thres2_r13, (uint8_t)0, (uint8_t)141)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get().w2_thres1_r13, (uint8_t)0u, (uint8_t)141u)); + HANDLE_CODE(pack_integer(bref, c.get().w2_thres2_r13, (uint8_t)0u, (uint8_t)141u)); } break; case types::event_w3_r13: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get().w3_thres_r13, (uint8_t)0, (uint8_t)141)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get().w3_thres_r13, (uint8_t)0u, (uint8_t)141u)); } break; case types::event_b1_nr_r15: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().b1_thres_nr_r15.pack(bref)); HANDLE_CODE(bref.pack(c.get().report_on_leave_r15, 1)); } break; case types::event_b2_nr_r15: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().b2_thres1_r15.pack(bref)); HANDLE_CODE(c.get().b2_thres2_nr_r15.pack(bref)); HANDLE_CODE(bref.pack(c.get().report_on_leave_r15, 1)); @@ -65029,7 +64911,7 @@ SRSASN_CODE report_cfg_inter_rat_s::trigger_type_c_::event_s_::event_id_c_::pack SRSASN_CODE report_cfg_inter_rat_s::trigger_type_c_::event_s_::event_id_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::event_b1: @@ -65040,25 +64922,25 @@ SRSASN_CODE report_cfg_inter_rat_s::trigger_type_c_::event_s_::event_id_c_::unpa HANDLE_CODE(c.get().b2_thres2.unpack(bref)); break; case types::event_w1_r13: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get().w1_thres_r13, bref, (uint8_t)0, (uint8_t)141)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get().w1_thres_r13, bref, (uint8_t)0u, (uint8_t)141u)); } break; case types::event_w2_r13: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get().w2_thres1_r13, bref, (uint8_t)0, (uint8_t)141)); - HANDLE_CODE(unpack_unalign_integer(c.get().w2_thres2_r13, bref, (uint8_t)0, (uint8_t)141)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get().w2_thres1_r13, bref, (uint8_t)0u, (uint8_t)141u)); + HANDLE_CODE(unpack_integer(c.get().w2_thres2_r13, bref, (uint8_t)0u, (uint8_t)141u)); } break; case types::event_w3_r13: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get().w3_thres_r13, bref, (uint8_t)0, (uint8_t)141)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get().w3_thres_r13, bref, (uint8_t)0u, (uint8_t)141u)); } break; case types::event_b1_nr_r15: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().b1_thres_nr_r15.unpack(bref)); HANDLE_CODE(bref.unpack(c.get().report_on_leave_r15, 1)); } break; case types::event_b2_nr_r15: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().b2_thres1_r15.unpack(bref)); HANDLE_CODE(c.get().b2_thres2_nr_r15.unpack(bref)); HANDLE_CODE(bref.unpack(c.get().report_on_leave_r15, 1)); @@ -65171,16 +65053,16 @@ void report_cfg_inter_rat_s::trigger_type_c_::event_s_::event_id_c_::event_b1_s_ SRSASN_CODE report_cfg_inter_rat_s::trigger_type_c_::event_s_::event_id_c_::event_b1_s_::b1_thres_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::b1_thres_utra: HANDLE_CODE(c.get().pack(bref)); break; case types::b1_thres_geran: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)63u)); break; case types::b1_thres_cdma2000: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)63u)); break; default: log_invalid_choice_id(type_, @@ -65193,17 +65075,17 @@ SRSASN_CODE report_cfg_inter_rat_s::trigger_type_c_::event_s_::event_id_c_::event_b1_s_::b1_thres_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::b1_thres_utra: HANDLE_CODE(c.get().unpack(bref)); break; case types::b1_thres_geran: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)63u)); break; case types::b1_thres_cdma2000: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)63u)); break; default: log_invalid_choice_id(type_, @@ -65314,16 +65196,16 @@ void report_cfg_inter_rat_s::trigger_type_c_::event_s_::event_id_c_::event_b2_s_ SRSASN_CODE report_cfg_inter_rat_s::trigger_type_c_::event_s_::event_id_c_::event_b2_s_::b2_thres2_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::b2_thres2_utra: HANDLE_CODE(c.get().pack(bref)); break; case types::b2_thres2_geran: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)63u)); break; case types::b2_thres2_cdma2000: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)63u)); break; default: log_invalid_choice_id( @@ -65336,17 +65218,17 @@ SRSASN_CODE report_cfg_inter_rat_s::trigger_type_c_::event_s_::event_id_c_::event_b2_s_::b2_thres2_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::b2_thres2_utra: HANDLE_CODE(c.get().unpack(bref)); break; case types::b2_thres2_geran: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)63u)); break; case types::b2_thres2_cdma2000: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)63u)); break; default: log_invalid_choice_id( @@ -65376,12 +65258,12 @@ void report_cfg_inter_rat_s::b2_thres1_v1250_c_::to_json(json_writer& j) const } SRSASN_CODE report_cfg_inter_rat_s::b2_thres1_v1250_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(pack_integer(bref, c, (int8_t)-30, (int8_t)46)); break; default: log_invalid_choice_id(type_, "report_cfg_inter_rat_s::b2_thres1_v1250_c_"); @@ -65392,13 +65274,13 @@ SRSASN_CODE report_cfg_inter_rat_s::b2_thres1_v1250_c_::pack(bit_ref& bref) cons SRSASN_CODE report_cfg_inter_rat_s::b2_thres1_v1250_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c, bref, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(unpack_integer(c, bref, (int8_t)-30, (int8_t)46)); break; default: log_invalid_choice_id(type_, "report_cfg_inter_rat_s::b2_thres1_v1250_c_"); @@ -65683,17 +65565,17 @@ void logged_meas_cfg_v1250_ies_s::to_json(json_writer& j) const // MeasIdToAddMod ::= SEQUENCE SRSASN_CODE meas_id_to_add_mod_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, meas_id, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(pack_unalign_integer(bref, meas_obj_id, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(pack_unalign_integer(bref, report_cfg_id, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, meas_id, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(pack_integer(bref, meas_obj_id, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(pack_integer(bref, report_cfg_id, (uint8_t)1u, (uint8_t)32u)); return SRSASN_SUCCESS; } SRSASN_CODE meas_id_to_add_mod_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(meas_id, bref, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(unpack_unalign_integer(meas_obj_id, bref, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(unpack_unalign_integer(report_cfg_id, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(meas_id, bref, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(unpack_integer(meas_obj_id, bref, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(unpack_integer(report_cfg_id, bref, (uint8_t)1u, (uint8_t)32u)); return SRSASN_SUCCESS; } @@ -65712,7 +65594,7 @@ SRSASN_CODE meas_id_to_add_mod_v1310_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(meas_obj_id_v1310_present, 1)); if (meas_obj_id_v1310_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_obj_id_v1310, (uint8_t)33, (uint8_t)64)); + HANDLE_CODE(pack_integer(bref, meas_obj_id_v1310, (uint8_t)33u, (uint8_t)64u)); } return SRSASN_SUCCESS; @@ -65722,7 +65604,7 @@ SRSASN_CODE meas_id_to_add_mod_v1310_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(meas_obj_id_v1310_present, 1)); if (meas_obj_id_v1310_present) { - HANDLE_CODE(unpack_unalign_integer(meas_obj_id_v1310, bref, (uint8_t)33, (uint8_t)64)); + HANDLE_CODE(unpack_integer(meas_obj_id_v1310, bref, (uint8_t)33u, (uint8_t)64u)); } return SRSASN_SUCCESS; @@ -65739,17 +65621,17 @@ void meas_id_to_add_mod_v1310_s::to_json(json_writer& j) const // MeasIdToAddModExt-r12 ::= SEQUENCE SRSASN_CODE meas_id_to_add_mod_ext_r12_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, meas_id_v1250, (uint8_t)33, (uint8_t)64)); - HANDLE_CODE(pack_unalign_integer(bref, meas_obj_id_r12, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(pack_unalign_integer(bref, report_cfg_id_r12, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, meas_id_v1250, (uint8_t)33u, (uint8_t)64u)); + HANDLE_CODE(pack_integer(bref, meas_obj_id_r12, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(pack_integer(bref, report_cfg_id_r12, (uint8_t)1u, (uint8_t)32u)); return SRSASN_SUCCESS; } SRSASN_CODE meas_id_to_add_mod_ext_r12_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(meas_id_v1250, bref, (uint8_t)33, (uint8_t)64)); - HANDLE_CODE(unpack_unalign_integer(meas_obj_id_r12, bref, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(unpack_unalign_integer(report_cfg_id_r12, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(meas_id_v1250, bref, (uint8_t)33u, (uint8_t)64u)); + HANDLE_CODE(unpack_integer(meas_obj_id_r12, bref, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(unpack_integer(report_cfg_id_r12, bref, (uint8_t)1u, (uint8_t)32u)); return SRSASN_SUCCESS; } @@ -65765,14 +65647,14 @@ void meas_id_to_add_mod_ext_r12_s::to_json(json_writer& j) const // MeasObjectToAddMod ::= SEQUENCE SRSASN_CODE meas_obj_to_add_mod_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, meas_obj_id, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, meas_obj_id, (uint8_t)1u, (uint8_t)32u)); HANDLE_CODE(meas_obj.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE meas_obj_to_add_mod_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(meas_obj_id, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(meas_obj_id, bref, (uint8_t)1u, (uint8_t)32u)); HANDLE_CODE(meas_obj.unpack(bref)); return SRSASN_SUCCESS; @@ -65937,7 +65819,7 @@ void meas_obj_to_add_mod_s::meas_obj_c_::to_json(json_writer& j) const } SRSASN_CODE meas_obj_to_add_mod_s::meas_obj_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::meas_obj_eutra: HANDLE_CODE(c.get().pack(bref)); @@ -65952,11 +65834,11 @@ SRSASN_CODE meas_obj_to_add_mod_s::meas_obj_c_::pack(bit_ref& bref) const HANDLE_CODE(c.get().pack(bref)); break; case types::meas_obj_wlan_r13: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; case types::meas_obj_nr_r15: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; default: @@ -65968,7 +65850,7 @@ SRSASN_CODE meas_obj_to_add_mod_s::meas_obj_c_::pack(bit_ref& bref) const SRSASN_CODE meas_obj_to_add_mod_s::meas_obj_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::meas_obj_eutra: @@ -65984,11 +65866,11 @@ SRSASN_CODE meas_obj_to_add_mod_s::meas_obj_c_::unpack(bit_ref& bref) HANDLE_CODE(c.get().unpack(bref)); break; case types::meas_obj_wlan_r13: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; case types::meas_obj_nr_r15: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; default: @@ -66032,14 +65914,14 @@ void meas_obj_to_add_mod_v9e0_s::to_json(json_writer& j) const // MeasObjectToAddModExt-r13 ::= SEQUENCE SRSASN_CODE meas_obj_to_add_mod_ext_r13_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, meas_obj_id_r13, (uint8_t)33, (uint8_t)64)); + HANDLE_CODE(pack_integer(bref, meas_obj_id_r13, (uint8_t)33u, (uint8_t)64u)); HANDLE_CODE(meas_obj_r13.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE meas_obj_to_add_mod_ext_r13_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(meas_obj_id_r13, bref, (uint8_t)33, (uint8_t)64)); + HANDLE_CODE(unpack_integer(meas_obj_id_r13, bref, (uint8_t)33u, (uint8_t)64u)); HANDLE_CODE(meas_obj_r13.unpack(bref)); return SRSASN_SUCCESS; @@ -66205,7 +66087,7 @@ void meas_obj_to_add_mod_ext_r13_s::meas_obj_r13_c_::to_json(json_writer& j) con } SRSASN_CODE meas_obj_to_add_mod_ext_r13_s::meas_obj_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::meas_obj_eutra_r13: HANDLE_CODE(c.get().pack(bref)); @@ -66220,11 +66102,11 @@ SRSASN_CODE meas_obj_to_add_mod_ext_r13_s::meas_obj_r13_c_::pack(bit_ref& bref) HANDLE_CODE(c.get().pack(bref)); break; case types::meas_obj_wlan_v1320: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; case types::meas_obj_nr_r15: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; default: @@ -66236,7 +66118,7 @@ SRSASN_CODE meas_obj_to_add_mod_ext_r13_s::meas_obj_r13_c_::pack(bit_ref& bref) SRSASN_CODE meas_obj_to_add_mod_ext_r13_s::meas_obj_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::meas_obj_eutra_r13: @@ -66252,11 +66134,11 @@ SRSASN_CODE meas_obj_to_add_mod_ext_r13_s::meas_obj_r13_c_::unpack(bit_ref& bref HANDLE_CODE(c.get().unpack(bref)); break; case types::meas_obj_wlan_v1320: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; case types::meas_obj_nr_r15: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; default: @@ -66331,7 +66213,7 @@ SRSASN_CODE other_cfg_r9_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(idc_cfg_r11.is_present(), 1)); HANDLE_CODE(bref.pack(pwr_pref_ind_cfg_r11.is_present(), 1)); @@ -66347,14 +66229,14 @@ SRSASN_CODE other_cfg_r9_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(bw_pref_ind_timer_r14_present, 1)); HANDLE_CODE(bref.pack(sps_assist_info_report_r14_present, 1)); HANDLE_CODE(bref.pack(delay_budget_report_cfg_r14.is_present(), 1)); HANDLE_CODE(bref.pack(rlm_report_cfg_r14.is_present(), 1)); if (bw_pref_ind_timer_r14_present) { - HANDLE_CODE(pack_enum(bref, bw_pref_ind_timer_r14)); + HANDLE_CODE(bw_pref_ind_timer_r14.pack(bref)); } if (sps_assist_info_report_r14_present) { HANDLE_CODE(bref.pack(sps_assist_info_report_r14, 1)); @@ -66367,7 +66249,7 @@ SRSASN_CODE other_cfg_r9_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(overheat_assist_cfg_r14.is_present(), 1)); if (overheat_assist_cfg_r14.is_present()) { @@ -66375,7 +66257,7 @@ SRSASN_CODE other_cfg_r9_s::pack(bit_ref& bref) const } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_cfg_app_layer_r15.is_present(), 1)); HANDLE_CODE(bref.pack(ailc_bit_cfg_r15_present, 1)); @@ -66411,7 +66293,7 @@ SRSASN_CODE other_cfg_r9_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool idc_cfg_r11_present; HANDLE_CODE(bref.unpack(idc_cfg_r11_present, 1)); @@ -66433,7 +66315,7 @@ SRSASN_CODE other_cfg_r9_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(bw_pref_ind_timer_r14_present, 1)); HANDLE_CODE(bref.unpack(sps_assist_info_report_r14_present, 1)); @@ -66444,7 +66326,7 @@ SRSASN_CODE other_cfg_r9_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(rlm_report_cfg_r14_present, 1)); rlm_report_cfg_r14.set_present(rlm_report_cfg_r14_present); if (bw_pref_ind_timer_r14_present) { - HANDLE_CODE(unpack_enum(bw_pref_ind_timer_r14, bref)); + HANDLE_CODE(bw_pref_ind_timer_r14.unpack(bref)); } if (sps_assist_info_report_r14_present) { HANDLE_CODE(bref.unpack(sps_assist_info_report_r14, 1)); @@ -66457,7 +66339,7 @@ SRSASN_CODE other_cfg_r9_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool overheat_assist_cfg_r14_present; HANDLE_CODE(bref.unpack(overheat_assist_cfg_r14_present, 1)); @@ -66467,7 +66349,7 @@ SRSASN_CODE other_cfg_r9_s::unpack(bit_ref& bref) } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool meas_cfg_app_layer_r15_present; HANDLE_CODE(bref.unpack(meas_cfg_app_layer_r15_present, 1)); @@ -66575,12 +66457,12 @@ void other_cfg_r9_s::delay_budget_report_cfg_r14_c_::to_json(json_writer& j) con } SRSASN_CODE other_cfg_r9_s::delay_budget_report_cfg_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.delay_budget_report_prohibit_timer_r14)); + HANDLE_CODE(c.delay_budget_report_prohibit_timer_r14.pack(bref)); break; default: log_invalid_choice_id(type_, "other_cfg_r9_s::delay_budget_report_cfg_r14_c_"); @@ -66591,13 +66473,13 @@ SRSASN_CODE other_cfg_r9_s::delay_budget_report_cfg_r14_c_::pack(bit_ref& bref) SRSASN_CODE other_cfg_r9_s::delay_budget_report_cfg_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.delay_budget_report_prohibit_timer_r14, bref)); + HANDLE_CODE(c.delay_budget_report_prohibit_timer_r14.unpack(bref)); break; default: log_invalid_choice_id(type_, "other_cfg_r9_s::delay_budget_report_cfg_r14_c_"); @@ -66632,13 +66514,13 @@ void other_cfg_r9_s::rlm_report_cfg_r14_c_::to_json(json_writer& j) const } SRSASN_CODE other_cfg_r9_s::rlm_report_cfg_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.pack(c.rlm_report_rep_mpdcch_r14_present, 1)); - HANDLE_CODE(pack_enum(bref, c.rlm_report_timer_r14)); + HANDLE_CODE(c.rlm_report_timer_r14.pack(bref)); break; default: log_invalid_choice_id(type_, "other_cfg_r9_s::rlm_report_cfg_r14_c_"); @@ -66649,14 +66531,14 @@ SRSASN_CODE other_cfg_r9_s::rlm_report_cfg_r14_c_::pack(bit_ref& bref) const SRSASN_CODE other_cfg_r9_s::rlm_report_cfg_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(bref.unpack(c.rlm_report_rep_mpdcch_r14_present, 1)); - HANDLE_CODE(unpack_enum(c.rlm_report_timer_r14, bref)); + HANDLE_CODE(c.rlm_report_timer_r14.unpack(bref)); break; default: log_invalid_choice_id(type_, "other_cfg_r9_s::rlm_report_cfg_r14_c_"); @@ -66688,12 +66570,12 @@ void other_cfg_r9_s::overheat_assist_cfg_r14_c_::to_json(json_writer& j) const } SRSASN_CODE other_cfg_r9_s::overheat_assist_cfg_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.overheat_ind_prohibit_timer_r14)); + HANDLE_CODE(c.overheat_ind_prohibit_timer_r14.pack(bref)); break; default: log_invalid_choice_id(type_, "other_cfg_r9_s::overheat_assist_cfg_r14_c_"); @@ -66704,13 +66586,13 @@ SRSASN_CODE other_cfg_r9_s::overheat_assist_cfg_r14_c_::pack(bit_ref& bref) cons SRSASN_CODE other_cfg_r9_s::overheat_assist_cfg_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.overheat_ind_prohibit_timer_r14, bref)); + HANDLE_CODE(c.overheat_ind_prohibit_timer_r14.unpack(bref)); break; default: log_invalid_choice_id(type_, "other_cfg_r9_s::overheat_assist_cfg_r14_c_"); @@ -66743,13 +66625,13 @@ void other_cfg_r9_s::meas_cfg_app_layer_r15_c_::to_json(json_writer& j) const } SRSASN_CODE other_cfg_r9_s::meas_cfg_app_layer_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(c.meas_cfg_app_layer_container_r15.pack(bref)); - HANDLE_CODE(pack_enum(bref, c.service_type)); + HANDLE_CODE(c.service_type.pack(bref)); break; default: log_invalid_choice_id(type_, "other_cfg_r9_s::meas_cfg_app_layer_r15_c_"); @@ -66760,14 +66642,14 @@ SRSASN_CODE other_cfg_r9_s::meas_cfg_app_layer_r15_c_::pack(bit_ref& bref) const SRSASN_CODE other_cfg_r9_s::meas_cfg_app_layer_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: HANDLE_CODE(c.meas_cfg_app_layer_container_r15.unpack(bref)); - HANDLE_CODE(unpack_enum(c.service_type, bref)); + HANDLE_CODE(c.service_type.unpack(bref)); break; default: log_invalid_choice_id(type_, "other_cfg_r9_s::meas_cfg_app_layer_r15_c_"); @@ -66786,19 +66668,19 @@ SRSASN_CODE prach_cfg_v1310_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(init_ce_level_r13_present, 1)); if (rsrp_thress_prach_info_list_r13_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, rsrp_thress_prach_info_list_r13, 1, 3, UnalignedIntegerPacker(0, 97))); + HANDLE_CODE(pack_dyn_seq_of(bref, rsrp_thress_prach_info_list_r13, 1, 3, integer_packer(0, 97))); } if (mpdcch_start_sf_css_ra_r13_present) { HANDLE_CODE(mpdcch_start_sf_css_ra_r13.pack(bref)); } if (prach_hop_offset_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, prach_hop_offset_r13, (uint8_t)0, (uint8_t)94)); + HANDLE_CODE(pack_integer(bref, prach_hop_offset_r13, (uint8_t)0u, (uint8_t)94u)); } if (prach_params_list_ce_r13_present) { HANDLE_CODE(pack_dyn_seq_of(bref, prach_params_list_ce_r13, 1, 4)); } if (init_ce_level_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, init_ce_level_r13, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, init_ce_level_r13, (uint8_t)0u, (uint8_t)3u)); } return SRSASN_SUCCESS; @@ -66812,19 +66694,19 @@ SRSASN_CODE prach_cfg_v1310_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(init_ce_level_r13_present, 1)); if (rsrp_thress_prach_info_list_r13_present) { - HANDLE_CODE(unpack_dyn_seq_of(rsrp_thress_prach_info_list_r13, bref, 1, 3, UnalignedIntegerPacker(0, 97))); + HANDLE_CODE(unpack_dyn_seq_of(rsrp_thress_prach_info_list_r13, bref, 1, 3, integer_packer(0, 97))); } if (mpdcch_start_sf_css_ra_r13_present) { HANDLE_CODE(mpdcch_start_sf_css_ra_r13.unpack(bref)); } if (prach_hop_offset_r13_present) { - HANDLE_CODE(unpack_unalign_integer(prach_hop_offset_r13, bref, (uint8_t)0, (uint8_t)94)); + HANDLE_CODE(unpack_integer(prach_hop_offset_r13, bref, (uint8_t)0u, (uint8_t)94u)); } if (prach_params_list_ce_r13_present) { HANDLE_CODE(unpack_dyn_seq_of(prach_params_list_ce_r13, bref, 1, 4)); } if (init_ce_level_r13_present) { - HANDLE_CODE(unpack_unalign_integer(init_ce_level_r13, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(init_ce_level_r13, bref, (uint8_t)0u, (uint8_t)3u)); } return SRSASN_SUCCESS; @@ -66921,13 +66803,13 @@ void prach_cfg_v1310_s::mpdcch_start_sf_css_ra_r13_c_::to_json(json_writer& j) c } SRSASN_CODE prach_cfg_v1310_s::mpdcch_start_sf_css_ra_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::fdd_r13: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; case types::tdd_r13: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; default: log_invalid_choice_id(type_, "prach_cfg_v1310_s::mpdcch_start_sf_css_ra_r13_c_"); @@ -66938,14 +66820,14 @@ SRSASN_CODE prach_cfg_v1310_s::mpdcch_start_sf_css_ra_r13_c_::pack(bit_ref& bref SRSASN_CODE prach_cfg_v1310_s::mpdcch_start_sf_css_ra_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::fdd_r13: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; case types::tdd_r13: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; default: log_invalid_choice_id(type_, "prach_cfg_v1310_s::mpdcch_start_sf_css_ra_r13_c_"); @@ -66957,13 +66839,13 @@ SRSASN_CODE prach_cfg_v1310_s::mpdcch_start_sf_css_ra_r13_c_::unpack(bit_ref& br // QuantityConfigCDMA2000 ::= SEQUENCE SRSASN_CODE quant_cfg_cdma2000_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, meas_quant_cdma2000)); + HANDLE_CODE(meas_quant_cdma2000.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE quant_cfg_cdma2000_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(meas_quant_cdma2000, bref)); + HANDLE_CODE(meas_quant_cdma2000.unpack(bref)); return SRSASN_SUCCESS; } @@ -66981,10 +66863,10 @@ SRSASN_CODE quant_cfg_eutra_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(filt_coef_rsrq_present, 1)); if (filt_coef_rsrp_present) { - HANDLE_CODE(pack_enum(bref, filt_coef_rsrp)); + HANDLE_CODE(filt_coef_rsrp.pack(bref)); } if (filt_coef_rsrq_present) { - HANDLE_CODE(pack_enum(bref, filt_coef_rsrq)); + HANDLE_CODE(filt_coef_rsrq.pack(bref)); } return SRSASN_SUCCESS; @@ -66995,10 +66877,10 @@ SRSASN_CODE quant_cfg_eutra_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(filt_coef_rsrq_present, 1)); if (filt_coef_rsrp_present) { - HANDLE_CODE(unpack_enum(filt_coef_rsrp, bref)); + HANDLE_CODE(filt_coef_rsrp.unpack(bref)); } if (filt_coef_rsrq_present) { - HANDLE_CODE(unpack_enum(filt_coef_rsrq, bref)); + HANDLE_CODE(filt_coef_rsrq.unpack(bref)); } return SRSASN_SUCCESS; @@ -67021,7 +66903,7 @@ SRSASN_CODE quant_cfg_eutra_v1250_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(filt_coef_csi_rsrp_r12_present, 1)); if (filt_coef_csi_rsrp_r12_present) { - HANDLE_CODE(pack_enum(bref, filt_coef_csi_rsrp_r12)); + HANDLE_CODE(filt_coef_csi_rsrp_r12.pack(bref)); } return SRSASN_SUCCESS; @@ -67031,7 +66913,7 @@ SRSASN_CODE quant_cfg_eutra_v1250_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(filt_coef_csi_rsrp_r12_present, 1)); if (filt_coef_csi_rsrp_r12_present) { - HANDLE_CODE(unpack_enum(filt_coef_csi_rsrp_r12, bref)); + HANDLE_CODE(filt_coef_csi_rsrp_r12.unpack(bref)); } return SRSASN_SUCCESS; @@ -67051,7 +66933,7 @@ SRSASN_CODE quant_cfg_eutra_v1310_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(filt_coef_rs_sinr_r13_present, 1)); if (filt_coef_rs_sinr_r13_present) { - HANDLE_CODE(pack_enum(bref, filt_coef_rs_sinr_r13)); + HANDLE_CODE(filt_coef_rs_sinr_r13.pack(bref)); } return SRSASN_SUCCESS; @@ -67061,7 +66943,7 @@ SRSASN_CODE quant_cfg_eutra_v1310_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(filt_coef_rs_sinr_r13_present, 1)); if (filt_coef_rs_sinr_r13_present) { - HANDLE_CODE(unpack_enum(filt_coef_rs_sinr_r13, bref)); + HANDLE_CODE(filt_coef_rs_sinr_r13.unpack(bref)); } return SRSASN_SUCCESS; @@ -67081,7 +66963,7 @@ SRSASN_CODE quant_cfg_geran_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(filt_coef_present, 1)); if (filt_coef_present) { - HANDLE_CODE(pack_enum(bref, filt_coef)); + HANDLE_CODE(filt_coef.pack(bref)); } return SRSASN_SUCCESS; @@ -67091,7 +66973,7 @@ SRSASN_CODE quant_cfg_geran_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(filt_coef_present, 1)); if (filt_coef_present) { - HANDLE_CODE(unpack_enum(filt_coef, bref)); + HANDLE_CODE(filt_coef.unpack(bref)); } return SRSASN_SUCCESS; @@ -67111,9 +66993,9 @@ SRSASN_CODE quant_cfg_utra_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(filt_coef_present, 1)); - HANDLE_CODE(pack_enum(bref, meas_quant_utra_fdd)); + HANDLE_CODE(meas_quant_utra_fdd.pack(bref)); if (filt_coef_present) { - HANDLE_CODE(pack_enum(bref, filt_coef)); + HANDLE_CODE(filt_coef.pack(bref)); } return SRSASN_SUCCESS; @@ -67122,9 +67004,9 @@ SRSASN_CODE quant_cfg_utra_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(filt_coef_present, 1)); - HANDLE_CODE(unpack_enum(meas_quant_utra_fdd, bref)); + HANDLE_CODE(meas_quant_utra_fdd.unpack(bref)); if (filt_coef_present) { - HANDLE_CODE(unpack_enum(filt_coef, bref)); + HANDLE_CODE(filt_coef.unpack(bref)); } return SRSASN_SUCCESS; @@ -67146,7 +67028,7 @@ SRSASN_CODE quant_cfg_utra_v1020_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(filt_coef2_fdd_r10_present, 1)); if (filt_coef2_fdd_r10_present) { - HANDLE_CODE(pack_enum(bref, filt_coef2_fdd_r10)); + HANDLE_CODE(filt_coef2_fdd_r10.pack(bref)); } return SRSASN_SUCCESS; @@ -67156,7 +67038,7 @@ SRSASN_CODE quant_cfg_utra_v1020_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(filt_coef2_fdd_r10_present, 1)); if (filt_coef2_fdd_r10_present) { - HANDLE_CODE(unpack_enum(filt_coef2_fdd_r10, bref)); + HANDLE_CODE(filt_coef2_fdd_r10.unpack(bref)); } return SRSASN_SUCCESS; @@ -67176,7 +67058,7 @@ SRSASN_CODE quant_cfg_wlan_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(filt_coef_r13_present, 1)); if (filt_coef_r13_present) { - HANDLE_CODE(pack_enum(bref, filt_coef_r13)); + HANDLE_CODE(filt_coef_r13.pack(bref)); } return SRSASN_SUCCESS; @@ -67186,7 +67068,7 @@ SRSASN_CODE quant_cfg_wlan_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(filt_coef_r13_present, 1)); if (filt_coef_r13_present) { - HANDLE_CODE(unpack_enum(filt_coef_r13, bref)); + HANDLE_CODE(filt_coef_r13.unpack(bref)); } return SRSASN_SUCCESS; @@ -67204,15 +67086,15 @@ void quant_cfg_wlan_r13_s::to_json(json_writer& j) const // RRCConnectionReconfiguration-v1020-IEs ::= SEQUENCE SRSASN_CODE rrc_conn_recfg_v1020_ies_s::pack(bit_ref& bref) const { - HANDLE_CODE(bref.pack(s_cell_to_release_list_r10_present, 1)); - HANDLE_CODE(bref.pack(s_cell_to_add_mod_list_r10_present, 1)); + HANDLE_CODE(bref.pack(scell_to_release_list_r10_present, 1)); + HANDLE_CODE(bref.pack(scell_to_add_mod_list_r10_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); - if (s_cell_to_release_list_r10_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_to_release_list_r10, 1, 4, UnalignedIntegerPacker(1, 7))); + if (scell_to_release_list_r10_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_to_release_list_r10, 1, 4, integer_packer(1, 7))); } - if (s_cell_to_add_mod_list_r10_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_to_add_mod_list_r10, 1, 4)); + if (scell_to_add_mod_list_r10_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_to_add_mod_list_r10, 1, 4)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -67222,15 +67104,15 @@ SRSASN_CODE rrc_conn_recfg_v1020_ies_s::pack(bit_ref& bref) const } SRSASN_CODE rrc_conn_recfg_v1020_ies_s::unpack(bit_ref& bref) { - HANDLE_CODE(bref.unpack(s_cell_to_release_list_r10_present, 1)); - HANDLE_CODE(bref.unpack(s_cell_to_add_mod_list_r10_present, 1)); + HANDLE_CODE(bref.unpack(scell_to_release_list_r10_present, 1)); + HANDLE_CODE(bref.unpack(scell_to_add_mod_list_r10_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); - if (s_cell_to_release_list_r10_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_to_release_list_r10, bref, 1, 4, UnalignedIntegerPacker(1, 7))); + if (scell_to_release_list_r10_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_to_release_list_r10, bref, 1, 4, integer_packer(1, 7))); } - if (s_cell_to_add_mod_list_r10_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_to_add_mod_list_r10, bref, 1, 4)); + if (scell_to_add_mod_list_r10_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_to_add_mod_list_r10, bref, 1, 4)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -67241,17 +67123,17 @@ SRSASN_CODE rrc_conn_recfg_v1020_ies_s::unpack(bit_ref& bref) void rrc_conn_recfg_v1020_ies_s::to_json(json_writer& j) const { j.start_obj(); - if (s_cell_to_release_list_r10_present) { + if (scell_to_release_list_r10_present) { j.start_array("sCellToReleaseList-r10"); - for (uint32_t i1 = 0; i1 < s_cell_to_release_list_r10.size(); ++i1) { - j.write_int(s_cell_to_release_list_r10[i1]); + for (uint32_t i1 = 0; i1 < scell_to_release_list_r10.size(); ++i1) { + j.write_int(scell_to_release_list_r10[i1]); } j.end_array(); } - if (s_cell_to_add_mod_list_r10_present) { + if (scell_to_add_mod_list_r10_present) { j.start_array("sCellToAddModList-r10"); - for (uint32_t i1 = 0; i1 < s_cell_to_add_mod_list_r10.size(); ++i1) { - s_cell_to_add_mod_list_r10[i1].to_json(j); + for (uint32_t i1 = 0; i1 < scell_to_add_mod_list_r10.size(); ++i1) { + scell_to_add_mod_list_r10[i1].to_json(j); } j.end_array(); } @@ -67312,7 +67194,7 @@ SRSASN_CODE rrc_conn_release_v1020_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (extended_wait_time_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, extended_wait_time_r10, (uint16_t)1, (uint16_t)1800)); + HANDLE_CODE(pack_integer(bref, extended_wait_time_r10, (uint16_t)1u, (uint16_t)1800u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -67326,7 +67208,7 @@ SRSASN_CODE rrc_conn_release_v1020_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (extended_wait_time_r10_present) { - HANDLE_CODE(unpack_unalign_integer(extended_wait_time_r10, bref, (uint16_t)1, (uint16_t)1800)); + HANDLE_CODE(unpack_integer(extended_wait_time_r10, bref, (uint16_t)1u, (uint16_t)1800u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -67379,13 +67261,13 @@ void rrc_conn_resume_v1530_ies_s::to_json(json_writer& j) const // RedirectedCarrierInfo-v9e0 ::= SEQUENCE SRSASN_CODE redirected_carrier_info_v9e0_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, eutra_v9e0, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, eutra_v9e0, (uint32_t)65536u, (uint32_t)262143u)); return SRSASN_SUCCESS; } SRSASN_CODE redirected_carrier_info_v9e0_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(eutra_v9e0, bref, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(eutra_v9e0, bref, (uint32_t)65536u, (uint32_t)262143u)); return SRSASN_SUCCESS; } @@ -67399,14 +67281,14 @@ void redirected_carrier_info_v9e0_s::to_json(json_writer& j) const // ReportConfigToAddMod ::= SEQUENCE SRSASN_CODE report_cfg_to_add_mod_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, report_cfg_id, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, report_cfg_id, (uint8_t)1u, (uint8_t)32u)); HANDLE_CODE(report_cfg.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE report_cfg_to_add_mod_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(report_cfg_id, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(report_cfg_id, bref, (uint8_t)1u, (uint8_t)32u)); HANDLE_CODE(report_cfg.unpack(bref)); return SRSASN_SUCCESS; @@ -67507,7 +67389,7 @@ void report_cfg_to_add_mod_s::report_cfg_c_::to_json(json_writer& j) const } SRSASN_CODE report_cfg_to_add_mod_s::report_cfg_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::report_cfg_eutra: HANDLE_CODE(c.get().pack(bref)); @@ -67524,7 +67406,7 @@ SRSASN_CODE report_cfg_to_add_mod_s::report_cfg_c_::pack(bit_ref& bref) const SRSASN_CODE report_cfg_to_add_mod_s::report_cfg_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::report_cfg_eutra: @@ -67551,10 +67433,10 @@ SRSASN_CODE ue_cap_enquiry_v1310_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (requested_max_ccs_dl_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, requested_max_ccs_dl_r13, (uint8_t)2, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, requested_max_ccs_dl_r13, (uint8_t)2u, (uint8_t)32u)); } if (requested_max_ccs_ul_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, requested_max_ccs_ul_r13, (uint8_t)2, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, requested_max_ccs_ul_r13, (uint8_t)2u, (uint8_t)32u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -67572,10 +67454,10 @@ SRSASN_CODE ue_cap_enquiry_v1310_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (requested_max_ccs_dl_r13_present) { - HANDLE_CODE(unpack_unalign_integer(requested_max_ccs_dl_r13, bref, (uint8_t)2, (uint8_t)32)); + HANDLE_CODE(unpack_integer(requested_max_ccs_dl_r13, bref, (uint8_t)2u, (uint8_t)32u)); } if (requested_max_ccs_ul_r13_present) { - HANDLE_CODE(unpack_unalign_integer(requested_max_ccs_ul_r13, bref, (uint8_t)2, (uint8_t)32)); + HANDLE_CODE(unpack_integer(requested_max_ccs_ul_r13, bref, (uint8_t)2u, (uint8_t)32u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -67649,9 +67531,9 @@ SRSASN_CODE carrier_bw_eutra_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(ul_bw_present, 1)); - HANDLE_CODE(pack_enum(bref, dl_bw)); + HANDLE_CODE(dl_bw.pack(bref)); if (ul_bw_present) { - HANDLE_CODE(pack_enum(bref, ul_bw)); + HANDLE_CODE(ul_bw.pack(bref)); } return SRSASN_SUCCESS; @@ -67660,9 +67542,9 @@ SRSASN_CODE carrier_bw_eutra_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(ul_bw_present, 1)); - HANDLE_CODE(unpack_enum(dl_bw, bref)); + HANDLE_CODE(dl_bw.unpack(bref)); if (ul_bw_present) { - HANDLE_CODE(unpack_enum(ul_bw, bref)); + HANDLE_CODE(ul_bw.unpack(bref)); } return SRSASN_SUCCESS; @@ -67682,9 +67564,9 @@ SRSASN_CODE carrier_freq_eutra_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(ul_carrier_freq_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, dl_carrier_freq, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, dl_carrier_freq, (uint32_t)0u, (uint32_t)65535u)); if (ul_carrier_freq_present) { - HANDLE_CODE(pack_unalign_integer(bref, ul_carrier_freq, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, ul_carrier_freq, (uint32_t)0u, (uint32_t)65535u)); } return SRSASN_SUCCESS; @@ -67693,9 +67575,9 @@ SRSASN_CODE carrier_freq_eutra_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(ul_carrier_freq_present, 1)); - HANDLE_CODE(unpack_unalign_integer(dl_carrier_freq, bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(dl_carrier_freq, bref, (uint32_t)0u, (uint32_t)65535u)); if (ul_carrier_freq_present) { - HANDLE_CODE(unpack_unalign_integer(ul_carrier_freq, bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(ul_carrier_freq, bref, (uint32_t)0u, (uint32_t)65535u)); } return SRSASN_SUCCESS; @@ -67715,9 +67597,9 @@ SRSASN_CODE carrier_freq_eutra_v9e0_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(ul_carrier_freq_v9e0_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, dl_carrier_freq_v9e0, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, dl_carrier_freq_v9e0, (uint32_t)0u, (uint32_t)262143u)); if (ul_carrier_freq_v9e0_present) { - HANDLE_CODE(pack_unalign_integer(bref, ul_carrier_freq_v9e0, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, ul_carrier_freq_v9e0, (uint32_t)0u, (uint32_t)262143u)); } return SRSASN_SUCCESS; @@ -67726,9 +67608,9 @@ SRSASN_CODE carrier_freq_eutra_v9e0_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(ul_carrier_freq_v9e0_present, 1)); - HANDLE_CODE(unpack_unalign_integer(dl_carrier_freq_v9e0, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(dl_carrier_freq_v9e0, bref, (uint32_t)0u, (uint32_t)262143u)); if (ul_carrier_freq_v9e0_present) { - HANDLE_CODE(unpack_unalign_integer(ul_carrier_freq_v9e0, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(ul_carrier_freq_v9e0, bref, (uint32_t)0u, (uint32_t)262143u)); } return SRSASN_SUCCESS; @@ -67748,8 +67630,8 @@ SRSASN_CODE carrier_info_nr_r15_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(smtc_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r15, (uint32_t)0, (uint32_t)3279165)); - HANDLE_CODE(pack_enum(bref, subcarrier_spacing_ssb_r15)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r15, (uint32_t)0u, (uint32_t)3279165u)); + HANDLE_CODE(subcarrier_spacing_ssb_r15.pack(bref)); if (smtc_r15_present) { HANDLE_CODE(smtc_r15.pack(bref)); } @@ -67760,8 +67642,8 @@ SRSASN_CODE carrier_info_nr_r15_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(smtc_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r15, bref, (uint32_t)0, (uint32_t)3279165)); - HANDLE_CODE(unpack_enum(subcarrier_spacing_ssb_r15, bref)); + HANDLE_CODE(unpack_integer(carrier_freq_r15, bref, (uint32_t)0u, (uint32_t)3279165u)); + HANDLE_CODE(subcarrier_spacing_ssb_r15.unpack(bref)); if (smtc_r15_present) { HANDLE_CODE(smtc_r15.unpack(bref)); } @@ -67946,7 +67828,7 @@ void meas_gap_cfg_dense_prs_r15_c::to_json(json_writer& j) const } SRSASN_CODE meas_gap_cfg_dense_prs_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -67962,7 +67844,7 @@ SRSASN_CODE meas_gap_cfg_dense_prs_r15_c::pack(bit_ref& bref) const SRSASN_CODE meas_gap_cfg_dense_prs_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -68211,70 +68093,70 @@ void meas_gap_cfg_dense_prs_r15_c::setup_s_::gap_offset_dense_prs_r15_c_::to_jso } SRSASN_CODE meas_gap_cfg_dense_prs_r15_c::setup_s_::gap_offset_dense_prs_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rstd0_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)79)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)79u)); break; case types::rstd1_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)159u)); break; case types::rstd2_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)319u)); break; case types::rstd3_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)639u)); break; case types::rstd4_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd5_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)159u)); break; case types::rstd6_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)319u)); break; case types::rstd7_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)639u)); break; case types::rstd8_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd9_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)319u)); break; case types::rstd10_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)639u)); break; case types::rstd11_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd12_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)319u)); break; case types::rstd13_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)639u)); break; case types::rstd14_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd15_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)639u)); break; case types::rstd16_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd17_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)639u)); break; case types::rstd18_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd19_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)639u)); break; case types::rstd20_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1279u)); break; default: log_invalid_choice_id(type_, "meas_gap_cfg_dense_prs_r15_c::setup_s_::gap_offset_dense_prs_r15_c_"); @@ -68285,71 +68167,71 @@ SRSASN_CODE meas_gap_cfg_dense_prs_r15_c::setup_s_::gap_offset_dense_prs_r15_c_: SRSASN_CODE meas_gap_cfg_dense_prs_r15_c::setup_s_::gap_offset_dense_prs_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rstd0_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)79)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)79u)); break; case types::rstd1_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)159u)); break; case types::rstd2_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)319u)); break; case types::rstd3_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)639u)); break; case types::rstd4_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd5_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)159u)); break; case types::rstd6_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)319u)); break; case types::rstd7_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)639u)); break; case types::rstd8_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd9_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)319u)); break; case types::rstd10_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)639u)); break; case types::rstd11_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd12_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)319u)); break; case types::rstd13_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)639u)); break; case types::rstd14_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd15_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)639u)); break; case types::rstd16_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd17_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)639u)); break; case types::rstd18_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd19_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)639u)); break; case types::rstd20_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1279u)); break; default: log_invalid_choice_id(type_, "meas_gap_cfg_dense_prs_r15_c::setup_s_::gap_offset_dense_prs_r15_c_"); @@ -68395,7 +68277,7 @@ void meas_gap_cfg_per_cc_list_r14_c::to_json(json_writer& j) const } SRSASN_CODE meas_gap_cfg_per_cc_list_r14_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -68403,8 +68285,7 @@ SRSASN_CODE meas_gap_cfg_per_cc_list_r14_c::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(c.meas_gap_cfg_to_rem_list_r14_present, 1)); HANDLE_CODE(bref.pack(c.meas_gap_cfg_to_add_mod_list_r14_present, 1)); if (c.meas_gap_cfg_to_rem_list_r14_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, c.meas_gap_cfg_to_rem_list_r14, 1, 32, UnalignedIntegerPacker(0, 31))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.meas_gap_cfg_to_rem_list_r14, 1, 32, integer_packer(0, 31))); } if (c.meas_gap_cfg_to_add_mod_list_r14_present) { HANDLE_CODE(pack_dyn_seq_of(bref, c.meas_gap_cfg_to_add_mod_list_r14, 1, 32)); @@ -68419,7 +68300,7 @@ SRSASN_CODE meas_gap_cfg_per_cc_list_r14_c::pack(bit_ref& bref) const SRSASN_CODE meas_gap_cfg_per_cc_list_r14_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -68428,8 +68309,7 @@ SRSASN_CODE meas_gap_cfg_per_cc_list_r14_c::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(c.meas_gap_cfg_to_rem_list_r14_present, 1)); HANDLE_CODE(bref.unpack(c.meas_gap_cfg_to_add_mod_list_r14_present, 1)); if (c.meas_gap_cfg_to_rem_list_r14_present) { - HANDLE_CODE( - unpack_dyn_seq_of(c.meas_gap_cfg_to_rem_list_r14, bref, 1, 32, UnalignedIntegerPacker(0, 31))); + HANDLE_CODE(unpack_dyn_seq_of(c.meas_gap_cfg_to_rem_list_r14, bref, 1, 32, integer_packer(0, 31))); } if (c.meas_gap_cfg_to_add_mod_list_r14_present) { HANDLE_CODE(unpack_dyn_seq_of(c.meas_gap_cfg_to_add_mod_list_r14, bref, 1, 32)); @@ -68466,12 +68346,12 @@ void meas_gap_sharing_cfg_r14_c::to_json(json_writer& j) const } SRSASN_CODE meas_gap_sharing_cfg_r14_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c.meas_gap_sharing_scheme_r14)); + HANDLE_CODE(c.meas_gap_sharing_scheme_r14.pack(bref)); break; default: log_invalid_choice_id(type_, "meas_gap_sharing_cfg_r14_c"); @@ -68482,13 +68362,13 @@ SRSASN_CODE meas_gap_sharing_cfg_r14_c::pack(bit_ref& bref) const SRSASN_CODE meas_gap_sharing_cfg_r14_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c.meas_gap_sharing_scheme_r14, bref)); + HANDLE_CODE(c.meas_gap_sharing_scheme_r14.unpack(bref)); break; default: log_invalid_choice_id(type_, "meas_gap_sharing_cfg_r14_c"); @@ -68577,7 +68457,7 @@ SRSASN_CODE mob_from_eutra_cmd_v8d0_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (band_ind_present) { - HANDLE_CODE(pack_enum(bref, band_ind)); + HANDLE_CODE(band_ind.pack(bref)); } return SRSASN_SUCCESS; @@ -68588,7 +68468,7 @@ SRSASN_CODE mob_from_eutra_cmd_v8d0_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (band_ind_present) { - HANDLE_CODE(unpack_enum(band_ind, bref)); + HANDLE_CODE(band_ind.unpack(bref)); } return SRSASN_SUCCESS; @@ -68614,7 +68494,7 @@ SRSASN_CODE mob_from_eutra_cmd_v960_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (band_ind_present) { - HANDLE_CODE(pack_enum(bref, band_ind)); + HANDLE_CODE(band_ind.pack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -68628,7 +68508,7 @@ SRSASN_CODE mob_from_eutra_cmd_v960_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (band_ind_present) { - HANDLE_CODE(unpack_enum(band_ind, bref)); + HANDLE_CODE(band_ind.unpack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -68681,7 +68561,7 @@ SRSASN_CODE quant_cfg_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(quant_cfg_utra_v1020.is_present(), 1)); if (quant_cfg_utra_v1020.is_present()) { @@ -68689,7 +68569,7 @@ SRSASN_CODE quant_cfg_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(quant_cfg_eutra_v1250.is_present(), 1)); if (quant_cfg_eutra_v1250.is_present()) { @@ -68697,7 +68577,7 @@ SRSASN_CODE quant_cfg_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(quant_cfg_eutra_v1310.is_present(), 1)); HANDLE_CODE(bref.pack(quant_cfg_wlan_r13.is_present(), 1)); @@ -68709,7 +68589,7 @@ SRSASN_CODE quant_cfg_s::pack(bit_ref& bref) const } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(quant_cfg_nr_list_r15.is_present(), 1)); if (quant_cfg_nr_list_r15.is_present()) { @@ -68745,7 +68625,7 @@ SRSASN_CODE quant_cfg_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool quant_cfg_utra_v1020_present; HANDLE_CODE(bref.unpack(quant_cfg_utra_v1020_present, 1)); @@ -68755,7 +68635,7 @@ SRSASN_CODE quant_cfg_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool quant_cfg_eutra_v1250_present; HANDLE_CODE(bref.unpack(quant_cfg_eutra_v1250_present, 1)); @@ -68765,7 +68645,7 @@ SRSASN_CODE quant_cfg_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool quant_cfg_eutra_v1310_present; HANDLE_CODE(bref.unpack(quant_cfg_eutra_v1310_present, 1)); @@ -68781,7 +68661,7 @@ SRSASN_CODE quant_cfg_s::unpack(bit_ref& bref) } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool quant_cfg_nr_list_r15_present; HANDLE_CODE(bref.unpack(quant_cfg_nr_list_r15_present, 1)); @@ -69105,7 +68985,7 @@ void rrc_conn_release_v920_ies_s::cell_info_list_r9_c_::to_json(json_writer& j) } SRSASN_CODE rrc_conn_release_v920_ies_s::cell_info_list_r9_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::geran_r9: HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 1, 32)); @@ -69117,7 +68997,7 @@ SRSASN_CODE rrc_conn_release_v920_ies_s::cell_info_list_r9_c_::pack(bit_ref& bre HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 1, 16)); break; case types::utra_tdd_r10: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 1, 16)); } break; default: @@ -69129,7 +69009,7 @@ SRSASN_CODE rrc_conn_release_v920_ies_s::cell_info_list_r9_c_::pack(bit_ref& bre SRSASN_CODE rrc_conn_release_v920_ies_s::cell_info_list_r9_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::geran_r9: @@ -69142,7 +69022,7 @@ SRSASN_CODE rrc_conn_release_v920_ies_s::cell_info_list_r9_c_::unpack(bit_ref& b HANDLE_CODE(unpack_dyn_seq_of(c.get(), bref, 1, 16)); break; case types::utra_tdd_r10: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(unpack_dyn_seq_of(c.get(), bref, 1, 16)); } break; default: @@ -69211,7 +69091,7 @@ SRSASN_CODE rrc_conn_resume_v1510_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (sk_counter_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, sk_counter_r15, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, sk_counter_r15, (uint32_t)0u, (uint32_t)65535u)); } if (nr_radio_bearer_cfg1_r15_present) { HANDLE_CODE(nr_radio_bearer_cfg1_r15.pack(bref)); @@ -69233,7 +69113,7 @@ SRSASN_CODE rrc_conn_resume_v1510_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (sk_counter_r15_present) { - HANDLE_CODE(unpack_unalign_integer(sk_counter_r15, bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(sk_counter_r15, bref, (uint32_t)0u, (uint32_t)65535u)); } if (nr_radio_bearer_cfg1_r15_present) { HANDLE_CODE(nr_radio_bearer_cfg1_r15.unpack(bref)); @@ -69304,12 +69184,12 @@ SRSASN_CODE rr_cfg_common_s::pack(bit_ref& bref) const HANDLE_CODE(ant_info_common.pack(bref)); } if (p_max_present) { - HANDLE_CODE(pack_unalign_integer(bref, p_max, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, p_max, (int8_t)-30, (int8_t)33)); } if (tdd_cfg_present) { HANDLE_CODE(tdd_cfg.pack(bref)); } - HANDLE_CODE(pack_enum(bref, ul_cp_len)); + HANDLE_CODE(ul_cp_len.pack(bref)); if (ext) { ext_groups_packer_guard group_flags; @@ -69332,7 +69212,7 @@ SRSASN_CODE rr_cfg_common_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ul_pwr_ctrl_common_v1020.is_present(), 1)); if (ul_pwr_ctrl_common_v1020.is_present()) { @@ -69340,7 +69220,7 @@ SRSASN_CODE rr_cfg_common_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(tdd_cfg_v1130.is_present(), 1)); if (tdd_cfg_v1130.is_present()) { @@ -69348,7 +69228,7 @@ SRSASN_CODE rr_cfg_common_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(pusch_cfg_common_v1270.is_present(), 1)); if (pusch_cfg_common_v1270.is_present()) { @@ -69356,7 +69236,7 @@ SRSASN_CODE rr_cfg_common_s::pack(bit_ref& bref) const } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(prach_cfg_v1310.is_present(), 1)); HANDLE_CODE(bref.pack(freq_hop_params_r13.is_present(), 1)); @@ -69384,7 +69264,7 @@ SRSASN_CODE rr_cfg_common_s::pack(bit_ref& bref) const } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(high_speed_cfg_r14.is_present(), 1)); HANDLE_CODE(bref.pack(prach_cfg_v1430.is_present(), 1)); @@ -69404,7 +69284,7 @@ SRSASN_CODE rr_cfg_common_s::pack(bit_ref& bref) const } } if (group_flags[5]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(tdd_cfg_v1450.is_present(), 1)); if (tdd_cfg_v1450.is_present()) { @@ -69412,7 +69292,7 @@ SRSASN_CODE rr_cfg_common_s::pack(bit_ref& bref) const } } if (group_flags[6]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ul_pwr_ctrl_common_v1530.is_present(), 1)); HANDLE_CODE(bref.pack(high_speed_cfg_v1530.is_present(), 1)); @@ -69463,19 +69343,19 @@ SRSASN_CODE rr_cfg_common_s::unpack(bit_ref& bref) HANDLE_CODE(ant_info_common.unpack(bref)); } if (p_max_present) { - HANDLE_CODE(unpack_unalign_integer(p_max, bref, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(unpack_integer(p_max, bref, (int8_t)-30, (int8_t)33)); } if (tdd_cfg_present) { HANDLE_CODE(tdd_cfg.unpack(bref)); } - HANDLE_CODE(unpack_enum(ul_cp_len, bref)); + HANDLE_CODE(ul_cp_len.unpack(bref)); if (ext) { ext_groups_unpacker_guard group_flags(7); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool ul_pwr_ctrl_common_v1020_present; HANDLE_CODE(bref.unpack(ul_pwr_ctrl_common_v1020_present, 1)); @@ -69485,7 +69365,7 @@ SRSASN_CODE rr_cfg_common_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool tdd_cfg_v1130_present; HANDLE_CODE(bref.unpack(tdd_cfg_v1130_present, 1)); @@ -69495,7 +69375,7 @@ SRSASN_CODE rr_cfg_common_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool pusch_cfg_common_v1270_present; HANDLE_CODE(bref.unpack(pusch_cfg_common_v1270_present, 1)); @@ -69505,7 +69385,7 @@ SRSASN_CODE rr_cfg_common_s::unpack(bit_ref& bref) } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool prach_cfg_v1310_present; HANDLE_CODE(bref.unpack(prach_cfg_v1310_present, 1)); @@ -69545,7 +69425,7 @@ SRSASN_CODE rr_cfg_common_s::unpack(bit_ref& bref) } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool high_speed_cfg_r14_present; HANDLE_CODE(bref.unpack(high_speed_cfg_r14_present, 1)); @@ -69573,7 +69453,7 @@ SRSASN_CODE rr_cfg_common_s::unpack(bit_ref& bref) } } if (group_flags[5]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool tdd_cfg_v1450_present; HANDLE_CODE(bref.unpack(tdd_cfg_v1450_present, 1)); @@ -69583,7 +69463,7 @@ SRSASN_CODE rr_cfg_common_s::unpack(bit_ref& bref) } } if (group_flags[6]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool ul_pwr_ctrl_common_v1530_present; HANDLE_CODE(bref.unpack(ul_pwr_ctrl_common_v1530_present, 1)); @@ -69806,7 +69686,7 @@ void si_or_psi_geran_c::to_json(json_writer& j) const } SRSASN_CODE si_or_psi_geran_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::si: HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 1, 10)); @@ -69823,7 +69703,7 @@ SRSASN_CODE si_or_psi_geran_c::pack(bit_ref& bref) const SRSASN_CODE si_or_psi_geran_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::si: @@ -69846,7 +69726,7 @@ SRSASN_CODE ue_cap_enquiry_v1180_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (requested_freq_bands_r11_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, requested_freq_bands_r11, 1, 16, UnalignedIntegerPacker(1, 256))); + HANDLE_CODE(pack_dyn_seq_of(bref, requested_freq_bands_r11, 1, 16, integer_packer(1, 256))); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -69860,7 +69740,7 @@ SRSASN_CODE ue_cap_enquiry_v1180_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (requested_freq_bands_r11_present) { - HANDLE_CODE(unpack_dyn_seq_of(requested_freq_bands_r11, bref, 1, 16, UnalignedIntegerPacker(1, 256))); + HANDLE_CODE(unpack_dyn_seq_of(requested_freq_bands_r11, bref, 1, 16, integer_packer(1, 256))); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -70014,7 +69894,7 @@ void area_cfg_r10_c::to_json(json_writer& j) const } SRSASN_CODE area_cfg_r10_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::cell_global_id_list_r10: HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 1, 32)); @@ -70031,7 +69911,7 @@ SRSASN_CODE area_cfg_r10_c::pack(bit_ref& bref) const SRSASN_CODE area_cfg_r10_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::cell_global_id_list_r10: @@ -70087,14 +69967,14 @@ void csfb_params_resp_cdma2000_v8a0_ies_s::to_json(json_writer& j) const // CellChangeOrder ::= SEQUENCE SRSASN_CODE cell_change_order_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, t304)); + HANDLE_CODE(t304.pack(bref)); HANDLE_CODE(target_rat_type.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE cell_change_order_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(t304, bref)); + HANDLE_CODE(t304.unpack(bref)); HANDLE_CODE(target_rat_type.unpack(bref)); return SRSASN_SUCCESS; @@ -70254,7 +70134,7 @@ SRSASN_CODE e_csfb_r9_s::pack(bit_ref& bref) const HANDLE_CODE(msg_cont_cdma2000_minus1_xrtt_r9.pack(bref)); } if (mob_cdma2000_hrpd_r9_present) { - HANDLE_CODE(pack_enum(bref, mob_cdma2000_hrpd_r9)); + HANDLE_CODE(mob_cdma2000_hrpd_r9.pack(bref)); } if (msg_cont_cdma2000_hrpd_r9_present) { HANDLE_CODE(msg_cont_cdma2000_hrpd_r9.pack(bref)); @@ -70276,7 +70156,7 @@ SRSASN_CODE e_csfb_r9_s::unpack(bit_ref& bref) HANDLE_CODE(msg_cont_cdma2000_minus1_xrtt_r9.unpack(bref)); } if (mob_cdma2000_hrpd_r9_present) { - HANDLE_CODE(unpack_enum(mob_cdma2000_hrpd_r9, bref)); + HANDLE_CODE(mob_cdma2000_hrpd_r9.unpack(bref)); } if (msg_cont_cdma2000_hrpd_r9_present) { HANDLE_CODE(msg_cont_cdma2000_hrpd_r9.unpack(bref)); @@ -70312,7 +70192,7 @@ SRSASN_CODE ho_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(nas_security_param_from_eutra_present, 1)); HANDLE_CODE(bref.pack(sys_info_present, 1)); - HANDLE_CODE(pack_enum(bref, target_rat_type)); + HANDLE_CODE(target_rat_type.pack(bref)); HANDLE_CODE(target_rat_msg_container.pack(bref)); if (nas_security_param_from_eutra_present) { HANDLE_CODE(nas_security_param_from_eutra.pack(bref)); @@ -70328,7 +70208,7 @@ SRSASN_CODE ho_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(nas_security_param_from_eutra_present, 1)); HANDLE_CODE(bref.unpack(sys_info_present, 1)); - HANDLE_CODE(unpack_enum(target_rat_type, bref)); + HANDLE_CODE(target_rat_type.unpack(bref)); HANDLE_CODE(target_rat_msg_container.unpack(bref)); if (nas_security_param_from_eutra_present) { HANDLE_CODE(nas_security_param_from_eutra.unpack(bref)); @@ -70455,19 +70335,19 @@ SRSASN_CODE meas_cfg_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(speed_state_pars_present, 1)); if (meas_obj_to_rem_list_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, meas_obj_to_rem_list, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(pack_dyn_seq_of(bref, meas_obj_to_rem_list, 1, 32, integer_packer(1, 32))); } if (meas_obj_to_add_mod_list_present) { HANDLE_CODE(pack_dyn_seq_of(bref, meas_obj_to_add_mod_list, 1, 32)); } if (report_cfg_to_rem_list_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, report_cfg_to_rem_list, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(pack_dyn_seq_of(bref, report_cfg_to_rem_list, 1, 32, integer_packer(1, 32))); } if (report_cfg_to_add_mod_list_present) { HANDLE_CODE(pack_dyn_seq_of(bref, report_cfg_to_add_mod_list, 1, 32)); } if (meas_id_to_rem_list_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, meas_id_to_rem_list, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(pack_dyn_seq_of(bref, meas_id_to_rem_list, 1, 32, integer_packer(1, 32))); } if (meas_id_to_add_mod_list_present) { HANDLE_CODE(pack_dyn_seq_of(bref, meas_id_to_add_mod_list, 1, 32)); @@ -70479,7 +70359,7 @@ SRSASN_CODE meas_cfg_s::pack(bit_ref& bref) const HANDLE_CODE(meas_gap_cfg.pack(bref)); } if (s_measure_present) { - HANDLE_CODE(pack_unalign_integer(bref, s_measure, (uint8_t)0, (uint8_t)97)); + HANDLE_CODE(pack_integer(bref, s_measure, (uint8_t)0u, (uint8_t)97u)); } if (pre_regist_info_hrpd_present) { HANDLE_CODE(pre_regist_info_hrpd.pack(bref)); @@ -70509,7 +70389,7 @@ SRSASN_CODE meas_cfg_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_obj_to_add_mod_list_v9e0.is_present(), 1)); if (meas_obj_to_add_mod_list_v9e0.is_present()) { @@ -70517,7 +70397,7 @@ SRSASN_CODE meas_cfg_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(allow_interruptions_r11_present, 1)); if (allow_interruptions_r11_present) { @@ -70525,7 +70405,7 @@ SRSASN_CODE meas_cfg_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_scale_factor_r12.is_present(), 1)); HANDLE_CODE(bref.pack(meas_id_to_rem_list_ext_r12.is_present(), 1)); @@ -70535,8 +70415,7 @@ SRSASN_CODE meas_cfg_s::pack(bit_ref& bref) const HANDLE_CODE(meas_scale_factor_r12->pack(bref)); } if (meas_id_to_rem_list_ext_r12.is_present()) { - HANDLE_CODE( - pack_dyn_seq_of(bref, *meas_id_to_rem_list_ext_r12, 1, 32, UnalignedIntegerPacker(33, 64))); + HANDLE_CODE(pack_dyn_seq_of(bref, *meas_id_to_rem_list_ext_r12, 1, 32, integer_packer(33, 64))); } if (meas_id_to_add_mod_list_ext_r12.is_present()) { HANDLE_CODE(pack_dyn_seq_of(bref, *meas_id_to_add_mod_list_ext_r12, 1, 32)); @@ -70546,15 +70425,14 @@ SRSASN_CODE meas_cfg_s::pack(bit_ref& bref) const } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_obj_to_rem_list_ext_r13.is_present(), 1)); HANDLE_CODE(bref.pack(meas_obj_to_add_mod_list_ext_r13.is_present(), 1)); HANDLE_CODE(bref.pack(meas_id_to_add_mod_list_v1310.is_present(), 1)); HANDLE_CODE(bref.pack(meas_id_to_add_mod_list_ext_v1310.is_present(), 1)); if (meas_obj_to_rem_list_ext_r13.is_present()) { - HANDLE_CODE( - pack_dyn_seq_of(bref, *meas_obj_to_rem_list_ext_r13, 1, 32, UnalignedIntegerPacker(33, 64))); + HANDLE_CODE(pack_dyn_seq_of(bref, *meas_obj_to_rem_list_ext_r13, 1, 32, integer_packer(33, 64))); } if (meas_obj_to_add_mod_list_ext_r13.is_present()) { HANDLE_CODE(pack_dyn_seq_of(bref, *meas_obj_to_add_mod_list_ext_r13, 1, 32)); @@ -70567,7 +70445,7 @@ SRSASN_CODE meas_cfg_s::pack(bit_ref& bref) const } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_gap_cfg_per_cc_list_r14.is_present(), 1)); HANDLE_CODE(bref.pack(meas_gap_sharing_cfg_r14.is_present(), 1)); @@ -70579,7 +70457,7 @@ SRSASN_CODE meas_cfg_s::pack(bit_ref& bref) const } } if (group_flags[5]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(fr1_gap_r15_present, 1)); HANDLE_CODE(bref.pack(mgta_r15_present, 1)); @@ -70591,7 +70469,7 @@ SRSASN_CODE meas_cfg_s::pack(bit_ref& bref) const } } if (group_flags[6]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_gap_cfg_dense_prs_r15.is_present(), 1)); HANDLE_CODE(bref.pack(height_thresh_ref_r15.is_present(), 1)); @@ -70621,19 +70499,19 @@ SRSASN_CODE meas_cfg_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(speed_state_pars_present, 1)); if (meas_obj_to_rem_list_present) { - HANDLE_CODE(unpack_dyn_seq_of(meas_obj_to_rem_list, bref, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(unpack_dyn_seq_of(meas_obj_to_rem_list, bref, 1, 32, integer_packer(1, 32))); } if (meas_obj_to_add_mod_list_present) { HANDLE_CODE(unpack_dyn_seq_of(meas_obj_to_add_mod_list, bref, 1, 32)); } if (report_cfg_to_rem_list_present) { - HANDLE_CODE(unpack_dyn_seq_of(report_cfg_to_rem_list, bref, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(unpack_dyn_seq_of(report_cfg_to_rem_list, bref, 1, 32, integer_packer(1, 32))); } if (report_cfg_to_add_mod_list_present) { HANDLE_CODE(unpack_dyn_seq_of(report_cfg_to_add_mod_list, bref, 1, 32)); } if (meas_id_to_rem_list_present) { - HANDLE_CODE(unpack_dyn_seq_of(meas_id_to_rem_list, bref, 1, 32, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(unpack_dyn_seq_of(meas_id_to_rem_list, bref, 1, 32, integer_packer(1, 32))); } if (meas_id_to_add_mod_list_present) { HANDLE_CODE(unpack_dyn_seq_of(meas_id_to_add_mod_list, bref, 1, 32)); @@ -70645,7 +70523,7 @@ SRSASN_CODE meas_cfg_s::unpack(bit_ref& bref) HANDLE_CODE(meas_gap_cfg.unpack(bref)); } if (s_measure_present) { - HANDLE_CODE(unpack_unalign_integer(s_measure, bref, (uint8_t)0, (uint8_t)97)); + HANDLE_CODE(unpack_integer(s_measure, bref, (uint8_t)0u, (uint8_t)97u)); } if (pre_regist_info_hrpd_present) { HANDLE_CODE(pre_regist_info_hrpd.unpack(bref)); @@ -70659,7 +70537,7 @@ SRSASN_CODE meas_cfg_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool meas_obj_to_add_mod_list_v9e0_present; HANDLE_CODE(bref.unpack(meas_obj_to_add_mod_list_v9e0_present, 1)); @@ -70669,7 +70547,7 @@ SRSASN_CODE meas_cfg_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(allow_interruptions_r11_present, 1)); if (allow_interruptions_r11_present) { @@ -70677,7 +70555,7 @@ SRSASN_CODE meas_cfg_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool meas_scale_factor_r12_present; HANDLE_CODE(bref.unpack(meas_scale_factor_r12_present, 1)); @@ -70693,8 +70571,7 @@ SRSASN_CODE meas_cfg_s::unpack(bit_ref& bref) HANDLE_CODE(meas_scale_factor_r12->unpack(bref)); } if (meas_id_to_rem_list_ext_r12.is_present()) { - HANDLE_CODE( - unpack_dyn_seq_of(*meas_id_to_rem_list_ext_r12, bref, 1, 32, UnalignedIntegerPacker(33, 64))); + HANDLE_CODE(unpack_dyn_seq_of(*meas_id_to_rem_list_ext_r12, bref, 1, 32, integer_packer(33, 64))); } if (meas_id_to_add_mod_list_ext_r12.is_present()) { HANDLE_CODE(unpack_dyn_seq_of(*meas_id_to_add_mod_list_ext_r12, bref, 1, 32)); @@ -70704,7 +70581,7 @@ SRSASN_CODE meas_cfg_s::unpack(bit_ref& bref) } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool meas_obj_to_rem_list_ext_r13_present; HANDLE_CODE(bref.unpack(meas_obj_to_rem_list_ext_r13_present, 1)); @@ -70719,8 +70596,7 @@ SRSASN_CODE meas_cfg_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(meas_id_to_add_mod_list_ext_v1310_present, 1)); meas_id_to_add_mod_list_ext_v1310.set_present(meas_id_to_add_mod_list_ext_v1310_present); if (meas_obj_to_rem_list_ext_r13.is_present()) { - HANDLE_CODE( - unpack_dyn_seq_of(*meas_obj_to_rem_list_ext_r13, bref, 1, 32, UnalignedIntegerPacker(33, 64))); + HANDLE_CODE(unpack_dyn_seq_of(*meas_obj_to_rem_list_ext_r13, bref, 1, 32, integer_packer(33, 64))); } if (meas_obj_to_add_mod_list_ext_r13.is_present()) { HANDLE_CODE(unpack_dyn_seq_of(*meas_obj_to_add_mod_list_ext_r13, bref, 1, 32)); @@ -70733,7 +70609,7 @@ SRSASN_CODE meas_cfg_s::unpack(bit_ref& bref) } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool meas_gap_cfg_per_cc_list_r14_present; HANDLE_CODE(bref.unpack(meas_gap_cfg_per_cc_list_r14_present, 1)); @@ -70749,7 +70625,7 @@ SRSASN_CODE meas_cfg_s::unpack(bit_ref& bref) } } if (group_flags[5]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(fr1_gap_r15_present, 1)); HANDLE_CODE(bref.unpack(mgta_r15_present, 1)); @@ -70761,7 +70637,7 @@ SRSASN_CODE meas_cfg_s::unpack(bit_ref& bref) } } if (group_flags[6]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool meas_gap_cfg_dense_prs_r15_present; HANDLE_CODE(bref.unpack(meas_gap_cfg_dense_prs_r15_present, 1)); @@ -70955,7 +70831,7 @@ void meas_cfg_s::speed_state_pars_c_::to_json(json_writer& j) const } SRSASN_CODE meas_cfg_s::speed_state_pars_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -70972,7 +70848,7 @@ SRSASN_CODE meas_cfg_s::speed_state_pars_c_::pack(bit_ref& bref) const SRSASN_CODE meas_cfg_s::speed_state_pars_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -71008,12 +70884,12 @@ void meas_cfg_s::meas_scale_factor_r12_c_::to_json(json_writer& j) const } SRSASN_CODE meas_cfg_s::meas_scale_factor_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_enum(bref, c)); + HANDLE_CODE(c.pack(bref)); break; default: log_invalid_choice_id(type_, "meas_cfg_s::meas_scale_factor_r12_c_"); @@ -71024,13 +70900,13 @@ SRSASN_CODE meas_cfg_s::meas_scale_factor_r12_c_::pack(bit_ref& bref) const SRSASN_CODE meas_cfg_s::meas_scale_factor_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_enum(c, bref)); + HANDLE_CODE(c.unpack(bref)); break; default: log_invalid_choice_id(type_, "meas_cfg_s::meas_scale_factor_r12_c_"); @@ -71059,12 +70935,12 @@ void meas_cfg_s::height_thresh_ref_r15_c_::to_json(json_writer& j) const } SRSASN_CODE meas_cfg_s::height_thresh_ref_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_unalign_integer(bref, c, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, c, (uint8_t)0u, (uint8_t)31u)); break; default: log_invalid_choice_id(type_, "meas_cfg_s::height_thresh_ref_r15_c_"); @@ -71075,13 +70951,13 @@ SRSASN_CODE meas_cfg_s::height_thresh_ref_r15_c_::pack(bit_ref& bref) const SRSASN_CODE meas_cfg_s::height_thresh_ref_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_unalign_integer(c, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(c, bref, (uint8_t)0u, (uint8_t)31u)); break; default: log_invalid_choice_id(type_, "meas_cfg_s::height_thresh_ref_r15_c_"); @@ -71099,7 +70975,7 @@ SRSASN_CODE mob_ctrl_info_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(add_spec_emission_present, 1)); HANDLE_CODE(bref.pack(rach_cfg_ded_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, target_pci, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(pack_integer(bref, target_pci, (uint16_t)0u, (uint16_t)503u)); if (carrier_freq_present) { HANDLE_CODE(carrier_freq.pack(bref)); } @@ -71107,9 +70983,9 @@ SRSASN_CODE mob_ctrl_info_s::pack(bit_ref& bref) const HANDLE_CODE(carrier_bw.pack(bref)); } if (add_spec_emission_present) { - HANDLE_CODE(pack_unalign_integer(bref, add_spec_emission, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, add_spec_emission, (uint8_t)1u, (uint8_t)32u)); } - HANDLE_CODE(pack_enum(bref, t304)); + HANDLE_CODE(t304.pack(bref)); HANDLE_CODE(new_ue_id.pack(bref)); HANDLE_CODE(rr_cfg_common.pack(bref)); if (rach_cfg_ded_present) { @@ -71130,7 +71006,7 @@ SRSASN_CODE mob_ctrl_info_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(carrier_freq_v9e0.is_present(), 1)); if (carrier_freq_v9e0.is_present()) { @@ -71138,12 +71014,12 @@ SRSASN_CODE mob_ctrl_info_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(drb_continue_rohc_r11_present, 1)); } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(mob_ctrl_info_v2x_r14.is_present(), 1)); HANDLE_CODE(bref.pack(ho_without_wt_change_r14_present, 1)); @@ -71154,14 +71030,14 @@ SRSASN_CODE mob_ctrl_info_s::pack(bit_ref& bref) const HANDLE_CODE(mob_ctrl_info_v2x_r14->pack(bref)); } if (ho_without_wt_change_r14_present) { - HANDLE_CODE(pack_enum(bref, ho_without_wt_change_r14)); + HANDLE_CODE(ho_without_wt_change_r14.pack(bref)); } if (rach_skip_r14.is_present()) { HANDLE_CODE(rach_skip_r14->pack(bref)); } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(mib_repeat_status_r14_present, 1)); HANDLE_CODE(bref.pack(sched_info_sib1_br_r14_present, 1)); @@ -71169,7 +71045,7 @@ SRSASN_CODE mob_ctrl_info_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(mib_repeat_status_r14, 1)); } if (sched_info_sib1_br_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, sched_info_sib1_br_r14, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, sched_info_sib1_br_r14, (uint8_t)0u, (uint8_t)31u)); } } } @@ -71183,7 +71059,7 @@ SRSASN_CODE mob_ctrl_info_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(add_spec_emission_present, 1)); HANDLE_CODE(bref.unpack(rach_cfg_ded_present, 1)); - HANDLE_CODE(unpack_unalign_integer(target_pci, bref, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(unpack_integer(target_pci, bref, (uint16_t)0u, (uint16_t)503u)); if (carrier_freq_present) { HANDLE_CODE(carrier_freq.unpack(bref)); } @@ -71191,9 +71067,9 @@ SRSASN_CODE mob_ctrl_info_s::unpack(bit_ref& bref) HANDLE_CODE(carrier_bw.unpack(bref)); } if (add_spec_emission_present) { - HANDLE_CODE(unpack_unalign_integer(add_spec_emission, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(add_spec_emission, bref, (uint8_t)1u, (uint8_t)32u)); } - HANDLE_CODE(unpack_enum(t304, bref)); + HANDLE_CODE(t304.unpack(bref)); HANDLE_CODE(new_ue_id.unpack(bref)); HANDLE_CODE(rr_cfg_common.unpack(bref)); if (rach_cfg_ded_present) { @@ -71205,7 +71081,7 @@ SRSASN_CODE mob_ctrl_info_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool carrier_freq_v9e0_present; HANDLE_CODE(bref.unpack(carrier_freq_v9e0_present, 1)); @@ -71215,12 +71091,12 @@ SRSASN_CODE mob_ctrl_info_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(drb_continue_rohc_r11_present, 1)); } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool mob_ctrl_info_v2x_r14_present; HANDLE_CODE(bref.unpack(mob_ctrl_info_v2x_r14_present, 1)); @@ -71235,14 +71111,14 @@ SRSASN_CODE mob_ctrl_info_s::unpack(bit_ref& bref) HANDLE_CODE(mob_ctrl_info_v2x_r14->unpack(bref)); } if (ho_without_wt_change_r14_present) { - HANDLE_CODE(unpack_enum(ho_without_wt_change_r14, bref)); + HANDLE_CODE(ho_without_wt_change_r14.unpack(bref)); } if (rach_skip_r14.is_present()) { HANDLE_CODE(rach_skip_r14->unpack(bref)); } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(mib_repeat_status_r14_present, 1)); HANDLE_CODE(bref.unpack(sched_info_sib1_br_r14_present, 1)); @@ -71250,7 +71126,7 @@ SRSASN_CODE mob_ctrl_info_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(mib_repeat_status_r14, 1)); } if (sched_info_sib1_br_r14_present) { - HANDLE_CODE(unpack_unalign_integer(sched_info_sib1_br_r14, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(sched_info_sib1_br_r14, bref, (uint8_t)0u, (uint8_t)31u)); } } } @@ -71410,10 +71286,10 @@ SRSASN_CODE rn_sf_cfg_r10_s::pack(bit_ref& bref) const } if (rpdcch_cfg_r10_present) { bref.pack(rpdcch_cfg_r10.ext, 1); - HANDLE_CODE(pack_enum(bref, rpdcch_cfg_r10.res_alloc_type_r10)); + HANDLE_CODE(rpdcch_cfg_r10.res_alloc_type_r10.pack(bref)); HANDLE_CODE(rpdcch_cfg_r10.res_block_assign_r10.pack(bref)); HANDLE_CODE(rpdcch_cfg_r10.demod_rs_r10.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, rpdcch_cfg_r10.pdsch_start_r10, (uint8_t)1, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rpdcch_cfg_r10.pdsch_start_r10, (uint8_t)1u, (uint8_t)3u)); HANDLE_CODE(rpdcch_cfg_r10.pucch_cfg_r10.pack(bref)); } @@ -71430,10 +71306,10 @@ SRSASN_CODE rn_sf_cfg_r10_s::unpack(bit_ref& bref) } if (rpdcch_cfg_r10_present) { bref.unpack(rpdcch_cfg_r10.ext, 1); - HANDLE_CODE(unpack_enum(rpdcch_cfg_r10.res_alloc_type_r10, bref)); + HANDLE_CODE(rpdcch_cfg_r10.res_alloc_type_r10.unpack(bref)); HANDLE_CODE(rpdcch_cfg_r10.res_block_assign_r10.unpack(bref)); HANDLE_CODE(rpdcch_cfg_r10.demod_rs_r10.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(rpdcch_cfg_r10.pdsch_start_r10, bref, (uint8_t)1, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rpdcch_cfg_r10.pdsch_start_r10, bref, (uint8_t)1u, (uint8_t)3u)); HANDLE_CODE(rpdcch_cfg_r10.pucch_cfg_r10.unpack(bref)); } @@ -71543,13 +71419,13 @@ void rn_sf_cfg_r10_s::sf_cfg_pattern_r10_c_::to_json(json_writer& j) const } SRSASN_CODE rn_sf_cfg_r10_s::sf_cfg_pattern_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sf_cfg_pattern_fdd_r10: HANDLE_CODE(c.get >().pack(bref)); break; case types::sf_cfg_pattern_tdd_r10: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)31u)); break; default: log_invalid_choice_id(type_, "rn_sf_cfg_r10_s::sf_cfg_pattern_r10_c_"); @@ -71560,14 +71436,14 @@ SRSASN_CODE rn_sf_cfg_r10_s::sf_cfg_pattern_r10_c_::pack(bit_ref& bref) const SRSASN_CODE rn_sf_cfg_r10_s::sf_cfg_pattern_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sf_cfg_pattern_fdd_r10: HANDLE_CODE(c.get >().unpack(bref)); break; case types::sf_cfg_pattern_tdd_r10: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)31u)); break; default: log_invalid_choice_id(type_, "rn_sf_cfg_r10_s::sf_cfg_pattern_r10_c_"); @@ -71665,7 +71541,7 @@ void rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::res_block_assign_r10_c_::to_json(json_w } SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::res_block_assign_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::type01_r10: HANDLE_CODE(c.get().pack(bref)); @@ -71682,7 +71558,7 @@ SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::res_block_assign_r10_c_::pack(bi SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::res_block_assign_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::type01_r10: @@ -71845,7 +71721,7 @@ void rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::res_block_assign_r10_c_::type01_r10_c_: } SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::res_block_assign_r10_c_::type01_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::nrb6_r10: HANDLE_CODE(c.get >().pack(bref)); @@ -71874,7 +71750,7 @@ SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::res_block_assign_r10_c_::type01_ SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::res_block_assign_r10_c_::type01_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::nrb6_r10: @@ -72049,7 +71925,7 @@ void rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::res_block_assign_r10_c_::type2_r10_c_:: } SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::res_block_assign_r10_c_::type2_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::nrb6_r10: HANDLE_CODE(c.get >().pack(bref)); @@ -72078,7 +71954,7 @@ SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::res_block_assign_r10_c_::type2_r SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::res_block_assign_r10_c_::type2_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::nrb6_r10: @@ -72165,12 +72041,12 @@ void rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::demod_rs_r10_c_::to_json(json_writer& j } SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::demod_rs_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::interleaving_r10: break; case types::no_interleaving_r10: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; default: log_invalid_choice_id(type_, "rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::demod_rs_r10_c_"); @@ -72181,13 +72057,13 @@ SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::demod_rs_r10_c_::pack(bit_ref& b SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::demod_rs_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::interleaving_r10: break; case types::no_interleaving_r10: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; default: log_invalid_choice_id(type_, "rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::demod_rs_r10_c_"); @@ -72289,16 +72165,16 @@ void rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::pucch_cfg_r10_c_::to_json(json_writer& } SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::pucch_cfg_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::tdd: HANDLE_CODE(c.get().pack(bref)); break; case types::fdd: HANDLE_CODE(bref.pack(c.get().n1_pucch_an_p1_r10_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, c.get().n1_pucch_an_p0_r10, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(pack_integer(bref, c.get().n1_pucch_an_p0_r10, (uint16_t)0u, (uint16_t)2047u)); if (c.get().n1_pucch_an_p1_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, c.get().n1_pucch_an_p1_r10, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(pack_integer(bref, c.get().n1_pucch_an_p1_r10, (uint16_t)0u, (uint16_t)2047u)); } break; default: @@ -72310,7 +72186,7 @@ SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::pucch_cfg_r10_c_::pack(bit_ref& SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::pucch_cfg_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::tdd: @@ -72318,9 +72194,9 @@ SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::pucch_cfg_r10_c_::unpack(bit_ref break; case types::fdd: HANDLE_CODE(bref.unpack(c.get().n1_pucch_an_p1_r10_present, 1)); - HANDLE_CODE(unpack_unalign_integer(c.get().n1_pucch_an_p0_r10, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(unpack_integer(c.get().n1_pucch_an_p0_r10, bref, (uint16_t)0u, (uint16_t)2047u)); if (c.get().n1_pucch_an_p1_r10_present) { - HANDLE_CODE(unpack_unalign_integer(c.get().n1_pucch_an_p1_r10, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(unpack_integer(c.get().n1_pucch_an_p1_r10, bref, (uint16_t)0u, (uint16_t)2047u)); } break; default: @@ -72430,19 +72306,19 @@ void rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::pucch_cfg_r10_c_::tdd_c_::to_json(json_ } SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::pucch_cfg_r10_c_::tdd_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ch_sel_mux_bundling: HANDLE_CODE(pack_dyn_seq_of( - bref, c.get().n1_pucch_an_list_r10, 1, 4, UnalignedIntegerPacker(0, 2047))); + bref, c.get().n1_pucch_an_list_r10, 1, 4, integer_packer(0, 2047))); break; case types::fallback_for_format3: HANDLE_CODE(bref.pack(c.get().n1_pucch_an_p1_r10_present, 1)); HANDLE_CODE( - pack_unalign_integer(bref, c.get().n1_pucch_an_p0_r10, (uint16_t)0, (uint16_t)2047)); + pack_integer(bref, c.get().n1_pucch_an_p0_r10, (uint16_t)0u, (uint16_t)2047u)); if (c.get().n1_pucch_an_p1_r10_present) { - HANDLE_CODE(pack_unalign_integer( - bref, c.get().n1_pucch_an_p1_r10, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE( + pack_integer(bref, c.get().n1_pucch_an_p1_r10, (uint16_t)0u, (uint16_t)2047u)); } break; default: @@ -72454,20 +72330,20 @@ SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::pucch_cfg_r10_c_::tdd_c_::pack(b SRSASN_CODE rn_sf_cfg_r10_s::rpdcch_cfg_r10_s_::pucch_cfg_r10_c_::tdd_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ch_sel_mux_bundling: HANDLE_CODE(unpack_dyn_seq_of( - c.get().n1_pucch_an_list_r10, bref, 1, 4, UnalignedIntegerPacker(0, 2047))); + c.get().n1_pucch_an_list_r10, bref, 1, 4, integer_packer(0, 2047))); break; case types::fallback_for_format3: HANDLE_CODE(bref.unpack(c.get().n1_pucch_an_p1_r10_present, 1)); - HANDLE_CODE(unpack_unalign_integer( - c.get().n1_pucch_an_p0_r10, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE( + unpack_integer(c.get().n1_pucch_an_p0_r10, bref, (uint16_t)0u, (uint16_t)2047u)); if (c.get().n1_pucch_an_p1_r10_present) { - HANDLE_CODE(unpack_unalign_integer( - c.get().n1_pucch_an_p1_r10, bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE( + unpack_integer(c.get().n1_pucch_an_p1_r10, bref, (uint16_t)0u, (uint16_t)2047u)); } break; default: @@ -72708,7 +72584,7 @@ redirected_carrier_info_c::redirected_carrier_info_c(const redirected_carrier_in type_ = other.type(); switch (type_) { case types::eutra: - c.init(other.c.get()); + c.init(other.c.get()); break; case types::geran: c.init(other.c.get()); @@ -72745,7 +72621,7 @@ redirected_carrier_info_c& redirected_carrier_info_c::operator=(const redirected set(other.type()); switch (type_) { case types::eutra: - c.set(other.c.get()); + c.set(other.c.get()); break; case types::geran: c.set(other.c.get()); @@ -72781,7 +72657,7 @@ void redirected_carrier_info_c::to_json(json_writer& j) const j.start_obj(); switch (type_) { case types::eutra: - j.write_int("eutra", c.get()); + j.write_int("eutra", c.get()); break; case types::geran: j.write_fieldname("geran"); @@ -72819,19 +72695,19 @@ void redirected_carrier_info_c::to_json(json_writer& j) const } SRSASN_CODE redirected_carrier_info_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::eutra: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint32_t)0u, (uint32_t)65535u)); break; case types::geran: HANDLE_CODE(c.get().pack(bref)); break; case types::utra_fdd: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)16383u)); break; case types::utra_tdd: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)16383u)); break; case types::cdma2000_hrpd: HANDLE_CODE(c.get().pack(bref)); @@ -72840,12 +72716,12 @@ SRSASN_CODE redirected_carrier_info_c::pack(bit_ref& bref) const HANDLE_CODE(c.get().pack(bref)); break; case types::utra_tdd_r10: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_dyn_seq_of( - bref, c.get(), 1, 6, UnalignedIntegerPacker(0, 16383))); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE( + pack_dyn_seq_of(bref, c.get(), 1, 6, integer_packer(0, 16383))); } break; case types::nr_r15: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; default: @@ -72857,20 +72733,20 @@ SRSASN_CODE redirected_carrier_info_c::pack(bit_ref& bref) const SRSASN_CODE redirected_carrier_info_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::eutra: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint32_t)0u, (uint32_t)65535u)); break; case types::geran: HANDLE_CODE(c.get().unpack(bref)); break; case types::utra_fdd: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)16383u)); break; case types::utra_tdd: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)16383u)); break; case types::cdma2000_hrpd: HANDLE_CODE(c.get().unpack(bref)); @@ -72879,12 +72755,12 @@ SRSASN_CODE redirected_carrier_info_c::unpack(bit_ref& bref) HANDLE_CODE(c.get().unpack(bref)); break; case types::utra_tdd_r10: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_dyn_seq_of( - c.get(), bref, 1, 6, UnalignedIntegerPacker(0, 16383))); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE( + unpack_dyn_seq_of(c.get(), bref, 1, 6, integer_packer(0, 16383))); } break; case types::nr_r15: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; default: @@ -73014,7 +72890,7 @@ void security_cfg_ho_s::ho_type_c_::to_json(json_writer& j) const } SRSASN_CODE security_cfg_ho_s::ho_type_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::intra_lte: HANDLE_CODE(bref.pack(c.get().security_algorithm_cfg_present, 1)); @@ -73022,7 +72898,7 @@ SRSASN_CODE security_cfg_ho_s::ho_type_c_::pack(bit_ref& bref) const HANDLE_CODE(c.get().security_algorithm_cfg.pack(bref)); } HANDLE_CODE(bref.pack(c.get().key_change_ind, 1)); - HANDLE_CODE(pack_unalign_integer(bref, c.get().next_hop_chaining_count, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, c.get().next_hop_chaining_count, (uint8_t)0u, (uint8_t)7u)); break; case types::inter_rat: HANDLE_CODE(c.get().security_algorithm_cfg.pack(bref)); @@ -73037,7 +72913,7 @@ SRSASN_CODE security_cfg_ho_s::ho_type_c_::pack(bit_ref& bref) const SRSASN_CODE security_cfg_ho_s::ho_type_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::intra_lte: @@ -73046,7 +72922,7 @@ SRSASN_CODE security_cfg_ho_s::ho_type_c_::unpack(bit_ref& bref) HANDLE_CODE(c.get().security_algorithm_cfg.unpack(bref)); } HANDLE_CODE(bref.unpack(c.get().key_change_ind, 1)); - HANDLE_CODE(unpack_unalign_integer(c.get().next_hop_chaining_count, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(c.get().next_hop_chaining_count, bref, (uint8_t)0u, (uint8_t)7u)); break; case types::inter_rat: HANDLE_CODE(c.get().security_algorithm_cfg.unpack(bref)); @@ -73458,7 +73334,7 @@ void dl_info_transfer_r15_ies_s::ded_info_type_r15_c_::to_json(json_writer& j) c } SRSASN_CODE dl_info_transfer_r15_ies_s::ded_info_type_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ded_info_nas_r15: HANDLE_CODE(c.get().pack(bref)); @@ -73478,7 +73354,7 @@ SRSASN_CODE dl_info_transfer_r15_ies_s::ded_info_type_r15_c_::pack(bit_ref& bref SRSASN_CODE dl_info_transfer_r15_ies_s::ded_info_type_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ded_info_nas_r15: @@ -73632,7 +73508,7 @@ void dl_info_transfer_r8_ies_s::ded_info_type_c_::to_json(json_writer& j) const } SRSASN_CODE dl_info_transfer_r8_ies_s::ded_info_type_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ded_info_nas: HANDLE_CODE(c.get().pack(bref)); @@ -73652,7 +73528,7 @@ SRSASN_CODE dl_info_transfer_r8_ies_s::ded_info_type_c_::pack(bit_ref& bref) con SRSASN_CODE dl_info_transfer_r8_ies_s::ded_info_type_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ded_info_nas: @@ -73678,7 +73554,7 @@ SRSASN_CODE ho_from_eutra_prep_request_r8_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(mob_params_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); - HANDLE_CODE(pack_enum(bref, cdma2000_type)); + HANDLE_CODE(cdma2000_type.pack(bref)); if (rand_present) { HANDLE_CODE(rand.pack(bref)); } @@ -73697,7 +73573,7 @@ SRSASN_CODE ho_from_eutra_prep_request_r8_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(mob_params_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); - HANDLE_CODE(unpack_enum(cdma2000_type, bref)); + HANDLE_CODE(cdma2000_type.unpack(bref)); if (rand_present) { HANDLE_CODE(rand.unpack(bref)); } @@ -73740,8 +73616,8 @@ SRSASN_CODE logged_meas_cfg_r10_ies_s::pack(bit_ref& bref) const if (area_cfg_r10_present) { HANDLE_CODE(area_cfg_r10.pack(bref)); } - HANDLE_CODE(pack_enum(bref, logging_dur_r10)); - HANDLE_CODE(pack_enum(bref, logging_interv_r10)); + HANDLE_CODE(logging_dur_r10.pack(bref)); + HANDLE_CODE(logging_interv_r10.pack(bref)); if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); } @@ -73760,8 +73636,8 @@ SRSASN_CODE logged_meas_cfg_r10_ies_s::unpack(bit_ref& bref) if (area_cfg_r10_present) { HANDLE_CODE(area_cfg_r10.unpack(bref)); } - HANDLE_CODE(unpack_enum(logging_dur_r10, bref)); - HANDLE_CODE(unpack_enum(logging_interv_r10, bref)); + HANDLE_CODE(logging_dur_r10.unpack(bref)); + HANDLE_CODE(logging_interv_r10.unpack(bref)); if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); } @@ -73914,7 +73790,7 @@ void mob_from_eutra_cmd_r8_ies_s::purpose_c_::to_json(json_writer& j) const } SRSASN_CODE mob_from_eutra_cmd_r8_ies_s::purpose_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ho: HANDLE_CODE(c.get().pack(bref)); @@ -73931,7 +73807,7 @@ SRSASN_CODE mob_from_eutra_cmd_r8_ies_s::purpose_c_::pack(bit_ref& bref) const SRSASN_CODE mob_from_eutra_cmd_r8_ies_s::purpose_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ho: @@ -74088,7 +73964,7 @@ void mob_from_eutra_cmd_r9_ies_s::purpose_c_::to_json(json_writer& j) const } SRSASN_CODE mob_from_eutra_cmd_r9_ies_s::purpose_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ho: HANDLE_CODE(c.get().pack(bref)); @@ -74108,7 +73984,7 @@ SRSASN_CODE mob_from_eutra_cmd_r9_ies_s::purpose_c_::pack(bit_ref& bref) const SRSASN_CODE mob_from_eutra_cmd_r9_ies_s::purpose_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ho: @@ -74289,7 +74165,7 @@ SRSASN_CODE rrc_conn_release_r8_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(idle_mode_mob_ctrl_info_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); - HANDLE_CODE(pack_enum(bref, release_cause)); + HANDLE_CODE(release_cause.pack(bref)); if (redirected_carrier_info_present) { HANDLE_CODE(redirected_carrier_info.pack(bref)); } @@ -74308,7 +74184,7 @@ SRSASN_CODE rrc_conn_release_r8_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(idle_mode_mob_ctrl_info_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); - HANDLE_CODE(unpack_enum(release_cause, bref)); + HANDLE_CODE(release_cause.unpack(bref)); if (redirected_carrier_info_present) { HANDLE_CODE(redirected_carrier_info.unpack(bref)); } @@ -74353,7 +74229,7 @@ SRSASN_CODE rrc_conn_resume_r13_ies_s::pack(bit_ref& bref) const if (rr_cfg_ded_r13_present) { HANDLE_CODE(rr_cfg_ded_r13.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, next_hop_chaining_count_r13, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, next_hop_chaining_count_r13, (uint8_t)0u, (uint8_t)7u)); if (meas_cfg_r13_present) { HANDLE_CODE(meas_cfg_r13.pack(bref)); } @@ -74381,7 +74257,7 @@ SRSASN_CODE rrc_conn_resume_r13_ies_s::unpack(bit_ref& bref) if (rr_cfg_ded_r13_present) { HANDLE_CODE(rr_cfg_ded_r13.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(next_hop_chaining_count_r13, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(next_hop_chaining_count_r13, bref, (uint8_t)0u, (uint8_t)7u)); if (meas_cfg_r13_present) { HANDLE_CODE(meas_cfg_r13.unpack(bref)); } @@ -74466,7 +74342,7 @@ SRSASN_CODE ue_cap_enquiry_r8_ies_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); - HANDLE_CODE(pack_dyn_seq_of(bref, ue_cap_request, 1, 8, EnumPacker())); + HANDLE_CODE(pack_dyn_seq_of(bref, ue_cap_request, 1, 8)); if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); } @@ -74477,7 +74353,7 @@ SRSASN_CODE ue_cap_enquiry_r8_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); - HANDLE_CODE(unpack_dyn_seq_of(ue_cap_request, bref, 1, 8, EnumPacker())); + HANDLE_CODE(unpack_dyn_seq_of(ue_cap_request, bref, 1, 8)); if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); } @@ -74539,14 +74415,14 @@ void ue_info_request_r9_ies_s::to_json(json_writer& j) const // CSFBParametersResponseCDMA2000 ::= SEQUENCE SRSASN_CODE csfb_params_resp_cdma2000_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE csfb_params_resp_cdma2000_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -74639,7 +74515,7 @@ void csfb_params_resp_cdma2000_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE csfb_params_resp_cdma2000_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::csfb_params_resp_cdma2000_r8: HANDLE_CODE(c.get().pack(bref)); @@ -74655,7 +74531,7 @@ SRSASN_CODE csfb_params_resp_cdma2000_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE csfb_params_resp_cdma2000_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::csfb_params_resp_cdma2000_r8: @@ -74673,14 +74549,14 @@ SRSASN_CODE csfb_params_resp_cdma2000_s::crit_exts_c_::unpack(bit_ref& bref) // CounterCheck ::= SEQUENCE SRSASN_CODE counter_check_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE counter_check_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -74772,7 +74648,7 @@ void counter_check_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE counter_check_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -74788,7 +74664,7 @@ SRSASN_CODE counter_check_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE counter_check_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -74828,7 +74704,7 @@ void counter_check_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE counter_check_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::counter_check_r8: HANDLE_CODE(c.pack(bref)); @@ -74848,7 +74724,7 @@ SRSASN_CODE counter_check_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE counter_check_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::counter_check_r8: @@ -74870,14 +74746,14 @@ SRSASN_CODE counter_check_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) // DLInformationTransfer ::= SEQUENCE SRSASN_CODE dl_info_transfer_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE dl_info_transfer_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -74970,7 +74846,7 @@ void dl_info_transfer_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE dl_info_transfer_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -74986,7 +74862,7 @@ SRSASN_CODE dl_info_transfer_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE dl_info_transfer_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -75104,7 +74980,7 @@ void dl_info_transfer_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE dl_info_transfer_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::dl_info_transfer_r8: HANDLE_CODE(c.get().pack(bref)); @@ -75125,7 +75001,7 @@ SRSASN_CODE dl_info_transfer_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE dl_info_transfer_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::dl_info_transfer_r8: @@ -75148,14 +75024,14 @@ SRSASN_CODE dl_info_transfer_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) // HandoverFromEUTRAPreparationRequest ::= SEQUENCE SRSASN_CODE ho_from_eutra_prep_request_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE ho_from_eutra_prep_request_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -75248,7 +75124,7 @@ void ho_from_eutra_prep_request_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE ho_from_eutra_prep_request_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -75264,7 +75140,7 @@ SRSASN_CODE ho_from_eutra_prep_request_s::crit_exts_c_::pack(bit_ref& bref) cons SRSASN_CODE ho_from_eutra_prep_request_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -75304,7 +75180,7 @@ void ho_from_eutra_prep_request_s::crit_exts_c_::c1_c_::to_json(json_writer& j) } SRSASN_CODE ho_from_eutra_prep_request_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ho_from_eutra_prep_request_r8: HANDLE_CODE(c.pack(bref)); @@ -75324,7 +75200,7 @@ SRSASN_CODE ho_from_eutra_prep_request_s::crit_exts_c_::c1_c_::pack(bit_ref& bre SRSASN_CODE ho_from_eutra_prep_request_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ho_from_eutra_prep_request_r8: @@ -75443,7 +75319,7 @@ void logged_meas_cfg_r10_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE logged_meas_cfg_r10_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -75459,7 +75335,7 @@ SRSASN_CODE logged_meas_cfg_r10_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE logged_meas_cfg_r10_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -75499,7 +75375,7 @@ void logged_meas_cfg_r10_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE logged_meas_cfg_r10_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::logged_meas_cfg_r10: HANDLE_CODE(c.pack(bref)); @@ -75519,7 +75395,7 @@ SRSASN_CODE logged_meas_cfg_r10_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) cons SRSASN_CODE logged_meas_cfg_r10_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::logged_meas_cfg_r10: @@ -75541,14 +75417,14 @@ SRSASN_CODE logged_meas_cfg_r10_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) // MobilityFromEUTRACommand ::= SEQUENCE SRSASN_CODE mob_from_eutra_cmd_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE mob_from_eutra_cmd_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -75641,7 +75517,7 @@ void mob_from_eutra_cmd_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE mob_from_eutra_cmd_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -75657,7 +75533,7 @@ SRSASN_CODE mob_from_eutra_cmd_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE mob_from_eutra_cmd_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -75775,7 +75651,7 @@ void mob_from_eutra_cmd_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE mob_from_eutra_cmd_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::mob_from_eutra_cmd_r8: HANDLE_CODE(c.get().pack(bref)); @@ -75796,7 +75672,7 @@ SRSASN_CODE mob_from_eutra_cmd_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE mob_from_eutra_cmd_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::mob_from_eutra_cmd_r8: @@ -75819,14 +75695,14 @@ SRSASN_CODE mob_from_eutra_cmd_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) // RNReconfiguration-r10 ::= SEQUENCE SRSASN_CODE rn_recfg_r10_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE rn_recfg_r10_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -75918,7 +75794,7 @@ void rn_recfg_r10_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE rn_recfg_r10_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -75934,7 +75810,7 @@ SRSASN_CODE rn_recfg_r10_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE rn_recfg_r10_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -75974,7 +75850,7 @@ void rn_recfg_r10_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE rn_recfg_r10_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rn_recfg_r10: HANDLE_CODE(c.pack(bref)); @@ -75994,7 +75870,7 @@ SRSASN_CODE rn_recfg_r10_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE rn_recfg_r10_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rn_recfg_r10: @@ -76016,14 +75892,14 @@ SRSASN_CODE rn_recfg_r10_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) // RRCConnectionReconfiguration ::= SEQUENCE SRSASN_CODE rrc_conn_recfg_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE rrc_conn_recfg_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -76115,7 +75991,7 @@ void rrc_conn_recfg_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_recfg_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -76131,7 +76007,7 @@ SRSASN_CODE rrc_conn_recfg_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_recfg_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -76179,7 +76055,7 @@ void rrc_conn_recfg_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_recfg_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_conn_recfg_r8: HANDLE_CODE(c.pack(bref)); @@ -76207,7 +76083,7 @@ SRSASN_CODE rrc_conn_recfg_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_recfg_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_conn_recfg_r8: @@ -76237,14 +76113,14 @@ SRSASN_CODE rrc_conn_recfg_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) // RRCConnectionRelease ::= SEQUENCE SRSASN_CODE rrc_conn_release_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE rrc_conn_release_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -76337,7 +76213,7 @@ void rrc_conn_release_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_release_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -76353,7 +76229,7 @@ SRSASN_CODE rrc_conn_release_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_release_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -76393,7 +76269,7 @@ void rrc_conn_release_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_release_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_conn_release_r8: HANDLE_CODE(c.pack(bref)); @@ -76413,7 +76289,7 @@ SRSASN_CODE rrc_conn_release_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_release_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_conn_release_r8: @@ -76435,14 +76311,14 @@ SRSASN_CODE rrc_conn_release_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) // RRCConnectionResume-r13 ::= SEQUENCE SRSASN_CODE rrc_conn_resume_r13_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE rrc_conn_resume_r13_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -76535,7 +76411,7 @@ void rrc_conn_resume_r13_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_resume_r13_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -76551,7 +76427,7 @@ SRSASN_CODE rrc_conn_resume_r13_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_resume_r13_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -76591,7 +76467,7 @@ void rrc_conn_resume_r13_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_resume_r13_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_conn_resume_r13: HANDLE_CODE(c.pack(bref)); @@ -76611,7 +76487,7 @@ SRSASN_CODE rrc_conn_resume_r13_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) cons SRSASN_CODE rrc_conn_resume_r13_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_conn_resume_r13: @@ -76633,14 +76509,14 @@ SRSASN_CODE rrc_conn_resume_r13_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) // SecurityModeCommand ::= SEQUENCE SRSASN_CODE security_mode_cmd_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE security_mode_cmd_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -76733,7 +76609,7 @@ void security_mode_cmd_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE security_mode_cmd_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -76749,7 +76625,7 @@ SRSASN_CODE security_mode_cmd_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE security_mode_cmd_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -76789,7 +76665,7 @@ void security_mode_cmd_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE security_mode_cmd_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::security_mode_cmd_r8: HANDLE_CODE(c.pack(bref)); @@ -76809,7 +76685,7 @@ SRSASN_CODE security_mode_cmd_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE security_mode_cmd_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::security_mode_cmd_r8: @@ -76831,14 +76707,14 @@ SRSASN_CODE security_mode_cmd_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) // UECapabilityEnquiry ::= SEQUENCE SRSASN_CODE ue_cap_enquiry_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE ue_cap_enquiry_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -76930,7 +76806,7 @@ void ue_cap_enquiry_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE ue_cap_enquiry_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -76946,7 +76822,7 @@ SRSASN_CODE ue_cap_enquiry_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE ue_cap_enquiry_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -76986,7 +76862,7 @@ void ue_cap_enquiry_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE ue_cap_enquiry_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ue_cap_enquiry_r8: HANDLE_CODE(c.pack(bref)); @@ -77006,7 +76882,7 @@ SRSASN_CODE ue_cap_enquiry_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE ue_cap_enquiry_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ue_cap_enquiry_r8: @@ -77028,14 +76904,14 @@ SRSASN_CODE ue_cap_enquiry_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) // UEInformationRequest-r9 ::= SEQUENCE SRSASN_CODE ue_info_request_r9_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE ue_info_request_r9_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -77128,7 +77004,7 @@ void ue_info_request_r9_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE ue_info_request_r9_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -77144,7 +77020,7 @@ SRSASN_CODE ue_info_request_r9_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE ue_info_request_r9_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -77184,7 +77060,7 @@ void ue_info_request_r9_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE ue_info_request_r9_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ue_info_request_r9: HANDLE_CODE(c.pack(bref)); @@ -77204,7 +77080,7 @@ SRSASN_CODE ue_info_request_r9_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE ue_info_request_r9_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ue_info_request_r9: @@ -77302,7 +77178,7 @@ void dl_dcch_msg_type_c::to_json(json_writer& j) const } SRSASN_CODE dl_dcch_msg_type_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -77318,7 +77194,7 @@ SRSASN_CODE dl_dcch_msg_type_c::pack(bit_ref& bref) const SRSASN_CODE dl_dcch_msg_type_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -77619,7 +77495,7 @@ void dl_dcch_msg_type_c::c1_c_::to_json(json_writer& j) const } SRSASN_CODE dl_dcch_msg_type_c::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::csfb_params_resp_cdma2000: HANDLE_CODE(c.get().pack(bref)); @@ -77675,7 +77551,7 @@ SRSASN_CODE dl_dcch_msg_type_c::c1_c_::pack(bit_ref& bref) const SRSASN_CODE dl_dcch_msg_type_c::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::csfb_params_resp_cdma2000: @@ -77864,10 +77740,10 @@ void tmgi_r9_s::plmn_id_r9_c_::to_json(json_writer& j) const } SRSASN_CODE tmgi_r9_s::plmn_id_r9_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::plmn_idx_r9: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)1u, (uint8_t)6u)); break; case types::explicit_value_r9: HANDLE_CODE(c.get().pack(bref)); @@ -77881,11 +77757,11 @@ SRSASN_CODE tmgi_r9_s::plmn_id_r9_c_::pack(bit_ref& bref) const SRSASN_CODE tmgi_r9_s::plmn_id_r9_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::plmn_idx_r9: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)1u, (uint8_t)6u)); break; case types::explicit_value_r9: HANDLE_CODE(c.get().unpack(bref)); @@ -77907,7 +77783,7 @@ SRSASN_CODE mbms_session_info_r9_s::pack(bit_ref& bref) const if (session_id_r9_present) { HANDLE_CODE(session_id_r9.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, lc_ch_id_r9, (uint8_t)0, (uint8_t)28)); + HANDLE_CODE(pack_integer(bref, lc_ch_id_r9, (uint8_t)0u, (uint8_t)28u)); return SRSASN_SUCCESS; } @@ -77920,7 +77796,7 @@ SRSASN_CODE mbms_session_info_r9_s::unpack(bit_ref& bref) if (session_id_r9_present) { HANDLE_CODE(session_id_r9.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(lc_ch_id_r9, bref, (uint8_t)0, (uint8_t)28)); + HANDLE_CODE(unpack_integer(lc_ch_id_r9, bref, (uint8_t)0u, (uint8_t)28u)); return SRSASN_SUCCESS; } @@ -77940,9 +77816,9 @@ void mbms_session_info_r9_s::to_json(json_writer& j) const SRSASN_CODE pmch_cfg_r12_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, sf_alloc_end_r12, (uint16_t)0, (uint16_t)1535)); + HANDLE_CODE(pack_integer(bref, sf_alloc_end_r12, (uint16_t)0u, (uint16_t)1535u)); HANDLE_CODE(data_mcs_r12.pack(bref)); - HANDLE_CODE(pack_enum(bref, mch_sched_period_r12)); + HANDLE_CODE(mch_sched_period_r12.pack(bref)); if (ext) { ext_groups_packer_guard group_flags; @@ -77950,11 +77826,11 @@ SRSASN_CODE pmch_cfg_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(mch_sched_period_v1430_present, 1)); if (mch_sched_period_v1430_present) { - HANDLE_CODE(pack_enum(bref, mch_sched_period_v1430)); + HANDLE_CODE(mch_sched_period_v1430.pack(bref)); } } } @@ -77963,20 +77839,20 @@ SRSASN_CODE pmch_cfg_r12_s::pack(bit_ref& bref) const SRSASN_CODE pmch_cfg_r12_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(sf_alloc_end_r12, bref, (uint16_t)0, (uint16_t)1535)); + HANDLE_CODE(unpack_integer(sf_alloc_end_r12, bref, (uint16_t)0u, (uint16_t)1535u)); HANDLE_CODE(data_mcs_r12.unpack(bref)); - HANDLE_CODE(unpack_enum(mch_sched_period_r12, bref)); + HANDLE_CODE(mch_sched_period_r12.unpack(bref)); if (ext) { ext_groups_unpacker_guard group_flags(1); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(mch_sched_period_v1430_present, 1)); if (mch_sched_period_v1430_present) { - HANDLE_CODE(unpack_enum(mch_sched_period_v1430, bref)); + HANDLE_CODE(mch_sched_period_v1430.unpack(bref)); } } } @@ -78058,13 +77934,13 @@ void pmch_cfg_r12_s::data_mcs_r12_c_::to_json(json_writer& j) const } SRSASN_CODE pmch_cfg_r12_s::data_mcs_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::normal_r12: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)28)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)28u)); break; case types::higer_order_r12: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)27)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)27u)); break; default: log_invalid_choice_id(type_, "pmch_cfg_r12_s::data_mcs_r12_c_"); @@ -78075,14 +77951,14 @@ SRSASN_CODE pmch_cfg_r12_s::data_mcs_r12_c_::pack(bit_ref& bref) const SRSASN_CODE pmch_cfg_r12_s::data_mcs_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::normal_r12: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)28)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)28u)); break; case types::higer_order_r12: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)27)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)27u)); break; default: log_invalid_choice_id(type_, "pmch_cfg_r12_s::data_mcs_r12_c_"); @@ -78158,18 +78034,18 @@ void mbsfn_area_cfg_v1430_ies_s::to_json(json_writer& j) const SRSASN_CODE pmch_cfg_r9_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, sf_alloc_end_r9, (uint16_t)0, (uint16_t)1535)); - HANDLE_CODE(pack_unalign_integer(bref, data_mcs_r9, (uint8_t)0, (uint8_t)28)); - HANDLE_CODE(pack_enum(bref, mch_sched_period_r9)); + HANDLE_CODE(pack_integer(bref, sf_alloc_end_r9, (uint16_t)0u, (uint16_t)1535u)); + HANDLE_CODE(pack_integer(bref, data_mcs_r9, (uint8_t)0u, (uint8_t)28u)); + HANDLE_CODE(mch_sched_period_r9.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE pmch_cfg_r9_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(sf_alloc_end_r9, bref, (uint16_t)0, (uint16_t)1535)); - HANDLE_CODE(unpack_unalign_integer(data_mcs_r9, bref, (uint8_t)0, (uint8_t)28)); - HANDLE_CODE(unpack_enum(mch_sched_period_r9, bref)); + HANDLE_CODE(unpack_integer(sf_alloc_end_r9, bref, (uint16_t)0u, (uint16_t)1535u)); + HANDLE_CODE(unpack_integer(data_mcs_r9, bref, (uint8_t)0u, (uint8_t)28u)); + HANDLE_CODE(mch_sched_period_r9.unpack(bref)); return SRSASN_SUCCESS; } @@ -78373,7 +78249,7 @@ SRSASN_CODE mbsfn_area_cfg_r9_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); HANDLE_CODE(pack_dyn_seq_of(bref, common_sf_alloc_r9, 1, 8)); - HANDLE_CODE(pack_enum(bref, common_sf_alloc_period_r9)); + HANDLE_CODE(common_sf_alloc_period_r9.pack(bref)); HANDLE_CODE(pack_dyn_seq_of(bref, pmch_info_list_r9, 0, 15)); if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -78386,7 +78262,7 @@ SRSASN_CODE mbsfn_area_cfg_r9_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); HANDLE_CODE(unpack_dyn_seq_of(common_sf_alloc_r9, bref, 1, 8)); - HANDLE_CODE(unpack_enum(common_sf_alloc_period_r9, bref)); + HANDLE_CODE(common_sf_alloc_period_r9.unpack(bref)); HANDLE_CODE(unpack_dyn_seq_of(pmch_info_list_r9, bref, 0, 15)); if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -78502,7 +78378,7 @@ void mcch_msg_type_c::to_json(json_writer& j) const } SRSASN_CODE mcch_msg_type_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -78519,7 +78395,7 @@ SRSASN_CODE mcch_msg_type_c::pack(bit_ref& bref) const SRSASN_CODE mcch_msg_type_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -78631,7 +78507,7 @@ void mcch_msg_type_c::later_c_::to_json(json_writer& j) const } SRSASN_CODE mcch_msg_type_c::later_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c2: HANDLE_CODE(c.get().pack(bref)); @@ -78647,7 +78523,7 @@ SRSASN_CODE mcch_msg_type_c::later_c_::pack(bit_ref& bref) const SRSASN_CODE mcch_msg_type_c::later_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c2: @@ -78958,20 +78834,20 @@ void paging_ue_id_c::to_json(json_writer& j) const } SRSASN_CODE paging_ue_id_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::s_tmsi: HANDLE_CODE(c.get().pack(bref)); break; case types::imsi: - HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 6, 21, UnalignedIntegerPacker(0, 9))); + HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 6, 21, integer_packer(0, 9))); break; case types::ng_minus5_g_s_tmsi_r15: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get >().pack(bref)); } break; case types::i_rnti_r15: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get >().pack(bref)); } break; default: @@ -78983,21 +78859,21 @@ SRSASN_CODE paging_ue_id_c::pack(bit_ref& bref) const SRSASN_CODE paging_ue_id_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::s_tmsi: HANDLE_CODE(c.get().unpack(bref)); break; case types::imsi: - HANDLE_CODE(unpack_dyn_seq_of(c.get(), bref, 6, 21, UnalignedIntegerPacker(0, 9))); + HANDLE_CODE(unpack_dyn_seq_of(c.get(), bref, 6, 21, integer_packer(0, 9))); break; case types::ng_minus5_g_s_tmsi_r15: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get >().unpack(bref)); } break; case types::i_rnti_r15: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get >().unpack(bref)); } break; default: @@ -79048,7 +78924,7 @@ SRSASN_CODE paging_record_s::pack(bit_ref& bref) const { bref.pack(ext, 1); HANDLE_CODE(ue_id.pack(bref)); - HANDLE_CODE(pack_enum(bref, cn_domain)); + HANDLE_CODE(cn_domain.pack(bref)); return SRSASN_SUCCESS; } @@ -79056,7 +78932,7 @@ SRSASN_CODE paging_record_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); HANDLE_CODE(ue_id.unpack(bref)); - HANDLE_CODE(unpack_enum(cn_domain, bref)); + HANDLE_CODE(cn_domain.unpack(bref)); return SRSASN_SUCCESS; } @@ -79246,7 +79122,7 @@ void pcch_msg_type_c::to_json(json_writer& j) const } SRSASN_CODE pcch_msg_type_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -79262,7 +79138,7 @@ SRSASN_CODE pcch_msg_type_c::pack(bit_ref& bref) const SRSASN_CODE pcch_msg_type_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -79362,8 +79238,8 @@ void mbms_session_info_r13_s::to_json(json_writer& j) const SRSASN_CODE sc_mtch_sched_info_br_r14_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_enum(bref, on_dur_timer_scptm_r14)); - HANDLE_CODE(pack_enum(bref, drx_inactivity_timer_scptm_r14)); + HANDLE_CODE(on_dur_timer_scptm_r14.pack(bref)); + HANDLE_CODE(drx_inactivity_timer_scptm_r14.pack(bref)); HANDLE_CODE(sched_period_start_offset_scptm_r14.pack(bref)); return SRSASN_SUCCESS; @@ -79371,8 +79247,8 @@ SRSASN_CODE sc_mtch_sched_info_br_r14_s::pack(bit_ref& bref) const SRSASN_CODE sc_mtch_sched_info_br_r14_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_enum(on_dur_timer_scptm_r14, bref)); - HANDLE_CODE(unpack_enum(drx_inactivity_timer_scptm_r14, bref)); + HANDLE_CODE(on_dur_timer_scptm_r14.unpack(bref)); + HANDLE_CODE(drx_inactivity_timer_scptm_r14.unpack(bref)); HANDLE_CODE(sched_period_start_offset_scptm_r14.unpack(bref)); return SRSASN_SUCCESS; @@ -79423,7 +79299,7 @@ sc_mtch_sched_info_br_r14_s::sched_period_start_offset_scptm_r14_c_::sched_perio c.init(other.c.get()); break; case types::sf256: - c.init(other.c.get()); + c.init(other.c.get()); break; case types::sf320: c.init(other.c.get()); @@ -79486,7 +79362,7 @@ operator=(const sc_mtch_sched_info_br_r14_s::sched_period_start_offset_scptm_r14 c.set(other.c.get()); break; case types::sf256: - c.set(other.c.get()); + c.set(other.c.get()); break; case types::sf320: c.set(other.c.get()); @@ -79546,7 +79422,7 @@ void sc_mtch_sched_info_br_r14_s::sched_period_start_offset_scptm_r14_c_::to_jso j.write_int("sf160", c.get()); break; case types::sf256: - j.write_int("sf256", c.get()); + j.write_int("sf256", c.get()); break; case types::sf320: j.write_int("sf320", c.get()); @@ -79576,55 +79452,55 @@ void sc_mtch_sched_info_br_r14_s::sched_period_start_offset_scptm_r14_c_::to_jso } SRSASN_CODE sc_mtch_sched_info_br_r14_s::sched_period_start_offset_scptm_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sf10: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)9u)); break; case types::sf20: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)19)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)19u)); break; case types::sf32: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)31u)); break; case types::sf40: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)39)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)39u)); break; case types::sf64: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)63u)); break; case types::sf80: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)79)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)79u)); break; case types::sf128: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)127u)); break; case types::sf160: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)159u)); break; case types::sf256: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)255u)); break; case types::sf320: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)319u)); break; case types::sf512: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)511u)); break; case types::sf640: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)639u)); break; case types::sf1024: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1023u)); break; case types::sf2048: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)2047u)); break; case types::sf4096: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)4095)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)4095u)); break; case types::sf8192: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)8191)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)8191u)); break; default: log_invalid_choice_id(type_, "sc_mtch_sched_info_br_r14_s::sched_period_start_offset_scptm_r14_c_"); @@ -79635,56 +79511,56 @@ SRSASN_CODE sc_mtch_sched_info_br_r14_s::sched_period_start_offset_scptm_r14_c_: SRSASN_CODE sc_mtch_sched_info_br_r14_s::sched_period_start_offset_scptm_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sf10: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)9u)); break; case types::sf20: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)19)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)19u)); break; case types::sf32: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)31u)); break; case types::sf40: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)39)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)39u)); break; case types::sf64: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)63u)); break; case types::sf80: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)79)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)79u)); break; case types::sf128: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)127u)); break; case types::sf160: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)159u)); break; case types::sf256: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)255u)); break; case types::sf320: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)319u)); break; case types::sf512: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)511u)); break; case types::sf640: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)639u)); break; case types::sf1024: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1023u)); break; case types::sf2048: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)2047)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)2047u)); break; case types::sf4096: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)4095)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)4095u)); break; case types::sf8192: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)8191)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)8191u)); break; default: log_invalid_choice_id(type_, "sc_mtch_sched_info_br_r14_s::sched_period_start_offset_scptm_r14_c_"); @@ -79697,8 +79573,8 @@ SRSASN_CODE sc_mtch_sched_info_br_r14_s::sched_period_start_offset_scptm_r14_c_: SRSASN_CODE sc_mtch_sched_info_r13_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_enum(bref, on_dur_timer_scptm_r13)); - HANDLE_CODE(pack_enum(bref, drx_inactivity_timer_scptm_r13)); + HANDLE_CODE(on_dur_timer_scptm_r13.pack(bref)); + HANDLE_CODE(drx_inactivity_timer_scptm_r13.pack(bref)); HANDLE_CODE(sched_period_start_offset_scptm_r13.pack(bref)); return SRSASN_SUCCESS; @@ -79706,8 +79582,8 @@ SRSASN_CODE sc_mtch_sched_info_r13_s::pack(bit_ref& bref) const SRSASN_CODE sc_mtch_sched_info_r13_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_enum(on_dur_timer_scptm_r13, bref)); - HANDLE_CODE(unpack_enum(drx_inactivity_timer_scptm_r13, bref)); + HANDLE_CODE(on_dur_timer_scptm_r13.unpack(bref)); + HANDLE_CODE(drx_inactivity_timer_scptm_r13.unpack(bref)); HANDLE_CODE(sched_period_start_offset_scptm_r13.unpack(bref)); return SRSASN_SUCCESS; @@ -79758,7 +79634,7 @@ sc_mtch_sched_info_r13_s::sched_period_start_offset_scptm_r13_c_::sched_period_s c.init(other.c.get()); break; case types::sf256: - c.init(other.c.get()); + c.init(other.c.get()); break; case types::sf320: c.init(other.c.get()); @@ -79821,7 +79697,7 @@ operator=(const sc_mtch_sched_info_r13_s::sched_period_start_offset_scptm_r13_c_ c.set(other.c.get()); break; case types::sf256: - c.set(other.c.get()); + c.set(other.c.get()); break; case types::sf320: c.set(other.c.get()); @@ -79881,7 +79757,7 @@ void sc_mtch_sched_info_r13_s::sched_period_start_offset_scptm_r13_c_::to_json(j j.write_int("sf160", c.get()); break; case types::sf256: - j.write_int("sf256", c.get()); + j.write_int("sf256", c.get()); break; case types::sf320: j.write_int("sf320", c.get()); @@ -79911,55 +79787,55 @@ void sc_mtch_sched_info_r13_s::sched_period_start_offset_scptm_r13_c_::to_json(j } SRSASN_CODE sc_mtch_sched_info_r13_s::sched_period_start_offset_scptm_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sf10: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)9u)); break; case types::sf20: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)19)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)19u)); break; case types::sf32: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)31u)); break; case types::sf40: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)39)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)39u)); break; case types::sf64: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)63u)); break; case types::sf80: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)79)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)79u)); break; case types::sf128: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)127u)); break; case types::sf160: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)159u)); break; case types::sf256: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)255u)); break; case types::sf320: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)319u)); break; case types::sf512: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)511u)); break; case types::sf640: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)639u)); break; case types::sf1024: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1023u)); break; case types::sf2048: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)2048)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)2048u)); break; case types::sf4096: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)4096)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)4096u)); break; case types::sf8192: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)8192)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)8192u)); break; default: log_invalid_choice_id(type_, "sc_mtch_sched_info_r13_s::sched_period_start_offset_scptm_r13_c_"); @@ -79970,56 +79846,56 @@ SRSASN_CODE sc_mtch_sched_info_r13_s::sched_period_start_offset_scptm_r13_c_::pa SRSASN_CODE sc_mtch_sched_info_r13_s::sched_period_start_offset_scptm_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sf10: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)9u)); break; case types::sf20: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)19)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)19u)); break; case types::sf32: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)31u)); break; case types::sf40: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)39)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)39u)); break; case types::sf64: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)63u)); break; case types::sf80: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)79)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)79u)); break; case types::sf128: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)127u)); break; case types::sf160: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)159u)); break; case types::sf256: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)255u)); break; case types::sf320: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)319u)); break; case types::sf512: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)511u)); break; case types::sf640: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)639u)); break; case types::sf1024: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1023u)); break; case types::sf2048: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)2048)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)2048u)); break; case types::sf4096: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)4096)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)4096u)); break; case types::sf8192: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)8192)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)8192u)); break; default: log_invalid_choice_id(type_, "sc_mtch_sched_info_r13_s::sched_period_start_offset_scptm_r13_c_"); @@ -80033,9 +79909,9 @@ SRSASN_CODE pci_arfcn_r13_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(carrier_freq_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, pci_r13, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(pack_integer(bref, pci_r13, (uint16_t)0u, (uint16_t)503u)); if (carrier_freq_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r13, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r13, (uint32_t)0u, (uint32_t)262143u)); } return SRSASN_SUCCESS; @@ -80044,9 +79920,9 @@ SRSASN_CODE pci_arfcn_r13_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(carrier_freq_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(pci_r13, bref, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(unpack_integer(pci_r13, bref, (uint16_t)0u, (uint16_t)503u)); if (carrier_freq_r13_present) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r13, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(carrier_freq_r13, bref, (uint32_t)0u, (uint32_t)262143u)); } return SRSASN_SUCCESS; @@ -80069,7 +79945,7 @@ SRSASN_CODE sc_mtch_info_br_r14_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(sc_mtch_neighbour_cell_r14_present, 1)); HANDLE_CODE(bref.pack(p_a_r14_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, sc_mtch_carrier_freq_r14, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, sc_mtch_carrier_freq_r14, (uint32_t)0u, (uint32_t)262143u)); HANDLE_CODE(mbms_session_info_r14.pack(bref)); HANDLE_CODE(g_rnti_r14.pack(bref)); if (sc_mtch_sched_info_r14_present) { @@ -80078,15 +79954,15 @@ SRSASN_CODE sc_mtch_info_br_r14_s::pack(bit_ref& bref) const if (sc_mtch_neighbour_cell_r14_present) { HANDLE_CODE(sc_mtch_neighbour_cell_r14.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, mpdcch_nb_sc_mtch_r14, (uint8_t)1, (uint8_t)16)); - HANDLE_CODE(pack_enum(bref, mpdcch_num_repeat_sc_mtch_r14)); + HANDLE_CODE(pack_integer(bref, mpdcch_nb_sc_mtch_r14, (uint8_t)1u, (uint8_t)16u)); + HANDLE_CODE(mpdcch_num_repeat_sc_mtch_r14.pack(bref)); HANDLE_CODE(mpdcch_start_sf_sc_mtch_r14.pack(bref)); - HANDLE_CODE(pack_enum(bref, mpdcch_pdsch_hop_cfg_sc_mtch_r14)); - HANDLE_CODE(pack_enum(bref, mpdcch_pdsch_cemode_cfg_sc_mtch_r14)); - HANDLE_CODE(pack_enum(bref, mpdcch_pdsch_max_bw_sc_mtch_r14)); - HANDLE_CODE(pack_enum(bref, mpdcch_offset_sc_mtch_r14)); + HANDLE_CODE(mpdcch_pdsch_hop_cfg_sc_mtch_r14.pack(bref)); + HANDLE_CODE(mpdcch_pdsch_cemode_cfg_sc_mtch_r14.pack(bref)); + HANDLE_CODE(mpdcch_pdsch_max_bw_sc_mtch_r14.pack(bref)); + HANDLE_CODE(mpdcch_offset_sc_mtch_r14.pack(bref)); if (p_a_r14_present) { - HANDLE_CODE(pack_enum(bref, p_a_r14)); + HANDLE_CODE(p_a_r14.pack(bref)); } return SRSASN_SUCCESS; @@ -80098,7 +79974,7 @@ SRSASN_CODE sc_mtch_info_br_r14_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(sc_mtch_neighbour_cell_r14_present, 1)); HANDLE_CODE(bref.unpack(p_a_r14_present, 1)); - HANDLE_CODE(unpack_unalign_integer(sc_mtch_carrier_freq_r14, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(sc_mtch_carrier_freq_r14, bref, (uint32_t)0u, (uint32_t)262143u)); HANDLE_CODE(mbms_session_info_r14.unpack(bref)); HANDLE_CODE(g_rnti_r14.unpack(bref)); if (sc_mtch_sched_info_r14_present) { @@ -80107,15 +79983,15 @@ SRSASN_CODE sc_mtch_info_br_r14_s::unpack(bit_ref& bref) if (sc_mtch_neighbour_cell_r14_present) { HANDLE_CODE(sc_mtch_neighbour_cell_r14.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(mpdcch_nb_sc_mtch_r14, bref, (uint8_t)1, (uint8_t)16)); - HANDLE_CODE(unpack_enum(mpdcch_num_repeat_sc_mtch_r14, bref)); + HANDLE_CODE(unpack_integer(mpdcch_nb_sc_mtch_r14, bref, (uint8_t)1u, (uint8_t)16u)); + HANDLE_CODE(mpdcch_num_repeat_sc_mtch_r14.unpack(bref)); HANDLE_CODE(mpdcch_start_sf_sc_mtch_r14.unpack(bref)); - HANDLE_CODE(unpack_enum(mpdcch_pdsch_hop_cfg_sc_mtch_r14, bref)); - HANDLE_CODE(unpack_enum(mpdcch_pdsch_cemode_cfg_sc_mtch_r14, bref)); - HANDLE_CODE(unpack_enum(mpdcch_pdsch_max_bw_sc_mtch_r14, bref)); - HANDLE_CODE(unpack_enum(mpdcch_offset_sc_mtch_r14, bref)); + HANDLE_CODE(mpdcch_pdsch_hop_cfg_sc_mtch_r14.unpack(bref)); + HANDLE_CODE(mpdcch_pdsch_cemode_cfg_sc_mtch_r14.unpack(bref)); + HANDLE_CODE(mpdcch_pdsch_max_bw_sc_mtch_r14.unpack(bref)); + HANDLE_CODE(mpdcch_offset_sc_mtch_r14.unpack(bref)); if (p_a_r14_present) { - HANDLE_CODE(unpack_enum(p_a_r14, bref)); + HANDLE_CODE(p_a_r14.unpack(bref)); } return SRSASN_SUCCESS; @@ -80210,13 +80086,13 @@ void sc_mtch_info_br_r14_s::mpdcch_start_sf_sc_mtch_r14_c_::to_json(json_writer& } SRSASN_CODE sc_mtch_info_br_r14_s::mpdcch_start_sf_sc_mtch_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::fdd_r14: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; case types::tdd_r14: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; default: log_invalid_choice_id(type_, "sc_mtch_info_br_r14_s::mpdcch_start_sf_sc_mtch_r14_c_"); @@ -80227,14 +80103,14 @@ SRSASN_CODE sc_mtch_info_br_r14_s::mpdcch_start_sf_sc_mtch_r14_c_::pack(bit_ref& SRSASN_CODE sc_mtch_info_br_r14_s::mpdcch_start_sf_sc_mtch_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::fdd_r14: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; case types::tdd_r14: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; default: log_invalid_choice_id(type_, "sc_mtch_info_br_r14_s::mpdcch_start_sf_sc_mtch_r14_c_"); @@ -80265,11 +80141,11 @@ SRSASN_CODE sc_mtch_info_r13_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(p_a_r13_present, 1)); if (p_a_r13_present) { - HANDLE_CODE(pack_enum(bref, p_a_r13)); + HANDLE_CODE(p_a_r13.pack(bref)); } } } @@ -80295,11 +80171,11 @@ SRSASN_CODE sc_mtch_info_r13_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(p_a_r13_present, 1)); if (p_a_r13_present) { - HANDLE_CODE(unpack_enum(p_a_r13, bref)); + HANDLE_CODE(p_a_r13.unpack(bref)); } } } @@ -80333,7 +80209,7 @@ SRSASN_CODE scptm_cfg_v1340_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (p_b_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, p_b_r13, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, p_b_r13, (uint8_t)0u, (uint8_t)3u)); } return SRSASN_SUCCESS; @@ -80344,7 +80220,7 @@ SRSASN_CODE scptm_cfg_v1340_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (p_b_r13_present) { - HANDLE_CODE(unpack_unalign_integer(p_b_r13, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(p_b_r13, bref, (uint8_t)0u, (uint8_t)3u)); } return SRSASN_SUCCESS; @@ -80376,7 +80252,7 @@ SRSASN_CODE scptm_cfg_br_r14_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, scptm_neighbour_cell_list_r14, 1, 8)); } if (p_b_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, p_b_r14, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, p_b_r14, (uint8_t)0u, (uint8_t)3u)); } if (late_non_crit_ext_present) { HANDLE_CODE(late_non_crit_ext.pack(bref)); @@ -80396,7 +80272,7 @@ SRSASN_CODE scptm_cfg_br_r14_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(scptm_neighbour_cell_list_r14, bref, 1, 8)); } if (p_b_r14_present) { - HANDLE_CODE(unpack_unalign_integer(p_b_r14, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(p_b_r14, bref, (uint8_t)0u, (uint8_t)3u)); } if (late_non_crit_ext_present) { HANDLE_CODE(late_non_crit_ext.unpack(bref)); @@ -80584,7 +80460,7 @@ void sc_mcch_msg_type_r13_c::to_json(json_writer& j) const } SRSASN_CODE sc_mcch_msg_type_r13_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -80601,7 +80477,7 @@ SRSASN_CODE sc_mcch_msg_type_r13_c::pack(bit_ref& bref) const SRSASN_CODE sc_mcch_msg_type_r13_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -80714,7 +80590,7 @@ void sc_mcch_msg_type_r13_c::msg_class_ext_c_::to_json(json_writer& j) const } SRSASN_CODE sc_mcch_msg_type_r13_c::msg_class_ext_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c2: HANDLE_CODE(c.get().pack(bref)); @@ -80730,7 +80606,7 @@ SRSASN_CODE sc_mcch_msg_type_r13_c::msg_class_ext_c_::pack(bit_ref& bref) const SRSASN_CODE sc_mcch_msg_type_r13_c::msg_class_ext_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c2: @@ -80766,7 +80642,7 @@ void sc_mcch_msg_type_r13_c::msg_class_ext_c_::c2_c_::to_json(json_writer& j) co } SRSASN_CODE sc_mcch_msg_type_r13_c::msg_class_ext_c_::c2_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::scptm_cfg_br_r14: HANDLE_CODE(c.pack(bref)); @@ -80782,7 +80658,7 @@ SRSASN_CODE sc_mcch_msg_type_r13_c::msg_class_ext_c_::c2_c_::pack(bit_ref& bref) SRSASN_CODE sc_mcch_msg_type_r13_c::msg_class_ext_c_::c2_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::scptm_cfg_br_r14: @@ -80912,7 +80788,7 @@ void init_ue_id_c::to_json(json_writer& j) const } SRSASN_CODE init_ue_id_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::s_tmsi: HANDLE_CODE(c.get().pack(bref)); @@ -80929,7 +80805,7 @@ SRSASN_CODE init_ue_id_c::pack(bit_ref& bref) const SRSASN_CODE init_ue_id_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::s_tmsi: @@ -80949,7 +80825,7 @@ SRSASN_CODE init_ue_id_c::unpack(bit_ref& bref) SRSASN_CODE reestab_ue_id_s::pack(bit_ref& bref) const { HANDLE_CODE(c_rnti.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, pci, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(pack_integer(bref, pci, (uint16_t)0u, (uint16_t)503u)); HANDLE_CODE(short_mac_i.pack(bref)); return SRSASN_SUCCESS; @@ -80957,7 +80833,7 @@ SRSASN_CODE reestab_ue_id_s::pack(bit_ref& bref) const SRSASN_CODE reestab_ue_id_s::unpack(bit_ref& bref) { HANDLE_CODE(c_rnti.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(pci, bref, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(unpack_integer(pci, bref, (uint16_t)0u, (uint16_t)503u)); HANDLE_CODE(short_mac_i.unpack(bref)); return SRSASN_SUCCESS; @@ -80975,7 +80851,7 @@ void reestab_ue_id_s::to_json(json_writer& j) const SRSASN_CODE rrc_conn_reest_request_r8_ies_s::pack(bit_ref& bref) const { HANDLE_CODE(ue_id.pack(bref)); - HANDLE_CODE(pack_enum(bref, reest_cause)); + HANDLE_CODE(reest_cause.pack(bref)); HANDLE_CODE(spare.pack(bref)); return SRSASN_SUCCESS; @@ -80983,7 +80859,7 @@ SRSASN_CODE rrc_conn_reest_request_r8_ies_s::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_reest_request_r8_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(ue_id.unpack(bref)); - HANDLE_CODE(unpack_enum(reest_cause, bref)); + HANDLE_CODE(reest_cause.unpack(bref)); HANDLE_CODE(spare.unpack(bref)); return SRSASN_SUCCESS; @@ -81002,7 +80878,7 @@ void rrc_conn_reest_request_r8_ies_s::to_json(json_writer& j) const SRSASN_CODE rrc_conn_request_r8_ies_s::pack(bit_ref& bref) const { HANDLE_CODE(ue_id.pack(bref)); - HANDLE_CODE(pack_enum(bref, establishment_cause)); + HANDLE_CODE(establishment_cause.pack(bref)); HANDLE_CODE(spare.pack(bref)); return SRSASN_SUCCESS; @@ -81010,7 +80886,7 @@ SRSASN_CODE rrc_conn_request_r8_ies_s::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_request_r8_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(ue_id.unpack(bref)); - HANDLE_CODE(unpack_enum(establishment_cause, bref)); + HANDLE_CODE(establishment_cause.unpack(bref)); HANDLE_CODE(spare.unpack(bref)); return SRSASN_SUCCESS; @@ -81030,7 +80906,7 @@ SRSASN_CODE rrc_conn_resume_request_minus5_gc_r15_ies_s::pack(bit_ref& bref) con { HANDLE_CODE(resume_id_r15.pack(bref)); HANDLE_CODE(short_resume_mac_i_r15.pack(bref)); - HANDLE_CODE(pack_enum(bref, resume_cause_r15)); + HANDLE_CODE(resume_cause_r15.pack(bref)); HANDLE_CODE(spare.pack(bref)); return SRSASN_SUCCESS; @@ -81039,7 +80915,7 @@ SRSASN_CODE rrc_conn_resume_request_minus5_gc_r15_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(resume_id_r15.unpack(bref)); HANDLE_CODE(short_resume_mac_i_r15.unpack(bref)); - HANDLE_CODE(unpack_enum(resume_cause_r15, bref)); + HANDLE_CODE(resume_cause_r15.unpack(bref)); HANDLE_CODE(spare.unpack(bref)); return SRSASN_SUCCESS; @@ -81142,7 +81018,7 @@ void rrc_conn_resume_request_minus5_gc_r15_ies_s::resume_id_r15_c_::to_json(json } SRSASN_CODE rrc_conn_resume_request_minus5_gc_r15_ies_s::resume_id_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::full_i_rnti_r15: HANDLE_CODE(c.get >().pack(bref)); @@ -81159,7 +81035,7 @@ SRSASN_CODE rrc_conn_resume_request_minus5_gc_r15_ies_s::resume_id_r15_c_::pack( SRSASN_CODE rrc_conn_resume_request_minus5_gc_r15_ies_s::resume_id_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::full_i_rnti_r15: @@ -81180,7 +81056,7 @@ SRSASN_CODE rrc_conn_resume_request_r13_ies_s::pack(bit_ref& bref) const { HANDLE_CODE(resume_id_r13.pack(bref)); HANDLE_CODE(short_resume_mac_i_r13.pack(bref)); - HANDLE_CODE(pack_enum(bref, resume_cause_r13)); + HANDLE_CODE(resume_cause_r13.pack(bref)); HANDLE_CODE(spare.pack(bref)); return SRSASN_SUCCESS; @@ -81189,7 +81065,7 @@ SRSASN_CODE rrc_conn_resume_request_r13_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(resume_id_r13.unpack(bref)); HANDLE_CODE(short_resume_mac_i_r13.unpack(bref)); - HANDLE_CODE(unpack_enum(resume_cause_r13, bref)); + HANDLE_CODE(resume_cause_r13.unpack(bref)); HANDLE_CODE(spare.unpack(bref)); return SRSASN_SUCCESS; @@ -81291,7 +81167,7 @@ void rrc_conn_resume_request_r13_ies_s::resume_id_r13_c_::to_json(json_writer& j } SRSASN_CODE rrc_conn_resume_request_r13_ies_s::resume_id_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::resume_id_r13: HANDLE_CODE(c.get >().pack(bref)); @@ -81308,7 +81184,7 @@ SRSASN_CODE rrc_conn_resume_request_r13_ies_s::resume_id_r13_c_::pack(bit_ref& b SRSASN_CODE rrc_conn_resume_request_r13_ies_s::resume_id_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::resume_id_r13: @@ -81330,7 +81206,7 @@ SRSASN_CODE rrc_early_data_request_r15_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); HANDLE_CODE(s_tmsi_r15.pack(bref)); - HANDLE_CODE(pack_enum(bref, establishment_cause_r15)); + HANDLE_CODE(establishment_cause_r15.pack(bref)); HANDLE_CODE(ded_info_nas_r15.pack(bref)); return SRSASN_SUCCESS; @@ -81340,7 +81216,7 @@ SRSASN_CODE rrc_early_data_request_r15_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); HANDLE_CODE(s_tmsi_r15.unpack(bref)); - HANDLE_CODE(unpack_enum(establishment_cause_r15, bref)); + HANDLE_CODE(establishment_cause_r15.unpack(bref)); HANDLE_CODE(ded_info_nas_r15.unpack(bref)); return SRSASN_SUCCESS; @@ -81460,7 +81336,7 @@ void rrc_conn_reest_request_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_reest_request_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_conn_reest_request_r8: HANDLE_CODE(c.get().pack(bref)); @@ -81476,7 +81352,7 @@ SRSASN_CODE rrc_conn_reest_request_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_reest_request_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_conn_reest_request_r8: @@ -81591,7 +81467,7 @@ void rrc_conn_request_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_request_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_conn_request_r8: HANDLE_CODE(c.get().pack(bref)); @@ -81607,7 +81483,7 @@ SRSASN_CODE rrc_conn_request_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_request_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_conn_request_r8: @@ -81730,7 +81606,7 @@ void rrc_conn_resume_request_r13_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_resume_request_r13_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_conn_resume_request_r13: HANDLE_CODE(c.get().pack(bref)); @@ -81747,7 +81623,7 @@ SRSASN_CODE rrc_conn_resume_request_r13_s::crit_exts_c_::pack(bit_ref& bref) con SRSASN_CODE rrc_conn_resume_request_r13_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_conn_resume_request_r13: @@ -81863,7 +81739,7 @@ void rrc_early_data_request_r15_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_early_data_request_r15_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_early_data_request_r15: HANDLE_CODE(c.get().pack(bref)); @@ -81879,7 +81755,7 @@ SRSASN_CODE rrc_early_data_request_r15_s::crit_exts_c_::pack(bit_ref& bref) cons SRSASN_CODE rrc_early_data_request_r15_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_early_data_request_r15: @@ -81981,7 +81857,7 @@ void ul_ccch_msg_type_c::to_json(json_writer& j) const } SRSASN_CODE ul_ccch_msg_type_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -81998,7 +81874,7 @@ SRSASN_CODE ul_ccch_msg_type_c::pack(bit_ref& bref) const SRSASN_CODE ul_ccch_msg_type_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -82100,7 +81976,7 @@ void ul_ccch_msg_type_c::c1_c_::to_json(json_writer& j) const } SRSASN_CODE ul_ccch_msg_type_c::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_conn_reest_request: HANDLE_CODE(c.get().pack(bref)); @@ -82117,7 +81993,7 @@ SRSASN_CODE ul_ccch_msg_type_c::c1_c_::pack(bit_ref& bref) const SRSASN_CODE ul_ccch_msg_type_c::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_conn_reest_request: @@ -82220,7 +82096,7 @@ void ul_ccch_msg_type_c::msg_class_ext_c_::to_json(json_writer& j) const } SRSASN_CODE ul_ccch_msg_type_c::msg_class_ext_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c2: HANDLE_CODE(c.get().pack(bref)); @@ -82237,7 +82113,7 @@ SRSASN_CODE ul_ccch_msg_type_c::msg_class_ext_c_::pack(bit_ref& bref) const SRSASN_CODE ul_ccch_msg_type_c::msg_class_ext_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c2: @@ -82352,7 +82228,7 @@ void ul_ccch_msg_type_c::msg_class_ext_c_::msg_class_ext_future_r13_c_::to_json( } SRSASN_CODE ul_ccch_msg_type_c::msg_class_ext_c_::msg_class_ext_future_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c3: HANDLE_CODE(c.get().pack(bref)); @@ -82368,7 +82244,7 @@ SRSASN_CODE ul_ccch_msg_type_c::msg_class_ext_c_::msg_class_ext_future_r13_c_::p SRSASN_CODE ul_ccch_msg_type_c::msg_class_ext_c_::msg_class_ext_future_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c3: @@ -82408,7 +82284,7 @@ void ul_ccch_msg_type_c::msg_class_ext_c_::msg_class_ext_future_r13_c_::c3_c_::t } SRSASN_CODE ul_ccch_msg_type_c::msg_class_ext_c_::msg_class_ext_future_r13_c_::c3_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_early_data_request_r15: HANDLE_CODE(c.pack(bref)); @@ -82428,7 +82304,7 @@ SRSASN_CODE ul_ccch_msg_type_c::msg_class_ext_c_::msg_class_ext_future_r13_c_::c SRSASN_CODE ul_ccch_msg_type_c::msg_class_ext_c_::msg_class_ext_future_r13_c_::c3_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_early_data_request_r15: @@ -82561,7 +82437,7 @@ void cell_global_id_cdma2000_c::to_json(json_writer& j) const } SRSASN_CODE cell_global_id_cdma2000_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::cell_global_id1_xrtt: HANDLE_CODE(c.get >().pack(bref)); @@ -82578,7 +82454,7 @@ SRSASN_CODE cell_global_id_cdma2000_c::pack(bit_ref& bref) const SRSASN_CODE cell_global_id_cdma2000_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::cell_global_id1_xrtt: @@ -82632,7 +82508,7 @@ void add_si_info_r9_s::to_json(json_writer& j) const // BLER-Result-r12 ::= SEQUENCE SRSASN_CODE bler_result_r12_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, bler_r12, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, bler_r12, (uint8_t)0u, (uint8_t)31u)); HANDLE_CODE(blocks_rx_r12.n_r12.pack(bref)); HANDLE_CODE(blocks_rx_r12.m_r12.pack(bref)); @@ -82640,7 +82516,7 @@ SRSASN_CODE bler_result_r12_s::pack(bit_ref& bref) const } SRSASN_CODE bler_result_r12_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(bler_r12, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(bler_r12, bref, (uint8_t)0u, (uint8_t)31u)); HANDLE_CODE(blocks_rx_r12.n_r12.unpack(bref)); HANDLE_CODE(blocks_rx_r12.m_r12.unpack(bref)); @@ -82687,16 +82563,16 @@ SRSASN_CODE meas_result_cdma2000_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(cgi_info_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, pci, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(pack_integer(bref, pci, (uint16_t)0u, (uint16_t)511u)); if (cgi_info_present) { HANDLE_CODE(cgi_info.pack(bref)); } bref.pack(meas_result.ext, 1); HANDLE_CODE(bref.pack(meas_result.pilot_pn_phase_present, 1)); if (meas_result.pilot_pn_phase_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result.pilot_pn_phase, (uint16_t)0, (uint16_t)32767)); + HANDLE_CODE(pack_integer(bref, meas_result.pilot_pn_phase, (uint16_t)0u, (uint16_t)32767u)); } - HANDLE_CODE(pack_unalign_integer(bref, meas_result.pilot_strength, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(pack_integer(bref, meas_result.pilot_strength, (uint8_t)0u, (uint8_t)63u)); return SRSASN_SUCCESS; } @@ -82704,16 +82580,16 @@ SRSASN_CODE meas_result_cdma2000_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(cgi_info_present, 1)); - HANDLE_CODE(unpack_unalign_integer(pci, bref, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(unpack_integer(pci, bref, (uint16_t)0u, (uint16_t)511u)); if (cgi_info_present) { HANDLE_CODE(cgi_info.unpack(bref)); } bref.unpack(meas_result.ext, 1); HANDLE_CODE(bref.unpack(meas_result.pilot_pn_phase_present, 1)); if (meas_result.pilot_pn_phase_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result.pilot_pn_phase, bref, (uint16_t)0, (uint16_t)32767)); + HANDLE_CODE(unpack_integer(meas_result.pilot_pn_phase, bref, (uint16_t)0u, (uint16_t)32767u)); } - HANDLE_CODE(unpack_unalign_integer(meas_result.pilot_strength, bref, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(unpack_integer(meas_result.pilot_strength, bref, (uint8_t)0u, (uint8_t)63u)); return SRSASN_SUCCESS; } @@ -82765,14 +82641,14 @@ void cell_global_id_geran_s::to_json(json_writer& j) const // DataBLER-MCH-Result-r12 ::= SEQUENCE SRSASN_CODE data_bler_mch_result_r12_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, mch_idx_r12, (uint8_t)1, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, mch_idx_r12, (uint8_t)1u, (uint8_t)15u)); HANDLE_CODE(data_bler_result_r12.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE data_bler_mch_result_r12_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(mch_idx_r12, bref, (uint8_t)1, (uint8_t)15)); + HANDLE_CODE(unpack_integer(mch_idx_r12, bref, (uint8_t)1u, (uint8_t)15u)); HANDLE_CODE(data_bler_result_r12.unpack(bref)); return SRSASN_SUCCESS; @@ -82791,7 +82667,7 @@ SRSASN_CODE meas_result_eutra_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(cgi_info_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, pci, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(pack_integer(bref, pci, (uint16_t)0u, (uint16_t)503u)); if (cgi_info_present) { HANDLE_CODE(bref.pack(cgi_info.plmn_id_list_present, 1)); HANDLE_CODE(cgi_info.cell_global_id.pack(bref)); @@ -82808,7 +82684,7 @@ SRSASN_CODE meas_result_eutra_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(cgi_info_present, 1)); - HANDLE_CODE(unpack_unalign_integer(pci, bref, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(unpack_integer(pci, bref, (uint16_t)0u, (uint16_t)503u)); if (cgi_info_present) { HANDLE_CODE(bref.unpack(cgi_info.plmn_id_list_present, 1)); HANDLE_CODE(cgi_info.cell_global_id.unpack(bref)); @@ -82852,10 +82728,10 @@ SRSASN_CODE meas_result_eutra_s::meas_result_s_::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(rsrq_result_present, 1)); if (rsrp_result_present) { - HANDLE_CODE(pack_unalign_integer(bref, rsrp_result, (uint8_t)0, (uint8_t)97)); + HANDLE_CODE(pack_integer(bref, rsrp_result, (uint8_t)0u, (uint8_t)97u)); } if (rsrq_result_present) { - HANDLE_CODE(pack_unalign_integer(bref, rsrq_result, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(pack_integer(bref, rsrq_result, (uint8_t)0u, (uint8_t)34u)); } if (ext) { @@ -82870,7 +82746,7 @@ SRSASN_CODE meas_result_eutra_s::meas_result_s_::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(add_si_info_r9.is_present(), 1)); if (add_si_info_r9.is_present()) { @@ -82878,45 +82754,45 @@ SRSASN_CODE meas_result_eutra_s::meas_result_s_::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(primary_plmn_suitable_r12_present, 1)); HANDLE_CODE(bref.pack(meas_result_v1250_present, 1)); if (meas_result_v1250_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_v1250, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(pack_integer(bref, meas_result_v1250, (int8_t)-30, (int8_t)46)); } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(rs_sinr_result_r13_present, 1)); HANDLE_CODE(bref.pack(cgi_info_v1310.is_present(), 1)); if (rs_sinr_result_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, rs_sinr_result_r13, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, rs_sinr_result_r13, (uint8_t)0u, (uint8_t)127u)); } if (cgi_info_v1310.is_present()) { HANDLE_CODE(bref.pack(cgi_info_v1310->freq_band_ind_r13_present, 1)); HANDLE_CODE(bref.pack(cgi_info_v1310->multi_band_info_list_r13_present, 1)); HANDLE_CODE(bref.pack(cgi_info_v1310->freq_band_ind_prio_r13_present, 1)); if (cgi_info_v1310->freq_band_ind_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, cgi_info_v1310->freq_band_ind_r13, (uint16_t)1, (uint16_t)256)); + HANDLE_CODE(pack_integer(bref, cgi_info_v1310->freq_band_ind_r13, (uint16_t)1u, (uint16_t)256u)); } if (cgi_info_v1310->multi_band_info_list_r13_present) { - HANDLE_CODE(pack_dyn_seq_of( - bref, cgi_info_v1310->multi_band_info_list_r13, 1, 8, UnalignedIntegerPacker(1, 256))); + HANDLE_CODE( + pack_dyn_seq_of(bref, cgi_info_v1310->multi_band_info_list_r13, 1, 8, integer_packer(1, 256))); } } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_result_v1360_present, 1)); if (meas_result_v1360_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_v1360, (int8_t)-17, (int8_t)-1)); + HANDLE_CODE(pack_integer(bref, meas_result_v1360, (int8_t)-17, (int8_t)-1)); } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(cgi_info_minus5_gc_r15.is_present(), 1)); if (cgi_info_minus5_gc_r15.is_present()) { @@ -82933,10 +82809,10 @@ SRSASN_CODE meas_result_eutra_s::meas_result_s_::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(rsrq_result_present, 1)); if (rsrp_result_present) { - HANDLE_CODE(unpack_unalign_integer(rsrp_result, bref, (uint8_t)0, (uint8_t)97)); + HANDLE_CODE(unpack_integer(rsrp_result, bref, (uint8_t)0u, (uint8_t)97u)); } if (rsrq_result_present) { - HANDLE_CODE(unpack_unalign_integer(rsrq_result, bref, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(unpack_integer(rsrq_result, bref, (uint8_t)0u, (uint8_t)34u)); } if (ext) { @@ -82944,7 +82820,7 @@ SRSASN_CODE meas_result_eutra_s::meas_result_s_::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool add_si_info_r9_present; HANDLE_CODE(bref.unpack(add_si_info_r9_present, 1)); @@ -82954,47 +82830,47 @@ SRSASN_CODE meas_result_eutra_s::meas_result_s_::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(primary_plmn_suitable_r12_present, 1)); HANDLE_CODE(bref.unpack(meas_result_v1250_present, 1)); if (meas_result_v1250_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result_v1250, bref, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(unpack_integer(meas_result_v1250, bref, (int8_t)-30, (int8_t)46)); } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(rs_sinr_result_r13_present, 1)); bool cgi_info_v1310_present; HANDLE_CODE(bref.unpack(cgi_info_v1310_present, 1)); cgi_info_v1310.set_present(cgi_info_v1310_present); if (rs_sinr_result_r13_present) { - HANDLE_CODE(unpack_unalign_integer(rs_sinr_result_r13, bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(rs_sinr_result_r13, bref, (uint8_t)0u, (uint8_t)127u)); } if (cgi_info_v1310.is_present()) { HANDLE_CODE(bref.unpack(cgi_info_v1310->freq_band_ind_r13_present, 1)); HANDLE_CODE(bref.unpack(cgi_info_v1310->multi_band_info_list_r13_present, 1)); HANDLE_CODE(bref.unpack(cgi_info_v1310->freq_band_ind_prio_r13_present, 1)); if (cgi_info_v1310->freq_band_ind_r13_present) { - HANDLE_CODE(unpack_unalign_integer(cgi_info_v1310->freq_band_ind_r13, bref, (uint16_t)1, (uint16_t)256)); + HANDLE_CODE(unpack_integer(cgi_info_v1310->freq_band_ind_r13, bref, (uint16_t)1u, (uint16_t)256u)); } if (cgi_info_v1310->multi_band_info_list_r13_present) { HANDLE_CODE(unpack_dyn_seq_of( - cgi_info_v1310->multi_band_info_list_r13, bref, 1, 8, UnalignedIntegerPacker(1, 256))); + cgi_info_v1310->multi_band_info_list_r13, bref, 1, 8, integer_packer(1, 256))); } } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(meas_result_v1360_present, 1)); if (meas_result_v1360_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result_v1360, bref, (int8_t)-17, (int8_t)-1)); + HANDLE_CODE(unpack_integer(meas_result_v1360, bref, (int8_t)-17, (int8_t)-1)); } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool cgi_info_minus5_gc_r15_present; HANDLE_CODE(bref.unpack(cgi_info_minus5_gc_r15_present, 1)); @@ -83065,20 +82941,20 @@ void meas_result_eutra_s::meas_result_s_::to_json(json_writer& j) const SRSASN_CODE meas_result_idle_eutra_r15_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r15, (uint32_t)0, (uint32_t)262143)); - HANDLE_CODE(pack_unalign_integer(bref, pci_r15, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_unalign_integer(bref, meas_result_r15.rsrp_result_r15, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(pack_unalign_integer(bref, meas_result_r15.rsrq_result_r15, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r15, (uint32_t)0u, (uint32_t)262143u)); + HANDLE_CODE(pack_integer(bref, pci_r15, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(pack_integer(bref, meas_result_r15.rsrp_result_r15, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(pack_integer(bref, meas_result_r15.rsrq_result_r15, (int8_t)-30, (int8_t)46)); return SRSASN_SUCCESS; } SRSASN_CODE meas_result_idle_eutra_r15_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r15, bref, (uint32_t)0, (uint32_t)262143)); - HANDLE_CODE(unpack_unalign_integer(pci_r15, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_unalign_integer(meas_result_r15.rsrp_result_r15, bref, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(unpack_unalign_integer(meas_result_r15.rsrq_result_r15, bref, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(unpack_integer(carrier_freq_r15, bref, (uint32_t)0u, (uint32_t)262143u)); + HANDLE_CODE(unpack_integer(pci_r15, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(unpack_integer(meas_result_r15.rsrp_result_r15, bref, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(unpack_integer(meas_result_r15.rsrq_result_r15, bref, (int8_t)-30, (int8_t)46)); return SRSASN_SUCCESS; } @@ -83234,13 +83110,13 @@ void meas_result_utra_s::pci_c_::to_json(json_writer& j) const } SRSASN_CODE meas_result_utra_s::pci_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::fdd: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)511u)); break; case types::tdd: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)127u)); break; default: log_invalid_choice_id(type_, "meas_result_utra_s::pci_c_"); @@ -83251,14 +83127,14 @@ SRSASN_CODE meas_result_utra_s::pci_c_::pack(bit_ref& bref) const SRSASN_CODE meas_result_utra_s::pci_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::fdd: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)511u)); break; case types::tdd: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)127u)); break; default: log_invalid_choice_id(type_, "meas_result_utra_s::pci_c_"); @@ -83274,10 +83150,10 @@ SRSASN_CODE meas_result_utra_s::meas_result_s_::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(utra_ec_n0_present, 1)); if (utra_rscp_present) { - HANDLE_CODE(pack_unalign_integer(bref, utra_rscp, (int8_t)-5, (int8_t)91)); + HANDLE_CODE(pack_integer(bref, utra_rscp, (int8_t)-5, (int8_t)91)); } if (utra_ec_n0_present) { - HANDLE_CODE(pack_unalign_integer(bref, utra_ec_n0, (uint8_t)0, (uint8_t)49)); + HANDLE_CODE(pack_integer(bref, utra_ec_n0, (uint8_t)0u, (uint8_t)49u)); } if (ext) { @@ -83287,7 +83163,7 @@ SRSASN_CODE meas_result_utra_s::meas_result_s_::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(add_si_info_r9.is_present(), 1)); if (add_si_info_r9.is_present()) { @@ -83295,7 +83171,7 @@ SRSASN_CODE meas_result_utra_s::meas_result_s_::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(primary_plmn_suitable_r12_present, 1)); } @@ -83309,10 +83185,10 @@ SRSASN_CODE meas_result_utra_s::meas_result_s_::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(utra_ec_n0_present, 1)); if (utra_rscp_present) { - HANDLE_CODE(unpack_unalign_integer(utra_rscp, bref, (int8_t)-5, (int8_t)91)); + HANDLE_CODE(unpack_integer(utra_rscp, bref, (int8_t)-5, (int8_t)91)); } if (utra_ec_n0_present) { - HANDLE_CODE(unpack_unalign_integer(utra_ec_n0, bref, (uint8_t)0, (uint8_t)49)); + HANDLE_CODE(unpack_integer(utra_ec_n0, bref, (uint8_t)0u, (uint8_t)49u)); } if (ext) { @@ -83320,7 +83196,7 @@ SRSASN_CODE meas_result_utra_s::meas_result_s_::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool add_si_info_r9_present; HANDLE_CODE(bref.unpack(add_si_info_r9_present, 1)); @@ -83330,7 +83206,7 @@ SRSASN_CODE meas_result_utra_s::meas_result_s_::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(primary_plmn_suitable_r12_present, 1)); } @@ -83477,7 +83353,7 @@ void s_nssai_r15_c::to_json(json_writer& j) const } SRSASN_CODE s_nssai_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sst: HANDLE_CODE(c.get >().pack(bref)); @@ -83494,7 +83370,7 @@ SRSASN_CODE s_nssai_r15_c::pack(bit_ref& bref) const SRSASN_CODE s_nssai_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sst: @@ -83531,7 +83407,7 @@ SRSASN_CODE location_info_r10_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(vertical_velocity_info_r15.is_present(), 1)); if (vertical_velocity_info_r15.is_present()) { @@ -83560,7 +83436,7 @@ SRSASN_CODE location_info_r10_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool vertical_velocity_info_r15_present; HANDLE_CODE(bref.unpack(vertical_velocity_info_r15_present, 1)); @@ -83753,7 +83629,7 @@ void location_info_r10_s::location_coordinates_r10_c_::to_json(json_writer& j) c } SRSASN_CODE location_info_r10_s::location_coordinates_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ellipsoid_point_r10: HANDLE_CODE(c.get().pack(bref)); @@ -83762,23 +83638,23 @@ SRSASN_CODE location_info_r10_s::location_coordinates_r10_c_::pack(bit_ref& bref HANDLE_CODE(c.get().pack(bref)); break; case types::ellipsoid_point_with_uncertainty_circle_r11: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; case types::ellipsoid_point_with_uncertainty_ellipse_r11: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; case types::ellipsoid_point_with_altitude_and_uncertainty_ellipsoid_r11: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; case types::ellipsoid_arc_r11: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; case types::polygon_r11: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().pack(bref)); } break; default: @@ -83790,7 +83666,7 @@ SRSASN_CODE location_info_r10_s::location_coordinates_r10_c_::pack(bit_ref& bref SRSASN_CODE location_info_r10_s::location_coordinates_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ellipsoid_point_r10: @@ -83800,23 +83676,23 @@ SRSASN_CODE location_info_r10_s::location_coordinates_r10_c_::unpack(bit_ref& br HANDLE_CODE(c.get().unpack(bref)); break; case types::ellipsoid_point_with_uncertainty_circle_r11: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; case types::ellipsoid_point_with_uncertainty_ellipse_r11: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; case types::ellipsoid_point_with_altitude_and_uncertainty_ellipsoid_r11: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; case types::ellipsoid_arc_r11: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; case types::polygon_r11: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(c.get().unpack(bref)); } break; default: @@ -83912,7 +83788,7 @@ void location_info_r10_s::vertical_velocity_info_r15_c_::to_json(json_writer& j) } SRSASN_CODE location_info_r10_s::vertical_velocity_info_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::vertical_velocity_r15: HANDLE_CODE(c.get().pack(bref)); @@ -83929,7 +83805,7 @@ SRSASN_CODE location_info_r10_s::vertical_velocity_info_r15_c_::pack(bit_ref& br SRSASN_CODE location_info_r10_s::vertical_velocity_info_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::vertical_velocity_r15: @@ -83960,7 +83836,7 @@ SRSASN_CODE meas_result_geran_s::pack(bit_ref& bref) const } } bref.pack(meas_result.ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, meas_result.rssi, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(pack_integer(bref, meas_result.rssi, (uint8_t)0u, (uint8_t)63u)); return SRSASN_SUCCESS; } @@ -83978,7 +83854,7 @@ SRSASN_CODE meas_result_geran_s::unpack(bit_ref& bref) } } bref.unpack(meas_result.ext, 1); - HANDLE_CODE(unpack_unalign_integer(meas_result.rssi, bref, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(unpack_integer(meas_result.rssi, bref, (uint8_t)0u, (uint8_t)63u)); return SRSASN_SUCCESS; } @@ -84015,13 +83891,13 @@ SRSASN_CODE meas_result_nr_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(rs_sinr_result_r15_present, 1)); if (rsrp_result_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, rsrp_result_r15, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, rsrp_result_r15, (uint8_t)0u, (uint8_t)127u)); } if (rsrq_result_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, rsrq_result_r15, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, rsrq_result_r15, (uint8_t)0u, (uint8_t)127u)); } if (rs_sinr_result_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, rs_sinr_result_r15, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, rs_sinr_result_r15, (uint8_t)0u, (uint8_t)127u)); } return SRSASN_SUCCESS; @@ -84034,13 +83910,13 @@ SRSASN_CODE meas_result_nr_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(rs_sinr_result_r15_present, 1)); if (rsrp_result_r15_present) { - HANDLE_CODE(unpack_unalign_integer(rsrp_result_r15, bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(rsrp_result_r15, bref, (uint8_t)0u, (uint8_t)127u)); } if (rsrq_result_r15_present) { - HANDLE_CODE(unpack_unalign_integer(rsrq_result_r15, bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(rsrq_result_r15, bref, (uint8_t)0u, (uint8_t)127u)); } if (rs_sinr_result_r15_present) { - HANDLE_CODE(unpack_unalign_integer(rs_sinr_result_r15, bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(rs_sinr_result_r15, bref, (uint8_t)0u, (uint8_t)127u)); } return SRSASN_SUCCESS; @@ -84098,7 +83974,7 @@ SRSASN_CODE plmn_id_info_nr_r15_s::pack(bit_ref& bref) const HANDLE_CODE(tac_r15.pack(bref)); } if (ran_area_code_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, ran_area_code_r15, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(pack_integer(bref, ran_area_code_r15, (uint16_t)0u, (uint16_t)255u)); } HANDLE_CODE(cell_id_r15.pack(bref)); @@ -84114,7 +83990,7 @@ SRSASN_CODE plmn_id_info_nr_r15_s::unpack(bit_ref& bref) HANDLE_CODE(tac_r15.unpack(bref)); } if (ran_area_code_r15_present) { - HANDLE_CODE(unpack_unalign_integer(ran_area_code_r15, bref, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(unpack_integer(ran_area_code_r15, bref, (uint16_t)0u, (uint16_t)255u)); } HANDLE_CODE(cell_id_r15.unpack(bref)); @@ -84315,7 +84191,7 @@ void rrc_conn_setup_complete_v1530_ies_s::ng_minus5_g_s_tmsi_bits_r15_c_::to_jso } SRSASN_CODE rrc_conn_setup_complete_v1530_ies_s::ng_minus5_g_s_tmsi_bits_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ng_minus5_g_s_tmsi_r15: HANDLE_CODE(c.get >().pack(bref)); @@ -84332,7 +84208,7 @@ SRSASN_CODE rrc_conn_setup_complete_v1530_ies_s::ng_minus5_g_s_tmsi_bits_r15_c_: SRSASN_CODE rrc_conn_setup_complete_v1530_ies_s::ng_minus5_g_s_tmsi_bits_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ng_minus5_g_s_tmsi_r15: @@ -84377,10 +84253,10 @@ SRSASN_CODE wlan_rtt_r15_s::pack(bit_ref& bref) const bref.pack(ext, 1); HANDLE_CODE(bref.pack(rtt_accuracy_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, rtt_value_r15, (uint32_t)0, (uint32_t)16777215)); - HANDLE_CODE(pack_enum(bref, rtt_units_r15)); + HANDLE_CODE(pack_integer(bref, rtt_value_r15, (uint32_t)0u, (uint32_t)16777215u)); + HANDLE_CODE(rtt_units_r15.pack(bref)); if (rtt_accuracy_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, rtt_accuracy_r15, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(pack_integer(bref, rtt_accuracy_r15, (uint16_t)0u, (uint16_t)255u)); } return SRSASN_SUCCESS; @@ -84390,10 +84266,10 @@ SRSASN_CODE wlan_rtt_r15_s::unpack(bit_ref& bref) bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(rtt_accuracy_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(rtt_value_r15, bref, (uint32_t)0, (uint32_t)16777215)); - HANDLE_CODE(unpack_enum(rtt_units_r15, bref)); + HANDLE_CODE(unpack_integer(rtt_value_r15, bref, (uint32_t)0u, (uint32_t)16777215u)); + HANDLE_CODE(rtt_units_r15.unpack(bref)); if (rtt_accuracy_r15_present) { - HANDLE_CODE(unpack_unalign_integer(rtt_accuracy_r15, bref, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(unpack_integer(rtt_accuracy_r15, bref, (uint16_t)0u, (uint16_t)255u)); } return SRSASN_SUCCESS; @@ -84417,7 +84293,7 @@ SRSASN_CODE log_meas_result_bt_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bt_addr_r15.pack(bref)); if (rssi_bt_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, rssi_bt_r15, (int8_t)-128, (int8_t)127)); + HANDLE_CODE(pack_integer(bref, rssi_bt_r15, (int16_t)-128, (int16_t)127)); } return SRSASN_SUCCESS; @@ -84429,7 +84305,7 @@ SRSASN_CODE log_meas_result_bt_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bt_addr_r15.unpack(bref)); if (rssi_bt_r15_present) { - HANDLE_CODE(unpack_unalign_integer(rssi_bt_r15, bref, (int8_t)-128, (int8_t)127)); + HANDLE_CODE(unpack_integer(rssi_bt_r15, bref, (int16_t)-128, (int16_t)127)); } return SRSASN_SUCCESS; @@ -84453,7 +84329,7 @@ SRSASN_CODE log_meas_result_wlan_r15_s::pack(bit_ref& bref) const HANDLE_CODE(wlan_ids_r15.pack(bref)); if (rssi_wlan_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, rssi_wlan_r15, (uint8_t)0, (uint8_t)141)); + HANDLE_CODE(pack_integer(bref, rssi_wlan_r15, (uint8_t)0u, (uint8_t)141u)); } if (rtt_wlan_r15_present) { HANDLE_CODE(rtt_wlan_r15.pack(bref)); @@ -84469,7 +84345,7 @@ SRSASN_CODE log_meas_result_wlan_r15_s::unpack(bit_ref& bref) HANDLE_CODE(wlan_ids_r15.unpack(bref)); if (rssi_wlan_r15_present) { - HANDLE_CODE(unpack_unalign_integer(rssi_wlan_r15, bref, (uint8_t)0, (uint8_t)141)); + HANDLE_CODE(unpack_integer(rssi_wlan_r15, bref, (uint8_t)0u, (uint8_t)141u)); } if (rtt_wlan_r15_present) { HANDLE_CODE(rtt_wlan_r15.unpack(bref)); @@ -84520,14 +84396,14 @@ void meas_result2_cdma2000_r9_s::to_json(json_writer& j) const // MeasResult2EUTRA-r9 ::= SEQUENCE SRSASN_CODE meas_result2_eutra_r9_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r9, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r9, (uint32_t)0u, (uint32_t)65535u)); HANDLE_CODE(pack_dyn_seq_of(bref, meas_result_list_r9, 1, 8)); return SRSASN_SUCCESS; } SRSASN_CODE meas_result2_eutra_r9_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r9, bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(carrier_freq_r9, bref, (uint32_t)0u, (uint32_t)65535u)); HANDLE_CODE(unpack_dyn_seq_of(meas_result_list_r9, bref, 1, 8)); return SRSASN_SUCCESS; @@ -84581,7 +84457,7 @@ SRSASN_CODE meas_result2_eutra_v9e0_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(carrier_freq_v9e0_present, 1)); if (carrier_freq_v9e0_present) { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_v9e0, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, carrier_freq_v9e0, (uint32_t)65536u, (uint32_t)262143u)); } return SRSASN_SUCCESS; @@ -84591,7 +84467,7 @@ SRSASN_CODE meas_result2_eutra_v9e0_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(carrier_freq_v9e0_present, 1)); if (carrier_freq_v9e0_present) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq_v9e0, bref, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(carrier_freq_v9e0, bref, (uint32_t)65536u, (uint32_t)262143u)); } return SRSASN_SUCCESS; @@ -84608,14 +84484,14 @@ void meas_result2_eutra_v9e0_s::to_json(json_writer& j) const // MeasResult2UTRA-r9 ::= SEQUENCE SRSASN_CODE meas_result2_utra_r9_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r9, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r9, (uint16_t)0u, (uint16_t)16383u)); HANDLE_CODE(pack_dyn_seq_of(bref, meas_result_list_r9, 1, 8)); return SRSASN_SUCCESS; } SRSASN_CODE meas_result2_utra_r9_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r9, bref, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(unpack_integer(carrier_freq_r9, bref, (uint16_t)0u, (uint16_t)16383u)); HANDLE_CODE(unpack_dyn_seq_of(meas_result_list_r9, bref, 1, 8)); return SRSASN_SUCCESS; @@ -84638,8 +84514,8 @@ SRSASN_CODE meas_result_idle_r15_s::pack(bit_ref& bref) const bref.pack(ext, 1); HANDLE_CODE(bref.pack(meas_result_neigh_cells_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, meas_result_serving_cell_r15.rsrp_result_r15, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(pack_unalign_integer(bref, meas_result_serving_cell_r15.rsrq_result_r15, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(pack_integer(bref, meas_result_serving_cell_r15.rsrp_result_r15, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(pack_integer(bref, meas_result_serving_cell_r15.rsrq_result_r15, (int8_t)-30, (int8_t)46)); if (meas_result_neigh_cells_r15_present) { HANDLE_CODE(meas_result_neigh_cells_r15.pack(bref)); } @@ -84651,8 +84527,8 @@ SRSASN_CODE meas_result_idle_r15_s::unpack(bit_ref& bref) bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(meas_result_neigh_cells_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(meas_result_serving_cell_r15.rsrp_result_r15, bref, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(unpack_unalign_integer(meas_result_serving_cell_r15.rsrq_result_r15, bref, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(unpack_integer(meas_result_serving_cell_r15.rsrp_result_r15, bref, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(unpack_integer(meas_result_serving_cell_r15.rsrq_result_r15, bref, (int8_t)-30, (int8_t)46)); if (meas_result_neigh_cells_r15_present) { HANDLE_CODE(meas_result_neigh_cells_r15.unpack(bref)); } @@ -84709,10 +84585,10 @@ SRSASN_CODE meas_result_mbsfn_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(sig_bler_result_r12_present, 1)); HANDLE_CODE(bref.pack(data_bler_mch_result_list_r12_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, mbsfn_area_r12.mbsfn_area_id_r12, (uint8_t)0, (uint8_t)255)); - HANDLE_CODE(pack_unalign_integer(bref, mbsfn_area_r12.carrier_freq_r12, (uint32_t)0, (uint32_t)262143)); - HANDLE_CODE(pack_unalign_integer(bref, rsrp_result_mbsfn_r12, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(pack_unalign_integer(bref, rsrq_result_mbsfn_r12, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, mbsfn_area_r12.mbsfn_area_id_r12, (uint16_t)0u, (uint16_t)255u)); + HANDLE_CODE(pack_integer(bref, mbsfn_area_r12.carrier_freq_r12, (uint32_t)0u, (uint32_t)262143u)); + HANDLE_CODE(pack_integer(bref, rsrp_result_mbsfn_r12, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(pack_integer(bref, rsrq_result_mbsfn_r12, (uint8_t)0u, (uint8_t)31u)); if (sig_bler_result_r12_present) { HANDLE_CODE(sig_bler_result_r12.pack(bref)); } @@ -84728,10 +84604,10 @@ SRSASN_CODE meas_result_mbsfn_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(sig_bler_result_r12_present, 1)); HANDLE_CODE(bref.unpack(data_bler_mch_result_list_r12_present, 1)); - HANDLE_CODE(unpack_unalign_integer(mbsfn_area_r12.mbsfn_area_id_r12, bref, (uint8_t)0, (uint8_t)255)); - HANDLE_CODE(unpack_unalign_integer(mbsfn_area_r12.carrier_freq_r12, bref, (uint32_t)0, (uint32_t)262143)); - HANDLE_CODE(unpack_unalign_integer(rsrp_result_mbsfn_r12, bref, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(unpack_unalign_integer(rsrq_result_mbsfn_r12, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(mbsfn_area_r12.mbsfn_area_id_r12, bref, (uint16_t)0u, (uint16_t)255u)); + HANDLE_CODE(unpack_integer(mbsfn_area_r12.carrier_freq_r12, bref, (uint32_t)0u, (uint32_t)262143u)); + HANDLE_CODE(unpack_integer(rsrp_result_mbsfn_r12, bref, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(unpack_integer(rsrq_result_mbsfn_r12, bref, (uint8_t)0u, (uint8_t)31u)); if (sig_bler_result_r12_present) { HANDLE_CODE(sig_bler_result_r12.unpack(bref)); } @@ -84771,7 +84647,7 @@ SRSASN_CODE meas_result_ssb_idx_r15_s::pack(bit_ref& bref) const bref.pack(ext, 1); HANDLE_CODE(bref.pack(meas_result_ssb_idx_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, ssb_idx_r15, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(pack_integer(bref, ssb_idx_r15, (uint8_t)0u, (uint8_t)63u)); if (meas_result_ssb_idx_r15_present) { HANDLE_CODE(meas_result_ssb_idx_r15.pack(bref)); } @@ -84783,7 +84659,7 @@ SRSASN_CODE meas_result_ssb_idx_r15_s::unpack(bit_ref& bref) bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(meas_result_ssb_idx_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(ssb_idx_r15, bref, (uint8_t)0, (uint8_t)63)); + HANDLE_CODE(unpack_integer(ssb_idx_r15, bref, (uint8_t)0u, (uint8_t)63u)); if (meas_result_ssb_idx_r15_present) { HANDLE_CODE(meas_result_ssb_idx_r15.unpack(bref)); } @@ -84804,15 +84680,15 @@ void meas_result_ssb_idx_r15_s::to_json(json_writer& j) const // PerCC-GapIndication-r14 ::= SEQUENCE SRSASN_CODE per_cc_gap_ind_r14_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, serv_cell_id_r14, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_enum(bref, gap_ind_r14)); + HANDLE_CODE(pack_integer(bref, serv_cell_id_r14, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(gap_ind_r14.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE per_cc_gap_ind_r14_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(serv_cell_id_r14, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_enum(gap_ind_r14, bref)); + HANDLE_CODE(unpack_integer(serv_cell_id_r14, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(gap_ind_r14.unpack(bref)); return SRSASN_SUCCESS; } @@ -84870,7 +84746,7 @@ SRSASN_CODE rrc_conn_setup_complete_v1430_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (dcn_id_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, dcn_id_r14, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, dcn_id_r14, (uint32_t)0u, (uint32_t)65535u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -84884,7 +84760,7 @@ SRSASN_CODE rrc_conn_setup_complete_v1430_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (dcn_id_r14_present) { - HANDLE_CODE(unpack_unalign_integer(dcn_id_r14, bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(dcn_id_r14, bref, (uint32_t)0u, (uint32_t)65535u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -84961,7 +84837,7 @@ SRSASN_CODE visited_cell_info_r12_s::pack(bit_ref& bref) const if (visited_cell_id_r12_present) { HANDLE_CODE(visited_cell_id_r12.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, time_spent_r12, (uint16_t)0, (uint16_t)4095)); + HANDLE_CODE(pack_integer(bref, time_spent_r12, (uint16_t)0u, (uint16_t)4095u)); return SRSASN_SUCCESS; } @@ -84973,7 +84849,7 @@ SRSASN_CODE visited_cell_info_r12_s::unpack(bit_ref& bref) if (visited_cell_id_r12_present) { HANDLE_CODE(visited_cell_id_r12.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(time_spent_r12, bref, (uint16_t)0, (uint16_t)4095)); + HANDLE_CODE(unpack_integer(time_spent_r12, bref, (uint16_t)0u, (uint16_t)4095u)); return SRSASN_SUCCESS; } @@ -85079,15 +84955,14 @@ void visited_cell_info_r12_s::visited_cell_id_r12_c_::to_json(json_writer& j) co } SRSASN_CODE visited_cell_info_r12_s::visited_cell_id_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::cell_global_id_r12: HANDLE_CODE(c.get().pack(bref)); break; case types::pci_arfcn_r12: - HANDLE_CODE(pack_unalign_integer(bref, c.get().pci_r12, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE( - pack_unalign_integer(bref, c.get().carrier_freq_r12, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, c.get().pci_r12, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(pack_integer(bref, c.get().carrier_freq_r12, (uint32_t)0u, (uint32_t)262143u)); break; default: log_invalid_choice_id(type_, "visited_cell_info_r12_s::visited_cell_id_r12_c_"); @@ -85098,16 +84973,15 @@ SRSASN_CODE visited_cell_info_r12_s::visited_cell_id_r12_c_::pack(bit_ref& bref) SRSASN_CODE visited_cell_info_r12_s::visited_cell_id_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::cell_global_id_r12: HANDLE_CODE(c.get().unpack(bref)); break; case types::pci_arfcn_r12: - HANDLE_CODE(unpack_unalign_integer(c.get().pci_r12, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE( - unpack_unalign_integer(c.get().carrier_freq_r12, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(c.get().pci_r12, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(unpack_integer(c.get().carrier_freq_r12, bref, (uint32_t)0u, (uint32_t)262143u)); break; default: log_invalid_choice_id(type_, "visited_cell_info_r12_s::visited_cell_id_r12_c_"); @@ -85156,7 +85030,7 @@ SRSASN_CODE affected_carrier_freq_comb_info_mrdc_r15_s::pack(bit_ref& bref) cons HANDLE_CODE(bref.pack(affected_carrier_freq_comb_mrdc_r15_present, 1)); HANDLE_CODE(victim_sys_type_r15.pack(bref)); - HANDLE_CODE(pack_enum(bref, interference_direction_mrdc_r15)); + HANDLE_CODE(interference_direction_mrdc_r15.pack(bref)); if (affected_carrier_freq_comb_mrdc_r15_present) { HANDLE_CODE(bref.pack(affected_carrier_freq_comb_mrdc_r15.affected_carrier_freq_comb_eutra_r15_present, 1)); if (affected_carrier_freq_comb_mrdc_r15.affected_carrier_freq_comb_eutra_r15_present) { @@ -85164,13 +85038,13 @@ SRSASN_CODE affected_carrier_freq_comb_info_mrdc_r15_s::pack(bit_ref& bref) cons affected_carrier_freq_comb_mrdc_r15.affected_carrier_freq_comb_eutra_r15, 1, 32, - UnalignedIntegerPacker(1, 64))); + integer_packer(1, 64))); } HANDLE_CODE(pack_dyn_seq_of(bref, affected_carrier_freq_comb_mrdc_r15.affected_carrier_freq_comb_nr_r15, 1, 16, - UnalignedIntegerPacker(0, 3279165))); + integer_packer(0, 3279165))); } return SRSASN_SUCCESS; @@ -85180,7 +85054,7 @@ SRSASN_CODE affected_carrier_freq_comb_info_mrdc_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(affected_carrier_freq_comb_mrdc_r15_present, 1)); HANDLE_CODE(victim_sys_type_r15.unpack(bref)); - HANDLE_CODE(unpack_enum(interference_direction_mrdc_r15, bref)); + HANDLE_CODE(interference_direction_mrdc_r15.unpack(bref)); if (affected_carrier_freq_comb_mrdc_r15_present) { HANDLE_CODE(bref.unpack(affected_carrier_freq_comb_mrdc_r15.affected_carrier_freq_comb_eutra_r15_present, 1)); if (affected_carrier_freq_comb_mrdc_r15.affected_carrier_freq_comb_eutra_r15_present) { @@ -85188,13 +85062,13 @@ SRSASN_CODE affected_carrier_freq_comb_info_mrdc_r15_s::unpack(bit_ref& bref) bref, 1, 32, - UnalignedIntegerPacker(1, 64))); + integer_packer(1, 64))); } HANDLE_CODE(unpack_dyn_seq_of(affected_carrier_freq_comb_mrdc_r15.affected_carrier_freq_comb_nr_r15, bref, 1, 16, - UnalignedIntegerPacker(0, 3279165))); + integer_packer(0, 3279165))); } return SRSASN_SUCCESS; @@ -85238,11 +85112,11 @@ SRSASN_CODE cgi_info_nr_r15_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, plmn_id_info_list_r15, 1, 12)); } if (freq_band_list_minus15_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, freq_band_list_minus15, 1, 32, UnalignedIntegerPacker(1, 1024))); + HANDLE_CODE(pack_dyn_seq_of(bref, freq_band_list_minus15, 1, 32, integer_packer(1, 1024))); } if (no_sib1_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, no_sib1_r15.ssb_subcarrier_offset_r15, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(pack_unalign_integer(bref, no_sib1_r15.pdcch_cfg_sib1_r15, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(pack_integer(bref, no_sib1_r15.ssb_subcarrier_offset_r15, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(pack_integer(bref, no_sib1_r15.pdcch_cfg_sib1_r15, (uint16_t)0u, (uint16_t)255u)); } return SRSASN_SUCCESS; @@ -85258,11 +85132,11 @@ SRSASN_CODE cgi_info_nr_r15_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(plmn_id_info_list_r15, bref, 1, 12)); } if (freq_band_list_minus15_present) { - HANDLE_CODE(unpack_dyn_seq_of(freq_band_list_minus15, bref, 1, 32, UnalignedIntegerPacker(1, 1024))); + HANDLE_CODE(unpack_dyn_seq_of(freq_band_list_minus15, bref, 1, 32, integer_packer(1, 1024))); } if (no_sib1_r15_present) { - HANDLE_CODE(unpack_unalign_integer(no_sib1_r15.ssb_subcarrier_offset_r15, bref, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(unpack_unalign_integer(no_sib1_r15.pdcch_cfg_sib1_r15, bref, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(unpack_integer(no_sib1_r15.ssb_subcarrier_offset_r15, bref, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(unpack_integer(no_sib1_r15.pdcch_cfg_sib1_r15, bref, (uint16_t)0u, (uint16_t)255u)); } return SRSASN_SUCCESS; @@ -85462,10 +85336,10 @@ SRSASN_CODE log_meas_info_r10_s::pack(bit_ref& bref) const if (location_info_r10_present) { HANDLE_CODE(location_info_r10.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, relative_time_stamp_r10, (uint16_t)0, (uint16_t)7200)); + HANDLE_CODE(pack_integer(bref, relative_time_stamp_r10, (uint16_t)0u, (uint16_t)7200u)); HANDLE_CODE(serv_cell_id_r10.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, meas_result_serv_cell_r10.rsrp_result_r10, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(pack_unalign_integer(bref, meas_result_serv_cell_r10.rsrq_result_r10, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(pack_integer(bref, meas_result_serv_cell_r10.rsrp_result_r10, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(pack_integer(bref, meas_result_serv_cell_r10.rsrq_result_r10, (uint8_t)0u, (uint8_t)34u)); if (meas_result_neigh_cells_r10_present) { HANDLE_CODE(bref.pack(meas_result_neigh_cells_r10.meas_result_list_eutra_r10_present, 1)); HANDLE_CODE(bref.pack(meas_result_neigh_cells_r10.meas_result_list_utra_r10_present, 1)); @@ -85500,7 +85374,7 @@ SRSASN_CODE log_meas_info_r10_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_result_list_eutra_v1090.is_present(), 1)); if (meas_result_list_eutra_v1090.is_present()) { @@ -85508,7 +85382,7 @@ SRSASN_CODE log_meas_info_r10_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_result_list_mbsfn_r12.is_present(), 1)); HANDLE_CODE(bref.pack(meas_result_serv_cell_v1250_present, 1)); @@ -85518,7 +85392,7 @@ SRSASN_CODE log_meas_info_r10_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, *meas_result_list_mbsfn_r12, 1, 8)); } if (meas_result_serv_cell_v1250_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_serv_cell_v1250, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(pack_integer(bref, meas_result_serv_cell_v1250, (int8_t)-30, (int8_t)46)); } if (serv_cell_rsrq_type_r12.is_present()) { HANDLE_CODE(serv_cell_rsrq_type_r12->pack(bref)); @@ -85528,20 +85402,20 @@ SRSASN_CODE log_meas_info_r10_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(in_dev_coex_detected_r13_present, 1)); } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_result_serv_cell_v1360_present, 1)); if (meas_result_serv_cell_v1360_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_serv_cell_v1360, (int8_t)-17, (int8_t)-1)); + HANDLE_CODE(pack_integer(bref, meas_result_serv_cell_v1360, (int8_t)-17, (int8_t)-1)); } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(log_meas_result_list_bt_r15.is_present(), 1)); HANDLE_CODE(bref.pack(log_meas_result_list_wlan_r15.is_present(), 1)); @@ -85564,10 +85438,10 @@ SRSASN_CODE log_meas_info_r10_s::unpack(bit_ref& bref) if (location_info_r10_present) { HANDLE_CODE(location_info_r10.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(relative_time_stamp_r10, bref, (uint16_t)0, (uint16_t)7200)); + HANDLE_CODE(unpack_integer(relative_time_stamp_r10, bref, (uint16_t)0u, (uint16_t)7200u)); HANDLE_CODE(serv_cell_id_r10.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(meas_result_serv_cell_r10.rsrp_result_r10, bref, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(unpack_unalign_integer(meas_result_serv_cell_r10.rsrq_result_r10, bref, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(unpack_integer(meas_result_serv_cell_r10.rsrp_result_r10, bref, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(unpack_integer(meas_result_serv_cell_r10.rsrq_result_r10, bref, (uint8_t)0u, (uint8_t)34u)); if (meas_result_neigh_cells_r10_present) { HANDLE_CODE(bref.unpack(meas_result_neigh_cells_r10.meas_result_list_eutra_r10_present, 1)); HANDLE_CODE(bref.unpack(meas_result_neigh_cells_r10.meas_result_list_utra_r10_present, 1)); @@ -85593,7 +85467,7 @@ SRSASN_CODE log_meas_info_r10_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool meas_result_list_eutra_v1090_present; HANDLE_CODE(bref.unpack(meas_result_list_eutra_v1090_present, 1)); @@ -85603,7 +85477,7 @@ SRSASN_CODE log_meas_info_r10_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool meas_result_list_mbsfn_r12_present; HANDLE_CODE(bref.unpack(meas_result_list_mbsfn_r12_present, 1)); @@ -85619,7 +85493,7 @@ SRSASN_CODE log_meas_info_r10_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(*meas_result_list_mbsfn_r12, bref, 1, 8)); } if (meas_result_serv_cell_v1250_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result_serv_cell_v1250, bref, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(unpack_integer(meas_result_serv_cell_v1250, bref, (int8_t)-30, (int8_t)46)); } if (serv_cell_rsrq_type_r12.is_present()) { HANDLE_CODE(serv_cell_rsrq_type_r12->unpack(bref)); @@ -85629,20 +85503,20 @@ SRSASN_CODE log_meas_info_r10_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(in_dev_coex_detected_r13_present, 1)); } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(meas_result_serv_cell_v1360_present, 1)); if (meas_result_serv_cell_v1360_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result_serv_cell_v1360, bref, (int8_t)-17, (int8_t)-1)); + HANDLE_CODE(unpack_integer(meas_result_serv_cell_v1360, bref, (int8_t)-17, (int8_t)-1)); } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool log_meas_result_list_bt_r15_present; HANDLE_CODE(bref.unpack(log_meas_result_list_bt_r15_present, 1)); @@ -85797,7 +85671,7 @@ SRSASN_CODE meas_result_cell_nr_r15_s::pack(bit_ref& bref) const bref.pack(ext, 1); HANDLE_CODE(bref.pack(meas_result_rs_idx_list_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, pci_r15, (uint16_t)0, (uint16_t)1007)); + HANDLE_CODE(pack_integer(bref, pci_r15, (uint16_t)0u, (uint16_t)1007u)); HANDLE_CODE(meas_result_cell_r15.pack(bref)); if (meas_result_rs_idx_list_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, meas_result_rs_idx_list_r15, 1, 32)); @@ -85809,7 +85683,7 @@ SRSASN_CODE meas_result_cell_nr_r15_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(cgi_info_r15.is_present(), 1)); if (cgi_info_r15.is_present()) { @@ -85824,7 +85698,7 @@ SRSASN_CODE meas_result_cell_nr_r15_s::unpack(bit_ref& bref) bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(meas_result_rs_idx_list_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(pci_r15, bref, (uint16_t)0, (uint16_t)1007)); + HANDLE_CODE(unpack_integer(pci_r15, bref, (uint16_t)0u, (uint16_t)1007u)); HANDLE_CODE(meas_result_cell_r15.unpack(bref)); if (meas_result_rs_idx_list_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(meas_result_rs_idx_list_r15, bref, 1, 32)); @@ -85835,7 +85709,7 @@ SRSASN_CODE meas_result_cell_nr_r15_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool cgi_info_r15_present; HANDLE_CODE(bref.unpack(cgi_info_r15_present, 1)); @@ -85881,10 +85755,10 @@ SRSASN_CODE rrc_conn_recfg_complete_v1430_ies_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, per_cc_gap_ind_list_r14, 1, 32)); } if (num_freq_effective_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, num_freq_effective_r14, (uint8_t)1, (uint8_t)12)); + HANDLE_CODE(pack_integer(bref, num_freq_effective_r14, (uint8_t)1u, (uint8_t)12u)); } if (num_freq_effective_reduced_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, num_freq_effective_reduced_r14, (uint8_t)1, (uint8_t)12)); + HANDLE_CODE(pack_integer(bref, num_freq_effective_reduced_r14, (uint8_t)1u, (uint8_t)12u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -85903,10 +85777,10 @@ SRSASN_CODE rrc_conn_recfg_complete_v1430_ies_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(per_cc_gap_ind_list_r14, bref, 1, 32)); } if (num_freq_effective_r14_present) { - HANDLE_CODE(unpack_unalign_integer(num_freq_effective_r14, bref, (uint8_t)1, (uint8_t)12)); + HANDLE_CODE(unpack_integer(num_freq_effective_r14, bref, (uint8_t)1u, (uint8_t)12u)); } if (num_freq_effective_reduced_r14_present) { - HANDLE_CODE(unpack_unalign_integer(num_freq_effective_reduced_r14, bref, (uint8_t)1, (uint8_t)12)); + HANDLE_CODE(unpack_integer(num_freq_effective_reduced_r14, bref, (uint8_t)1u, (uint8_t)12u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -86046,7 +85920,7 @@ SRSASN_CODE traffic_pattern_info_v1530_s::pack(bit_ref& bref) const HANDLE_CODE(traffic_dest_r15.pack(bref)); } if (reliability_info_sl_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, reliability_info_sl_r15, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, reliability_info_sl_r15, (uint8_t)1u, (uint8_t)8u)); } return SRSASN_SUCCESS; @@ -86060,7 +85934,7 @@ SRSASN_CODE traffic_pattern_info_v1530_s::unpack(bit_ref& bref) HANDLE_CODE(traffic_dest_r15.unpack(bref)); } if (reliability_info_sl_r15_present) { - HANDLE_CODE(unpack_unalign_integer(reliability_info_sl_r15, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(reliability_info_sl_r15, bref, (uint8_t)1u, (uint8_t)8u)); } return SRSASN_SUCCESS; @@ -86136,7 +86010,7 @@ SRSASN_CODE affected_carrier_freq_v1310_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(carrier_freq_v1310_present, 1)); if (carrier_freq_v1310_present) { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_v1310, (uint8_t)33, (uint8_t)64)); + HANDLE_CODE(pack_integer(bref, carrier_freq_v1310, (uint8_t)33u, (uint8_t)64u)); } return SRSASN_SUCCESS; @@ -86146,7 +86020,7 @@ SRSASN_CODE affected_carrier_freq_v1310_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(carrier_freq_v1310_present, 1)); if (carrier_freq_v1310_present) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq_v1310, bref, (uint8_t)33, (uint8_t)64)); + HANDLE_CODE(unpack_integer(carrier_freq_v1310, bref, (uint8_t)33u, (uint8_t)64u)); } return SRSASN_SUCCESS; @@ -86173,9 +86047,9 @@ SRSASN_CODE conn_est_fail_report_r11_s::pack(bit_ref& bref) const HANDLE_CODE(location_info_r11.pack(bref)); } HANDLE_CODE(bref.pack(meas_result_failed_cell_r11.rsrq_result_r11_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, meas_result_failed_cell_r11.rsrp_result_r11, (uint8_t)0, (uint8_t)97)); + HANDLE_CODE(pack_integer(bref, meas_result_failed_cell_r11.rsrp_result_r11, (uint8_t)0u, (uint8_t)97u)); if (meas_result_failed_cell_r11.rsrq_result_r11_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_failed_cell_r11.rsrq_result_r11, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(pack_integer(bref, meas_result_failed_cell_r11.rsrq_result_r11, (uint8_t)0u, (uint8_t)34u)); } if (meas_result_neigh_cells_r11_present) { HANDLE_CODE(bref.pack(meas_result_neigh_cells_r11.meas_result_list_eutra_r11_present, 1)); @@ -86195,10 +86069,10 @@ SRSASN_CODE conn_est_fail_report_r11_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, meas_result_neigh_cells_r11.meas_results_cdma2000_r11, 1, 8)); } } - HANDLE_CODE(pack_unalign_integer(bref, nof_preambs_sent_r11, (uint8_t)1, (uint8_t)200)); + HANDLE_CODE(pack_integer(bref, nof_preambs_sent_r11, (uint8_t)1u, (uint8_t)200u)); HANDLE_CODE(bref.pack(contention_detected_r11, 1)); HANDLE_CODE(bref.pack(max_tx_pwr_reached_r11, 1)); - HANDLE_CODE(pack_unalign_integer(bref, time_since_fail_r11, (uint32_t)0, (uint32_t)172800)); + HANDLE_CODE(pack_integer(bref, time_since_fail_r11, (uint32_t)0u, (uint32_t)172800u)); if (meas_result_list_eutra_v1130_present) { HANDLE_CODE(pack_dyn_seq_of(bref, meas_result_list_eutra_v1130, 1, 8)); } @@ -86214,13 +86088,13 @@ SRSASN_CODE conn_est_fail_report_r11_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_result_failed_cell_v1250_present, 1)); HANDLE_CODE(bref.pack(failed_cell_rsrq_type_r12.is_present(), 1)); HANDLE_CODE(bref.pack(meas_result_list_eutra_v1250.is_present(), 1)); if (meas_result_failed_cell_v1250_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_failed_cell_v1250, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(pack_integer(bref, meas_result_failed_cell_v1250, (int8_t)-30, (int8_t)46)); } if (failed_cell_rsrq_type_r12.is_present()) { HANDLE_CODE(failed_cell_rsrq_type_r12->pack(bref)); @@ -86230,15 +86104,15 @@ SRSASN_CODE conn_est_fail_report_r11_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_result_failed_cell_v1360_present, 1)); if (meas_result_failed_cell_v1360_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_failed_cell_v1360, (int8_t)-17, (int8_t)-1)); + HANDLE_CODE(pack_integer(bref, meas_result_failed_cell_v1360, (int8_t)-17, (int8_t)-1)); } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(log_meas_result_list_bt_r15.is_present(), 1)); HANDLE_CODE(bref.pack(log_meas_result_list_wlan_r15.is_present(), 1)); @@ -86264,9 +86138,9 @@ SRSASN_CODE conn_est_fail_report_r11_s::unpack(bit_ref& bref) HANDLE_CODE(location_info_r11.unpack(bref)); } HANDLE_CODE(bref.unpack(meas_result_failed_cell_r11.rsrq_result_r11_present, 1)); - HANDLE_CODE(unpack_unalign_integer(meas_result_failed_cell_r11.rsrp_result_r11, bref, (uint8_t)0, (uint8_t)97)); + HANDLE_CODE(unpack_integer(meas_result_failed_cell_r11.rsrp_result_r11, bref, (uint8_t)0u, (uint8_t)97u)); if (meas_result_failed_cell_r11.rsrq_result_r11_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result_failed_cell_r11.rsrq_result_r11, bref, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(unpack_integer(meas_result_failed_cell_r11.rsrq_result_r11, bref, (uint8_t)0u, (uint8_t)34u)); } if (meas_result_neigh_cells_r11_present) { HANDLE_CODE(bref.unpack(meas_result_neigh_cells_r11.meas_result_list_eutra_r11_present, 1)); @@ -86286,10 +86160,10 @@ SRSASN_CODE conn_est_fail_report_r11_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(meas_result_neigh_cells_r11.meas_results_cdma2000_r11, bref, 1, 8)); } } - HANDLE_CODE(unpack_unalign_integer(nof_preambs_sent_r11, bref, (uint8_t)1, (uint8_t)200)); + HANDLE_CODE(unpack_integer(nof_preambs_sent_r11, bref, (uint8_t)1u, (uint8_t)200u)); HANDLE_CODE(bref.unpack(contention_detected_r11, 1)); HANDLE_CODE(bref.unpack(max_tx_pwr_reached_r11, 1)); - HANDLE_CODE(unpack_unalign_integer(time_since_fail_r11, bref, (uint32_t)0, (uint32_t)172800)); + HANDLE_CODE(unpack_integer(time_since_fail_r11, bref, (uint32_t)0u, (uint32_t)172800u)); if (meas_result_list_eutra_v1130_present) { HANDLE_CODE(unpack_dyn_seq_of(meas_result_list_eutra_v1130, bref, 1, 8)); } @@ -86299,7 +86173,7 @@ SRSASN_CODE conn_est_fail_report_r11_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(meas_result_failed_cell_v1250_present, 1)); bool failed_cell_rsrq_type_r12_present; @@ -86309,7 +86183,7 @@ SRSASN_CODE conn_est_fail_report_r11_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(meas_result_list_eutra_v1250_present, 1)); meas_result_list_eutra_v1250.set_present(meas_result_list_eutra_v1250_present); if (meas_result_failed_cell_v1250_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result_failed_cell_v1250, bref, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(unpack_integer(meas_result_failed_cell_v1250, bref, (int8_t)-30, (int8_t)46)); } if (failed_cell_rsrq_type_r12.is_present()) { HANDLE_CODE(failed_cell_rsrq_type_r12->unpack(bref)); @@ -86319,15 +86193,15 @@ SRSASN_CODE conn_est_fail_report_r11_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(meas_result_failed_cell_v1360_present, 1)); if (meas_result_failed_cell_v1360_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result_failed_cell_v1360, bref, (int8_t)-17, (int8_t)-1)); + HANDLE_CODE(unpack_integer(meas_result_failed_cell_v1360, bref, (int8_t)-17, (int8_t)-1)); } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool log_meas_result_list_bt_r15_present; HANDLE_CODE(bref.unpack(log_meas_result_list_bt_r15_present, 1)); @@ -86444,17 +86318,17 @@ void conn_est_fail_report_r11_s::to_json(json_writer& j) const // DRB-CountInfo ::= SEQUENCE SRSASN_CODE drb_count_info_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, drb_id, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(pack_unalign_integer(bref, count_ul, (uint32_t)0, (uint32_t)4294967295)); - HANDLE_CODE(pack_unalign_integer(bref, count_dl, (uint32_t)0, (uint32_t)4294967295)); + HANDLE_CODE(pack_integer(bref, drb_id, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(pack_integer(bref, count_ul, (uint64_t)0u, (uint64_t)4294967295u)); + HANDLE_CODE(pack_integer(bref, count_dl, (uint64_t)0u, (uint64_t)4294967295u)); return SRSASN_SUCCESS; } SRSASN_CODE drb_count_info_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(drb_id, bref, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(unpack_unalign_integer(count_ul, bref, (uint32_t)0, (uint32_t)4294967295)); - HANDLE_CODE(unpack_unalign_integer(count_dl, bref, (uint32_t)0, (uint32_t)4294967295)); + HANDLE_CODE(unpack_integer(drb_id, bref, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(unpack_integer(count_ul, bref, (uint64_t)0u, (uint64_t)4294967295u)); + HANDLE_CODE(unpack_integer(count_dl, bref, (uint64_t)0u, (uint64_t)4294967295u)); return SRSASN_SUCCESS; } @@ -86586,7 +86460,7 @@ SRSASN_CODE rrc_conn_setup_complete_v1250_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (mob_state_r12_present) { - HANDLE_CODE(pack_enum(bref, mob_state_r12)); + HANDLE_CODE(mob_state_r12.pack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -86602,7 +86476,7 @@ SRSASN_CODE rrc_conn_setup_complete_v1250_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (mob_state_r12_present) { - HANDLE_CODE(unpack_enum(mob_state_r12, bref)); + HANDLE_CODE(mob_state_r12.unpack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -86637,10 +86511,10 @@ SRSASN_CODE sl_v2x_comm_tx_res_req_r14_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(v2x_dest_info_list_r14_present, 1)); if (carrier_freq_comm_tx_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_comm_tx_r14, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, carrier_freq_comm_tx_r14, (uint8_t)0u, (uint8_t)7u)); } if (v2x_type_tx_sync_r14_present) { - HANDLE_CODE(pack_enum(bref, v2x_type_tx_sync_r14)); + HANDLE_CODE(v2x_type_tx_sync_r14.pack(bref)); } if (v2x_dest_info_list_r14_present) { HANDLE_CODE(pack_dyn_seq_of(bref, v2x_dest_info_list_r14, 1, 16)); @@ -86655,10 +86529,10 @@ SRSASN_CODE sl_v2x_comm_tx_res_req_r14_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(v2x_dest_info_list_r14_present, 1)); if (carrier_freq_comm_tx_r14_present) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq_comm_tx_r14, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(carrier_freq_comm_tx_r14, bref, (uint8_t)0u, (uint8_t)7u)); } if (v2x_type_tx_sync_r14_present) { - HANDLE_CODE(unpack_enum(v2x_type_tx_sync_r14, bref)); + HANDLE_CODE(v2x_type_tx_sync_r14.unpack(bref)); } if (v2x_dest_info_list_r14_present) { HANDLE_CODE(unpack_dyn_seq_of(v2x_dest_info_list_r14, bref, 1, 16)); @@ -86851,7 +86725,7 @@ void idc_sf_pattern_r11_c::to_json(json_writer& j) const } SRSASN_CODE idc_sf_pattern_r11_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sf_pattern_fdd_r11: HANDLE_CODE(c.get >().pack(bref)); @@ -86868,7 +86742,7 @@ SRSASN_CODE idc_sf_pattern_r11_c::pack(bit_ref& bref) const SRSASN_CODE idc_sf_pattern_r11_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sf_pattern_fdd_r11: @@ -86985,7 +86859,7 @@ void idc_sf_pattern_r11_c::sf_pattern_tdd_r11_c_::to_json(json_writer& j) const } SRSASN_CODE idc_sf_pattern_r11_c::sf_pattern_tdd_r11_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sf_cfg0_r11: HANDLE_CODE(c.get >().pack(bref)); @@ -87005,7 +86879,7 @@ SRSASN_CODE idc_sf_pattern_r11_c::sf_pattern_tdd_r11_c_::pack(bit_ref& bref) con SRSASN_CODE idc_sf_pattern_r11_c::sf_pattern_tdd_r11_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sf_cfg0_r11: @@ -87079,7 +86953,7 @@ SRSASN_CODE log_meas_report_r10_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(log_meas_available_bt_r15_present, 1)); HANDLE_CODE(bref.pack(log_meas_available_wlan_r15_present, 1)); @@ -87103,7 +86977,7 @@ SRSASN_CODE log_meas_report_r10_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(log_meas_available_bt_r15_present, 1)); HANDLE_CODE(bref.unpack(log_meas_available_wlan_r15_present, 1)); @@ -87164,10 +87038,10 @@ SRSASN_CODE meas_result_cbr_r14_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(cbr_pscch_r14_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, pool_id_r14, (uint8_t)1, (uint8_t)72)); - HANDLE_CODE(pack_unalign_integer(bref, cbr_pssch_r14, (uint8_t)0, (uint8_t)100)); + HANDLE_CODE(pack_integer(bref, pool_id_r14, (uint8_t)1u, (uint8_t)72u)); + HANDLE_CODE(pack_integer(bref, cbr_pssch_r14, (uint8_t)0u, (uint8_t)100u)); if (cbr_pscch_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, cbr_pscch_r14, (uint8_t)0, (uint8_t)100)); + HANDLE_CODE(pack_integer(bref, cbr_pscch_r14, (uint8_t)0u, (uint8_t)100u)); } return SRSASN_SUCCESS; @@ -87176,10 +87050,10 @@ SRSASN_CODE meas_result_cbr_r14_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(cbr_pscch_r14_present, 1)); - HANDLE_CODE(unpack_unalign_integer(pool_id_r14, bref, (uint8_t)1, (uint8_t)72)); - HANDLE_CODE(unpack_unalign_integer(cbr_pssch_r14, bref, (uint8_t)0, (uint8_t)100)); + HANDLE_CODE(unpack_integer(pool_id_r14, bref, (uint8_t)1u, (uint8_t)72u)); + HANDLE_CODE(unpack_integer(cbr_pssch_r14, bref, (uint8_t)0u, (uint8_t)100u)); if (cbr_pscch_r14_present) { - HANDLE_CODE(unpack_unalign_integer(cbr_pscch_r14, bref, (uint8_t)0, (uint8_t)100)); + HANDLE_CODE(unpack_integer(cbr_pscch_r14, bref, (uint8_t)0u, (uint8_t)100u)); } return SRSASN_SUCCESS; @@ -87199,16 +87073,16 @@ void meas_result_cbr_r14_s::to_json(json_writer& j) const SRSASN_CODE meas_result_csi_rs_r12_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, meas_csi_rs_id_r12, (uint8_t)1, (uint8_t)96)); - HANDLE_CODE(pack_unalign_integer(bref, csi_rsrp_result_r12, (uint8_t)0, (uint8_t)97)); + HANDLE_CODE(pack_integer(bref, meas_csi_rs_id_r12, (uint8_t)1u, (uint8_t)96u)); + HANDLE_CODE(pack_integer(bref, csi_rsrp_result_r12, (uint8_t)0u, (uint8_t)97u)); return SRSASN_SUCCESS; } SRSASN_CODE meas_result_csi_rs_r12_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(meas_csi_rs_id_r12, bref, (uint8_t)1, (uint8_t)96)); - HANDLE_CODE(unpack_unalign_integer(csi_rsrp_result_r12, bref, (uint8_t)0, (uint8_t)97)); + HANDLE_CODE(unpack_integer(meas_csi_rs_id_r12, bref, (uint8_t)1u, (uint8_t)96u)); + HANDLE_CODE(unpack_integer(csi_rsrp_result_r12, bref, (uint8_t)0u, (uint8_t)97u)); return SRSASN_SUCCESS; } @@ -87225,11 +87099,11 @@ SRSASN_CODE meas_result_cell_sftd_r15_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(rsrp_result_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, pci_r15, (uint16_t)0, (uint16_t)1007)); - HANDLE_CODE(pack_unalign_integer(bref, sfn_offset_result_r15, (uint16_t)0, (uint16_t)1023)); - HANDLE_CODE(pack_unalign_integer(bref, frame_boundary_offset_result_r15, (int16_t)-30720, (int16_t)30719)); + HANDLE_CODE(pack_integer(bref, pci_r15, (uint16_t)0u, (uint16_t)1007u)); + HANDLE_CODE(pack_integer(bref, sfn_offset_result_r15, (uint16_t)0u, (uint16_t)1023u)); + HANDLE_CODE(pack_integer(bref, frame_boundary_offset_result_r15, (int16_t)-30720, (int16_t)30719)); if (rsrp_result_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, rsrp_result_r15, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, rsrp_result_r15, (uint8_t)0u, (uint8_t)127u)); } return SRSASN_SUCCESS; @@ -87238,11 +87112,11 @@ SRSASN_CODE meas_result_cell_sftd_r15_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(rsrp_result_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(pci_r15, bref, (uint16_t)0, (uint16_t)1007)); - HANDLE_CODE(unpack_unalign_integer(sfn_offset_result_r15, bref, (uint16_t)0, (uint16_t)1023)); - HANDLE_CODE(unpack_unalign_integer(frame_boundary_offset_result_r15, bref, (int16_t)-30720, (int16_t)30719)); + HANDLE_CODE(unpack_integer(pci_r15, bref, (uint16_t)0u, (uint16_t)1007u)); + HANDLE_CODE(unpack_integer(sfn_offset_result_r15, bref, (uint16_t)0u, (uint16_t)1023u)); + HANDLE_CODE(unpack_integer(frame_boundary_offset_result_r15, bref, (int16_t)-30720, (int16_t)30719)); if (rsrp_result_r15_present) { - HANDLE_CODE(unpack_unalign_integer(rsrp_result_r15, bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(rsrp_result_r15, bref, (uint8_t)0u, (uint8_t)127u)); } return SRSASN_SUCCESS; @@ -87265,7 +87139,7 @@ SRSASN_CODE meas_result_freq_fail_nr_r15_s::pack(bit_ref& bref) const bref.pack(ext, 1); HANDLE_CODE(bref.pack(meas_result_cell_list_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r15, (uint32_t)0, (uint32_t)3279165)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r15, (uint32_t)0u, (uint32_t)3279165u)); if (meas_result_cell_list_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, meas_result_cell_list_r15, 1, 8)); } @@ -87277,7 +87151,7 @@ SRSASN_CODE meas_result_freq_fail_nr_r15_s::unpack(bit_ref& bref) bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(meas_result_cell_list_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r15, bref, (uint32_t)0, (uint32_t)3279165)); + HANDLE_CODE(unpack_integer(carrier_freq_r15, bref, (uint32_t)0u, (uint32_t)3279165u)); if (meas_result_cell_list_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(meas_result_cell_list_r15, bref, 1, 8)); } @@ -87305,17 +87179,15 @@ SRSASN_CODE meas_result_serv_freq_r10_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(meas_result_scell_r10_present, 1)); HANDLE_CODE(bref.pack(meas_result_best_neigh_cell_r10_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, serv_freq_id_r10, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, serv_freq_id_r10, (uint8_t)0u, (uint8_t)7u)); if (meas_result_scell_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_scell_r10.rsrp_result_scell_r10, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(pack_unalign_integer(bref, meas_result_scell_r10.rsrq_result_scell_r10, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(pack_integer(bref, meas_result_scell_r10.rsrp_result_scell_r10, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(pack_integer(bref, meas_result_scell_r10.rsrq_result_scell_r10, (uint8_t)0u, (uint8_t)34u)); } if (meas_result_best_neigh_cell_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_best_neigh_cell_r10.pci_r10, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE( - pack_unalign_integer(bref, meas_result_best_neigh_cell_r10.rsrp_result_ncell_r10, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE( - pack_unalign_integer(bref, meas_result_best_neigh_cell_r10.rsrq_result_ncell_r10, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(pack_integer(bref, meas_result_best_neigh_cell_r10.pci_r10, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(pack_integer(bref, meas_result_best_neigh_cell_r10.rsrp_result_ncell_r10, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(pack_integer(bref, meas_result_best_neigh_cell_r10.rsrq_result_ncell_r10, (uint8_t)0u, (uint8_t)34u)); } if (ext) { @@ -87327,28 +87199,28 @@ SRSASN_CODE meas_result_serv_freq_r10_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_result_scell_v1250_present, 1)); HANDLE_CODE(bref.pack(meas_result_best_neigh_cell_v1250_present, 1)); if (meas_result_scell_v1250_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_scell_v1250, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(pack_integer(bref, meas_result_scell_v1250, (int8_t)-30, (int8_t)46)); } if (meas_result_best_neigh_cell_v1250_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_best_neigh_cell_v1250, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(pack_integer(bref, meas_result_best_neigh_cell_v1250, (int8_t)-30, (int8_t)46)); } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_result_scell_v1310.is_present(), 1)); HANDLE_CODE(bref.pack(meas_result_best_neigh_cell_v1310.is_present(), 1)); if (meas_result_scell_v1310.is_present()) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_scell_v1310->rs_sinr_result_r13, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, meas_result_scell_v1310->rs_sinr_result_r13, (uint8_t)0u, (uint8_t)127u)); } if (meas_result_best_neigh_cell_v1310.is_present()) { - HANDLE_CODE(pack_unalign_integer( - bref, meas_result_best_neigh_cell_v1310->rs_sinr_result_r13, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE( + pack_integer(bref, meas_result_best_neigh_cell_v1310->rs_sinr_result_r13, (uint8_t)0u, (uint8_t)127u)); } } } @@ -87360,17 +87232,15 @@ SRSASN_CODE meas_result_serv_freq_r10_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(meas_result_scell_r10_present, 1)); HANDLE_CODE(bref.unpack(meas_result_best_neigh_cell_r10_present, 1)); - HANDLE_CODE(unpack_unalign_integer(serv_freq_id_r10, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(serv_freq_id_r10, bref, (uint8_t)0u, (uint8_t)7u)); if (meas_result_scell_r10_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result_scell_r10.rsrp_result_scell_r10, bref, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(unpack_unalign_integer(meas_result_scell_r10.rsrq_result_scell_r10, bref, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(unpack_integer(meas_result_scell_r10.rsrp_result_scell_r10, bref, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(unpack_integer(meas_result_scell_r10.rsrq_result_scell_r10, bref, (uint8_t)0u, (uint8_t)34u)); } if (meas_result_best_neigh_cell_r10_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result_best_neigh_cell_r10.pci_r10, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE( - unpack_unalign_integer(meas_result_best_neigh_cell_r10.rsrp_result_ncell_r10, bref, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE( - unpack_unalign_integer(meas_result_best_neigh_cell_r10.rsrq_result_ncell_r10, bref, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(unpack_integer(meas_result_best_neigh_cell_r10.pci_r10, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(unpack_integer(meas_result_best_neigh_cell_r10.rsrp_result_ncell_r10, bref, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(unpack_integer(meas_result_best_neigh_cell_r10.rsrq_result_ncell_r10, bref, (uint8_t)0u, (uint8_t)34u)); } if (ext) { @@ -87378,19 +87248,19 @@ SRSASN_CODE meas_result_serv_freq_r10_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(meas_result_scell_v1250_present, 1)); HANDLE_CODE(bref.unpack(meas_result_best_neigh_cell_v1250_present, 1)); if (meas_result_scell_v1250_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result_scell_v1250, bref, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(unpack_integer(meas_result_scell_v1250, bref, (int8_t)-30, (int8_t)46)); } if (meas_result_best_neigh_cell_v1250_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result_best_neigh_cell_v1250, bref, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(unpack_integer(meas_result_best_neigh_cell_v1250, bref, (int8_t)-30, (int8_t)46)); } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool meas_result_scell_v1310_present; HANDLE_CODE(bref.unpack(meas_result_scell_v1310_present, 1)); @@ -87399,12 +87269,11 @@ SRSASN_CODE meas_result_serv_freq_r10_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(meas_result_best_neigh_cell_v1310_present, 1)); meas_result_best_neigh_cell_v1310.set_present(meas_result_best_neigh_cell_v1310_present); if (meas_result_scell_v1310.is_present()) { - HANDLE_CODE( - unpack_unalign_integer(meas_result_scell_v1310->rs_sinr_result_r13, bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(meas_result_scell_v1310->rs_sinr_result_r13, bref, (uint8_t)0u, (uint8_t)127u)); } if (meas_result_best_neigh_cell_v1310.is_present()) { - HANDLE_CODE(unpack_unalign_integer( - meas_result_best_neigh_cell_v1310->rs_sinr_result_r13, bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE( + unpack_integer(meas_result_best_neigh_cell_v1310->rs_sinr_result_r13, bref, (uint8_t)0u, (uint8_t)127u)); } } } @@ -87459,25 +87328,22 @@ SRSASN_CODE meas_result_serv_freq_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(meas_result_scell_r13_present, 1)); HANDLE_CODE(bref.pack(meas_result_best_neigh_cell_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, serv_freq_id_r13, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, serv_freq_id_r13, (uint8_t)0u, (uint8_t)31u)); if (meas_result_scell_r13_present) { HANDLE_CODE(bref.pack(meas_result_scell_r13.rs_sinr_result_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, meas_result_scell_r13.rsrp_result_scell_r13, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(pack_unalign_integer(bref, meas_result_scell_r13.rsrq_result_scell_r13, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(pack_integer(bref, meas_result_scell_r13.rsrp_result_scell_r13, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(pack_integer(bref, meas_result_scell_r13.rsrq_result_scell_r13, (int8_t)-30, (int8_t)46)); if (meas_result_scell_r13.rs_sinr_result_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_scell_r13.rs_sinr_result_r13, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, meas_result_scell_r13.rs_sinr_result_r13, (uint8_t)0u, (uint8_t)127u)); } } if (meas_result_best_neigh_cell_r13_present) { HANDLE_CODE(bref.pack(meas_result_best_neigh_cell_r13.rs_sinr_result_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, meas_result_best_neigh_cell_r13.pci_r13, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE( - pack_unalign_integer(bref, meas_result_best_neigh_cell_r13.rsrp_result_ncell_r13, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE( - pack_unalign_integer(bref, meas_result_best_neigh_cell_r13.rsrq_result_ncell_r13, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(pack_integer(bref, meas_result_best_neigh_cell_r13.pci_r13, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(pack_integer(bref, meas_result_best_neigh_cell_r13.rsrp_result_ncell_r13, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(pack_integer(bref, meas_result_best_neigh_cell_r13.rsrq_result_ncell_r13, (int8_t)-30, (int8_t)46)); if (meas_result_best_neigh_cell_r13.rs_sinr_result_r13_present) { - HANDLE_CODE( - pack_unalign_integer(bref, meas_result_best_neigh_cell_r13.rs_sinr_result_r13, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, meas_result_best_neigh_cell_r13.rs_sinr_result_r13, (uint8_t)0u, (uint8_t)127u)); } } @@ -87487,12 +87353,12 @@ SRSASN_CODE meas_result_serv_freq_r13_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_result_best_neigh_cell_v1360.is_present(), 1)); if (meas_result_best_neigh_cell_v1360.is_present()) { - HANDLE_CODE(pack_unalign_integer( - bref, meas_result_best_neigh_cell_v1360->rsrp_result_ncell_v1360, (int8_t)-17, (int8_t)-1)); + HANDLE_CODE( + pack_integer(bref, meas_result_best_neigh_cell_v1360->rsrp_result_ncell_v1360, (int8_t)-17, (int8_t)-1)); } } } @@ -87504,25 +87370,22 @@ SRSASN_CODE meas_result_serv_freq_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(meas_result_scell_r13_present, 1)); HANDLE_CODE(bref.unpack(meas_result_best_neigh_cell_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(serv_freq_id_r13, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(serv_freq_id_r13, bref, (uint8_t)0u, (uint8_t)31u)); if (meas_result_scell_r13_present) { HANDLE_CODE(bref.unpack(meas_result_scell_r13.rs_sinr_result_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(meas_result_scell_r13.rsrp_result_scell_r13, bref, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(unpack_unalign_integer(meas_result_scell_r13.rsrq_result_scell_r13, bref, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(unpack_integer(meas_result_scell_r13.rsrp_result_scell_r13, bref, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(unpack_integer(meas_result_scell_r13.rsrq_result_scell_r13, bref, (int8_t)-30, (int8_t)46)); if (meas_result_scell_r13.rs_sinr_result_r13_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result_scell_r13.rs_sinr_result_r13, bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(meas_result_scell_r13.rs_sinr_result_r13, bref, (uint8_t)0u, (uint8_t)127u)); } } if (meas_result_best_neigh_cell_r13_present) { HANDLE_CODE(bref.unpack(meas_result_best_neigh_cell_r13.rs_sinr_result_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(meas_result_best_neigh_cell_r13.pci_r13, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE( - unpack_unalign_integer(meas_result_best_neigh_cell_r13.rsrp_result_ncell_r13, bref, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE( - unpack_unalign_integer(meas_result_best_neigh_cell_r13.rsrq_result_ncell_r13, bref, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(unpack_integer(meas_result_best_neigh_cell_r13.pci_r13, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(unpack_integer(meas_result_best_neigh_cell_r13.rsrp_result_ncell_r13, bref, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(unpack_integer(meas_result_best_neigh_cell_r13.rsrq_result_ncell_r13, bref, (int8_t)-30, (int8_t)46)); if (meas_result_best_neigh_cell_r13.rs_sinr_result_r13_present) { - HANDLE_CODE( - unpack_unalign_integer(meas_result_best_neigh_cell_r13.rs_sinr_result_r13, bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(meas_result_best_neigh_cell_r13.rs_sinr_result_r13, bref, (uint8_t)0u, (uint8_t)127u)); } } @@ -87531,14 +87394,14 @@ SRSASN_CODE meas_result_serv_freq_r13_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool meas_result_best_neigh_cell_v1360_present; HANDLE_CODE(bref.unpack(meas_result_best_neigh_cell_v1360_present, 1)); meas_result_best_neigh_cell_v1360.set_present(meas_result_best_neigh_cell_v1360_present); if (meas_result_best_neigh_cell_v1360.is_present()) { - HANDLE_CODE(unpack_unalign_integer( - meas_result_best_neigh_cell_v1360->rsrp_result_ncell_v1360, bref, (int8_t)-17, (int8_t)-1)); + HANDLE_CODE( + unpack_integer(meas_result_best_neigh_cell_v1360->rsrp_result_ncell_v1360, bref, (int8_t)-17, (int8_t)-1)); } } } @@ -87587,7 +87450,7 @@ SRSASN_CODE meas_result_serv_freq_nr_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(meas_result_scell_r15_present, 1)); HANDLE_CODE(bref.pack(meas_result_best_neigh_cell_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r15, (uint32_t)0, (uint32_t)3279165)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r15, (uint32_t)0u, (uint32_t)3279165u)); if (meas_result_scell_r15_present) { HANDLE_CODE(meas_result_scell_r15.pack(bref)); } @@ -87603,7 +87466,7 @@ SRSASN_CODE meas_result_serv_freq_nr_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(meas_result_scell_r15_present, 1)); HANDLE_CODE(bref.unpack(meas_result_best_neigh_cell_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r15, bref, (uint32_t)0, (uint32_t)3279165)); + HANDLE_CODE(unpack_integer(carrier_freq_r15, bref, (uint32_t)0u, (uint32_t)3279165u)); if (meas_result_scell_r15_present) { HANDLE_CODE(meas_result_scell_r15.unpack(bref)); } @@ -87646,23 +87509,23 @@ SRSASN_CODE meas_result_wlan_r13_s::pack(bit_ref& bref) const HANDLE_CODE(carrier_info_wlan_r13.pack(bref)); } if (band_wlan_r13_present) { - HANDLE_CODE(pack_enum(bref, band_wlan_r13)); + HANDLE_CODE(band_wlan_r13.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, rssi_wlan_r13, (uint8_t)0, (uint8_t)141)); + HANDLE_CODE(pack_integer(bref, rssi_wlan_r13, (uint8_t)0u, (uint8_t)141u)); if (available_admission_capacity_wlan_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, available_admission_capacity_wlan_r13, (uint16_t)0, (uint16_t)31250)); + HANDLE_CODE(pack_integer(bref, available_admission_capacity_wlan_r13, (uint16_t)0u, (uint16_t)31250u)); } if (backhaul_dl_bw_wlan_r13_present) { - HANDLE_CODE(pack_enum(bref, backhaul_dl_bw_wlan_r13)); + HANDLE_CODE(backhaul_dl_bw_wlan_r13.pack(bref)); } if (backhaul_ul_bw_wlan_r13_present) { - HANDLE_CODE(pack_enum(bref, backhaul_ul_bw_wlan_r13)); + HANDLE_CODE(backhaul_ul_bw_wlan_r13.pack(bref)); } if (ch_utilization_wlan_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, ch_utilization_wlan_r13, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(pack_integer(bref, ch_utilization_wlan_r13, (uint16_t)0u, (uint16_t)255u)); } if (station_count_wlan_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, station_count_wlan_r13, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, station_count_wlan_r13, (uint32_t)0u, (uint32_t)65535u)); } return SRSASN_SUCCESS; @@ -87684,23 +87547,23 @@ SRSASN_CODE meas_result_wlan_r13_s::unpack(bit_ref& bref) HANDLE_CODE(carrier_info_wlan_r13.unpack(bref)); } if (band_wlan_r13_present) { - HANDLE_CODE(unpack_enum(band_wlan_r13, bref)); + HANDLE_CODE(band_wlan_r13.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(rssi_wlan_r13, bref, (uint8_t)0, (uint8_t)141)); + HANDLE_CODE(unpack_integer(rssi_wlan_r13, bref, (uint8_t)0u, (uint8_t)141u)); if (available_admission_capacity_wlan_r13_present) { - HANDLE_CODE(unpack_unalign_integer(available_admission_capacity_wlan_r13, bref, (uint16_t)0, (uint16_t)31250)); + HANDLE_CODE(unpack_integer(available_admission_capacity_wlan_r13, bref, (uint16_t)0u, (uint16_t)31250u)); } if (backhaul_dl_bw_wlan_r13_present) { - HANDLE_CODE(unpack_enum(backhaul_dl_bw_wlan_r13, bref)); + HANDLE_CODE(backhaul_dl_bw_wlan_r13.unpack(bref)); } if (backhaul_ul_bw_wlan_r13_present) { - HANDLE_CODE(unpack_enum(backhaul_ul_bw_wlan_r13, bref)); + HANDLE_CODE(backhaul_ul_bw_wlan_r13.unpack(bref)); } if (ch_utilization_wlan_r13_present) { - HANDLE_CODE(unpack_unalign_integer(ch_utilization_wlan_r13, bref, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(unpack_integer(ch_utilization_wlan_r13, bref, (uint16_t)0u, (uint16_t)255u)); } if (station_count_wlan_r13_present) { - HANDLE_CODE(unpack_unalign_integer(station_count_wlan_r13, bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(station_count_wlan_r13, bref, (uint32_t)0u, (uint32_t)65535u)); } return SRSASN_SUCCESS; @@ -87746,12 +87609,12 @@ SRSASN_CODE overheat_assist_r14_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(reduced_max_ccs_present, 1)); if (reduced_ue_category_present) { - HANDLE_CODE(pack_unalign_integer(bref, reduced_ue_category.reduced_ue_category_dl, (uint8_t)0, (uint8_t)19)); - HANDLE_CODE(pack_unalign_integer(bref, reduced_ue_category.reduced_ue_category_ul, (uint8_t)0, (uint8_t)21)); + HANDLE_CODE(pack_integer(bref, reduced_ue_category.reduced_ue_category_dl, (uint8_t)0u, (uint8_t)19u)); + HANDLE_CODE(pack_integer(bref, reduced_ue_category.reduced_ue_category_ul, (uint8_t)0u, (uint8_t)21u)); } if (reduced_max_ccs_present) { - HANDLE_CODE(pack_unalign_integer(bref, reduced_max_ccs.reduced_ccs_dl, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, reduced_max_ccs.reduced_ccs_ul, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, reduced_max_ccs.reduced_ccs_dl, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(pack_integer(bref, reduced_max_ccs.reduced_ccs_ul, (uint8_t)0u, (uint8_t)31u)); } return SRSASN_SUCCESS; @@ -87762,12 +87625,12 @@ SRSASN_CODE overheat_assist_r14_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(reduced_max_ccs_present, 1)); if (reduced_ue_category_present) { - HANDLE_CODE(unpack_unalign_integer(reduced_ue_category.reduced_ue_category_dl, bref, (uint8_t)0, (uint8_t)19)); - HANDLE_CODE(unpack_unalign_integer(reduced_ue_category.reduced_ue_category_ul, bref, (uint8_t)0, (uint8_t)21)); + HANDLE_CODE(unpack_integer(reduced_ue_category.reduced_ue_category_dl, bref, (uint8_t)0u, (uint8_t)19u)); + HANDLE_CODE(unpack_integer(reduced_ue_category.reduced_ue_category_ul, bref, (uint8_t)0u, (uint8_t)21u)); } if (reduced_max_ccs_present) { - HANDLE_CODE(unpack_unalign_integer(reduced_max_ccs.reduced_ccs_dl, bref, (uint8_t)0, (uint8_t)31)); - HANDLE_CODE(unpack_unalign_integer(reduced_max_ccs.reduced_ccs_ul, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(reduced_max_ccs.reduced_ccs_dl, bref, (uint8_t)0u, (uint8_t)31u)); + HANDLE_CODE(unpack_integer(reduced_max_ccs.reduced_ccs_ul, bref, (uint8_t)0u, (uint8_t)31u)); } return SRSASN_SUCCESS; @@ -87949,7 +87812,7 @@ SRSASN_CODE sl_disc_sys_info_report_r13_s::pack(bit_ref& bref) const HANDLE_CODE(cell_id_minus13.pack(bref)); } if (carrier_freq_info_minus13_present) { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_info_minus13, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, carrier_freq_info_minus13, (uint32_t)0u, (uint32_t)262143u)); } if (disc_rx_res_r13_present) { HANDLE_CODE(pack_dyn_seq_of(bref, disc_rx_res_r13, 1, 16)); @@ -87965,15 +87828,15 @@ SRSASN_CODE sl_disc_sys_info_report_r13_s::pack(bit_ref& bref) const } if (disc_cell_sel_info_r13_present) { HANDLE_CODE(bref.pack(disc_cell_sel_info_r13.q_rx_lev_min_offset_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, disc_cell_sel_info_r13.q_rx_lev_min_r13, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(pack_integer(bref, disc_cell_sel_info_r13.q_rx_lev_min_r13, (int8_t)-70, (int8_t)-22)); if (disc_cell_sel_info_r13.q_rx_lev_min_offset_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, disc_cell_sel_info_r13.q_rx_lev_min_offset_r13, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, disc_cell_sel_info_r13.q_rx_lev_min_offset_r13, (uint8_t)1u, (uint8_t)8u)); } } if (cell_resel_info_r13_present) { - HANDLE_CODE(pack_enum(bref, cell_resel_info_r13.q_hyst_r13)); - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_info_r13.q_rx_lev_min_r13, (int8_t)-70, (int8_t)-22)); - HANDLE_CODE(pack_unalign_integer(bref, cell_resel_info_r13.t_resel_eutra_r13, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(cell_resel_info_r13.q_hyst_r13.pack(bref)); + HANDLE_CODE(pack_integer(bref, cell_resel_info_r13.q_rx_lev_min_r13, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(pack_integer(bref, cell_resel_info_r13.t_resel_eutra_r13, (uint8_t)0u, (uint8_t)7u)); } if (tdd_cfg_r13_present) { HANDLE_CODE(tdd_cfg_r13.pack(bref)); @@ -87983,20 +87846,20 @@ SRSASN_CODE sl_disc_sys_info_report_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(freq_info_r13.ul_bw_r13_present, 1)); HANDLE_CODE(bref.pack(freq_info_r13.add_spec_emission_r13_present, 1)); if (freq_info_r13.ul_carrier_freq_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, freq_info_r13.ul_carrier_freq_r13, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, freq_info_r13.ul_carrier_freq_r13, (uint32_t)0u, (uint32_t)65535u)); } if (freq_info_r13.ul_bw_r13_present) { - HANDLE_CODE(pack_enum(bref, freq_info_r13.ul_bw_r13)); + HANDLE_CODE(freq_info_r13.ul_bw_r13.pack(bref)); } if (freq_info_r13.add_spec_emission_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, freq_info_r13.add_spec_emission_r13, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, freq_info_r13.add_spec_emission_r13, (uint8_t)1u, (uint8_t)32u)); } } if (p_max_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, p_max_r13, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, p_max_r13, (int8_t)-30, (int8_t)33)); } if (ref_sig_pwr_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, ref_sig_pwr_r13, (int8_t)-60, (int8_t)50)); + HANDLE_CODE(pack_integer(bref, ref_sig_pwr_r13, (int8_t)-60, (int8_t)50)); } if (ext) { @@ -88005,11 +87868,11 @@ SRSASN_CODE sl_disc_sys_info_report_r13_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(freq_info_v1370.is_present(), 1)); if (freq_info_v1370.is_present()) { - HANDLE_CODE(pack_unalign_integer(bref, freq_info_v1370->add_spec_emission_v1370, (uint16_t)33, (uint16_t)288)); + HANDLE_CODE(pack_integer(bref, freq_info_v1370->add_spec_emission_v1370, (uint16_t)33u, (uint16_t)288u)); } } } @@ -88039,7 +87902,7 @@ SRSASN_CODE sl_disc_sys_info_report_r13_s::unpack(bit_ref& bref) HANDLE_CODE(cell_id_minus13.unpack(bref)); } if (carrier_freq_info_minus13_present) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq_info_minus13, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(carrier_freq_info_minus13, bref, (uint32_t)0u, (uint32_t)262143u)); } if (disc_rx_res_r13_present) { HANDLE_CODE(unpack_dyn_seq_of(disc_rx_res_r13, bref, 1, 16)); @@ -88055,15 +87918,15 @@ SRSASN_CODE sl_disc_sys_info_report_r13_s::unpack(bit_ref& bref) } if (disc_cell_sel_info_r13_present) { HANDLE_CODE(bref.unpack(disc_cell_sel_info_r13.q_rx_lev_min_offset_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(disc_cell_sel_info_r13.q_rx_lev_min_r13, bref, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(unpack_integer(disc_cell_sel_info_r13.q_rx_lev_min_r13, bref, (int8_t)-70, (int8_t)-22)); if (disc_cell_sel_info_r13.q_rx_lev_min_offset_r13_present) { - HANDLE_CODE(unpack_unalign_integer(disc_cell_sel_info_r13.q_rx_lev_min_offset_r13, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(disc_cell_sel_info_r13.q_rx_lev_min_offset_r13, bref, (uint8_t)1u, (uint8_t)8u)); } } if (cell_resel_info_r13_present) { - HANDLE_CODE(unpack_enum(cell_resel_info_r13.q_hyst_r13, bref)); - HANDLE_CODE(unpack_unalign_integer(cell_resel_info_r13.q_rx_lev_min_r13, bref, (int8_t)-70, (int8_t)-22)); - HANDLE_CODE(unpack_unalign_integer(cell_resel_info_r13.t_resel_eutra_r13, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(cell_resel_info_r13.q_hyst_r13.unpack(bref)); + HANDLE_CODE(unpack_integer(cell_resel_info_r13.q_rx_lev_min_r13, bref, (int8_t)-70, (int8_t)-22)); + HANDLE_CODE(unpack_integer(cell_resel_info_r13.t_resel_eutra_r13, bref, (uint8_t)0u, (uint8_t)7u)); } if (tdd_cfg_r13_present) { HANDLE_CODE(tdd_cfg_r13.unpack(bref)); @@ -88073,20 +87936,20 @@ SRSASN_CODE sl_disc_sys_info_report_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(freq_info_r13.ul_bw_r13_present, 1)); HANDLE_CODE(bref.unpack(freq_info_r13.add_spec_emission_r13_present, 1)); if (freq_info_r13.ul_carrier_freq_r13_present) { - HANDLE_CODE(unpack_unalign_integer(freq_info_r13.ul_carrier_freq_r13, bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(freq_info_r13.ul_carrier_freq_r13, bref, (uint32_t)0u, (uint32_t)65535u)); } if (freq_info_r13.ul_bw_r13_present) { - HANDLE_CODE(unpack_enum(freq_info_r13.ul_bw_r13, bref)); + HANDLE_CODE(freq_info_r13.ul_bw_r13.unpack(bref)); } if (freq_info_r13.add_spec_emission_r13_present) { - HANDLE_CODE(unpack_unalign_integer(freq_info_r13.add_spec_emission_r13, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(freq_info_r13.add_spec_emission_r13, bref, (uint8_t)1u, (uint8_t)32u)); } } if (p_max_r13_present) { - HANDLE_CODE(unpack_unalign_integer(p_max_r13, bref, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(unpack_integer(p_max_r13, bref, (int8_t)-30, (int8_t)33)); } if (ref_sig_pwr_r13_present) { - HANDLE_CODE(unpack_unalign_integer(ref_sig_pwr_r13, bref, (int8_t)-60, (int8_t)50)); + HANDLE_CODE(unpack_integer(ref_sig_pwr_r13, bref, (int8_t)-60, (int8_t)50)); } if (ext) { @@ -88094,14 +87957,13 @@ SRSASN_CODE sl_disc_sys_info_report_r13_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool freq_info_v1370_present; HANDLE_CODE(bref.unpack(freq_info_v1370_present, 1)); freq_info_v1370.set_present(freq_info_v1370_present); if (freq_info_v1370.is_present()) { - HANDLE_CODE( - unpack_unalign_integer(freq_info_v1370->add_spec_emission_v1370, bref, (uint16_t)33, (uint16_t)288)); + HANDLE_CODE(unpack_integer(freq_info_v1370->add_spec_emission_v1370, bref, (uint16_t)33u, (uint16_t)288u)); } } } @@ -88206,9 +88068,9 @@ SRSASN_CODE sl_disc_tx_res_req_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(carrier_freq_disc_tx_r13_present, 1)); if (carrier_freq_disc_tx_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_disc_tx_r13, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, carrier_freq_disc_tx_r13, (uint8_t)1u, (uint8_t)8u)); } - HANDLE_CODE(pack_unalign_integer(bref, disc_tx_res_req_r13, (uint8_t)1, (uint8_t)63)); + HANDLE_CODE(pack_integer(bref, disc_tx_res_req_r13, (uint8_t)1u, (uint8_t)63u)); return SRSASN_SUCCESS; } @@ -88217,9 +88079,9 @@ SRSASN_CODE sl_disc_tx_res_req_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(carrier_freq_disc_tx_r13_present, 1)); if (carrier_freq_disc_tx_r13_present) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq_disc_tx_r13, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(carrier_freq_disc_tx_r13, bref, (uint8_t)1u, (uint8_t)8u)); } - HANDLE_CODE(unpack_unalign_integer(disc_tx_res_req_r13, bref, (uint8_t)1, (uint8_t)63)); + HANDLE_CODE(unpack_integer(disc_tx_res_req_r13, bref, (uint8_t)1u, (uint8_t)63u)); return SRSASN_SUCCESS; } @@ -88239,7 +88101,7 @@ SRSASN_CODE sl_gap_freq_info_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(carrier_freq_r13_present, 1)); if (carrier_freq_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r13, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r13, (uint32_t)0u, (uint32_t)262143u)); } HANDLE_CODE(pack_dyn_seq_of(bref, gap_pattern_list_r13, 1, 8)); @@ -88250,7 +88112,7 @@ SRSASN_CODE sl_gap_freq_info_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(carrier_freq_r13_present, 1)); if (carrier_freq_r13_present) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r13, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(carrier_freq_r13, bref, (uint32_t)0u, (uint32_t)262143u)); } HANDLE_CODE(unpack_dyn_seq_of(gap_pattern_list_r13, bref, 1, 8)); @@ -88273,13 +88135,13 @@ void sl_gap_freq_info_r13_s::to_json(json_writer& j) const // SensingResult-r15 ::= SEQUENCE SRSASN_CODE sensing_result_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, res_idx_r15, (uint16_t)1, (uint16_t)2000)); + HANDLE_CODE(pack_integer(bref, res_idx_r15, (uint16_t)1u, (uint16_t)2000u)); return SRSASN_SUCCESS; } SRSASN_CODE sensing_result_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(res_idx_r15, bref, (uint16_t)1, (uint16_t)2000)); + HANDLE_CODE(unpack_integer(res_idx_r15, bref, (uint16_t)1u, (uint16_t)2000u)); return SRSASN_SUCCESS; } @@ -88297,7 +88159,7 @@ SRSASN_CODE sidelink_ue_info_v1530_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (reliability_info_list_sl_r15_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, reliability_info_list_sl_r15, 1, 8, UnalignedIntegerPacker(1, 8))); + HANDLE_CODE(pack_dyn_seq_of(bref, reliability_info_list_sl_r15, 1, 8, integer_packer(1, 8))); } return SRSASN_SUCCESS; @@ -88308,7 +88170,7 @@ SRSASN_CODE sidelink_ue_info_v1530_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (reliability_info_list_sl_r15_present) { - HANDLE_CODE(unpack_dyn_seq_of(reliability_info_list_sl_r15, bref, 1, 8, UnalignedIntegerPacker(1, 8))); + HANDLE_CODE(unpack_dyn_seq_of(reliability_info_list_sl_r15, bref, 1, 8, integer_packer(1, 8))); } return SRSASN_SUCCESS; @@ -88337,13 +88199,13 @@ SRSASN_CODE traffic_pattern_info_r14_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(prio_info_sl_r14_present, 1)); HANDLE_CODE(bref.pack(lc_ch_id_ul_r14_present, 1)); - HANDLE_CODE(pack_enum(bref, traffic_periodicity_r14)); - HANDLE_CODE(pack_unalign_integer(bref, timing_offset_r14, (uint16_t)0, (uint16_t)10239)); + HANDLE_CODE(traffic_periodicity_r14.pack(bref)); + HANDLE_CODE(pack_integer(bref, timing_offset_r14, (uint16_t)0u, (uint16_t)10239u)); if (prio_info_sl_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, prio_info_sl_r14, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, prio_info_sl_r14, (uint8_t)1u, (uint8_t)8u)); } if (lc_ch_id_ul_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, lc_ch_id_ul_r14, (uint8_t)3, (uint8_t)10)); + HANDLE_CODE(pack_integer(bref, lc_ch_id_ul_r14, (uint8_t)3u, (uint8_t)10u)); } HANDLE_CODE(msg_size_r14.pack(bref)); @@ -88354,13 +88216,13 @@ SRSASN_CODE traffic_pattern_info_r14_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(prio_info_sl_r14_present, 1)); HANDLE_CODE(bref.unpack(lc_ch_id_ul_r14_present, 1)); - HANDLE_CODE(unpack_enum(traffic_periodicity_r14, bref)); - HANDLE_CODE(unpack_unalign_integer(timing_offset_r14, bref, (uint16_t)0, (uint16_t)10239)); + HANDLE_CODE(traffic_periodicity_r14.unpack(bref)); + HANDLE_CODE(unpack_integer(timing_offset_r14, bref, (uint16_t)0u, (uint16_t)10239u)); if (prio_info_sl_r14_present) { - HANDLE_CODE(unpack_unalign_integer(prio_info_sl_r14, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(prio_info_sl_r14, bref, (uint8_t)1u, (uint8_t)8u)); } if (lc_ch_id_ul_r14_present) { - HANDLE_CODE(unpack_unalign_integer(lc_ch_id_ul_r14, bref, (uint8_t)3, (uint8_t)10)); + HANDLE_CODE(unpack_integer(lc_ch_id_ul_r14, bref, (uint8_t)3u, (uint8_t)10u)); } HANDLE_CODE(msg_size_r14.unpack(bref)); @@ -88388,7 +88250,7 @@ SRSASN_CODE ue_radio_paging_info_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(ue_category_v1250_present, 1)); if (ue_category_v1250_present) { - HANDLE_CODE(pack_unalign_integer(bref, ue_category_v1250, (uint8_t)0, (uint8_t)0)); + HANDLE_CODE(pack_integer(bref, ue_category_v1250, (uint8_t)0u, (uint8_t)0u)); } if (ext) { @@ -88403,24 +88265,24 @@ SRSASN_CODE ue_radio_paging_info_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(ue_category_dl_v1310_present, 1)); HANDLE_CODE(bref.pack(ce_mode_a_r13_present, 1)); HANDLE_CODE(bref.pack(ce_mode_b_r13_present, 1)); } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(wake_up_signal_r15_present, 1)); HANDLE_CODE(bref.pack(wake_up_signal_tdd_r15_present, 1)); HANDLE_CODE(bref.pack(wake_up_signal_min_gap_e_drx_r15_present, 1)); HANDLE_CODE(bref.pack(wake_up_signal_min_gap_e_drx_tdd_r15_present, 1)); if (wake_up_signal_min_gap_e_drx_r15_present) { - HANDLE_CODE(pack_enum(bref, wake_up_signal_min_gap_e_drx_r15)); + HANDLE_CODE(wake_up_signal_min_gap_e_drx_r15.pack(bref)); } if (wake_up_signal_min_gap_e_drx_tdd_r15_present) { - HANDLE_CODE(pack_enum(bref, wake_up_signal_min_gap_e_drx_tdd_r15)); + HANDLE_CODE(wake_up_signal_min_gap_e_drx_tdd_r15.pack(bref)); } } } @@ -88432,7 +88294,7 @@ SRSASN_CODE ue_radio_paging_info_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ue_category_v1250_present, 1)); if (ue_category_v1250_present) { - HANDLE_CODE(unpack_unalign_integer(ue_category_v1250, bref, (uint8_t)0, (uint8_t)0)); + HANDLE_CODE(unpack_integer(ue_category_v1250, bref, (uint8_t)0u, (uint8_t)0u)); } if (ext) { @@ -88440,24 +88302,24 @@ SRSASN_CODE ue_radio_paging_info_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(ue_category_dl_v1310_present, 1)); HANDLE_CODE(bref.unpack(ce_mode_a_r13_present, 1)); HANDLE_CODE(bref.unpack(ce_mode_b_r13_present, 1)); } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(wake_up_signal_r15_present, 1)); HANDLE_CODE(bref.unpack(wake_up_signal_tdd_r15_present, 1)); HANDLE_CODE(bref.unpack(wake_up_signal_min_gap_e_drx_r15_present, 1)); HANDLE_CODE(bref.unpack(wake_up_signal_min_gap_e_drx_tdd_r15_present, 1)); if (wake_up_signal_min_gap_e_drx_r15_present) { - HANDLE_CODE(unpack_enum(wake_up_signal_min_gap_e_drx_r15, bref)); + HANDLE_CODE(wake_up_signal_min_gap_e_drx_r15.unpack(bref)); } if (wake_up_signal_min_gap_e_drx_tdd_r15_present) { - HANDLE_CODE(unpack_enum(wake_up_signal_min_gap_e_drx_tdd_r15, bref)); + HANDLE_CODE(wake_up_signal_min_gap_e_drx_tdd_r15.unpack(bref)); } } } @@ -88586,16 +88448,16 @@ void ue_info_resp_v1130_ies_s::to_json(json_writer& j) const SRSASN_CODE ul_pdcp_delay_result_r13_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_enum(bref, qci_id_r13)); - HANDLE_CODE(pack_unalign_integer(bref, excess_delay_r13, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(qci_id_r13.pack(bref)); + HANDLE_CODE(pack_integer(bref, excess_delay_r13, (uint8_t)0u, (uint8_t)31u)); return SRSASN_SUCCESS; } SRSASN_CODE ul_pdcp_delay_result_r13_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_enum(qci_id_r13, bref)); - HANDLE_CODE(unpack_unalign_integer(excess_delay_r13, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(qci_id_r13.unpack(bref)); + HANDLE_CODE(unpack_integer(excess_delay_r13, bref, (uint8_t)0u, (uint8_t)31u)); return SRSASN_SUCCESS; } @@ -88610,15 +88472,15 @@ void ul_pdcp_delay_result_r13_s::to_json(json_writer& j) const // AffectedCarrierFreq-r11 ::= SEQUENCE SRSASN_CODE affected_carrier_freq_r11_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r11, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(pack_enum(bref, interference_direction_r11)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r11, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(interference_direction_r11.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE affected_carrier_freq_r11_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r11, bref, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(unpack_enum(interference_direction_r11, bref)); + HANDLE_CODE(unpack_integer(carrier_freq_r11, bref, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(interference_direction_r11.unpack(bref)); return SRSASN_SUCCESS; } @@ -88637,10 +88499,10 @@ SRSASN_CODE bw_pref_r14_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(ul_pref_r14_present, 1)); if (dl_pref_r14_present) { - HANDLE_CODE(pack_enum(bref, dl_pref_r14)); + HANDLE_CODE(dl_pref_r14.pack(bref)); } if (ul_pref_r14_present) { - HANDLE_CODE(pack_enum(bref, ul_pref_r14)); + HANDLE_CODE(ul_pref_r14.pack(bref)); } return SRSASN_SUCCESS; @@ -88651,10 +88513,10 @@ SRSASN_CODE bw_pref_r14_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ul_pref_r14_present, 1)); if (dl_pref_r14_present) { - HANDLE_CODE(unpack_enum(dl_pref_r14, bref)); + HANDLE_CODE(dl_pref_r14.unpack(bref)); } if (ul_pref_r14_present) { - HANDLE_CODE(unpack_enum(ul_pref_r14, bref)); + HANDLE_CODE(ul_pref_r14.unpack(bref)); } return SRSASN_SUCCESS; @@ -88716,14 +88578,14 @@ void counter_check_resp_v1530_ies_s::to_json(json_writer& j) const SRSASN_CODE count_resp_info_r10_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, count_resp_service_r10, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, count_resp_service_r10, (uint8_t)0u, (uint8_t)15u)); return SRSASN_SUCCESS; } SRSASN_CODE count_resp_info_r10_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(count_resp_service_r10, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(count_resp_service_r10, bref, (uint8_t)0u, (uint8_t)15u)); return SRSASN_SUCCESS; } @@ -88795,13 +88657,13 @@ void delay_budget_report_r14_c::to_json(json_writer& j) const } SRSASN_CODE delay_budget_report_r14_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::type1: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; case types::type2: - HANDLE_CODE(pack_enum(bref, c.get())); + HANDLE_CODE(c.get().pack(bref)); break; default: log_invalid_choice_id(type_, "delay_budget_report_r14_c"); @@ -88812,14 +88674,14 @@ SRSASN_CODE delay_budget_report_r14_c::pack(bit_ref& bref) const SRSASN_CODE delay_budget_report_r14_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::type1: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; case types::type2: - HANDLE_CODE(unpack_enum(c.get(), bref)); + HANDLE_CODE(c.get().unpack(bref)); break; default: log_invalid_choice_id(type_, "delay_budget_report_r14_c"); @@ -88839,12 +88701,11 @@ SRSASN_CODE in_dev_coex_ind_v1310_ies_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, affected_carrier_freq_list_v1310, 1, 32)); } if (affected_carrier_freq_comb_list_r13_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, - affected_carrier_freq_comb_list_r13, - 1, - 128, - SeqOfPacker >(2, 32, UnalignedIntegerPacker(1, 64)))); + HANDLE_CODE(pack_dyn_seq_of(bref, + affected_carrier_freq_comb_list_r13, + 1, + 128, + SeqOfPacker >(2, 32, integer_packer(1, 64)))); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -88862,12 +88723,11 @@ SRSASN_CODE in_dev_coex_ind_v1310_ies_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(affected_carrier_freq_list_v1310, bref, 1, 32)); } if (affected_carrier_freq_comb_list_r13_present) { - HANDLE_CODE(unpack_dyn_seq_of( - affected_carrier_freq_comb_list_r13, - bref, - 1, - 128, - SeqOfPacker >(2, 32, UnalignedIntegerPacker(1, 64)))); + HANDLE_CODE(unpack_dyn_seq_of(affected_carrier_freq_comb_list_r13, + bref, + 1, + 128, + SeqOfPacker >(2, 32, integer_packer(1, 64)))); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -88906,14 +88766,14 @@ void in_dev_coex_ind_v1310_ies_s::to_json(json_writer& j) const // MeasResultForECID-r9 ::= SEQUENCE SRSASN_CODE meas_result_for_ecid_r9_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, ue_rx_tx_time_diff_result_r9, (uint16_t)0, (uint16_t)4095)); + HANDLE_CODE(pack_integer(bref, ue_rx_tx_time_diff_result_r9, (uint16_t)0u, (uint16_t)4095u)); HANDLE_CODE(current_sfn_r9.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE meas_result_for_ecid_r9_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(ue_rx_tx_time_diff_result_r9, bref, (uint16_t)0, (uint16_t)4095)); + HANDLE_CODE(unpack_integer(ue_rx_tx_time_diff_result_r9, bref, (uint16_t)0u, (uint16_t)4095u)); HANDLE_CODE(current_sfn_r9.unpack(bref)); return SRSASN_SUCCESS; @@ -88930,16 +88790,16 @@ void meas_result_for_ecid_r9_s::to_json(json_writer& j) const SRSASN_CODE meas_result_for_rssi_r13_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, rssi_result_r13, (uint8_t)0, (uint8_t)76)); - HANDLE_CODE(pack_unalign_integer(bref, ch_occupancy_r13, (uint8_t)0, (uint8_t)100)); + HANDLE_CODE(pack_integer(bref, rssi_result_r13, (uint8_t)0u, (uint8_t)76u)); + HANDLE_CODE(pack_integer(bref, ch_occupancy_r13, (uint8_t)0u, (uint8_t)100u)); return SRSASN_SUCCESS; } SRSASN_CODE meas_result_for_rssi_r13_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(rssi_result_r13, bref, (uint8_t)0, (uint8_t)76)); - HANDLE_CODE(unpack_unalign_integer(ch_occupancy_r13, bref, (uint8_t)0, (uint8_t)100)); + HANDLE_CODE(unpack_integer(rssi_result_r13, bref, (uint8_t)0u, (uint8_t)76u)); + HANDLE_CODE(unpack_integer(ch_occupancy_r13, bref, (uint8_t)0u, (uint8_t)100u)); return SRSASN_SUCCESS; } @@ -88954,17 +88814,17 @@ void meas_result_for_rssi_r13_s::to_json(json_writer& j) const // MeasResultSSTD-r13 ::= SEQUENCE SRSASN_CODE meas_result_sstd_r13_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, sfn_offset_result_r13, (uint16_t)0, (uint16_t)1023)); - HANDLE_CODE(pack_unalign_integer(bref, frame_boundary_offset_result_r13, (int8_t)-5, (int8_t)4)); - HANDLE_CODE(pack_unalign_integer(bref, sf_boundary_offset_result_r13, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, sfn_offset_result_r13, (uint16_t)0u, (uint16_t)1023u)); + HANDLE_CODE(pack_integer(bref, frame_boundary_offset_result_r13, (int8_t)-5, (int8_t)4)); + HANDLE_CODE(pack_integer(bref, sf_boundary_offset_result_r13, (uint8_t)0u, (uint8_t)127u)); return SRSASN_SUCCESS; } SRSASN_CODE meas_result_sstd_r13_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(sfn_offset_result_r13, bref, (uint16_t)0, (uint16_t)1023)); - HANDLE_CODE(unpack_unalign_integer(frame_boundary_offset_result_r13, bref, (int8_t)-5, (int8_t)4)); - HANDLE_CODE(unpack_unalign_integer(sf_boundary_offset_result_r13, bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(sfn_offset_result_r13, bref, (uint16_t)0u, (uint16_t)1023u)); + HANDLE_CODE(unpack_integer(frame_boundary_offset_result_r13, bref, (int8_t)-5, (int8_t)4)); + HANDLE_CODE(unpack_integer(sf_boundary_offset_result_r13, bref, (uint8_t)0u, (uint8_t)127u)); return SRSASN_SUCCESS; } @@ -88980,14 +88840,14 @@ void meas_result_sstd_r13_s::to_json(json_writer& j) const // MeasResultSensing-r15 ::= SEQUENCE SRSASN_CODE meas_result_sensing_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, sl_sf_ref_r15, (uint16_t)0, (uint16_t)10239)); + HANDLE_CODE(pack_integer(bref, sl_sf_ref_r15, (uint16_t)0u, (uint16_t)10239u)); HANDLE_CODE(pack_dyn_seq_of(bref, sensing_result_r15, 0, 400)); return SRSASN_SUCCESS; } SRSASN_CODE meas_result_sensing_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(sl_sf_ref_r15, bref, (uint16_t)0, (uint16_t)10239)); + HANDLE_CODE(unpack_integer(sl_sf_ref_r15, bref, (uint16_t)0u, (uint16_t)10239u)); HANDLE_CODE(unpack_dyn_seq_of(sensing_result_r15, bref, 0, 400)); return SRSASN_SUCCESS; @@ -89097,10 +88957,10 @@ SRSASN_CODE rrc_conn_setup_complete_v1020_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (gummei_type_r10_present) { - HANDLE_CODE(pack_enum(bref, gummei_type_r10)); + HANDLE_CODE(gummei_type_r10.pack(bref)); } if (rn_sf_cfg_req_r10_present) { - HANDLE_CODE(pack_enum(bref, rn_sf_cfg_req_r10)); + HANDLE_CODE(rn_sf_cfg_req_r10.pack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -89117,10 +88977,10 @@ SRSASN_CODE rrc_conn_setup_complete_v1020_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (gummei_type_r10_present) { - HANDLE_CODE(unpack_enum(gummei_type_r10, bref)); + HANDLE_CODE(gummei_type_r10.unpack(bref)); } if (rn_sf_cfg_req_r10_present) { - HANDLE_CODE(unpack_enum(rn_sf_cfg_req_r10, bref)); + HANDLE_CODE(rn_sf_cfg_req_r10.unpack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -89154,8 +89014,8 @@ void rrc_conn_setup_complete_v1020_ies_s::to_json(json_writer& j) const SRSASN_CODE rstd_inter_freq_info_r10_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r10, (uint16_t)0, (uint16_t)65535)); - HANDLE_CODE(pack_unalign_integer(bref, meas_prs_offset_r10, (uint8_t)0, (uint8_t)39)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r10, (uint32_t)0u, (uint32_t)65535u)); + HANDLE_CODE(pack_integer(bref, meas_prs_offset_r10, (uint8_t)0u, (uint8_t)39u)); if (ext) { ext_groups_packer_guard group_flags; @@ -89164,15 +89024,15 @@ SRSASN_CODE rstd_inter_freq_info_r10_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(carrier_freq_v1090_present, 1)); if (carrier_freq_v1090_present) { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_v1090, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, carrier_freq_v1090, (uint32_t)65536u, (uint32_t)262143u)); } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_prs_offset_r15.is_present(), 1)); if (meas_prs_offset_r15.is_present()) { @@ -89185,23 +89045,23 @@ SRSASN_CODE rstd_inter_freq_info_r10_s::pack(bit_ref& bref) const SRSASN_CODE rstd_inter_freq_info_r10_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r10, bref, (uint16_t)0, (uint16_t)65535)); - HANDLE_CODE(unpack_unalign_integer(meas_prs_offset_r10, bref, (uint8_t)0, (uint8_t)39)); + HANDLE_CODE(unpack_integer(carrier_freq_r10, bref, (uint32_t)0u, (uint32_t)65535u)); + HANDLE_CODE(unpack_integer(meas_prs_offset_r10, bref, (uint8_t)0u, (uint8_t)39u)); if (ext) { ext_groups_unpacker_guard group_flags(2); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(carrier_freq_v1090_present, 1)); if (carrier_freq_v1090_present) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq_v1090, bref, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(carrier_freq_v1090, bref, (uint32_t)65536u, (uint32_t)262143u)); } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool meas_prs_offset_r15_present; HANDLE_CODE(bref.unpack(meas_prs_offset_r15_present, 1)); @@ -89463,70 +89323,70 @@ void rstd_inter_freq_info_r10_s::meas_prs_offset_r15_c_::to_json(json_writer& j) } SRSASN_CODE rstd_inter_freq_info_r10_s::meas_prs_offset_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rstd0_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)79)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)79u)); break; case types::rstd1_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)159u)); break; case types::rstd2_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)319u)); break; case types::rstd3_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)639u)); break; case types::rstd4_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd5_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)159u)); break; case types::rstd6_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)319u)); break; case types::rstd7_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)639u)); break; case types::rstd8_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd9_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)319u)); break; case types::rstd10_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)639u)); break; case types::rstd11_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd12_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)319u)); break; case types::rstd13_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)639u)); break; case types::rstd14_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd15_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)639u)); break; case types::rstd16_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd17_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)639u)); break; case types::rstd18_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd19_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)639u)); break; case types::rstd20_r15: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)1279u)); break; default: log_invalid_choice_id(type_, "rstd_inter_freq_info_r10_s::meas_prs_offset_r15_c_"); @@ -89537,71 +89397,71 @@ SRSASN_CODE rstd_inter_freq_info_r10_s::meas_prs_offset_r15_c_::pack(bit_ref& br SRSASN_CODE rstd_inter_freq_info_r10_s::meas_prs_offset_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rstd0_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)79)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)79u)); break; case types::rstd1_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)159u)); break; case types::rstd2_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)319u)); break; case types::rstd3_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)639u)); break; case types::rstd4_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd5_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)159u)); break; case types::rstd6_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)319u)); break; case types::rstd7_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)639u)); break; case types::rstd8_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd9_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)319u)); break; case types::rstd10_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)639u)); break; case types::rstd11_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd12_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)319)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)319u)); break; case types::rstd13_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)639u)); break; case types::rstd14_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd15_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)639u)); break; case types::rstd16_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd17_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)639u)); break; case types::rstd18_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1279u)); break; case types::rstd19_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)639)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)639u)); break; case types::rstd20_r15: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)1279)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)1279u)); break; default: log_invalid_choice_id(type_, "rstd_inter_freq_info_r10_s::meas_prs_offset_r15_c_"); @@ -89654,7 +89514,7 @@ SRSASN_CODE sl_comm_tx_res_req_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(carrier_freq_r12_present, 1)); if (carrier_freq_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r12, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r12, (uint32_t)0u, (uint32_t)262143u)); } HANDLE_CODE(pack_dyn_seq_of(bref, dest_info_list_r12, 1, 16)); @@ -89665,7 +89525,7 @@ SRSASN_CODE sl_comm_tx_res_req_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(carrier_freq_r12_present, 1)); if (carrier_freq_r12_present) { - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r12, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(carrier_freq_r12, bref, (uint32_t)0u, (uint32_t)262143u)); } HANDLE_CODE(unpack_dyn_seq_of(dest_info_list_r12, bref, 1, 16)); @@ -89694,8 +89554,7 @@ SRSASN_CODE sidelink_ue_info_v1430_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (v2x_comm_rx_interested_freq_list_r14_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, v2x_comm_rx_interested_freq_list_r14, 1, 8, UnalignedIntegerPacker(0, 7))); + HANDLE_CODE(pack_dyn_seq_of(bref, v2x_comm_rx_interested_freq_list_r14, 1, 8, integer_packer(0, 7))); } if (v2x_comm_tx_res_req_r14_present) { HANDLE_CODE(pack_dyn_seq_of(bref, v2x_comm_tx_res_req_r14, 1, 8)); @@ -89714,8 +89573,7 @@ SRSASN_CODE sidelink_ue_info_v1430_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (v2x_comm_rx_interested_freq_list_r14_present) { - HANDLE_CODE( - unpack_dyn_seq_of(v2x_comm_rx_interested_freq_list_r14, bref, 1, 8, UnalignedIntegerPacker(0, 7))); + HANDLE_CODE(unpack_dyn_seq_of(v2x_comm_rx_interested_freq_list_r14, bref, 1, 8, integer_packer(0, 7))); } if (v2x_comm_tx_res_req_r14_present) { HANDLE_CODE(unpack_dyn_seq_of(v2x_comm_tx_res_req_r14, bref, 1, 8)); @@ -89756,14 +89614,14 @@ void sidelink_ue_info_v1430_ies_s::to_json(json_writer& j) const // UE-CapabilityRAT-Container ::= SEQUENCE SRSASN_CODE ue_cap_rat_container_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, rat_type)); + HANDLE_CODE(rat_type.pack(bref)); HANDLE_CODE(ue_cap_rat_container.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE ue_cap_rat_container_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(rat_type, bref)); + HANDLE_CODE(rat_type.unpack(bref)); HANDLE_CODE(ue_cap_rat_container.unpack(bref)); return SRSASN_SUCCESS; @@ -90024,7 +89882,7 @@ SRSASN_CODE fail_report_scg_nr_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(meas_result_freq_list_nr_r15_present, 1)); HANDLE_CODE(bref.pack(meas_result_scg_r15_present, 1)); - HANDLE_CODE(pack_enum(bref, fail_type_r15)); + HANDLE_CODE(fail_type_r15.pack(bref)); if (meas_result_freq_list_nr_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, meas_result_freq_list_nr_r15, 1, 5)); } @@ -90040,7 +89898,7 @@ SRSASN_CODE fail_report_scg_nr_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(meas_result_freq_list_nr_r15_present, 1)); HANDLE_CODE(bref.unpack(meas_result_scg_r15_present, 1)); - HANDLE_CODE(unpack_enum(fail_type_r15, bref)); + HANDLE_CODE(fail_type_r15.unpack(bref)); if (meas_result_freq_list_nr_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(meas_result_freq_list_nr_r15, bref, 1, 5)); } @@ -90074,7 +89932,7 @@ SRSASN_CODE fail_report_scg_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(meas_result_serv_freq_list_r12_present, 1)); HANDLE_CODE(bref.pack(meas_result_neigh_cells_r12_present, 1)); - HANDLE_CODE(pack_enum(bref, fail_type_r12)); + HANDLE_CODE(fail_type_r12.pack(bref)); if (meas_result_serv_freq_list_r12_present) { HANDLE_CODE(pack_dyn_seq_of(bref, meas_result_serv_freq_list_r12, 1, 5)); } @@ -90089,12 +89947,12 @@ SRSASN_CODE fail_report_scg_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(fail_type_v1290_present, 1)); } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_result_serv_freq_list_ext_r13.is_present(), 1)); if (meas_result_serv_freq_list_ext_r13.is_present()) { @@ -90110,7 +89968,7 @@ SRSASN_CODE fail_report_scg_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(meas_result_serv_freq_list_r12_present, 1)); HANDLE_CODE(bref.unpack(meas_result_neigh_cells_r12_present, 1)); - HANDLE_CODE(unpack_enum(fail_type_r12, bref)); + HANDLE_CODE(fail_type_r12.unpack(bref)); if (meas_result_serv_freq_list_r12_present) { HANDLE_CODE(unpack_dyn_seq_of(meas_result_serv_freq_list_r12, bref, 1, 5)); } @@ -90123,12 +89981,12 @@ SRSASN_CODE fail_report_scg_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(fail_type_v1290_present, 1)); } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool meas_result_serv_freq_list_ext_r13_present; HANDLE_CODE(bref.unpack(meas_result_serv_freq_list_ext_r13_present, 1)); @@ -90182,12 +90040,11 @@ SRSASN_CODE in_dev_coex_ind_v11d0_ies_s::pack(bit_ref& bref) const if (ul_ca_assist_info_r11_present) { HANDLE_CODE(bref.pack(ul_ca_assist_info_r11.affected_carrier_freq_comb_list_r11_present, 1)); if (ul_ca_assist_info_r11.affected_carrier_freq_comb_list_r11_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, - ul_ca_assist_info_r11.affected_carrier_freq_comb_list_r11, - 1, - 128, - SeqOfPacker >(2, 5, UnalignedIntegerPacker(1, 32)))); + HANDLE_CODE(pack_dyn_seq_of(bref, + ul_ca_assist_info_r11.affected_carrier_freq_comb_list_r11, + 1, + 128, + SeqOfPacker >(2, 5, integer_packer(1, 32)))); } HANDLE_CODE(ul_ca_assist_info_r11.victim_sys_type_r11.pack(bref)); } @@ -90205,12 +90062,11 @@ SRSASN_CODE in_dev_coex_ind_v11d0_ies_s::unpack(bit_ref& bref) if (ul_ca_assist_info_r11_present) { HANDLE_CODE(bref.unpack(ul_ca_assist_info_r11.affected_carrier_freq_comb_list_r11_present, 1)); if (ul_ca_assist_info_r11.affected_carrier_freq_comb_list_r11_present) { - HANDLE_CODE(unpack_dyn_seq_of( - ul_ca_assist_info_r11.affected_carrier_freq_comb_list_r11, - bref, - 1, - 128, - SeqOfPacker >(2, 5, UnalignedIntegerPacker(1, 32)))); + HANDLE_CODE(unpack_dyn_seq_of(ul_ca_assist_info_r11.affected_carrier_freq_comb_list_r11, + bref, + 1, + 128, + SeqOfPacker >(2, 5, integer_packer(1, 32)))); } HANDLE_CODE(ul_ca_assist_info_r11.victim_sys_type_r11.unpack(bref)); } @@ -90295,9 +90151,9 @@ SRSASN_CODE meas_results_s::pack(bit_ref& bref) const bref.pack(ext, 1); HANDLE_CODE(bref.pack(meas_result_neigh_cells_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, meas_id, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(pack_unalign_integer(bref, meas_result_pcell.rsrp_result, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(pack_unalign_integer(bref, meas_result_pcell.rsrq_result, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(pack_integer(bref, meas_id, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(pack_integer(bref, meas_result_pcell.rsrp_result, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(pack_integer(bref, meas_result_pcell.rsrq_result, (uint8_t)0u, (uint8_t)34u)); if (meas_result_neigh_cells_present) { HANDLE_CODE(meas_result_neigh_cells.pack(bref)); } @@ -90328,7 +90184,7 @@ SRSASN_CODE meas_results_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_result_for_ecid_r9.is_present(), 1)); if (meas_result_for_ecid_r9.is_present()) { @@ -90336,7 +90192,7 @@ SRSASN_CODE meas_results_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(location_info_r10.is_present(), 1)); HANDLE_CODE(bref.pack(meas_result_serv_freq_list_r10.is_present(), 1)); @@ -90348,23 +90204,23 @@ SRSASN_CODE meas_results_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_id_v1250_present, 1)); HANDLE_CODE(bref.pack(meas_result_pcell_v1250_present, 1)); HANDLE_CODE(bref.pack(meas_result_csi_rs_list_r12.is_present(), 1)); if (meas_id_v1250_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_id_v1250, (uint8_t)33, (uint8_t)64)); + HANDLE_CODE(pack_integer(bref, meas_id_v1250, (uint8_t)33u, (uint8_t)64u)); } if (meas_result_pcell_v1250_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_pcell_v1250, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(pack_integer(bref, meas_result_pcell_v1250, (int8_t)-30, (int8_t)46)); } if (meas_result_csi_rs_list_r12.is_present()) { HANDLE_CODE(pack_dyn_seq_of(bref, *meas_result_csi_rs_list_r12, 1, 8)); } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_result_for_rssi_r13.is_present(), 1)); HANDLE_CODE(bref.pack(meas_result_serv_freq_list_ext_r13.is_present(), 1)); @@ -90382,7 +90238,7 @@ SRSASN_CODE meas_results_s::pack(bit_ref& bref) const HANDLE_CODE(meas_result_sstd_r13->pack(bref)); } if (meas_result_pcell_v1310.is_present()) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_pcell_v1310->rs_sinr_result_r13, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, meas_result_pcell_v1310->rs_sinr_result_r13, (uint8_t)0u, (uint8_t)127u)); } if (ul_pdcp_delay_result_list_r13.is_present()) { HANDLE_CODE(pack_dyn_seq_of(bref, *ul_pdcp_delay_result_list_r13, 1, 6)); @@ -90392,15 +90248,15 @@ SRSASN_CODE meas_results_s::pack(bit_ref& bref) const } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_result_pcell_v1360_present, 1)); if (meas_result_pcell_v1360_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_pcell_v1360, (int8_t)-17, (int8_t)-1)); + HANDLE_CODE(pack_integer(bref, meas_result_pcell_v1360, (int8_t)-17, (int8_t)-1)); } } if (group_flags[5]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_result_list_cbr_r14.is_present(), 1)); HANDLE_CODE(bref.pack(meas_result_list_wlan_r14.is_present(), 1)); @@ -90412,7 +90268,7 @@ SRSASN_CODE meas_results_s::pack(bit_ref& bref) const } } if (group_flags[6]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_result_serv_freq_list_nr_r15.is_present(), 1)); HANDLE_CODE(bref.pack(meas_result_cell_list_sftd_r15.is_present(), 1)); @@ -90424,7 +90280,7 @@ SRSASN_CODE meas_results_s::pack(bit_ref& bref) const } } if (group_flags[7]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(log_meas_result_list_bt_r15.is_present(), 1)); HANDLE_CODE(bref.pack(log_meas_result_list_wlan_r15.is_present(), 1)); @@ -90440,7 +90296,7 @@ SRSASN_CODE meas_results_s::pack(bit_ref& bref) const HANDLE_CODE(meas_result_sensing_r15->pack(bref)); } if (height_ue_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, height_ue_r15, (int16_t)-400, (int16_t)8880)); + HANDLE_CODE(pack_integer(bref, height_ue_r15, (int16_t)-400, (int16_t)8880)); } } } @@ -90451,9 +90307,9 @@ SRSASN_CODE meas_results_s::unpack(bit_ref& bref) bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(meas_result_neigh_cells_present, 1)); - HANDLE_CODE(unpack_unalign_integer(meas_id, bref, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(unpack_unalign_integer(meas_result_pcell.rsrp_result, bref, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(unpack_unalign_integer(meas_result_pcell.rsrq_result, bref, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(unpack_integer(meas_id, bref, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(unpack_integer(meas_result_pcell.rsrp_result, bref, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(unpack_integer(meas_result_pcell.rsrq_result, bref, (uint8_t)0u, (uint8_t)34u)); if (meas_result_neigh_cells_present) { HANDLE_CODE(meas_result_neigh_cells.unpack(bref)); } @@ -90463,7 +90319,7 @@ SRSASN_CODE meas_results_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool meas_result_for_ecid_r9_present; HANDLE_CODE(bref.unpack(meas_result_for_ecid_r9_present, 1)); @@ -90473,7 +90329,7 @@ SRSASN_CODE meas_results_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool location_info_r10_present; HANDLE_CODE(bref.unpack(location_info_r10_present, 1)); @@ -90489,7 +90345,7 @@ SRSASN_CODE meas_results_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(meas_id_v1250_present, 1)); HANDLE_CODE(bref.unpack(meas_result_pcell_v1250_present, 1)); @@ -90497,17 +90353,17 @@ SRSASN_CODE meas_results_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(meas_result_csi_rs_list_r12_present, 1)); meas_result_csi_rs_list_r12.set_present(meas_result_csi_rs_list_r12_present); if (meas_id_v1250_present) { - HANDLE_CODE(unpack_unalign_integer(meas_id_v1250, bref, (uint8_t)33, (uint8_t)64)); + HANDLE_CODE(unpack_integer(meas_id_v1250, bref, (uint8_t)33u, (uint8_t)64u)); } if (meas_result_pcell_v1250_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result_pcell_v1250, bref, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(unpack_integer(meas_result_pcell_v1250, bref, (int8_t)-30, (int8_t)46)); } if (meas_result_csi_rs_list_r12.is_present()) { HANDLE_CODE(unpack_dyn_seq_of(*meas_result_csi_rs_list_r12, bref, 1, 8)); } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool meas_result_for_rssi_r13_present; HANDLE_CODE(bref.unpack(meas_result_for_rssi_r13_present, 1)); @@ -90537,8 +90393,7 @@ SRSASN_CODE meas_results_s::unpack(bit_ref& bref) HANDLE_CODE(meas_result_sstd_r13->unpack(bref)); } if (meas_result_pcell_v1310.is_present()) { - HANDLE_CODE( - unpack_unalign_integer(meas_result_pcell_v1310->rs_sinr_result_r13, bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(meas_result_pcell_v1310->rs_sinr_result_r13, bref, (uint8_t)0u, (uint8_t)127u)); } if (ul_pdcp_delay_result_list_r13.is_present()) { HANDLE_CODE(unpack_dyn_seq_of(*ul_pdcp_delay_result_list_r13, bref, 1, 6)); @@ -90548,15 +90403,15 @@ SRSASN_CODE meas_results_s::unpack(bit_ref& bref) } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(meas_result_pcell_v1360_present, 1)); if (meas_result_pcell_v1360_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result_pcell_v1360, bref, (int8_t)-17, (int8_t)-1)); + HANDLE_CODE(unpack_integer(meas_result_pcell_v1360, bref, (int8_t)-17, (int8_t)-1)); } } if (group_flags[5]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool meas_result_list_cbr_r14_present; HANDLE_CODE(bref.unpack(meas_result_list_cbr_r14_present, 1)); @@ -90572,7 +90427,7 @@ SRSASN_CODE meas_results_s::unpack(bit_ref& bref) } } if (group_flags[6]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool meas_result_serv_freq_list_nr_r15_present; HANDLE_CODE(bref.unpack(meas_result_serv_freq_list_nr_r15_present, 1)); @@ -90588,7 +90443,7 @@ SRSASN_CODE meas_results_s::unpack(bit_ref& bref) } } if (group_flags[7]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool log_meas_result_list_bt_r15_present; HANDLE_CODE(bref.unpack(log_meas_result_list_bt_r15_present, 1)); @@ -90610,7 +90465,7 @@ SRSASN_CODE meas_results_s::unpack(bit_ref& bref) HANDLE_CODE(meas_result_sensing_r15->unpack(bref)); } if (height_ue_r15_present) { - HANDLE_CODE(unpack_unalign_integer(height_ue_r15, bref, (int16_t)-400, (int16_t)8880)); + HANDLE_CODE(unpack_integer(height_ue_r15, bref, (int16_t)-400, (int16_t)8880)); } } } @@ -90897,7 +90752,7 @@ void meas_results_s::meas_result_neigh_cells_c_::to_json(json_writer& j) const } SRSASN_CODE meas_results_s::meas_result_neigh_cells_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::meas_result_list_eutra: HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 1, 8)); @@ -90912,7 +90767,7 @@ SRSASN_CODE meas_results_s::meas_result_neigh_cells_c_::pack(bit_ref& bref) cons HANDLE_CODE(c.get().pack(bref)); break; case types::meas_result_neigh_cell_list_nr_r15: { - varlength_field_pack_guard scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 1, 8)); } break; default: @@ -90924,7 +90779,7 @@ SRSASN_CODE meas_results_s::meas_result_neigh_cells_c_::pack(bit_ref& bref) cons SRSASN_CODE meas_results_s::meas_result_neigh_cells_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::meas_result_list_eutra: @@ -90940,7 +90795,7 @@ SRSASN_CODE meas_results_s::meas_result_neigh_cells_c_::unpack(bit_ref& bref) HANDLE_CODE(c.get().unpack(bref)); break; case types::meas_result_neigh_cell_list_nr_r15: { - varlength_field_unpack_guard scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(unpack_dyn_seq_of(c.get(), bref, 1, 8)); } break; default: @@ -91031,9 +90886,9 @@ SRSASN_CODE rlf_report_r9_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(meas_result_neigh_cells_r9_present, 1)); HANDLE_CODE(bref.pack(meas_result_last_serv_cell_r9.rsrq_result_r9_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, meas_result_last_serv_cell_r9.rsrp_result_r9, (uint8_t)0, (uint8_t)97)); + HANDLE_CODE(pack_integer(bref, meas_result_last_serv_cell_r9.rsrp_result_r9, (uint8_t)0u, (uint8_t)97u)); if (meas_result_last_serv_cell_r9.rsrq_result_r9_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_last_serv_cell_r9.rsrq_result_r9, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(pack_integer(bref, meas_result_last_serv_cell_r9.rsrq_result_r9, (uint8_t)0u, (uint8_t)34u)); } if (meas_result_neigh_cells_r9_present) { HANDLE_CODE(bref.pack(meas_result_neigh_cells_r9.meas_result_list_eutra_r9_present, 1)); @@ -91077,7 +90932,7 @@ SRSASN_CODE rlf_report_r9_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(location_info_r10.is_present(), 1)); HANDLE_CODE(bref.pack(failed_pcell_id_r10.is_present(), 1)); @@ -91095,50 +90950,49 @@ SRSASN_CODE rlf_report_r9_s::pack(bit_ref& bref) const HANDLE_CODE(reest_cell_id_r10->pack(bref)); } if (time_conn_fail_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, time_conn_fail_r10, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(pack_integer(bref, time_conn_fail_r10, (uint16_t)0u, (uint16_t)1023u)); } if (conn_fail_type_r10_present) { - HANDLE_CODE(pack_enum(bref, conn_fail_type_r10)); + HANDLE_CODE(conn_fail_type_r10.pack(bref)); } if (prev_pcell_id_r10.is_present()) { HANDLE_CODE(prev_pcell_id_r10->pack(bref)); } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(failed_pcell_id_v1090.is_present(), 1)); if (failed_pcell_id_v1090.is_present()) { - HANDLE_CODE( - pack_unalign_integer(bref, failed_pcell_id_v1090->carrier_freq_v1090, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, failed_pcell_id_v1090->carrier_freq_v1090, (uint32_t)65536u, (uint32_t)262143u)); } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(basic_fields_r11.is_present(), 1)); HANDLE_CODE(bref.pack(prev_utra_cell_id_r11.is_present(), 1)); HANDLE_CODE(bref.pack(sel_utra_cell_id_r11.is_present(), 1)); if (basic_fields_r11.is_present()) { HANDLE_CODE(basic_fields_r11->c_rnti_r11.pack(bref)); - HANDLE_CODE(pack_enum(bref, basic_fields_r11->rlf_cause_r11)); - HANDLE_CODE(pack_unalign_integer(bref, basic_fields_r11->time_since_fail_r11, (uint32_t)0, (uint32_t)172800)); + HANDLE_CODE(basic_fields_r11->rlf_cause_r11.pack(bref)); + HANDLE_CODE(pack_integer(bref, basic_fields_r11->time_since_fail_r11, (uint32_t)0u, (uint32_t)172800u)); } if (prev_utra_cell_id_r11.is_present()) { HANDLE_CODE(bref.pack(prev_utra_cell_id_r11->cell_global_id_r11_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, prev_utra_cell_id_r11->carrier_freq_r11, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(pack_integer(bref, prev_utra_cell_id_r11->carrier_freq_r11, (uint16_t)0u, (uint16_t)16383u)); HANDLE_CODE(prev_utra_cell_id_r11->pci_r11.pack(bref)); if (prev_utra_cell_id_r11->cell_global_id_r11_present) { HANDLE_CODE(prev_utra_cell_id_r11->cell_global_id_r11.pack(bref)); } } if (sel_utra_cell_id_r11.is_present()) { - HANDLE_CODE(pack_unalign_integer(bref, sel_utra_cell_id_r11->carrier_freq_r11, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(pack_integer(bref, sel_utra_cell_id_r11->carrier_freq_r11, (uint16_t)0u, (uint16_t)16383u)); HANDLE_CODE(sel_utra_cell_id_r11->pci_r11.pack(bref)); } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(failed_pcell_id_v1250.is_present(), 1)); HANDLE_CODE(bref.pack(meas_result_last_serv_cell_v1250_present, 1)); @@ -91148,7 +91002,7 @@ SRSASN_CODE rlf_report_r9_s::pack(bit_ref& bref) const HANDLE_CODE(failed_pcell_id_v1250->tac_failed_pcell_r12.pack(bref)); } if (meas_result_last_serv_cell_v1250_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_last_serv_cell_v1250, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(pack_integer(bref, meas_result_last_serv_cell_v1250, (int8_t)-30, (int8_t)46)); } if (last_serv_cell_rsrq_type_r12.is_present()) { HANDLE_CODE(last_serv_cell_rsrq_type_r12->pack(bref)); @@ -91158,20 +91012,20 @@ SRSASN_CODE rlf_report_r9_s::pack(bit_ref& bref) const } } if (group_flags[4]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(drb_established_with_qci_minus1_r13_present, 1)); } if (group_flags[5]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(meas_result_last_serv_cell_v1360_present, 1)); if (meas_result_last_serv_cell_v1360_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_last_serv_cell_v1360, (int8_t)-17, (int8_t)-1)); + HANDLE_CODE(pack_integer(bref, meas_result_last_serv_cell_v1360, (int8_t)-17, (int8_t)-1)); } } if (group_flags[6]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(log_meas_result_list_bt_r15.is_present(), 1)); HANDLE_CODE(bref.pack(log_meas_result_list_wlan_r15.is_present(), 1)); @@ -91191,9 +91045,9 @@ SRSASN_CODE rlf_report_r9_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(meas_result_neigh_cells_r9_present, 1)); HANDLE_CODE(bref.unpack(meas_result_last_serv_cell_r9.rsrq_result_r9_present, 1)); - HANDLE_CODE(unpack_unalign_integer(meas_result_last_serv_cell_r9.rsrp_result_r9, bref, (uint8_t)0, (uint8_t)97)); + HANDLE_CODE(unpack_integer(meas_result_last_serv_cell_r9.rsrp_result_r9, bref, (uint8_t)0u, (uint8_t)97u)); if (meas_result_last_serv_cell_r9.rsrq_result_r9_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result_last_serv_cell_r9.rsrq_result_r9, bref, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(unpack_integer(meas_result_last_serv_cell_r9.rsrq_result_r9, bref, (uint8_t)0u, (uint8_t)34u)); } if (meas_result_neigh_cells_r9_present) { HANDLE_CODE(bref.unpack(meas_result_neigh_cells_r9.meas_result_list_eutra_r9_present, 1)); @@ -91219,7 +91073,7 @@ SRSASN_CODE rlf_report_r9_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool location_info_r10_present; HANDLE_CODE(bref.unpack(location_info_r10_present, 1)); @@ -91245,28 +91099,28 @@ SRSASN_CODE rlf_report_r9_s::unpack(bit_ref& bref) HANDLE_CODE(reest_cell_id_r10->unpack(bref)); } if (time_conn_fail_r10_present) { - HANDLE_CODE(unpack_unalign_integer(time_conn_fail_r10, bref, (uint16_t)0, (uint16_t)1023)); + HANDLE_CODE(unpack_integer(time_conn_fail_r10, bref, (uint16_t)0u, (uint16_t)1023u)); } if (conn_fail_type_r10_present) { - HANDLE_CODE(unpack_enum(conn_fail_type_r10, bref)); + HANDLE_CODE(conn_fail_type_r10.unpack(bref)); } if (prev_pcell_id_r10.is_present()) { HANDLE_CODE(prev_pcell_id_r10->unpack(bref)); } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool failed_pcell_id_v1090_present; HANDLE_CODE(bref.unpack(failed_pcell_id_v1090_present, 1)); failed_pcell_id_v1090.set_present(failed_pcell_id_v1090_present); if (failed_pcell_id_v1090.is_present()) { HANDLE_CODE( - unpack_unalign_integer(failed_pcell_id_v1090->carrier_freq_v1090, bref, (uint32_t)65536, (uint32_t)262143)); + unpack_integer(failed_pcell_id_v1090->carrier_freq_v1090, bref, (uint32_t)65536u, (uint32_t)262143u)); } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool basic_fields_r11_present; HANDLE_CODE(bref.unpack(basic_fields_r11_present, 1)); @@ -91279,25 +91133,24 @@ SRSASN_CODE rlf_report_r9_s::unpack(bit_ref& bref) sel_utra_cell_id_r11.set_present(sel_utra_cell_id_r11_present); if (basic_fields_r11.is_present()) { HANDLE_CODE(basic_fields_r11->c_rnti_r11.unpack(bref)); - HANDLE_CODE(unpack_enum(basic_fields_r11->rlf_cause_r11, bref)); - HANDLE_CODE(unpack_unalign_integer(basic_fields_r11->time_since_fail_r11, bref, (uint32_t)0, (uint32_t)172800)); + HANDLE_CODE(basic_fields_r11->rlf_cause_r11.unpack(bref)); + HANDLE_CODE(unpack_integer(basic_fields_r11->time_since_fail_r11, bref, (uint32_t)0u, (uint32_t)172800u)); } if (prev_utra_cell_id_r11.is_present()) { HANDLE_CODE(bref.unpack(prev_utra_cell_id_r11->cell_global_id_r11_present, 1)); - HANDLE_CODE( - unpack_unalign_integer(prev_utra_cell_id_r11->carrier_freq_r11, bref, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(unpack_integer(prev_utra_cell_id_r11->carrier_freq_r11, bref, (uint16_t)0u, (uint16_t)16383u)); HANDLE_CODE(prev_utra_cell_id_r11->pci_r11.unpack(bref)); if (prev_utra_cell_id_r11->cell_global_id_r11_present) { HANDLE_CODE(prev_utra_cell_id_r11->cell_global_id_r11.unpack(bref)); } } if (sel_utra_cell_id_r11.is_present()) { - HANDLE_CODE(unpack_unalign_integer(sel_utra_cell_id_r11->carrier_freq_r11, bref, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(unpack_integer(sel_utra_cell_id_r11->carrier_freq_r11, bref, (uint16_t)0u, (uint16_t)16383u)); HANDLE_CODE(sel_utra_cell_id_r11->pci_r11.unpack(bref)); } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool failed_pcell_id_v1250_present; HANDLE_CODE(bref.unpack(failed_pcell_id_v1250_present, 1)); @@ -91313,7 +91166,7 @@ SRSASN_CODE rlf_report_r9_s::unpack(bit_ref& bref) HANDLE_CODE(failed_pcell_id_v1250->tac_failed_pcell_r12.unpack(bref)); } if (meas_result_last_serv_cell_v1250_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result_last_serv_cell_v1250, bref, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(unpack_integer(meas_result_last_serv_cell_v1250, bref, (int8_t)-30, (int8_t)46)); } if (last_serv_cell_rsrq_type_r12.is_present()) { HANDLE_CODE(last_serv_cell_rsrq_type_r12->unpack(bref)); @@ -91323,20 +91176,20 @@ SRSASN_CODE rlf_report_r9_s::unpack(bit_ref& bref) } } if (group_flags[4]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(drb_established_with_qci_minus1_r13_present, 1)); } if (group_flags[5]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(meas_result_last_serv_cell_v1360_present, 1)); if (meas_result_last_serv_cell_v1360_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result_last_serv_cell_v1360, bref, (int8_t)-17, (int8_t)-1)); + HANDLE_CODE(unpack_integer(meas_result_last_serv_cell_v1360, bref, (int8_t)-17, (int8_t)-1)); } } if (group_flags[6]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool log_meas_result_list_bt_r15_present; HANDLE_CODE(bref.unpack(log_meas_result_list_bt_r15_present, 1)); @@ -91588,14 +91441,14 @@ void rlf_report_r9_s::failed_pcell_id_r10_c_::to_json(json_writer& j) const } SRSASN_CODE rlf_report_r9_s::failed_pcell_id_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::cell_global_id_r10: HANDLE_CODE(c.get().pack(bref)); break; case types::pci_arfcn_r10: - HANDLE_CODE(pack_unalign_integer(bref, c.get().pci_r10, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_unalign_integer(bref, c.get().carrier_freq_r10, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, c.get().pci_r10, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(pack_integer(bref, c.get().carrier_freq_r10, (uint32_t)0u, (uint32_t)65535u)); break; default: log_invalid_choice_id(type_, "rlf_report_r9_s::failed_pcell_id_r10_c_"); @@ -91606,16 +91459,15 @@ SRSASN_CODE rlf_report_r9_s::failed_pcell_id_r10_c_::pack(bit_ref& bref) const SRSASN_CODE rlf_report_r9_s::failed_pcell_id_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::cell_global_id_r10: HANDLE_CODE(c.get().unpack(bref)); break; case types::pci_arfcn_r10: - HANDLE_CODE(unpack_unalign_integer(c.get().pci_r10, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE( - unpack_unalign_integer(c.get().carrier_freq_r10, bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(c.get().pci_r10, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(unpack_integer(c.get().carrier_freq_r10, bref, (uint32_t)0u, (uint32_t)65535u)); break; default: log_invalid_choice_id(type_, "rlf_report_r9_s::failed_pcell_id_r10_c_"); @@ -91686,13 +91538,13 @@ void rlf_report_r9_s::prev_utra_cell_id_r11_s_::pci_r11_c_::to_json(json_writer& } SRSASN_CODE rlf_report_r9_s::prev_utra_cell_id_r11_s_::pci_r11_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::fdd_r11: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)511u)); break; case types::tdd_r11: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)127u)); break; default: log_invalid_choice_id(type_, "rlf_report_r9_s::prev_utra_cell_id_r11_s_::pci_r11_c_"); @@ -91703,14 +91555,14 @@ SRSASN_CODE rlf_report_r9_s::prev_utra_cell_id_r11_s_::pci_r11_c_::pack(bit_ref& SRSASN_CODE rlf_report_r9_s::prev_utra_cell_id_r11_s_::pci_r11_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::fdd_r11: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)511u)); break; case types::tdd_r11: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)127u)); break; default: log_invalid_choice_id(type_, "rlf_report_r9_s::prev_utra_cell_id_r11_s_::pci_r11_c_"); @@ -91781,13 +91633,13 @@ void rlf_report_r9_s::sel_utra_cell_id_r11_s_::pci_r11_c_::to_json(json_writer& } SRSASN_CODE rlf_report_r9_s::sel_utra_cell_id_r11_s_::pci_r11_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::fdd_r11: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)511u)); break; case types::tdd_r11: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)127u)); break; default: log_invalid_choice_id(type_, "rlf_report_r9_s::sel_utra_cell_id_r11_s_::pci_r11_c_"); @@ -91798,14 +91650,14 @@ SRSASN_CODE rlf_report_r9_s::sel_utra_cell_id_r11_s_::pci_r11_c_::pack(bit_ref& SRSASN_CODE rlf_report_r9_s::sel_utra_cell_id_r11_s_::pci_r11_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::fdd_r11: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)511u)); break; case types::tdd_r11: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)127u)); break; default: log_invalid_choice_id(type_, "rlf_report_r9_s::sel_utra_cell_id_r11_s_::pci_r11_c_"); @@ -92150,13 +92002,13 @@ SRSASN_CODE sidelink_ue_info_v1310_ies_s::pack(bit_ref& bref) const if (comm_tx_res_info_req_relay_r13.comm_tx_res_req_relay_uc_r13_present) { HANDLE_CODE(comm_tx_res_info_req_relay_r13.comm_tx_res_req_relay_uc_r13.pack(bref)); } - HANDLE_CODE(pack_enum(bref, comm_tx_res_info_req_relay_r13.ue_type_r13)); + HANDLE_CODE(comm_tx_res_info_req_relay_r13.ue_type_r13.pack(bref)); } if (disc_tx_res_req_v1310_present) { HANDLE_CODE(bref.pack(disc_tx_res_req_v1310.carrier_freq_disc_tx_r13_present, 1)); HANDLE_CODE(bref.pack(disc_tx_res_req_v1310.disc_tx_res_req_add_freq_r13_present, 1)); if (disc_tx_res_req_v1310.carrier_freq_disc_tx_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, disc_tx_res_req_v1310.carrier_freq_disc_tx_r13, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, disc_tx_res_req_v1310.carrier_freq_disc_tx_r13, (uint8_t)1u, (uint8_t)8u)); } if (disc_tx_res_req_v1310.disc_tx_res_req_add_freq_r13_present) { HANDLE_CODE(pack_dyn_seq_of(bref, disc_tx_res_req_v1310.disc_tx_res_req_add_freq_r13, 1, 8)); @@ -92203,13 +92055,13 @@ SRSASN_CODE sidelink_ue_info_v1310_ies_s::unpack(bit_ref& bref) if (comm_tx_res_info_req_relay_r13.comm_tx_res_req_relay_uc_r13_present) { HANDLE_CODE(comm_tx_res_info_req_relay_r13.comm_tx_res_req_relay_uc_r13.unpack(bref)); } - HANDLE_CODE(unpack_enum(comm_tx_res_info_req_relay_r13.ue_type_r13, bref)); + HANDLE_CODE(comm_tx_res_info_req_relay_r13.ue_type_r13.unpack(bref)); } if (disc_tx_res_req_v1310_present) { HANDLE_CODE(bref.unpack(disc_tx_res_req_v1310.carrier_freq_disc_tx_r13_present, 1)); HANDLE_CODE(bref.unpack(disc_tx_res_req_v1310.disc_tx_res_req_add_freq_r13_present, 1)); if (disc_tx_res_req_v1310.carrier_freq_disc_tx_r13_present) { - HANDLE_CODE(unpack_unalign_integer(disc_tx_res_req_v1310.carrier_freq_disc_tx_r13, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(disc_tx_res_req_v1310.carrier_freq_disc_tx_r13, bref, (uint8_t)1u, (uint8_t)8u)); } if (disc_tx_res_req_v1310.disc_tx_res_req_add_freq_r13_present) { HANDLE_CODE(unpack_dyn_seq_of(disc_tx_res_req_v1310.disc_tx_res_req_add_freq_r13, bref, 1, 8)); @@ -92397,16 +92249,15 @@ void tdm_assist_info_r11_c::to_json(json_writer& j) const } SRSASN_CODE tdm_assist_info_r11_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::drx_assist_info_r11: HANDLE_CODE(bref.pack(c.get().drx_offset_r11_present, 1)); - HANDLE_CODE(pack_enum(bref, c.get().drx_cycle_len_r11)); + HANDLE_CODE(c.get().drx_cycle_len_r11.pack(bref)); if (c.get().drx_offset_r11_present) { - HANDLE_CODE( - pack_unalign_integer(bref, c.get().drx_offset_r11, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(pack_integer(bref, c.get().drx_offset_r11, (uint16_t)0u, (uint16_t)255u)); } - HANDLE_CODE(pack_enum(bref, c.get().drx_active_time_r11)); + HANDLE_CODE(c.get().drx_active_time_r11.pack(bref)); break; case types::idc_sf_pattern_list_r11: HANDLE_CODE(pack_dyn_seq_of(bref, c.get(), 1, 8)); @@ -92420,17 +92271,16 @@ SRSASN_CODE tdm_assist_info_r11_c::pack(bit_ref& bref) const SRSASN_CODE tdm_assist_info_r11_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::drx_assist_info_r11: HANDLE_CODE(bref.unpack(c.get().drx_offset_r11_present, 1)); - HANDLE_CODE(unpack_enum(c.get().drx_cycle_len_r11, bref)); + HANDLE_CODE(c.get().drx_cycle_len_r11.unpack(bref)); if (c.get().drx_offset_r11_present) { - HANDLE_CODE( - unpack_unalign_integer(c.get().drx_offset_r11, bref, (uint8_t)0, (uint8_t)255)); + HANDLE_CODE(unpack_integer(c.get().drx_offset_r11, bref, (uint16_t)0u, (uint16_t)255u)); } - HANDLE_CODE(unpack_enum(c.get().drx_active_time_r11, bref)); + HANDLE_CODE(c.get().drx_active_time_r11.unpack(bref)); break; case types::idc_sf_pattern_list_r11: HANDLE_CODE(unpack_dyn_seq_of(c.get(), bref, 1, 8)); @@ -92466,9 +92316,9 @@ SRSASN_CODE ueassist_info_v1430_ies_s::pack(bit_ref& bref) const } if (rlm_report_r14_present) { HANDLE_CODE(bref.pack(rlm_report_r14.excess_rep_mpdcch_r14_present, 1)); - HANDLE_CODE(pack_enum(bref, rlm_report_r14.rlm_event_r14)); + HANDLE_CODE(rlm_report_r14.rlm_event_r14.pack(bref)); if (rlm_report_r14.excess_rep_mpdcch_r14_present) { - HANDLE_CODE(pack_enum(bref, rlm_report_r14.excess_rep_mpdcch_r14)); + HANDLE_CODE(rlm_report_r14.excess_rep_mpdcch_r14.pack(bref)); } } if (delay_budget_report_r14_present) { @@ -92503,9 +92353,9 @@ SRSASN_CODE ueassist_info_v1430_ies_s::unpack(bit_ref& bref) } if (rlm_report_r14_present) { HANDLE_CODE(bref.unpack(rlm_report_r14.excess_rep_mpdcch_r14_present, 1)); - HANDLE_CODE(unpack_enum(rlm_report_r14.rlm_event_r14, bref)); + HANDLE_CODE(rlm_report_r14.rlm_event_r14.unpack(bref)); if (rlm_report_r14.excess_rep_mpdcch_r14_present) { - HANDLE_CODE(unpack_enum(rlm_report_r14.excess_rep_mpdcch_r14, bref)); + HANDLE_CODE(rlm_report_r14.excess_rep_mpdcch_r14.unpack(bref)); } } if (delay_budget_report_r14_present) { @@ -92726,7 +92576,7 @@ SRSASN_CODE wlan_conn_status_report_v1430_ies_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); - HANDLE_CODE(pack_enum(bref, wlan_status_v1430)); + HANDLE_CODE(wlan_status_v1430.pack(bref)); return SRSASN_SUCCESS; } @@ -92734,7 +92584,7 @@ SRSASN_CODE wlan_conn_status_report_v1430_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); - HANDLE_CODE(unpack_enum(wlan_status_v1430, bref)); + HANDLE_CODE(wlan_status_v1430.unpack(bref)); return SRSASN_SUCCESS; } @@ -92824,14 +92674,14 @@ SRSASN_CODE failed_lc_ch_info_r15_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(failed_lc_ch_id_r15.lc_ch_id_r15_present, 1)); HANDLE_CODE(bref.pack(failed_lc_ch_id_r15.lc_ch_id_ext_r15_present, 1)); - HANDLE_CODE(pack_enum(bref, failed_lc_ch_id_r15.cell_group_ind_r15)); + HANDLE_CODE(failed_lc_ch_id_r15.cell_group_ind_r15.pack(bref)); if (failed_lc_ch_id_r15.lc_ch_id_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, failed_lc_ch_id_r15.lc_ch_id_r15, (uint8_t)1, (uint8_t)10)); + HANDLE_CODE(pack_integer(bref, failed_lc_ch_id_r15.lc_ch_id_r15, (uint8_t)1u, (uint8_t)10u)); } if (failed_lc_ch_id_r15.lc_ch_id_ext_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, failed_lc_ch_id_r15.lc_ch_id_ext_r15, (uint8_t)32, (uint8_t)38)); + HANDLE_CODE(pack_integer(bref, failed_lc_ch_id_r15.lc_ch_id_ext_r15, (uint8_t)32u, (uint8_t)38u)); } - HANDLE_CODE(pack_enum(bref, fail_type)); + HANDLE_CODE(fail_type.pack(bref)); return SRSASN_SUCCESS; } @@ -92839,14 +92689,14 @@ SRSASN_CODE failed_lc_ch_info_r15_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(failed_lc_ch_id_r15.lc_ch_id_r15_present, 1)); HANDLE_CODE(bref.unpack(failed_lc_ch_id_r15.lc_ch_id_ext_r15_present, 1)); - HANDLE_CODE(unpack_enum(failed_lc_ch_id_r15.cell_group_ind_r15, bref)); + HANDLE_CODE(failed_lc_ch_id_r15.cell_group_ind_r15.unpack(bref)); if (failed_lc_ch_id_r15.lc_ch_id_r15_present) { - HANDLE_CODE(unpack_unalign_integer(failed_lc_ch_id_r15.lc_ch_id_r15, bref, (uint8_t)1, (uint8_t)10)); + HANDLE_CODE(unpack_integer(failed_lc_ch_id_r15.lc_ch_id_r15, bref, (uint8_t)1u, (uint8_t)10u)); } if (failed_lc_ch_id_r15.lc_ch_id_ext_r15_present) { - HANDLE_CODE(unpack_unalign_integer(failed_lc_ch_id_r15.lc_ch_id_ext_r15, bref, (uint8_t)32, (uint8_t)38)); + HANDLE_CODE(unpack_integer(failed_lc_ch_id_r15.lc_ch_id_ext_r15, bref, (uint8_t)32u, (uint8_t)38u)); } - HANDLE_CODE(unpack_enum(fail_type, bref)); + HANDLE_CODE(fail_type.unpack(bref)); return SRSASN_SUCCESS; } @@ -93004,7 +92854,7 @@ void inter_freq_rstd_meas_ind_r10_ies_s::rstd_inter_freq_ind_r10_c_::to_json(jso } SRSASN_CODE inter_freq_rstd_meas_ind_r10_ies_s::rstd_inter_freq_ind_r10_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::start: HANDLE_CODE(pack_dyn_seq_of(bref, c.rstd_inter_freq_info_list_r10, 1, 3)); @@ -93020,7 +92870,7 @@ SRSASN_CODE inter_freq_rstd_meas_ind_r10_ies_s::rstd_inter_freq_ind_r10_c_::pack SRSASN_CODE inter_freq_rstd_meas_ind_r10_ies_s::rstd_inter_freq_ind_r10_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::start: @@ -93044,7 +92894,7 @@ SRSASN_CODE mbms_count_resp_r10_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (mbsfn_area_idx_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, mbsfn_area_idx_r10, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, mbsfn_area_idx_r10, (uint8_t)0u, (uint8_t)7u)); } if (count_resp_list_r10_present) { HANDLE_CODE(pack_dyn_seq_of(bref, count_resp_list_r10, 1, 16)); @@ -93063,7 +92913,7 @@ SRSASN_CODE mbms_count_resp_r10_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (mbsfn_area_idx_r10_present) { - HANDLE_CODE(unpack_unalign_integer(mbsfn_area_idx_r10, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(mbsfn_area_idx_r10, bref, (uint8_t)0u, (uint8_t)7u)); } if (count_resp_list_r10_present) { HANDLE_CODE(unpack_dyn_seq_of(count_resp_list_r10, bref, 1, 16)); @@ -93107,7 +92957,7 @@ SRSASN_CODE mbms_interest_ind_r11_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (mbms_freq_list_r11_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, mbms_freq_list_r11, 1, 5, UnalignedIntegerPacker(0, 262143))); + HANDLE_CODE(pack_dyn_seq_of(bref, mbms_freq_list_r11, 1, 5, integer_packer(0, 262143))); } if (late_non_crit_ext_present) { HANDLE_CODE(late_non_crit_ext.pack(bref)); @@ -93126,7 +92976,7 @@ SRSASN_CODE mbms_interest_ind_r11_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (mbms_freq_list_r11_present) { - HANDLE_CODE(unpack_dyn_seq_of(mbms_freq_list_r11, bref, 1, 5, UnalignedIntegerPacker(0, 262143))); + HANDLE_CODE(unpack_dyn_seq_of(mbms_freq_list_r11, bref, 1, 5, integer_packer(0, 262143))); } if (late_non_crit_ext_present) { HANDLE_CODE(late_non_crit_ext.unpack(bref)); @@ -93171,7 +93021,7 @@ SRSASN_CODE meas_report_app_layer_r15_ies_s::pack(bit_ref& bref) const HANDLE_CODE(meas_report_app_layer_container_r15.pack(bref)); } if (service_type_present) { - HANDLE_CODE(pack_enum(bref, service_type)); + HANDLE_CODE(service_type.pack(bref)); } return SRSASN_SUCCESS; @@ -93186,7 +93036,7 @@ SRSASN_CODE meas_report_app_layer_r15_ies_s::unpack(bit_ref& bref) HANDLE_CODE(meas_report_app_layer_container_r15.unpack(bref)); } if (service_type_present) { - HANDLE_CODE(unpack_enum(service_type, bref)); + HANDLE_CODE(service_type.unpack(bref)); } return SRSASN_SUCCESS; @@ -93248,7 +93098,7 @@ SRSASN_CODE proximity_ind_r9_ies_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); - HANDLE_CODE(pack_enum(bref, type_r9)); + HANDLE_CODE(type_r9.pack(bref)); HANDLE_CODE(carrier_freq_r9.pack(bref)); if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -93260,7 +93110,7 @@ SRSASN_CODE proximity_ind_r9_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); - HANDLE_CODE(unpack_enum(type_r9, bref)); + HANDLE_CODE(type_r9.unpack(bref)); HANDLE_CODE(carrier_freq_r9.unpack(bref)); if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -93292,7 +93142,7 @@ proximity_ind_r9_ies_s::carrier_freq_r9_c_::carrier_freq_r9_c_(const proximity_i type_ = other.type(); switch (type_) { case types::eutra_r9: - c.init(other.c.get()); + c.init(other.c.get()); break; case types::utra_r9: c.init(other.c.get()); @@ -93315,7 +93165,7 @@ proximity_ind_r9_ies_s::carrier_freq_r9_c_& proximity_ind_r9_ies_s::carrier_freq set(other.type()); switch (type_) { case types::eutra_r9: - c.set(other.c.get()); + c.set(other.c.get()); break; case types::utra_r9: c.set(other.c.get()); @@ -93336,7 +93186,7 @@ void proximity_ind_r9_ies_s::carrier_freq_r9_c_::to_json(json_writer& j) const j.start_obj(); switch (type_) { case types::eutra_r9: - j.write_int("eutra-r9", c.get()); + j.write_int("eutra-r9", c.get()); break; case types::utra_r9: j.write_int("utra-r9", c.get()); @@ -93351,17 +93201,17 @@ void proximity_ind_r9_ies_s::carrier_freq_r9_c_::to_json(json_writer& j) const } SRSASN_CODE proximity_ind_r9_ies_s::carrier_freq_r9_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::eutra_r9: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint32_t)0u, (uint32_t)65535u)); break; case types::utra_r9: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)16383u)); break; case types::eutra2_v9e0: { - varlength_field_pack_guard scope(bref); - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint32_t)65536, (uint32_t)262143)); + varlength_field_pack_guard varlen_scope(bref, false); + HANDLE_CODE(pack_integer(bref, c.get(), (uint32_t)65536u, (uint32_t)262143u)); } break; default: log_invalid_choice_id(type_, "proximity_ind_r9_ies_s::carrier_freq_r9_c_"); @@ -93372,18 +93222,18 @@ SRSASN_CODE proximity_ind_r9_ies_s::carrier_freq_r9_c_::pack(bit_ref& bref) cons SRSASN_CODE proximity_ind_r9_ies_s::carrier_freq_r9_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::eutra_r9: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint32_t)0u, (uint32_t)65535u)); break; case types::utra_r9: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)16383)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)16383u)); break; case types::eutra2_v9e0: { - varlength_field_unpack_guard scope(bref); - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint32_t)65536, (uint32_t)262143)); + varlength_field_unpack_guard varlen_scope(bref, false); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint32_t)65536u, (uint32_t)262143u)); } break; default: log_invalid_choice_id(type_, "proximity_ind_r9_ies_s::carrier_freq_r9_c_"); @@ -93506,13 +93356,13 @@ SRSASN_CODE rrc_conn_resume_complete_r13_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (sel_plmn_id_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, sel_plmn_id_r13, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(pack_integer(bref, sel_plmn_id_r13, (uint8_t)1u, (uint8_t)6u)); } if (ded_info_nas_r13_present) { HANDLE_CODE(ded_info_nas_r13.pack(bref)); } if (mob_state_r13_present) { - HANDLE_CODE(pack_enum(bref, mob_state_r13)); + HANDLE_CODE(mob_state_r13.pack(bref)); } if (late_non_crit_ext_present) { HANDLE_CODE(late_non_crit_ext.pack(bref)); @@ -93537,13 +93387,13 @@ SRSASN_CODE rrc_conn_resume_complete_r13_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (sel_plmn_id_r13_present) { - HANDLE_CODE(unpack_unalign_integer(sel_plmn_id_r13, bref, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(unpack_integer(sel_plmn_id_r13, bref, (uint8_t)1u, (uint8_t)6u)); } if (ded_info_nas_r13_present) { HANDLE_CODE(ded_info_nas_r13.unpack(bref)); } if (mob_state_r13_present) { - HANDLE_CODE(unpack_enum(mob_state_r13, bref)); + HANDLE_CODE(mob_state_r13.unpack(bref)); } if (late_non_crit_ext_present) { HANDLE_CODE(late_non_crit_ext.unpack(bref)); @@ -93597,7 +93447,7 @@ SRSASN_CODE rrc_conn_setup_complete_r8_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(registered_mme_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, sel_plmn_id, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(pack_integer(bref, sel_plmn_id, (uint8_t)1u, (uint8_t)6u)); if (registered_mme_present) { HANDLE_CODE(registered_mme.pack(bref)); } @@ -93613,7 +93463,7 @@ SRSASN_CODE rrc_conn_setup_complete_r8_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(registered_mme_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); - HANDLE_CODE(unpack_unalign_integer(sel_plmn_id, bref, (uint8_t)1, (uint8_t)6)); + HANDLE_CODE(unpack_integer(sel_plmn_id, bref, (uint8_t)1u, (uint8_t)6u)); if (registered_mme_present) { HANDLE_CODE(registered_mme.unpack(bref)); } @@ -93794,13 +93644,13 @@ SRSASN_CODE sidelink_ue_info_r12_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (comm_rx_interested_freq_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, comm_rx_interested_freq_r12, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, comm_rx_interested_freq_r12, (uint32_t)0u, (uint32_t)262143u)); } if (comm_tx_res_req_r12_present) { HANDLE_CODE(comm_tx_res_req_r12.pack(bref)); } if (disc_tx_res_req_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, disc_tx_res_req_r12, (uint8_t)1, (uint8_t)63)); + HANDLE_CODE(pack_integer(bref, disc_tx_res_req_r12, (uint8_t)1u, (uint8_t)63u)); } if (late_non_crit_ext_present) { HANDLE_CODE(late_non_crit_ext.pack(bref)); @@ -93821,13 +93671,13 @@ SRSASN_CODE sidelink_ue_info_r12_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (comm_rx_interested_freq_r12_present) { - HANDLE_CODE(unpack_unalign_integer(comm_rx_interested_freq_r12, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(comm_rx_interested_freq_r12, bref, (uint32_t)0u, (uint32_t)262143u)); } if (comm_tx_res_req_r12_present) { HANDLE_CODE(comm_tx_res_req_r12.unpack(bref)); } if (disc_tx_res_req_r12_present) { - HANDLE_CODE(unpack_unalign_integer(disc_tx_res_req_r12, bref, (uint8_t)1, (uint8_t)63)); + HANDLE_CODE(unpack_integer(disc_tx_res_req_r12, bref, (uint8_t)1u, (uint8_t)63u)); } if (late_non_crit_ext_present) { HANDLE_CODE(late_non_crit_ext.unpack(bref)); @@ -93872,7 +93722,7 @@ SRSASN_CODE ueassist_info_r11_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (pwr_pref_ind_r11_present) { - HANDLE_CODE(pack_enum(bref, pwr_pref_ind_r11)); + HANDLE_CODE(pwr_pref_ind_r11.pack(bref)); } if (late_non_crit_ext_present) { HANDLE_CODE(late_non_crit_ext.pack(bref)); @@ -93890,7 +93740,7 @@ SRSASN_CODE ueassist_info_r11_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (pwr_pref_ind_r11_present) { - HANDLE_CODE(unpack_enum(pwr_pref_ind_r11, bref)); + HANDLE_CODE(pwr_pref_ind_r11.unpack(bref)); } if (late_non_crit_ext_present) { HANDLE_CODE(late_non_crit_ext.unpack(bref)); @@ -93963,7 +93813,7 @@ SRSASN_CODE ue_info_resp_r9_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (rach_report_r9_present) { - HANDLE_CODE(pack_unalign_integer(bref, rach_report_r9.nof_preambs_sent_r9, (uint8_t)1, (uint8_t)200)); + HANDLE_CODE(pack_integer(bref, rach_report_r9.nof_preambs_sent_r9, (uint8_t)1u, (uint8_t)200u)); HANDLE_CODE(bref.pack(rach_report_r9.contention_detected_r9, 1)); } if (rlf_report_r9_present) { @@ -93982,7 +93832,7 @@ SRSASN_CODE ue_info_resp_r9_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (rach_report_r9_present) { - HANDLE_CODE(unpack_unalign_integer(rach_report_r9.nof_preambs_sent_r9, bref, (uint8_t)1, (uint8_t)200)); + HANDLE_CODE(unpack_integer(rach_report_r9.nof_preambs_sent_r9, bref, (uint8_t)1u, (uint8_t)200u)); HANDLE_CODE(bref.unpack(rach_report_r9.contention_detected_r9, 1)); } if (rlf_report_r9_present) { @@ -94021,7 +93871,7 @@ SRSASN_CODE ul_ho_prep_transfer_r8_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(meid_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); - HANDLE_CODE(pack_enum(bref, cdma2000_type)); + HANDLE_CODE(cdma2000_type.pack(bref)); if (meid_present) { HANDLE_CODE(meid.pack(bref)); } @@ -94037,7 +93887,7 @@ SRSASN_CODE ul_ho_prep_transfer_r8_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(meid_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); - HANDLE_CODE(unpack_enum(cdma2000_type, bref)); + HANDLE_CODE(cdma2000_type.unpack(bref)); if (meid_present) { HANDLE_CODE(meid.unpack(bref)); } @@ -94198,7 +94048,7 @@ void ul_info_transfer_r8_ies_s::ded_info_type_c_::to_json(json_writer& j) const } SRSASN_CODE ul_info_transfer_r8_ies_s::ded_info_type_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ded_info_nas: HANDLE_CODE(c.get().pack(bref)); @@ -94218,7 +94068,7 @@ SRSASN_CODE ul_info_transfer_r8_ies_s::ded_info_type_c_::pack(bit_ref& bref) con SRSASN_CODE ul_info_transfer_r8_ies_s::ded_info_type_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ded_info_nas: @@ -94291,7 +94141,7 @@ SRSASN_CODE wlan_conn_status_report_r13_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(late_non_crit_ext_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); - HANDLE_CODE(pack_enum(bref, wlan_status_r13)); + HANDLE_CODE(wlan_status_r13.pack(bref)); if (late_non_crit_ext_present) { HANDLE_CODE(late_non_crit_ext.pack(bref)); } @@ -94306,7 +94156,7 @@ SRSASN_CODE wlan_conn_status_report_r13_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(late_non_crit_ext_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); - HANDLE_CODE(unpack_enum(wlan_status_r13, bref)); + HANDLE_CODE(wlan_status_r13.unpack(bref)); if (late_non_crit_ext_present) { HANDLE_CODE(late_non_crit_ext.unpack(bref)); } @@ -94430,7 +94280,7 @@ void csfb_params_request_cdma2000_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE csfb_params_request_cdma2000_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::csfb_params_request_cdma2000_r8: HANDLE_CODE(c.get().pack(bref)); @@ -94446,7 +94296,7 @@ SRSASN_CODE csfb_params_request_cdma2000_s::crit_exts_c_::pack(bit_ref& bref) co SRSASN_CODE csfb_params_request_cdma2000_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::csfb_params_request_cdma2000_r8: @@ -94464,14 +94314,14 @@ SRSASN_CODE csfb_params_request_cdma2000_s::crit_exts_c_::unpack(bit_ref& bref) // CounterCheckResponse ::= SEQUENCE SRSASN_CODE counter_check_resp_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE counter_check_resp_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -94564,7 +94414,7 @@ void counter_check_resp_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE counter_check_resp_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::counter_check_resp_r8: HANDLE_CODE(c.get().pack(bref)); @@ -94580,7 +94430,7 @@ SRSASN_CODE counter_check_resp_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE counter_check_resp_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::counter_check_resp_r8: @@ -94729,7 +94579,7 @@ void in_dev_coex_ind_r11_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE in_dev_coex_ind_r11_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -94745,7 +94595,7 @@ SRSASN_CODE in_dev_coex_ind_r11_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE in_dev_coex_ind_r11_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -94785,7 +94635,7 @@ void in_dev_coex_ind_r11_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE in_dev_coex_ind_r11_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::in_dev_coex_ind_r11: HANDLE_CODE(c.pack(bref)); @@ -94805,7 +94655,7 @@ SRSASN_CODE in_dev_coex_ind_r11_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) cons SRSASN_CODE in_dev_coex_ind_r11_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::in_dev_coex_ind_r11: @@ -94924,7 +94774,7 @@ void inter_freq_rstd_meas_ind_r10_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE inter_freq_rstd_meas_ind_r10_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -94940,7 +94790,7 @@ SRSASN_CODE inter_freq_rstd_meas_ind_r10_s::crit_exts_c_::pack(bit_ref& bref) co SRSASN_CODE inter_freq_rstd_meas_ind_r10_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -94980,7 +94830,7 @@ void inter_freq_rstd_meas_ind_r10_s::crit_exts_c_::c1_c_::to_json(json_writer& j } SRSASN_CODE inter_freq_rstd_meas_ind_r10_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::inter_freq_rstd_meas_ind_r10: HANDLE_CODE(c.pack(bref)); @@ -95000,7 +94850,7 @@ SRSASN_CODE inter_freq_rstd_meas_ind_r10_s::crit_exts_c_::c1_c_::pack(bit_ref& b SRSASN_CODE inter_freq_rstd_meas_ind_r10_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::inter_freq_rstd_meas_ind_r10: @@ -95119,7 +94969,7 @@ void mbms_count_resp_r10_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE mbms_count_resp_r10_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -95135,7 +94985,7 @@ SRSASN_CODE mbms_count_resp_r10_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE mbms_count_resp_r10_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -95175,7 +95025,7 @@ void mbms_count_resp_r10_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE mbms_count_resp_r10_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::count_resp_r10: HANDLE_CODE(c.pack(bref)); @@ -95195,7 +95045,7 @@ SRSASN_CODE mbms_count_resp_r10_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) cons SRSASN_CODE mbms_count_resp_r10_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::count_resp_r10: @@ -95314,7 +95164,7 @@ void mbms_interest_ind_r11_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE mbms_interest_ind_r11_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -95330,7 +95180,7 @@ SRSASN_CODE mbms_interest_ind_r11_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE mbms_interest_ind_r11_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -95370,7 +95220,7 @@ void mbms_interest_ind_r11_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE mbms_interest_ind_r11_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::interest_ind_r11: HANDLE_CODE(c.pack(bref)); @@ -95390,7 +95240,7 @@ SRSASN_CODE mbms_interest_ind_r11_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) co SRSASN_CODE mbms_interest_ind_r11_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::interest_ind_r11: @@ -95509,7 +95359,7 @@ void meas_report_app_layer_r15_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE meas_report_app_layer_r15_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::meas_report_app_layer_r15: HANDLE_CODE(c.get().pack(bref)); @@ -95525,7 +95375,7 @@ SRSASN_CODE meas_report_app_layer_r15_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE meas_report_app_layer_r15_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::meas_report_app_layer_r15: @@ -95639,7 +95489,7 @@ void meas_report_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE meas_report_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -95655,7 +95505,7 @@ SRSASN_CODE meas_report_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE meas_report_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -95703,7 +95553,7 @@ void meas_report_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE meas_report_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::meas_report_r8: HANDLE_CODE(c.pack(bref)); @@ -95731,7 +95581,7 @@ SRSASN_CODE meas_report_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE meas_report_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::meas_report_r8: @@ -95858,7 +95708,7 @@ void proximity_ind_r9_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE proximity_ind_r9_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -95874,7 +95724,7 @@ SRSASN_CODE proximity_ind_r9_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE proximity_ind_r9_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -95914,7 +95764,7 @@ void proximity_ind_r9_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE proximity_ind_r9_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::proximity_ind_r9: HANDLE_CODE(c.pack(bref)); @@ -95934,7 +95784,7 @@ SRSASN_CODE proximity_ind_r9_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE proximity_ind_r9_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::proximity_ind_r9: @@ -95956,14 +95806,14 @@ SRSASN_CODE proximity_ind_r9_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) // RNReconfigurationComplete-r10 ::= SEQUENCE SRSASN_CODE rn_recfg_complete_r10_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE rn_recfg_complete_r10_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -96056,7 +95906,7 @@ void rn_recfg_complete_r10_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE rn_recfg_complete_r10_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -96072,7 +95922,7 @@ SRSASN_CODE rn_recfg_complete_r10_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE rn_recfg_complete_r10_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -96112,7 +95962,7 @@ void rn_recfg_complete_r10_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE rn_recfg_complete_r10_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rn_recfg_complete_r10: HANDLE_CODE(c.pack(bref)); @@ -96132,7 +95982,7 @@ SRSASN_CODE rn_recfg_complete_r10_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) co SRSASN_CODE rn_recfg_complete_r10_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rn_recfg_complete_r10: @@ -96154,14 +96004,14 @@ SRSASN_CODE rn_recfg_complete_r10_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) // RRCConnectionReconfigurationComplete ::= SEQUENCE SRSASN_CODE rrc_conn_recfg_complete_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE rrc_conn_recfg_complete_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -96254,7 +96104,7 @@ void rrc_conn_recfg_complete_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_recfg_complete_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_conn_recfg_complete_r8: HANDLE_CODE(c.get().pack(bref)); @@ -96270,7 +96120,7 @@ SRSASN_CODE rrc_conn_recfg_complete_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_recfg_complete_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_conn_recfg_complete_r8: @@ -96288,14 +96138,14 @@ SRSASN_CODE rrc_conn_recfg_complete_s::crit_exts_c_::unpack(bit_ref& bref) // RRCConnectionReestablishmentComplete ::= SEQUENCE SRSASN_CODE rrc_conn_reest_complete_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE rrc_conn_reest_complete_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -96388,7 +96238,7 @@ void rrc_conn_reest_complete_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_reest_complete_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_conn_reest_complete_r8: HANDLE_CODE(c.get().pack(bref)); @@ -96404,7 +96254,7 @@ SRSASN_CODE rrc_conn_reest_complete_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_reest_complete_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_conn_reest_complete_r8: @@ -96422,14 +96272,14 @@ SRSASN_CODE rrc_conn_reest_complete_s::crit_exts_c_::unpack(bit_ref& bref) // RRCConnectionResumeComplete-r13 ::= SEQUENCE SRSASN_CODE rrc_conn_resume_complete_r13_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE rrc_conn_resume_complete_r13_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -96522,7 +96372,7 @@ void rrc_conn_resume_complete_r13_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_resume_complete_r13_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_conn_resume_complete_r13: HANDLE_CODE(c.get().pack(bref)); @@ -96538,7 +96388,7 @@ SRSASN_CODE rrc_conn_resume_complete_r13_s::crit_exts_c_::pack(bit_ref& bref) co SRSASN_CODE rrc_conn_resume_complete_r13_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_conn_resume_complete_r13: @@ -96556,14 +96406,14 @@ SRSASN_CODE rrc_conn_resume_complete_r13_s::crit_exts_c_::unpack(bit_ref& bref) // RRCConnectionSetupComplete ::= SEQUENCE SRSASN_CODE rrc_conn_setup_complete_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE rrc_conn_setup_complete_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -96656,7 +96506,7 @@ void rrc_conn_setup_complete_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE rrc_conn_setup_complete_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -96672,7 +96522,7 @@ SRSASN_CODE rrc_conn_setup_complete_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE rrc_conn_setup_complete_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -96712,7 +96562,7 @@ void rrc_conn_setup_complete_s::crit_exts_c_::c1_c_::to_json(json_writer& j) con } SRSASN_CODE rrc_conn_setup_complete_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::rrc_conn_setup_complete_r8: HANDLE_CODE(c.pack(bref)); @@ -96732,7 +96582,7 @@ SRSASN_CODE rrc_conn_setup_complete_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) SRSASN_CODE rrc_conn_setup_complete_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::rrc_conn_setup_complete_r8: @@ -96851,7 +96701,7 @@ void scg_fail_info_r12_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE scg_fail_info_r12_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -96867,7 +96717,7 @@ SRSASN_CODE scg_fail_info_r12_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE scg_fail_info_r12_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -96907,7 +96757,7 @@ void scg_fail_info_r12_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE scg_fail_info_r12_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::scg_fail_info_r12: HANDLE_CODE(c.pack(bref)); @@ -96927,7 +96777,7 @@ SRSASN_CODE scg_fail_info_r12_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE scg_fail_info_r12_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::scg_fail_info_r12: @@ -97046,7 +96896,7 @@ void scg_fail_info_nr_r15_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE scg_fail_info_nr_r15_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -97062,7 +96912,7 @@ SRSASN_CODE scg_fail_info_nr_r15_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE scg_fail_info_nr_r15_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -97102,7 +96952,7 @@ void scg_fail_info_nr_r15_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE scg_fail_info_nr_r15_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::scg_fail_info_nr_r15: HANDLE_CODE(c.pack(bref)); @@ -97122,7 +96972,7 @@ SRSASN_CODE scg_fail_info_nr_r15_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) con SRSASN_CODE scg_fail_info_nr_r15_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::scg_fail_info_nr_r15: @@ -97144,14 +96994,14 @@ SRSASN_CODE scg_fail_info_nr_r15_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) // SecurityModeComplete ::= SEQUENCE SRSASN_CODE security_mode_complete_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE security_mode_complete_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -97244,7 +97094,7 @@ void security_mode_complete_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE security_mode_complete_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::security_mode_complete_r8: HANDLE_CODE(c.get().pack(bref)); @@ -97260,7 +97110,7 @@ SRSASN_CODE security_mode_complete_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE security_mode_complete_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::security_mode_complete_r8: @@ -97278,14 +97128,14 @@ SRSASN_CODE security_mode_complete_s::crit_exts_c_::unpack(bit_ref& bref) // SecurityModeFailure ::= SEQUENCE SRSASN_CODE security_mode_fail_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE security_mode_fail_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -97378,7 +97228,7 @@ void security_mode_fail_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE security_mode_fail_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::security_mode_fail_r8: HANDLE_CODE(c.get().pack(bref)); @@ -97394,7 +97244,7 @@ SRSASN_CODE security_mode_fail_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE security_mode_fail_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::security_mode_fail_r8: @@ -97509,7 +97359,7 @@ void sidelink_ue_info_r12_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE sidelink_ue_info_r12_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -97525,7 +97375,7 @@ SRSASN_CODE sidelink_ue_info_r12_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE sidelink_ue_info_r12_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -97565,7 +97415,7 @@ void sidelink_ue_info_r12_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE sidelink_ue_info_r12_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::sidelink_ue_info_r12: HANDLE_CODE(c.pack(bref)); @@ -97585,7 +97435,7 @@ SRSASN_CODE sidelink_ue_info_r12_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) con SRSASN_CODE sidelink_ue_info_r12_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::sidelink_ue_info_r12: @@ -97704,7 +97554,7 @@ void ueassist_info_r11_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE ueassist_info_r11_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -97720,7 +97570,7 @@ SRSASN_CODE ueassist_info_r11_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE ueassist_info_r11_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -97760,7 +97610,7 @@ void ueassist_info_r11_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE ueassist_info_r11_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ue_assist_info_r11: HANDLE_CODE(c.pack(bref)); @@ -97780,7 +97630,7 @@ SRSASN_CODE ueassist_info_r11_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE ueassist_info_r11_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ue_assist_info_r11: @@ -97802,14 +97652,14 @@ SRSASN_CODE ueassist_info_r11_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) // UECapabilityInformation ::= SEQUENCE SRSASN_CODE ue_cap_info_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE ue_cap_info_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -97901,7 +97751,7 @@ void ue_cap_info_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE ue_cap_info_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -97917,7 +97767,7 @@ SRSASN_CODE ue_cap_info_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE ue_cap_info_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -97965,7 +97815,7 @@ void ue_cap_info_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE ue_cap_info_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ue_cap_info_r8: HANDLE_CODE(c.pack(bref)); @@ -97993,7 +97843,7 @@ SRSASN_CODE ue_cap_info_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE ue_cap_info_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ue_cap_info_r8: @@ -98023,14 +97873,14 @@ SRSASN_CODE ue_cap_info_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) // UEInformationResponse-r9 ::= SEQUENCE SRSASN_CODE ue_info_resp_r9_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, rrc_transaction_id, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, rrc_transaction_id, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE ue_info_resp_r9_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(rrc_transaction_id, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(rrc_transaction_id, bref, (uint8_t)0u, (uint8_t)3u)); HANDLE_CODE(crit_exts.unpack(bref)); return SRSASN_SUCCESS; @@ -98123,7 +97973,7 @@ void ue_info_resp_r9_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE ue_info_resp_r9_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -98139,7 +97989,7 @@ SRSASN_CODE ue_info_resp_r9_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE ue_info_resp_r9_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -98179,7 +98029,7 @@ void ue_info_resp_r9_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE ue_info_resp_r9_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ue_info_resp_r9: HANDLE_CODE(c.pack(bref)); @@ -98199,7 +98049,7 @@ SRSASN_CODE ue_info_resp_r9_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE ue_info_resp_r9_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ue_info_resp_r9: @@ -98318,7 +98168,7 @@ void ul_ho_prep_transfer_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE ul_ho_prep_transfer_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -98334,7 +98184,7 @@ SRSASN_CODE ul_ho_prep_transfer_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE ul_ho_prep_transfer_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -98374,7 +98224,7 @@ void ul_ho_prep_transfer_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE ul_ho_prep_transfer_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ul_ho_prep_transfer_r8: HANDLE_CODE(c.pack(bref)); @@ -98394,7 +98244,7 @@ SRSASN_CODE ul_ho_prep_transfer_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) cons SRSASN_CODE ul_ho_prep_transfer_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ul_ho_prep_transfer_r8: @@ -98513,7 +98363,7 @@ void ul_info_transfer_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE ul_info_transfer_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -98529,7 +98379,7 @@ SRSASN_CODE ul_info_transfer_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE ul_info_transfer_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -98569,7 +98419,7 @@ void ul_info_transfer_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE ul_info_transfer_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ul_info_transfer_r8: HANDLE_CODE(c.pack(bref)); @@ -98589,7 +98439,7 @@ SRSASN_CODE ul_info_transfer_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE ul_info_transfer_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ul_info_transfer_r8: @@ -98708,7 +98558,7 @@ void ul_info_transfer_mrdc_r15_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE ul_info_transfer_mrdc_r15_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -98724,7 +98574,7 @@ SRSASN_CODE ul_info_transfer_mrdc_r15_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE ul_info_transfer_mrdc_r15_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -98764,7 +98614,7 @@ void ul_info_transfer_mrdc_r15_s::crit_exts_c_::c1_c_::to_json(json_writer& j) c } SRSASN_CODE ul_info_transfer_mrdc_r15_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ul_info_transfer_mrdc_r15: HANDLE_CODE(c.pack(bref)); @@ -98784,7 +98634,7 @@ SRSASN_CODE ul_info_transfer_mrdc_r15_s::crit_exts_c_::c1_c_::pack(bit_ref& bref SRSASN_CODE ul_info_transfer_mrdc_r15_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ul_info_transfer_mrdc_r15: @@ -98903,7 +98753,7 @@ void wlan_conn_status_report_r13_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE wlan_conn_status_report_r13_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -98919,7 +98769,7 @@ SRSASN_CODE wlan_conn_status_report_r13_s::crit_exts_c_::pack(bit_ref& bref) con SRSASN_CODE wlan_conn_status_report_r13_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -98959,7 +98809,7 @@ void wlan_conn_status_report_r13_s::crit_exts_c_::c1_c_::to_json(json_writer& j) } SRSASN_CODE wlan_conn_status_report_r13_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::wlan_conn_status_report_r13: HANDLE_CODE(c.pack(bref)); @@ -98979,7 +98829,7 @@ SRSASN_CODE wlan_conn_status_report_r13_s::crit_exts_c_::c1_c_::pack(bit_ref& br SRSASN_CODE wlan_conn_status_report_r13_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::wlan_conn_status_report_r13: @@ -99085,7 +98935,7 @@ void ul_dcch_msg_type_c::to_json(json_writer& j) const } SRSASN_CODE ul_dcch_msg_type_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -99102,7 +98952,7 @@ SRSASN_CODE ul_dcch_msg_type_c::pack(bit_ref& bref) const SRSASN_CODE ul_dcch_msg_type_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -99428,7 +99278,7 @@ void ul_dcch_msg_type_c::c1_c_::to_json(json_writer& j) const } SRSASN_CODE ul_dcch_msg_type_c::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::csfb_params_request_cdma2000: HANDLE_CODE(c.get().pack(bref)); @@ -99487,7 +99337,7 @@ SRSASN_CODE ul_dcch_msg_type_c::c1_c_::pack(bit_ref& bref) const SRSASN_CODE ul_dcch_msg_type_c::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::csfb_params_request_cdma2000: @@ -99624,7 +99474,7 @@ void ul_dcch_msg_type_c::msg_class_ext_c_::to_json(json_writer& j) const } SRSASN_CODE ul_dcch_msg_type_c::msg_class_ext_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c2: HANDLE_CODE(c.get().pack(bref)); @@ -99640,7 +99490,7 @@ SRSASN_CODE ul_dcch_msg_type_c::msg_class_ext_c_::pack(bit_ref& bref) const SRSASN_CODE ul_dcch_msg_type_c::msg_class_ext_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c2: @@ -99926,7 +99776,7 @@ void ul_dcch_msg_type_c::msg_class_ext_c_::c2_c_::to_json(json_writer& j) const } SRSASN_CODE ul_dcch_msg_type_c::msg_class_ext_c_::c2_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ue_assist_info_r11: HANDLE_CODE(c.get().pack(bref)); @@ -99980,7 +99830,7 @@ SRSASN_CODE ul_dcch_msg_type_c::msg_class_ext_c_::c2_c_::pack(bit_ref& bref) con SRSASN_CODE ul_dcch_msg_type_c::msg_class_ext_c_::c2_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ue_assist_info_r11: @@ -100148,9 +99998,9 @@ SRSASN_CODE ca_mimo_params_dl_r10_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(supported_mimo_cap_dl_r10_present, 1)); - HANDLE_CODE(pack_enum(bref, ca_bw_class_dl_r10)); + HANDLE_CODE(ca_bw_class_dl_r10.pack(bref)); if (supported_mimo_cap_dl_r10_present) { - HANDLE_CODE(pack_enum(bref, supported_mimo_cap_dl_r10)); + HANDLE_CODE(supported_mimo_cap_dl_r10.pack(bref)); } return SRSASN_SUCCESS; @@ -100159,9 +100009,9 @@ SRSASN_CODE ca_mimo_params_dl_r10_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(supported_mimo_cap_dl_r10_present, 1)); - HANDLE_CODE(unpack_enum(ca_bw_class_dl_r10, bref)); + HANDLE_CODE(ca_bw_class_dl_r10.unpack(bref)); if (supported_mimo_cap_dl_r10_present) { - HANDLE_CODE(unpack_enum(supported_mimo_cap_dl_r10, bref)); + HANDLE_CODE(supported_mimo_cap_dl_r10.unpack(bref)); } return SRSASN_SUCCESS; @@ -100181,9 +100031,9 @@ SRSASN_CODE ca_mimo_params_ul_r10_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(supported_mimo_cap_ul_r10_present, 1)); - HANDLE_CODE(pack_enum(bref, ca_bw_class_ul_r10)); + HANDLE_CODE(ca_bw_class_ul_r10.pack(bref)); if (supported_mimo_cap_ul_r10_present) { - HANDLE_CODE(pack_enum(bref, supported_mimo_cap_ul_r10)); + HANDLE_CODE(supported_mimo_cap_ul_r10.pack(bref)); } return SRSASN_SUCCESS; @@ -100192,9 +100042,9 @@ SRSASN_CODE ca_mimo_params_ul_r10_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(supported_mimo_cap_ul_r10_present, 1)); - HANDLE_CODE(unpack_enum(ca_bw_class_ul_r10, bref)); + HANDLE_CODE(ca_bw_class_ul_r10.unpack(bref)); if (supported_mimo_cap_ul_r10_present) { - HANDLE_CODE(unpack_enum(supported_mimo_cap_ul_r10, bref)); + HANDLE_CODE(supported_mimo_cap_ul_r10.unpack(bref)); } return SRSASN_SUCCESS; @@ -100215,7 +100065,7 @@ SRSASN_CODE band_params_r10_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(band_params_ul_r10_present, 1)); HANDLE_CODE(bref.pack(band_params_dl_r10_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, band_eutra_r10, (uint8_t)1, (uint8_t)64)); + HANDLE_CODE(pack_integer(bref, band_eutra_r10, (uint8_t)1u, (uint8_t)64u)); if (band_params_ul_r10_present) { HANDLE_CODE(pack_dyn_seq_of(bref, band_params_ul_r10, 1, 16)); } @@ -100230,7 +100080,7 @@ SRSASN_CODE band_params_r10_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(band_params_ul_r10_present, 1)); HANDLE_CODE(bref.unpack(band_params_dl_r10_present, 1)); - HANDLE_CODE(unpack_unalign_integer(band_eutra_r10, bref, (uint8_t)1, (uint8_t)64)); + HANDLE_CODE(unpack_integer(band_eutra_r10, bref, (uint8_t)1u, (uint8_t)64u)); if (band_params_ul_r10_present) { HANDLE_CODE(unpack_dyn_seq_of(band_params_ul_r10, bref, 1, 16)); } @@ -100268,7 +100118,7 @@ SRSASN_CODE band_params_r11_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(band_params_dl_r11_present, 1)); HANDLE_CODE(bref.pack(supported_csi_proc_r11_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, band_eutra_r11, (uint16_t)1, (uint16_t)256)); + HANDLE_CODE(pack_integer(bref, band_eutra_r11, (uint16_t)1u, (uint16_t)256u)); if (band_params_ul_r11_present) { HANDLE_CODE(pack_dyn_seq_of(bref, band_params_ul_r11, 1, 16)); } @@ -100276,7 +100126,7 @@ SRSASN_CODE band_params_r11_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, band_params_dl_r11, 1, 16)); } if (supported_csi_proc_r11_present) { - HANDLE_CODE(pack_enum(bref, supported_csi_proc_r11)); + HANDLE_CODE(supported_csi_proc_r11.pack(bref)); } return SRSASN_SUCCESS; @@ -100287,7 +100137,7 @@ SRSASN_CODE band_params_r11_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(band_params_dl_r11_present, 1)); HANDLE_CODE(bref.unpack(supported_csi_proc_r11_present, 1)); - HANDLE_CODE(unpack_unalign_integer(band_eutra_r11, bref, (uint16_t)1, (uint16_t)256)); + HANDLE_CODE(unpack_integer(band_eutra_r11, bref, (uint16_t)1u, (uint16_t)256u)); if (band_params_ul_r11_present) { HANDLE_CODE(unpack_dyn_seq_of(band_params_ul_r11, bref, 1, 16)); } @@ -100295,7 +100145,7 @@ SRSASN_CODE band_params_r11_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(band_params_dl_r11, bref, 1, 16)); } if (supported_csi_proc_r11_present) { - HANDLE_CODE(unpack_enum(supported_csi_proc_r11, bref)); + HANDLE_CODE(supported_csi_proc_r11.unpack(bref)); } return SRSASN_SUCCESS; @@ -100385,10 +100235,10 @@ SRSASN_CODE intra_band_contiguous_cc_info_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(supported_csi_proc_r12_present, 1)); if (supported_mimo_cap_dl_r12_present) { - HANDLE_CODE(pack_enum(bref, supported_mimo_cap_dl_r12)); + HANDLE_CODE(supported_mimo_cap_dl_r12.pack(bref)); } if (supported_csi_proc_r12_present) { - HANDLE_CODE(pack_enum(bref, supported_csi_proc_r12)); + HANDLE_CODE(supported_csi_proc_r12.pack(bref)); } return SRSASN_SUCCESS; @@ -100400,10 +100250,10 @@ SRSASN_CODE intra_band_contiguous_cc_info_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(supported_csi_proc_r12_present, 1)); if (supported_mimo_cap_dl_r12_present) { - HANDLE_CODE(unpack_enum(supported_mimo_cap_dl_r12, bref)); + HANDLE_CODE(supported_mimo_cap_dl_r12.unpack(bref)); } if (supported_csi_proc_r12_present) { - HANDLE_CODE(unpack_enum(supported_csi_proc_r12, bref)); + HANDLE_CODE(supported_csi_proc_r12.unpack(bref)); } return SRSASN_SUCCESS; @@ -100429,9 +100279,9 @@ SRSASN_CODE ca_mimo_params_dl_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(supported_mimo_cap_dl_r13_present, 1)); HANDLE_CODE(bref.pack(four_layer_tm3_tm4_r13_present, 1)); - HANDLE_CODE(pack_enum(bref, ca_bw_class_dl_r13)); + HANDLE_CODE(ca_bw_class_dl_r13.pack(bref)); if (supported_mimo_cap_dl_r13_present) { - HANDLE_CODE(pack_enum(bref, supported_mimo_cap_dl_r13)); + HANDLE_CODE(supported_mimo_cap_dl_r13.pack(bref)); } HANDLE_CODE(pack_dyn_seq_of(bref, intra_band_contiguous_cc_info_list_r13, 1, 32)); @@ -100442,9 +100292,9 @@ SRSASN_CODE ca_mimo_params_dl_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(supported_mimo_cap_dl_r13_present, 1)); HANDLE_CODE(bref.unpack(four_layer_tm3_tm4_r13_present, 1)); - HANDLE_CODE(unpack_enum(ca_bw_class_dl_r13, bref)); + HANDLE_CODE(ca_bw_class_dl_r13.unpack(bref)); if (supported_mimo_cap_dl_r13_present) { - HANDLE_CODE(unpack_enum(supported_mimo_cap_dl_r13, bref)); + HANDLE_CODE(supported_mimo_cap_dl_r13.unpack(bref)); } HANDLE_CODE(unpack_dyn_seq_of(intra_band_contiguous_cc_info_list_r13, bref, 1, 32)); @@ -100475,7 +100325,7 @@ SRSASN_CODE band_params_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(band_params_dl_r13_present, 1)); HANDLE_CODE(bref.pack(supported_csi_proc_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, band_eutra_r13, (uint16_t)1, (uint16_t)256)); + HANDLE_CODE(pack_integer(bref, band_eutra_r13, (uint16_t)1u, (uint16_t)256u)); if (band_params_ul_r13_present) { HANDLE_CODE(band_params_ul_r13.pack(bref)); } @@ -100483,7 +100333,7 @@ SRSASN_CODE band_params_r13_s::pack(bit_ref& bref) const HANDLE_CODE(band_params_dl_r13.pack(bref)); } if (supported_csi_proc_r13_present) { - HANDLE_CODE(pack_enum(bref, supported_csi_proc_r13)); + HANDLE_CODE(supported_csi_proc_r13.pack(bref)); } return SRSASN_SUCCESS; @@ -100494,7 +100344,7 @@ SRSASN_CODE band_params_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(band_params_dl_r13_present, 1)); HANDLE_CODE(bref.unpack(supported_csi_proc_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(band_eutra_r13, bref, (uint16_t)1, (uint16_t)256)); + HANDLE_CODE(unpack_integer(band_eutra_r13, bref, (uint16_t)1u, (uint16_t)256u)); if (band_params_ul_r13_present) { HANDLE_CODE(band_params_ul_r13.unpack(bref)); } @@ -100502,7 +100352,7 @@ SRSASN_CODE band_params_r13_s::unpack(bit_ref& bref) HANDLE_CODE(band_params_dl_r13.unpack(bref)); } if (supported_csi_proc_r13_present) { - HANDLE_CODE(unpack_enum(supported_csi_proc_r13, bref)); + HANDLE_CODE(supported_csi_proc_r13.unpack(bref)); } return SRSASN_SUCCESS; @@ -100733,7 +100583,7 @@ void band_combination_params_r13_s::dc_support_r13_s_::supported_cell_grouping_r } SRSASN_CODE band_combination_params_r13_s::dc_support_r13_s_::supported_cell_grouping_r13_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::three_entries_r13: HANDLE_CODE(c.get >().pack(bref)); @@ -100753,7 +100603,7 @@ SRSASN_CODE band_combination_params_r13_s::dc_support_r13_s_::supported_cell_gro SRSASN_CODE band_combination_params_r13_s::dc_support_r13_s_::supported_cell_grouping_r13_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::three_entries_r13: @@ -100779,7 +100629,7 @@ SRSASN_CODE band_params_v1090_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(band_eutra_v1090_present, 1)); if (band_eutra_v1090_present) { - HANDLE_CODE(pack_unalign_integer(bref, band_eutra_v1090, (uint16_t)65, (uint16_t)256)); + HANDLE_CODE(pack_integer(bref, band_eutra_v1090, (uint16_t)65u, (uint16_t)256u)); } return SRSASN_SUCCESS; @@ -100790,7 +100640,7 @@ SRSASN_CODE band_params_v1090_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(band_eutra_v1090_present, 1)); if (band_eutra_v1090_present) { - HANDLE_CODE(unpack_unalign_integer(band_eutra_v1090, bref, (uint16_t)65, (uint16_t)256)); + HANDLE_CODE(unpack_integer(band_eutra_v1090, bref, (uint16_t)65u, (uint16_t)256u)); } return SRSASN_SUCCESS; @@ -100887,13 +100737,13 @@ void band_combination_params_v10i0_s::to_json(json_writer& j) const // BandParameters-v1130 ::= SEQUENCE SRSASN_CODE band_params_v1130_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, supported_csi_proc_r11)); + HANDLE_CODE(supported_csi_proc_r11.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE band_params_v1130_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(supported_csi_proc_r11, bref)); + HANDLE_CODE(supported_csi_proc_r11.unpack(bref)); return SRSASN_SUCCESS; } @@ -101128,7 +100978,7 @@ void band_combination_params_v1250_s::dc_support_r12_s_::supported_cell_grouping SRSASN_CODE band_combination_params_v1250_s::dc_support_r12_s_::supported_cell_grouping_r12_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::three_entries_r12: HANDLE_CODE(c.get >().pack(bref)); @@ -101149,7 +100999,7 @@ band_combination_params_v1250_s::dc_support_r12_s_::supported_cell_grouping_r12_ SRSASN_CODE band_combination_params_v1250_s::dc_support_r12_s_::supported_cell_grouping_r12_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::three_entries_r12: @@ -101252,29 +101102,29 @@ void band_combination_params_v1270_s::to_json(json_writer& j) const } // MIMO-BeamformedCapabilities-r13 ::= SEQUENCE -SRSASN_CODE mimo_beamformed_capabilities_r13_s::pack(bit_ref& bref) const +SRSASN_CODE mimo_bf_cap_r13_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(n_max_list_r13_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, k_max_r13, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, k_max_r13, (uint8_t)1u, (uint8_t)8u)); if (n_max_list_r13_present) { HANDLE_CODE(n_max_list_r13.pack(bref)); } return SRSASN_SUCCESS; } -SRSASN_CODE mimo_beamformed_capabilities_r13_s::unpack(bit_ref& bref) +SRSASN_CODE mimo_bf_cap_r13_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(n_max_list_r13_present, 1)); - HANDLE_CODE(unpack_unalign_integer(k_max_r13, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(k_max_r13, bref, (uint8_t)1u, (uint8_t)8u)); if (n_max_list_r13_present) { HANDLE_CODE(n_max_list_r13.unpack(bref)); } return SRSASN_SUCCESS; } -void mimo_beamformed_capabilities_r13_s::to_json(json_writer& j) const +void mimo_bf_cap_r13_s::to_json(json_writer& j) const { j.start_obj(); j.write_int("k-Max-r13", k_max_r13); @@ -101285,7 +101135,7 @@ void mimo_beamformed_capabilities_r13_s::to_json(json_writer& j) const } // MIMO-NonPrecodedCapabilities-r13 ::= SEQUENCE -SRSASN_CODE mimo_non_precoded_capabilities_r13_s::pack(bit_ref& bref) const +SRSASN_CODE mimo_non_precoded_cap_r13_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(cfg1_r13_present, 1)); HANDLE_CODE(bref.pack(cfg2_r13_present, 1)); @@ -101294,7 +101144,7 @@ SRSASN_CODE mimo_non_precoded_capabilities_r13_s::pack(bit_ref& bref) const return SRSASN_SUCCESS; } -SRSASN_CODE mimo_non_precoded_capabilities_r13_s::unpack(bit_ref& bref) +SRSASN_CODE mimo_non_precoded_cap_r13_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(cfg1_r13_present, 1)); HANDLE_CODE(bref.unpack(cfg2_r13_present, 1)); @@ -101303,7 +101153,7 @@ SRSASN_CODE mimo_non_precoded_capabilities_r13_s::unpack(bit_ref& bref) return SRSASN_SUCCESS; } -void mimo_non_precoded_capabilities_r13_s::to_json(json_writer& j) const +void mimo_non_precoded_cap_r13_s::to_json(json_writer& j) const { j.start_obj(); if (cfg1_r13_present) { @@ -101325,14 +101175,14 @@ void mimo_non_precoded_capabilities_r13_s::to_json(json_writer& j) const SRSASN_CODE mimo_ca_params_per_bo_bc_per_tm_r13_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(non_precoded_r13_present, 1)); - HANDLE_CODE(bref.pack(beamformed_r13_present, 1)); + HANDLE_CODE(bref.pack(bf_r13_present, 1)); HANDLE_CODE(bref.pack(dmrs_enhance_r13_present, 1)); if (non_precoded_r13_present) { HANDLE_CODE(non_precoded_r13.pack(bref)); } - if (beamformed_r13_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, beamformed_r13, 1, 4)); + if (bf_r13_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, bf_r13, 1, 4)); } return SRSASN_SUCCESS; @@ -101340,14 +101190,14 @@ SRSASN_CODE mimo_ca_params_per_bo_bc_per_tm_r13_s::pack(bit_ref& bref) const SRSASN_CODE mimo_ca_params_per_bo_bc_per_tm_r13_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(non_precoded_r13_present, 1)); - HANDLE_CODE(bref.unpack(beamformed_r13_present, 1)); + HANDLE_CODE(bref.unpack(bf_r13_present, 1)); HANDLE_CODE(bref.unpack(dmrs_enhance_r13_present, 1)); if (non_precoded_r13_present) { HANDLE_CODE(non_precoded_r13.unpack(bref)); } - if (beamformed_r13_present) { - HANDLE_CODE(unpack_dyn_seq_of(beamformed_r13, bref, 1, 4)); + if (bf_r13_present) { + HANDLE_CODE(unpack_dyn_seq_of(bf_r13, bref, 1, 4)); } return SRSASN_SUCCESS; @@ -101359,10 +101209,10 @@ void mimo_ca_params_per_bo_bc_per_tm_r13_s::to_json(json_writer& j) const j.write_fieldname("nonPrecoded-r13"); non_precoded_r13.to_json(j); } - if (beamformed_r13_present) { + if (bf_r13_present) { j.start_array("beamformed-r13"); - for (uint32_t i1 = 0; i1 < beamformed_r13.size(); ++i1) { - beamformed_r13[i1].to_json(j); + for (uint32_t i1 = 0; i1 < bf_r13.size(); ++i1) { + bf_r13[i1].to_json(j); } j.end_array(); } @@ -101482,10 +101332,10 @@ SRSASN_CODE band_params_v1380_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(tx_ant_switch_ul_r13_present, 1)); if (tx_ant_switch_dl_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, tx_ant_switch_dl_r13, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, tx_ant_switch_dl_r13, (uint8_t)1u, (uint8_t)32u)); } if (tx_ant_switch_ul_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, tx_ant_switch_ul_r13, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, tx_ant_switch_ul_r13, (uint8_t)1u, (uint8_t)32u)); } return SRSASN_SUCCESS; @@ -101496,10 +101346,10 @@ SRSASN_CODE band_params_v1380_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(tx_ant_switch_ul_r13_present, 1)); if (tx_ant_switch_dl_r13_present) { - HANDLE_CODE(unpack_unalign_integer(tx_ant_switch_dl_r13, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(tx_ant_switch_dl_r13, bref, (uint8_t)1u, (uint8_t)32u)); } if (tx_ant_switch_ul_r13_present) { - HANDLE_CODE(unpack_unalign_integer(tx_ant_switch_ul_r13, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(tx_ant_switch_ul_r13, bref, (uint8_t)1u, (uint8_t)32u)); } return SRSASN_SUCCESS; @@ -101626,10 +101476,10 @@ SRSASN_CODE retuning_time_info_r14_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(retuning_info.rf_retuning_time_dl_r14_present, 1)); HANDLE_CODE(bref.pack(retuning_info.rf_retuning_time_ul_r14_present, 1)); if (retuning_info.rf_retuning_time_dl_r14_present) { - HANDLE_CODE(pack_enum(bref, retuning_info.rf_retuning_time_dl_r14)); + HANDLE_CODE(retuning_info.rf_retuning_time_dl_r14.pack(bref)); } if (retuning_info.rf_retuning_time_ul_r14_present) { - HANDLE_CODE(pack_enum(bref, retuning_info.rf_retuning_time_ul_r14)); + HANDLE_CODE(retuning_info.rf_retuning_time_ul_r14.pack(bref)); } return SRSASN_SUCCESS; @@ -101639,10 +101489,10 @@ SRSASN_CODE retuning_time_info_r14_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(retuning_info.rf_retuning_time_dl_r14_present, 1)); HANDLE_CODE(bref.unpack(retuning_info.rf_retuning_time_ul_r14_present, 1)); if (retuning_info.rf_retuning_time_dl_r14_present) { - HANDLE_CODE(unpack_enum(retuning_info.rf_retuning_time_dl_r14, bref)); + HANDLE_CODE(retuning_info.rf_retuning_time_dl_r14.unpack(bref)); } if (retuning_info.rf_retuning_time_ul_r14_present) { - HANDLE_CODE(unpack_enum(retuning_info.rf_retuning_time_ul_r14, bref)); + HANDLE_CODE(retuning_info.rf_retuning_time_ul_r14.unpack(bref)); } return SRSASN_SUCCESS; @@ -101919,7 +101769,7 @@ SRSASN_CODE mimo_ca_params_per_bo_bc_per_tm_v1470_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(csi_report_advanced_max_ports_r14_present, 1)); if (csi_report_advanced_max_ports_r14_present) { - HANDLE_CODE(pack_enum(bref, csi_report_advanced_max_ports_r14)); + HANDLE_CODE(csi_report_advanced_max_ports_r14.pack(bref)); } return SRSASN_SUCCESS; @@ -101929,7 +101779,7 @@ SRSASN_CODE mimo_ca_params_per_bo_bc_per_tm_v1470_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(csi_report_advanced_max_ports_r14_present, 1)); if (csi_report_advanced_max_ports_r14_present) { - HANDLE_CODE(unpack_enum(csi_report_advanced_max_ports_r14, bref)); + HANDLE_CODE(csi_report_advanced_max_ports_r14.unpack(bref)); } return SRSASN_SUCCESS; @@ -102009,7 +101859,7 @@ SRSASN_CODE band_combination_params_v1470_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, band_param_list_v1470, 1, 64)); } if (srs_max_simul_ccs_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, srs_max_simul_ccs_r14, (uint8_t)1, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, srs_max_simul_ccs_r14, (uint8_t)1u, (uint8_t)31u)); } return SRSASN_SUCCESS; @@ -102023,7 +101873,7 @@ SRSASN_CODE band_combination_params_v1470_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(band_param_list_v1470, bref, 1, 64)); } if (srs_max_simul_ccs_r14_present) { - HANDLE_CODE(unpack_unalign_integer(srs_max_simul_ccs_r14, bref, (uint8_t)1, (uint8_t)31)); + HANDLE_CODE(unpack_integer(srs_max_simul_ccs_r14, bref, (uint8_t)1u, (uint8_t)31u)); } return SRSASN_SUCCESS; @@ -102051,10 +101901,10 @@ SRSASN_CODE dl_ul_ccs_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(max_num_ul_ccs_r15_present, 1)); if (max_num_dl_ccs_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, max_num_dl_ccs_r15, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, max_num_dl_ccs_r15, (uint8_t)1u, (uint8_t)32u)); } if (max_num_ul_ccs_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, max_num_ul_ccs_r15, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, max_num_ul_ccs_r15, (uint8_t)1u, (uint8_t)32u)); } return SRSASN_SUCCESS; @@ -102065,10 +101915,10 @@ SRSASN_CODE dl_ul_ccs_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(max_num_ul_ccs_r15_present, 1)); if (max_num_dl_ccs_r15_present) { - HANDLE_CODE(unpack_unalign_integer(max_num_dl_ccs_r15, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(max_num_dl_ccs_r15, bref, (uint8_t)1u, (uint8_t)32u)); } if (max_num_ul_ccs_r15_present) { - HANDLE_CODE(unpack_unalign_integer(max_num_ul_ccs_r15, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(max_num_ul_ccs_r15, bref, (uint8_t)1u, (uint8_t)32u)); } return SRSASN_SUCCESS; @@ -102093,7 +101943,7 @@ SRSASN_CODE ca_mimo_params_dl_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(intra_band_contiguous_cc_info_list_r15_present, 1)); if (supported_mimo_cap_dl_r15_present) { - HANDLE_CODE(pack_enum(bref, supported_mimo_cap_dl_r15)); + HANDLE_CODE(supported_mimo_cap_dl_r15.pack(bref)); } if (intra_band_contiguous_cc_info_list_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, intra_band_contiguous_cc_info_list_r15, 1, 32)); @@ -102108,7 +101958,7 @@ SRSASN_CODE ca_mimo_params_dl_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(intra_band_contiguous_cc_info_list_r15_present, 1)); if (supported_mimo_cap_dl_r15_present) { - HANDLE_CODE(unpack_enum(supported_mimo_cap_dl_r15, bref)); + HANDLE_CODE(supported_mimo_cap_dl_r15.unpack(bref)); } if (intra_band_contiguous_cc_info_list_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(intra_band_contiguous_cc_info_list_r15, bref, 1, 32)); @@ -102141,7 +101991,7 @@ SRSASN_CODE ca_mimo_params_ul_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(supported_mimo_cap_ul_r15_present, 1)); if (supported_mimo_cap_ul_r15_present) { - HANDLE_CODE(pack_enum(bref, supported_mimo_cap_ul_r15)); + HANDLE_CODE(supported_mimo_cap_ul_r15.pack(bref)); } return SRSASN_SUCCESS; @@ -102151,7 +102001,7 @@ SRSASN_CODE ca_mimo_params_ul_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(supported_mimo_cap_ul_r15_present, 1)); if (supported_mimo_cap_ul_r15_present) { - HANDLE_CODE(unpack_enum(supported_mimo_cap_ul_r15, bref)); + HANDLE_CODE(supported_mimo_cap_ul_r15.unpack(bref)); } return SRSASN_SUCCESS; @@ -102273,30 +102123,30 @@ SRSASN_CODE stti_spt_band_params_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(dl_minus1024_qam_subslot_ta_minus1_r15_present, 1)); HANDLE_CODE(bref.pack(dl_minus1024_qam_subslot_ta_minus2_r15_present, 1)); HANDLE_CODE(bref.pack(simul_tx_different_tx_dur_r15_present, 1)); - HANDLE_CODE(bref.pack(s_tti_ca_mimo_params_dl_r15_present, 1)); - HANDLE_CODE(bref.pack(s_tti_fd_mimo_coexistence_present, 1)); - HANDLE_CODE(bref.pack(s_tti_mimo_ca_params_per_bo_bcs_r15_present, 1)); - HANDLE_CODE(bref.pack(s_tti_mimo_ca_params_per_bo_bcs_v1530_present, 1)); - HANDLE_CODE(bref.pack(s_tti_supported_combinations_r15_present, 1)); - HANDLE_CODE(bref.pack(s_tti_supported_csi_proc_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_ca_mimo_params_dl_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_fd_mimo_coexistence_present, 1)); + HANDLE_CODE(bref.pack(stti_mimo_ca_params_per_bo_bcs_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_mimo_ca_params_per_bo_bcs_v1530_present, 1)); + HANDLE_CODE(bref.pack(stti_supported_combinations_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_supported_csi_proc_r15_present, 1)); HANDLE_CODE(bref.pack(ul_minus256_qam_slot_r15_present, 1)); HANDLE_CODE(bref.pack(ul_minus256_qam_subslot_r15_present, 1)); - if (s_tti_ca_mimo_params_dl_r15_present) { - HANDLE_CODE(s_tti_ca_mimo_params_dl_r15.pack(bref)); + if (stti_ca_mimo_params_dl_r15_present) { + HANDLE_CODE(stti_ca_mimo_params_dl_r15.pack(bref)); } - HANDLE_CODE(s_tti_ca_mimo_params_ul_r15.pack(bref)); - if (s_tti_mimo_ca_params_per_bo_bcs_r15_present) { - HANDLE_CODE(s_tti_mimo_ca_params_per_bo_bcs_r15.pack(bref)); + HANDLE_CODE(stti_ca_mimo_params_ul_r15.pack(bref)); + if (stti_mimo_ca_params_per_bo_bcs_r15_present) { + HANDLE_CODE(stti_mimo_ca_params_per_bo_bcs_r15.pack(bref)); } - if (s_tti_mimo_ca_params_per_bo_bcs_v1530_present) { - HANDLE_CODE(s_tti_mimo_ca_params_per_bo_bcs_v1530.pack(bref)); + if (stti_mimo_ca_params_per_bo_bcs_v1530_present) { + HANDLE_CODE(stti_mimo_ca_params_per_bo_bcs_v1530.pack(bref)); } - if (s_tti_supported_combinations_r15_present) { - HANDLE_CODE(s_tti_supported_combinations_r15.pack(bref)); + if (stti_supported_combinations_r15_present) { + HANDLE_CODE(stti_supported_combinations_r15.pack(bref)); } - if (s_tti_supported_csi_proc_r15_present) { - HANDLE_CODE(pack_enum(bref, s_tti_supported_csi_proc_r15)); + if (stti_supported_csi_proc_r15_present) { + HANDLE_CODE(stti_supported_csi_proc_r15.pack(bref)); } return SRSASN_SUCCESS; @@ -102308,30 +102158,30 @@ SRSASN_CODE stti_spt_band_params_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(dl_minus1024_qam_subslot_ta_minus1_r15_present, 1)); HANDLE_CODE(bref.unpack(dl_minus1024_qam_subslot_ta_minus2_r15_present, 1)); HANDLE_CODE(bref.unpack(simul_tx_different_tx_dur_r15_present, 1)); - HANDLE_CODE(bref.unpack(s_tti_ca_mimo_params_dl_r15_present, 1)); - HANDLE_CODE(bref.unpack(s_tti_fd_mimo_coexistence_present, 1)); - HANDLE_CODE(bref.unpack(s_tti_mimo_ca_params_per_bo_bcs_r15_present, 1)); - HANDLE_CODE(bref.unpack(s_tti_mimo_ca_params_per_bo_bcs_v1530_present, 1)); - HANDLE_CODE(bref.unpack(s_tti_supported_combinations_r15_present, 1)); - HANDLE_CODE(bref.unpack(s_tti_supported_csi_proc_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_ca_mimo_params_dl_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_fd_mimo_coexistence_present, 1)); + HANDLE_CODE(bref.unpack(stti_mimo_ca_params_per_bo_bcs_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_mimo_ca_params_per_bo_bcs_v1530_present, 1)); + HANDLE_CODE(bref.unpack(stti_supported_combinations_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_supported_csi_proc_r15_present, 1)); HANDLE_CODE(bref.unpack(ul_minus256_qam_slot_r15_present, 1)); HANDLE_CODE(bref.unpack(ul_minus256_qam_subslot_r15_present, 1)); - if (s_tti_ca_mimo_params_dl_r15_present) { - HANDLE_CODE(s_tti_ca_mimo_params_dl_r15.unpack(bref)); + if (stti_ca_mimo_params_dl_r15_present) { + HANDLE_CODE(stti_ca_mimo_params_dl_r15.unpack(bref)); } - HANDLE_CODE(s_tti_ca_mimo_params_ul_r15.unpack(bref)); - if (s_tti_mimo_ca_params_per_bo_bcs_r15_present) { - HANDLE_CODE(s_tti_mimo_ca_params_per_bo_bcs_r15.unpack(bref)); + HANDLE_CODE(stti_ca_mimo_params_ul_r15.unpack(bref)); + if (stti_mimo_ca_params_per_bo_bcs_r15_present) { + HANDLE_CODE(stti_mimo_ca_params_per_bo_bcs_r15.unpack(bref)); } - if (s_tti_mimo_ca_params_per_bo_bcs_v1530_present) { - HANDLE_CODE(s_tti_mimo_ca_params_per_bo_bcs_v1530.unpack(bref)); + if (stti_mimo_ca_params_per_bo_bcs_v1530_present) { + HANDLE_CODE(stti_mimo_ca_params_per_bo_bcs_v1530.unpack(bref)); } - if (s_tti_supported_combinations_r15_present) { - HANDLE_CODE(s_tti_supported_combinations_r15.unpack(bref)); + if (stti_supported_combinations_r15_present) { + HANDLE_CODE(stti_supported_combinations_r15.unpack(bref)); } - if (s_tti_supported_csi_proc_r15_present) { - HANDLE_CODE(unpack_enum(s_tti_supported_csi_proc_r15, bref)); + if (stti_supported_csi_proc_r15_present) { + HANDLE_CODE(stti_supported_csi_proc_r15.unpack(bref)); } return SRSASN_SUCCESS; @@ -102351,29 +102201,29 @@ void stti_spt_band_params_r15_s::to_json(json_writer& j) const if (simul_tx_different_tx_dur_r15_present) { j.write_str("simultaneousTx-differentTx-duration-r15", "supported"); } - if (s_tti_ca_mimo_params_dl_r15_present) { + if (stti_ca_mimo_params_dl_r15_present) { j.write_fieldname("sTTI-CA-MIMO-ParametersDL-r15"); - s_tti_ca_mimo_params_dl_r15.to_json(j); + stti_ca_mimo_params_dl_r15.to_json(j); } j.write_fieldname("sTTI-CA-MIMO-ParametersUL-r15"); - s_tti_ca_mimo_params_ul_r15.to_json(j); - if (s_tti_fd_mimo_coexistence_present) { + stti_ca_mimo_params_ul_r15.to_json(j); + if (stti_fd_mimo_coexistence_present) { j.write_str("sTTI-FD-MIMO-Coexistence", "supported"); } - if (s_tti_mimo_ca_params_per_bo_bcs_r15_present) { + if (stti_mimo_ca_params_per_bo_bcs_r15_present) { j.write_fieldname("sTTI-MIMO-CA-ParametersPerBoBCs-r15"); - s_tti_mimo_ca_params_per_bo_bcs_r15.to_json(j); + stti_mimo_ca_params_per_bo_bcs_r15.to_json(j); } - if (s_tti_mimo_ca_params_per_bo_bcs_v1530_present) { + if (stti_mimo_ca_params_per_bo_bcs_v1530_present) { j.write_fieldname("sTTI-MIMO-CA-ParametersPerBoBCs-v1530"); - s_tti_mimo_ca_params_per_bo_bcs_v1530.to_json(j); + stti_mimo_ca_params_per_bo_bcs_v1530.to_json(j); } - if (s_tti_supported_combinations_r15_present) { + if (stti_supported_combinations_r15_present) { j.write_fieldname("sTTI-SupportedCombinations-r15"); - s_tti_supported_combinations_r15.to_json(j); + stti_supported_combinations_r15.to_json(j); } - if (s_tti_supported_csi_proc_r15_present) { - j.write_str("sTTI-SupportedCSI-Proc-r15", s_tti_supported_csi_proc_r15.to_string()); + if (stti_supported_csi_proc_r15_present) { + j.write_str("sTTI-SupportedCSI-Proc-r15", stti_supported_csi_proc_r15.to_string()); } if (ul_minus256_qam_slot_r15_present) { j.write_str("ul-256QAM-Slot-r15", "supported"); @@ -102455,7 +102305,7 @@ SRSASN_CODE spt_params_r15_s::pack(bit_ref& bref) const HANDLE_CODE(frame_structure_type_spt_r15.pack(bref)); } if (max_num_ccs_spt_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, max_num_ccs_spt_r15, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, max_num_ccs_spt_r15, (uint8_t)1u, (uint8_t)32u)); } return SRSASN_SUCCESS; @@ -102469,7 +102319,7 @@ SRSASN_CODE spt_params_r15_s::unpack(bit_ref& bref) HANDLE_CODE(frame_structure_type_spt_r15.unpack(bref)); } if (max_num_ccs_spt_r15_present) { - HANDLE_CODE(unpack_unalign_integer(max_num_ccs_spt_r15, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(max_num_ccs_spt_r15, bref, (uint8_t)1u, (uint8_t)32u)); } return SRSASN_SUCCESS; @@ -102567,7 +102417,7 @@ SRSASN_CODE band_params_rx_sl_r14_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(v2x_high_reception_r14_present, 1)); - HANDLE_CODE(pack_dyn_seq_of(bref, v2x_bw_class_rx_sl_r14, 1, 16, EnumPacker())); + HANDLE_CODE(pack_dyn_seq_of(bref, v2x_bw_class_rx_sl_r14, 1, 16)); return SRSASN_SUCCESS; } @@ -102575,7 +102425,7 @@ SRSASN_CODE band_params_rx_sl_r14_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(v2x_high_reception_r14_present, 1)); - HANDLE_CODE(unpack_dyn_seq_of(v2x_bw_class_rx_sl_r14, bref, 1, 16, EnumPacker())); + HANDLE_CODE(unpack_dyn_seq_of(v2x_bw_class_rx_sl_r14, bref, 1, 16)); return SRSASN_SUCCESS; } @@ -102599,7 +102449,7 @@ SRSASN_CODE band_params_tx_sl_r14_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(v2x_e_nb_sched_r14_present, 1)); HANDLE_CODE(bref.pack(v2x_high_pwr_r14_present, 1)); - HANDLE_CODE(pack_dyn_seq_of(bref, v2x_bw_class_tx_sl_r14, 1, 16, EnumPacker())); + HANDLE_CODE(pack_dyn_seq_of(bref, v2x_bw_class_tx_sl_r14, 1, 16)); return SRSASN_SUCCESS; } @@ -102608,7 +102458,7 @@ SRSASN_CODE band_params_tx_sl_r14_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(v2x_e_nb_sched_r14_present, 1)); HANDLE_CODE(bref.unpack(v2x_high_pwr_r14_present, 1)); - HANDLE_CODE(unpack_dyn_seq_of(v2x_bw_class_tx_sl_r14, bref, 1, 16, EnumPacker())); + HANDLE_CODE(unpack_dyn_seq_of(v2x_bw_class_tx_sl_r14, bref, 1, 16)); return SRSASN_SUCCESS; } @@ -102637,10 +102487,10 @@ SRSASN_CODE feature_set_dl_per_cc_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(supported_csi_proc_r15_present, 1)); if (supported_mimo_cap_dl_r15_present) { - HANDLE_CODE(pack_enum(bref, supported_mimo_cap_dl_r15)); + HANDLE_CODE(supported_mimo_cap_dl_r15.pack(bref)); } if (supported_csi_proc_r15_present) { - HANDLE_CODE(pack_enum(bref, supported_csi_proc_r15)); + HANDLE_CODE(supported_csi_proc_r15.pack(bref)); } return SRSASN_SUCCESS; @@ -102652,10 +102502,10 @@ SRSASN_CODE feature_set_dl_per_cc_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(supported_csi_proc_r15_present, 1)); if (supported_mimo_cap_dl_r15_present) { - HANDLE_CODE(unpack_enum(supported_mimo_cap_dl_r15, bref)); + HANDLE_CODE(supported_mimo_cap_dl_r15.unpack(bref)); } if (supported_csi_proc_r15_present) { - HANDLE_CODE(unpack_enum(supported_csi_proc_r15, bref)); + HANDLE_CODE(supported_csi_proc_r15.unpack(bref)); } return SRSASN_SUCCESS; @@ -102679,7 +102529,7 @@ void feature_set_dl_per_cc_r15_s::to_json(json_writer& j) const SRSASN_CODE mimo_ca_params_per_bo_bc_per_tm_r15_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(non_precoded_r13_present, 1)); - HANDLE_CODE(bref.pack(beamformed_r13_present, 1)); + HANDLE_CODE(bref.pack(bf_r13_present, 1)); HANDLE_CODE(bref.pack(dmrs_enhance_r13_present, 1)); HANDLE_CODE(bref.pack(csi_report_np_r14_present, 1)); HANDLE_CODE(bref.pack(csi_report_advanced_r14_present, 1)); @@ -102687,8 +102537,8 @@ SRSASN_CODE mimo_ca_params_per_bo_bc_per_tm_r15_s::pack(bit_ref& bref) const if (non_precoded_r13_present) { HANDLE_CODE(non_precoded_r13.pack(bref)); } - if (beamformed_r13_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, beamformed_r13, 1, 4)); + if (bf_r13_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, bf_r13, 1, 4)); } return SRSASN_SUCCESS; @@ -102696,7 +102546,7 @@ SRSASN_CODE mimo_ca_params_per_bo_bc_per_tm_r15_s::pack(bit_ref& bref) const SRSASN_CODE mimo_ca_params_per_bo_bc_per_tm_r15_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(non_precoded_r13_present, 1)); - HANDLE_CODE(bref.unpack(beamformed_r13_present, 1)); + HANDLE_CODE(bref.unpack(bf_r13_present, 1)); HANDLE_CODE(bref.unpack(dmrs_enhance_r13_present, 1)); HANDLE_CODE(bref.unpack(csi_report_np_r14_present, 1)); HANDLE_CODE(bref.unpack(csi_report_advanced_r14_present, 1)); @@ -102704,8 +102554,8 @@ SRSASN_CODE mimo_ca_params_per_bo_bc_per_tm_r15_s::unpack(bit_ref& bref) if (non_precoded_r13_present) { HANDLE_CODE(non_precoded_r13.unpack(bref)); } - if (beamformed_r13_present) { - HANDLE_CODE(unpack_dyn_seq_of(beamformed_r13, bref, 1, 4)); + if (bf_r13_present) { + HANDLE_CODE(unpack_dyn_seq_of(bf_r13, bref, 1, 4)); } return SRSASN_SUCCESS; @@ -102717,10 +102567,10 @@ void mimo_ca_params_per_bo_bc_per_tm_r15_s::to_json(json_writer& j) const j.write_fieldname("nonPrecoded-r13"); non_precoded_r13.to_json(j); } - if (beamformed_r13_present) { + if (bf_r13_present) { j.start_array("beamformed-r13"); - for (uint32_t i1 = 0; i1 < beamformed_r13.size(); ++i1) { - beamformed_r13[i1].to_json(j); + for (uint32_t i1 = 0; i1 < bf_r13.size(); ++i1) { + bf_r13[i1].to_json(j); } j.end_array(); } @@ -102787,7 +102637,7 @@ SRSASN_CODE feature_set_dl_r15_s::pack(bit_ref& bref) const if (mimo_ca_params_per_bo_bc_r15_present) { HANDLE_CODE(mimo_ca_params_per_bo_bc_r15.pack(bref)); } - HANDLE_CODE(pack_dyn_seq_of(bref, feature_set_per_cc_list_dl_r15, 1, 32, UnalignedIntegerPacker(0, 32))); + HANDLE_CODE(pack_dyn_seq_of(bref, feature_set_per_cc_list_dl_r15, 1, 32, integer_packer(0, 32))); return SRSASN_SUCCESS; } @@ -102798,7 +102648,7 @@ SRSASN_CODE feature_set_dl_r15_s::unpack(bit_ref& bref) if (mimo_ca_params_per_bo_bc_r15_present) { HANDLE_CODE(mimo_ca_params_per_bo_bc_r15.unpack(bref)); } - HANDLE_CODE(unpack_dyn_seq_of(feature_set_per_cc_list_dl_r15, bref, 1, 32, UnalignedIntegerPacker(0, 32))); + HANDLE_CODE(unpack_dyn_seq_of(feature_set_per_cc_list_dl_r15, bref, 1, 32, integer_packer(0, 32))); return SRSASN_SUCCESS; } @@ -102824,7 +102674,7 @@ SRSASN_CODE feature_set_ul_per_cc_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(ul_minus256_qam_r15_present, 1)); if (supported_mimo_cap_ul_r15_present) { - HANDLE_CODE(pack_enum(bref, supported_mimo_cap_ul_r15)); + HANDLE_CODE(supported_mimo_cap_ul_r15.pack(bref)); } return SRSASN_SUCCESS; @@ -102835,7 +102685,7 @@ SRSASN_CODE feature_set_ul_per_cc_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ul_minus256_qam_r15_present, 1)); if (supported_mimo_cap_ul_r15_present) { - HANDLE_CODE(unpack_enum(supported_mimo_cap_ul_r15, bref)); + HANDLE_CODE(supported_mimo_cap_ul_r15.unpack(bref)); } return SRSASN_SUCCESS; @@ -102855,13 +102705,13 @@ void feature_set_ul_per_cc_r15_s::to_json(json_writer& j) const // FeatureSetUL-r15 ::= SEQUENCE SRSASN_CODE feature_set_ul_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_dyn_seq_of(bref, feature_set_per_cc_list_ul_r15, 1, 32, UnalignedIntegerPacker(0, 32))); + HANDLE_CODE(pack_dyn_seq_of(bref, feature_set_per_cc_list_ul_r15, 1, 32, integer_packer(0, 32))); return SRSASN_SUCCESS; } SRSASN_CODE feature_set_ul_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_dyn_seq_of(feature_set_per_cc_list_ul_r15, bref, 1, 32, UnalignedIntegerPacker(0, 32))); + HANDLE_CODE(unpack_dyn_seq_of(feature_set_per_cc_list_ul_r15, bref, 1, 32, integer_packer(0, 32))); return SRSASN_SUCCESS; } @@ -102960,17 +102810,17 @@ void feature_sets_eutra_r15_s::to_json(json_writer& j) const // IRAT-ParametersCDMA2000-1XRTT ::= SEQUENCE SRSASN_CODE irat_params_cdma2000_minus1_xrtt_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_dyn_seq_of(bref, supported_band_list1_xrtt, 1, 32, EnumPacker())); - HANDLE_CODE(pack_enum(bref, tx_cfg1_xrtt)); - HANDLE_CODE(pack_enum(bref, rx_cfg1_xrtt)); + HANDLE_CODE(pack_dyn_seq_of(bref, supported_band_list1_xrtt, 1, 32)); + HANDLE_CODE(tx_cfg1_xrtt.pack(bref)); + HANDLE_CODE(rx_cfg1_xrtt.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE irat_params_cdma2000_minus1_xrtt_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_dyn_seq_of(supported_band_list1_xrtt, bref, 1, 32, EnumPacker())); - HANDLE_CODE(unpack_enum(tx_cfg1_xrtt, bref)); - HANDLE_CODE(unpack_enum(rx_cfg1_xrtt, bref)); + HANDLE_CODE(unpack_dyn_seq_of(supported_band_list1_xrtt, bref, 1, 32)); + HANDLE_CODE(tx_cfg1_xrtt.unpack(bref)); + HANDLE_CODE(rx_cfg1_xrtt.unpack(bref)); return SRSASN_SUCCESS; } @@ -102990,17 +102840,17 @@ void irat_params_cdma2000_minus1_xrtt_s::to_json(json_writer& j) const // IRAT-ParametersCDMA2000-HRPD ::= SEQUENCE SRSASN_CODE irat_params_cdma2000_hrpd_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_dyn_seq_of(bref, supported_band_list_hrpd, 1, 32, EnumPacker())); - HANDLE_CODE(pack_enum(bref, tx_cfg_hrpd)); - HANDLE_CODE(pack_enum(bref, rx_cfg_hrpd)); + HANDLE_CODE(pack_dyn_seq_of(bref, supported_band_list_hrpd, 1, 32)); + HANDLE_CODE(tx_cfg_hrpd.pack(bref)); + HANDLE_CODE(rx_cfg_hrpd.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE irat_params_cdma2000_hrpd_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_dyn_seq_of(supported_band_list_hrpd, bref, 1, 32, EnumPacker())); - HANDLE_CODE(unpack_enum(tx_cfg_hrpd, bref)); - HANDLE_CODE(unpack_enum(rx_cfg_hrpd, bref)); + HANDLE_CODE(unpack_dyn_seq_of(supported_band_list_hrpd, bref, 1, 32)); + HANDLE_CODE(tx_cfg_hrpd.unpack(bref)); + HANDLE_CODE(rx_cfg_hrpd.unpack(bref)); return SRSASN_SUCCESS; } @@ -103020,14 +102870,14 @@ void irat_params_cdma2000_hrpd_s::to_json(json_writer& j) const // IRAT-ParametersGERAN ::= SEQUENCE SRSASN_CODE irat_params_geran_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_dyn_seq_of(bref, supported_band_list_geran, 1, 64, EnumPacker())); + HANDLE_CODE(pack_dyn_seq_of(bref, supported_band_list_geran, 1, 64)); HANDLE_CODE(bref.pack(inter_rat_ps_ho_to_geran, 1)); return SRSASN_SUCCESS; } SRSASN_CODE irat_params_geran_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_dyn_seq_of(supported_band_list_geran, bref, 1, 64, EnumPacker())); + HANDLE_CODE(unpack_dyn_seq_of(supported_band_list_geran, bref, 1, 64)); HANDLE_CODE(bref.unpack(inter_rat_ps_ho_to_geran, 1)); return SRSASN_SUCCESS; @@ -103047,13 +102897,13 @@ void irat_params_geran_s::to_json(json_writer& j) const // SupportedBandNR-r15 ::= SEQUENCE SRSASN_CODE supported_band_nr_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, band_nr_r15, (uint16_t)1, (uint16_t)1024)); + HANDLE_CODE(pack_integer(bref, band_nr_r15, (uint16_t)1u, (uint16_t)1024u)); return SRSASN_SUCCESS; } SRSASN_CODE supported_band_nr_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(band_nr_r15, bref, (uint16_t)1, (uint16_t)1024)); + HANDLE_CODE(unpack_integer(band_nr_r15, bref, (uint16_t)1u, (uint16_t)1024u)); return SRSASN_SUCCESS; } @@ -103111,13 +102961,13 @@ void irat_params_nr_r15_s::to_json(json_writer& j) const // IRAT-ParametersUTRA-FDD ::= SEQUENCE SRSASN_CODE irat_params_utra_fdd_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_dyn_seq_of(bref, supported_band_list_utra_fdd, 1, 64, EnumPacker())); + HANDLE_CODE(pack_dyn_seq_of(bref, supported_band_list_utra_fdd, 1, 64)); return SRSASN_SUCCESS; } SRSASN_CODE irat_params_utra_fdd_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_dyn_seq_of(supported_band_list_utra_fdd, bref, 1, 64, EnumPacker())); + HANDLE_CODE(unpack_dyn_seq_of(supported_band_list_utra_fdd, bref, 1, 64)); return SRSASN_SUCCESS; } @@ -103135,13 +102985,13 @@ void irat_params_utra_fdd_s::to_json(json_writer& j) const // IRAT-ParametersUTRA-TDD128 ::= SEQUENCE SRSASN_CODE irat_params_utra_tdd128_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_dyn_seq_of(bref, supported_band_list_utra_tdd128, 1, 64, EnumPacker())); + HANDLE_CODE(pack_dyn_seq_of(bref, supported_band_list_utra_tdd128, 1, 64)); return SRSASN_SUCCESS; } SRSASN_CODE irat_params_utra_tdd128_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_dyn_seq_of(supported_band_list_utra_tdd128, bref, 1, 64, EnumPacker())); + HANDLE_CODE(unpack_dyn_seq_of(supported_band_list_utra_tdd128, bref, 1, 64)); return SRSASN_SUCCESS; } @@ -103159,13 +103009,13 @@ void irat_params_utra_tdd128_s::to_json(json_writer& j) const // IRAT-ParametersUTRA-TDD384 ::= SEQUENCE SRSASN_CODE irat_params_utra_tdd384_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_dyn_seq_of(bref, supported_band_list_utra_tdd384, 1, 64, EnumPacker())); + HANDLE_CODE(pack_dyn_seq_of(bref, supported_band_list_utra_tdd384, 1, 64)); return SRSASN_SUCCESS; } SRSASN_CODE irat_params_utra_tdd384_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_dyn_seq_of(supported_band_list_utra_tdd384, bref, 1, 64, EnumPacker())); + HANDLE_CODE(unpack_dyn_seq_of(supported_band_list_utra_tdd384, bref, 1, 64)); return SRSASN_SUCCESS; } @@ -103183,13 +103033,13 @@ void irat_params_utra_tdd384_s::to_json(json_writer& j) const // IRAT-ParametersUTRA-TDD768 ::= SEQUENCE SRSASN_CODE irat_params_utra_tdd768_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_dyn_seq_of(bref, supported_band_list_utra_tdd768, 1, 64, EnumPacker())); + HANDLE_CODE(pack_dyn_seq_of(bref, supported_band_list_utra_tdd768, 1, 64)); return SRSASN_SUCCESS; } SRSASN_CODE irat_params_utra_tdd768_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_dyn_seq_of(supported_band_list_utra_tdd768, bref, 1, 64, EnumPacker())); + HANDLE_CODE(unpack_dyn_seq_of(supported_band_list_utra_tdd768, bref, 1, 64)); return SRSASN_SUCCESS; } @@ -103210,7 +103060,7 @@ SRSASN_CODE irat_params_wlan_r13_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(supported_band_list_wlan_r13_present, 1)); if (supported_band_list_wlan_r13_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, supported_band_list_wlan_r13, 1, 8, EnumPacker())); + HANDLE_CODE(pack_dyn_seq_of(bref, supported_band_list_wlan_r13, 1, 8)); } return SRSASN_SUCCESS; @@ -103220,7 +103070,7 @@ SRSASN_CODE irat_params_wlan_r13_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(supported_band_list_wlan_r13_present, 1)); if (supported_band_list_wlan_r13_present) { - HANDLE_CODE(unpack_dyn_seq_of(supported_band_list_wlan_r13, bref, 1, 8, EnumPacker())); + HANDLE_CODE(unpack_dyn_seq_of(supported_band_list_wlan_r13, bref, 1, 8)); } return SRSASN_SUCCESS; @@ -103247,16 +103097,16 @@ SRSASN_CODE skip_sf_processing_r15_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(skip_processing_ul_sub_slot_r15_present, 1)); if (skip_processing_dl_slot_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, skip_processing_dl_slot_r15, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, skip_processing_dl_slot_r15, (uint8_t)0u, (uint8_t)3u)); } if (skip_processing_dl_sub_slot_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, skip_processing_dl_sub_slot_r15, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, skip_processing_dl_sub_slot_r15, (uint8_t)0u, (uint8_t)3u)); } if (skip_processing_ul_slot_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, skip_processing_ul_slot_r15, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, skip_processing_ul_slot_r15, (uint8_t)0u, (uint8_t)3u)); } if (skip_processing_ul_sub_slot_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, skip_processing_ul_sub_slot_r15, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(pack_integer(bref, skip_processing_ul_sub_slot_r15, (uint8_t)0u, (uint8_t)3u)); } return SRSASN_SUCCESS; @@ -103269,16 +103119,16 @@ SRSASN_CODE skip_sf_processing_r15_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(skip_processing_ul_sub_slot_r15_present, 1)); if (skip_processing_dl_slot_r15_present) { - HANDLE_CODE(unpack_unalign_integer(skip_processing_dl_slot_r15, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(skip_processing_dl_slot_r15, bref, (uint8_t)0u, (uint8_t)3u)); } if (skip_processing_dl_sub_slot_r15_present) { - HANDLE_CODE(unpack_unalign_integer(skip_processing_dl_sub_slot_r15, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(skip_processing_dl_sub_slot_r15, bref, (uint8_t)0u, (uint8_t)3u)); } if (skip_processing_ul_slot_r15_present) { - HANDLE_CODE(unpack_unalign_integer(skip_processing_ul_slot_r15, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(skip_processing_ul_slot_r15, bref, (uint8_t)0u, (uint8_t)3u)); } if (skip_processing_ul_sub_slot_r15_present) { - HANDLE_CODE(unpack_unalign_integer(skip_processing_ul_sub_slot_r15, bref, (uint8_t)0, (uint8_t)3)); + HANDLE_CODE(unpack_integer(skip_processing_ul_sub_slot_r15, bref, (uint8_t)0u, (uint8_t)3u)); } return SRSASN_SUCCESS; @@ -103314,7 +103164,7 @@ SRSASN_CODE mac_params_v1530_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(sps_serving_cell_r15_present, 1)); if (min_proc_timeline_subslot_r15_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, min_proc_timeline_subslot_r15, 1, 3, EnumPacker())); + HANDLE_CODE(pack_dyn_seq_of(bref, min_proc_timeline_subslot_r15, 1, 3)); } if (skip_sf_processing_r15_present) { HANDLE_CODE(skip_sf_processing_r15.pack(bref)); @@ -103334,7 +103184,7 @@ SRSASN_CODE mac_params_v1530_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(sps_serving_cell_r15_present, 1)); if (min_proc_timeline_subslot_r15_present) { - HANDLE_CODE(unpack_dyn_seq_of(min_proc_timeline_subslot_r15, bref, 1, 3, EnumPacker())); + HANDLE_CODE(unpack_dyn_seq_of(min_proc_timeline_subslot_r15, bref, 1, 3)); } if (skip_sf_processing_r15_present) { HANDLE_CODE(skip_sf_processing_r15.unpack(bref)); @@ -103378,31 +103228,31 @@ void mac_params_v1530_s::to_json(json_writer& j) const } // MIMO-UE-BeamformedCapabilities-r13 ::= SEQUENCE -SRSASN_CODE mimo_ue_beamformed_capabilities_r13_s::pack(bit_ref& bref) const +SRSASN_CODE mimo_ue_bf_cap_r13_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(alt_codebook_r13_present, 1)); - HANDLE_CODE(pack_dyn_seq_of(bref, mimo_beamformed_capabilities_r13, 1, 4)); + HANDLE_CODE(pack_dyn_seq_of(bref, mimo_bf_cap_r13, 1, 4)); return SRSASN_SUCCESS; } -SRSASN_CODE mimo_ue_beamformed_capabilities_r13_s::unpack(bit_ref& bref) +SRSASN_CODE mimo_ue_bf_cap_r13_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(alt_codebook_r13_present, 1)); - HANDLE_CODE(unpack_dyn_seq_of(mimo_beamformed_capabilities_r13, bref, 1, 4)); + HANDLE_CODE(unpack_dyn_seq_of(mimo_bf_cap_r13, bref, 1, 4)); return SRSASN_SUCCESS; } -void mimo_ue_beamformed_capabilities_r13_s::to_json(json_writer& j) const +void mimo_ue_bf_cap_r13_s::to_json(json_writer& j) const { j.start_obj(); if (alt_codebook_r13_present) { j.write_str("altCodebook-r13", "supported"); } j.start_array("mimo-BeamformedCapabilities-r13"); - for (uint32_t i1 = 0; i1 < mimo_beamformed_capabilities_r13.size(); ++i1) { - mimo_beamformed_capabilities_r13[i1].to_json(j); + for (uint32_t i1 = 0; i1 < mimo_bf_cap_r13.size(); ++i1) { + mimo_bf_cap_r13[i1].to_json(j); } j.end_array(); j.end_obj(); @@ -103412,7 +103262,7 @@ void mimo_ue_beamformed_capabilities_r13_s::to_json(json_writer& j) const SRSASN_CODE mimo_ue_params_per_tm_r13_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(non_precoded_r13_present, 1)); - HANDLE_CODE(bref.pack(beamformed_r13_present, 1)); + HANDLE_CODE(bref.pack(bf_r13_present, 1)); HANDLE_CODE(bref.pack(ch_meas_restrict_r13_present, 1)); HANDLE_CODE(bref.pack(dmrs_enhance_r13_present, 1)); HANDLE_CODE(bref.pack(csi_rs_enhance_tdd_r13_present, 1)); @@ -103420,8 +103270,8 @@ SRSASN_CODE mimo_ue_params_per_tm_r13_s::pack(bit_ref& bref) const if (non_precoded_r13_present) { HANDLE_CODE(non_precoded_r13.pack(bref)); } - if (beamformed_r13_present) { - HANDLE_CODE(beamformed_r13.pack(bref)); + if (bf_r13_present) { + HANDLE_CODE(bf_r13.pack(bref)); } return SRSASN_SUCCESS; @@ -103429,7 +103279,7 @@ SRSASN_CODE mimo_ue_params_per_tm_r13_s::pack(bit_ref& bref) const SRSASN_CODE mimo_ue_params_per_tm_r13_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(non_precoded_r13_present, 1)); - HANDLE_CODE(bref.unpack(beamformed_r13_present, 1)); + HANDLE_CODE(bref.unpack(bf_r13_present, 1)); HANDLE_CODE(bref.unpack(ch_meas_restrict_r13_present, 1)); HANDLE_CODE(bref.unpack(dmrs_enhance_r13_present, 1)); HANDLE_CODE(bref.unpack(csi_rs_enhance_tdd_r13_present, 1)); @@ -103437,8 +103287,8 @@ SRSASN_CODE mimo_ue_params_per_tm_r13_s::unpack(bit_ref& bref) if (non_precoded_r13_present) { HANDLE_CODE(non_precoded_r13.unpack(bref)); } - if (beamformed_r13_present) { - HANDLE_CODE(beamformed_r13.unpack(bref)); + if (bf_r13_present) { + HANDLE_CODE(bf_r13.unpack(bref)); } return SRSASN_SUCCESS; @@ -103450,9 +103300,9 @@ void mimo_ue_params_per_tm_r13_s::to_json(json_writer& j) const j.write_fieldname("nonPrecoded-r13"); non_precoded_r13.to_json(j); } - if (beamformed_r13_present) { + if (bf_r13_present) { j.write_fieldname("beamformed-r13"); - beamformed_r13.to_json(j); + bf_r13.to_json(j); } if (ch_meas_restrict_r13_present) { j.write_str("channelMeasRestriction-r13", "supported"); @@ -103539,11 +103389,11 @@ SRSASN_CODE mimo_ue_params_per_tm_v1430_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(csi_report_advanced_r14_present, 1)); if (nzp_csi_rs_aperiodic_info_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, nzp_csi_rs_aperiodic_info_r14.n_max_proc_r14, (uint8_t)5, (uint8_t)32)); - HANDLE_CODE(pack_enum(bref, nzp_csi_rs_aperiodic_info_r14.n_max_res_r14)); + HANDLE_CODE(pack_integer(bref, nzp_csi_rs_aperiodic_info_r14.nmax_proc_r14, (uint8_t)5u, (uint8_t)32u)); + HANDLE_CODE(nzp_csi_rs_aperiodic_info_r14.nmax_res_r14.pack(bref)); } if (nzp_csi_rs_periodic_info_r14_present) { - HANDLE_CODE(pack_enum(bref, nzp_csi_rs_periodic_info_r14.n_max_res_r14)); + HANDLE_CODE(nzp_csi_rs_periodic_info_r14.nmax_res_r14.pack(bref)); } return SRSASN_SUCCESS; @@ -103562,11 +103412,11 @@ SRSASN_CODE mimo_ue_params_per_tm_v1430_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(csi_report_advanced_r14_present, 1)); if (nzp_csi_rs_aperiodic_info_r14_present) { - HANDLE_CODE(unpack_unalign_integer(nzp_csi_rs_aperiodic_info_r14.n_max_proc_r14, bref, (uint8_t)5, (uint8_t)32)); - HANDLE_CODE(unpack_enum(nzp_csi_rs_aperiodic_info_r14.n_max_res_r14, bref)); + HANDLE_CODE(unpack_integer(nzp_csi_rs_aperiodic_info_r14.nmax_proc_r14, bref, (uint8_t)5u, (uint8_t)32u)); + HANDLE_CODE(nzp_csi_rs_aperiodic_info_r14.nmax_res_r14.unpack(bref)); } if (nzp_csi_rs_periodic_info_r14_present) { - HANDLE_CODE(unpack_enum(nzp_csi_rs_periodic_info_r14.n_max_res_r14, bref)); + HANDLE_CODE(nzp_csi_rs_periodic_info_r14.nmax_res_r14.unpack(bref)); } return SRSASN_SUCCESS; @@ -103577,14 +103427,14 @@ void mimo_ue_params_per_tm_v1430_s::to_json(json_writer& j) const if (nzp_csi_rs_aperiodic_info_r14_present) { j.write_fieldname("nzp-CSI-RS-AperiodicInfo-r14"); j.start_obj(); - j.write_int("nMaxProc-r14", nzp_csi_rs_aperiodic_info_r14.n_max_proc_r14); - j.write_str("nMaxResource-r14", nzp_csi_rs_aperiodic_info_r14.n_max_res_r14.to_string()); + j.write_int("nMaxProc-r14", nzp_csi_rs_aperiodic_info_r14.nmax_proc_r14); + j.write_str("nMaxResource-r14", nzp_csi_rs_aperiodic_info_r14.nmax_res_r14.to_string()); j.end_obj(); } if (nzp_csi_rs_periodic_info_r14_present) { j.write_fieldname("nzp-CSI-RS-PeriodicInfo-r14"); j.start_obj(); - j.write_str("nMaxResource-r14", nzp_csi_rs_periodic_info_r14.n_max_res_r14.to_string()); + j.write_str("nMaxResource-r14", nzp_csi_rs_periodic_info_r14.nmax_res_r14.to_string()); j.end_obj(); } if (zp_csi_rs_aperiodic_info_r14_present) { @@ -103663,7 +103513,7 @@ SRSASN_CODE mimo_ue_params_per_tm_v1470_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(csi_report_advanced_max_ports_r14_present, 1)); if (csi_report_advanced_max_ports_r14_present) { - HANDLE_CODE(pack_enum(bref, csi_report_advanced_max_ports_r14)); + HANDLE_CODE(csi_report_advanced_max_ports_r14.pack(bref)); } return SRSASN_SUCCESS; @@ -103673,7 +103523,7 @@ SRSASN_CODE mimo_ue_params_per_tm_v1470_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(csi_report_advanced_max_ports_r14_present, 1)); if (csi_report_advanced_max_ports_r14_present) { - HANDLE_CODE(unpack_enum(csi_report_advanced_max_ports_r14, bref)); + HANDLE_CODE(csi_report_advanced_max_ports_r14.unpack(bref)); } return SRSASN_SUCCESS; @@ -103764,16 +103614,16 @@ void meas_params_v1020_s::to_json(json_writer& j) const SRSASN_CODE naics_cap_entry_r12_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, nof_naics_capable_cc_r12, (uint8_t)1, (uint8_t)5)); - HANDLE_CODE(pack_enum(bref, nof_aggregated_prb_r12)); + HANDLE_CODE(pack_integer(bref, nof_naics_capable_cc_r12, (uint8_t)1u, (uint8_t)5u)); + HANDLE_CODE(nof_aggregated_prb_r12.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE naics_cap_entry_r12_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(nof_naics_capable_cc_r12, bref, (uint8_t)1, (uint8_t)5)); - HANDLE_CODE(unpack_enum(nof_aggregated_prb_r12, bref)); + HANDLE_CODE(unpack_integer(nof_naics_capable_cc_r12, bref, (uint8_t)1u, (uint8_t)5u)); + HANDLE_CODE(nof_aggregated_prb_r12.unpack(bref)); return SRSASN_SUCCESS; } @@ -103859,7 +103709,7 @@ SRSASN_CODE pdcp_params_s::pack(bit_ref& bref) const HANDLE_CODE(supported_rohc_profiles.pack(bref)); if (max_num_rohc_context_sessions_present) { - HANDLE_CODE(pack_enum(bref, max_num_rohc_context_sessions)); + HANDLE_CODE(max_num_rohc_context_sessions.pack(bref)); } return SRSASN_SUCCESS; @@ -103871,7 +103721,7 @@ SRSASN_CODE pdcp_params_s::unpack(bit_ref& bref) HANDLE_CODE(supported_rohc_profiles.unpack(bref)); if (max_num_rohc_context_sessions_present) { - HANDLE_CODE(unpack_enum(max_num_rohc_context_sessions, bref)); + HANDLE_CODE(max_num_rohc_context_sessions.unpack(bref)); } return SRSASN_SUCCESS; @@ -103890,14 +103740,14 @@ void pdcp_params_s::to_json(json_writer& j) const // SupportedOperatorDic-r15 ::= SEQUENCE SRSASN_CODE supported_operator_dic_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, version_of_dictionary_r15, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, version_of_dictionary_r15, (uint8_t)0u, (uint8_t)15u)); HANDLE_CODE(associated_plmn_id_r15.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE supported_operator_dic_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(version_of_dictionary_r15, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(version_of_dictionary_r15, bref, (uint8_t)0u, (uint8_t)15u)); HANDLE_CODE(associated_plmn_id_r15.unpack(bref)); return SRSASN_SUCCESS; @@ -103995,7 +103845,7 @@ SRSASN_CODE pdcp_params_nr_r15_s::pack(bit_ref& bref) const HANDLE_CODE(rohc_profiles_r15.pack(bref)); if (rohc_context_max_sessions_r15_present) { - HANDLE_CODE(pack_enum(bref, rohc_context_max_sessions_r15)); + HANDLE_CODE(rohc_context_max_sessions_r15.pack(bref)); } HANDLE_CODE(bref.pack(rohc_profiles_ul_only_r15.profile0x0006_r15, 1)); @@ -104012,7 +103862,7 @@ SRSASN_CODE pdcp_params_nr_r15_s::unpack(bit_ref& bref) HANDLE_CODE(rohc_profiles_r15.unpack(bref)); if (rohc_context_max_sessions_r15_present) { - HANDLE_CODE(unpack_enum(rohc_context_max_sessions_r15, bref)); + HANDLE_CODE(rohc_context_max_sessions_r15.unpack(bref)); } HANDLE_CODE(bref.unpack(rohc_profiles_ul_only_r15.profile0x0006_r15, 1)); @@ -104242,10 +104092,10 @@ SRSASN_CODE phy_layer_params_v1330_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(crs_interf_mitigation_tm1to_tm9_r13_present, 1)); if (cch_interf_mitigation_max_num_ccs_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, cch_interf_mitigation_max_num_ccs_r13, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, cch_interf_mitigation_max_num_ccs_r13, (uint8_t)1u, (uint8_t)32u)); } if (crs_interf_mitigation_tm1to_tm9_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, crs_interf_mitigation_tm1to_tm9_r13, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, crs_interf_mitigation_tm1to_tm9_r13, (uint8_t)1u, (uint8_t)32u)); } return SRSASN_SUCCESS; @@ -104258,10 +104108,10 @@ SRSASN_CODE phy_layer_params_v1330_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(crs_interf_mitigation_tm1to_tm9_r13_present, 1)); if (cch_interf_mitigation_max_num_ccs_r13_present) { - HANDLE_CODE(unpack_unalign_integer(cch_interf_mitigation_max_num_ccs_r13, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(cch_interf_mitigation_max_num_ccs_r13, bref, (uint8_t)1u, (uint8_t)32u)); } if (crs_interf_mitigation_tm1to_tm9_r13_present) { - HANDLE_CODE(unpack_unalign_integer(crs_interf_mitigation_tm1to_tm9_r13, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(crs_interf_mitigation_tm1to_tm9_r13, bref, (uint8_t)1u, (uint8_t)32u)); } return SRSASN_SUCCESS; @@ -104328,14 +104178,14 @@ SRSASN_CODE phy_layer_params_v1430_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(tdd_tti_bundling_r14_present, 1)); HANDLE_CODE(bref.pack(dmrs_less_up_pts_r14_present, 1)); HANDLE_CODE(bref.pack(mimo_ue_params_v1430_present, 1)); - HANDLE_CODE(bref.pack(alternative_tbs_idx_r14_present, 1)); + HANDLE_CODE(bref.pack(alt_tbs_idx_r14_present, 1)); HANDLE_CODE(bref.pack(fe_mbms_unicast_params_r14_present, 1)); if (ce_pdsch_pusch_max_bw_r14_present) { - HANDLE_CODE(pack_enum(bref, ce_pdsch_pusch_max_bw_r14)); + HANDLE_CODE(ce_pdsch_pusch_max_bw_r14.pack(bref)); } if (ce_retuning_symbols_r14_present) { - HANDLE_CODE(pack_enum(bref, ce_retuning_symbols_r14)); + HANDLE_CODE(ce_retuning_symbols_r14.pack(bref)); } if (mimo_ue_params_v1430_present) { HANDLE_CODE(mimo_ue_params_v1430.pack(bref)); @@ -104362,14 +104212,14 @@ SRSASN_CODE phy_layer_params_v1430_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(tdd_tti_bundling_r14_present, 1)); HANDLE_CODE(bref.unpack(dmrs_less_up_pts_r14_present, 1)); HANDLE_CODE(bref.unpack(mimo_ue_params_v1430_present, 1)); - HANDLE_CODE(bref.unpack(alternative_tbs_idx_r14_present, 1)); + HANDLE_CODE(bref.unpack(alt_tbs_idx_r14_present, 1)); HANDLE_CODE(bref.unpack(fe_mbms_unicast_params_r14_present, 1)); if (ce_pdsch_pusch_max_bw_r14_present) { - HANDLE_CODE(unpack_enum(ce_pdsch_pusch_max_bw_r14, bref)); + HANDLE_CODE(ce_pdsch_pusch_max_bw_r14.unpack(bref)); } if (ce_retuning_symbols_r14_present) { - HANDLE_CODE(unpack_enum(ce_retuning_symbols_r14, bref)); + HANDLE_CODE(ce_retuning_symbols_r14.unpack(bref)); } if (mimo_ue_params_v1430_present) { HANDLE_CODE(mimo_ue_params_v1430.unpack(bref)); @@ -104426,7 +104276,7 @@ void phy_layer_params_v1430_s::to_json(json_writer& j) const j.write_fieldname("mimo-UE-Parameters-v1430"); mimo_ue_params_v1430.to_json(j); } - if (alternative_tbs_idx_r14_present) { + if (alt_tbs_idx_r14_present) { j.write_str("alternativeTBS-Index-r14", "supported"); } if (fe_mbms_unicast_params_r14_present) { @@ -104475,141 +104325,132 @@ void phy_layer_params_v1470_s::to_json(json_writer& j) const // PhyLayerParameters-v1530 ::= SEQUENCE SRSASN_CODE phy_layer_params_v1530_s::pack(bit_ref& bref) const { - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15_present, 1)); - HANDLE_CODE(bref.pack(ce_capabilities_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15_present, 1)); + HANDLE_CODE(bref.pack(ce_cap_r15_present, 1)); HANDLE_CODE(bref.pack(short_cqi_for_scell_activation_r15_present, 1)); HANDLE_CODE(bref.pack(mimo_cbsr_advanced_csi_r15_present, 1)); HANDLE_CODE(bref.pack(crs_intf_mitig_r15_present, 1)); HANDLE_CODE(bref.pack(ul_pwr_ctrl_enhance_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15_present, 1)); HANDLE_CODE(bref.pack(alt_mcs_table_r15_present, 1)); - if (stti_spt_capabilities_r15_present) { - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.aperiodic_csi_report_stti_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.dmrs_based_spdcch_mbsfn_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.dmrs_based_spdcch_non_mbsfn_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.dmrs_position_pattern_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.dmrs_sharing_subslot_pdsch_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.dmrs_repeat_subslot_pdsch_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.epdcch_spt_different_cells_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.epdcch_stti_different_cells_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.max_layers_slot_or_subslot_pusch_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.max_num_updated_csi_proc_spt_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb77_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb27_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb22_set1_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb22_set2_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.mimo_ue_params_stti_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.mimo_ue_params_stti_v1530_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.nof_blind_decodes_uss_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.pdsch_slot_subslot_pdsch_decoding_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.pwr_uci_slot_pusch_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.pwr_uci_subslot_pusch_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.slot_pdsch_tx_div_tm9and10_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.subslot_pdsch_tx_div_tm9and10_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.spdcch_different_rs_types_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.srs_dci7_triggering_fs2_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.sps_cyclic_shift_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.spdcch_reuse_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.sps_stti_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.tm8_slot_pdsch_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.tm9_slot_subslot_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.tm9_slot_subslot_mbsfn_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.tm10_slot_subslot_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.tm10_slot_subslot_mbsfn_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.tx_div_spucch_r15_present, 1)); - HANDLE_CODE(bref.pack(stti_spt_capabilities_r15.ul_async_harq_sharing_diff_tti_lens_r15_present, 1)); - if (stti_spt_capabilities_r15.max_layers_slot_or_subslot_pusch_r15_present) { - HANDLE_CODE(pack_enum(bref, stti_spt_capabilities_r15.max_layers_slot_or_subslot_pusch_r15)); - } - if (stti_spt_capabilities_r15.max_num_updated_csi_proc_spt_r15_present) { - HANDLE_CODE(pack_unalign_integer( - bref, stti_spt_capabilities_r15.max_num_updated_csi_proc_spt_r15, (uint8_t)5, (uint8_t)32)); - } - if (stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb77_r15_present) { - HANDLE_CODE(pack_unalign_integer( - bref, stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb77_r15, (uint8_t)1, (uint8_t)32)); - } - if (stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb27_r15_present) { - HANDLE_CODE(pack_unalign_integer( - bref, stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb27_r15, (uint8_t)1, (uint8_t)32)); - } - if (stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb22_set1_r15_present) { - HANDLE_CODE(pack_unalign_integer( - bref, stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb22_set1_r15, (uint8_t)1, (uint8_t)32)); - } - if (stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb22_set2_r15_present) { - HANDLE_CODE(pack_unalign_integer( - bref, stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb22_set2_r15, (uint8_t)1, (uint8_t)32)); - } - if (stti_spt_capabilities_r15.mimo_ue_params_stti_r15_present) { - HANDLE_CODE(stti_spt_capabilities_r15.mimo_ue_params_stti_r15.pack(bref)); - } - if (stti_spt_capabilities_r15.mimo_ue_params_stti_v1530_present) { - HANDLE_CODE(stti_spt_capabilities_r15.mimo_ue_params_stti_v1530.pack(bref)); - } - if (stti_spt_capabilities_r15.nof_blind_decodes_uss_r15_present) { + if (stti_spt_cap_r15_present) { + HANDLE_CODE(bref.pack(stti_spt_cap_r15.aperiodic_csi_report_stti_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.dmrs_based_spdcch_mbsfn_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.dmrs_based_spdcch_non_mbsfn_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.dmrs_position_pattern_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.dmrs_sharing_subslot_pdsch_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.dmrs_repeat_subslot_pdsch_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.epdcch_spt_different_cells_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.epdcch_stti_different_cells_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.max_layers_slot_or_subslot_pusch_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.max_num_upd_csi_proc_spt_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb77_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb27_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb22_set1_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb22_set2_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.mimo_ue_params_stti_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.mimo_ue_params_stti_v1530_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.nof_blind_decodes_uss_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.pdsch_slot_subslot_pdsch_decoding_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.pwr_uci_slot_pusch_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.pwr_uci_subslot_pusch_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.slot_pdsch_tx_div_tm9and10_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.subslot_pdsch_tx_div_tm9and10_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.spdcch_different_rs_types_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.srs_dci7_trigger_fs2_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.sps_cyclic_shift_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.spdcch_reuse_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.sps_stti_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.tm8_slot_pdsch_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.tm9_slot_subslot_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.tm9_slot_subslot_mbsfn_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.tm10_slot_subslot_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.tm10_slot_subslot_mbsfn_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.tx_div_spucch_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_cap_r15.ul_async_harq_sharing_diff_tti_lens_r15_present, 1)); + if (stti_spt_cap_r15.max_layers_slot_or_subslot_pusch_r15_present) { + HANDLE_CODE(stti_spt_cap_r15.max_layers_slot_or_subslot_pusch_r15.pack(bref)); + } + if (stti_spt_cap_r15.max_num_upd_csi_proc_spt_r15_present) { + HANDLE_CODE(pack_integer(bref, stti_spt_cap_r15.max_num_upd_csi_proc_spt_r15, (uint8_t)5u, (uint8_t)32u)); + } + if (stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb77_r15_present) { + HANDLE_CODE(pack_integer(bref, stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb77_r15, (uint8_t)1u, (uint8_t)32u)); + } + if (stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb27_r15_present) { + HANDLE_CODE(pack_integer(bref, stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb27_r15, (uint8_t)1u, (uint8_t)32u)); + } + if (stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb22_set1_r15_present) { HANDLE_CODE( - pack_unalign_integer(bref, stti_spt_capabilities_r15.nof_blind_decodes_uss_r15, (uint8_t)4, (uint8_t)32)); - } - if (stti_spt_capabilities_r15.sps_stti_r15_present) { - HANDLE_CODE(pack_enum(bref, stti_spt_capabilities_r15.sps_stti_r15)); - } - } - if (ce_capabilities_r15_present) { - HANDLE_CODE(bref.pack(ce_capabilities_r15.ce_crs_intf_mitig_r15_present, 1)); - HANDLE_CODE(bref.pack(ce_capabilities_r15.ce_cqi_alternative_table_r15_present, 1)); - HANDLE_CODE(bref.pack(ce_capabilities_r15.ce_pdsch_flex_start_prb_ce_mode_a_r15_present, 1)); - HANDLE_CODE(bref.pack(ce_capabilities_r15.ce_pdsch_flex_start_prb_ce_mode_b_r15_present, 1)); - HANDLE_CODE(bref.pack(ce_capabilities_r15.ce_pdsch_minus64_qam_r15_present, 1)); - HANDLE_CODE(bref.pack(ce_capabilities_r15.ce_pusch_flex_start_prb_ce_mode_a_r15_present, 1)); - HANDLE_CODE(bref.pack(ce_capabilities_r15.ce_pusch_flex_start_prb_ce_mode_b_r15_present, 1)); - HANDLE_CODE(bref.pack(ce_capabilities_r15.ce_pusch_sub_prb_alloc_r15_present, 1)); - HANDLE_CODE(bref.pack(ce_capabilities_r15.ce_ul_harq_ack_feedback_r15_present, 1)); - } - if (urllc_capabilities_r15_present) { - HANDLE_CODE(bref.pack(urllc_capabilities_r15.pdsch_rep_sf_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.pdsch_rep_slot_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.pdsch_rep_subslot_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.pusch_sps_multi_cfg_sf_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.pusch_sps_max_cfg_sf_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.pusch_sps_multi_cfg_slot_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.pusch_sps_max_cfg_slot_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.pusch_sps_multi_cfg_subslot_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.pusch_sps_max_cfg_subslot_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.pusch_sps_slot_rep_pcell_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.pusch_sps_slot_rep_ps_cell_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.pusch_sps_slot_rep_scell_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.pusch_sps_sf_rep_pcell_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.pusch_sps_sf_rep_ps_cell_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.pusch_sps_sf_rep_scell_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.pusch_sps_subslot_rep_pcell_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.pusch_sps_subslot_rep_ps_cell_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.pusch_sps_subslot_rep_scell_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.semi_static_cfi_r15_present, 1)); - HANDLE_CODE(bref.pack(urllc_capabilities_r15.semi_static_cfi_pattern_r15_present, 1)); - if (urllc_capabilities_r15.pusch_sps_multi_cfg_sf_r15_present) { + pack_integer(bref, stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb22_set1_r15, (uint8_t)1u, (uint8_t)32u)); + } + if (stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb22_set2_r15_present) { HANDLE_CODE( - pack_unalign_integer(bref, urllc_capabilities_r15.pusch_sps_multi_cfg_sf_r15, (uint8_t)0, (uint8_t)6)); + pack_integer(bref, stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb22_set2_r15, (uint8_t)1u, (uint8_t)32u)); } - if (urllc_capabilities_r15.pusch_sps_max_cfg_sf_r15_present) { - HANDLE_CODE(pack_unalign_integer(bref, urllc_capabilities_r15.pusch_sps_max_cfg_sf_r15, (uint8_t)0, (uint8_t)31)); + if (stti_spt_cap_r15.mimo_ue_params_stti_r15_present) { + HANDLE_CODE(stti_spt_cap_r15.mimo_ue_params_stti_r15.pack(bref)); } - if (urllc_capabilities_r15.pusch_sps_multi_cfg_slot_r15_present) { - HANDLE_CODE( - pack_unalign_integer(bref, urllc_capabilities_r15.pusch_sps_multi_cfg_slot_r15, (uint8_t)0, (uint8_t)6)); + if (stti_spt_cap_r15.mimo_ue_params_stti_v1530_present) { + HANDLE_CODE(stti_spt_cap_r15.mimo_ue_params_stti_v1530.pack(bref)); } - if (urllc_capabilities_r15.pusch_sps_max_cfg_slot_r15_present) { - HANDLE_CODE( - pack_unalign_integer(bref, urllc_capabilities_r15.pusch_sps_max_cfg_slot_r15, (uint8_t)0, (uint8_t)31)); + if (stti_spt_cap_r15.nof_blind_decodes_uss_r15_present) { + HANDLE_CODE(pack_integer(bref, stti_spt_cap_r15.nof_blind_decodes_uss_r15, (uint8_t)4u, (uint8_t)32u)); } - if (urllc_capabilities_r15.pusch_sps_multi_cfg_subslot_r15_present) { - HANDLE_CODE( - pack_unalign_integer(bref, urllc_capabilities_r15.pusch_sps_multi_cfg_subslot_r15, (uint8_t)0, (uint8_t)6)); + if (stti_spt_cap_r15.sps_stti_r15_present) { + HANDLE_CODE(stti_spt_cap_r15.sps_stti_r15.pack(bref)); } - if (urllc_capabilities_r15.pusch_sps_max_cfg_subslot_r15_present) { - HANDLE_CODE( - pack_unalign_integer(bref, urllc_capabilities_r15.pusch_sps_max_cfg_subslot_r15, (uint8_t)0, (uint8_t)31)); + } + if (ce_cap_r15_present) { + HANDLE_CODE(bref.pack(ce_cap_r15.ce_crs_intf_mitig_r15_present, 1)); + HANDLE_CODE(bref.pack(ce_cap_r15.ce_cqi_alt_table_r15_present, 1)); + HANDLE_CODE(bref.pack(ce_cap_r15.ce_pdsch_flex_start_prb_ce_mode_a_r15_present, 1)); + HANDLE_CODE(bref.pack(ce_cap_r15.ce_pdsch_flex_start_prb_ce_mode_b_r15_present, 1)); + HANDLE_CODE(bref.pack(ce_cap_r15.ce_pdsch_minus64_qam_r15_present, 1)); + HANDLE_CODE(bref.pack(ce_cap_r15.ce_pusch_flex_start_prb_ce_mode_a_r15_present, 1)); + HANDLE_CODE(bref.pack(ce_cap_r15.ce_pusch_flex_start_prb_ce_mode_b_r15_present, 1)); + HANDLE_CODE(bref.pack(ce_cap_r15.ce_pusch_sub_prb_alloc_r15_present, 1)); + HANDLE_CODE(bref.pack(ce_cap_r15.ce_ul_harq_ack_feedback_r15_present, 1)); + } + if (urllc_cap_r15_present) { + HANDLE_CODE(bref.pack(urllc_cap_r15.pdsch_rep_sf_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.pdsch_rep_slot_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.pdsch_rep_subslot_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.pusch_sps_multi_cfg_sf_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.pusch_sps_max_cfg_sf_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.pusch_sps_multi_cfg_slot_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.pusch_sps_max_cfg_slot_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.pusch_sps_multi_cfg_subslot_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.pusch_sps_max_cfg_subslot_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.pusch_sps_slot_rep_pcell_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.pusch_sps_slot_rep_ps_cell_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.pusch_sps_slot_rep_scell_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.pusch_sps_sf_rep_pcell_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.pusch_sps_sf_rep_ps_cell_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.pusch_sps_sf_rep_scell_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.pusch_sps_subslot_rep_pcell_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.pusch_sps_subslot_rep_ps_cell_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.pusch_sps_subslot_rep_scell_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.semi_static_cfi_r15_present, 1)); + HANDLE_CODE(bref.pack(urllc_cap_r15.semi_static_cfi_pattern_r15_present, 1)); + if (urllc_cap_r15.pusch_sps_multi_cfg_sf_r15_present) { + HANDLE_CODE(pack_integer(bref, urllc_cap_r15.pusch_sps_multi_cfg_sf_r15, (uint8_t)0u, (uint8_t)6u)); + } + if (urllc_cap_r15.pusch_sps_max_cfg_sf_r15_present) { + HANDLE_CODE(pack_integer(bref, urllc_cap_r15.pusch_sps_max_cfg_sf_r15, (uint8_t)0u, (uint8_t)31u)); + } + if (urllc_cap_r15.pusch_sps_multi_cfg_slot_r15_present) { + HANDLE_CODE(pack_integer(bref, urllc_cap_r15.pusch_sps_multi_cfg_slot_r15, (uint8_t)0u, (uint8_t)6u)); + } + if (urllc_cap_r15.pusch_sps_max_cfg_slot_r15_present) { + HANDLE_CODE(pack_integer(bref, urllc_cap_r15.pusch_sps_max_cfg_slot_r15, (uint8_t)0u, (uint8_t)31u)); + } + if (urllc_cap_r15.pusch_sps_multi_cfg_subslot_r15_present) { + HANDLE_CODE(pack_integer(bref, urllc_cap_r15.pusch_sps_multi_cfg_subslot_r15, (uint8_t)0u, (uint8_t)6u)); + } + if (urllc_cap_r15.pusch_sps_max_cfg_subslot_r15_present) { + HANDLE_CODE(pack_integer(bref, urllc_cap_r15.pusch_sps_max_cfg_subslot_r15, (uint8_t)0u, (uint8_t)31u)); } } @@ -104617,142 +104458,134 @@ SRSASN_CODE phy_layer_params_v1530_s::pack(bit_ref& bref) const } SRSASN_CODE phy_layer_params_v1530_s::unpack(bit_ref& bref) { - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15_present, 1)); - HANDLE_CODE(bref.unpack(ce_capabilities_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15_present, 1)); + HANDLE_CODE(bref.unpack(ce_cap_r15_present, 1)); HANDLE_CODE(bref.unpack(short_cqi_for_scell_activation_r15_present, 1)); HANDLE_CODE(bref.unpack(mimo_cbsr_advanced_csi_r15_present, 1)); HANDLE_CODE(bref.unpack(crs_intf_mitig_r15_present, 1)); HANDLE_CODE(bref.unpack(ul_pwr_ctrl_enhance_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15_present, 1)); HANDLE_CODE(bref.unpack(alt_mcs_table_r15_present, 1)); - if (stti_spt_capabilities_r15_present) { - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.aperiodic_csi_report_stti_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.dmrs_based_spdcch_mbsfn_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.dmrs_based_spdcch_non_mbsfn_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.dmrs_position_pattern_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.dmrs_sharing_subslot_pdsch_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.dmrs_repeat_subslot_pdsch_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.epdcch_spt_different_cells_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.epdcch_stti_different_cells_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.max_layers_slot_or_subslot_pusch_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.max_num_updated_csi_proc_spt_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb77_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb27_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb22_set1_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb22_set2_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.mimo_ue_params_stti_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.mimo_ue_params_stti_v1530_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.nof_blind_decodes_uss_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.pdsch_slot_subslot_pdsch_decoding_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.pwr_uci_slot_pusch_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.pwr_uci_subslot_pusch_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.slot_pdsch_tx_div_tm9and10_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.subslot_pdsch_tx_div_tm9and10_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.spdcch_different_rs_types_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.srs_dci7_triggering_fs2_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.sps_cyclic_shift_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.spdcch_reuse_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.sps_stti_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.tm8_slot_pdsch_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.tm9_slot_subslot_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.tm9_slot_subslot_mbsfn_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.tm10_slot_subslot_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.tm10_slot_subslot_mbsfn_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.tx_div_spucch_r15_present, 1)); - HANDLE_CODE(bref.unpack(stti_spt_capabilities_r15.ul_async_harq_sharing_diff_tti_lens_r15_present, 1)); - if (stti_spt_capabilities_r15.max_layers_slot_or_subslot_pusch_r15_present) { - HANDLE_CODE(unpack_enum(stti_spt_capabilities_r15.max_layers_slot_or_subslot_pusch_r15, bref)); - } - if (stti_spt_capabilities_r15.max_num_updated_csi_proc_spt_r15_present) { - HANDLE_CODE(unpack_unalign_integer( - stti_spt_capabilities_r15.max_num_updated_csi_proc_spt_r15, bref, (uint8_t)5, (uint8_t)32)); - } - if (stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb77_r15_present) { - HANDLE_CODE(unpack_unalign_integer( - stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb77_r15, bref, (uint8_t)1, (uint8_t)32)); - } - if (stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb27_r15_present) { - HANDLE_CODE(unpack_unalign_integer( - stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb27_r15, bref, (uint8_t)1, (uint8_t)32)); - } - if (stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb22_set1_r15_present) { - HANDLE_CODE(unpack_unalign_integer( - stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb22_set1_r15, bref, (uint8_t)1, (uint8_t)32)); - } - if (stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb22_set2_r15_present) { - HANDLE_CODE(unpack_unalign_integer( - stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb22_set2_r15, bref, (uint8_t)1, (uint8_t)32)); - } - if (stti_spt_capabilities_r15.mimo_ue_params_stti_r15_present) { - HANDLE_CODE(stti_spt_capabilities_r15.mimo_ue_params_stti_r15.unpack(bref)); - } - if (stti_spt_capabilities_r15.mimo_ue_params_stti_v1530_present) { - HANDLE_CODE(stti_spt_capabilities_r15.mimo_ue_params_stti_v1530.unpack(bref)); - } - if (stti_spt_capabilities_r15.nof_blind_decodes_uss_r15_present) { + if (stti_spt_cap_r15_present) { + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.aperiodic_csi_report_stti_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.dmrs_based_spdcch_mbsfn_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.dmrs_based_spdcch_non_mbsfn_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.dmrs_position_pattern_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.dmrs_sharing_subslot_pdsch_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.dmrs_repeat_subslot_pdsch_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.epdcch_spt_different_cells_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.epdcch_stti_different_cells_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.max_layers_slot_or_subslot_pusch_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.max_num_upd_csi_proc_spt_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb77_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb27_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb22_set1_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb22_set2_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.mimo_ue_params_stti_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.mimo_ue_params_stti_v1530_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.nof_blind_decodes_uss_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.pdsch_slot_subslot_pdsch_decoding_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.pwr_uci_slot_pusch_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.pwr_uci_subslot_pusch_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.slot_pdsch_tx_div_tm9and10_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.subslot_pdsch_tx_div_tm9and10_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.spdcch_different_rs_types_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.srs_dci7_trigger_fs2_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.sps_cyclic_shift_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.spdcch_reuse_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.sps_stti_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.tm8_slot_pdsch_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.tm9_slot_subslot_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.tm9_slot_subslot_mbsfn_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.tm10_slot_subslot_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.tm10_slot_subslot_mbsfn_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.tx_div_spucch_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_cap_r15.ul_async_harq_sharing_diff_tti_lens_r15_present, 1)); + if (stti_spt_cap_r15.max_layers_slot_or_subslot_pusch_r15_present) { + HANDLE_CODE(stti_spt_cap_r15.max_layers_slot_or_subslot_pusch_r15.unpack(bref)); + } + if (stti_spt_cap_r15.max_num_upd_csi_proc_spt_r15_present) { + HANDLE_CODE(unpack_integer(stti_spt_cap_r15.max_num_upd_csi_proc_spt_r15, bref, (uint8_t)5u, (uint8_t)32u)); + } + if (stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb77_r15_present) { HANDLE_CODE( - unpack_unalign_integer(stti_spt_capabilities_r15.nof_blind_decodes_uss_r15, bref, (uint8_t)4, (uint8_t)32)); - } - if (stti_spt_capabilities_r15.sps_stti_r15_present) { - HANDLE_CODE(unpack_enum(stti_spt_capabilities_r15.sps_stti_r15, bref)); - } - } - if (ce_capabilities_r15_present) { - HANDLE_CODE(bref.unpack(ce_capabilities_r15.ce_crs_intf_mitig_r15_present, 1)); - HANDLE_CODE(bref.unpack(ce_capabilities_r15.ce_cqi_alternative_table_r15_present, 1)); - HANDLE_CODE(bref.unpack(ce_capabilities_r15.ce_pdsch_flex_start_prb_ce_mode_a_r15_present, 1)); - HANDLE_CODE(bref.unpack(ce_capabilities_r15.ce_pdsch_flex_start_prb_ce_mode_b_r15_present, 1)); - HANDLE_CODE(bref.unpack(ce_capabilities_r15.ce_pdsch_minus64_qam_r15_present, 1)); - HANDLE_CODE(bref.unpack(ce_capabilities_r15.ce_pusch_flex_start_prb_ce_mode_a_r15_present, 1)); - HANDLE_CODE(bref.unpack(ce_capabilities_r15.ce_pusch_flex_start_prb_ce_mode_b_r15_present, 1)); - HANDLE_CODE(bref.unpack(ce_capabilities_r15.ce_pusch_sub_prb_alloc_r15_present, 1)); - HANDLE_CODE(bref.unpack(ce_capabilities_r15.ce_ul_harq_ack_feedback_r15_present, 1)); - } - if (urllc_capabilities_r15_present) { - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.pdsch_rep_sf_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.pdsch_rep_slot_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.pdsch_rep_subslot_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.pusch_sps_multi_cfg_sf_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.pusch_sps_max_cfg_sf_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.pusch_sps_multi_cfg_slot_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.pusch_sps_max_cfg_slot_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.pusch_sps_multi_cfg_subslot_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.pusch_sps_max_cfg_subslot_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.pusch_sps_slot_rep_pcell_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.pusch_sps_slot_rep_ps_cell_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.pusch_sps_slot_rep_scell_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.pusch_sps_sf_rep_pcell_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.pusch_sps_sf_rep_ps_cell_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.pusch_sps_sf_rep_scell_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.pusch_sps_subslot_rep_pcell_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.pusch_sps_subslot_rep_ps_cell_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.pusch_sps_subslot_rep_scell_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.semi_static_cfi_r15_present, 1)); - HANDLE_CODE(bref.unpack(urllc_capabilities_r15.semi_static_cfi_pattern_r15_present, 1)); - if (urllc_capabilities_r15.pusch_sps_multi_cfg_sf_r15_present) { - HANDLE_CODE( - unpack_unalign_integer(urllc_capabilities_r15.pusch_sps_multi_cfg_sf_r15, bref, (uint8_t)0, (uint8_t)6)); + unpack_integer(stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb77_r15, bref, (uint8_t)1u, (uint8_t)32u)); } - if (urllc_capabilities_r15.pusch_sps_max_cfg_sf_r15_present) { + if (stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb27_r15_present) { HANDLE_CODE( - unpack_unalign_integer(urllc_capabilities_r15.pusch_sps_max_cfg_sf_r15, bref, (uint8_t)0, (uint8_t)31)); + unpack_integer(stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb27_r15, bref, (uint8_t)1u, (uint8_t)32u)); } - if (urllc_capabilities_r15.pusch_sps_multi_cfg_slot_r15_present) { + if (stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb22_set1_r15_present) { HANDLE_CODE( - unpack_unalign_integer(urllc_capabilities_r15.pusch_sps_multi_cfg_slot_r15, bref, (uint8_t)0, (uint8_t)6)); + unpack_integer(stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb22_set1_r15, bref, (uint8_t)1u, (uint8_t)32u)); } - if (urllc_capabilities_r15.pusch_sps_max_cfg_slot_r15_present) { + if (stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb22_set2_r15_present) { HANDLE_CODE( - unpack_unalign_integer(urllc_capabilities_r15.pusch_sps_max_cfg_slot_r15, bref, (uint8_t)0, (uint8_t)31)); + unpack_integer(stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb22_set2_r15, bref, (uint8_t)1u, (uint8_t)32u)); } - if (urllc_capabilities_r15.pusch_sps_multi_cfg_subslot_r15_present) { - HANDLE_CODE( - unpack_unalign_integer(urllc_capabilities_r15.pusch_sps_multi_cfg_subslot_r15, bref, (uint8_t)0, (uint8_t)6)); + if (stti_spt_cap_r15.mimo_ue_params_stti_r15_present) { + HANDLE_CODE(stti_spt_cap_r15.mimo_ue_params_stti_r15.unpack(bref)); } - if (urllc_capabilities_r15.pusch_sps_max_cfg_subslot_r15_present) { - HANDLE_CODE( - unpack_unalign_integer(urllc_capabilities_r15.pusch_sps_max_cfg_subslot_r15, bref, (uint8_t)0, (uint8_t)31)); + if (stti_spt_cap_r15.mimo_ue_params_stti_v1530_present) { + HANDLE_CODE(stti_spt_cap_r15.mimo_ue_params_stti_v1530.unpack(bref)); + } + if (stti_spt_cap_r15.nof_blind_decodes_uss_r15_present) { + HANDLE_CODE(unpack_integer(stti_spt_cap_r15.nof_blind_decodes_uss_r15, bref, (uint8_t)4u, (uint8_t)32u)); + } + if (stti_spt_cap_r15.sps_stti_r15_present) { + HANDLE_CODE(stti_spt_cap_r15.sps_stti_r15.unpack(bref)); + } + } + if (ce_cap_r15_present) { + HANDLE_CODE(bref.unpack(ce_cap_r15.ce_crs_intf_mitig_r15_present, 1)); + HANDLE_CODE(bref.unpack(ce_cap_r15.ce_cqi_alt_table_r15_present, 1)); + HANDLE_CODE(bref.unpack(ce_cap_r15.ce_pdsch_flex_start_prb_ce_mode_a_r15_present, 1)); + HANDLE_CODE(bref.unpack(ce_cap_r15.ce_pdsch_flex_start_prb_ce_mode_b_r15_present, 1)); + HANDLE_CODE(bref.unpack(ce_cap_r15.ce_pdsch_minus64_qam_r15_present, 1)); + HANDLE_CODE(bref.unpack(ce_cap_r15.ce_pusch_flex_start_prb_ce_mode_a_r15_present, 1)); + HANDLE_CODE(bref.unpack(ce_cap_r15.ce_pusch_flex_start_prb_ce_mode_b_r15_present, 1)); + HANDLE_CODE(bref.unpack(ce_cap_r15.ce_pusch_sub_prb_alloc_r15_present, 1)); + HANDLE_CODE(bref.unpack(ce_cap_r15.ce_ul_harq_ack_feedback_r15_present, 1)); + } + if (urllc_cap_r15_present) { + HANDLE_CODE(bref.unpack(urllc_cap_r15.pdsch_rep_sf_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.pdsch_rep_slot_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.pdsch_rep_subslot_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.pusch_sps_multi_cfg_sf_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.pusch_sps_max_cfg_sf_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.pusch_sps_multi_cfg_slot_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.pusch_sps_max_cfg_slot_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.pusch_sps_multi_cfg_subslot_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.pusch_sps_max_cfg_subslot_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.pusch_sps_slot_rep_pcell_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.pusch_sps_slot_rep_ps_cell_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.pusch_sps_slot_rep_scell_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.pusch_sps_sf_rep_pcell_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.pusch_sps_sf_rep_ps_cell_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.pusch_sps_sf_rep_scell_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.pusch_sps_subslot_rep_pcell_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.pusch_sps_subslot_rep_ps_cell_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.pusch_sps_subslot_rep_scell_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.semi_static_cfi_r15_present, 1)); + HANDLE_CODE(bref.unpack(urllc_cap_r15.semi_static_cfi_pattern_r15_present, 1)); + if (urllc_cap_r15.pusch_sps_multi_cfg_sf_r15_present) { + HANDLE_CODE(unpack_integer(urllc_cap_r15.pusch_sps_multi_cfg_sf_r15, bref, (uint8_t)0u, (uint8_t)6u)); + } + if (urllc_cap_r15.pusch_sps_max_cfg_sf_r15_present) { + HANDLE_CODE(unpack_integer(urllc_cap_r15.pusch_sps_max_cfg_sf_r15, bref, (uint8_t)0u, (uint8_t)31u)); + } + if (urllc_cap_r15.pusch_sps_multi_cfg_slot_r15_present) { + HANDLE_CODE(unpack_integer(urllc_cap_r15.pusch_sps_multi_cfg_slot_r15, bref, (uint8_t)0u, (uint8_t)6u)); + } + if (urllc_cap_r15.pusch_sps_max_cfg_slot_r15_present) { + HANDLE_CODE(unpack_integer(urllc_cap_r15.pusch_sps_max_cfg_slot_r15, bref, (uint8_t)0u, (uint8_t)31u)); + } + if (urllc_cap_r15.pusch_sps_multi_cfg_subslot_r15_present) { + HANDLE_CODE(unpack_integer(urllc_cap_r15.pusch_sps_multi_cfg_subslot_r15, bref, (uint8_t)0u, (uint8_t)6u)); + } + if (urllc_cap_r15.pusch_sps_max_cfg_subslot_r15_present) { + HANDLE_CODE(unpack_integer(urllc_cap_r15.pusch_sps_max_cfg_subslot_r15, bref, (uint8_t)0u, (uint8_t)31u)); } } @@ -104761,148 +104594,145 @@ SRSASN_CODE phy_layer_params_v1530_s::unpack(bit_ref& bref) void phy_layer_params_v1530_s::to_json(json_writer& j) const { j.start_obj(); - if (stti_spt_capabilities_r15_present) { + if (stti_spt_cap_r15_present) { j.write_fieldname("stti-SPT-Capabilities-r15"); j.start_obj(); - if (stti_spt_capabilities_r15.aperiodic_csi_report_stti_r15_present) { + if (stti_spt_cap_r15.aperiodic_csi_report_stti_r15_present) { j.write_str("aperiodicCsi-ReportingSTTI-r15", "supported"); } - if (stti_spt_capabilities_r15.dmrs_based_spdcch_mbsfn_r15_present) { + if (stti_spt_cap_r15.dmrs_based_spdcch_mbsfn_r15_present) { j.write_str("dmrs-BasedSPDCCH-MBSFN-r15", "supported"); } - if (stti_spt_capabilities_r15.dmrs_based_spdcch_non_mbsfn_r15_present) { + if (stti_spt_cap_r15.dmrs_based_spdcch_non_mbsfn_r15_present) { j.write_str("dmrs-BasedSPDCCH-nonMBSFN-r15", "supported"); } - if (stti_spt_capabilities_r15.dmrs_position_pattern_r15_present) { + if (stti_spt_cap_r15.dmrs_position_pattern_r15_present) { j.write_str("dmrs-PositionPattern-r15", "supported"); } - if (stti_spt_capabilities_r15.dmrs_sharing_subslot_pdsch_r15_present) { + if (stti_spt_cap_r15.dmrs_sharing_subslot_pdsch_r15_present) { j.write_str("dmrs-SharingSubslotPDSCH-r15", "supported"); } - if (stti_spt_capabilities_r15.dmrs_repeat_subslot_pdsch_r15_present) { + if (stti_spt_cap_r15.dmrs_repeat_subslot_pdsch_r15_present) { j.write_str("dmrs-RepetitionSubslotPDSCH-r15", "supported"); } - if (stti_spt_capabilities_r15.epdcch_spt_different_cells_r15_present) { + if (stti_spt_cap_r15.epdcch_spt_different_cells_r15_present) { j.write_str("epdcch-SPT-differentCells-r15", "supported"); } - if (stti_spt_capabilities_r15.epdcch_stti_different_cells_r15_present) { + if (stti_spt_cap_r15.epdcch_stti_different_cells_r15_present) { j.write_str("epdcch-STTI-differentCells-r15", "supported"); } - if (stti_spt_capabilities_r15.max_layers_slot_or_subslot_pusch_r15_present) { - j.write_str("maxLayersSlotOrSubslotPUSCH-r15", - stti_spt_capabilities_r15.max_layers_slot_or_subslot_pusch_r15.to_string()); + if (stti_spt_cap_r15.max_layers_slot_or_subslot_pusch_r15_present) { + j.write_str("maxLayersSlotOrSubslotPUSCH-r15", stti_spt_cap_r15.max_layers_slot_or_subslot_pusch_r15.to_string()); } - if (stti_spt_capabilities_r15.max_num_updated_csi_proc_spt_r15_present) { - j.write_int("maxNumberUpdatedCSI-Proc-SPT-r15", stti_spt_capabilities_r15.max_num_updated_csi_proc_spt_r15); + if (stti_spt_cap_r15.max_num_upd_csi_proc_spt_r15_present) { + j.write_int("maxNumberUpdatedCSI-Proc-SPT-r15", stti_spt_cap_r15.max_num_upd_csi_proc_spt_r15); } - if (stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb77_r15_present) { - j.write_int("maxNumberUpdatedCSI-Proc-STTI-Comb77-r15", - stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb77_r15); + if (stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb77_r15_present) { + j.write_int("maxNumberUpdatedCSI-Proc-STTI-Comb77-r15", stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb77_r15); } - if (stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb27_r15_present) { - j.write_int("maxNumberUpdatedCSI-Proc-STTI-Comb27-r15", - stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb27_r15); + if (stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb27_r15_present) { + j.write_int("maxNumberUpdatedCSI-Proc-STTI-Comb27-r15", stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb27_r15); } - if (stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb22_set1_r15_present) { + if (stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb22_set1_r15_present) { j.write_int("maxNumberUpdatedCSI-Proc-STTI-Comb22-Set1-r15", - stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb22_set1_r15); + stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb22_set1_r15); } - if (stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb22_set2_r15_present) { + if (stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb22_set2_r15_present) { j.write_int("maxNumberUpdatedCSI-Proc-STTI-Comb22-Set2-r15", - stti_spt_capabilities_r15.max_num_updated_csi_proc_stti_comb22_set2_r15); + stti_spt_cap_r15.max_num_upd_csi_proc_stti_comb22_set2_r15); } - if (stti_spt_capabilities_r15.mimo_ue_params_stti_r15_present) { + if (stti_spt_cap_r15.mimo_ue_params_stti_r15_present) { j.write_fieldname("mimo-UE-ParametersSTTI-r15"); - stti_spt_capabilities_r15.mimo_ue_params_stti_r15.to_json(j); + stti_spt_cap_r15.mimo_ue_params_stti_r15.to_json(j); } - if (stti_spt_capabilities_r15.mimo_ue_params_stti_v1530_present) { + if (stti_spt_cap_r15.mimo_ue_params_stti_v1530_present) { j.write_fieldname("mimo-UE-ParametersSTTI-v1530"); - stti_spt_capabilities_r15.mimo_ue_params_stti_v1530.to_json(j); + stti_spt_cap_r15.mimo_ue_params_stti_v1530.to_json(j); } - if (stti_spt_capabilities_r15.nof_blind_decodes_uss_r15_present) { - j.write_int("numberOfBlindDecodesUSS-r15", stti_spt_capabilities_r15.nof_blind_decodes_uss_r15); + if (stti_spt_cap_r15.nof_blind_decodes_uss_r15_present) { + j.write_int("numberOfBlindDecodesUSS-r15", stti_spt_cap_r15.nof_blind_decodes_uss_r15); } - if (stti_spt_capabilities_r15.pdsch_slot_subslot_pdsch_decoding_r15_present) { + if (stti_spt_cap_r15.pdsch_slot_subslot_pdsch_decoding_r15_present) { j.write_str("pdsch-SlotSubslotPDSCH-Decoding-r15", "supported"); } - if (stti_spt_capabilities_r15.pwr_uci_slot_pusch_present) { + if (stti_spt_cap_r15.pwr_uci_slot_pusch_present) { j.write_str("powerUCI-SlotPUSCH", "supported"); } - if (stti_spt_capabilities_r15.pwr_uci_subslot_pusch_present) { + if (stti_spt_cap_r15.pwr_uci_subslot_pusch_present) { j.write_str("powerUCI-SubslotPUSCH", "supported"); } - if (stti_spt_capabilities_r15.slot_pdsch_tx_div_tm9and10_present) { + if (stti_spt_cap_r15.slot_pdsch_tx_div_tm9and10_present) { j.write_str("slotPDSCH-TxDiv-TM9and10", "supported"); } - if (stti_spt_capabilities_r15.subslot_pdsch_tx_div_tm9and10_present) { + if (stti_spt_cap_r15.subslot_pdsch_tx_div_tm9and10_present) { j.write_str("subslotPDSCH-TxDiv-TM9and10", "supported"); } - if (stti_spt_capabilities_r15.spdcch_different_rs_types_r15_present) { + if (stti_spt_cap_r15.spdcch_different_rs_types_r15_present) { j.write_str("spdcch-differentRS-types-r15", "supported"); } - if (stti_spt_capabilities_r15.srs_dci7_triggering_fs2_r15_present) { + if (stti_spt_cap_r15.srs_dci7_trigger_fs2_r15_present) { j.write_str("srs-DCI7-TriggeringFS2-r15", "supported"); } - if (stti_spt_capabilities_r15.sps_cyclic_shift_r15_present) { + if (stti_spt_cap_r15.sps_cyclic_shift_r15_present) { j.write_str("sps-cyclicShift-r15", "supported"); } - if (stti_spt_capabilities_r15.spdcch_reuse_r15_present) { + if (stti_spt_cap_r15.spdcch_reuse_r15_present) { j.write_str("spdcch-Reuse-r15", "supported"); } - if (stti_spt_capabilities_r15.sps_stti_r15_present) { - j.write_str("sps-STTI-r15", stti_spt_capabilities_r15.sps_stti_r15.to_string()); + if (stti_spt_cap_r15.sps_stti_r15_present) { + j.write_str("sps-STTI-r15", stti_spt_cap_r15.sps_stti_r15.to_string()); } - if (stti_spt_capabilities_r15.tm8_slot_pdsch_r15_present) { + if (stti_spt_cap_r15.tm8_slot_pdsch_r15_present) { j.write_str("tm8-slotPDSCH-r15", "supported"); } - if (stti_spt_capabilities_r15.tm9_slot_subslot_r15_present) { + if (stti_spt_cap_r15.tm9_slot_subslot_r15_present) { j.write_str("tm9-slotSubslot-r15", "supported"); } - if (stti_spt_capabilities_r15.tm9_slot_subslot_mbsfn_r15_present) { + if (stti_spt_cap_r15.tm9_slot_subslot_mbsfn_r15_present) { j.write_str("tm9-slotSubslotMBSFN-r15", "supported"); } - if (stti_spt_capabilities_r15.tm10_slot_subslot_r15_present) { + if (stti_spt_cap_r15.tm10_slot_subslot_r15_present) { j.write_str("tm10-slotSubslot-r15", "supported"); } - if (stti_spt_capabilities_r15.tm10_slot_subslot_mbsfn_r15_present) { + if (stti_spt_cap_r15.tm10_slot_subslot_mbsfn_r15_present) { j.write_str("tm10-slotSubslotMBSFN-r15", "supported"); } - if (stti_spt_capabilities_r15.tx_div_spucch_r15_present) { + if (stti_spt_cap_r15.tx_div_spucch_r15_present) { j.write_str("txDiv-SPUCCH-r15", "supported"); } - if (stti_spt_capabilities_r15.ul_async_harq_sharing_diff_tti_lens_r15_present) { + if (stti_spt_cap_r15.ul_async_harq_sharing_diff_tti_lens_r15_present) { j.write_str("ul-AsyncHarqSharingDiff-TTI-Lengths-r15", "supported"); } j.end_obj(); } - if (ce_capabilities_r15_present) { + if (ce_cap_r15_present) { j.write_fieldname("ce-Capabilities-r15"); j.start_obj(); - if (ce_capabilities_r15.ce_crs_intf_mitig_r15_present) { + if (ce_cap_r15.ce_crs_intf_mitig_r15_present) { j.write_str("ce-CRS-IntfMitig-r15", "supported"); } - if (ce_capabilities_r15.ce_cqi_alternative_table_r15_present) { + if (ce_cap_r15.ce_cqi_alt_table_r15_present) { j.write_str("ce-CQI-AlternativeTable-r15", "supported"); } - if (ce_capabilities_r15.ce_pdsch_flex_start_prb_ce_mode_a_r15_present) { + if (ce_cap_r15.ce_pdsch_flex_start_prb_ce_mode_a_r15_present) { j.write_str("ce-PDSCH-FlexibleStartPRB-CE-ModeA-r15", "supported"); } - if (ce_capabilities_r15.ce_pdsch_flex_start_prb_ce_mode_b_r15_present) { + if (ce_cap_r15.ce_pdsch_flex_start_prb_ce_mode_b_r15_present) { j.write_str("ce-PDSCH-FlexibleStartPRB-CE-ModeB-r15", "supported"); } - if (ce_capabilities_r15.ce_pdsch_minus64_qam_r15_present) { + if (ce_cap_r15.ce_pdsch_minus64_qam_r15_present) { j.write_str("ce-PDSCH-64QAM-r15", "supported"); } - if (ce_capabilities_r15.ce_pusch_flex_start_prb_ce_mode_a_r15_present) { + if (ce_cap_r15.ce_pusch_flex_start_prb_ce_mode_a_r15_present) { j.write_str("ce-PUSCH-FlexibleStartPRB-CE-ModeA-r15", "supported"); } - if (ce_capabilities_r15.ce_pusch_flex_start_prb_ce_mode_b_r15_present) { + if (ce_cap_r15.ce_pusch_flex_start_prb_ce_mode_b_r15_present) { j.write_str("ce-PUSCH-FlexibleStartPRB-CE-ModeB-r15", "supported"); } - if (ce_capabilities_r15.ce_pusch_sub_prb_alloc_r15_present) { + if (ce_cap_r15.ce_pusch_sub_prb_alloc_r15_present) { j.write_str("ce-PUSCH-SubPRB-Allocation-r15", "supported"); } - if (ce_capabilities_r15.ce_ul_harq_ack_feedback_r15_present) { + if (ce_cap_r15.ce_ul_harq_ack_feedback_r15_present) { j.write_str("ce-UL-HARQ-ACK-Feedback-r15", "supported"); } j.end_obj(); @@ -104919,67 +104749,67 @@ void phy_layer_params_v1530_s::to_json(json_writer& j) const if (ul_pwr_ctrl_enhance_r15_present) { j.write_str("ul-PowerControlEnhancements-r15", "supported"); } - if (urllc_capabilities_r15_present) { + if (urllc_cap_r15_present) { j.write_fieldname("urllc-Capabilities-r15"); j.start_obj(); - if (urllc_capabilities_r15.pdsch_rep_sf_r15_present) { + if (urllc_cap_r15.pdsch_rep_sf_r15_present) { j.write_str("pdsch-RepSubframe-r15", "supported"); } - if (urllc_capabilities_r15.pdsch_rep_slot_r15_present) { + if (urllc_cap_r15.pdsch_rep_slot_r15_present) { j.write_str("pdsch-RepSlot-r15", "supported"); } - if (urllc_capabilities_r15.pdsch_rep_subslot_r15_present) { + if (urllc_cap_r15.pdsch_rep_subslot_r15_present) { j.write_str("pdsch-RepSubslot-r15", "supported"); } - if (urllc_capabilities_r15.pusch_sps_multi_cfg_sf_r15_present) { - j.write_int("pusch-SPS-MultiConfigSubframe-r15", urllc_capabilities_r15.pusch_sps_multi_cfg_sf_r15); + if (urllc_cap_r15.pusch_sps_multi_cfg_sf_r15_present) { + j.write_int("pusch-SPS-MultiConfigSubframe-r15", urllc_cap_r15.pusch_sps_multi_cfg_sf_r15); } - if (urllc_capabilities_r15.pusch_sps_max_cfg_sf_r15_present) { - j.write_int("pusch-SPS-MaxConfigSubframe-r15", urllc_capabilities_r15.pusch_sps_max_cfg_sf_r15); + if (urllc_cap_r15.pusch_sps_max_cfg_sf_r15_present) { + j.write_int("pusch-SPS-MaxConfigSubframe-r15", urllc_cap_r15.pusch_sps_max_cfg_sf_r15); } - if (urllc_capabilities_r15.pusch_sps_multi_cfg_slot_r15_present) { - j.write_int("pusch-SPS-MultiConfigSlot-r15", urllc_capabilities_r15.pusch_sps_multi_cfg_slot_r15); + if (urllc_cap_r15.pusch_sps_multi_cfg_slot_r15_present) { + j.write_int("pusch-SPS-MultiConfigSlot-r15", urllc_cap_r15.pusch_sps_multi_cfg_slot_r15); } - if (urllc_capabilities_r15.pusch_sps_max_cfg_slot_r15_present) { - j.write_int("pusch-SPS-MaxConfigSlot-r15", urllc_capabilities_r15.pusch_sps_max_cfg_slot_r15); + if (urllc_cap_r15.pusch_sps_max_cfg_slot_r15_present) { + j.write_int("pusch-SPS-MaxConfigSlot-r15", urllc_cap_r15.pusch_sps_max_cfg_slot_r15); } - if (urllc_capabilities_r15.pusch_sps_multi_cfg_subslot_r15_present) { - j.write_int("pusch-SPS-MultiConfigSubslot-r15", urllc_capabilities_r15.pusch_sps_multi_cfg_subslot_r15); + if (urllc_cap_r15.pusch_sps_multi_cfg_subslot_r15_present) { + j.write_int("pusch-SPS-MultiConfigSubslot-r15", urllc_cap_r15.pusch_sps_multi_cfg_subslot_r15); } - if (urllc_capabilities_r15.pusch_sps_max_cfg_subslot_r15_present) { - j.write_int("pusch-SPS-MaxConfigSubslot-r15", urllc_capabilities_r15.pusch_sps_max_cfg_subslot_r15); + if (urllc_cap_r15.pusch_sps_max_cfg_subslot_r15_present) { + j.write_int("pusch-SPS-MaxConfigSubslot-r15", urllc_cap_r15.pusch_sps_max_cfg_subslot_r15); } - if (urllc_capabilities_r15.pusch_sps_slot_rep_pcell_r15_present) { + if (urllc_cap_r15.pusch_sps_slot_rep_pcell_r15_present) { j.write_str("pusch-SPS-SlotRepPCell-r15", "supported"); } - if (urllc_capabilities_r15.pusch_sps_slot_rep_ps_cell_r15_present) { + if (urllc_cap_r15.pusch_sps_slot_rep_ps_cell_r15_present) { j.write_str("pusch-SPS-SlotRepPSCell-r15", "supported"); } - if (urllc_capabilities_r15.pusch_sps_slot_rep_scell_r15_present) { + if (urllc_cap_r15.pusch_sps_slot_rep_scell_r15_present) { j.write_str("pusch-SPS-SlotRepSCell-r15", "supported"); } - if (urllc_capabilities_r15.pusch_sps_sf_rep_pcell_r15_present) { + if (urllc_cap_r15.pusch_sps_sf_rep_pcell_r15_present) { j.write_str("pusch-SPS-SubframeRepPCell-r15", "supported"); } - if (urllc_capabilities_r15.pusch_sps_sf_rep_ps_cell_r15_present) { + if (urllc_cap_r15.pusch_sps_sf_rep_ps_cell_r15_present) { j.write_str("pusch-SPS-SubframeRepPSCell-r15", "supported"); } - if (urllc_capabilities_r15.pusch_sps_sf_rep_scell_r15_present) { + if (urllc_cap_r15.pusch_sps_sf_rep_scell_r15_present) { j.write_str("pusch-SPS-SubframeRepSCell-r15", "supported"); } - if (urllc_capabilities_r15.pusch_sps_subslot_rep_pcell_r15_present) { + if (urllc_cap_r15.pusch_sps_subslot_rep_pcell_r15_present) { j.write_str("pusch-SPS-SubslotRepPCell-r15", "supported"); } - if (urllc_capabilities_r15.pusch_sps_subslot_rep_ps_cell_r15_present) { + if (urllc_cap_r15.pusch_sps_subslot_rep_ps_cell_r15_present) { j.write_str("pusch-SPS-SubslotRepPSCell-r15", "supported"); } - if (urllc_capabilities_r15.pusch_sps_subslot_rep_scell_r15_present) { + if (urllc_cap_r15.pusch_sps_subslot_rep_scell_r15_present) { j.write_str("pusch-SPS-SubslotRepSCell-r15", "supported"); } - if (urllc_capabilities_r15.semi_static_cfi_r15_present) { + if (urllc_cap_r15.semi_static_cfi_r15_present) { j.write_str("semiStaticCFI-r15", "supported"); } - if (urllc_capabilities_r15.semi_static_cfi_pattern_r15_present) { + if (urllc_cap_r15.semi_static_cfi_pattern_r15_present) { j.write_str("semiStaticCFI-Pattern-r15", "supported"); } j.end_obj(); @@ -104993,14 +104823,14 @@ void phy_layer_params_v1530_s::to_json(json_writer& j) const // SupportedBandEUTRA ::= SEQUENCE SRSASN_CODE supported_band_eutra_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, band_eutra, (uint8_t)1, (uint8_t)64)); + HANDLE_CODE(pack_integer(bref, band_eutra, (uint8_t)1u, (uint8_t)64u)); HANDLE_CODE(bref.pack(half_duplex, 1)); return SRSASN_SUCCESS; } SRSASN_CODE supported_band_eutra_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(band_eutra, bref, (uint8_t)1, (uint8_t)64)); + HANDLE_CODE(unpack_integer(band_eutra, bref, (uint8_t)1u, (uint8_t)64u)); HANDLE_CODE(bref.unpack(half_duplex, 1)); return SRSASN_SUCCESS; @@ -105204,7 +105034,7 @@ SRSASN_CODE rf_params_v1180_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(supported_band_combination_add_r11_present, 1)); if (requested_bands_r11_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, requested_bands_r11, 1, 64, UnalignedIntegerPacker(1, 256))); + HANDLE_CODE(pack_dyn_seq_of(bref, requested_bands_r11, 1, 64, integer_packer(1, 256))); } if (supported_band_combination_add_r11_present) { HANDLE_CODE(pack_dyn_seq_of(bref, supported_band_combination_add_r11, 1, 256)); @@ -105219,7 +105049,7 @@ SRSASN_CODE rf_params_v1180_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(supported_band_combination_add_r11_present, 1)); if (requested_bands_r11_present) { - HANDLE_CODE(unpack_dyn_seq_of(requested_bands_r11, bref, 1, 64, UnalignedIntegerPacker(1, 256))); + HANDLE_CODE(unpack_dyn_seq_of(requested_bands_r11, bref, 1, 64, integer_packer(1, 256))); } if (supported_band_combination_add_r11_present) { HANDLE_CODE(unpack_dyn_seq_of(supported_band_combination_add_r11, bref, 1, 256)); @@ -105454,23 +105284,23 @@ void supported_band_eutra_v1310_s::to_json(json_writer& j) const // RF-Parameters-v1310 ::= SEQUENCE SRSASN_CODE rf_params_v1310_s::pack(bit_ref& bref) const { - HANDLE_CODE(bref.pack(e_nb_requested_params_r13_present, 1)); + HANDLE_CODE(bref.pack(enb_requested_params_r13_present, 1)); HANDLE_CODE(bref.pack(maximum_ccs_retrieval_r13_present, 1)); HANDLE_CODE(bref.pack(skip_fallback_combinations_r13_present, 1)); HANDLE_CODE(bref.pack(reduced_int_non_cont_comb_r13_present, 1)); HANDLE_CODE(bref.pack(supported_band_list_eutra_v1310_present, 1)); HANDLE_CODE(bref.pack(supported_band_combination_reduced_r13_present, 1)); - if (e_nb_requested_params_r13_present) { - HANDLE_CODE(bref.pack(e_nb_requested_params_r13.reduced_int_non_cont_comb_requested_r13_present, 1)); - HANDLE_CODE(bref.pack(e_nb_requested_params_r13.requested_ccs_dl_r13_present, 1)); - HANDLE_CODE(bref.pack(e_nb_requested_params_r13.requested_ccs_ul_r13_present, 1)); - HANDLE_CODE(bref.pack(e_nb_requested_params_r13.skip_fallback_comb_requested_r13_present, 1)); - if (e_nb_requested_params_r13.requested_ccs_dl_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, e_nb_requested_params_r13.requested_ccs_dl_r13, (uint8_t)2, (uint8_t)32)); + if (enb_requested_params_r13_present) { + HANDLE_CODE(bref.pack(enb_requested_params_r13.reduced_int_non_cont_comb_requested_r13_present, 1)); + HANDLE_CODE(bref.pack(enb_requested_params_r13.requested_ccs_dl_r13_present, 1)); + HANDLE_CODE(bref.pack(enb_requested_params_r13.requested_ccs_ul_r13_present, 1)); + HANDLE_CODE(bref.pack(enb_requested_params_r13.skip_fallback_comb_requested_r13_present, 1)); + if (enb_requested_params_r13.requested_ccs_dl_r13_present) { + HANDLE_CODE(pack_integer(bref, enb_requested_params_r13.requested_ccs_dl_r13, (uint8_t)2u, (uint8_t)32u)); } - if (e_nb_requested_params_r13.requested_ccs_ul_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, e_nb_requested_params_r13.requested_ccs_ul_r13, (uint8_t)2, (uint8_t)32)); + if (enb_requested_params_r13.requested_ccs_ul_r13_present) { + HANDLE_CODE(pack_integer(bref, enb_requested_params_r13.requested_ccs_ul_r13, (uint8_t)2u, (uint8_t)32u)); } } if (supported_band_list_eutra_v1310_present) { @@ -105484,25 +105314,23 @@ SRSASN_CODE rf_params_v1310_s::pack(bit_ref& bref) const } SRSASN_CODE rf_params_v1310_s::unpack(bit_ref& bref) { - HANDLE_CODE(bref.unpack(e_nb_requested_params_r13_present, 1)); + HANDLE_CODE(bref.unpack(enb_requested_params_r13_present, 1)); HANDLE_CODE(bref.unpack(maximum_ccs_retrieval_r13_present, 1)); HANDLE_CODE(bref.unpack(skip_fallback_combinations_r13_present, 1)); HANDLE_CODE(bref.unpack(reduced_int_non_cont_comb_r13_present, 1)); HANDLE_CODE(bref.unpack(supported_band_list_eutra_v1310_present, 1)); HANDLE_CODE(bref.unpack(supported_band_combination_reduced_r13_present, 1)); - if (e_nb_requested_params_r13_present) { - HANDLE_CODE(bref.unpack(e_nb_requested_params_r13.reduced_int_non_cont_comb_requested_r13_present, 1)); - HANDLE_CODE(bref.unpack(e_nb_requested_params_r13.requested_ccs_dl_r13_present, 1)); - HANDLE_CODE(bref.unpack(e_nb_requested_params_r13.requested_ccs_ul_r13_present, 1)); - HANDLE_CODE(bref.unpack(e_nb_requested_params_r13.skip_fallback_comb_requested_r13_present, 1)); - if (e_nb_requested_params_r13.requested_ccs_dl_r13_present) { - HANDLE_CODE( - unpack_unalign_integer(e_nb_requested_params_r13.requested_ccs_dl_r13, bref, (uint8_t)2, (uint8_t)32)); + if (enb_requested_params_r13_present) { + HANDLE_CODE(bref.unpack(enb_requested_params_r13.reduced_int_non_cont_comb_requested_r13_present, 1)); + HANDLE_CODE(bref.unpack(enb_requested_params_r13.requested_ccs_dl_r13_present, 1)); + HANDLE_CODE(bref.unpack(enb_requested_params_r13.requested_ccs_ul_r13_present, 1)); + HANDLE_CODE(bref.unpack(enb_requested_params_r13.skip_fallback_comb_requested_r13_present, 1)); + if (enb_requested_params_r13.requested_ccs_dl_r13_present) { + HANDLE_CODE(unpack_integer(enb_requested_params_r13.requested_ccs_dl_r13, bref, (uint8_t)2u, (uint8_t)32u)); } - if (e_nb_requested_params_r13.requested_ccs_ul_r13_present) { - HANDLE_CODE( - unpack_unalign_integer(e_nb_requested_params_r13.requested_ccs_ul_r13, bref, (uint8_t)2, (uint8_t)32)); + if (enb_requested_params_r13.requested_ccs_ul_r13_present) { + HANDLE_CODE(unpack_integer(enb_requested_params_r13.requested_ccs_ul_r13, bref, (uint8_t)2u, (uint8_t)32u)); } } if (supported_band_list_eutra_v1310_present) { @@ -105517,19 +105345,19 @@ SRSASN_CODE rf_params_v1310_s::unpack(bit_ref& bref) void rf_params_v1310_s::to_json(json_writer& j) const { j.start_obj(); - if (e_nb_requested_params_r13_present) { + if (enb_requested_params_r13_present) { j.write_fieldname("eNB-RequestedParameters-r13"); j.start_obj(); - if (e_nb_requested_params_r13.reduced_int_non_cont_comb_requested_r13_present) { + if (enb_requested_params_r13.reduced_int_non_cont_comb_requested_r13_present) { j.write_str("reducedIntNonContCombRequested-r13", "true"); } - if (e_nb_requested_params_r13.requested_ccs_dl_r13_present) { - j.write_int("requestedCCsDL-r13", e_nb_requested_params_r13.requested_ccs_dl_r13); + if (enb_requested_params_r13.requested_ccs_dl_r13_present) { + j.write_int("requestedCCsDL-r13", enb_requested_params_r13.requested_ccs_dl_r13); } - if (e_nb_requested_params_r13.requested_ccs_ul_r13_present) { - j.write_int("requestedCCsUL-r13", e_nb_requested_params_r13.requested_ccs_ul_r13); + if (enb_requested_params_r13.requested_ccs_ul_r13_present) { + j.write_int("requestedCCsUL-r13", enb_requested_params_r13.requested_ccs_ul_r13); } - if (e_nb_requested_params_r13.skip_fallback_comb_requested_r13_present) { + if (enb_requested_params_r13.skip_fallback_comb_requested_r13_present) { j.write_str("skipFallbackCombRequested-r13", "true"); } j.end_obj(); @@ -105567,7 +105395,7 @@ SRSASN_CODE supported_band_eutra_v1320_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(ue_pwr_class_n_r13_present, 1)); if (ue_pwr_class_n_r13_present) { - HANDLE_CODE(pack_enum(bref, ue_pwr_class_n_r13)); + HANDLE_CODE(ue_pwr_class_n_r13.pack(bref)); } return SRSASN_SUCCESS; @@ -105578,7 +105406,7 @@ SRSASN_CODE supported_band_eutra_v1320_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ue_pwr_class_n_r13_present, 1)); if (ue_pwr_class_n_r13_present) { - HANDLE_CODE(unpack_enum(ue_pwr_class_n_r13, bref)); + HANDLE_CODE(ue_pwr_class_n_r13.unpack(bref)); } return SRSASN_SUCCESS; @@ -105830,7 +105658,7 @@ SRSASN_CODE rf_params_v1430_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(supported_band_combination_v1430_present, 1)); HANDLE_CODE(bref.pack(supported_band_combination_add_v1430_present, 1)); HANDLE_CODE(bref.pack(supported_band_combination_reduced_v1430_present, 1)); - HANDLE_CODE(bref.pack(e_nb_requested_params_v1430_present, 1)); + HANDLE_CODE(bref.pack(enb_requested_params_v1430_present, 1)); HANDLE_CODE(bref.pack(diff_fallback_comb_report_r14_present, 1)); if (supported_band_combination_v1430_present) { @@ -105842,9 +105670,9 @@ SRSASN_CODE rf_params_v1430_s::pack(bit_ref& bref) const if (supported_band_combination_reduced_v1430_present) { HANDLE_CODE(pack_dyn_seq_of(bref, supported_band_combination_reduced_v1430, 1, 384)); } - if (e_nb_requested_params_v1430_present) { + if (enb_requested_params_v1430_present) { HANDLE_CODE(pack_dyn_seq_of(bref, - e_nb_requested_params_v1430.requested_diff_fallback_comb_list_r14, + enb_requested_params_v1430.requested_diff_fallback_comb_list_r14, 1, 384, SeqOfPacker(1, 64, Packer()))); @@ -105857,7 +105685,7 @@ SRSASN_CODE rf_params_v1430_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(supported_band_combination_v1430_present, 1)); HANDLE_CODE(bref.unpack(supported_band_combination_add_v1430_present, 1)); HANDLE_CODE(bref.unpack(supported_band_combination_reduced_v1430_present, 1)); - HANDLE_CODE(bref.unpack(e_nb_requested_params_v1430_present, 1)); + HANDLE_CODE(bref.unpack(enb_requested_params_v1430_present, 1)); HANDLE_CODE(bref.unpack(diff_fallback_comb_report_r14_present, 1)); if (supported_band_combination_v1430_present) { @@ -105869,8 +105697,8 @@ SRSASN_CODE rf_params_v1430_s::unpack(bit_ref& bref) if (supported_band_combination_reduced_v1430_present) { HANDLE_CODE(unpack_dyn_seq_of(supported_band_combination_reduced_v1430, bref, 1, 384)); } - if (e_nb_requested_params_v1430_present) { - HANDLE_CODE(unpack_dyn_seq_of(e_nb_requested_params_v1430.requested_diff_fallback_comb_list_r14, + if (enb_requested_params_v1430_present) { + HANDLE_CODE(unpack_dyn_seq_of(enb_requested_params_v1430.requested_diff_fallback_comb_list_r14, bref, 1, 384, @@ -105903,14 +105731,14 @@ void rf_params_v1430_s::to_json(json_writer& j) const } j.end_array(); } - if (e_nb_requested_params_v1430_present) { + if (enb_requested_params_v1430_present) { j.write_fieldname("eNB-RequestedParameters-v1430"); j.start_obj(); j.start_array("requestedDiffFallbackCombList-r14"); - for (uint32_t i1 = 0; i1 < e_nb_requested_params_v1430.requested_diff_fallback_comb_list_r14.size(); ++i1) { + for (uint32_t i1 = 0; i1 < enb_requested_params_v1430.requested_diff_fallback_comb_list_r14.size(); ++i1) { j.start_array(); - for (uint32_t i2 = 0; i2 < e_nb_requested_params_v1430.requested_diff_fallback_comb_list_r14[i1].size(); ++i2) { - e_nb_requested_params_v1430.requested_diff_fallback_comb_list_r14[i1][i2].to_json(j); + for (uint32_t i2 = 0; i2 < enb_requested_params_v1430.requested_diff_fallback_comb_list_r14[i1].size(); ++i2) { + enb_requested_params_v1430.requested_diff_fallback_comb_list_r14[i1][i2].to_json(j); } j.end_array(); } @@ -106054,7 +105882,7 @@ void rf_params_v1470_s::to_json(json_writer& j) const // RF-Parameters-v1530 ::= SEQUENCE SRSASN_CODE rf_params_v1530_s::pack(bit_ref& bref) const { - HANDLE_CODE(bref.pack(s_tti_spt_supported_r15_present, 1)); + HANDLE_CODE(bref.pack(stti_spt_supported_r15_present, 1)); HANDLE_CODE(bref.pack(supported_band_combination_v1530_present, 1)); HANDLE_CODE(bref.pack(supported_band_combination_add_v1530_present, 1)); HANDLE_CODE(bref.pack(supported_band_combination_reduced_v1530_present, 1)); @@ -106074,7 +105902,7 @@ SRSASN_CODE rf_params_v1530_s::pack(bit_ref& bref) const } SRSASN_CODE rf_params_v1530_s::unpack(bit_ref& bref) { - HANDLE_CODE(bref.unpack(s_tti_spt_supported_r15_present, 1)); + HANDLE_CODE(bref.unpack(stti_spt_supported_r15_present, 1)); HANDLE_CODE(bref.unpack(supported_band_combination_v1530_present, 1)); HANDLE_CODE(bref.unpack(supported_band_combination_add_v1530_present, 1)); HANDLE_CODE(bref.unpack(supported_band_combination_reduced_v1530_present, 1)); @@ -106095,7 +105923,7 @@ SRSASN_CODE rf_params_v1530_s::unpack(bit_ref& bref) void rf_params_v1530_s::to_json(json_writer& j) const { j.start_obj(); - if (s_tti_spt_supported_r15_present) { + if (stti_spt_supported_r15_present) { j.write_str("sTTI-SPT-Supported-r15", "supported"); } if (supported_band_combination_v1530_present) { @@ -106131,7 +105959,7 @@ SRSASN_CODE supported_band_eutra_v9e0_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(band_eutra_v9e0_present, 1)); if (band_eutra_v9e0_present) { - HANDLE_CODE(pack_unalign_integer(bref, band_eutra_v9e0, (uint16_t)65, (uint16_t)256)); + HANDLE_CODE(pack_integer(bref, band_eutra_v9e0, (uint16_t)65u, (uint16_t)256u)); } return SRSASN_SUCCESS; @@ -106141,7 +105969,7 @@ SRSASN_CODE supported_band_eutra_v9e0_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(band_eutra_v9e0_present, 1)); if (band_eutra_v9e0_present) { - HANDLE_CODE(unpack_unalign_integer(band_eutra_v9e0, bref, (uint16_t)65, (uint16_t)256)); + HANDLE_CODE(unpack_integer(band_eutra_v9e0, bref, (uint16_t)65u, (uint16_t)256u)); } return SRSASN_SUCCESS; @@ -106223,13 +106051,13 @@ SRSASN_CODE sl_params_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(disc_supported_proc_r12_present, 1)); if (comm_supported_bands_r12_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, comm_supported_bands_r12, 1, 64, UnalignedIntegerPacker(1, 256))); + HANDLE_CODE(pack_dyn_seq_of(bref, comm_supported_bands_r12, 1, 64, integer_packer(1, 256))); } if (disc_supported_bands_r12_present) { HANDLE_CODE(pack_dyn_seq_of(bref, disc_supported_bands_r12, 1, 64)); } if (disc_supported_proc_r12_present) { - HANDLE_CODE(pack_enum(bref, disc_supported_proc_r12)); + HANDLE_CODE(disc_supported_proc_r12.pack(bref)); } return SRSASN_SUCCESS; @@ -106245,13 +106073,13 @@ SRSASN_CODE sl_params_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(disc_supported_proc_r12_present, 1)); if (comm_supported_bands_r12_present) { - HANDLE_CODE(unpack_dyn_seq_of(comm_supported_bands_r12, bref, 1, 64, UnalignedIntegerPacker(1, 256))); + HANDLE_CODE(unpack_dyn_seq_of(comm_supported_bands_r12, bref, 1, 64, integer_packer(1, 256))); } if (disc_supported_bands_r12_present) { HANDLE_CODE(unpack_dyn_seq_of(disc_supported_bands_r12, bref, 1, 64)); } if (disc_supported_proc_r12_present) { - HANDLE_CODE(unpack_enum(disc_supported_proc_r12, bref)); + HANDLE_CODE(disc_supported_proc_r12.unpack(bref)); } return SRSASN_SUCCESS; @@ -106297,7 +106125,7 @@ SRSASN_CODE v2x_band_params_r14_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(band_params_tx_sl_r14_present, 1)); HANDLE_CODE(bref.pack(band_params_rx_sl_r14_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, v2x_freq_band_eutra_r14, (uint16_t)1, (uint16_t)256)); + HANDLE_CODE(pack_integer(bref, v2x_freq_band_eutra_r14, (uint16_t)1u, (uint16_t)256u)); if (band_params_tx_sl_r14_present) { HANDLE_CODE(band_params_tx_sl_r14.pack(bref)); } @@ -106312,7 +106140,7 @@ SRSASN_CODE v2x_band_params_r14_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(band_params_tx_sl_r14_present, 1)); HANDLE_CODE(bref.unpack(band_params_rx_sl_r14_present, 1)); - HANDLE_CODE(unpack_unalign_integer(v2x_freq_band_eutra_r14, bref, (uint16_t)1, (uint16_t)256)); + HANDLE_CODE(unpack_integer(v2x_freq_band_eutra_r14, bref, (uint16_t)1u, (uint16_t)256u)); if (band_params_tx_sl_r14_present) { HANDLE_CODE(band_params_tx_sl_r14.unpack(bref)); } @@ -106351,7 +106179,7 @@ SRSASN_CODE sl_params_v1430_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(v2x_supported_band_combination_list_r14_present, 1)); if (v2x_num_tx_rx_timing_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, v2x_num_tx_rx_timing_r14, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(pack_integer(bref, v2x_num_tx_rx_timing_r14, (uint8_t)1u, (uint8_t)16u)); } if (v2x_supported_band_combination_list_r14_present) { HANDLE_CODE( @@ -106373,7 +106201,7 @@ SRSASN_CODE sl_params_v1430_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(v2x_supported_band_combination_list_r14_present, 1)); if (v2x_num_tx_rx_timing_r14_present) { - HANDLE_CODE(unpack_unalign_integer(v2x_num_tx_rx_timing_r14, bref, (uint8_t)1, (uint8_t)16)); + HANDLE_CODE(unpack_integer(v2x_num_tx_rx_timing_r14, bref, (uint8_t)1u, (uint8_t)16u)); } if (v2x_supported_band_combination_list_r14_present) { HANDLE_CODE( @@ -106448,15 +106276,15 @@ void v2x_band_params_v1530_s::to_json(json_writer& j) const // UE-CategorySL-r15 ::= SEQUENCE SRSASN_CODE ue_category_sl_r15_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, ue_category_sl_c_tx_r15, (uint8_t)1, (uint8_t)5)); - HANDLE_CODE(pack_unalign_integer(bref, ue_category_sl_c_rx_r15, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(pack_integer(bref, ue_category_sl_c_tx_r15, (uint8_t)1u, (uint8_t)5u)); + HANDLE_CODE(pack_integer(bref, ue_category_sl_c_rx_r15, (uint8_t)1u, (uint8_t)4u)); return SRSASN_SUCCESS; } SRSASN_CODE ue_category_sl_r15_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(ue_category_sl_c_tx_r15, bref, (uint8_t)1, (uint8_t)5)); - HANDLE_CODE(unpack_unalign_integer(ue_category_sl_c_rx_r15, bref, (uint8_t)1, (uint8_t)4)); + HANDLE_CODE(unpack_integer(ue_category_sl_c_tx_r15, bref, (uint8_t)1u, (uint8_t)5u)); + HANDLE_CODE(unpack_integer(ue_category_sl_c_rx_r15, bref, (uint8_t)1u, (uint8_t)4u)); return SRSASN_SUCCESS; } @@ -106478,7 +106306,7 @@ SRSASN_CODE sl_params_v1530_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(v2x_supported_band_combination_list_v1530_present, 1)); if (slss_supported_tx_freq_r15_present) { - HANDLE_CODE(pack_enum(bref, slss_supported_tx_freq_r15)); + HANDLE_CODE(slss_supported_tx_freq_r15.pack(bref)); } if (ue_category_sl_r15_present) { HANDLE_CODE(ue_category_sl_r15.pack(bref)); @@ -106499,7 +106327,7 @@ SRSASN_CODE sl_params_v1530_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(v2x_supported_band_combination_list_v1530_present, 1)); if (slss_supported_tx_freq_r15_present) { - HANDLE_CODE(unpack_enum(slss_supported_tx_freq_r15, bref)); + HANDLE_CODE(slss_supported_tx_freq_r15.unpack(bref)); } if (ue_category_sl_r15_present) { HANDLE_CODE(ue_category_sl_r15.unpack(bref)); @@ -106561,7 +106389,7 @@ void sps_cfg_dl_stti_r15_c::to_json(json_writer& j) const j.write_fieldname("twoAntennaPortActivated-r15"); c.two_ant_port_activ_r15.to_json(j); } - j.write_int("sTTI-StartTimeDL-r15", c.s_tti_start_time_dl_r15); + j.write_int("sTTI-StartTimeDL-r15", c.stti_start_time_dl_r15); if (c.tpc_pdcch_cfg_pucch_sps_r15_present) { j.write_fieldname("tpc-PDCCH-ConfigPUCCH-SPS-r15"); c.tpc_pdcch_cfg_pucch_sps_r15.to_json(j); @@ -106575,7 +106403,7 @@ void sps_cfg_dl_stti_r15_c::to_json(json_writer& j) const } SRSASN_CODE sps_cfg_dl_stti_r15_c::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -106583,12 +106411,12 @@ SRSASN_CODE sps_cfg_dl_stti_r15_c::pack(bit_ref& bref) const bref.pack(c.ext, 1); HANDLE_CODE(bref.pack(c.two_ant_port_activ_r15_present, 1)); HANDLE_CODE(bref.pack(c.tpc_pdcch_cfg_pucch_sps_r15_present, 1)); - HANDLE_CODE(pack_enum(bref, c.semi_persist_sched_interv_dl_stti_r15)); - HANDLE_CODE(pack_unalign_integer(bref, c.nof_conf_sps_processes_stti_r15, (uint8_t)1, (uint8_t)12)); + HANDLE_CODE(c.semi_persist_sched_interv_dl_stti_r15.pack(bref)); + HANDLE_CODE(pack_integer(bref, c.nof_conf_sps_processes_stti_r15, (uint8_t)1u, (uint8_t)12u)); if (c.two_ant_port_activ_r15_present) { HANDLE_CODE(c.two_ant_port_activ_r15.pack(bref)); } - HANDLE_CODE(pack_unalign_integer(bref, c.s_tti_start_time_dl_r15, (uint8_t)0, (uint8_t)5)); + HANDLE_CODE(pack_integer(bref, c.stti_start_time_dl_r15, (uint8_t)0u, (uint8_t)5u)); if (c.tpc_pdcch_cfg_pucch_sps_r15_present) { HANDLE_CODE(c.tpc_pdcch_cfg_pucch_sps_r15.pack(bref)); } @@ -106602,7 +106430,7 @@ SRSASN_CODE sps_cfg_dl_stti_r15_c::pack(bit_ref& bref) const SRSASN_CODE sps_cfg_dl_stti_r15_c::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -106611,12 +106439,12 @@ SRSASN_CODE sps_cfg_dl_stti_r15_c::unpack(bit_ref& bref) bref.unpack(c.ext, 1); HANDLE_CODE(bref.unpack(c.two_ant_port_activ_r15_present, 1)); HANDLE_CODE(bref.unpack(c.tpc_pdcch_cfg_pucch_sps_r15_present, 1)); - HANDLE_CODE(unpack_enum(c.semi_persist_sched_interv_dl_stti_r15, bref)); - HANDLE_CODE(unpack_unalign_integer(c.nof_conf_sps_processes_stti_r15, bref, (uint8_t)1, (uint8_t)12)); + HANDLE_CODE(c.semi_persist_sched_interv_dl_stti_r15.unpack(bref)); + HANDLE_CODE(unpack_integer(c.nof_conf_sps_processes_stti_r15, bref, (uint8_t)1u, (uint8_t)12u)); if (c.two_ant_port_activ_r15_present) { HANDLE_CODE(c.two_ant_port_activ_r15.unpack(bref)); } - HANDLE_CODE(unpack_unalign_integer(c.s_tti_start_time_dl_r15, bref, (uint8_t)0, (uint8_t)5)); + HANDLE_CODE(unpack_integer(c.stti_start_time_dl_r15, bref, (uint8_t)0u, (uint8_t)5u)); if (c.tpc_pdcch_cfg_pucch_sps_r15_present) { HANDLE_CODE(c.tpc_pdcch_cfg_pucch_sps_r15.unpack(bref)); } @@ -106655,13 +106483,13 @@ void sps_cfg_dl_stti_r15_c::setup_s_::two_ant_port_activ_r15_c_::to_json(json_wr } SRSASN_CODE sps_cfg_dl_stti_r15_c::setup_s_::two_ant_port_activ_r15_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(pack_dyn_seq_of( - bref, c.n1_spucch_an_persistent_list_p1_r15, 1, 4, UnalignedIntegerPacker(0, 2047))); + HANDLE_CODE( + pack_dyn_seq_of(bref, c.n1_spucch_an_persistent_list_p1_r15, 1, 4, integer_packer(0, 2047))); break; default: log_invalid_choice_id(type_, "sps_cfg_dl_stti_r15_c::setup_s_::two_ant_port_activ_r15_c_"); @@ -106672,14 +106500,14 @@ SRSASN_CODE sps_cfg_dl_stti_r15_c::setup_s_::two_ant_port_activ_r15_c_::pack(bit SRSASN_CODE sps_cfg_dl_stti_r15_c::setup_s_::two_ant_port_activ_r15_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: break; case types::setup: - HANDLE_CODE(unpack_dyn_seq_of( - c.n1_spucch_an_persistent_list_p1_r15, bref, 1, 4, UnalignedIntegerPacker(0, 2047))); + HANDLE_CODE( + unpack_dyn_seq_of(c.n1_spucch_an_persistent_list_p1_r15, bref, 1, 4, integer_packer(0, 2047))); break; default: log_invalid_choice_id(type_, "sps_cfg_dl_stti_r15_c::setup_s_::two_ant_port_activ_r15_c_"); @@ -106984,8 +106812,8 @@ SRSASN_CODE ue_eutra_cap_v1530_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(reduced_cp_latency_r15_present, 1)); HANDLE_CODE(bref.pack(laa_params_v1530_present, 1)); HANDLE_CODE(bref.pack(ue_category_ul_v1530_present, 1)); - HANDLE_CODE(bref.pack(fdd_add_ue_eutra_capabilities_v1530_present, 1)); - HANDLE_CODE(bref.pack(tdd_add_ue_eutra_capabilities_v1530_present, 1)); + HANDLE_CODE(bref.pack(fdd_add_ue_eutra_cap_v1530_present, 1)); + HANDLE_CODE(bref.pack(tdd_add_ue_eutra_cap_v1530_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (meas_params_v1530_present) { @@ -107010,7 +106838,7 @@ SRSASN_CODE ue_eutra_cap_v1530_ies_s::pack(bit_ref& bref) const HANDLE_CODE(pdcp_params_v1530.pack(bref)); } if (ue_category_dl_v1530_present) { - HANDLE_CODE(pack_unalign_integer(bref, ue_category_dl_v1530, (uint8_t)22, (uint8_t)26)); + HANDLE_CODE(pack_integer(bref, ue_category_dl_v1530, (uint8_t)22u, (uint8_t)26u)); } if (ue_based_netw_perf_meas_params_v1530_present) { HANDLE_CODE(ue_based_netw_perf_meas_params_v1530.pack(bref)); @@ -107025,13 +106853,13 @@ SRSASN_CODE ue_eutra_cap_v1530_ies_s::pack(bit_ref& bref) const HANDLE_CODE(laa_params_v1530.pack(bref)); } if (ue_category_ul_v1530_present) { - HANDLE_CODE(pack_unalign_integer(bref, ue_category_ul_v1530, (uint8_t)22, (uint8_t)26)); + HANDLE_CODE(pack_integer(bref, ue_category_ul_v1530, (uint8_t)22u, (uint8_t)26u)); } - if (fdd_add_ue_eutra_capabilities_v1530_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1530.pack(bref)); + if (fdd_add_ue_eutra_cap_v1530_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1530.pack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1530_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1530.pack(bref)); + if (tdd_add_ue_eutra_cap_v1530_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1530.pack(bref)); } return SRSASN_SUCCESS; @@ -107053,8 +106881,8 @@ SRSASN_CODE ue_eutra_cap_v1530_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(reduced_cp_latency_r15_present, 1)); HANDLE_CODE(bref.unpack(laa_params_v1530_present, 1)); HANDLE_CODE(bref.unpack(ue_category_ul_v1530_present, 1)); - HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_capabilities_v1530_present, 1)); - HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_capabilities_v1530_present, 1)); + HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_cap_v1530_present, 1)); + HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_cap_v1530_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (meas_params_v1530_present) { @@ -107079,7 +106907,7 @@ SRSASN_CODE ue_eutra_cap_v1530_ies_s::unpack(bit_ref& bref) HANDLE_CODE(pdcp_params_v1530.unpack(bref)); } if (ue_category_dl_v1530_present) { - HANDLE_CODE(unpack_unalign_integer(ue_category_dl_v1530, bref, (uint8_t)22, (uint8_t)26)); + HANDLE_CODE(unpack_integer(ue_category_dl_v1530, bref, (uint8_t)22u, (uint8_t)26u)); } if (ue_based_netw_perf_meas_params_v1530_present) { HANDLE_CODE(ue_based_netw_perf_meas_params_v1530.unpack(bref)); @@ -107094,13 +106922,13 @@ SRSASN_CODE ue_eutra_cap_v1530_ies_s::unpack(bit_ref& bref) HANDLE_CODE(laa_params_v1530.unpack(bref)); } if (ue_category_ul_v1530_present) { - HANDLE_CODE(unpack_unalign_integer(ue_category_ul_v1530, bref, (uint8_t)22, (uint8_t)26)); + HANDLE_CODE(unpack_integer(ue_category_ul_v1530, bref, (uint8_t)22u, (uint8_t)26u)); } - if (fdd_add_ue_eutra_capabilities_v1530_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1530.unpack(bref)); + if (fdd_add_ue_eutra_cap_v1530_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1530.unpack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1530_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1530.unpack(bref)); + if (tdd_add_ue_eutra_cap_v1530_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1530.unpack(bref)); } return SRSASN_SUCCESS; @@ -107164,13 +106992,13 @@ void ue_eutra_cap_v1530_ies_s::to_json(json_writer& j) const if (ue_category_ul_v1530_present) { j.write_int("ue-CategoryUL-v1530", ue_category_ul_v1530); } - if (fdd_add_ue_eutra_capabilities_v1530_present) { + if (fdd_add_ue_eutra_cap_v1530_present) { j.write_fieldname("fdd-Add-UE-EUTRA-Capabilities-v1530"); - fdd_add_ue_eutra_capabilities_v1530.to_json(j); + fdd_add_ue_eutra_cap_v1530.to_json(j); } - if (tdd_add_ue_eutra_capabilities_v1530_present) { + if (tdd_add_ue_eutra_cap_v1530_present) { j.write_fieldname("tdd-Add-UE-EUTRA-Capabilities-v1530"); - tdd_add_ue_eutra_capabilities_v1530.to_json(j); + tdd_add_ue_eutra_cap_v1530.to_json(j); } if (non_crit_ext_present) { j.write_fieldname("nonCriticalExtension"); @@ -107274,8 +107102,8 @@ SRSASN_CODE ue_eutra_cap_v1510_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(irat_params_nr_r15_present, 1)); HANDLE_CODE(bref.pack(feature_sets_eutra_r15_present, 1)); HANDLE_CODE(bref.pack(pdcp_params_nr_r15_present, 1)); - HANDLE_CODE(bref.pack(fdd_add_ue_eutra_capabilities_v1510_present, 1)); - HANDLE_CODE(bref.pack(tdd_add_ue_eutra_capabilities_v1510_present, 1)); + HANDLE_CODE(bref.pack(fdd_add_ue_eutra_cap_v1510_present, 1)); + HANDLE_CODE(bref.pack(tdd_add_ue_eutra_cap_v1510_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (irat_params_nr_r15_present) { @@ -107287,11 +107115,11 @@ SRSASN_CODE ue_eutra_cap_v1510_ies_s::pack(bit_ref& bref) const if (pdcp_params_nr_r15_present) { HANDLE_CODE(pdcp_params_nr_r15.pack(bref)); } - if (fdd_add_ue_eutra_capabilities_v1510_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1510.pack(bref)); + if (fdd_add_ue_eutra_cap_v1510_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1510.pack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1510_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1510.pack(bref)); + if (tdd_add_ue_eutra_cap_v1510_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1510.pack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -107304,8 +107132,8 @@ SRSASN_CODE ue_eutra_cap_v1510_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(irat_params_nr_r15_present, 1)); HANDLE_CODE(bref.unpack(feature_sets_eutra_r15_present, 1)); HANDLE_CODE(bref.unpack(pdcp_params_nr_r15_present, 1)); - HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_capabilities_v1510_present, 1)); - HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_capabilities_v1510_present, 1)); + HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_cap_v1510_present, 1)); + HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_cap_v1510_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (irat_params_nr_r15_present) { @@ -107317,11 +107145,11 @@ SRSASN_CODE ue_eutra_cap_v1510_ies_s::unpack(bit_ref& bref) if (pdcp_params_nr_r15_present) { HANDLE_CODE(pdcp_params_nr_r15.unpack(bref)); } - if (fdd_add_ue_eutra_capabilities_v1510_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1510.unpack(bref)); + if (fdd_add_ue_eutra_cap_v1510_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1510.unpack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1510_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1510.unpack(bref)); + if (tdd_add_ue_eutra_cap_v1510_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1510.unpack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -107344,13 +107172,13 @@ void ue_eutra_cap_v1510_ies_s::to_json(json_writer& j) const j.write_fieldname("pdcp-ParametersNR-r15"); pdcp_params_nr_r15.to_json(j); } - if (fdd_add_ue_eutra_capabilities_v1510_present) { + if (fdd_add_ue_eutra_cap_v1510_present) { j.write_fieldname("fdd-Add-UE-EUTRA-Capabilities-v1510"); - fdd_add_ue_eutra_capabilities_v1510.to_json(j); + fdd_add_ue_eutra_cap_v1510.to_json(j); } - if (tdd_add_ue_eutra_capabilities_v1510_present) { + if (tdd_add_ue_eutra_cap_v1510_present) { j.write_fieldname("tdd-Add-UE-EUTRA-Capabilities-v1510"); - tdd_add_ue_eutra_capabilities_v1510.to_json(j); + tdd_add_ue_eutra_cap_v1510.to_json(j); } if (non_crit_ext_present) { j.write_fieldname("nonCriticalExtension"); @@ -107415,7 +107243,7 @@ SRSASN_CODE ue_eutra_cap_v1460_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (ue_category_dl_v1460_present) { - HANDLE_CODE(pack_unalign_integer(bref, ue_category_dl_v1460, (uint8_t)21, (uint8_t)21)); + HANDLE_CODE(pack_integer(bref, ue_category_dl_v1460, (uint8_t)21u, (uint8_t)21u)); } HANDLE_CODE(other_params_v1460.pack(bref)); if (non_crit_ext_present) { @@ -107430,7 +107258,7 @@ SRSASN_CODE ue_eutra_cap_v1460_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (ue_category_dl_v1460_present) { - HANDLE_CODE(unpack_unalign_integer(ue_category_dl_v1460, bref, (uint8_t)21, (uint8_t)21)); + HANDLE_CODE(unpack_integer(ue_category_dl_v1460, bref, (uint8_t)21u, (uint8_t)21u)); } HANDLE_CODE(other_params_v1460.unpack(bref)); if (non_crit_ext_present) { @@ -107551,7 +107379,7 @@ SRSASN_CODE ue_eutra_cap_v1450_ies_s::pack(bit_ref& bref) const } HANDLE_CODE(other_params_v1450.pack(bref)); if (ue_category_dl_v1450_present) { - HANDLE_CODE(pack_unalign_integer(bref, ue_category_dl_v1450, (uint8_t)20, (uint8_t)20)); + HANDLE_CODE(pack_integer(bref, ue_category_dl_v1450, (uint8_t)20u, (uint8_t)20u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -107574,7 +107402,7 @@ SRSASN_CODE ue_eutra_cap_v1450_ies_s::unpack(bit_ref& bref) } HANDLE_CODE(other_params_v1450.unpack(bref)); if (ue_category_dl_v1450_present) { - HANDLE_CODE(unpack_unalign_integer(ue_category_dl_v1450, bref, (uint8_t)20, (uint8_t)20)); + HANDLE_CODE(unpack_integer(ue_category_dl_v1450, bref, (uint8_t)20u, (uint8_t)20u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -107670,7 +107498,7 @@ SRSASN_CODE laa_params_v1430_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(out_of_seq_grant_handling_r14_present, 1)); if (two_step_sched_timing_info_r14_present) { - HANDLE_CODE(pack_enum(bref, two_step_sched_timing_info_r14)); + HANDLE_CODE(two_step_sched_timing_info_r14.pack(bref)); } return SRSASN_SUCCESS; @@ -107685,7 +107513,7 @@ SRSASN_CODE laa_params_v1430_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(out_of_seq_grant_handling_r14_present, 1)); if (two_step_sched_timing_info_r14_present) { - HANDLE_CODE(unpack_enum(two_step_sched_timing_info_r14, bref)); + HANDLE_CODE(two_step_sched_timing_info_r14.unpack(bref)); } return SRSASN_SUCCESS; @@ -107724,7 +107552,7 @@ SRSASN_CODE lwa_params_v1430_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(wlan_supported_data_rate_r14_present, 1)); if (wlan_supported_data_rate_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, wlan_supported_data_rate_r14, (uint16_t)1, (uint16_t)2048)); + HANDLE_CODE(pack_integer(bref, wlan_supported_data_rate_r14, (uint16_t)1u, (uint16_t)2048u)); } return SRSASN_SUCCESS; @@ -107738,7 +107566,7 @@ SRSASN_CODE lwa_params_v1430_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(wlan_supported_data_rate_r14_present, 1)); if (wlan_supported_data_rate_r14_present) { - HANDLE_CODE(unpack_unalign_integer(wlan_supported_data_rate_r14, bref, (uint16_t)1, (uint16_t)2048)); + HANDLE_CODE(unpack_integer(wlan_supported_data_rate_r14, bref, (uint16_t)1u, (uint16_t)2048u)); } return SRSASN_SUCCESS; @@ -107978,7 +107806,7 @@ SRSASN_CODE pdcp_params_v1430_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(supported_ul_only_rohc_profiles_r14.profile0x0006_r14, 1)); if (max_num_rohc_context_sessions_r14_present) { - HANDLE_CODE(pack_enum(bref, max_num_rohc_context_sessions_r14)); + HANDLE_CODE(max_num_rohc_context_sessions_r14.pack(bref)); } return SRSASN_SUCCESS; @@ -107989,7 +107817,7 @@ SRSASN_CODE pdcp_params_v1430_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(supported_ul_only_rohc_profiles_r14.profile0x0006_r14, 1)); if (max_num_rohc_context_sessions_r14_present) { - HANDLE_CODE(unpack_enum(max_num_rohc_context_sessions_r14, bref)); + HANDLE_CODE(max_num_rohc_context_sessions_r14.unpack(bref)); } return SRSASN_SUCCESS; @@ -108141,10 +107969,10 @@ SRSASN_CODE mbms_params_v1470_s::pack(bit_ref& bref) const HANDLE_CODE(mbms_max_bw_r14.pack(bref)); if (mbms_scaling_factor1dot25_r14_present) { - HANDLE_CODE(pack_enum(bref, mbms_scaling_factor1dot25_r14)); + HANDLE_CODE(mbms_scaling_factor1dot25_r14.pack(bref)); } if (mbms_scaling_factor7dot5_r14_present) { - HANDLE_CODE(pack_enum(bref, mbms_scaling_factor7dot5_r14)); + HANDLE_CODE(mbms_scaling_factor7dot5_r14.pack(bref)); } return SRSASN_SUCCESS; @@ -108156,10 +107984,10 @@ SRSASN_CODE mbms_params_v1470_s::unpack(bit_ref& bref) HANDLE_CODE(mbms_max_bw_r14.unpack(bref)); if (mbms_scaling_factor1dot25_r14_present) { - HANDLE_CODE(unpack_enum(mbms_scaling_factor1dot25_r14, bref)); + HANDLE_CODE(mbms_scaling_factor1dot25_r14.unpack(bref)); } if (mbms_scaling_factor7dot5_r14_present) { - HANDLE_CODE(unpack_enum(mbms_scaling_factor7dot5_r14, bref)); + HANDLE_CODE(mbms_scaling_factor7dot5_r14.unpack(bref)); } return SRSASN_SUCCESS; @@ -108198,12 +108026,12 @@ void mbms_params_v1470_s::mbms_max_bw_r14_c_::to_json(json_writer& j) const } SRSASN_CODE mbms_params_v1470_s::mbms_max_bw_r14_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::implicit_value: break; case types::explicit_value: - HANDLE_CODE(pack_unalign_integer(bref, c, (uint8_t)2, (uint8_t)20)); + HANDLE_CODE(pack_integer(bref, c, (uint8_t)2u, (uint8_t)20u)); break; default: log_invalid_choice_id(type_, "mbms_params_v1470_s::mbms_max_bw_r14_c_"); @@ -108214,13 +108042,13 @@ SRSASN_CODE mbms_params_v1470_s::mbms_max_bw_r14_c_::pack(bit_ref& bref) const SRSASN_CODE mbms_params_v1470_s::mbms_max_bw_r14_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::implicit_value: break; case types::explicit_value: - HANDLE_CODE(unpack_unalign_integer(c, bref, (uint8_t)2, (uint8_t)20)); + HANDLE_CODE(unpack_integer(c, bref, (uint8_t)2u, (uint8_t)20u)); break; default: log_invalid_choice_id(type_, "mbms_params_v1470_s::mbms_max_bw_r14_c_"); @@ -108266,8 +108094,8 @@ SRSASN_CODE ue_eutra_cap_v1430_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(lwip_params_v1430_present, 1)); HANDLE_CODE(bref.pack(mmtel_params_r14_present, 1)); HANDLE_CODE(bref.pack(mob_params_r14_present, 1)); - HANDLE_CODE(bref.pack(fdd_add_ue_eutra_capabilities_v1430_present, 1)); - HANDLE_CODE(bref.pack(tdd_add_ue_eutra_capabilities_v1430_present, 1)); + HANDLE_CODE(bref.pack(fdd_add_ue_eutra_cap_v1430_present, 1)); + HANDLE_CODE(bref.pack(tdd_add_ue_eutra_cap_v1430_present, 1)); HANDLE_CODE(bref.pack(mbms_params_v1430_present, 1)); HANDLE_CODE(bref.pack(sl_params_v1430_present, 1)); HANDLE_CODE(bref.pack(ue_based_netw_perf_meas_params_v1430_present, 1)); @@ -108276,7 +108104,7 @@ SRSASN_CODE ue_eutra_cap_v1430_ies_s::pack(bit_ref& bref) const HANDLE_CODE(phy_layer_params_v1430.pack(bref)); if (ue_category_ul_v1430_present) { - HANDLE_CODE(pack_enum(bref, ue_category_ul_v1430)); + HANDLE_CODE(ue_category_ul_v1430.pack(bref)); } if (mac_params_v1430_present) { HANDLE_CODE(mac_params_v1430.pack(bref)); @@ -108308,11 +108136,11 @@ SRSASN_CODE ue_eutra_cap_v1430_ies_s::pack(bit_ref& bref) const HANDLE_CODE(mob_params_r14.pack(bref)); } HANDLE_CODE(ce_params_v1430.pack(bref)); - if (fdd_add_ue_eutra_capabilities_v1430_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1430.pack(bref)); + if (fdd_add_ue_eutra_cap_v1430_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1430.pack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1430_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1430.pack(bref)); + if (tdd_add_ue_eutra_cap_v1430_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1430.pack(bref)); } if (mbms_params_v1430_present) { HANDLE_CODE(mbms_params_v1430.pack(bref)); @@ -108346,8 +108174,8 @@ SRSASN_CODE ue_eutra_cap_v1430_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(lwip_params_v1430_present, 1)); HANDLE_CODE(bref.unpack(mmtel_params_r14_present, 1)); HANDLE_CODE(bref.unpack(mob_params_r14_present, 1)); - HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_capabilities_v1430_present, 1)); - HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_capabilities_v1430_present, 1)); + HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_cap_v1430_present, 1)); + HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_cap_v1430_present, 1)); HANDLE_CODE(bref.unpack(mbms_params_v1430_present, 1)); HANDLE_CODE(bref.unpack(sl_params_v1430_present, 1)); HANDLE_CODE(bref.unpack(ue_based_netw_perf_meas_params_v1430_present, 1)); @@ -108356,7 +108184,7 @@ SRSASN_CODE ue_eutra_cap_v1430_ies_s::unpack(bit_ref& bref) HANDLE_CODE(phy_layer_params_v1430.unpack(bref)); if (ue_category_ul_v1430_present) { - HANDLE_CODE(unpack_enum(ue_category_ul_v1430, bref)); + HANDLE_CODE(ue_category_ul_v1430.unpack(bref)); } if (mac_params_v1430_present) { HANDLE_CODE(mac_params_v1430.unpack(bref)); @@ -108388,11 +108216,11 @@ SRSASN_CODE ue_eutra_cap_v1430_ies_s::unpack(bit_ref& bref) HANDLE_CODE(mob_params_r14.unpack(bref)); } HANDLE_CODE(ce_params_v1430.unpack(bref)); - if (fdd_add_ue_eutra_capabilities_v1430_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1430.unpack(bref)); + if (fdd_add_ue_eutra_cap_v1430_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1430.unpack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1430_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1430.unpack(bref)); + if (tdd_add_ue_eutra_cap_v1430_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1430.unpack(bref)); } if (mbms_params_v1430_present) { HANDLE_CODE(mbms_params_v1430.unpack(bref)); @@ -108468,13 +108296,13 @@ void ue_eutra_cap_v1430_ies_s::to_json(json_writer& j) const } j.write_fieldname("ce-Parameters-v1430"); ce_params_v1430.to_json(j); - if (fdd_add_ue_eutra_capabilities_v1430_present) { + if (fdd_add_ue_eutra_cap_v1430_present) { j.write_fieldname("fdd-Add-UE-EUTRA-Capabilities-v1430"); - fdd_add_ue_eutra_capabilities_v1430.to_json(j); + fdd_add_ue_eutra_cap_v1430.to_json(j); } - if (tdd_add_ue_eutra_capabilities_v1430_present) { + if (tdd_add_ue_eutra_cap_v1430_present) { j.write_fieldname("tdd-Add-UE-EUTRA-Capabilities-v1430"); - tdd_add_ue_eutra_capabilities_v1430.to_json(j); + tdd_add_ue_eutra_cap_v1430.to_json(j); } if (mbms_params_v1430_present) { j.write_fieldname("mbms-Parameters-v1430"); @@ -108806,7 +108634,7 @@ SRSASN_CODE ue_eutra_cap_v1340_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (ue_category_ul_v1340_present) { - HANDLE_CODE(pack_unalign_integer(bref, ue_category_ul_v1340, (uint8_t)15, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, ue_category_ul_v1340, (uint8_t)15u, (uint8_t)15u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -108820,7 +108648,7 @@ SRSASN_CODE ue_eutra_cap_v1340_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (ue_category_ul_v1340_present) { - HANDLE_CODE(unpack_unalign_integer(ue_category_ul_v1340, bref, (uint8_t)15, (uint8_t)15)); + HANDLE_CODE(unpack_integer(ue_category_ul_v1340, bref, (uint8_t)15u, (uint8_t)15u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -108949,7 +108777,7 @@ SRSASN_CODE phy_layer_params_v1310_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(codebook_harq_ack_r13_present, 1)); HANDLE_CODE(bref.pack(cross_carrier_sched_b5_c_r13_present, 1)); HANDLE_CODE(bref.pack(fdd_harq_timing_tdd_r13_present, 1)); - HANDLE_CODE(bref.pack(max_num_updated_csi_proc_r13_present, 1)); + HANDLE_CODE(bref.pack(max_num_upd_csi_proc_r13_present, 1)); HANDLE_CODE(bref.pack(pucch_format4_r13_present, 1)); HANDLE_CODE(bref.pack(pucch_format5_r13_present, 1)); HANDLE_CODE(bref.pack(pucch_scell_r13_present, 1)); @@ -108965,16 +108793,15 @@ SRSASN_CODE phy_layer_params_v1310_s::pack(bit_ref& bref) const if (codebook_harq_ack_r13_present) { HANDLE_CODE(codebook_harq_ack_r13.pack(bref)); } - if (max_num_updated_csi_proc_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, max_num_updated_csi_proc_r13, (uint8_t)5, (uint8_t)32)); + if (max_num_upd_csi_proc_r13_present) { + HANDLE_CODE(pack_integer(bref, max_num_upd_csi_proc_r13, (uint8_t)5u, (uint8_t)32u)); } if (supported_blind_decoding_r13_present) { HANDLE_CODE(bref.pack(supported_blind_decoding_r13.max_num_decoding_r13_present, 1)); HANDLE_CODE(bref.pack(supported_blind_decoding_r13.pdcch_candidate_reductions_r13_present, 1)); HANDLE_CODE(bref.pack(supported_blind_decoding_r13.skip_monitoring_dci_format0_minus1_a_r13_present, 1)); if (supported_blind_decoding_r13.max_num_decoding_r13_present) { - HANDLE_CODE( - pack_unalign_integer(bref, supported_blind_decoding_r13.max_num_decoding_r13, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, supported_blind_decoding_r13.max_num_decoding_r13, (uint8_t)1u, (uint8_t)32u)); } } @@ -108986,7 +108813,7 @@ SRSASN_CODE phy_layer_params_v1310_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(codebook_harq_ack_r13_present, 1)); HANDLE_CODE(bref.unpack(cross_carrier_sched_b5_c_r13_present, 1)); HANDLE_CODE(bref.unpack(fdd_harq_timing_tdd_r13_present, 1)); - HANDLE_CODE(bref.unpack(max_num_updated_csi_proc_r13_present, 1)); + HANDLE_CODE(bref.unpack(max_num_upd_csi_proc_r13_present, 1)); HANDLE_CODE(bref.unpack(pucch_format4_r13_present, 1)); HANDLE_CODE(bref.unpack(pucch_format5_r13_present, 1)); HANDLE_CODE(bref.unpack(pucch_scell_r13_present, 1)); @@ -109002,16 +108829,15 @@ SRSASN_CODE phy_layer_params_v1310_s::unpack(bit_ref& bref) if (codebook_harq_ack_r13_present) { HANDLE_CODE(codebook_harq_ack_r13.unpack(bref)); } - if (max_num_updated_csi_proc_r13_present) { - HANDLE_CODE(unpack_unalign_integer(max_num_updated_csi_proc_r13, bref, (uint8_t)5, (uint8_t)32)); + if (max_num_upd_csi_proc_r13_present) { + HANDLE_CODE(unpack_integer(max_num_upd_csi_proc_r13, bref, (uint8_t)5u, (uint8_t)32u)); } if (supported_blind_decoding_r13_present) { HANDLE_CODE(bref.unpack(supported_blind_decoding_r13.max_num_decoding_r13_present, 1)); HANDLE_CODE(bref.unpack(supported_blind_decoding_r13.pdcch_candidate_reductions_r13_present, 1)); HANDLE_CODE(bref.unpack(supported_blind_decoding_r13.skip_monitoring_dci_format0_minus1_a_r13_present, 1)); if (supported_blind_decoding_r13.max_num_decoding_r13_present) { - HANDLE_CODE( - unpack_unalign_integer(supported_blind_decoding_r13.max_num_decoding_r13, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(supported_blind_decoding_r13.max_num_decoding_r13, bref, (uint8_t)1u, (uint8_t)32u)); } } @@ -109032,8 +108858,8 @@ void phy_layer_params_v1310_s::to_json(json_writer& j) const if (fdd_harq_timing_tdd_r13_present) { j.write_str("fdd-HARQ-TimingTDD-r13", "supported"); } - if (max_num_updated_csi_proc_r13_present) { - j.write_int("maxNumberUpdatedCSI-Proc-r13", max_num_updated_csi_proc_r13); + if (max_num_upd_csi_proc_r13_present) { + j.write_int("maxNumberUpdatedCSI-Proc-r13", max_num_upd_csi_proc_r13); } if (pucch_format4_r13_present) { j.write_str("pucch-Format4-r13", "supported"); @@ -109082,7 +108908,7 @@ SRSASN_CODE ue_eutra_cap_v1330_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (ue_category_dl_v1330_present) { - HANDLE_CODE(pack_unalign_integer(bref, ue_category_dl_v1330, (uint8_t)18, (uint8_t)19)); + HANDLE_CODE(pack_integer(bref, ue_category_dl_v1330, (uint8_t)18u, (uint8_t)19u)); } if (phy_layer_params_v1330_present) { HANDLE_CODE(phy_layer_params_v1330.pack(bref)); @@ -109101,7 +108927,7 @@ SRSASN_CODE ue_eutra_cap_v1330_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (ue_category_dl_v1330_present) { - HANDLE_CODE(unpack_unalign_integer(ue_category_dl_v1330, bref, (uint8_t)18, (uint8_t)19)); + HANDLE_CODE(unpack_integer(ue_category_dl_v1330, bref, (uint8_t)18u, (uint8_t)19u)); } if (phy_layer_params_v1330_present) { HANDLE_CODE(phy_layer_params_v1330.unpack(bref)); @@ -109142,8 +108968,8 @@ SRSASN_CODE ue_eutra_cap_v1380_ies_s::pack(bit_ref& bref) const HANDLE_CODE(rf_params_v1380.pack(bref)); } HANDLE_CODE(ce_params_v1380.pack(bref)); - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1380.pack(bref)); - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1380.pack(bref)); + HANDLE_CODE(fdd_add_ue_eutra_cap_v1380.pack(bref)); + HANDLE_CODE(tdd_add_ue_eutra_cap_v1380.pack(bref)); if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); } @@ -109159,8 +108985,8 @@ SRSASN_CODE ue_eutra_cap_v1380_ies_s::unpack(bit_ref& bref) HANDLE_CODE(rf_params_v1380.unpack(bref)); } HANDLE_CODE(ce_params_v1380.unpack(bref)); - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1380.unpack(bref)); - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1380.unpack(bref)); + HANDLE_CODE(fdd_add_ue_eutra_cap_v1380.unpack(bref)); + HANDLE_CODE(tdd_add_ue_eutra_cap_v1380.unpack(bref)); if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); } @@ -109177,9 +109003,9 @@ void ue_eutra_cap_v1380_ies_s::to_json(json_writer& j) const j.write_fieldname("ce-Parameters-v1380"); ce_params_v1380.to_json(j); j.write_fieldname("fdd-Add-UE-EUTRA-Capabilities-v1380"); - fdd_add_ue_eutra_capabilities_v1380.to_json(j); + fdd_add_ue_eutra_cap_v1380.to_json(j); j.write_fieldname("tdd-Add-UE-EUTRA-Capabilities-v1380"); - tdd_add_ue_eutra_capabilities_v1380.to_json(j); + tdd_add_ue_eutra_cap_v1380.to_json(j); if (non_crit_ext_present) { j.write_fieldname("nonCriticalExtension"); non_crit_ext.to_json(j); @@ -109600,8 +109426,8 @@ SRSASN_CODE ue_eutra_cap_v1320_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(ce_params_v1320_present, 1)); HANDLE_CODE(bref.pack(phy_layer_params_v1320_present, 1)); HANDLE_CODE(bref.pack(rf_params_v1320_present, 1)); - HANDLE_CODE(bref.pack(fdd_add_ue_eutra_capabilities_v1320_present, 1)); - HANDLE_CODE(bref.pack(tdd_add_ue_eutra_capabilities_v1320_present, 1)); + HANDLE_CODE(bref.pack(fdd_add_ue_eutra_cap_v1320_present, 1)); + HANDLE_CODE(bref.pack(tdd_add_ue_eutra_cap_v1320_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (ce_params_v1320_present) { @@ -109613,11 +109439,11 @@ SRSASN_CODE ue_eutra_cap_v1320_ies_s::pack(bit_ref& bref) const if (rf_params_v1320_present) { HANDLE_CODE(rf_params_v1320.pack(bref)); } - if (fdd_add_ue_eutra_capabilities_v1320_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1320.pack(bref)); + if (fdd_add_ue_eutra_cap_v1320_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1320.pack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1320_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1320.pack(bref)); + if (tdd_add_ue_eutra_cap_v1320_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1320.pack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -109630,8 +109456,8 @@ SRSASN_CODE ue_eutra_cap_v1320_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ce_params_v1320_present, 1)); HANDLE_CODE(bref.unpack(phy_layer_params_v1320_present, 1)); HANDLE_CODE(bref.unpack(rf_params_v1320_present, 1)); - HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_capabilities_v1320_present, 1)); - HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_capabilities_v1320_present, 1)); + HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_cap_v1320_present, 1)); + HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_cap_v1320_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (ce_params_v1320_present) { @@ -109643,11 +109469,11 @@ SRSASN_CODE ue_eutra_cap_v1320_ies_s::unpack(bit_ref& bref) if (rf_params_v1320_present) { HANDLE_CODE(rf_params_v1320.unpack(bref)); } - if (fdd_add_ue_eutra_capabilities_v1320_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1320.unpack(bref)); + if (fdd_add_ue_eutra_cap_v1320_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1320.unpack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1320_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1320.unpack(bref)); + if (tdd_add_ue_eutra_cap_v1320_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1320.unpack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -109670,13 +109496,13 @@ void ue_eutra_cap_v1320_ies_s::to_json(json_writer& j) const j.write_fieldname("rf-Parameters-v1320"); rf_params_v1320.to_json(j); } - if (fdd_add_ue_eutra_capabilities_v1320_present) { + if (fdd_add_ue_eutra_cap_v1320_present) { j.write_fieldname("fdd-Add-UE-EUTRA-Capabilities-v1320"); - fdd_add_ue_eutra_capabilities_v1320.to_json(j); + fdd_add_ue_eutra_cap_v1320.to_json(j); } - if (tdd_add_ue_eutra_capabilities_v1320_present) { + if (tdd_add_ue_eutra_cap_v1320_present) { j.write_fieldname("tdd-Add-UE-EUTRA-Capabilities-v1320"); - tdd_add_ue_eutra_capabilities_v1320.to_json(j); + tdd_add_ue_eutra_cap_v1320.to_json(j); } if (non_crit_ext_present) { j.write_fieldname("nonCriticalExtension"); @@ -109689,18 +109515,18 @@ void ue_eutra_cap_v1320_ies_s::to_json(json_writer& j) const SRSASN_CODE ue_eutra_cap_v1370_ies_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(ce_params_v1370_present, 1)); - HANDLE_CODE(bref.pack(fdd_add_ue_eutra_capabilities_v1370_present, 1)); - HANDLE_CODE(bref.pack(tdd_add_ue_eutra_capabilities_v1370_present, 1)); + HANDLE_CODE(bref.pack(fdd_add_ue_eutra_cap_v1370_present, 1)); + HANDLE_CODE(bref.pack(tdd_add_ue_eutra_cap_v1370_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (ce_params_v1370_present) { HANDLE_CODE(ce_params_v1370.pack(bref)); } - if (fdd_add_ue_eutra_capabilities_v1370_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1370.pack(bref)); + if (fdd_add_ue_eutra_cap_v1370_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1370.pack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1370_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1370.pack(bref)); + if (tdd_add_ue_eutra_cap_v1370_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1370.pack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -109711,18 +109537,18 @@ SRSASN_CODE ue_eutra_cap_v1370_ies_s::pack(bit_ref& bref) const SRSASN_CODE ue_eutra_cap_v1370_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(ce_params_v1370_present, 1)); - HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_capabilities_v1370_present, 1)); - HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_capabilities_v1370_present, 1)); + HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_cap_v1370_present, 1)); + HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_cap_v1370_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (ce_params_v1370_present) { HANDLE_CODE(ce_params_v1370.unpack(bref)); } - if (fdd_add_ue_eutra_capabilities_v1370_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1370.unpack(bref)); + if (fdd_add_ue_eutra_cap_v1370_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1370.unpack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1370_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1370.unpack(bref)); + if (tdd_add_ue_eutra_cap_v1370_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1370.unpack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -109737,13 +109563,13 @@ void ue_eutra_cap_v1370_ies_s::to_json(json_writer& j) const j.write_fieldname("ce-Parameters-v1370"); ce_params_v1370.to_json(j); } - if (fdd_add_ue_eutra_capabilities_v1370_present) { + if (fdd_add_ue_eutra_cap_v1370_present) { j.write_fieldname("fdd-Add-UE-EUTRA-Capabilities-v1370"); - fdd_add_ue_eutra_capabilities_v1370.to_json(j); + fdd_add_ue_eutra_cap_v1370.to_json(j); } - if (tdd_add_ue_eutra_capabilities_v1370_present) { + if (tdd_add_ue_eutra_cap_v1370_present) { j.write_fieldname("tdd-Add-UE-EUTRA-Capabilities-v1370"); - tdd_add_ue_eutra_capabilities_v1370.to_json(j); + tdd_add_ue_eutra_cap_v1370.to_json(j); } if (non_crit_ext_present) { j.write_fieldname("nonCriticalExtension"); @@ -109808,20 +109634,20 @@ void wlan_iw_params_v1310_s::to_json(json_writer& j) const // PhyLayerParameters-v1280 ::= SEQUENCE SRSASN_CODE phy_layer_params_v1280_s::pack(bit_ref& bref) const { - HANDLE_CODE(bref.pack(alternative_tbs_indices_r12_present, 1)); + HANDLE_CODE(bref.pack(alt_tbs_indices_r12_present, 1)); return SRSASN_SUCCESS; } SRSASN_CODE phy_layer_params_v1280_s::unpack(bit_ref& bref) { - HANDLE_CODE(bref.unpack(alternative_tbs_indices_r12_present, 1)); + HANDLE_CODE(bref.unpack(alt_tbs_indices_r12_present, 1)); return SRSASN_SUCCESS; } void phy_layer_params_v1280_s::to_json(json_writer& j) const { j.start_obj(); - if (alternative_tbs_indices_r12_present) { + if (alt_tbs_indices_r12_present) { j.write_str("alternativeTBS-Indices-r12", "supported"); } j.end_obj(); @@ -109906,15 +109732,15 @@ SRSASN_CODE ue_eutra_cap_v1310_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(ce_params_r13_present, 1)); HANDLE_CODE(bref.pack(laa_params_r13_present, 1)); HANDLE_CODE(bref.pack(lwa_params_r13_present, 1)); - HANDLE_CODE(bref.pack(fdd_add_ue_eutra_capabilities_v1310_present, 1)); - HANDLE_CODE(bref.pack(tdd_add_ue_eutra_capabilities_v1310_present, 1)); + HANDLE_CODE(bref.pack(fdd_add_ue_eutra_cap_v1310_present, 1)); + HANDLE_CODE(bref.pack(tdd_add_ue_eutra_cap_v1310_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (ue_category_dl_v1310_present) { - HANDLE_CODE(pack_enum(bref, ue_category_dl_v1310)); + HANDLE_CODE(ue_category_dl_v1310.pack(bref)); } if (ue_category_ul_v1310_present) { - HANDLE_CODE(pack_enum(bref, ue_category_ul_v1310)); + HANDLE_CODE(ue_category_ul_v1310.pack(bref)); } HANDLE_CODE(pdcp_params_v1310.pack(bref)); HANDLE_CODE(rlc_params_v1310.pack(bref)); @@ -109951,11 +109777,11 @@ SRSASN_CODE ue_eutra_cap_v1310_ies_s::pack(bit_ref& bref) const } HANDLE_CODE(wlan_iw_params_v1310.pack(bref)); HANDLE_CODE(lwip_params_r13.pack(bref)); - if (fdd_add_ue_eutra_capabilities_v1310_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1310.pack(bref)); + if (fdd_add_ue_eutra_cap_v1310_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1310.pack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1310_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1310.pack(bref)); + if (tdd_add_ue_eutra_cap_v1310_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1310.pack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -109977,15 +109803,15 @@ SRSASN_CODE ue_eutra_cap_v1310_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ce_params_r13_present, 1)); HANDLE_CODE(bref.unpack(laa_params_r13_present, 1)); HANDLE_CODE(bref.unpack(lwa_params_r13_present, 1)); - HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_capabilities_v1310_present, 1)); - HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_capabilities_v1310_present, 1)); + HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_cap_v1310_present, 1)); + HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_cap_v1310_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (ue_category_dl_v1310_present) { - HANDLE_CODE(unpack_enum(ue_category_dl_v1310, bref)); + HANDLE_CODE(ue_category_dl_v1310.unpack(bref)); } if (ue_category_ul_v1310_present) { - HANDLE_CODE(unpack_enum(ue_category_ul_v1310, bref)); + HANDLE_CODE(ue_category_ul_v1310.unpack(bref)); } HANDLE_CODE(pdcp_params_v1310.unpack(bref)); HANDLE_CODE(rlc_params_v1310.unpack(bref)); @@ -110022,11 +109848,11 @@ SRSASN_CODE ue_eutra_cap_v1310_ies_s::unpack(bit_ref& bref) } HANDLE_CODE(wlan_iw_params_v1310.unpack(bref)); HANDLE_CODE(lwip_params_r13.unpack(bref)); - if (fdd_add_ue_eutra_capabilities_v1310_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1310.unpack(bref)); + if (fdd_add_ue_eutra_cap_v1310_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1310.unpack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1310_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1310.unpack(bref)); + if (tdd_add_ue_eutra_cap_v1310_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1310.unpack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -110093,13 +109919,13 @@ void ue_eutra_cap_v1310_ies_s::to_json(json_writer& j) const wlan_iw_params_v1310.to_json(j); j.write_fieldname("lwip-Parameters-r13"); lwip_params_r13.to_json(j); - if (fdd_add_ue_eutra_capabilities_v1310_present) { + if (fdd_add_ue_eutra_cap_v1310_present) { j.write_fieldname("fdd-Add-UE-EUTRA-Capabilities-v1310"); - fdd_add_ue_eutra_capabilities_v1310.to_json(j); + fdd_add_ue_eutra_cap_v1310.to_json(j); } - if (tdd_add_ue_eutra_capabilities_v1310_present) { + if (tdd_add_ue_eutra_cap_v1310_present) { j.write_fieldname("tdd-Add-UE-EUTRA-Capabilities-v1310"); - tdd_add_ue_eutra_capabilities_v1310.to_json(j); + tdd_add_ue_eutra_cap_v1310.to_json(j); } if (non_crit_ext_present) { j.write_fieldname("nonCriticalExtension"); @@ -110198,7 +110024,7 @@ void ue_eutra_cap_v12b0_ies_s::to_json(json_writer& j) const SRSASN_CODE meas_params_v1250_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(timer_t312_r12_present, 1)); - HANDLE_CODE(bref.pack(alternative_time_to_trigger_r12_present, 1)); + HANDLE_CODE(bref.pack(alt_time_to_trigger_r12_present, 1)); HANDLE_CODE(bref.pack(inc_mon_eutra_r12_present, 1)); HANDLE_CODE(bref.pack(inc_mon_utra_r12_present, 1)); HANDLE_CODE(bref.pack(extended_max_meas_id_r12_present, 1)); @@ -110212,7 +110038,7 @@ SRSASN_CODE meas_params_v1250_s::pack(bit_ref& bref) const SRSASN_CODE meas_params_v1250_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(timer_t312_r12_present, 1)); - HANDLE_CODE(bref.unpack(alternative_time_to_trigger_r12_present, 1)); + HANDLE_CODE(bref.unpack(alt_time_to_trigger_r12_present, 1)); HANDLE_CODE(bref.unpack(inc_mon_eutra_r12_present, 1)); HANDLE_CODE(bref.unpack(inc_mon_utra_r12_present, 1)); HANDLE_CODE(bref.unpack(extended_max_meas_id_r12_present, 1)); @@ -110229,7 +110055,7 @@ void meas_params_v1250_s::to_json(json_writer& j) const if (timer_t312_r12_present) { j.write_str("timerT312-r12", "supported"); } - if (alternative_time_to_trigger_r12_present) { + if (alt_time_to_trigger_r12_present) { j.write_str("alternativeTimeToTrigger-r12", "supported"); } if (inc_mon_eutra_r12_present) { @@ -110593,7 +110419,7 @@ SRSASN_CODE ue_eutra_cap_v1260_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (ue_category_dl_v1260_present) { - HANDLE_CODE(pack_unalign_integer(bref, ue_category_dl_v1260, (uint8_t)15, (uint8_t)16)); + HANDLE_CODE(pack_integer(bref, ue_category_dl_v1260, (uint8_t)15u, (uint8_t)16u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -110607,7 +110433,7 @@ SRSASN_CODE ue_eutra_cap_v1260_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (ue_category_dl_v1260_present) { - HANDLE_CODE(unpack_unalign_integer(ue_category_dl_v1260, bref, (uint8_t)15, (uint8_t)16)); + HANDLE_CODE(unpack_integer(ue_category_dl_v1260, bref, (uint8_t)15u, (uint8_t)16u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -110845,8 +110671,8 @@ SRSASN_CODE ue_eutra_cap_v1250_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(dc_params_r12_present, 1)); HANDLE_CODE(bref.pack(mbms_params_v1250_present, 1)); HANDLE_CODE(bref.pack(mac_params_r12_present, 1)); - HANDLE_CODE(bref.pack(fdd_add_ue_eutra_capabilities_v1250_present, 1)); - HANDLE_CODE(bref.pack(tdd_add_ue_eutra_capabilities_v1250_present, 1)); + HANDLE_CODE(bref.pack(fdd_add_ue_eutra_cap_v1250_present, 1)); + HANDLE_CODE(bref.pack(tdd_add_ue_eutra_cap_v1250_present, 1)); HANDLE_CODE(bref.pack(sl_params_r12_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); @@ -110863,10 +110689,10 @@ SRSASN_CODE ue_eutra_cap_v1250_ies_s::pack(bit_ref& bref) const HANDLE_CODE(ue_based_netw_perf_meas_params_v1250.pack(bref)); } if (ue_category_dl_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, ue_category_dl_r12, (uint8_t)0, (uint8_t)14)); + HANDLE_CODE(pack_integer(bref, ue_category_dl_r12, (uint8_t)0u, (uint8_t)14u)); } if (ue_category_ul_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, ue_category_ul_r12, (uint8_t)0, (uint8_t)13)); + HANDLE_CODE(pack_integer(bref, ue_category_ul_r12, (uint8_t)0u, (uint8_t)13u)); } if (wlan_iw_params_r12_present) { HANDLE_CODE(wlan_iw_params_r12.pack(bref)); @@ -110883,11 +110709,11 @@ SRSASN_CODE ue_eutra_cap_v1250_ies_s::pack(bit_ref& bref) const if (mac_params_r12_present) { HANDLE_CODE(mac_params_r12.pack(bref)); } - if (fdd_add_ue_eutra_capabilities_v1250_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1250.pack(bref)); + if (fdd_add_ue_eutra_cap_v1250_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1250.pack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1250_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1250.pack(bref)); + if (tdd_add_ue_eutra_cap_v1250_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1250.pack(bref)); } if (sl_params_r12_present) { HANDLE_CODE(sl_params_r12.pack(bref)); @@ -110911,8 +110737,8 @@ SRSASN_CODE ue_eutra_cap_v1250_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(dc_params_r12_present, 1)); HANDLE_CODE(bref.unpack(mbms_params_v1250_present, 1)); HANDLE_CODE(bref.unpack(mac_params_r12_present, 1)); - HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_capabilities_v1250_present, 1)); - HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_capabilities_v1250_present, 1)); + HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_cap_v1250_present, 1)); + HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_cap_v1250_present, 1)); HANDLE_CODE(bref.unpack(sl_params_r12_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); @@ -110929,10 +110755,10 @@ SRSASN_CODE ue_eutra_cap_v1250_ies_s::unpack(bit_ref& bref) HANDLE_CODE(ue_based_netw_perf_meas_params_v1250.unpack(bref)); } if (ue_category_dl_r12_present) { - HANDLE_CODE(unpack_unalign_integer(ue_category_dl_r12, bref, (uint8_t)0, (uint8_t)14)); + HANDLE_CODE(unpack_integer(ue_category_dl_r12, bref, (uint8_t)0u, (uint8_t)14u)); } if (ue_category_ul_r12_present) { - HANDLE_CODE(unpack_unalign_integer(ue_category_ul_r12, bref, (uint8_t)0, (uint8_t)13)); + HANDLE_CODE(unpack_integer(ue_category_ul_r12, bref, (uint8_t)0u, (uint8_t)13u)); } if (wlan_iw_params_r12_present) { HANDLE_CODE(wlan_iw_params_r12.unpack(bref)); @@ -110949,11 +110775,11 @@ SRSASN_CODE ue_eutra_cap_v1250_ies_s::unpack(bit_ref& bref) if (mac_params_r12_present) { HANDLE_CODE(mac_params_r12.unpack(bref)); } - if (fdd_add_ue_eutra_capabilities_v1250_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1250.unpack(bref)); + if (fdd_add_ue_eutra_cap_v1250_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1250.unpack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1250_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1250.unpack(bref)); + if (tdd_add_ue_eutra_cap_v1250_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1250.unpack(bref)); } if (sl_params_r12_present) { HANDLE_CODE(sl_params_r12.unpack(bref)); @@ -111009,13 +110835,13 @@ void ue_eutra_cap_v1250_ies_s::to_json(json_writer& j) const j.write_fieldname("mac-Parameters-r12"); mac_params_r12.to_json(j); } - if (fdd_add_ue_eutra_capabilities_v1250_present) { + if (fdd_add_ue_eutra_cap_v1250_present) { j.write_fieldname("fdd-Add-UE-EUTRA-Capabilities-v1250"); - fdd_add_ue_eutra_capabilities_v1250.to_json(j); + fdd_add_ue_eutra_cap_v1250.to_json(j); } - if (tdd_add_ue_eutra_capabilities_v1250_present) { + if (tdd_add_ue_eutra_cap_v1250_present) { j.write_fieldname("tdd-Add-UE-EUTRA-Capabilities-v1250"); - tdd_add_ue_eutra_capabilities_v1250.to_json(j); + tdd_add_ue_eutra_cap_v1250.to_json(j); } if (sl_params_r12_present) { j.write_fieldname("sl-Parameters-r12"); @@ -111029,19 +110855,19 @@ void ue_eutra_cap_v1250_ies_s::to_json(json_writer& j) const } // OTDOA-PositioningCapabilities-r10 ::= SEQUENCE -SRSASN_CODE otdoa_positioning_capabilities_r10_s::pack(bit_ref& bref) const +SRSASN_CODE otdoa_positioning_cap_r10_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(inter_freq_rstd_meas_r10_present, 1)); return SRSASN_SUCCESS; } -SRSASN_CODE otdoa_positioning_capabilities_r10_s::unpack(bit_ref& bref) +SRSASN_CODE otdoa_positioning_cap_r10_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(inter_freq_rstd_meas_r10_present, 1)); return SRSASN_SUCCESS; } -void otdoa_positioning_capabilities_r10_s::to_json(json_writer& j) const +void otdoa_positioning_cap_r10_s::to_json(json_writer& j) const { j.start_obj(); j.write_str("otdoa-UE-Assisted-r10", "supported"); @@ -111102,7 +110928,7 @@ SRSASN_CODE ue_eutra_cap_v11a0_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (ue_category_v11a0_present) { - HANDLE_CODE(pack_unalign_integer(bref, ue_category_v11a0, (uint8_t)11, (uint8_t)12)); + HANDLE_CODE(pack_integer(bref, ue_category_v11a0, (uint8_t)11u, (uint8_t)12u)); } if (meas_params_v11a0_present) { HANDLE_CODE(meas_params_v11a0.pack(bref)); @@ -111120,7 +110946,7 @@ SRSASN_CODE ue_eutra_cap_v11a0_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (ue_category_v11a0_present) { - HANDLE_CODE(unpack_unalign_integer(ue_category_v11a0, bref, (uint8_t)11, (uint8_t)12)); + HANDLE_CODE(unpack_integer(ue_category_v11a0, bref, (uint8_t)11u, (uint8_t)12u)); } if (meas_params_v11a0_present) { HANDLE_CODE(meas_params_v11a0.unpack(bref)); @@ -111243,7 +111069,7 @@ void other_params_r11_s::to_json(json_writer& j) const SRSASN_CODE phy_layer_params_v1130_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(crs_interf_handl_r11_present, 1)); - HANDLE_CODE(bref.pack(e_pdcch_r11_present, 1)); + HANDLE_CODE(bref.pack(epdcch_r11_present, 1)); HANDLE_CODE(bref.pack(multi_ack_csi_report_r11_present, 1)); HANDLE_CODE(bref.pack(ss_cch_interf_handl_r11_present, 1)); HANDLE_CODE(bref.pack(tdd_special_sf_r11_present, 1)); @@ -111255,7 +111081,7 @@ SRSASN_CODE phy_layer_params_v1130_s::pack(bit_ref& bref) const SRSASN_CODE phy_layer_params_v1130_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(crs_interf_handl_r11_present, 1)); - HANDLE_CODE(bref.unpack(e_pdcch_r11_present, 1)); + HANDLE_CODE(bref.unpack(epdcch_r11_present, 1)); HANDLE_CODE(bref.unpack(multi_ack_csi_report_r11_present, 1)); HANDLE_CODE(bref.unpack(ss_cch_interf_handl_r11_present, 1)); HANDLE_CODE(bref.unpack(tdd_special_sf_r11_present, 1)); @@ -111270,7 +111096,7 @@ void phy_layer_params_v1130_s::to_json(json_writer& j) const if (crs_interf_handl_r11_present) { j.write_str("crs-InterfHandl-r11", "supported"); } - if (e_pdcch_r11_present) { + if (epdcch_r11_present) { j.write_str("ePDCCH-r11", "supported"); } if (multi_ack_csi_report_r11_present) { @@ -111324,11 +111150,11 @@ void phy_layer_params_v1170_s::to_json(json_writer& j) const // UE-EUTRA-Capability-v10c0-IEs ::= SEQUENCE SRSASN_CODE ue_eutra_cap_v10c0_ies_s::pack(bit_ref& bref) const { - HANDLE_CODE(bref.pack(otdoa_positioning_capabilities_r10_present, 1)); + HANDLE_CODE(bref.pack(otdoa_positioning_cap_r10_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); - if (otdoa_positioning_capabilities_r10_present) { - HANDLE_CODE(otdoa_positioning_capabilities_r10.pack(bref)); + if (otdoa_positioning_cap_r10_present) { + HANDLE_CODE(otdoa_positioning_cap_r10.pack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -111338,11 +111164,11 @@ SRSASN_CODE ue_eutra_cap_v10c0_ies_s::pack(bit_ref& bref) const } SRSASN_CODE ue_eutra_cap_v10c0_ies_s::unpack(bit_ref& bref) { - HANDLE_CODE(bref.unpack(otdoa_positioning_capabilities_r10_present, 1)); + HANDLE_CODE(bref.unpack(otdoa_positioning_cap_r10_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); - if (otdoa_positioning_capabilities_r10_present) { - HANDLE_CODE(otdoa_positioning_capabilities_r10.unpack(bref)); + if (otdoa_positioning_cap_r10_present) { + HANDLE_CODE(otdoa_positioning_cap_r10.unpack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -111353,9 +111179,9 @@ SRSASN_CODE ue_eutra_cap_v10c0_ies_s::unpack(bit_ref& bref) void ue_eutra_cap_v10c0_ies_s::to_json(json_writer& j) const { j.start_obj(); - if (otdoa_positioning_capabilities_r10_present) { + if (otdoa_positioning_cap_r10_present) { j.write_fieldname("otdoa-PositioningCapabilities-r10"); - otdoa_positioning_capabilities_r10.to_json(j); + otdoa_positioning_cap_r10.to_json(j); } if (non_crit_ext_present) { j.write_fieldname("nonCriticalExtension"); @@ -111369,8 +111195,8 @@ SRSASN_CODE ue_eutra_cap_v1180_ies_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(rf_params_v1180_present, 1)); HANDLE_CODE(bref.pack(mbms_params_r11_present, 1)); - HANDLE_CODE(bref.pack(fdd_add_ue_eutra_capabilities_v1180_present, 1)); - HANDLE_CODE(bref.pack(tdd_add_ue_eutra_capabilities_v1180_present, 1)); + HANDLE_CODE(bref.pack(fdd_add_ue_eutra_cap_v1180_present, 1)); + HANDLE_CODE(bref.pack(tdd_add_ue_eutra_cap_v1180_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (rf_params_v1180_present) { @@ -111379,11 +111205,11 @@ SRSASN_CODE ue_eutra_cap_v1180_ies_s::pack(bit_ref& bref) const if (mbms_params_r11_present) { HANDLE_CODE(mbms_params_r11.pack(bref)); } - if (fdd_add_ue_eutra_capabilities_v1180_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1180.pack(bref)); + if (fdd_add_ue_eutra_cap_v1180_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1180.pack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1180_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1180.pack(bref)); + if (tdd_add_ue_eutra_cap_v1180_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1180.pack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -111395,8 +111221,8 @@ SRSASN_CODE ue_eutra_cap_v1180_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(rf_params_v1180_present, 1)); HANDLE_CODE(bref.unpack(mbms_params_r11_present, 1)); - HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_capabilities_v1180_present, 1)); - HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_capabilities_v1180_present, 1)); + HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_cap_v1180_present, 1)); + HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_cap_v1180_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (rf_params_v1180_present) { @@ -111405,11 +111231,11 @@ SRSASN_CODE ue_eutra_cap_v1180_ies_s::unpack(bit_ref& bref) if (mbms_params_r11_present) { HANDLE_CODE(mbms_params_r11.unpack(bref)); } - if (fdd_add_ue_eutra_capabilities_v1180_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1180.unpack(bref)); + if (fdd_add_ue_eutra_cap_v1180_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1180.unpack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1180_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1180.unpack(bref)); + if (tdd_add_ue_eutra_cap_v1180_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1180.unpack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -111428,13 +111254,13 @@ void ue_eutra_cap_v1180_ies_s::to_json(json_writer& j) const j.write_fieldname("mbms-Parameters-r11"); mbms_params_r11.to_json(j); } - if (fdd_add_ue_eutra_capabilities_v1180_present) { + if (fdd_add_ue_eutra_cap_v1180_present) { j.write_fieldname("fdd-Add-UE-EUTRA-Capabilities-v1180"); - fdd_add_ue_eutra_capabilities_v1180.to_json(j); + fdd_add_ue_eutra_cap_v1180.to_json(j); } - if (tdd_add_ue_eutra_capabilities_v1180_present) { + if (tdd_add_ue_eutra_cap_v1180_present) { j.write_fieldname("tdd-Add-UE-EUTRA-Capabilities-v1180"); - tdd_add_ue_eutra_capabilities_v1180.to_json(j); + tdd_add_ue_eutra_cap_v1180.to_json(j); } if (non_crit_ext_present) { j.write_fieldname("nonCriticalExtension"); @@ -111503,7 +111329,7 @@ SRSASN_CODE ue_eutra_cap_v1170_ies_s::pack(bit_ref& bref) const HANDLE_CODE(phy_layer_params_v1170.pack(bref)); } if (ue_category_v1170_present) { - HANDLE_CODE(pack_unalign_integer(bref, ue_category_v1170, (uint8_t)9, (uint8_t)10)); + HANDLE_CODE(pack_integer(bref, ue_category_v1170, (uint8_t)9u, (uint8_t)10u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -111521,7 +111347,7 @@ SRSASN_CODE ue_eutra_cap_v1170_ies_s::unpack(bit_ref& bref) HANDLE_CODE(phy_layer_params_v1170.unpack(bref)); } if (ue_category_v1170_present) { - HANDLE_CODE(unpack_unalign_integer(ue_category_v1170, bref, (uint8_t)9, (uint8_t)10)); + HANDLE_CODE(unpack_integer(ue_category_v1170, bref, (uint8_t)9u, (uint8_t)10u)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -111720,8 +111546,8 @@ void phy_layer_params_v9d0_s::to_json(json_writer& j) const SRSASN_CODE ue_eutra_cap_v1130_ies_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(phy_layer_params_v1130_present, 1)); - HANDLE_CODE(bref.pack(fdd_add_ue_eutra_capabilities_v1130_present, 1)); - HANDLE_CODE(bref.pack(tdd_add_ue_eutra_capabilities_v1130_present, 1)); + HANDLE_CODE(bref.pack(fdd_add_ue_eutra_cap_v1130_present, 1)); + HANDLE_CODE(bref.pack(tdd_add_ue_eutra_cap_v1130_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); HANDLE_CODE(pdcp_params_v1130.pack(bref)); @@ -111732,11 +111558,11 @@ SRSASN_CODE ue_eutra_cap_v1130_ies_s::pack(bit_ref& bref) const HANDLE_CODE(meas_params_v1130.pack(bref)); HANDLE_CODE(inter_rat_params_cdma2000_v1130.pack(bref)); HANDLE_CODE(other_params_r11.pack(bref)); - if (fdd_add_ue_eutra_capabilities_v1130_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1130.pack(bref)); + if (fdd_add_ue_eutra_cap_v1130_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1130.pack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1130_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1130.pack(bref)); + if (tdd_add_ue_eutra_cap_v1130_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1130.pack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -111747,8 +111573,8 @@ SRSASN_CODE ue_eutra_cap_v1130_ies_s::pack(bit_ref& bref) const SRSASN_CODE ue_eutra_cap_v1130_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(phy_layer_params_v1130_present, 1)); - HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_capabilities_v1130_present, 1)); - HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_capabilities_v1130_present, 1)); + HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_cap_v1130_present, 1)); + HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_cap_v1130_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); HANDLE_CODE(pdcp_params_v1130.unpack(bref)); @@ -111759,11 +111585,11 @@ SRSASN_CODE ue_eutra_cap_v1130_ies_s::unpack(bit_ref& bref) HANDLE_CODE(meas_params_v1130.unpack(bref)); HANDLE_CODE(inter_rat_params_cdma2000_v1130.unpack(bref)); HANDLE_CODE(other_params_r11.unpack(bref)); - if (fdd_add_ue_eutra_capabilities_v1130_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1130.unpack(bref)); + if (fdd_add_ue_eutra_cap_v1130_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1130.unpack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1130_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1130.unpack(bref)); + if (tdd_add_ue_eutra_cap_v1130_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1130.unpack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -111788,13 +111614,13 @@ void ue_eutra_cap_v1130_ies_s::to_json(json_writer& j) const inter_rat_params_cdma2000_v1130.to_json(j); j.write_fieldname("otherParameters-r11"); other_params_r11.to_json(j); - if (fdd_add_ue_eutra_capabilities_v1130_present) { + if (fdd_add_ue_eutra_cap_v1130_present) { j.write_fieldname("fdd-Add-UE-EUTRA-Capabilities-v1130"); - fdd_add_ue_eutra_capabilities_v1130.to_json(j); + fdd_add_ue_eutra_cap_v1130.to_json(j); } - if (tdd_add_ue_eutra_capabilities_v1130_present) { + if (tdd_add_ue_eutra_cap_v1130_present) { j.write_fieldname("tdd-Add-UE-EUTRA-Capabilities-v1130"); - tdd_add_ue_eutra_capabilities_v1130.to_json(j); + tdd_add_ue_eutra_cap_v1130.to_json(j); } if (non_crit_ext_present) { j.write_fieldname("nonCriticalExtension"); @@ -112097,15 +111923,15 @@ SRSASN_CODE ue_eutra_cap_add_xdd_mode_v1060_s::pack(bit_ref& bref) const if (ext) { ext_groups_packer_guard group_flags; - group_flags[0] |= otdoa_positioning_capabilities_r10.is_present(); + group_flags[0] |= otdoa_positioning_cap_r10.is_present(); group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); - HANDLE_CODE(bref.pack(otdoa_positioning_capabilities_r10.is_present(), 1)); - if (otdoa_positioning_capabilities_r10.is_present()) { - HANDLE_CODE(otdoa_positioning_capabilities_r10->pack(bref)); + HANDLE_CODE(bref.pack(otdoa_positioning_cap_r10.is_present(), 1)); + if (otdoa_positioning_cap_r10.is_present()) { + HANDLE_CODE(otdoa_positioning_cap_r10->pack(bref)); } } } @@ -112137,13 +111963,13 @@ SRSASN_CODE ue_eutra_cap_add_xdd_mode_v1060_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); - bool otdoa_positioning_capabilities_r10_present; - HANDLE_CODE(bref.unpack(otdoa_positioning_capabilities_r10_present, 1)); - otdoa_positioning_capabilities_r10.set_present(otdoa_positioning_capabilities_r10_present); - if (otdoa_positioning_capabilities_r10.is_present()) { - HANDLE_CODE(otdoa_positioning_capabilities_r10->unpack(bref)); + bool otdoa_positioning_cap_r10_present; + HANDLE_CODE(bref.unpack(otdoa_positioning_cap_r10_present, 1)); + otdoa_positioning_cap_r10.set_present(otdoa_positioning_cap_r10_present); + if (otdoa_positioning_cap_r10.is_present()) { + HANDLE_CODE(otdoa_positioning_cap_r10->unpack(bref)); } } } @@ -112168,9 +111994,9 @@ void ue_eutra_cap_add_xdd_mode_v1060_s::to_json(json_writer& j) const inter_rat_params_utra_tdd_v1060.to_json(j); } if (ext) { - if (otdoa_positioning_capabilities_r10.is_present()) { + if (otdoa_positioning_cap_r10.is_present()) { j.write_fieldname("otdoa-PositioningCapabilities-r10"); - otdoa_positioning_capabilities_r10->to_json(j); + otdoa_positioning_cap_r10->to_json(j); } } j.end_obj(); @@ -112206,16 +112032,16 @@ void ue_based_netw_perf_meas_params_r10_s::to_json(json_writer& j) const // UE-EUTRA-Capability-v1060-IEs ::= SEQUENCE SRSASN_CODE ue_eutra_cap_v1060_ies_s::pack(bit_ref& bref) const { - HANDLE_CODE(bref.pack(fdd_add_ue_eutra_capabilities_v1060_present, 1)); - HANDLE_CODE(bref.pack(tdd_add_ue_eutra_capabilities_v1060_present, 1)); + HANDLE_CODE(bref.pack(fdd_add_ue_eutra_cap_v1060_present, 1)); + HANDLE_CODE(bref.pack(tdd_add_ue_eutra_cap_v1060_present, 1)); HANDLE_CODE(bref.pack(rf_params_v1060_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); - if (fdd_add_ue_eutra_capabilities_v1060_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1060.pack(bref)); + if (fdd_add_ue_eutra_cap_v1060_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1060.pack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1060_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1060.pack(bref)); + if (tdd_add_ue_eutra_cap_v1060_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1060.pack(bref)); } if (rf_params_v1060_present) { HANDLE_CODE(rf_params_v1060.pack(bref)); @@ -112228,16 +112054,16 @@ SRSASN_CODE ue_eutra_cap_v1060_ies_s::pack(bit_ref& bref) const } SRSASN_CODE ue_eutra_cap_v1060_ies_s::unpack(bit_ref& bref) { - HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_capabilities_v1060_present, 1)); - HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_capabilities_v1060_present, 1)); + HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_cap_v1060_present, 1)); + HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_cap_v1060_present, 1)); HANDLE_CODE(bref.unpack(rf_params_v1060_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); - if (fdd_add_ue_eutra_capabilities_v1060_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_v1060.unpack(bref)); + if (fdd_add_ue_eutra_cap_v1060_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_v1060.unpack(bref)); } - if (tdd_add_ue_eutra_capabilities_v1060_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_v1060.unpack(bref)); + if (tdd_add_ue_eutra_cap_v1060_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_v1060.unpack(bref)); } if (rf_params_v1060_present) { HANDLE_CODE(rf_params_v1060.unpack(bref)); @@ -112251,13 +112077,13 @@ SRSASN_CODE ue_eutra_cap_v1060_ies_s::unpack(bit_ref& bref) void ue_eutra_cap_v1060_ies_s::to_json(json_writer& j) const { j.start_obj(); - if (fdd_add_ue_eutra_capabilities_v1060_present) { + if (fdd_add_ue_eutra_cap_v1060_present) { j.write_fieldname("fdd-Add-UE-EUTRA-Capabilities-v1060"); - fdd_add_ue_eutra_capabilities_v1060.to_json(j); + fdd_add_ue_eutra_cap_v1060.to_json(j); } - if (tdd_add_ue_eutra_capabilities_v1060_present) { + if (tdd_add_ue_eutra_cap_v1060_present) { j.write_fieldname("tdd-Add-UE-EUTRA-Capabilities-v1060"); - tdd_add_ue_eutra_capabilities_v1060.to_json(j); + tdd_add_ue_eutra_cap_v1060.to_json(j); } if (rf_params_v1060_present) { j.write_fieldname("rf-Parameters-v1060"); @@ -112430,7 +112256,7 @@ SRSASN_CODE ue_eutra_cap_v1020_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (ue_category_v1020_present) { - HANDLE_CODE(pack_unalign_integer(bref, ue_category_v1020, (uint8_t)6, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, ue_category_v1020, (uint8_t)6u, (uint8_t)8u)); } if (phy_layer_params_v1020_present) { HANDLE_CODE(phy_layer_params_v1020.pack(bref)); @@ -112472,7 +112298,7 @@ SRSASN_CODE ue_eutra_cap_v1020_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (ue_category_v1020_present) { - HANDLE_CODE(unpack_unalign_integer(ue_category_v1020, bref, (uint8_t)6, (uint8_t)8)); + HANDLE_CODE(unpack_integer(ue_category_v1020, bref, (uint8_t)6u, (uint8_t)8u)); } if (phy_layer_params_v1020_present) { HANDLE_CODE(phy_layer_params_v1020.unpack(bref)); @@ -112545,18 +112371,18 @@ void ue_eutra_cap_v1020_ies_s::to_json(json_writer& j) const SRSASN_CODE ue_eutra_cap_v9a0_ies_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(feature_group_ind_rel9_add_r9_present, 1)); - HANDLE_CODE(bref.pack(fdd_add_ue_eutra_capabilities_r9_present, 1)); - HANDLE_CODE(bref.pack(tdd_add_ue_eutra_capabilities_r9_present, 1)); + HANDLE_CODE(bref.pack(fdd_add_ue_eutra_cap_r9_present, 1)); + HANDLE_CODE(bref.pack(tdd_add_ue_eutra_cap_r9_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (feature_group_ind_rel9_add_r9_present) { HANDLE_CODE(feature_group_ind_rel9_add_r9.pack(bref)); } - if (fdd_add_ue_eutra_capabilities_r9_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_r9.pack(bref)); + if (fdd_add_ue_eutra_cap_r9_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_r9.pack(bref)); } - if (tdd_add_ue_eutra_capabilities_r9_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_r9.pack(bref)); + if (tdd_add_ue_eutra_cap_r9_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_r9.pack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -112567,18 +112393,18 @@ SRSASN_CODE ue_eutra_cap_v9a0_ies_s::pack(bit_ref& bref) const SRSASN_CODE ue_eutra_cap_v9a0_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(feature_group_ind_rel9_add_r9_present, 1)); - HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_capabilities_r9_present, 1)); - HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_capabilities_r9_present, 1)); + HANDLE_CODE(bref.unpack(fdd_add_ue_eutra_cap_r9_present, 1)); + HANDLE_CODE(bref.unpack(tdd_add_ue_eutra_cap_r9_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (feature_group_ind_rel9_add_r9_present) { HANDLE_CODE(feature_group_ind_rel9_add_r9.unpack(bref)); } - if (fdd_add_ue_eutra_capabilities_r9_present) { - HANDLE_CODE(fdd_add_ue_eutra_capabilities_r9.unpack(bref)); + if (fdd_add_ue_eutra_cap_r9_present) { + HANDLE_CODE(fdd_add_ue_eutra_cap_r9.unpack(bref)); } - if (tdd_add_ue_eutra_capabilities_r9_present) { - HANDLE_CODE(tdd_add_ue_eutra_capabilities_r9.unpack(bref)); + if (tdd_add_ue_eutra_cap_r9_present) { + HANDLE_CODE(tdd_add_ue_eutra_cap_r9.unpack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -112592,13 +112418,13 @@ void ue_eutra_cap_v9a0_ies_s::to_json(json_writer& j) const if (feature_group_ind_rel9_add_r9_present) { j.write_str("featureGroupIndRel9Add-r9", feature_group_ind_rel9_add_r9.to_string()); } - if (fdd_add_ue_eutra_capabilities_r9_present) { + if (fdd_add_ue_eutra_cap_r9_present) { j.write_fieldname("fdd-Add-UE-EUTRA-Capabilities-r9"); - fdd_add_ue_eutra_capabilities_r9.to_json(j); + fdd_add_ue_eutra_cap_r9.to_json(j); } - if (tdd_add_ue_eutra_capabilities_r9_present) { + if (tdd_add_ue_eutra_cap_r9_present) { j.write_fieldname("tdd-Add-UE-EUTRA-Capabilities-r9"); - tdd_add_ue_eutra_capabilities_r9.to_json(j); + tdd_add_ue_eutra_cap_r9.to_json(j); } if (non_crit_ext_present) { j.write_fieldname("nonCriticalExtension"); @@ -112843,8 +112669,8 @@ SRSASN_CODE ue_eutra_cap_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(feature_group_inds_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); - HANDLE_CODE(pack_enum(bref, access_stratum_release)); - HANDLE_CODE(pack_unalign_integer(bref, ue_category, (uint8_t)1, (uint8_t)5)); + HANDLE_CODE(access_stratum_release.pack(bref)); + HANDLE_CODE(pack_integer(bref, ue_category, (uint8_t)1u, (uint8_t)5u)); HANDLE_CODE(pdcp_params.pack(bref)); HANDLE_CODE(phy_layer_params.pack(bref)); HANDLE_CODE(rf_params.pack(bref)); @@ -112891,8 +112717,8 @@ SRSASN_CODE ue_eutra_cap_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(feature_group_inds_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); - HANDLE_CODE(unpack_enum(access_stratum_release, bref)); - HANDLE_CODE(unpack_unalign_integer(ue_category, bref, (uint8_t)1, (uint8_t)5)); + HANDLE_CODE(access_stratum_release.unpack(bref)); + HANDLE_CODE(unpack_integer(ue_category, bref, (uint8_t)1u, (uint8_t)5u)); HANDLE_CODE(pdcp_params.unpack(bref)); HANDLE_CODE(phy_layer_params.unpack(bref)); HANDLE_CODE(rf_params.unpack(bref)); @@ -113177,7 +113003,7 @@ void scg_cfg_r12_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE scg_cfg_r12_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -113193,7 +113019,7 @@ SRSASN_CODE scg_cfg_r12_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE scg_cfg_r12_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -113241,7 +113067,7 @@ void scg_cfg_r12_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE scg_cfg_r12_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::scg_cfg_r12: HANDLE_CODE(c.pack(bref)); @@ -113269,7 +113095,7 @@ SRSASN_CODE scg_cfg_r12_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE scg_cfg_r12_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::scg_cfg_r12: @@ -113308,7 +113134,7 @@ SRSASN_CODE as_cfg_s::pack(bit_ref& bref) const HANDLE_CODE(source_sib_type1.pack(bref)); HANDLE_CODE(source_sib_type2.pack(bref)); HANDLE_CODE(ant_info_common.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, source_dl_carrier_freq, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, source_dl_carrier_freq, (uint32_t)0u, (uint32_t)65535u)); if (ext) { ext_groups_packer_guard group_flags; @@ -113320,7 +113146,7 @@ SRSASN_CODE as_cfg_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(source_sib_type1_ext_present, 1)); if (source_sib_type1_ext_present) { @@ -113329,7 +113155,7 @@ SRSASN_CODE as_cfg_s::pack(bit_ref& bref) const HANDLE_CODE(source_other_cfg_r9->pack(bref)); } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(source_scell_cfg_list_r10.is_present(), 1)); if (source_scell_cfg_list_r10.is_present()) { @@ -113337,7 +113163,7 @@ SRSASN_CODE as_cfg_s::pack(bit_ref& bref) const } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(source_cfg_scg_r12.is_present(), 1)); if (source_cfg_scg_r12.is_present()) { @@ -113345,7 +113171,7 @@ SRSASN_CODE as_cfg_s::pack(bit_ref& bref) const } } if (group_flags[3]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(as_cfg_nr_r15.is_present(), 1)); if (as_cfg_nr_r15.is_present()) { @@ -113366,14 +113192,14 @@ SRSASN_CODE as_cfg_s::unpack(bit_ref& bref) HANDLE_CODE(source_sib_type1.unpack(bref)); HANDLE_CODE(source_sib_type2.unpack(bref)); HANDLE_CODE(ant_info_common.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(source_dl_carrier_freq, bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(source_dl_carrier_freq, bref, (uint32_t)0u, (uint32_t)65535u)); if (ext) { ext_groups_unpacker_guard group_flags(4); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(source_sib_type1_ext_present, 1)); if (source_sib_type1_ext_present) { @@ -113382,7 +113208,7 @@ SRSASN_CODE as_cfg_s::unpack(bit_ref& bref) HANDLE_CODE(source_other_cfg_r9->unpack(bref)); } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool source_scell_cfg_list_r10_present; HANDLE_CODE(bref.unpack(source_scell_cfg_list_r10_present, 1)); @@ -113392,7 +113218,7 @@ SRSASN_CODE as_cfg_s::unpack(bit_ref& bref) } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool source_cfg_scg_r12_present; HANDLE_CODE(bref.unpack(source_cfg_scg_r12_present, 1)); @@ -113402,7 +113228,7 @@ SRSASN_CODE as_cfg_s::unpack(bit_ref& bref) } } if (group_flags[3]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool as_cfg_nr_r15_present; HANDLE_CODE(bref.unpack(as_cfg_nr_r15_present, 1)); @@ -113651,13 +113477,13 @@ void as_cfg_v1430_s::to_json(json_writer& j) const // AS-Config-v9e0 ::= SEQUENCE SRSASN_CODE as_cfg_v9e0_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, source_dl_carrier_freq_v9e0, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, source_dl_carrier_freq_v9e0, (uint32_t)65536u, (uint32_t)262143u)); return SRSASN_SUCCESS; } SRSASN_CODE as_cfg_v9e0_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(source_dl_carrier_freq_v9e0, bref, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(source_dl_carrier_freq_v9e0, bref, (uint32_t)65536u, (uint32_t)262143u)); return SRSASN_SUCCESS; } @@ -113700,7 +113526,7 @@ SRSASN_CODE reest_info_s::pack(bit_ref& bref) const bref.pack(ext, 1); HANDLE_CODE(bref.pack(add_reestab_info_list_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, source_pci, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(pack_integer(bref, source_pci, (uint16_t)0u, (uint16_t)503u)); HANDLE_CODE(target_cell_short_mac_i.pack(bref)); if (add_reestab_info_list_present) { HANDLE_CODE(pack_dyn_seq_of(bref, add_reestab_info_list, 1, 32)); @@ -113713,7 +113539,7 @@ SRSASN_CODE reest_info_s::unpack(bit_ref& bref) bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(add_reestab_info_list_present, 1)); - HANDLE_CODE(unpack_unalign_integer(source_pci, bref, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(unpack_integer(source_pci, bref, (uint16_t)0u, (uint16_t)503u)); HANDLE_CODE(target_cell_short_mac_i.unpack(bref)); if (add_reestab_info_list_present) { HANDLE_CODE(unpack_dyn_seq_of(add_reestab_info_list, bref, 1, 32)); @@ -113792,7 +113618,7 @@ SRSASN_CODE as_context_v1130_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(sidelink_ue_info_r12_present, 1)); if (sidelink_ue_info_r12_present) { @@ -113800,7 +113626,7 @@ SRSASN_CODE as_context_v1130_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(source_context_en_dc_r15_present, 1)); if (source_context_en_dc_r15_present) { @@ -113832,7 +113658,7 @@ SRSASN_CODE as_context_v1130_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(sidelink_ue_info_r12_present, 1)); if (sidelink_ue_info_r12_present) { @@ -113840,7 +113666,7 @@ SRSASN_CODE as_context_v1130_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(source_context_en_dc_r15_present, 1)); if (source_context_en_dc_r15_present) { @@ -113910,13 +113736,13 @@ SRSASN_CODE candidate_cell_info_r10_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(rsrp_result_r10_present, 1)); HANDLE_CODE(bref.pack(rsrq_result_r10_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, pci_r10, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_unalign_integer(bref, dl_carrier_freq_r10, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(pack_integer(bref, pci_r10, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(pack_integer(bref, dl_carrier_freq_r10, (uint32_t)0u, (uint32_t)65535u)); if (rsrp_result_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, rsrp_result_r10, (uint8_t)0, (uint8_t)97)); + HANDLE_CODE(pack_integer(bref, rsrp_result_r10, (uint8_t)0u, (uint8_t)97u)); } if (rsrq_result_r10_present) { - HANDLE_CODE(pack_unalign_integer(bref, rsrq_result_r10, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(pack_integer(bref, rsrq_result_r10, (uint8_t)0u, (uint8_t)34u)); } if (ext) { @@ -113927,27 +113753,27 @@ SRSASN_CODE candidate_cell_info_r10_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(dl_carrier_freq_v1090_present, 1)); if (dl_carrier_freq_v1090_present) { - HANDLE_CODE(pack_unalign_integer(bref, dl_carrier_freq_v1090, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, dl_carrier_freq_v1090, (uint32_t)65536u, (uint32_t)262143u)); } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(rsrq_result_v1250_present, 1)); if (rsrq_result_v1250_present) { - HANDLE_CODE(pack_unalign_integer(bref, rsrq_result_v1250, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(pack_integer(bref, rsrq_result_v1250, (int8_t)-30, (int8_t)46)); } } if (group_flags[2]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(rs_sinr_result_r13_present, 1)); if (rs_sinr_result_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, rs_sinr_result_r13, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, rs_sinr_result_r13, (uint8_t)0u, (uint8_t)127u)); } } } @@ -113959,13 +113785,13 @@ SRSASN_CODE candidate_cell_info_r10_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(rsrp_result_r10_present, 1)); HANDLE_CODE(bref.unpack(rsrq_result_r10_present, 1)); - HANDLE_CODE(unpack_unalign_integer(pci_r10, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_unalign_integer(dl_carrier_freq_r10, bref, (uint16_t)0, (uint16_t)65535)); + HANDLE_CODE(unpack_integer(pci_r10, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(unpack_integer(dl_carrier_freq_r10, bref, (uint32_t)0u, (uint32_t)65535u)); if (rsrp_result_r10_present) { - HANDLE_CODE(unpack_unalign_integer(rsrp_result_r10, bref, (uint8_t)0, (uint8_t)97)); + HANDLE_CODE(unpack_integer(rsrp_result_r10, bref, (uint8_t)0u, (uint8_t)97u)); } if (rsrq_result_r10_present) { - HANDLE_CODE(unpack_unalign_integer(rsrq_result_r10, bref, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(unpack_integer(rsrq_result_r10, bref, (uint8_t)0u, (uint8_t)34u)); } if (ext) { @@ -113973,27 +113799,27 @@ SRSASN_CODE candidate_cell_info_r10_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(dl_carrier_freq_v1090_present, 1)); if (dl_carrier_freq_v1090_present) { - HANDLE_CODE(unpack_unalign_integer(dl_carrier_freq_v1090, bref, (uint32_t)65536, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(dl_carrier_freq_v1090, bref, (uint32_t)65536u, (uint32_t)262143u)); } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(rsrq_result_v1250_present, 1)); if (rsrq_result_v1250_present) { - HANDLE_CODE(unpack_unalign_integer(rsrq_result_v1250, bref, (int8_t)-30, (int8_t)46)); + HANDLE_CODE(unpack_integer(rsrq_result_v1250, bref, (int8_t)-30, (int8_t)46)); } } if (group_flags[2]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(rs_sinr_result_r13_present, 1)); if (rs_sinr_result_r13_present) { - HANDLE_CODE(unpack_unalign_integer(rs_sinr_result_r13, bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(rs_sinr_result_r13, bref, (uint8_t)0u, (uint8_t)127u)); } } } @@ -114031,33 +113857,32 @@ SRSASN_CODE cell_to_add_mod_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(cell_identif_r12_present, 1)); HANDLE_CODE(bref.pack(meas_result_cell_to_add_r12_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, s_cell_idx_r12, (uint8_t)1, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, scell_idx_r12, (uint8_t)1u, (uint8_t)7u)); if (cell_identif_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, cell_identif_r12.pci_r12, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(pack_unalign_integer(bref, cell_identif_r12.dl_carrier_freq_r12, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, cell_identif_r12.pci_r12, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(pack_integer(bref, cell_identif_r12.dl_carrier_freq_r12, (uint32_t)0u, (uint32_t)262143u)); } if (meas_result_cell_to_add_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_result_cell_to_add_r12.rsrp_result_r12, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(pack_unalign_integer(bref, meas_result_cell_to_add_r12.rsrq_result_r12, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(pack_integer(bref, meas_result_cell_to_add_r12.rsrp_result_r12, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(pack_integer(bref, meas_result_cell_to_add_r12.rsrq_result_r12, (uint8_t)0u, (uint8_t)34u)); } if (ext) { ext_groups_packer_guard group_flags; - group_flags[0] |= s_cell_idx_r13_present; + group_flags[0] |= scell_idx_r13_present; group_flags[0] |= meas_result_cell_to_add_v1310.is_present(); group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); - HANDLE_CODE(bref.pack(s_cell_idx_r13_present, 1)); + HANDLE_CODE(bref.pack(scell_idx_r13_present, 1)); HANDLE_CODE(bref.pack(meas_result_cell_to_add_v1310.is_present(), 1)); - if (s_cell_idx_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, s_cell_idx_r13, (uint8_t)1, (uint8_t)31)); + if (scell_idx_r13_present) { + HANDLE_CODE(pack_integer(bref, scell_idx_r13, (uint8_t)1u, (uint8_t)31u)); } if (meas_result_cell_to_add_v1310.is_present()) { - HANDLE_CODE( - pack_unalign_integer(bref, meas_result_cell_to_add_v1310->rs_sinr_result_r13, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, meas_result_cell_to_add_v1310->rs_sinr_result_r13, (uint8_t)0u, (uint8_t)127u)); } } } @@ -114069,14 +113894,14 @@ SRSASN_CODE cell_to_add_mod_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(cell_identif_r12_present, 1)); HANDLE_CODE(bref.unpack(meas_result_cell_to_add_r12_present, 1)); - HANDLE_CODE(unpack_unalign_integer(s_cell_idx_r12, bref, (uint8_t)1, (uint8_t)7)); + HANDLE_CODE(unpack_integer(scell_idx_r12, bref, (uint8_t)1u, (uint8_t)7u)); if (cell_identif_r12_present) { - HANDLE_CODE(unpack_unalign_integer(cell_identif_r12.pci_r12, bref, (uint16_t)0, (uint16_t)503)); - HANDLE_CODE(unpack_unalign_integer(cell_identif_r12.dl_carrier_freq_r12, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(cell_identif_r12.pci_r12, bref, (uint16_t)0u, (uint16_t)503u)); + HANDLE_CODE(unpack_integer(cell_identif_r12.dl_carrier_freq_r12, bref, (uint32_t)0u, (uint32_t)262143u)); } if (meas_result_cell_to_add_r12_present) { - HANDLE_CODE(unpack_unalign_integer(meas_result_cell_to_add_r12.rsrp_result_r12, bref, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(unpack_unalign_integer(meas_result_cell_to_add_r12.rsrq_result_r12, bref, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(unpack_integer(meas_result_cell_to_add_r12.rsrp_result_r12, bref, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(unpack_integer(meas_result_cell_to_add_r12.rsrq_result_r12, bref, (uint8_t)0u, (uint8_t)34u)); } if (ext) { @@ -114084,18 +113909,18 @@ SRSASN_CODE cell_to_add_mod_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); - HANDLE_CODE(bref.unpack(s_cell_idx_r13_present, 1)); + HANDLE_CODE(bref.unpack(scell_idx_r13_present, 1)); bool meas_result_cell_to_add_v1310_present; HANDLE_CODE(bref.unpack(meas_result_cell_to_add_v1310_present, 1)); meas_result_cell_to_add_v1310.set_present(meas_result_cell_to_add_v1310_present); - if (s_cell_idx_r13_present) { - HANDLE_CODE(unpack_unalign_integer(s_cell_idx_r13, bref, (uint8_t)1, (uint8_t)31)); + if (scell_idx_r13_present) { + HANDLE_CODE(unpack_integer(scell_idx_r13, bref, (uint8_t)1u, (uint8_t)31u)); } if (meas_result_cell_to_add_v1310.is_present()) { HANDLE_CODE( - unpack_unalign_integer(meas_result_cell_to_add_v1310->rs_sinr_result_r13, bref, (uint8_t)0, (uint8_t)127)); + unpack_integer(meas_result_cell_to_add_v1310->rs_sinr_result_r13, bref, (uint8_t)0u, (uint8_t)127u)); } } } @@ -114104,7 +113929,7 @@ SRSASN_CODE cell_to_add_mod_r12_s::unpack(bit_ref& bref) void cell_to_add_mod_r12_s::to_json(json_writer& j) const { j.start_obj(); - j.write_int("sCellIndex-r12", s_cell_idx_r12); + j.write_int("sCellIndex-r12", scell_idx_r12); if (cell_identif_r12_present) { j.write_fieldname("cellIdentification-r12"); j.start_obj(); @@ -114120,8 +113945,8 @@ void cell_to_add_mod_r12_s::to_json(json_writer& j) const j.end_obj(); } if (ext) { - if (s_cell_idx_r13_present) { - j.write_int("sCellIndex-r13", s_cell_idx_r13); + if (scell_idx_r13_present) { + j.write_int("sCellIndex-r13", scell_idx_r13); } if (meas_result_cell_to_add_v1310.is_present()) { j.write_fieldname("measResultCellToAdd-v1310"); @@ -114288,10 +114113,10 @@ void cells_triggered_list_item_c_::to_json(json_writer& j) const } SRSASN_CODE cells_triggered_list_item_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::pci_eutra: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)503u)); break; case types::pci_utra: HANDLE_CODE(c.get().pack(bref)); @@ -114301,18 +114126,18 @@ SRSASN_CODE cells_triggered_list_item_c_::pack(bit_ref& bref) const HANDLE_CODE(c.get().pci.pack(bref)); break; case types::pci_cdma2000: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)511u)); break; case types::wlan_ids_r13: HANDLE_CODE(c.get().pack(bref)); break; case types::pci_nr_r15: HANDLE_CODE(bref.pack(c.get().rs_idx_list_r15_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, c.get().carrier_freq, (uint32_t)0, (uint32_t)3279165)); - HANDLE_CODE(pack_unalign_integer(bref, c.get().pci, (uint16_t)0, (uint16_t)1007)); + HANDLE_CODE(pack_integer(bref, c.get().carrier_freq, (uint32_t)0u, (uint32_t)3279165u)); + HANDLE_CODE(pack_integer(bref, c.get().pci, (uint16_t)0u, (uint16_t)1007u)); if (c.get().rs_idx_list_r15_present) { - HANDLE_CODE(pack_dyn_seq_of( - bref, c.get().rs_idx_list_r15, 1, 64, UnalignedIntegerPacker(0, 63))); + HANDLE_CODE( + pack_dyn_seq_of(bref, c.get().rs_idx_list_r15, 1, 64, integer_packer(0, 63))); } break; default: @@ -114324,11 +114149,11 @@ SRSASN_CODE cells_triggered_list_item_c_::pack(bit_ref& bref) const SRSASN_CODE cells_triggered_list_item_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::pci_eutra: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)503u)); break; case types::pci_utra: HANDLE_CODE(c.get().unpack(bref)); @@ -114338,18 +114163,18 @@ SRSASN_CODE cells_triggered_list_item_c_::unpack(bit_ref& bref) HANDLE_CODE(c.get().pci.unpack(bref)); break; case types::pci_cdma2000: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)511u)); break; case types::wlan_ids_r13: HANDLE_CODE(c.get().unpack(bref)); break; case types::pci_nr_r15: HANDLE_CODE(bref.unpack(c.get().rs_idx_list_r15_present, 1)); - HANDLE_CODE(unpack_unalign_integer(c.get().carrier_freq, bref, (uint32_t)0, (uint32_t)3279165)); - HANDLE_CODE(unpack_unalign_integer(c.get().pci, bref, (uint16_t)0, (uint16_t)1007)); + HANDLE_CODE(unpack_integer(c.get().carrier_freq, bref, (uint32_t)0u, (uint32_t)3279165u)); + HANDLE_CODE(unpack_integer(c.get().pci, bref, (uint16_t)0u, (uint16_t)1007u)); if (c.get().rs_idx_list_r15_present) { - HANDLE_CODE(unpack_dyn_seq_of( - c.get().rs_idx_list_r15, bref, 1, 64, UnalignedIntegerPacker(0, 63))); + HANDLE_CODE( + unpack_dyn_seq_of(c.get().rs_idx_list_r15, bref, 1, 64, integer_packer(0, 63))); } break; default: @@ -114420,13 +114245,13 @@ void cells_triggered_list_item_c_::pci_utra_c_::to_json(json_writer& j) const } SRSASN_CODE cells_triggered_list_item_c_::pci_utra_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::fdd: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint16_t)0u, (uint16_t)511u)); break; case types::tdd: - HANDLE_CODE(pack_unalign_integer(bref, c.get(), (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, c.get(), (uint8_t)0u, (uint8_t)127u)); break; default: log_invalid_choice_id(type_, "cells_triggered_list_item_c_::pci_utra_c_"); @@ -114437,14 +114262,14 @@ SRSASN_CODE cells_triggered_list_item_c_::pci_utra_c_::pack(bit_ref& bref) const SRSASN_CODE cells_triggered_list_item_c_::pci_utra_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::fdd: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint16_t)0, (uint16_t)511)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint16_t)0u, (uint16_t)511u)); break; case types::tdd: - HANDLE_CODE(unpack_unalign_integer(c.get(), bref, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(unpack_integer(c.get(), bref, (uint8_t)0u, (uint8_t)127u)); break; default: log_invalid_choice_id(type_, "cells_triggered_list_item_c_::pci_utra_c_"); @@ -114461,11 +114286,11 @@ SRSASN_CODE drb_info_scg_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(drb_type_r12_present, 1)); if (eps_bearer_id_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, eps_bearer_id_r12, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(pack_integer(bref, eps_bearer_id_r12, (uint8_t)0u, (uint8_t)15u)); } - HANDLE_CODE(pack_unalign_integer(bref, drb_id_r12, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, drb_id_r12, (uint8_t)1u, (uint8_t)32u)); if (drb_type_r12_present) { - HANDLE_CODE(pack_enum(bref, drb_type_r12)); + HANDLE_CODE(drb_type_r12.pack(bref)); } return SRSASN_SUCCESS; @@ -114477,11 +114302,11 @@ SRSASN_CODE drb_info_scg_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(drb_type_r12_present, 1)); if (eps_bearer_id_r12_present) { - HANDLE_CODE(unpack_unalign_integer(eps_bearer_id_r12, bref, (uint8_t)0, (uint8_t)15)); + HANDLE_CODE(unpack_integer(eps_bearer_id_r12, bref, (uint8_t)0u, (uint8_t)15u)); } - HANDLE_CODE(unpack_unalign_integer(drb_id_r12, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(drb_id_r12, bref, (uint8_t)1u, (uint8_t)32u)); if (drb_type_r12_present) { - HANDLE_CODE(unpack_enum(drb_type_r12, bref)); + HANDLE_CODE(drb_type_r12.unpack(bref)); } return SRSASN_SUCCESS; @@ -114627,7 +114452,7 @@ void ho_cmd_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE ho_cmd_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -114643,7 +114468,7 @@ SRSASN_CODE ho_cmd_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE ho_cmd_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -114691,7 +114516,7 @@ void ho_cmd_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE ho_cmd_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ho_cmd_r8: HANDLE_CODE(c.pack(bref)); @@ -114719,7 +114544,7 @@ SRSASN_CODE ho_cmd_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE ho_cmd_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ho_cmd_r8: @@ -114852,7 +114677,7 @@ SRSASN_CODE ho_prep_info_v1250_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (ue_supported_earfcn_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, ue_supported_earfcn_r12, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(pack_integer(bref, ue_supported_earfcn_r12, (uint32_t)0u, (uint32_t)262143u)); } if (as_cfg_v1250_present) { HANDLE_CODE(as_cfg_v1250.pack(bref)); @@ -114870,7 +114695,7 @@ SRSASN_CODE ho_prep_info_v1250_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (ue_supported_earfcn_r12_present) { - HANDLE_CODE(unpack_unalign_integer(ue_supported_earfcn_r12, bref, (uint32_t)0, (uint32_t)262143)); + HANDLE_CODE(unpack_integer(ue_supported_earfcn_r12, bref, (uint32_t)0u, (uint32_t)262143u)); } if (as_cfg_v1250_present) { HANDLE_CODE(as_cfg_v1250.unpack(bref)); @@ -115113,7 +114938,7 @@ SRSASN_CODE ho_prep_info_v920_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (ue_cfg_release_r9_present) { - HANDLE_CODE(pack_enum(bref, ue_cfg_release_r9)); + HANDLE_CODE(ue_cfg_release_r9.pack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -115127,7 +114952,7 @@ SRSASN_CODE ho_prep_info_v920_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (ue_cfg_release_r9_present) { - HANDLE_CODE(unpack_enum(ue_cfg_release_r9, bref)); + HANDLE_CODE(ue_cfg_release_r9.unpack(bref)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -115155,7 +114980,7 @@ SRSASN_CODE rrm_cfg_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(ue_inactive_time_present, 1)); if (ue_inactive_time_present) { - HANDLE_CODE(pack_enum(bref, ue_inactive_time)); + HANDLE_CODE(ue_inactive_time.pack(bref)); } if (ext) { @@ -115165,7 +114990,7 @@ SRSASN_CODE rrm_cfg_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(candidate_cell_info_list_r10.is_present(), 1)); if (candidate_cell_info_list_r10.is_present()) { @@ -115173,7 +114998,7 @@ SRSASN_CODE rrm_cfg_s::pack(bit_ref& bref) const } } if (group_flags[1]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(candidate_cell_info_list_nr_r15.is_present(), 1)); if (candidate_cell_info_list_nr_r15.is_present()) { @@ -115189,7 +115014,7 @@ SRSASN_CODE rrm_cfg_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(ue_inactive_time_present, 1)); if (ue_inactive_time_present) { - HANDLE_CODE(unpack_enum(ue_inactive_time, bref)); + HANDLE_CODE(ue_inactive_time.unpack(bref)); } if (ext) { @@ -115197,7 +115022,7 @@ SRSASN_CODE rrm_cfg_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool candidate_cell_info_list_r10_present; HANDLE_CODE(bref.unpack(candidate_cell_info_list_r10_present, 1)); @@ -115207,7 +115032,7 @@ SRSASN_CODE rrm_cfg_s::unpack(bit_ref& bref) } } if (group_flags[1]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool candidate_cell_info_list_nr_r15_present; HANDLE_CODE(bref.unpack(candidate_cell_info_list_nr_r15_present, 1)); @@ -115417,7 +115242,7 @@ void ho_prep_info_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE ho_prep_info_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -115433,7 +115258,7 @@ SRSASN_CODE ho_prep_info_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE ho_prep_info_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -115481,7 +115306,7 @@ void ho_prep_info_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE ho_prep_info_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ho_prep_info_r8: HANDLE_CODE(c.pack(bref)); @@ -115509,7 +115334,7 @@ SRSASN_CODE ho_prep_info_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE ho_prep_info_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ho_prep_info_r8: @@ -115577,13 +115402,13 @@ void ho_prep_info_v1530_ies_s::to_json(json_writer& j) const // TDD-ConfigSL-r12 ::= SEQUENCE SRSASN_CODE tdd_cfg_sl_r12_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, sf_assign_sl_r12)); + HANDLE_CODE(sf_assign_sl_r12.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE tdd_cfg_sl_r12_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(sf_assign_sl_r12, bref)); + HANDLE_CODE(sf_assign_sl_r12.unpack(bref)); return SRSASN_SUCCESS; } @@ -115597,10 +115422,10 @@ void tdd_cfg_sl_r12_s::to_json(json_writer& j) const // MasterInformationBlock-SL ::= SEQUENCE SRSASN_CODE mib_sl_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, sl_bw_r12)); + HANDLE_CODE(sl_bw_r12.pack(bref)); HANDLE_CODE(tdd_cfg_sl_r12.pack(bref)); HANDLE_CODE(direct_frame_num_r12.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, direct_sf_num_r12, (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(pack_integer(bref, direct_sf_num_r12, (uint8_t)0u, (uint8_t)9u)); HANDLE_CODE(bref.pack(in_coverage_r12, 1)); HANDLE_CODE(reserved_r12.pack(bref)); @@ -115608,10 +115433,10 @@ SRSASN_CODE mib_sl_s::pack(bit_ref& bref) const } SRSASN_CODE mib_sl_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(sl_bw_r12, bref)); + HANDLE_CODE(sl_bw_r12.unpack(bref)); HANDLE_CODE(tdd_cfg_sl_r12.unpack(bref)); HANDLE_CODE(direct_frame_num_r12.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(direct_sf_num_r12, bref, (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(unpack_integer(direct_sf_num_r12, bref, (uint8_t)0u, (uint8_t)9u)); HANDLE_CODE(bref.unpack(in_coverage_r12, 1)); HANDLE_CODE(reserved_r12.unpack(bref)); @@ -115633,10 +115458,10 @@ void mib_sl_s::to_json(json_writer& j) const // MasterInformationBlock-SL-V2X-r14 ::= SEQUENCE SRSASN_CODE mib_sl_v2x_r14_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_enum(bref, sl_bw_r14)); + HANDLE_CODE(sl_bw_r14.pack(bref)); HANDLE_CODE(tdd_cfg_sl_r14.pack(bref)); HANDLE_CODE(direct_frame_num_r14.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, direct_sf_num_r14, (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(pack_integer(bref, direct_sf_num_r14, (uint8_t)0u, (uint8_t)9u)); HANDLE_CODE(bref.pack(in_coverage_r14, 1)); HANDLE_CODE(reserved_r14.pack(bref)); @@ -115644,10 +115469,10 @@ SRSASN_CODE mib_sl_v2x_r14_s::pack(bit_ref& bref) const } SRSASN_CODE mib_sl_v2x_r14_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_enum(sl_bw_r14, bref)); + HANDLE_CODE(sl_bw_r14.unpack(bref)); HANDLE_CODE(tdd_cfg_sl_r14.unpack(bref)); HANDLE_CODE(direct_frame_num_r14.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(direct_sf_num_r14, bref, (uint8_t)0, (uint8_t)9)); + HANDLE_CODE(unpack_integer(direct_sf_num_r14, bref, (uint8_t)0u, (uint8_t)9u)); HANDLE_CODE(bref.unpack(in_coverage_r14, 1)); HANDLE_CODE(reserved_r14.unpack(bref)); @@ -115669,14 +115494,14 @@ void mib_sl_v2x_r14_s::to_json(json_writer& j) const // MeasResultRSSI-SCG-r13 ::= SEQUENCE SRSASN_CODE meas_result_rssi_scg_r13_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, serv_cell_id_r13, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, serv_cell_id_r13, (uint8_t)0u, (uint8_t)31u)); HANDLE_CODE(meas_result_for_rssi_r13.pack(bref)); return SRSASN_SUCCESS; } SRSASN_CODE meas_result_rssi_scg_r13_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(serv_cell_id_r13, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(serv_cell_id_r13, bref, (uint8_t)0u, (uint8_t)31u)); HANDLE_CODE(meas_result_for_rssi_r13.unpack(bref)); return SRSASN_SUCCESS; @@ -115694,9 +115519,9 @@ void meas_result_rssi_scg_r13_s::to_json(json_writer& j) const SRSASN_CODE meas_result_serv_cell_scg_r12_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_unalign_integer(bref, serv_cell_id_r12, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(pack_unalign_integer(bref, meas_result_scell_r12.rsrp_result_scell_r12, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(pack_unalign_integer(bref, meas_result_scell_r12.rsrq_result_scell_r12, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(pack_integer(bref, serv_cell_id_r12, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(pack_integer(bref, meas_result_scell_r12.rsrp_result_scell_r12, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(pack_integer(bref, meas_result_scell_r12.rsrq_result_scell_r12, (uint8_t)0u, (uint8_t)34u)); if (ext) { ext_groups_packer_guard group_flags; @@ -115705,16 +115530,15 @@ SRSASN_CODE meas_result_serv_cell_scg_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(serv_cell_id_r13_present, 1)); HANDLE_CODE(bref.pack(meas_result_scell_v1310.is_present(), 1)); if (serv_cell_id_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, serv_cell_id_r13, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(pack_integer(bref, serv_cell_id_r13, (uint8_t)0u, (uint8_t)31u)); } if (meas_result_scell_v1310.is_present()) { - HANDLE_CODE( - pack_unalign_integer(bref, meas_result_scell_v1310->rs_sinr_result_scell_r13, (uint8_t)0, (uint8_t)127)); + HANDLE_CODE(pack_integer(bref, meas_result_scell_v1310->rs_sinr_result_scell_r13, (uint8_t)0u, (uint8_t)127u)); } } } @@ -115723,27 +115547,27 @@ SRSASN_CODE meas_result_serv_cell_scg_r12_s::pack(bit_ref& bref) const SRSASN_CODE meas_result_serv_cell_scg_r12_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_unalign_integer(serv_cell_id_r12, bref, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(unpack_unalign_integer(meas_result_scell_r12.rsrp_result_scell_r12, bref, (uint8_t)0, (uint8_t)97)); - HANDLE_CODE(unpack_unalign_integer(meas_result_scell_r12.rsrq_result_scell_r12, bref, (uint8_t)0, (uint8_t)34)); + HANDLE_CODE(unpack_integer(serv_cell_id_r12, bref, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(unpack_integer(meas_result_scell_r12.rsrp_result_scell_r12, bref, (uint8_t)0u, (uint8_t)97u)); + HANDLE_CODE(unpack_integer(meas_result_scell_r12.rsrq_result_scell_r12, bref, (uint8_t)0u, (uint8_t)34u)); if (ext) { ext_groups_unpacker_guard group_flags(1); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(serv_cell_id_r13_present, 1)); bool meas_result_scell_v1310_present; HANDLE_CODE(bref.unpack(meas_result_scell_v1310_present, 1)); meas_result_scell_v1310.set_present(meas_result_scell_v1310_present); if (serv_cell_id_r13_present) { - HANDLE_CODE(unpack_unalign_integer(serv_cell_id_r13, bref, (uint8_t)0, (uint8_t)31)); + HANDLE_CODE(unpack_integer(serv_cell_id_r13, bref, (uint8_t)0u, (uint8_t)31u)); } if (meas_result_scell_v1310.is_present()) { HANDLE_CODE( - unpack_unalign_integer(meas_result_scell_v1310->rs_sinr_result_scell_r13, bref, (uint8_t)0, (uint8_t)127)); + unpack_integer(meas_result_scell_v1310->rs_sinr_result_scell_r13, bref, (uint8_t)0u, (uint8_t)127u)); } } } @@ -115841,7 +115665,7 @@ SRSASN_CODE scg_cfg_info_v1530_ies_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, drb_to_add_mod_list_scg_r15, 1, 15)); } if (drb_to_release_list_scg_r15_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, drb_to_release_list_scg_r15, 1, 15, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(pack_dyn_seq_of(bref, drb_to_release_list_scg_r15, 1, 15, integer_packer(1, 32))); } return SRSASN_SUCCESS; @@ -115856,7 +115680,7 @@ SRSASN_CODE scg_cfg_info_v1530_ies_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(drb_to_add_mod_list_scg_r15, bref, 1, 15)); } if (drb_to_release_list_scg_r15_present) { - HANDLE_CODE(unpack_dyn_seq_of(drb_to_release_list_scg_r15, bref, 1, 15, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(unpack_dyn_seq_of(drb_to_release_list_scg_r15, bref, 1, 15, integer_packer(1, 32))); } return SRSASN_SUCCESS; @@ -115984,27 +115808,26 @@ void scg_cfg_info_v1330_ies_s::to_json(json_writer& j) const SRSASN_CODE scg_cfg_info_v1310_ies_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(meas_result_sstd_r13_present, 1)); - HANDLE_CODE(bref.pack(s_cell_to_add_mod_list_mcg_ext_r13_present, 1)); + HANDLE_CODE(bref.pack(scell_to_add_mod_list_mcg_ext_r13_present, 1)); HANDLE_CODE(bref.pack(meas_result_serv_cell_list_scg_ext_r13_present, 1)); - HANDLE_CODE(bref.pack(s_cell_to_add_mod_list_scg_ext_r13_present, 1)); - HANDLE_CODE(bref.pack(s_cell_to_release_list_scg_ext_r13_present, 1)); + HANDLE_CODE(bref.pack(scell_to_add_mod_list_scg_ext_r13_present, 1)); + HANDLE_CODE(bref.pack(scell_to_release_list_scg_ext_r13_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (meas_result_sstd_r13_present) { HANDLE_CODE(meas_result_sstd_r13.pack(bref)); } - if (s_cell_to_add_mod_list_mcg_ext_r13_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_to_add_mod_list_mcg_ext_r13, 1, 31)); + if (scell_to_add_mod_list_mcg_ext_r13_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_to_add_mod_list_mcg_ext_r13, 1, 31)); } if (meas_result_serv_cell_list_scg_ext_r13_present) { HANDLE_CODE(pack_dyn_seq_of(bref, meas_result_serv_cell_list_scg_ext_r13, 1, 32)); } - if (s_cell_to_add_mod_list_scg_ext_r13_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_to_add_mod_list_scg_ext_r13, 1, 31)); + if (scell_to_add_mod_list_scg_ext_r13_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_to_add_mod_list_scg_ext_r13, 1, 31)); } - if (s_cell_to_release_list_scg_ext_r13_present) { - HANDLE_CODE( - pack_dyn_seq_of(bref, s_cell_to_release_list_scg_ext_r13, 1, 31, UnalignedIntegerPacker(1, 31))); + if (scell_to_release_list_scg_ext_r13_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_to_release_list_scg_ext_r13, 1, 31, integer_packer(1, 31))); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -116015,27 +115838,26 @@ SRSASN_CODE scg_cfg_info_v1310_ies_s::pack(bit_ref& bref) const SRSASN_CODE scg_cfg_info_v1310_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(meas_result_sstd_r13_present, 1)); - HANDLE_CODE(bref.unpack(s_cell_to_add_mod_list_mcg_ext_r13_present, 1)); + HANDLE_CODE(bref.unpack(scell_to_add_mod_list_mcg_ext_r13_present, 1)); HANDLE_CODE(bref.unpack(meas_result_serv_cell_list_scg_ext_r13_present, 1)); - HANDLE_CODE(bref.unpack(s_cell_to_add_mod_list_scg_ext_r13_present, 1)); - HANDLE_CODE(bref.unpack(s_cell_to_release_list_scg_ext_r13_present, 1)); + HANDLE_CODE(bref.unpack(scell_to_add_mod_list_scg_ext_r13_present, 1)); + HANDLE_CODE(bref.unpack(scell_to_release_list_scg_ext_r13_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (meas_result_sstd_r13_present) { HANDLE_CODE(meas_result_sstd_r13.unpack(bref)); } - if (s_cell_to_add_mod_list_mcg_ext_r13_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_to_add_mod_list_mcg_ext_r13, bref, 1, 31)); + if (scell_to_add_mod_list_mcg_ext_r13_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_to_add_mod_list_mcg_ext_r13, bref, 1, 31)); } if (meas_result_serv_cell_list_scg_ext_r13_present) { HANDLE_CODE(unpack_dyn_seq_of(meas_result_serv_cell_list_scg_ext_r13, bref, 1, 32)); } - if (s_cell_to_add_mod_list_scg_ext_r13_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_to_add_mod_list_scg_ext_r13, bref, 1, 31)); + if (scell_to_add_mod_list_scg_ext_r13_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_to_add_mod_list_scg_ext_r13, bref, 1, 31)); } - if (s_cell_to_release_list_scg_ext_r13_present) { - HANDLE_CODE( - unpack_dyn_seq_of(s_cell_to_release_list_scg_ext_r13, bref, 1, 31, UnalignedIntegerPacker(1, 31))); + if (scell_to_release_list_scg_ext_r13_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_to_release_list_scg_ext_r13, bref, 1, 31, integer_packer(1, 31))); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -116050,10 +115872,10 @@ void scg_cfg_info_v1310_ies_s::to_json(json_writer& j) const j.write_fieldname("measResultSSTD-r13"); meas_result_sstd_r13.to_json(j); } - if (s_cell_to_add_mod_list_mcg_ext_r13_present) { + if (scell_to_add_mod_list_mcg_ext_r13_present) { j.start_array("sCellToAddModListMCG-Ext-r13"); - for (uint32_t i1 = 0; i1 < s_cell_to_add_mod_list_mcg_ext_r13.size(); ++i1) { - s_cell_to_add_mod_list_mcg_ext_r13[i1].to_json(j); + for (uint32_t i1 = 0; i1 < scell_to_add_mod_list_mcg_ext_r13.size(); ++i1) { + scell_to_add_mod_list_mcg_ext_r13[i1].to_json(j); } j.end_array(); } @@ -116064,17 +115886,17 @@ void scg_cfg_info_v1310_ies_s::to_json(json_writer& j) const } j.end_array(); } - if (s_cell_to_add_mod_list_scg_ext_r13_present) { + if (scell_to_add_mod_list_scg_ext_r13_present) { j.start_array("sCellToAddModListSCG-Ext-r13"); - for (uint32_t i1 = 0; i1 < s_cell_to_add_mod_list_scg_ext_r13.size(); ++i1) { - s_cell_to_add_mod_list_scg_ext_r13[i1].to_json(j); + for (uint32_t i1 = 0; i1 < scell_to_add_mod_list_scg_ext_r13.size(); ++i1) { + scell_to_add_mod_list_scg_ext_r13[i1].to_json(j); } j.end_array(); } - if (s_cell_to_release_list_scg_ext_r13_present) { + if (scell_to_release_list_scg_ext_r13_present) { j.start_array("sCellToReleaseListSCG-Ext-r13"); - for (uint32_t i1 = 0; i1 < s_cell_to_release_list_scg_ext_r13.size(); ++i1) { - j.write_int(s_cell_to_release_list_scg_ext_r13[i1]); + for (uint32_t i1 = 0; i1 < scell_to_release_list_scg_ext_r13.size(); ++i1) { + j.write_int(scell_to_release_list_scg_ext_r13[i1]); } j.end_array(); } @@ -116088,15 +115910,15 @@ void scg_cfg_info_v1310_ies_s::to_json(json_writer& j) const // SCG-ConfigRestrictInfo-r12 ::= SEQUENCE SRSASN_CODE scg_cfg_restrict_info_r12_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, max_sch_tb_bits_dl_r12, (uint8_t)1, (uint8_t)100)); - HANDLE_CODE(pack_unalign_integer(bref, max_sch_tb_bits_ul_r12, (uint8_t)1, (uint8_t)100)); + HANDLE_CODE(pack_integer(bref, max_sch_tb_bits_dl_r12, (uint8_t)1u, (uint8_t)100u)); + HANDLE_CODE(pack_integer(bref, max_sch_tb_bits_ul_r12, (uint8_t)1u, (uint8_t)100u)); return SRSASN_SUCCESS; } SRSASN_CODE scg_cfg_restrict_info_r12_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(max_sch_tb_bits_dl_r12, bref, (uint8_t)1, (uint8_t)100)); - HANDLE_CODE(unpack_unalign_integer(max_sch_tb_bits_ul_r12, bref, (uint8_t)1, (uint8_t)100)); + HANDLE_CODE(unpack_integer(max_sch_tb_bits_dl_r12, bref, (uint8_t)1u, (uint8_t)100u)); + HANDLE_CODE(unpack_integer(max_sch_tb_bits_ul_r12, bref, (uint8_t)1u, (uint8_t)100u)); return SRSASN_SUCCESS; } @@ -116112,7 +115934,7 @@ void scg_cfg_restrict_info_r12_s::to_json(json_writer& j) const SRSASN_CODE scg_cfg_info_r12_ies_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(rr_cfg_ded_mcg_r12_present, 1)); - HANDLE_CODE(bref.pack(s_cell_to_add_mod_list_mcg_r12_present, 1)); + HANDLE_CODE(bref.pack(scell_to_add_mod_list_mcg_r12_present, 1)); HANDLE_CODE(bref.pack(meas_gap_cfg_r12_present, 1)); HANDLE_CODE(bref.pack(pwr_coordination_info_r12_present, 1)); HANDLE_CODE(bref.pack(scg_radio_cfg_r12_present, 1)); @@ -116122,16 +115944,16 @@ SRSASN_CODE scg_cfg_info_r12_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(meas_result_serv_cell_list_scg_r12_present, 1)); HANDLE_CODE(bref.pack(drb_to_add_mod_list_scg_r12_present, 1)); HANDLE_CODE(bref.pack(drb_to_release_list_scg_r12_present, 1)); - HANDLE_CODE(bref.pack(s_cell_to_add_mod_list_scg_r12_present, 1)); - HANDLE_CODE(bref.pack(s_cell_to_release_list_scg_r12_present, 1)); + HANDLE_CODE(bref.pack(scell_to_add_mod_list_scg_r12_present, 1)); + HANDLE_CODE(bref.pack(scell_to_release_list_scg_r12_present, 1)); HANDLE_CODE(bref.pack(p_max_r12_present, 1)); HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (rr_cfg_ded_mcg_r12_present) { HANDLE_CODE(rr_cfg_ded_mcg_r12.pack(bref)); } - if (s_cell_to_add_mod_list_mcg_r12_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_to_add_mod_list_mcg_r12, 1, 4)); + if (scell_to_add_mod_list_mcg_r12_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_to_add_mod_list_mcg_r12, 1, 4)); } if (meas_gap_cfg_r12_present) { HANDLE_CODE(meas_gap_cfg_r12.pack(bref)); @@ -116158,16 +115980,16 @@ SRSASN_CODE scg_cfg_info_r12_ies_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, drb_to_add_mod_list_scg_r12, 1, 11)); } if (drb_to_release_list_scg_r12_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, drb_to_release_list_scg_r12, 1, 11, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(pack_dyn_seq_of(bref, drb_to_release_list_scg_r12, 1, 11, integer_packer(1, 32))); } - if (s_cell_to_add_mod_list_scg_r12_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_to_add_mod_list_scg_r12, 1, 4)); + if (scell_to_add_mod_list_scg_r12_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_to_add_mod_list_scg_r12, 1, 4)); } - if (s_cell_to_release_list_scg_r12_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, s_cell_to_release_list_scg_r12, 1, 4, UnalignedIntegerPacker(1, 7))); + if (scell_to_release_list_scg_r12_present) { + HANDLE_CODE(pack_dyn_seq_of(bref, scell_to_release_list_scg_r12, 1, 4, integer_packer(1, 7))); } if (p_max_r12_present) { - HANDLE_CODE(pack_unalign_integer(bref, p_max_r12, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, p_max_r12, (int8_t)-30, (int8_t)33)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.pack(bref)); @@ -116178,7 +116000,7 @@ SRSASN_CODE scg_cfg_info_r12_ies_s::pack(bit_ref& bref) const SRSASN_CODE scg_cfg_info_r12_ies_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(rr_cfg_ded_mcg_r12_present, 1)); - HANDLE_CODE(bref.unpack(s_cell_to_add_mod_list_mcg_r12_present, 1)); + HANDLE_CODE(bref.unpack(scell_to_add_mod_list_mcg_r12_present, 1)); HANDLE_CODE(bref.unpack(meas_gap_cfg_r12_present, 1)); HANDLE_CODE(bref.unpack(pwr_coordination_info_r12_present, 1)); HANDLE_CODE(bref.unpack(scg_radio_cfg_r12_present, 1)); @@ -116188,16 +116010,16 @@ SRSASN_CODE scg_cfg_info_r12_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(meas_result_serv_cell_list_scg_r12_present, 1)); HANDLE_CODE(bref.unpack(drb_to_add_mod_list_scg_r12_present, 1)); HANDLE_CODE(bref.unpack(drb_to_release_list_scg_r12_present, 1)); - HANDLE_CODE(bref.unpack(s_cell_to_add_mod_list_scg_r12_present, 1)); - HANDLE_CODE(bref.unpack(s_cell_to_release_list_scg_r12_present, 1)); + HANDLE_CODE(bref.unpack(scell_to_add_mod_list_scg_r12_present, 1)); + HANDLE_CODE(bref.unpack(scell_to_release_list_scg_r12_present, 1)); HANDLE_CODE(bref.unpack(p_max_r12_present, 1)); HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (rr_cfg_ded_mcg_r12_present) { HANDLE_CODE(rr_cfg_ded_mcg_r12.unpack(bref)); } - if (s_cell_to_add_mod_list_mcg_r12_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_to_add_mod_list_mcg_r12, bref, 1, 4)); + if (scell_to_add_mod_list_mcg_r12_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_to_add_mod_list_mcg_r12, bref, 1, 4)); } if (meas_gap_cfg_r12_present) { HANDLE_CODE(meas_gap_cfg_r12.unpack(bref)); @@ -116224,16 +116046,16 @@ SRSASN_CODE scg_cfg_info_r12_ies_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(drb_to_add_mod_list_scg_r12, bref, 1, 11)); } if (drb_to_release_list_scg_r12_present) { - HANDLE_CODE(unpack_dyn_seq_of(drb_to_release_list_scg_r12, bref, 1, 11, UnalignedIntegerPacker(1, 32))); + HANDLE_CODE(unpack_dyn_seq_of(drb_to_release_list_scg_r12, bref, 1, 11, integer_packer(1, 32))); } - if (s_cell_to_add_mod_list_scg_r12_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_to_add_mod_list_scg_r12, bref, 1, 4)); + if (scell_to_add_mod_list_scg_r12_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_to_add_mod_list_scg_r12, bref, 1, 4)); } - if (s_cell_to_release_list_scg_r12_present) { - HANDLE_CODE(unpack_dyn_seq_of(s_cell_to_release_list_scg_r12, bref, 1, 4, UnalignedIntegerPacker(1, 7))); + if (scell_to_release_list_scg_r12_present) { + HANDLE_CODE(unpack_dyn_seq_of(scell_to_release_list_scg_r12, bref, 1, 4, integer_packer(1, 7))); } if (p_max_r12_present) { - HANDLE_CODE(unpack_unalign_integer(p_max_r12, bref, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(unpack_integer(p_max_r12, bref, (int8_t)-30, (int8_t)33)); } if (non_crit_ext_present) { HANDLE_CODE(non_crit_ext.unpack(bref)); @@ -116248,10 +116070,10 @@ void scg_cfg_info_r12_ies_s::to_json(json_writer& j) const j.write_fieldname("radioResourceConfigDedMCG-r12"); rr_cfg_ded_mcg_r12.to_json(j); } - if (s_cell_to_add_mod_list_mcg_r12_present) { + if (scell_to_add_mod_list_mcg_r12_present) { j.start_array("sCellToAddModListMCG-r12"); - for (uint32_t i1 = 0; i1 < s_cell_to_add_mod_list_mcg_r12.size(); ++i1) { - s_cell_to_add_mod_list_mcg_r12[i1].to_json(j); + for (uint32_t i1 = 0; i1 < scell_to_add_mod_list_mcg_r12.size(); ++i1) { + scell_to_add_mod_list_mcg_r12[i1].to_json(j); } j.end_array(); } @@ -116298,17 +116120,17 @@ void scg_cfg_info_r12_ies_s::to_json(json_writer& j) const } j.end_array(); } - if (s_cell_to_add_mod_list_scg_r12_present) { + if (scell_to_add_mod_list_scg_r12_present) { j.start_array("sCellToAddModListSCG-r12"); - for (uint32_t i1 = 0; i1 < s_cell_to_add_mod_list_scg_r12.size(); ++i1) { - s_cell_to_add_mod_list_scg_r12[i1].to_json(j); + for (uint32_t i1 = 0; i1 < scell_to_add_mod_list_scg_r12.size(); ++i1) { + scell_to_add_mod_list_scg_r12[i1].to_json(j); } j.end_array(); } - if (s_cell_to_release_list_scg_r12_present) { + if (scell_to_release_list_scg_r12_present) { j.start_array("sCellToReleaseListSCG-r12"); - for (uint32_t i1 = 0; i1 < s_cell_to_release_list_scg_r12.size(); ++i1) { - j.write_int(s_cell_to_release_list_scg_r12[i1]); + for (uint32_t i1 = 0; i1 < scell_to_release_list_scg_r12.size(); ++i1) { + j.write_int(scell_to_release_list_scg_r12[i1]); } j.end_array(); } @@ -116422,7 +116244,7 @@ void scg_cfg_info_r12_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE scg_cfg_info_r12_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -116438,7 +116260,7 @@ SRSASN_CODE scg_cfg_info_r12_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE scg_cfg_info_r12_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -116486,7 +116308,7 @@ void scg_cfg_info_r12_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE scg_cfg_info_r12_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::scg_cfg_info_r12: HANDLE_CODE(c.pack(bref)); @@ -116514,7 +116336,7 @@ SRSASN_CODE scg_cfg_info_r12_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const SRSASN_CODE scg_cfg_info_r12_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::scg_cfg_info_r12: @@ -116544,19 +116366,19 @@ SRSASN_CODE scg_cfg_info_r12_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) // SL-PPPP-TxPreconfigIndex-r14 ::= SEQUENCE SRSASN_CODE sl_pppp_tx_precfg_idx_r14_s::pack(bit_ref& bref) const { - HANDLE_CODE(pack_unalign_integer(bref, prio_thres_r14, (uint8_t)1, (uint8_t)8)); - HANDLE_CODE(pack_unalign_integer(bref, default_tx_cfg_idx_r14, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(pack_unalign_integer(bref, cbr_cfg_idx_r14, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(pack_dyn_seq_of(bref, tx_cfg_idx_list_r14, 1, 16, UnalignedIntegerPacker(0, 127))); + HANDLE_CODE(pack_integer(bref, prio_thres_r14, (uint8_t)1u, (uint8_t)8u)); + HANDLE_CODE(pack_integer(bref, default_tx_cfg_idx_r14, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(pack_integer(bref, cbr_cfg_idx_r14, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(pack_dyn_seq_of(bref, tx_cfg_idx_list_r14, 1, 16, integer_packer(0, 127))); return SRSASN_SUCCESS; } SRSASN_CODE sl_pppp_tx_precfg_idx_r14_s::unpack(bit_ref& bref) { - HANDLE_CODE(unpack_unalign_integer(prio_thres_r14, bref, (uint8_t)1, (uint8_t)8)); - HANDLE_CODE(unpack_unalign_integer(default_tx_cfg_idx_r14, bref, (uint8_t)0, (uint8_t)15)); - HANDLE_CODE(unpack_unalign_integer(cbr_cfg_idx_r14, bref, (uint8_t)0, (uint8_t)7)); - HANDLE_CODE(unpack_dyn_seq_of(tx_cfg_idx_list_r14, bref, 1, 16, UnalignedIntegerPacker(0, 127))); + HANDLE_CODE(unpack_integer(prio_thres_r14, bref, (uint8_t)1u, (uint8_t)8u)); + HANDLE_CODE(unpack_integer(default_tx_cfg_idx_r14, bref, (uint8_t)0u, (uint8_t)15u)); + HANDLE_CODE(unpack_integer(cbr_cfg_idx_r14, bref, (uint8_t)0u, (uint8_t)7u)); + HANDLE_CODE(unpack_dyn_seq_of(tx_cfg_idx_list_r14, bref, 1, 16, integer_packer(0, 127))); return SRSASN_SUCCESS; } @@ -116611,24 +116433,22 @@ void sl_pppp_tx_precfg_idx_v1530_s::to_json(json_writer& j) const // SL-CBR-PreconfigTxConfigList-r14 ::= SEQUENCE SRSASN_CODE sl_cbr_precfg_tx_cfg_list_r14_s::pack(bit_ref& bref) const { - HANDLE_CODE( - pack_dyn_seq_of(bref, - cbr_range_common_cfg_list_r14, - 1, - 8, - SeqOfPacker >(1, 16, UnalignedIntegerPacker(0, 100)))); + HANDLE_CODE(pack_dyn_seq_of(bref, + cbr_range_common_cfg_list_r14, + 1, + 8, + SeqOfPacker >(1, 16, integer_packer(0, 100)))); HANDLE_CODE(pack_dyn_seq_of(bref, sl_cbr_pssch_tx_cfg_list_r14, 1, 128)); return SRSASN_SUCCESS; } SRSASN_CODE sl_cbr_precfg_tx_cfg_list_r14_s::unpack(bit_ref& bref) { - HANDLE_CODE( - unpack_dyn_seq_of(cbr_range_common_cfg_list_r14, - bref, - 1, - 8, - SeqOfPacker >(1, 16, UnalignedIntegerPacker(0, 100)))); + HANDLE_CODE(unpack_dyn_seq_of(cbr_range_common_cfg_list_r14, + bref, + 1, + 8, + SeqOfPacker >(1, 16, integer_packer(0, 100)))); HANDLE_CODE(unpack_dyn_seq_of(sl_cbr_pssch_tx_cfg_list_r14, bref, 1, 128)); return SRSASN_SUCCESS; @@ -116657,14 +116477,14 @@ void sl_cbr_precfg_tx_cfg_list_r14_s::to_json(json_writer& j) const SRSASN_CODE sl_precfg_comm_pool_r12_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_enum(bref, sc_cp_len_r12)); - HANDLE_CODE(pack_enum(bref, sc_period_r12)); + HANDLE_CODE(sc_cp_len_r12.pack(bref)); + HANDLE_CODE(sc_period_r12.pack(bref)); HANDLE_CODE(sc_tf_res_cfg_r12.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, sc_tx_params_r12, (int8_t)-126, (int8_t)31)); - HANDLE_CODE(pack_enum(bref, data_cp_len_r12)); + HANDLE_CODE(pack_integer(bref, sc_tx_params_r12, (int8_t)-126, (int8_t)31)); + HANDLE_CODE(data_cp_len_r12.pack(bref)); HANDLE_CODE(data_tf_res_cfg_r12.pack(bref)); HANDLE_CODE(data_hop_cfg_r12.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, data_tx_params_r12, (int8_t)-126, (int8_t)31)); + HANDLE_CODE(pack_integer(bref, data_tx_params_r12, (int8_t)-126, (int8_t)31)); HANDLE_CODE(trpt_subset_r12.pack(bref)); if (ext) { @@ -116673,11 +116493,11 @@ SRSASN_CODE sl_precfg_comm_pool_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(prio_list_r13.is_present(), 1)); if (prio_list_r13.is_present()) { - HANDLE_CODE(pack_dyn_seq_of(bref, *prio_list_r13, 1, 8, UnalignedIntegerPacker(1, 8))); + HANDLE_CODE(pack_dyn_seq_of(bref, *prio_list_r13, 1, 8, integer_packer(1, 8))); } } } @@ -116686,14 +116506,14 @@ SRSASN_CODE sl_precfg_comm_pool_r12_s::pack(bit_ref& bref) const SRSASN_CODE sl_precfg_comm_pool_r12_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_enum(sc_cp_len_r12, bref)); - HANDLE_CODE(unpack_enum(sc_period_r12, bref)); + HANDLE_CODE(sc_cp_len_r12.unpack(bref)); + HANDLE_CODE(sc_period_r12.unpack(bref)); HANDLE_CODE(sc_tf_res_cfg_r12.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(sc_tx_params_r12, bref, (int8_t)-126, (int8_t)31)); - HANDLE_CODE(unpack_enum(data_cp_len_r12, bref)); + HANDLE_CODE(unpack_integer(sc_tx_params_r12, bref, (int8_t)-126, (int8_t)31)); + HANDLE_CODE(data_cp_len_r12.unpack(bref)); HANDLE_CODE(data_tf_res_cfg_r12.unpack(bref)); HANDLE_CODE(data_hop_cfg_r12.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(data_tx_params_r12, bref, (int8_t)-126, (int8_t)31)); + HANDLE_CODE(unpack_integer(data_tx_params_r12, bref, (int8_t)-126, (int8_t)31)); HANDLE_CODE(trpt_subset_r12.unpack(bref)); if (ext) { @@ -116701,13 +116521,13 @@ SRSASN_CODE sl_precfg_comm_pool_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool prio_list_r13_present; HANDLE_CODE(bref.unpack(prio_list_r13_present, 1)); prio_list_r13.set_present(prio_list_r13_present); if (prio_list_r13.is_present()) { - HANDLE_CODE(unpack_dyn_seq_of(*prio_list_r13, bref, 1, 8, UnalignedIntegerPacker(1, 8))); + HANDLE_CODE(unpack_dyn_seq_of(*prio_list_r13, bref, 1, 8, integer_packer(1, 8))); } } } @@ -116746,14 +116566,14 @@ SRSASN_CODE sl_precfg_disc_pool_r13_s::pack(bit_ref& bref) const bref.pack(ext, 1); HANDLE_CODE(bref.pack(tx_params_r13_present, 1)); - HANDLE_CODE(pack_enum(bref, cp_len_r13)); - HANDLE_CODE(pack_enum(bref, disc_period_r13)); - HANDLE_CODE(pack_unalign_integer(bref, num_retx_r13, (uint8_t)0, (uint8_t)3)); - HANDLE_CODE(pack_unalign_integer(bref, num_repeat_r13, (uint8_t)1, (uint8_t)50)); + HANDLE_CODE(cp_len_r13.pack(bref)); + HANDLE_CODE(disc_period_r13.pack(bref)); + HANDLE_CODE(pack_integer(bref, num_retx_r13, (uint8_t)0u, (uint8_t)3u)); + HANDLE_CODE(pack_integer(bref, num_repeat_r13, (uint8_t)1u, (uint8_t)50u)); HANDLE_CODE(tf_res_cfg_r13.pack(bref)); if (tx_params_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, tx_params_r13.tx_params_general_r13, (int8_t)-126, (int8_t)31)); - HANDLE_CODE(pack_enum(bref, tx_params_r13.tx_probability_r13)); + HANDLE_CODE(pack_integer(bref, tx_params_r13.tx_params_general_r13, (int8_t)-126, (int8_t)31)); + HANDLE_CODE(tx_params_r13.tx_probability_r13.pack(bref)); } return SRSASN_SUCCESS; @@ -116763,14 +116583,14 @@ SRSASN_CODE sl_precfg_disc_pool_r13_s::unpack(bit_ref& bref) bref.unpack(ext, 1); HANDLE_CODE(bref.unpack(tx_params_r13_present, 1)); - HANDLE_CODE(unpack_enum(cp_len_r13, bref)); - HANDLE_CODE(unpack_enum(disc_period_r13, bref)); - HANDLE_CODE(unpack_unalign_integer(num_retx_r13, bref, (uint8_t)0, (uint8_t)3)); - HANDLE_CODE(unpack_unalign_integer(num_repeat_r13, bref, (uint8_t)1, (uint8_t)50)); + HANDLE_CODE(cp_len_r13.unpack(bref)); + HANDLE_CODE(disc_period_r13.unpack(bref)); + HANDLE_CODE(unpack_integer(num_retx_r13, bref, (uint8_t)0u, (uint8_t)3u)); + HANDLE_CODE(unpack_integer(num_repeat_r13, bref, (uint8_t)1u, (uint8_t)50u)); HANDLE_CODE(tf_res_cfg_r13.unpack(bref)); if (tx_params_r13_present) { - HANDLE_CODE(unpack_unalign_integer(tx_params_r13.tx_params_general_r13, bref, (int8_t)-126, (int8_t)31)); - HANDLE_CODE(unpack_enum(tx_params_r13.tx_probability_r13, bref)); + HANDLE_CODE(unpack_integer(tx_params_r13.tx_params_general_r13, bref, (int8_t)-126, (int8_t)31)); + HANDLE_CODE(tx_params_r13.tx_probability_r13.unpack(bref)); } return SRSASN_SUCCESS; @@ -116805,10 +116625,10 @@ SRSASN_CODE sl_precfg_general_r12_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(rohc_profiles_r12.profile0x0101_r12, 1)); HANDLE_CODE(bref.pack(rohc_profiles_r12.profile0x0102_r12, 1)); HANDLE_CODE(bref.pack(rohc_profiles_r12.profile0x0104_r12, 1)); - HANDLE_CODE(pack_unalign_integer(bref, carrier_freq_r12, (uint32_t)0, (uint32_t)262143)); - HANDLE_CODE(pack_unalign_integer(bref, max_tx_pwr_r12, (int8_t)-30, (int8_t)33)); - HANDLE_CODE(pack_unalign_integer(bref, add_spec_emission_r12, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(pack_enum(bref, sl_bw_r12)); + HANDLE_CODE(pack_integer(bref, carrier_freq_r12, (uint32_t)0u, (uint32_t)262143u)); + HANDLE_CODE(pack_integer(bref, max_tx_pwr_r12, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(pack_integer(bref, add_spec_emission_r12, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(sl_bw_r12.pack(bref)); HANDLE_CODE(tdd_cfg_sl_r12.pack(bref)); HANDLE_CODE(reserved_r12.pack(bref)); @@ -116818,11 +116638,11 @@ SRSASN_CODE sl_precfg_general_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(add_spec_emission_v1440_present, 1)); if (add_spec_emission_v1440_present) { - HANDLE_CODE(pack_unalign_integer(bref, add_spec_emission_v1440, (uint16_t)33, (uint16_t)288)); + HANDLE_CODE(pack_integer(bref, add_spec_emission_v1440, (uint16_t)33u, (uint16_t)288u)); } } } @@ -116838,10 +116658,10 @@ SRSASN_CODE sl_precfg_general_r12_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(rohc_profiles_r12.profile0x0101_r12, 1)); HANDLE_CODE(bref.unpack(rohc_profiles_r12.profile0x0102_r12, 1)); HANDLE_CODE(bref.unpack(rohc_profiles_r12.profile0x0104_r12, 1)); - HANDLE_CODE(unpack_unalign_integer(carrier_freq_r12, bref, (uint32_t)0, (uint32_t)262143)); - HANDLE_CODE(unpack_unalign_integer(max_tx_pwr_r12, bref, (int8_t)-30, (int8_t)33)); - HANDLE_CODE(unpack_unalign_integer(add_spec_emission_r12, bref, (uint8_t)1, (uint8_t)32)); - HANDLE_CODE(unpack_enum(sl_bw_r12, bref)); + HANDLE_CODE(unpack_integer(carrier_freq_r12, bref, (uint32_t)0u, (uint32_t)262143u)); + HANDLE_CODE(unpack_integer(max_tx_pwr_r12, bref, (int8_t)-30, (int8_t)33)); + HANDLE_CODE(unpack_integer(add_spec_emission_r12, bref, (uint8_t)1u, (uint8_t)32u)); + HANDLE_CODE(sl_bw_r12.unpack(bref)); HANDLE_CODE(tdd_cfg_sl_r12.unpack(bref)); HANDLE_CODE(reserved_r12.unpack(bref)); @@ -116850,11 +116670,11 @@ SRSASN_CODE sl_precfg_general_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(add_spec_emission_v1440_present, 1)); if (add_spec_emission_v1440_present) { - HANDLE_CODE(unpack_unalign_integer(add_spec_emission_v1440, bref, (uint16_t)33, (uint16_t)288)); + HANDLE_CODE(unpack_integer(add_spec_emission_v1440, bref, (uint16_t)33u, (uint16_t)288u)); } } } @@ -116913,14 +116733,14 @@ void sl_precfg_relay_r13_s::to_json(json_writer& j) const SRSASN_CODE sl_precfg_sync_r12_s::pack(bit_ref& bref) const { bref.pack(ext, 1); - HANDLE_CODE(pack_enum(bref, sync_cp_len_r12)); - HANDLE_CODE(pack_unalign_integer(bref, sync_offset_ind1_r12, (uint8_t)0, (uint8_t)39)); - HANDLE_CODE(pack_unalign_integer(bref, sync_offset_ind2_r12, (uint8_t)0, (uint8_t)39)); - HANDLE_CODE(pack_unalign_integer(bref, sync_tx_params_r12, (int8_t)-126, (int8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, sync_tx_thresh_oo_c_r12, (uint8_t)0, (uint8_t)11)); - HANDLE_CODE(pack_enum(bref, filt_coef_r12)); - HANDLE_CODE(pack_enum(bref, sync_ref_min_hyst_r12)); - HANDLE_CODE(pack_enum(bref, sync_ref_diff_hyst_r12)); + HANDLE_CODE(sync_cp_len_r12.pack(bref)); + HANDLE_CODE(pack_integer(bref, sync_offset_ind1_r12, (uint8_t)0u, (uint8_t)39u)); + HANDLE_CODE(pack_integer(bref, sync_offset_ind2_r12, (uint8_t)0u, (uint8_t)39u)); + HANDLE_CODE(pack_integer(bref, sync_tx_params_r12, (int8_t)-126, (int8_t)31)); + HANDLE_CODE(pack_integer(bref, sync_tx_thresh_oo_c_r12, (uint8_t)0u, (uint8_t)11u)); + HANDLE_CODE(filt_coef_r12.pack(bref)); + HANDLE_CODE(sync_ref_min_hyst_r12.pack(bref)); + HANDLE_CODE(sync_ref_diff_hyst_r12.pack(bref)); if (ext) { ext_groups_packer_guard group_flags; @@ -116928,7 +116748,7 @@ SRSASN_CODE sl_precfg_sync_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(sync_tx_periodic_r13_present, 1)); } @@ -116938,21 +116758,21 @@ SRSASN_CODE sl_precfg_sync_r12_s::pack(bit_ref& bref) const SRSASN_CODE sl_precfg_sync_r12_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); - HANDLE_CODE(unpack_enum(sync_cp_len_r12, bref)); - HANDLE_CODE(unpack_unalign_integer(sync_offset_ind1_r12, bref, (uint8_t)0, (uint8_t)39)); - HANDLE_CODE(unpack_unalign_integer(sync_offset_ind2_r12, bref, (uint8_t)0, (uint8_t)39)); - HANDLE_CODE(unpack_unalign_integer(sync_tx_params_r12, bref, (int8_t)-126, (int8_t)31)); - HANDLE_CODE(unpack_unalign_integer(sync_tx_thresh_oo_c_r12, bref, (uint8_t)0, (uint8_t)11)); - HANDLE_CODE(unpack_enum(filt_coef_r12, bref)); - HANDLE_CODE(unpack_enum(sync_ref_min_hyst_r12, bref)); - HANDLE_CODE(unpack_enum(sync_ref_diff_hyst_r12, bref)); + HANDLE_CODE(sync_cp_len_r12.unpack(bref)); + HANDLE_CODE(unpack_integer(sync_offset_ind1_r12, bref, (uint8_t)0u, (uint8_t)39u)); + HANDLE_CODE(unpack_integer(sync_offset_ind2_r12, bref, (uint8_t)0u, (uint8_t)39u)); + HANDLE_CODE(unpack_integer(sync_tx_params_r12, bref, (int8_t)-126, (int8_t)31)); + HANDLE_CODE(unpack_integer(sync_tx_thresh_oo_c_r12, bref, (uint8_t)0u, (uint8_t)11u)); + HANDLE_CODE(filt_coef_r12.unpack(bref)); + HANDLE_CODE(sync_ref_min_hyst_r12.unpack(bref)); + HANDLE_CODE(sync_ref_diff_hyst_r12.unpack(bref)); if (ext) { ext_groups_unpacker_guard group_flags(1); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(sync_tx_periodic_r13_present, 1)); } @@ -116996,18 +116816,18 @@ SRSASN_CODE sl_v2x_precfg_comm_pool_r14_s::pack(bit_ref& bref) const } HANDLE_CODE(sl_sf_r14.pack(bref)); HANDLE_CODE(bref.pack(adjacency_pscch_pssch_r14, 1)); - HANDLE_CODE(pack_enum(bref, size_subch_r14)); - HANDLE_CODE(pack_enum(bref, num_subch_r14)); - HANDLE_CODE(pack_unalign_integer(bref, start_rb_subch_r14, (uint8_t)0, (uint8_t)99)); + HANDLE_CODE(size_subch_r14.pack(bref)); + HANDLE_CODE(num_subch_r14.pack(bref)); + HANDLE_CODE(pack_integer(bref, start_rb_subch_r14, (uint8_t)0u, (uint8_t)99u)); if (start_rb_pscch_pool_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, start_rb_pscch_pool_r14, (uint8_t)0, (uint8_t)99)); + HANDLE_CODE(pack_integer(bref, start_rb_pscch_pool_r14, (uint8_t)0u, (uint8_t)99u)); } - HANDLE_CODE(pack_unalign_integer(bref, data_tx_params_r14, (int8_t)-126, (int8_t)31)); + HANDLE_CODE(pack_integer(bref, data_tx_params_r14, (int8_t)-126, (int8_t)31)); if (zone_id_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, zone_id_r14, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(pack_integer(bref, zone_id_r14, (uint8_t)0u, (uint8_t)7u)); } if (thresh_s_rssi_cbr_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, thresh_s_rssi_cbr_r14, (uint8_t)0, (uint8_t)45)); + HANDLE_CODE(pack_integer(bref, thresh_s_rssi_cbr_r14, (uint8_t)0u, (uint8_t)45u)); } if (cbr_pssch_tx_cfg_list_r14_present) { HANDLE_CODE(pack_dyn_seq_of(bref, cbr_pssch_tx_cfg_list_r14, 1, 8)); @@ -117019,7 +116839,7 @@ SRSASN_CODE sl_v2x_precfg_comm_pool_r14_s::pack(bit_ref& bref) const HANDLE_CODE(sync_allowed_r14.pack(bref)); } if (restrict_res_reserv_period_r14_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, restrict_res_reserv_period_r14, 1, 16, EnumPacker())); + HANDLE_CODE(pack_dyn_seq_of(bref, restrict_res_reserv_period_r14, 1, 16)); } if (ext) { @@ -117029,7 +116849,7 @@ SRSASN_CODE sl_v2x_precfg_comm_pool_r14_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(sl_min_t2_value_list_r15.is_present(), 1)); HANDLE_CODE(bref.pack(cbr_pssch_tx_cfg_list_v1530.is_present(), 1)); @@ -117060,18 +116880,18 @@ SRSASN_CODE sl_v2x_precfg_comm_pool_r14_s::unpack(bit_ref& bref) } HANDLE_CODE(sl_sf_r14.unpack(bref)); HANDLE_CODE(bref.unpack(adjacency_pscch_pssch_r14, 1)); - HANDLE_CODE(unpack_enum(size_subch_r14, bref)); - HANDLE_CODE(unpack_enum(num_subch_r14, bref)); - HANDLE_CODE(unpack_unalign_integer(start_rb_subch_r14, bref, (uint8_t)0, (uint8_t)99)); + HANDLE_CODE(size_subch_r14.unpack(bref)); + HANDLE_CODE(num_subch_r14.unpack(bref)); + HANDLE_CODE(unpack_integer(start_rb_subch_r14, bref, (uint8_t)0u, (uint8_t)99u)); if (start_rb_pscch_pool_r14_present) { - HANDLE_CODE(unpack_unalign_integer(start_rb_pscch_pool_r14, bref, (uint8_t)0, (uint8_t)99)); + HANDLE_CODE(unpack_integer(start_rb_pscch_pool_r14, bref, (uint8_t)0u, (uint8_t)99u)); } - HANDLE_CODE(unpack_unalign_integer(data_tx_params_r14, bref, (int8_t)-126, (int8_t)31)); + HANDLE_CODE(unpack_integer(data_tx_params_r14, bref, (int8_t)-126, (int8_t)31)); if (zone_id_r14_present) { - HANDLE_CODE(unpack_unalign_integer(zone_id_r14, bref, (uint8_t)0, (uint8_t)7)); + HANDLE_CODE(unpack_integer(zone_id_r14, bref, (uint8_t)0u, (uint8_t)7u)); } if (thresh_s_rssi_cbr_r14_present) { - HANDLE_CODE(unpack_unalign_integer(thresh_s_rssi_cbr_r14, bref, (uint8_t)0, (uint8_t)45)); + HANDLE_CODE(unpack_integer(thresh_s_rssi_cbr_r14, bref, (uint8_t)0u, (uint8_t)45u)); } if (cbr_pssch_tx_cfg_list_r14_present) { HANDLE_CODE(unpack_dyn_seq_of(cbr_pssch_tx_cfg_list_r14, bref, 1, 8)); @@ -117083,7 +116903,7 @@ SRSASN_CODE sl_v2x_precfg_comm_pool_r14_s::unpack(bit_ref& bref) HANDLE_CODE(sync_allowed_r14.unpack(bref)); } if (restrict_res_reserv_period_r14_present) { - HANDLE_CODE(unpack_dyn_seq_of(restrict_res_reserv_period_r14, bref, 1, 16, EnumPacker())); + HANDLE_CODE(unpack_dyn_seq_of(restrict_res_reserv_period_r14, bref, 1, 16)); } if (ext) { @@ -117091,7 +116911,7 @@ SRSASN_CODE sl_v2x_precfg_comm_pool_r14_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool sl_min_t2_value_list_r15_present; HANDLE_CODE(bref.unpack(sl_min_t2_value_list_r15_present, 1)); @@ -117178,10 +116998,10 @@ SRSASN_CODE sl_v2x_sync_offset_inds_r14_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(sync_offset_ind3_r14_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, sync_offset_ind1_r14, (uint8_t)0, (uint8_t)159)); - HANDLE_CODE(pack_unalign_integer(bref, sync_offset_ind2_r14, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(pack_integer(bref, sync_offset_ind1_r14, (uint8_t)0u, (uint8_t)159u)); + HANDLE_CODE(pack_integer(bref, sync_offset_ind2_r14, (uint8_t)0u, (uint8_t)159u)); if (sync_offset_ind3_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, sync_offset_ind3_r14, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(pack_integer(bref, sync_offset_ind3_r14, (uint8_t)0u, (uint8_t)159u)); } return SRSASN_SUCCESS; @@ -117190,10 +117010,10 @@ SRSASN_CODE sl_v2x_sync_offset_inds_r14_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(sync_offset_ind3_r14_present, 1)); - HANDLE_CODE(unpack_unalign_integer(sync_offset_ind1_r14, bref, (uint8_t)0, (uint8_t)159)); - HANDLE_CODE(unpack_unalign_integer(sync_offset_ind2_r14, bref, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(unpack_integer(sync_offset_ind1_r14, bref, (uint8_t)0u, (uint8_t)159u)); + HANDLE_CODE(unpack_integer(sync_offset_ind2_r14, bref, (uint8_t)0u, (uint8_t)159u)); if (sync_offset_ind3_r14_present) { - HANDLE_CODE(unpack_unalign_integer(sync_offset_ind3_r14, bref, (uint8_t)0, (uint8_t)159)); + HANDLE_CODE(unpack_integer(sync_offset_ind3_r14, bref, (uint8_t)0u, (uint8_t)159u)); } return SRSASN_SUCCESS; @@ -117214,11 +117034,11 @@ SRSASN_CODE sl_precfg_v2x_sync_r14_s::pack(bit_ref& bref) const { bref.pack(ext, 1); HANDLE_CODE(sync_offset_inds_r14.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, sync_tx_params_r14, (int8_t)-126, (int8_t)31)); - HANDLE_CODE(pack_unalign_integer(bref, sync_tx_thresh_oo_c_r14, (uint8_t)0, (uint8_t)11)); - HANDLE_CODE(pack_enum(bref, filt_coef_r14)); - HANDLE_CODE(pack_enum(bref, sync_ref_min_hyst_r14)); - HANDLE_CODE(pack_enum(bref, sync_ref_diff_hyst_r14)); + HANDLE_CODE(pack_integer(bref, sync_tx_params_r14, (int8_t)-126, (int8_t)31)); + HANDLE_CODE(pack_integer(bref, sync_tx_thresh_oo_c_r14, (uint8_t)0u, (uint8_t)11u)); + HANDLE_CODE(filt_coef_r14.pack(bref)); + HANDLE_CODE(sync_ref_min_hyst_r14.pack(bref)); + HANDLE_CODE(sync_ref_diff_hyst_r14.pack(bref)); if (ext) { ext_groups_packer_guard group_flags; @@ -117226,7 +117046,7 @@ SRSASN_CODE sl_precfg_v2x_sync_r14_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(slss_tx_disabled_r15_present, 1)); } @@ -117237,18 +117057,18 @@ SRSASN_CODE sl_precfg_v2x_sync_r14_s::unpack(bit_ref& bref) { bref.unpack(ext, 1); HANDLE_CODE(sync_offset_inds_r14.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(sync_tx_params_r14, bref, (int8_t)-126, (int8_t)31)); - HANDLE_CODE(unpack_unalign_integer(sync_tx_thresh_oo_c_r14, bref, (uint8_t)0, (uint8_t)11)); - HANDLE_CODE(unpack_enum(filt_coef_r14, bref)); - HANDLE_CODE(unpack_enum(sync_ref_min_hyst_r14, bref)); - HANDLE_CODE(unpack_enum(sync_ref_diff_hyst_r14, bref)); + HANDLE_CODE(unpack_integer(sync_tx_params_r14, bref, (int8_t)-126, (int8_t)31)); + HANDLE_CODE(unpack_integer(sync_tx_thresh_oo_c_r14, bref, (uint8_t)0u, (uint8_t)11u)); + HANDLE_CODE(filt_coef_r14.unpack(bref)); + HANDLE_CODE(sync_ref_min_hyst_r14.unpack(bref)); + HANDLE_CODE(sync_ref_diff_hyst_r14.unpack(bref)); if (ext) { ext_groups_unpacker_guard group_flags(1); group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); HANDLE_CODE(bref.unpack(slss_tx_disabled_r15_present, 1)); } @@ -117289,7 +117109,7 @@ SRSASN_CODE sl_precfg_r12_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(precfg_comm_v1310.is_present(), 1)); HANDLE_CODE(bref.pack(precfg_disc_r13.is_present(), 1)); @@ -117327,7 +117147,7 @@ SRSASN_CODE sl_precfg_r12_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool precfg_comm_v1310_present; HANDLE_CODE(bref.unpack(precfg_comm_v1310_present, 1)); @@ -117437,12 +117257,12 @@ SRSASN_CODE sl_v2x_precfg_freq_info_r14_s::pack(bit_ref& bref) const if (zone_cfg_r14_present) { HANDLE_CODE(zone_cfg_r14.pack(bref)); } - HANDLE_CODE(pack_enum(bref, sync_prio_r14)); + HANDLE_CODE(sync_prio_r14.pack(bref)); if (thres_sl_tx_prioritization_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, thres_sl_tx_prioritization_r14, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(pack_integer(bref, thres_sl_tx_prioritization_r14, (uint8_t)1u, (uint8_t)8u)); } if (offset_dfn_r14_present) { - HANDLE_CODE(pack_unalign_integer(bref, offset_dfn_r14, (uint16_t)0, (uint16_t)1000)); + HANDLE_CODE(pack_integer(bref, offset_dfn_r14, (uint16_t)0u, (uint16_t)1000u)); } if (ext) { @@ -117451,7 +117271,7 @@ SRSASN_CODE sl_v2x_precfg_freq_info_r14_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(v2x_freq_sel_cfg_list_r15.is_present(), 1)); if (v2x_freq_sel_cfg_list_r15.is_present()) { @@ -117483,12 +117303,12 @@ SRSASN_CODE sl_v2x_precfg_freq_info_r14_s::unpack(bit_ref& bref) if (zone_cfg_r14_present) { HANDLE_CODE(zone_cfg_r14.unpack(bref)); } - HANDLE_CODE(unpack_enum(sync_prio_r14, bref)); + HANDLE_CODE(sync_prio_r14.unpack(bref)); if (thres_sl_tx_prioritization_r14_present) { - HANDLE_CODE(unpack_unalign_integer(thres_sl_tx_prioritization_r14, bref, (uint8_t)1, (uint8_t)8)); + HANDLE_CODE(unpack_integer(thres_sl_tx_prioritization_r14, bref, (uint8_t)1u, (uint8_t)8u)); } if (offset_dfn_r14_present) { - HANDLE_CODE(unpack_unalign_integer(offset_dfn_r14, bref, (uint16_t)0, (uint16_t)1000)); + HANDLE_CODE(unpack_integer(offset_dfn_r14, bref, (uint16_t)0u, (uint16_t)1000u)); } if (ext) { @@ -117496,7 +117316,7 @@ SRSASN_CODE sl_v2x_precfg_freq_info_r14_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool v2x_freq_sel_cfg_list_r15_present; HANDLE_CODE(bref.unpack(v2x_freq_sel_cfg_list_r15_present, 1)); @@ -117568,7 +117388,7 @@ SRSASN_CODE sl_v2x_precfg_r14_s::pack(bit_ref& bref) const HANDLE_CODE(pack_dyn_seq_of(bref, v2x_precfg_freq_list_r14, 1, 8)); if (anchor_carrier_freq_list_r14_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, anchor_carrier_freq_list_r14, 1, 8, UnalignedIntegerPacker(0, 262143))); + HANDLE_CODE(pack_dyn_seq_of(bref, anchor_carrier_freq_list_r14, 1, 8, integer_packer(0, 262143))); } if (cbr_precfg_list_r14_present) { HANDLE_CODE(cbr_precfg_list_r14.pack(bref)); @@ -117583,7 +117403,7 @@ SRSASN_CODE sl_v2x_precfg_r14_s::pack(bit_ref& bref) const group_flags.pack(bref); if (group_flags[0]) { - varlength_field_pack_guard varlen_scope(bref); + varlength_field_pack_guard varlen_scope(bref, false); HANDLE_CODE(bref.pack(v2x_packet_dupl_cfg_r15.is_present(), 1)); HANDLE_CODE(bref.pack(sync_freq_list_r15.is_present(), 1)); @@ -117593,10 +117413,10 @@ SRSASN_CODE sl_v2x_precfg_r14_s::pack(bit_ref& bref) const HANDLE_CODE(v2x_packet_dupl_cfg_r15->pack(bref)); } if (sync_freq_list_r15.is_present()) { - HANDLE_CODE(pack_dyn_seq_of(bref, *sync_freq_list_r15, 1, 8, UnalignedIntegerPacker(0, 262143))); + HANDLE_CODE(pack_dyn_seq_of(bref, *sync_freq_list_r15, 1, 8, integer_packer(0, 262143))); } if (v2x_tx_profile_list_r15.is_present()) { - HANDLE_CODE(pack_dyn_seq_of(bref, *v2x_tx_profile_list_r15, 1, 256, EnumPacker())); + HANDLE_CODE(pack_dyn_seq_of(bref, *v2x_tx_profile_list_r15, 1, 256)); } } } @@ -117610,8 +117430,7 @@ SRSASN_CODE sl_v2x_precfg_r14_s::unpack(bit_ref& bref) HANDLE_CODE(unpack_dyn_seq_of(v2x_precfg_freq_list_r14, bref, 1, 8)); if (anchor_carrier_freq_list_r14_present) { - HANDLE_CODE( - unpack_dyn_seq_of(anchor_carrier_freq_list_r14, bref, 1, 8, UnalignedIntegerPacker(0, 262143))); + HANDLE_CODE(unpack_dyn_seq_of(anchor_carrier_freq_list_r14, bref, 1, 8, integer_packer(0, 262143))); } if (cbr_precfg_list_r14_present) { HANDLE_CODE(cbr_precfg_list_r14.unpack(bref)); @@ -117622,7 +117441,7 @@ SRSASN_CODE sl_v2x_precfg_r14_s::unpack(bit_ref& bref) group_flags.unpack(bref); if (group_flags[0]) { - varlength_field_unpack_guard varlen_scope(bref); + varlength_field_unpack_guard varlen_scope(bref, false); bool v2x_packet_dupl_cfg_r15_present; HANDLE_CODE(bref.unpack(v2x_packet_dupl_cfg_r15_present, 1)); @@ -117638,10 +117457,10 @@ SRSASN_CODE sl_v2x_precfg_r14_s::unpack(bit_ref& bref) HANDLE_CODE(v2x_packet_dupl_cfg_r15->unpack(bref)); } if (sync_freq_list_r15.is_present()) { - HANDLE_CODE(unpack_dyn_seq_of(*sync_freq_list_r15, bref, 1, 8, UnalignedIntegerPacker(0, 262143))); + HANDLE_CODE(unpack_dyn_seq_of(*sync_freq_list_r15, bref, 1, 8, integer_packer(0, 262143))); } if (v2x_tx_profile_list_r15.is_present()) { - HANDLE_CODE(unpack_dyn_seq_of(*v2x_tx_profile_list_r15, bref, 1, 256, EnumPacker())); + HANDLE_CODE(unpack_dyn_seq_of(*v2x_tx_profile_list_r15, bref, 1, 256)); } } } @@ -117699,7 +117518,7 @@ SRSASN_CODE ue_paging_coverage_info_r13_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (mpdcch_num_repeat_r13_present) { - HANDLE_CODE(pack_unalign_integer(bref, mpdcch_num_repeat_r13, (uint16_t)1, (uint16_t)256)); + HANDLE_CODE(pack_integer(bref, mpdcch_num_repeat_r13, (uint16_t)1u, (uint16_t)256u)); } return SRSASN_SUCCESS; @@ -117710,7 +117529,7 @@ SRSASN_CODE ue_paging_coverage_info_r13_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (mpdcch_num_repeat_r13_present) { - HANDLE_CODE(unpack_unalign_integer(mpdcch_num_repeat_r13, bref, (uint16_t)1, (uint16_t)256)); + HANDLE_CODE(unpack_integer(mpdcch_num_repeat_r13, bref, (uint16_t)1u, (uint16_t)256u)); } return SRSASN_SUCCESS; @@ -117829,7 +117648,7 @@ void ue_paging_coverage_info_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE ue_paging_coverage_info_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -117845,7 +117664,7 @@ SRSASN_CODE ue_paging_coverage_info_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE ue_paging_coverage_info_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -117893,7 +117712,7 @@ void ue_paging_coverage_info_s::crit_exts_c_::c1_c_::to_json(json_writer& j) con } SRSASN_CODE ue_paging_coverage_info_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ue_paging_coverage_info_r13: HANDLE_CODE(c.pack(bref)); @@ -117921,7 +117740,7 @@ SRSASN_CODE ue_paging_coverage_info_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) SRSASN_CODE ue_paging_coverage_info_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ue_paging_coverage_info_r13: @@ -118077,7 +117896,7 @@ void ue_radio_access_cap_info_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE ue_radio_access_cap_info_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -118093,7 +117912,7 @@ SRSASN_CODE ue_radio_access_cap_info_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE ue_radio_access_cap_info_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -118141,7 +117960,7 @@ void ue_radio_access_cap_info_s::crit_exts_c_::c1_c_::to_json(json_writer& j) co } SRSASN_CODE ue_radio_access_cap_info_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ue_radio_access_cap_info_r8: HANDLE_CODE(c.pack(bref)); @@ -118169,7 +117988,7 @@ SRSASN_CODE ue_radio_access_cap_info_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) SRSASN_CODE ue_radio_access_cap_info_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ue_radio_access_cap_info_r8: @@ -118203,8 +118022,8 @@ SRSASN_CODE ue_radio_paging_info_v1310_ies_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(non_crit_ext_present, 1)); if (supported_band_list_eutra_for_paging_r13_present) { - HANDLE_CODE(pack_dyn_seq_of( - bref, supported_band_list_eutra_for_paging_r13, 1, 64, UnalignedIntegerPacker(1, 256))); + HANDLE_CODE( + pack_dyn_seq_of(bref, supported_band_list_eutra_for_paging_r13, 1, 64, integer_packer(1, 256))); } return SRSASN_SUCCESS; @@ -118215,8 +118034,8 @@ SRSASN_CODE ue_radio_paging_info_v1310_ies_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(non_crit_ext_present, 1)); if (supported_band_list_eutra_for_paging_r13_present) { - HANDLE_CODE(unpack_dyn_seq_of( - supported_band_list_eutra_for_paging_r13, bref, 1, 64, UnalignedIntegerPacker(1, 256))); + HANDLE_CODE( + unpack_dyn_seq_of(supported_band_list_eutra_for_paging_r13, bref, 1, 64, integer_packer(1, 256))); } return SRSASN_SUCCESS; @@ -118373,7 +118192,7 @@ void ue_radio_paging_info_s::crit_exts_c_::to_json(json_writer& j) const } SRSASN_CODE ue_radio_paging_info_s::crit_exts_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::c1: HANDLE_CODE(c.get().pack(bref)); @@ -118389,7 +118208,7 @@ SRSASN_CODE ue_radio_paging_info_s::crit_exts_c_::pack(bit_ref& bref) const SRSASN_CODE ue_radio_paging_info_s::crit_exts_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::c1: @@ -118437,7 +118256,7 @@ void ue_radio_paging_info_s::crit_exts_c_::c1_c_::to_json(json_writer& j) const } SRSASN_CODE ue_radio_paging_info_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::ue_radio_paging_info_r12: HANDLE_CODE(c.pack(bref)); @@ -118465,7 +118284,7 @@ SRSASN_CODE ue_radio_paging_info_s::crit_exts_c_::c1_c_::pack(bit_ref& bref) con SRSASN_CODE ue_radio_paging_info_s::crit_exts_c_::c1_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::ue_radio_paging_info_r12: @@ -118525,8 +118344,8 @@ SRSASN_CODE var_log_meas_cfg_r10_s::pack(bit_ref& bref) const if (area_cfg_r10_present) { HANDLE_CODE(area_cfg_r10.pack(bref)); } - HANDLE_CODE(pack_enum(bref, logging_dur_r10)); - HANDLE_CODE(pack_enum(bref, logging_interv_r10)); + HANDLE_CODE(logging_dur_r10.pack(bref)); + HANDLE_CODE(logging_interv_r10.pack(bref)); return SRSASN_SUCCESS; } @@ -118537,8 +118356,8 @@ SRSASN_CODE var_log_meas_cfg_r10_s::unpack(bit_ref& bref) if (area_cfg_r10_present) { HANDLE_CODE(area_cfg_r10.unpack(bref)); } - HANDLE_CODE(unpack_enum(logging_dur_r10, bref)); - HANDLE_CODE(unpack_enum(logging_interv_r10, bref)); + HANDLE_CODE(logging_dur_r10.unpack(bref)); + HANDLE_CODE(logging_interv_r10.unpack(bref)); return SRSASN_SUCCESS; } @@ -118566,8 +118385,8 @@ SRSASN_CODE var_log_meas_cfg_r11_s::pack(bit_ref& bref) const if (area_cfg_v1130_present) { HANDLE_CODE(area_cfg_v1130.pack(bref)); } - HANDLE_CODE(pack_enum(bref, logging_dur_r10)); - HANDLE_CODE(pack_enum(bref, logging_interv_r10)); + HANDLE_CODE(logging_dur_r10.pack(bref)); + HANDLE_CODE(logging_interv_r10.pack(bref)); return SRSASN_SUCCESS; } @@ -118582,8 +118401,8 @@ SRSASN_CODE var_log_meas_cfg_r11_s::unpack(bit_ref& bref) if (area_cfg_v1130_present) { HANDLE_CODE(area_cfg_v1130.unpack(bref)); } - HANDLE_CODE(unpack_enum(logging_dur_r10, bref)); - HANDLE_CODE(unpack_enum(logging_interv_r10, bref)); + HANDLE_CODE(logging_dur_r10.unpack(bref)); + HANDLE_CODE(logging_interv_r10.unpack(bref)); return SRSASN_SUCCESS; } @@ -118616,8 +118435,8 @@ SRSASN_CODE var_log_meas_cfg_r12_s::pack(bit_ref& bref) const if (area_cfg_v1130_present) { HANDLE_CODE(area_cfg_v1130.pack(bref)); } - HANDLE_CODE(pack_enum(bref, logging_dur_r10)); - HANDLE_CODE(pack_enum(bref, logging_interv_r10)); + HANDLE_CODE(logging_dur_r10.pack(bref)); + HANDLE_CODE(logging_interv_r10.pack(bref)); if (target_mbsfn_area_list_r12_present) { HANDLE_CODE(pack_dyn_seq_of(bref, target_mbsfn_area_list_r12, 0, 8)); } @@ -118636,8 +118455,8 @@ SRSASN_CODE var_log_meas_cfg_r12_s::unpack(bit_ref& bref) if (area_cfg_v1130_present) { HANDLE_CODE(area_cfg_v1130.unpack(bref)); } - HANDLE_CODE(unpack_enum(logging_dur_r10, bref)); - HANDLE_CODE(unpack_enum(logging_interv_r10, bref)); + HANDLE_CODE(logging_dur_r10.unpack(bref)); + HANDLE_CODE(logging_interv_r10.unpack(bref)); if (target_mbsfn_area_list_r12_present) { HANDLE_CODE(unpack_dyn_seq_of(target_mbsfn_area_list_r12, bref, 0, 8)); } @@ -118682,8 +118501,8 @@ SRSASN_CODE var_log_meas_cfg_r15_s::pack(bit_ref& bref) const if (area_cfg_v1130_present) { HANDLE_CODE(area_cfg_v1130.pack(bref)); } - HANDLE_CODE(pack_enum(bref, logging_dur_r10)); - HANDLE_CODE(pack_enum(bref, logging_interv_r10)); + HANDLE_CODE(logging_dur_r10.pack(bref)); + HANDLE_CODE(logging_interv_r10.pack(bref)); if (target_mbsfn_area_list_r12_present) { HANDLE_CODE(pack_dyn_seq_of(bref, target_mbsfn_area_list_r12, 0, 8)); } @@ -118710,8 +118529,8 @@ SRSASN_CODE var_log_meas_cfg_r15_s::unpack(bit_ref& bref) if (area_cfg_v1130_present) { HANDLE_CODE(area_cfg_v1130.unpack(bref)); } - HANDLE_CODE(unpack_enum(logging_dur_r10, bref)); - HANDLE_CODE(unpack_enum(logging_interv_r10, bref)); + HANDLE_CODE(logging_dur_r10.unpack(bref)); + HANDLE_CODE(logging_interv_r10.unpack(bref)); if (target_mbsfn_area_list_r12_present) { HANDLE_CODE(unpack_dyn_seq_of(target_mbsfn_area_list_r12, bref, 0, 8)); } @@ -118891,10 +118710,10 @@ SRSASN_CODE var_meas_cfg_s::pack(bit_ref& bref) const HANDLE_CODE(quant_cfg.pack(bref)); } if (meas_scale_factor_r12_present) { - HANDLE_CODE(pack_enum(bref, meas_scale_factor_r12)); + HANDLE_CODE(meas_scale_factor_r12.pack(bref)); } if (s_measure_present) { - HANDLE_CODE(pack_unalign_integer(bref, s_measure, (int16_t)-140, (int16_t)-44)); + HANDLE_CODE(pack_integer(bref, s_measure, (int16_t)-140, (int16_t)-44)); } if (speed_state_pars_present) { HANDLE_CODE(speed_state_pars.pack(bref)); @@ -118949,10 +118768,10 @@ SRSASN_CODE var_meas_cfg_s::unpack(bit_ref& bref) HANDLE_CODE(quant_cfg.unpack(bref)); } if (meas_scale_factor_r12_present) { - HANDLE_CODE(unpack_enum(meas_scale_factor_r12, bref)); + HANDLE_CODE(meas_scale_factor_r12.unpack(bref)); } if (s_measure_present) { - HANDLE_CODE(unpack_unalign_integer(s_measure, bref, (int16_t)-140, (int16_t)-44)); + HANDLE_CODE(unpack_integer(s_measure, bref, (int16_t)-140, (int16_t)-44)); } if (speed_state_pars_present) { HANDLE_CODE(speed_state_pars.unpack(bref)); @@ -119068,7 +118887,7 @@ void var_meas_cfg_s::speed_state_pars_c_::to_json(json_writer& j) const } SRSASN_CODE var_meas_cfg_s::speed_state_pars_c_::pack(bit_ref& bref) const { - pack_enum(bref, type_); + type_.pack(bref); switch (type_) { case types::release: break; @@ -119085,7 +118904,7 @@ SRSASN_CODE var_meas_cfg_s::speed_state_pars_c_::pack(bit_ref& bref) const SRSASN_CODE var_meas_cfg_s::speed_state_pars_c_::unpack(bit_ref& bref) { types e; - unpack_enum(e, bref); + e.unpack(bref); set(e); switch (type_) { case types::release: @@ -119109,7 +118928,7 @@ SRSASN_CODE var_meas_idle_cfg_r15_s::pack(bit_ref& bref) const if (meas_idle_carrier_list_eutra_r15_present) { HANDLE_CODE(pack_dyn_seq_of(bref, meas_idle_carrier_list_eutra_r15, 1, 8)); } - HANDLE_CODE(pack_enum(bref, meas_idle_dur_r15)); + HANDLE_CODE(meas_idle_dur_r15.pack(bref)); return SRSASN_SUCCESS; } @@ -119120,7 +118939,7 @@ SRSASN_CODE var_meas_idle_cfg_r15_s::unpack(bit_ref& bref) if (meas_idle_carrier_list_eutra_r15_present) { HANDLE_CODE(unpack_dyn_seq_of(meas_idle_carrier_list_eutra_r15, bref, 1, 8)); } - HANDLE_CODE(unpack_enum(meas_idle_dur_r15, bref)); + HANDLE_CODE(meas_idle_dur_r15.unpack(bref)); return SRSASN_SUCCESS; } @@ -119170,18 +118989,18 @@ SRSASN_CODE var_meas_report_s::pack(bit_ref& bref) const HANDLE_CODE(bref.pack(csi_rs_triggered_list_r12_present, 1)); HANDLE_CODE(bref.pack(pools_triggered_list_r14_present, 1)); - HANDLE_CODE(pack_unalign_integer(bref, meas_id, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(pack_integer(bref, meas_id, (uint8_t)1u, (uint8_t)32u)); if (meas_id_v1250_present) { - HANDLE_CODE(pack_unalign_integer(bref, meas_id_v1250, (uint8_t)33, (uint8_t)64)); + HANDLE_CODE(pack_integer(bref, meas_id_v1250, (uint8_t)33u, (uint8_t)64u)); } if (cells_triggered_list_present) { HANDLE_CODE(pack_dyn_seq_of(bref, cells_triggered_list, 1, 32)); } if (csi_rs_triggered_list_r12_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, csi_rs_triggered_list_r12, 1, 96, UnalignedIntegerPacker(1, 96))); + HANDLE_CODE(pack_dyn_seq_of(bref, csi_rs_triggered_list_r12, 1, 96, integer_packer(1, 96))); } if (pools_triggered_list_r14_present) { - HANDLE_CODE(pack_dyn_seq_of(bref, pools_triggered_list_r14, 1, 72, UnalignedIntegerPacker(1, 72))); + HANDLE_CODE(pack_dyn_seq_of(bref, pools_triggered_list_r14, 1, 72, integer_packer(1, 72))); } HANDLE_CODE(pack_unconstrained_integer(bref, nof_reports_sent)); @@ -119194,18 +119013,18 @@ SRSASN_CODE var_meas_report_s::unpack(bit_ref& bref) HANDLE_CODE(bref.unpack(csi_rs_triggered_list_r12_present, 1)); HANDLE_CODE(bref.unpack(pools_triggered_list_r14_present, 1)); - HANDLE_CODE(unpack_unalign_integer(meas_id, bref, (uint8_t)1, (uint8_t)32)); + HANDLE_CODE(unpack_integer(meas_id, bref, (uint8_t)1u, (uint8_t)32u)); if (meas_id_v1250_present) { - HANDLE_CODE(unpack_unalign_integer(meas_id_v1250, bref, (uint8_t)33, (uint8_t)64)); + HANDLE_CODE(unpack_integer(meas_id_v1250, bref, (uint8_t)33u, (uint8_t)64u)); } if (cells_triggered_list_present) { HANDLE_CODE(unpack_dyn_seq_of(cells_triggered_list, bref, 1, 32)); } if (csi_rs_triggered_list_r12_present) { - HANDLE_CODE(unpack_dyn_seq_of(csi_rs_triggered_list_r12, bref, 1, 96, UnalignedIntegerPacker(1, 96))); + HANDLE_CODE(unpack_dyn_seq_of(csi_rs_triggered_list_r12, bref, 1, 96, integer_packer(1, 96))); } if (pools_triggered_list_r14_present) { - HANDLE_CODE(unpack_dyn_seq_of(pools_triggered_list_r14, bref, 1, 72, UnalignedIntegerPacker(1, 72))); + HANDLE_CODE(unpack_dyn_seq_of(pools_triggered_list_r14, bref, 1, 72, integer_packer(1, 72))); } HANDLE_CODE(unpack_unconstrained_integer(nof_reports_sent, bref)); @@ -119300,7 +119119,7 @@ void var_rlf_report_r11_s::to_json(json_writer& j) const SRSASN_CODE var_short_inactive_mac_input_r15_s::pack(bit_ref& bref) const { HANDLE_CODE(cell_id_r15.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, pci_r15, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(pack_integer(bref, pci_r15, (uint16_t)0u, (uint16_t)503u)); HANDLE_CODE(c_rnti_r15.pack(bref)); return SRSASN_SUCCESS; @@ -119308,7 +119127,7 @@ SRSASN_CODE var_short_inactive_mac_input_r15_s::pack(bit_ref& bref) const SRSASN_CODE var_short_inactive_mac_input_r15_s::unpack(bit_ref& bref) { HANDLE_CODE(cell_id_r15.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(pci_r15, bref, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(unpack_integer(pci_r15, bref, (uint16_t)0u, (uint16_t)503u)); HANDLE_CODE(c_rnti_r15.unpack(bref)); return SRSASN_SUCCESS; @@ -119326,7 +119145,7 @@ void var_short_inactive_mac_input_r15_s::to_json(json_writer& j) const SRSASN_CODE var_short_mac_input_s::pack(bit_ref& bref) const { HANDLE_CODE(cell_id.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, pci, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(pack_integer(bref, pci, (uint16_t)0u, (uint16_t)503u)); HANDLE_CODE(c_rnti.pack(bref)); return SRSASN_SUCCESS; @@ -119334,7 +119153,7 @@ SRSASN_CODE var_short_mac_input_s::pack(bit_ref& bref) const SRSASN_CODE var_short_mac_input_s::unpack(bit_ref& bref) { HANDLE_CODE(cell_id.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(pci, bref, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(unpack_integer(pci, bref, (uint16_t)0u, (uint16_t)503u)); HANDLE_CODE(c_rnti.unpack(bref)); return SRSASN_SUCCESS; @@ -119352,7 +119171,7 @@ void var_short_mac_input_s::to_json(json_writer& j) const SRSASN_CODE var_short_resume_mac_input_r13_s::pack(bit_ref& bref) const { HANDLE_CODE(cell_id_r13.pack(bref)); - HANDLE_CODE(pack_unalign_integer(bref, pci_r13, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(pack_integer(bref, pci_r13, (uint16_t)0u, (uint16_t)503u)); HANDLE_CODE(c_rnti_r13.pack(bref)); HANDLE_CODE(resume_discriminator_r13.pack(bref)); @@ -119361,7 +119180,7 @@ SRSASN_CODE var_short_resume_mac_input_r13_s::pack(bit_ref& bref) const SRSASN_CODE var_short_resume_mac_input_r13_s::unpack(bit_ref& bref) { HANDLE_CODE(cell_id_r13.unpack(bref)); - HANDLE_CODE(unpack_unalign_integer(pci_r13, bref, (uint16_t)0, (uint16_t)503)); + HANDLE_CODE(unpack_integer(pci_r13, bref, (uint16_t)0u, (uint16_t)503u)); HANDLE_CODE(c_rnti_r13.unpack(bref)); HANDLE_CODE(resume_discriminator_r13.unpack(bref)); @@ -119433,9 +119252,9 @@ SRSASN_CODE var_wlan_status_r13_s::pack(bit_ref& bref) const { HANDLE_CODE(bref.pack(status_r14_present, 1)); - HANDLE_CODE(pack_enum(bref, status_r13)); + HANDLE_CODE(status_r13.pack(bref)); if (status_r14_present) { - HANDLE_CODE(pack_enum(bref, status_r14)); + HANDLE_CODE(status_r14.pack(bref)); } return SRSASN_SUCCESS; @@ -119444,9 +119263,9 @@ SRSASN_CODE var_wlan_status_r13_s::unpack(bit_ref& bref) { HANDLE_CODE(bref.unpack(status_r14_present, 1)); - HANDLE_CODE(unpack_enum(status_r13, bref)); + HANDLE_CODE(status_r13.unpack(bref)); if (status_r14_present) { - HANDLE_CODE(unpack_enum(status_r14, bref)); + HANDLE_CODE(status_r14.unpack(bref)); } return SRSASN_SUCCESS; diff --git a/lib/src/asn1/rrc_asn1_enum.cc b/lib/src/asn1/rrc_asn1_enum.cc index 72915459b..e4d396ac7 100644 --- a/lib/src/asn1/rrc_asn1_enum.cc +++ b/lib/src/asn1/rrc_asn1_enum.cc @@ -2745,7 +2745,18 @@ int8_t sib_type3_s::cell_resel_info_common_s_::speed_state_resel_pars_s_::q_hyst options, 4, value, "sib_type3_s::cell_resel_info_common_s_::speed_state_resel_pars_s_::q_hyst_sf_s_::sf_high_e_"); } -std::string sib_info_item_c::types_opts::to_string() const +std::string pos_sys_info_r15_ies_s::pos_sib_type_and_info_r15_item_c_::types_opts::to_string() const +{ + static constexpr const char* options[] = { + "posSib1-1-r15", "posSib1-2-r15", "posSib1-3-r15", "posSib1-4-r15", "posSib1-5-r15", "posSib1-6-r15", + "posSib1-7-r15", "posSib2-1-r15", "posSib2-2-r15", "posSib2-3-r15", "posSib2-4-r15", "posSib2-5-r15", + "posSib2-6-r15", "posSib2-7-r15", "posSib2-8-r15", "posSib2-9-r15", "posSib2-10-r15", "posSib2-11-r15", + "posSib2-12-r15", "posSib2-13-r15", "posSib2-14-r15", "posSib2-15-r15", "posSib2-16-r15", "posSib2-17-r15", + "posSib2-18-r15", "posSib2-19-r15", "posSib3-1-r15"}; + return convert_enum_idx(options, 27, value, "pos_sys_info_r15_ies_s::pos_sib_type_and_info_r15_item_c_::types"); +} + +std::string sys_info_r8_ies_s::sib_type_and_info_item_c_::types_opts::to_string() const { static constexpr const char* options[] = {"sib2", "sib3", "sib4", "sib5", "sib6", "sib7", "sib8", "sib9", "sib10", "sib11", @@ -2943,7 +2954,7 @@ std::string p_c_and_cbsr_r13_s::cbsr_sel_r13_c_::types_opts::to_string() const uint8_t p_c_and_cbsr_r13_s::cbsr_sel_r13_c_::types_opts::to_number() const { switch (value) { - case beamformed_k1a_r13: + case bf_k1a_r13: return 1; default: invalid_enum_number(value, "p_c_and_cbsr_r13_s::cbsr_sel_r13_c_::types"); @@ -5625,15 +5636,15 @@ int8_t mac_main_cfg_s::phr_cfg_c_::setup_s_::dl_pathloss_change_opts::to_number( return convert_enum_idx(options, 4, value, "mac_main_cfg_s::phr_cfg_c_::setup_s_::dl_pathloss_change_e_"); } -std::string mac_main_cfg_s::mac_main_cfg_v1020_s_::s_cell_deactivation_timer_r10_opts::to_string() const +std::string mac_main_cfg_s::mac_main_cfg_v1020_s_::scell_deactivation_timer_r10_opts::to_string() const { static constexpr const char* options[] = {"rf2", "rf4", "rf8", "rf16", "rf32", "rf64", "rf128", "spare"}; - return convert_enum_idx(options, 8, value, "mac_main_cfg_s::mac_main_cfg_v1020_s_::s_cell_deactivation_timer_r10_e_"); + return convert_enum_idx(options, 8, value, "mac_main_cfg_s::mac_main_cfg_v1020_s_::scell_deactivation_timer_r10_e_"); } -uint8_t mac_main_cfg_s::mac_main_cfg_v1020_s_::s_cell_deactivation_timer_r10_opts::to_number() const +uint8_t mac_main_cfg_s::mac_main_cfg_v1020_s_::scell_deactivation_timer_r10_opts::to_number() const { static constexpr uint8_t options[] = {2, 4, 8, 16, 32, 64, 128}; - return convert_enum_idx(options, 7, value, "mac_main_cfg_s::mac_main_cfg_v1020_s_::s_cell_deactivation_timer_r10_e_"); + return convert_enum_idx(options, 7, value, "mac_main_cfg_s::mac_main_cfg_v1020_s_::scell_deactivation_timer_r10_e_"); } std::string mac_main_cfg_s::dual_connect_phr_c_::setup_s_::phr_mode_other_cg_r12_opts::to_string() const @@ -5655,15 +5666,15 @@ uint16_t mac_main_cfg_s::lc_ch_sr_cfg_r12_c_::setup_s_::lc_ch_sr_prohibit_timer_ options, 7, value, "mac_main_cfg_s::lc_ch_sr_cfg_r12_c_::setup_s_::lc_ch_sr_prohibit_timer_r12_e_"); } -std::string mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_::types_opts::to_string() const +std::string mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_::types_opts::to_string() const { static constexpr const char* options[] = {"sf5120", "sf10240"}; - return convert_enum_idx(options, 2, value, "mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_::types"); + return convert_enum_idx(options, 2, value, "mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_::types"); } -uint16_t mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_::types_opts::to_number() const +uint16_t mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_::types_opts::to_number() const { static constexpr uint16_t options[] = {5120, 10240}; - return convert_enum_idx(options, 2, value, "mac_main_cfg_s::e_drx_cfg_cycle_start_offset_r13_c_::setup_c_::types"); + return convert_enum_idx(options, 2, value, "mac_main_cfg_s::edrx_cfg_cycle_start_offset_r13_c_::setup_c_::types"); } std::string mac_main_cfg_s::short_tti_and_spt_r15_c_::setup_s_::periodic_bsr_timer_r15_opts::to_string() const @@ -5701,17 +5712,17 @@ std::string mac_main_cfg_s::short_tti_and_spt_r15_c_::setup_s_::proc_timeline_r1 options, 4, value, "mac_main_cfg_s::short_tti_and_spt_r15_c_::setup_s_::proc_timeline_r15_e_"); } -std::string mac_main_cfg_s::dormant_state_timers_r15_c_::setup_s_::s_cell_hibernation_timer_r15_opts::to_string() const +std::string mac_main_cfg_s::dormant_state_timers_r15_c_::setup_s_::scell_hibernation_timer_r15_opts::to_string() const { static constexpr const char* options[] = {"rf2", "rf4", "rf8", "rf16", "rf32", "rf64", "rf128", "spare"}; return convert_enum_idx( - options, 8, value, "mac_main_cfg_s::dormant_state_timers_r15_c_::setup_s_::s_cell_hibernation_timer_r15_e_"); + options, 8, value, "mac_main_cfg_s::dormant_state_timers_r15_c_::setup_s_::scell_hibernation_timer_r15_e_"); } -uint8_t mac_main_cfg_s::dormant_state_timers_r15_c_::setup_s_::s_cell_hibernation_timer_r15_opts::to_number() const +uint8_t mac_main_cfg_s::dormant_state_timers_r15_c_::setup_s_::scell_hibernation_timer_r15_opts::to_number() const { static constexpr uint8_t options[] = {2, 4, 8, 16, 32, 64, 128}; return convert_enum_idx( - options, 7, value, "mac_main_cfg_s::dormant_state_timers_r15_c_::setup_s_::s_cell_hibernation_timer_r15_e_"); + options, 7, value, "mac_main_cfg_s::dormant_state_timers_r15_c_::setup_s_::scell_hibernation_timer_r15_e_"); } std::string @@ -6973,16 +6984,16 @@ uint8_t rlf_timers_and_consts_scg_r12_c::setup_s_::n314_r12_opts::to_number() co return convert_enum_idx(options, 8, value, "rlf_timers_and_consts_scg_r12_c::setup_s_::n314_r12_e_"); } -std::string scell_to_add_mod_r10_s::s_cell_state_r15_opts::to_string() const +std::string scell_to_add_mod_r10_s::scell_state_r15_opts::to_string() const { static constexpr const char* options[] = {"activated", "dormant"}; - return convert_enum_idx(options, 2, value, "scell_to_add_mod_r10_s::s_cell_state_r15_e_"); + return convert_enum_idx(options, 2, value, "scell_to_add_mod_r10_s::scell_state_r15_e_"); } -std::string scell_to_add_mod_ext_v1430_s::s_cell_state_r15_opts::to_string() const +std::string scell_to_add_mod_ext_v1430_s::scell_state_r15_opts::to_string() const { static constexpr const char* options[] = {"activated", "dormant"}; - return convert_enum_idx(options, 2, value, "scell_to_add_mod_ext_v1430_s::s_cell_state_r15_e_"); + return convert_enum_idx(options, 2, value, "scell_to_add_mod_ext_v1430_s::scell_state_r15_e_"); } std::string sl_disc_tx_ref_carrier_ded_r13_c::types_opts::to_string() const @@ -7034,15 +7045,15 @@ uint8_t sf_assign_r15_opts::to_number() const return convert_enum_idx(options, 7, value, "sf_assign_r15_e"); } -std::string wlan_mob_cfg_r13_s::association_timer_r13_opts::to_string() const +std::string wlan_mob_cfg_r13_s::assoc_timer_r13_opts::to_string() const { static constexpr const char* options[] = {"s10", "s30", "s60", "s120", "s240"}; - return convert_enum_idx(options, 5, value, "wlan_mob_cfg_r13_s::association_timer_r13_e_"); + return convert_enum_idx(options, 5, value, "wlan_mob_cfg_r13_s::assoc_timer_r13_e_"); } -uint8_t wlan_mob_cfg_r13_s::association_timer_r13_opts::to_number() const +uint8_t wlan_mob_cfg_r13_s::assoc_timer_r13_opts::to_number() const { static constexpr uint8_t options[] = {10, 30, 60, 120, 240}; - return convert_enum_idx(options, 5, value, "wlan_mob_cfg_r13_s::association_timer_r13_e_"); + return convert_enum_idx(options, 5, value, "wlan_mob_cfg_r13_s::assoc_timer_r13_e_"); } // CA-BandwidthClass-r10 ::= ENUMERATED @@ -7510,7 +7521,7 @@ std::string pwr_pref_ind_cfg_r11_c::setup_s_::pwr_pref_ind_timer_r11_opts::to_nu return convert_enum_idx(options, 16, value, "pwr_pref_ind_cfg_r11_c::setup_s_::pwr_pref_ind_timer_r11_e_"); } -std::string report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_::types_opts::to_string() const +std::string eutra_event_s::event_id_c_::types_opts::to_string() const { static constexpr const char* options[] = {"eventA1", "eventA2", @@ -7524,7 +7535,7 @@ std::string report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_::types_op "eventV2-r14", "eventH1-r15", "eventH2-r15"}; - return convert_enum_idx(options, 12, value, "report_cfg_eutra_s::trigger_type_c_::event_s_::event_id_c_::types"); + return convert_enum_idx(options, 12, value, "eutra_event_s::event_id_c_::types"); } std::string report_cfg_eutra_s::trigger_type_c_::periodical_s_::purpose_opts::to_string() const @@ -9890,15 +9901,15 @@ uint8_t mimo_ca_params_per_bo_bc_per_tm_v1470_s::csi_report_advanced_max_ports_r options, 6, value, "mimo_ca_params_per_bo_bc_per_tm_v1470_s::csi_report_advanced_max_ports_r14_e_"); } -std::string stti_spt_band_params_r15_s::s_tti_supported_csi_proc_r15_opts::to_string() const +std::string stti_spt_band_params_r15_s::stti_supported_csi_proc_r15_opts::to_string() const { static constexpr const char* options[] = {"n1", "n3", "n4"}; - return convert_enum_idx(options, 3, value, "stti_spt_band_params_r15_s::s_tti_supported_csi_proc_r15_e_"); + return convert_enum_idx(options, 3, value, "stti_spt_band_params_r15_s::stti_supported_csi_proc_r15_e_"); } -uint8_t stti_spt_band_params_r15_s::s_tti_supported_csi_proc_r15_opts::to_number() const +uint8_t stti_spt_band_params_r15_s::stti_supported_csi_proc_r15_opts::to_number() const { static constexpr uint8_t options[] = {1, 3, 4}; - return convert_enum_idx(options, 3, value, "stti_spt_band_params_r15_s::s_tti_supported_csi_proc_r15_e_"); + return convert_enum_idx(options, 3, value, "stti_spt_band_params_r15_s::stti_supported_csi_proc_r15_e_"); } // V2X-BandwidthClass-r14 ::= ENUMERATED @@ -10024,30 +10035,30 @@ uint8_t processing_timeline_set_r15_opts::to_number() const return convert_enum_idx(options, 2, value, "processing_timeline_set_r15_e"); } -std::string mimo_ue_params_per_tm_v1430_s::nzp_csi_rs_aperiodic_info_r14_s_::n_max_res_r14_opts::to_string() const +std::string mimo_ue_params_per_tm_v1430_s::nzp_csi_rs_aperiodic_info_r14_s_::nmax_res_r14_opts::to_string() const { static constexpr const char* options[] = {"ffs1", "ffs2", "ffs3", "ffs4"}; return convert_enum_idx( - options, 4, value, "mimo_ue_params_per_tm_v1430_s::nzp_csi_rs_aperiodic_info_r14_s_::n_max_res_r14_e_"); + options, 4, value, "mimo_ue_params_per_tm_v1430_s::nzp_csi_rs_aperiodic_info_r14_s_::nmax_res_r14_e_"); } -uint8_t mimo_ue_params_per_tm_v1430_s::nzp_csi_rs_aperiodic_info_r14_s_::n_max_res_r14_opts::to_number() const +uint8_t mimo_ue_params_per_tm_v1430_s::nzp_csi_rs_aperiodic_info_r14_s_::nmax_res_r14_opts::to_number() const { static constexpr uint8_t options[] = {1, 2, 3, 4}; return convert_enum_idx( - options, 4, value, "mimo_ue_params_per_tm_v1430_s::nzp_csi_rs_aperiodic_info_r14_s_::n_max_res_r14_e_"); + options, 4, value, "mimo_ue_params_per_tm_v1430_s::nzp_csi_rs_aperiodic_info_r14_s_::nmax_res_r14_e_"); } -std::string mimo_ue_params_per_tm_v1430_s::nzp_csi_rs_periodic_info_r14_s_::n_max_res_r14_opts::to_string() const +std::string mimo_ue_params_per_tm_v1430_s::nzp_csi_rs_periodic_info_r14_s_::nmax_res_r14_opts::to_string() const { static constexpr const char* options[] = {"ffs1", "ffs2", "ffs3", "ffs4"}; return convert_enum_idx( - options, 4, value, "mimo_ue_params_per_tm_v1430_s::nzp_csi_rs_periodic_info_r14_s_::n_max_res_r14_e_"); + options, 4, value, "mimo_ue_params_per_tm_v1430_s::nzp_csi_rs_periodic_info_r14_s_::nmax_res_r14_e_"); } -uint8_t mimo_ue_params_per_tm_v1430_s::nzp_csi_rs_periodic_info_r14_s_::n_max_res_r14_opts::to_number() const +uint8_t mimo_ue_params_per_tm_v1430_s::nzp_csi_rs_periodic_info_r14_s_::nmax_res_r14_opts::to_number() const { static constexpr uint8_t options[] = {1, 2, 3, 4}; return convert_enum_idx( - options, 4, value, "mimo_ue_params_per_tm_v1430_s::nzp_csi_rs_periodic_info_r14_s_::n_max_res_r14_e_"); + options, 4, value, "mimo_ue_params_per_tm_v1430_s::nzp_csi_rs_periodic_info_r14_s_::nmax_res_r14_e_"); } std::string mimo_ue_params_per_tm_v1470_s::csi_report_advanced_max_ports_r14_opts::to_string() const @@ -10161,31 +10172,23 @@ uint8_t phy_layer_params_v1430_s::ce_retuning_symbols_r14_opts::to_number() cons return convert_enum_idx(options, 2, value, "phy_layer_params_v1430_s::ce_retuning_symbols_r14_e_"); } -std::string -phy_layer_params_v1530_s::stti_spt_capabilities_r15_s_::max_layers_slot_or_subslot_pusch_r15_opts::to_string() const +std::string phy_layer_params_v1530_s::stti_spt_cap_r15_s_::max_layers_slot_or_subslot_pusch_r15_opts::to_string() const { static constexpr const char* options[] = {"oneLayer", "twoLayers", "fourLayers"}; return convert_enum_idx( - options, - 3, - value, - "phy_layer_params_v1530_s::stti_spt_capabilities_r15_s_::max_layers_slot_or_subslot_pusch_r15_e_"); + options, 3, value, "phy_layer_params_v1530_s::stti_spt_cap_r15_s_::max_layers_slot_or_subslot_pusch_r15_e_"); } -uint8_t -phy_layer_params_v1530_s::stti_spt_capabilities_r15_s_::max_layers_slot_or_subslot_pusch_r15_opts::to_number() const +uint8_t phy_layer_params_v1530_s::stti_spt_cap_r15_s_::max_layers_slot_or_subslot_pusch_r15_opts::to_number() const { static constexpr uint8_t options[] = {1, 2, 4}; return convert_enum_idx( - options, - 3, - value, - "phy_layer_params_v1530_s::stti_spt_capabilities_r15_s_::max_layers_slot_or_subslot_pusch_r15_e_"); + options, 3, value, "phy_layer_params_v1530_s::stti_spt_cap_r15_s_::max_layers_slot_or_subslot_pusch_r15_e_"); } -std::string phy_layer_params_v1530_s::stti_spt_capabilities_r15_s_::sps_stti_r15_opts::to_string() const +std::string phy_layer_params_v1530_s::stti_spt_cap_r15_s_::sps_stti_r15_opts::to_string() const { static constexpr const char* options[] = {"slot", "subslot", "slotAndSubslot"}; - return convert_enum_idx(options, 3, value, "phy_layer_params_v1530_s::stti_spt_capabilities_r15_s_::sps_stti_r15_e_"); + return convert_enum_idx(options, 3, value, "phy_layer_params_v1530_s::stti_spt_cap_r15_s_::sps_stti_r15_e_"); } std::string supported_band_eutra_v1320_s::ue_pwr_class_n_r13_opts::to_string() const diff --git a/lib/src/asn1/rrc_asn1_utils.cc b/lib/src/asn1/rrc_asn1_utils.cc index 695a55eb4..d9f73f61d 100644 --- a/lib/src/asn1/rrc_asn1_utils.cc +++ b/lib/src/asn1/rrc_asn1_utils.cc @@ -334,7 +334,7 @@ void set_phy_cfg_t_dedicated_cfg(phy_cfg_t* cfg, const asn1::rrc::phys_cfg_ded_s asn1_type.ul_pwr_ctrl_ded.delta_mcs_enabled == asn1::rrc::ul_pwr_ctrl_ded_s::delta_mcs_enabled_e_::en0; cfg->ul_cfg.power_ctrl.acc_enabled = asn1_type.ul_pwr_ctrl_ded.accumulation_enabled; cfg->ul_cfg.power_ctrl.p0_ue_pucch = asn1_type.ul_pwr_ctrl_ded.p0_ue_pucch; - cfg->ul_cfg.power_ctrl.p_srs_offset = asn1_type.ul_pwr_ctrl_ded.p_srs_offset; + cfg->ul_cfg.power_ctrl.p_srs_offset = asn1_type.ul_pwr_ctrl_ded.psrs_offset; } if (asn1_type.ul_pwr_ctrl_ded.filt_coef_present) { @@ -501,8 +501,8 @@ void set_phy_cfg_t_common_pucch(phy_cfg_t* cfg, const asn1::rrc::pucch_cfg_commo { /* PUCCH configuration */ cfg->ul_cfg.pucch.delta_pucch_shift = asn1_type.delta_pucch_shift.to_number(); - cfg->ul_cfg.pucch.N_cs = asn1_type.n_cs_an; - cfg->ul_cfg.pucch.n_rb_2 = asn1_type.n_rb_cqi; + cfg->ul_cfg.pucch.N_cs = asn1_type.ncs_an; + cfg->ul_cfg.pucch.n_rb_2 = asn1_type.nrb_cqi; cfg->ul_cfg.pucch.N_pucch_1 = asn1_type.n1_pucch_an; } diff --git a/lib/test/asn1/rrc_asn1_test.cc b/lib/test/asn1/rrc_asn1_test.cc index 033ec4229..34ba0d9df 100644 --- a/lib/test/asn1/rrc_asn1_test.cc +++ b/lib/test/asn1/rrc_asn1_test.cc @@ -66,7 +66,7 @@ void print_console(srsasn_logger_level_t log_level, void* ctx, const char* str) } struct TestLogger { - TestLogger(const std::string& layer_) : layer(layer_), last_level(LOG_LEVEL_INFO) {} + TestLogger(const std::string& layer_) : layer(layer_) {} void log(srsasn_logger_level_t log_level, const char* str) { last_level = log_level; @@ -395,7 +395,7 @@ int ue_rrc_conn_recfg_r15_v10_test() dl_dcch_msg_s dl_dcch_msg; dl_dcch_msg.unpack(bref); - TESTASSERT(ceil(bref.distance(bref0) / 8.0) == rrc_msg_len); + TESTASSERT(bref.distance_bytes() == (int)rrc_msg_len); TESTASSERT(dl_dcch_msg.msg.type() == dl_dcch_msg_type_c::types::c1); TESTASSERT(dl_dcch_msg.msg.c1().type() == dl_dcch_msg_type_c::c1_c_::types::rrc_conn_recfg); @@ -450,7 +450,7 @@ int ue_rrc_conn_recfg_r15_v10_test() TESTASSERT(explicit_value.type() == rlc_cfg_c::types::am); rlc_cfg_c::am_s_& am = explicit_value.am(); TESTASSERT(am.ul_am_rlc.t_poll_retx == t_poll_retx_e::ms35); - TESTASSERT(am.ul_am_rlc.poll_pdu == poll_pdu_e::p_infinity); + TESTASSERT(am.ul_am_rlc.poll_pdu == poll_pdu_e::pinfinity); TESTASSERT(am.ul_am_rlc.poll_byte == poll_byte_e::kbinfinity); TESTASSERT(am.ul_am_rlc.max_retx_thres == ul_am_rlc_s::max_retx_thres_e_::t32); TESTASSERT(am.dl_am_rlc.t_reordering == t_reordering_e::ms35); @@ -511,8 +511,8 @@ int ue_rrc_conn_recfg_r15_v10_test() TESTASSERT(rrc_recfg_r8->non_crit_ext.non_crit_ext_present); TESTASSERT(not rrc_recfg_r8->non_crit_ext.non_crit_ext.other_cfg_r9_present); TESTASSERT(not rrc_recfg_r8->non_crit_ext.non_crit_ext.full_cfg_r9_present); - TESTASSERT(not rrc_recfg_r8->non_crit_ext.non_crit_ext.non_crit_ext.s_cell_to_release_list_r10_present); - TESTASSERT(not rrc_recfg_r8->non_crit_ext.non_crit_ext.non_crit_ext.s_cell_to_add_mod_list_r10_present); + TESTASSERT(not rrc_recfg_r8->non_crit_ext.non_crit_ext.non_crit_ext.scell_to_release_list_r10_present); + TESTASSERT(not rrc_recfg_r8->non_crit_ext.non_crit_ext.non_crit_ext.scell_to_add_mod_list_r10_present); TESTASSERT(rrc_recfg_r8->non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext_present); TESTASSERT(not rrc_recfg_r8->non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.sib_type1_ded_r11_present); TESTASSERT(rrc_recfg_r8->non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext_present); @@ -527,9 +527,9 @@ int ue_rrc_conn_recfg_r15_v10_test() not rrc_recfg_r8->non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.sl_comm_cfg_r12_present); TESTASSERT(rrc_recfg_r8->non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext_present); TESTASSERT(not rrc_recfg_r8->non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext - .s_cell_to_release_list_ext_r13_present); + .scell_to_release_list_ext_r13_present); TESTASSERT(not rrc_recfg_r8->non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext - .s_cell_to_add_mod_list_ext_r13_present); + .scell_to_add_mod_list_ext_r13_present); TESTASSERT(not rrc_recfg_r8->non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext .lwa_cfg_r13_present); TESTASSERT(not rrc_recfg_r8->non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext @@ -541,7 +541,7 @@ int ue_rrc_conn_recfg_r15_v10_test() TESTASSERT(not rrc_recfg_r8->non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext .non_crit_ext.sl_v2x_cfg_ded_r14_present); TESTASSERT(not rrc_recfg_r8->non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext - .non_crit_ext.s_cell_to_add_mod_list_ext_v1430_present); + .non_crit_ext.scell_to_add_mod_list_ext_v1430_present); TESTASSERT(not rrc_recfg_r8->non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext .non_crit_ext.per_cc_gap_ind_request_r14_present); TESTASSERT(not rrc_recfg_r8->non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext.non_crit_ext @@ -594,6 +594,54 @@ int unrecognized_ext_group_test() return 0; } +int v2x_test() +{ + // Suspected sl_v2x_preconfig message + static uint8_t rrc_msg[] = { + 0x20, 0x98, 0x03, 0x5E, 0x5B, 0x5F, 0xB0, 0x00, 0x00, 0x00, 0x40, 0xA0, 0x00, 0x00, 0x00, 0xBF, 0xFF, 0xFE, + 0x54, 0x02, 0x54, 0x06, 0x97, 0xFF, 0xFF, 0xCA, 0x80, 0x4A, 0x92, 0x88, 0x01, 0x00, 0x06, 0x01, 0x30, 0x00, + 0x81, 0x84, 0xE0, 0x8C, 0x00, 0x10, 0xC2, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x82, 0x30, 0x0E, 0x02, + 0x22, 0xAC, 0x04, 0x41, 0x02, 0x16, 0x2C, 0x58, 0xB1, 0x62, 0xC1, 0x02, 0x16, 0x2C, 0x58, 0xB1, 0x62, 0xC1, + 0x02, 0x16, 0x2C, 0x58, 0xB1, 0x62, 0xC1, 0x02, 0x16, 0x2C, 0x58, 0xB1, 0x62, 0xC1, 0x02, 0x16, 0x2C, 0x58, + 0xB1, 0x62, 0xC1, 0x02, 0x16, 0x2C, 0x58, 0xB1, 0x62, 0xC1, 0x02, 0x16, 0x2C, 0x58, 0xB1, 0x62, 0xC1, 0x02, + 0x16, 0x2C, 0x58, 0xB1, 0x62, 0xC0, 0xA2, 0x80, 0x04, 0x30, 0x72, 0x19, 0xE8, 0x34, 0x32, 0x19, 0xE8, 0x34, + 0x32, 0x08, 0x9C, 0x42, 0x0E, 0x00, 0x8E, 0x00, 0x19, 0x10, 0x70, 0x04, 0x70, 0x01, 0x2C, 0x83, 0x80, 0x23, + 0x80, 0x01, 0xE4, 0x1C, 0x01, 0x1C, 0x00, 0x07, 0xA0, 0xE0, 0x08, 0xE0, 0x00, 0x79, 0x31, 0xC0, 0x47, 0x00, + 0x02, 0x88, 0x38, 0x02, 0x38, 0x00, 0x0F, 0x4C, 0x70, 0x11, 0xC0, 0x00, 0x52, 0x0E, 0x00, 0x8E, 0x00}; + // 2098035E5B5FB000000040A0000000BFFFFE5402540697FFFFCA804A92880100060130008184E08C0010C22000000000000282300E0222AC044102162C58B162C102162C58B162C102162C58B162C102162C58B162C102162C58B162C102162C58B162C102162C58B162C102162C58B162C0A28004307219E8343219E83432089C420E008E001910700470012C8380238001E41C011C0007A0E008E0007931C047000288380238000F4C7011C000520E008E00 + + bit_ref bref(rrc_msg, sizeof(rrc_msg)); + sl_v2x_precfg_r14_s sl_preconf{}; + TESTASSERT(sl_preconf.unpack(bref) == SRSASN_SUCCESS); + + // asn1::json_writer json_writer; + // sl_preconf.to_json(json_writer); + // printf("Content: %s\n", json_writer.to_string().c_str()); + + return SRSASN_SUCCESS; +} + +int test_rrc_conn_reconf_r15_2() +{ + uint8_t rrc_msg[] = {0x20, 0x16, 0x15, 0xC8, 0x40, 0x00, 0x03, 0xC2, 0x84, 0x18, 0x10, 0xA8, 0x04, 0xD7, 0x95, 0x14, + 0xA2, 0x01, 0x02, 0x18, 0x9A, 0x01, 0x80, 0x14, 0x81, 0x0A, 0xCB, 0x84, 0x08, 0x00, 0xAD, 0x6D, + 0xC4, 0x06, 0x08, 0xAF, 0x6D, 0xC7, 0xA0, 0xC0, 0x82, 0x00, 0x00, 0x0C, 0x38, 0x60, 0x20, 0x30, + 0xC3, 0x00, 0x00, 0x10, 0x04, 0x40, 0x10, 0xC2, 0x3C, 0x2A, 0x06, 0x20, 0x30, 0x11, 0x10, 0x28, + 0x13, 0xDA, 0x4E, 0x96, 0xDA, 0x80, 0x83, 0xA1, 0x00, 0xA4, 0x83, 0x00, 0x32, 0x7B, 0x08, 0x95, + 0xAE, 0x00, 0x16, 0xA9, 0x00, 0xE0, 0x80, 0x84, 0x8C, 0x82, 0xBB, 0xB1, 0xB4, 0xBA, 0x18, 0x83, + 0x36, 0xB7, 0x31, 0x98, 0x18, 0x98, 0x83, 0x36, 0xB1, 0xB1, 0x9A, 0x1B, 0x1B, 0x02, 0x33, 0xB8, + 0x39, 0x39, 0x82, 0x80, 0x85, 0x7F, 0x80, 0x80, 0xAF, 0x03, 0x7F, 0x7F, 0x7D, 0x7D, 0x7F, 0x7F, + 0x28, 0x05, 0xFB, 0x32, 0x7B, 0x08, 0xC0, 0x00, 0x01, 0xF8, 0x3E, 0x3C, 0xB1, 0xB2, 0x00, 0xC0, + 0x30, 0x38, 0x1F, 0xFA, 0x9C, 0x08, 0x3E, 0xA2, 0x5F, 0x1C, 0xE1, 0xD0, 0x84}; + // 201615C8400003C2841810A804D79514A20102189A018014810ACB840800AD6DC40608AF6DC7A0C08200000C38602030C3000010044010C23C2A06203011102813DA4E96DA8083A100A48300327B0895AE0016A900E080848C82BBB1B4BA188336B7319818988336B1B19A1B1B0233B839398280857F8080AF037F7F7D7D7F7F2805FB327B08C00001F83E3CB1B200C030381FFA9C083EA25F1CE1D084 + + bit_ref bref(rrc_msg, sizeof(rrc_msg)); + dl_dcch_msg_s recfg_msg; + TESTASSERT(recfg_msg.unpack(bref) == SRSASN_SUCCESS); + + return SRSASN_SUCCESS; +} + int main() { srsasn_log_register_handler(&asn_logger, print_console); @@ -609,6 +657,8 @@ int main() TESTASSERT(ue_rrc_conn_recfg_r15_v10_test() == 0); TESTASSERT(failed_dl_ccch_unpack() == 0); TESTASSERT(unrecognized_ext_group_test() == 0); + TESTASSERT(v2x_test() == 0); + TESTASSERT(test_rrc_conn_reconf_r15_2() == 0); printf("Success\n"); return 0; diff --git a/srsenb/src/enb_cfg_parser.cc b/srsenb/src/enb_cfg_parser.cc index fae67a468..581cca972 100644 --- a/srsenb/src/enb_cfg_parser.cc +++ b/srsenb/src/enb_cfg_parser.cc @@ -322,7 +322,7 @@ int mbsfn_area_info_list_parser::parse(Setting& root) return -1; } - parser::field areaid("mbsfn_area_id", &mbsfn_item->mbsfn_area_id_r9); + parser::field areaid("mbsfn_area_id", &mbsfn_item->mbsfn_area_id_r9); if (areaid.parse(root["mbsfn_area_info_list"])) { fprintf(stderr, "Error parsing mbsfn_area_id\n"); return -1; @@ -1072,8 +1072,8 @@ int parse_sib2(std::string filename, sib_type2_s* data) rr_config.add_subsection(&pucch_cnfg); pucch_cnfg.add_field( make_asn1_enum_number_parser("delta_pucch_shift", &rr_cfg_common->pucch_cfg_common.delta_pucch_shift)); - pucch_cnfg.add_field(new parser::field("n_rb_cqi", &rr_cfg_common->pucch_cfg_common.n_rb_cqi)); - pucch_cnfg.add_field(new parser::field("n_cs_an", &rr_cfg_common->pucch_cfg_common.n_cs_an)); + pucch_cnfg.add_field(new parser::field("n_rb_cqi", &rr_cfg_common->pucch_cfg_common.nrb_cqi)); + pucch_cnfg.add_field(new parser::field("n_cs_an", &rr_cfg_common->pucch_cfg_common.ncs_an)); pucch_cnfg.add_field(new parser::field("n1_pucch_an", &rr_cfg_common->pucch_cfg_common.n1_pucch_an)); // UL PWR Ctrl configuration diff --git a/srsenb/src/phy/phy.cc b/srsenb/src/phy/phy.cc index 17d76c6f3..fb00edacf 100644 --- a/srsenb/src/phy/phy.cc +++ b/srsenb/src/phy/phy.cc @@ -85,8 +85,8 @@ void phy::parse_config(const phy_cfg_t& cfg) // PUCCH workers_common.ul_cfg_com.pucch.delta_pucch_shift = cfg.pucch_cnfg.delta_pucch_shift.to_number(); - workers_common.ul_cfg_com.pucch.N_cs = cfg.pucch_cnfg.n_cs_an; - workers_common.ul_cfg_com.pucch.n_rb_2 = cfg.pucch_cnfg.n_rb_cqi; + workers_common.ul_cfg_com.pucch.N_cs = cfg.pucch_cnfg.ncs_an; + workers_common.ul_cfg_com.pucch.n_rb_2 = cfg.pucch_cnfg.nrb_cqi; workers_common.ul_cfg_com.pucch.N_pucch_1 = cfg.pucch_cnfg.n1_pucch_an; workers_common.ul_cfg_com.pucch.threshold_format1 = 0.8; diff --git a/srsenb/src/stack/rrc/rrc.cc b/srsenb/src/stack/rrc/rrc.cc index fa71806d3..632ef1e20 100644 --- a/srsenb/src/stack/rrc/rrc.cc +++ b/srsenb/src/stack/rrc/rrc.cc @@ -1574,7 +1574,7 @@ void rrc::ue::send_connection_setup(bool is_setup) phy_cfg->ul_pwr_ctrl_ded.p0_ue_pusch = 0; phy_cfg->ul_pwr_ctrl_ded.delta_mcs_enabled = ul_pwr_ctrl_ded_s::delta_mcs_enabled_e_::en0; phy_cfg->ul_pwr_ctrl_ded.accumulation_enabled = true; - phy_cfg->ul_pwr_ctrl_ded.p0_ue_pucch = 0, phy_cfg->ul_pwr_ctrl_ded.p_srs_offset = 3; + phy_cfg->ul_pwr_ctrl_ded.p0_ue_pucch = 0, phy_cfg->ul_pwr_ctrl_ded.psrs_offset = 3; // PDSCH phy_cfg->pdsch_cfg_ded_present = true; @@ -1629,8 +1629,8 @@ void rrc::ue::send_connection_setup(bool is_setup) sched_cfg.pucch_cfg.sr_configured = true; sched_cfg.pucch_cfg.n_pucch = cqi_pucch; sched_cfg.pucch_cfg.delta_pucch_shift = parent->sib2.rr_cfg_common.pucch_cfg_common.delta_pucch_shift.to_number(); - sched_cfg.pucch_cfg.N_cs = parent->sib2.rr_cfg_common.pucch_cfg_common.n_cs_an; - sched_cfg.pucch_cfg.n_rb_2 = parent->sib2.rr_cfg_common.pucch_cfg_common.n_rb_cqi; + sched_cfg.pucch_cfg.N_cs = parent->sib2.rr_cfg_common.pucch_cfg_common.ncs_an; + sched_cfg.pucch_cfg.n_rb_2 = parent->sib2.rr_cfg_common.pucch_cfg_common.nrb_cqi; sched_cfg.pucch_cfg.N_pucch_1 = parent->sib2.rr_cfg_common.pucch_cfg_common.n1_pucch_an; // Configure MAC @@ -2247,8 +2247,8 @@ int rrc::ue::sr_allocate(uint32_t period, uint8_t* I_sr, uint16_t* N_pucch_sr) // Compute N_pucch_sr *N_pucch_sr = i_min * max_users + parent->sr_sched.nof_users[i_min][j_min]; - if (parent->sib2.rr_cfg_common.pucch_cfg_common.n_cs_an) { - *N_pucch_sr += parent->sib2.rr_cfg_common.pucch_cfg_common.n_cs_an; + if (parent->sib2.rr_cfg_common.pucch_cfg_common.ncs_an) { + *N_pucch_sr += parent->sib2.rr_cfg_common.pucch_cfg_common.ncs_an; } // Allocate user @@ -2344,8 +2344,8 @@ int rrc::ue::cqi_allocate(uint32_t period, uint16_t* pmi_idx, uint16_t* n_pucch) // Compute n_pucch_2 *n_pucch = i_min * max_users + parent->cqi_sched.nof_users[i_min][j_min]; - if (parent->sib2.rr_cfg_common.pucch_cfg_common.n_cs_an) { - *n_pucch += parent->sib2.rr_cfg_common.pucch_cfg_common.n_cs_an; + if (parent->sib2.rr_cfg_common.pucch_cfg_common.ncs_an) { + *n_pucch += parent->sib2.rr_cfg_common.pucch_cfg_common.ncs_an; } // Allocate user diff --git a/srsue/src/stack/rrc/rrc.cc b/srsue/src/stack/rrc/rrc.cc index 3c7952a91..4c6ca6016 100644 --- a/srsue/src/stack/rrc/rrc.cc +++ b/srsue/src/stack/rrc/rrc.cc @@ -2366,7 +2366,7 @@ void rrc::apply_phy_scell_config(const asn1::rrc::scell_to_add_mod_r10_s& scell_ srslte::phy_cfg_t scell_phy_cfg = current_phy_cfg; set_phy_cfg_t_scell_config(&scell_phy_cfg, scell_config); - phy->set_config(scell_phy_cfg, scell_config.s_cell_idx_r10, earfcn, &scell); + phy->set_config(scell_phy_cfg, scell_config.scell_idx_r10, earfcn, &scell); } void rrc::log_mac_config_dedicated() @@ -2461,9 +2461,9 @@ void rrc::apply_scell_config(asn1::rrc::rrc_conn_recfg_r8_ies_s* reconfig_r8) rrc_conn_recfg_v1020_ies_s* reconfig_r1020 = &reconfig_r920->non_crit_ext; // Handle Add/Modify SCell list - if (reconfig_r1020->s_cell_to_add_mod_list_r10_present) { - for (uint32_t i = 0; i < reconfig_r1020->s_cell_to_add_mod_list_r10.size(); i++) { - auto scell_config = &reconfig_r1020->s_cell_to_add_mod_list_r10[i]; + if (reconfig_r1020->scell_to_add_mod_list_r10_present) { + for (uint32_t i = 0; i < reconfig_r1020->scell_to_add_mod_list_r10.size(); i++) { + auto scell_config = &reconfig_r1020->scell_to_add_mod_list_r10[i]; // Limit enable64_qam, if the ue does not // since the phy does not have information about the RRC category and release, the RRC shall limit the @@ -2486,7 +2486,7 @@ void rrc::apply_scell_config(asn1::rrc::rrc_conn_recfg_r8_ies_s* reconfig_r8) } // Call mac reconfiguration - mac->reconfiguration(scell_config->s_cell_idx_r10, true); + mac->reconfiguration(scell_config->scell_idx_r10, true); // Call phy reconfiguration apply_phy_scell_config(*scell_config); @@ -2494,10 +2494,10 @@ void rrc::apply_scell_config(asn1::rrc::rrc_conn_recfg_r8_ies_s* reconfig_r8) } // Handle Remove SCell list - if (reconfig_r1020->s_cell_to_release_list_r10_present) { - for (uint32_t i = 0; i < reconfig_r1020->s_cell_to_release_list_r10.size(); i++) { + if (reconfig_r1020->scell_to_release_list_r10_present) { + for (uint32_t i = 0; i < reconfig_r1020->scell_to_release_list_r10.size(); i++) { // Call mac reconfiguration - mac->reconfiguration(reconfig_r1020->s_cell_to_release_list_r10[i], false); + mac->reconfiguration(reconfig_r1020->scell_to_release_list_r10[i], false); // Call phy reconfiguration // TODO: Implement phy layer cell removal