diff --git a/lib/include/srslte/phy/utils/vector.h b/lib/include/srslte/phy/utils/vector.h index c055b0d79..a89aa1049 100644 --- a/lib/include/srslte/phy/utils/vector.h +++ b/lib/include/srslte/phy/utils/vector.h @@ -107,6 +107,9 @@ SRSLTE_API void srslte_vec_u32_zero(uint32_t* ptr, uint32_t nsamples); SRSLTE_API void srslte_vec_cf_copy(cf_t* dst, const cf_t* src, uint32_t len); SRSLTE_API void srslte_vec_f_copy(float* dst, const float* src, uint32_t len); SRSLTE_API void srslte_vec_u8_copy(uint8_t* dst, const uint8_t* src, uint32_t len); +SRSLTE_API void srslte_vec_i8_copy(int8_t* dst, const int8_t* src, uint32_t len); +SRSLTE_API void srslte_vec_u16_copy(uint16_t* dst, const uint16_t* src, uint32_t len); +SRSLTE_API void srslte_vec_i16_copy(int16_t* dst, const int16_t* src, uint32_t len); /* print vectors */ SRSLTE_API void srslte_vec_fprint_c(FILE* stream, const cf_t* x, const uint32_t len); diff --git a/lib/src/phy/utils/vector.c b/lib/src/phy/utils/vector.c index ef3495701..2064ce65c 100644 --- a/lib/src/phy/utils/vector.c +++ b/lib/src/phy/utils/vector.c @@ -226,6 +226,21 @@ void srslte_vec_u8_copy(uint8_t* dst, const uint8_t* src, uint32_t len) memcpy(dst, src, sizeof(uint8_t) * len); } +void srslte_vec_i8_copy(int8_t* dst, const int8_t* src, uint32_t len) +{ + memcpy(dst, src, sizeof(int8_t) * len); +} + +void srslte_vec_i16_copy(int16_t* dst, const int16_t* src, uint32_t len) +{ + memcpy(dst, src, sizeof(int16_t) * len); +} + +void srslte_vec_u16_copy(uint16_t* dst, const uint16_t* src, uint32_t len) +{ + memcpy(dst, src, sizeof(uint16_t) * len); +} + void* srslte_vec_realloc(void* ptr, uint32_t old_size, uint32_t new_size) { #ifndef LV_HAVE_SSE