Get rid of class GprsCodingScheme
We have same kind of object splitted into two layers, in coding_scheme
and gprs_coding_scheme. Let's merge them together and get rid of the
class, which is not really useful because it's only a set of functions
operating on one enum value.
This change also fixes gcc 10.1.0 error about memseting a complex type
in rlc.h init().
Change-Id: Ie9ce2144ba9e8dbba9704d4e0000a2929e3e41df
diff --git a/src/decoding.cpp b/src/decoding.cpp
index 99a17dc..064c974 100644
--- a/src/decoding.cpp
+++ b/src/decoding.cpp
@@ -189,7 +189,7 @@
}
int Decoding::rlc_data_from_ul_data(
- const struct gprs_rlc_data_block_info *rdbi, GprsCodingScheme cs,
+ const struct gprs_rlc_data_block_info *rdbi, enum CodingScheme cs,
const uint8_t *data, RlcData *chunks, unsigned int chunks_size,
uint32_t *tlli)
{
@@ -351,10 +351,10 @@
}
int Decoding::rlc_parse_ul_data_header(struct gprs_rlc_data_info *rlc,
- const uint8_t *data, GprsCodingScheme cs)
+ const uint8_t *data, enum CodingScheme cs)
{
unsigned int cur_bit = 0;
- switch(cs.headerTypeData()) {
+ switch(mcs_header_type(cs)) {
case HEADER_GPRS_DATA :
cur_bit = rlc_parse_ul_data_header_gprs(rlc, data, cs);
break;
@@ -380,7 +380,7 @@
int Decoding::rlc_parse_ul_data_header_egprs_type_3(
struct gprs_rlc_data_info *rlc,
const uint8_t *data,
- const GprsCodingScheme &cs)
+ const enum CodingScheme &cs)
{
int punct, punct2, with_padding, cps;
unsigned int e_ti_header, offs, cur_bit = 0;
@@ -414,7 +414,7 @@
rlc->block_info[0].ti = !!(e_ti_header & 0x02);
cur_bit += 2;
/* skip data area */
- cur_bit += cs.maxDataBlockBytes() * 8;
+ cur_bit += mcs_max_data_block_bytes(cs) * 8;
return cur_bit;
}
@@ -422,7 +422,7 @@
int Decoding::rlc_parse_ul_data_header_egprs_type_2(
struct gprs_rlc_data_info *rlc,
const uint8_t *data,
- const GprsCodingScheme &cs)
+ const enum CodingScheme &cs)
{
const struct gprs_rlc_ul_header_egprs_2 *egprs2;
unsigned int e_ti_header, offs, cur_bit = 0;
@@ -458,14 +458,14 @@
cur_bit += 2;
/* skip data area */
- cur_bit += cs.maxDataBlockBytes() * 8;
+ cur_bit += mcs_max_data_block_bytes(cs) * 8;
return cur_bit;
}
int Decoding::rlc_parse_ul_data_header_egprs_type_1(
struct gprs_rlc_data_info *rlc,
- const uint8_t *data, const GprsCodingScheme &cs)
+ const uint8_t *data, const enum CodingScheme &cs)
{
struct gprs_rlc_ul_header_egprs_1 *egprs1;
unsigned int e_ti_header, cur_bit = 0, offs;
@@ -517,13 +517,13 @@
rlc->block_info[1].ti = !!(e_ti_header & 0x02);
cur_bit += 2;
/* skip data area */
- cur_bit += cs.maxDataBlockBytes() * 8;
+ cur_bit += mcs_max_data_block_bytes(cs) * 8;
return cur_bit;
}
int Decoding::rlc_parse_ul_data_header_gprs(struct gprs_rlc_data_info *rlc,
- const uint8_t *data, const GprsCodingScheme &cs)
+ const uint8_t *data, const enum CodingScheme &cs)
{
const struct rlc_ul_header *gprs;
unsigned int cur_bit = 0;
@@ -547,7 +547,7 @@
rlc->block_info[0].spb = 0;
cur_bit += rlc->data_offs_bits[0];
/* skip data area */
- cur_bit += cs.maxDataBlockBytes() * 8;
+ cur_bit += mcs_max_data_block_bytes(cs) * 8;
return cur_bit;
}