[hamradio-commits] [gnss-sdr] 47/149: Added missing includes (to be removed in future versions). Steps towards the integration of new standalone kernels into volk_gnsssdr library.
Carles Fernandez
carles_fernandez-guest at moszumanska.debian.org
Sat Feb 6 19:43:01 UTC 2016
This is an automated email from the git hooks/post-receive script.
carles_fernandez-guest pushed a commit to branch next
in repository gnss-sdr.
commit c2676ec49192e02d9009dded343d55719b666b57
Author: Javier Arribas <javiarribas at gmail.com>
Date: Tue Jan 12 18:58:00 2016 +0100
Added missing includes (to be removed in future versions). Steps towards
the integration of new standalone kernels into volk_gnsssdr library.
---
conf/gnss-sdr_Hybrid_byte_sim.conf | 4 ++--
src/algorithms/tracking/adapters/CMakeLists.txt | 1 +
src/algorithms/tracking/libs/CMakeLists.txt | 3 ++-
.../tracking/libs/cpu_multicorrelator_16sc.h | 2 +-
.../libs/volk_gnsssdr_16ic_xn_dot_prod_16ic_xn.h | 28 ++++++++++------------
src/core/receiver/CMakeLists.txt | 1 +
6 files changed, 19 insertions(+), 20 deletions(-)
diff --git a/conf/gnss-sdr_Hybrid_byte_sim.conf b/conf/gnss-sdr_Hybrid_byte_sim.conf
index 9855dca..4e4d558 100644
--- a/conf/gnss-sdr_Hybrid_byte_sim.conf
+++ b/conf/gnss-sdr_Hybrid_byte_sim.conf
@@ -158,7 +158,7 @@ Resampler.sample_freq_out=4000000
;######### CHANNELS GLOBAL CONFIG ############
;#count: Number of available GPS satellite channels.
-Channels_1C.count=1
+Channels_1C.count=12
;#count: Number of available Galileo satellite channels.
Channels_1B.count=0
;#in_acquisition: Number of channels simultaneously acquiring for the whole receiver
@@ -233,7 +233,7 @@ Acquisition_1B.doppler_step=125
;######### TRACKING GPS CONFIG ############
;#implementation: Selected tracking algorithm: [GPS_L1_CA_DLL_PLL_Tracking] or [GPS_L1_CA_DLL_FLL_PLL_Tracking] or [GPS_L1_CA_TCP_CONNECTOR_Tracking] or [Galileo_E1_DLL_PLL_VEML_Tracking]
-Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_C_Aid_Tracking
+Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_C_Aid_Tracking_16sc
;#item_type: Type and resolution for each of the signal samples. Use only [gr_complex] in this version.
Tracking_1C.item_type=gr_complex
diff --git a/src/algorithms/tracking/adapters/CMakeLists.txt b/src/algorithms/tracking/adapters/CMakeLists.txt
index 8b35e50..2d4855c 100644
--- a/src/algorithms/tracking/adapters/CMakeLists.txt
+++ b/src/algorithms/tracking/adapters/CMakeLists.txt
@@ -47,6 +47,7 @@ include_directories(
${GLOG_INCLUDE_DIRS}
${GFlags_INCLUDE_DIRS}
${GNURADIO_RUNTIME_INCLUDE_DIRS}
+ ${VOLK_GNSSSDR_INCLUDE_DIRS}
${OPT_TRACKING_INCLUDE_DIRS}
)
diff --git a/src/algorithms/tracking/libs/CMakeLists.txt b/src/algorithms/tracking/libs/CMakeLists.txt
index f15b9b9..e0c7d4d 100644
--- a/src/algorithms/tracking/libs/CMakeLists.txt
+++ b/src/algorithms/tracking/libs/CMakeLists.txt
@@ -53,6 +53,7 @@ include_directories(
${GLOG_INCLUDE_DIRS}
${GFlags_INCLUDE_DIRS}
${OPT_TRACKING_INCLUDES}
+ ${VOLK_GNSSSDR_INCLUDE_DIRS}
)
if(ENABLE_GENERIC_ARCH)
@@ -67,5 +68,5 @@ endif(SSE3_AVAILABLE)
file(GLOB TRACKING_LIB_HEADERS "*.h")
add_library(tracking_lib ${TRACKING_LIB_SOURCES} ${TRACKING_LIB_HEADERS})
source_group(Headers FILES ${TRACKING_LIB_HEADERS})
-target_link_libraries(tracking_lib ${OPT_TRACKING_LIBRARIES} ${VOLK_LIBRARIES} ${GNURADIO_RUNTIME_LIBRARIES})
+target_link_libraries(tracking_lib ${OPT_TRACKING_LIBRARIES} ${VOLK_LIBRARIES} ${VOLK_GNSSSDR_LIBRARIES} ${GNURADIO_RUNTIME_LIBRARIES})
add_dependencies(tracking_lib glog-${glog_RELEASE})
diff --git a/src/algorithms/tracking/libs/cpu_multicorrelator_16sc.h b/src/algorithms/tracking/libs/cpu_multicorrelator_16sc.h
index 2863d1f..d3fa690 100644
--- a/src/algorithms/tracking/libs/cpu_multicorrelator_16sc.h
+++ b/src/algorithms/tracking/libs/cpu_multicorrelator_16sc.h
@@ -36,7 +36,7 @@
#define GNSS_SDR_CPU_MULTICORRELATOR_16SC_H_
#include <volk/volk.h> //include original volk first!
-#include "volk_gnsssdr/volk_gnsssdr.h"
+#include <volk_gnsssdr/volk_gnsssdr.h>
/*!
diff --git a/src/algorithms/tracking/libs/volk_gnsssdr_16ic_xn_dot_prod_16ic_xn.h b/src/algorithms/tracking/libs/volk_gnsssdr_16ic_xn_dot_prod_16ic_xn.h
index 99c4566..f55a1b0 100644
--- a/src/algorithms/tracking/libs/volk_gnsssdr_16ic_xn_dot_prod_16ic_xn.h
+++ b/src/algorithms/tracking/libs/volk_gnsssdr_16ic_xn_dot_prod_16ic_xn.h
@@ -36,10 +36,8 @@
#ifndef INCLUDED_volk_gnsssdr_16ic_xn_dot_prod_16ic_xn_u_H
#define INCLUDED_volk_gnsssdr_16ic_xn_dot_prod_16ic_xn_u_H
-#include <volk_gnsssdr/volk_gnsssdr_common.h>
+
#include <volk_gnsssdr/volk_gnsssdr_complex.h>
-#include <stdio.h>
-#include <string.h>
#include "saturated_arithmetic.h"
#ifdef LV_HAVE_GENERIC
@@ -52,21 +50,16 @@
*/
static inline void volk_gnsssdr_16ic_xn_dot_prod_16ic_xn_generic(lv_16sc_t* result, const lv_16sc_t* in_common, const lv_16sc_t** in_a, unsigned int num_points, int num_a_vectors)
{
-
-
for (int n_vec=0;n_vec<num_a_vectors;n_vec++)
{
- result[n_vec]=lv_16sc_t(0,0);
+ result[n_vec]=lv_cmake(0,0);
for (unsigned int n=0;n<num_points;n++)
{
//r*a.r - i*a.i, i*a.r + r*a.i
//result[n_vec]+=in_common[n]*in_a[n_vec][n];
lv_16sc_t tmp=in_common[n]*in_a[n_vec][n];
- result[n_vec].real(sat_adds16b(result[n_vec].real(),tmp.real()));
- result[n_vec].imag(sat_adds16b(result[n_vec].imag(),tmp.imag()));
+ result[n_vec]=lv_cmake(sat_adds16b(lv_creal(result[n_vec]),lv_creal(tmp)),sat_adds16b(lv_cimag(result[n_vec]),lv_cimag(tmp)));
}
- //std::cout<<"in_common[0]="<<in_common[0]<<"in_a[n_vec][0]="<<in_a[n_vec][0]<<std::endl;
- //std::cout<<"in_common[0]*in_a[n_vec][0]="<<in_common[0]*in_a[n_vec][0]<<std::endl;
}
}
@@ -79,7 +72,7 @@ static inline void volk_gnsssdr_16ic_xn_dot_prod_16ic_xn_generic(lv_16sc_t* resu
static inline void volk_gnsssdr_16ic_xn_dot_prod_16ic_xn_a_sse2(lv_16sc_t* out, const lv_16sc_t* in_common, const lv_16sc_t** in_a, unsigned int num_points, int num_a_vectors)
{
- lv_16sc_t dotProduct=lv_16sc_t(0,0);
+ lv_16sc_t dotProduct=lv_cmake(0,0);
const unsigned int sse_iters = num_points / 4;
@@ -147,11 +140,12 @@ static inline void volk_gnsssdr_16ic_xn_dot_prod_16ic_xn_a_sse2(lv_16sc_t* out,
result = _mm_or_si128 (realcacc[n_vec], imagcacc[n_vec]);
_mm_storeu_si128((__m128i*)dotProductVector,result); // Store the results back into the dot product vector
- dotProduct=lv_16sc_t(0,0);
+ dotProduct=lv_cmake(0,0);
for (int i = 0; i<4; ++i)
{
- dotProduct.real(sat_adds16b(dotProduct.real(),dotProductVector[i].real()));
- dotProduct.imag(sat_adds16b(dotProduct.imag(),dotProductVector[i].imag()));
+
+ dotProduct=lv_cmake(sat_adds16b(lv_creal(dotProduct),lv_creal(dotProductVector[i])),
+ sat_adds16b(lv_cimag(dotProduct),lv_cimag(dotProductVector[i])));
}
_out[n_vec]=dotProduct;
}
@@ -164,8 +158,10 @@ static inline void volk_gnsssdr_16ic_xn_dot_prod_16ic_xn_a_sse2(lv_16sc_t* out,
for(unsigned int n = sse_iters * 4;n < num_points; n++){
lv_16sc_t tmp=in_common[n]*in_a[n_vec][n];
- _out[n_vec].real(sat_adds16b(_out[n_vec].real(),tmp.real()));
- _out[n_vec].imag(sat_adds16b(_out[n_vec].imag(),tmp.imag()));
+
+ _out[n_vec]=lv_cmake(sat_adds16b(lv_creal(_out[n_vec]),lv_creal(tmp)),
+ sat_adds16b(lv_cimag(_out[n_vec]),lv_cimag(tmp)));
+
}
}
diff --git a/src/core/receiver/CMakeLists.txt b/src/core/receiver/CMakeLists.txt
index b168074..5e75ae2 100644
--- a/src/core/receiver/CMakeLists.txt
+++ b/src/core/receiver/CMakeLists.txt
@@ -77,6 +77,7 @@ include_directories(
${Boost_INCLUDE_DIRS}
${GNURADIO_RUNTIME_INCLUDE_DIRS}
${OPT_RECEIVER_INCLUDE_DIRS}
+ ${VOLK_GNSSSDR_INCLUDE_DIRS}
)
if(Boost_VERSION LESS 105000)
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-hamradio/gnss-sdr.git
More information about the pkg-hamradio-commits
mailing list