[hamradio-commits] [gnss-sdr] 29/44: Moving blocks to libs. GpsL1CaPcpsAcquisition now accepts cshorts and cbytes

Carles Fernandez carles_fernandez-guest at moszumanska.debian.org
Sun Feb 15 15:32:22 UTC 2015


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 7a7eeb5a5cdc7e27a88056f3e2eded75b4012329
Author: Carles Fernandez <carles.fernandez at gmail.com>
Date:   Fri Feb 13 02:17:00 2015 +0100

    Moving blocks to libs. GpsL1CaPcpsAcquisition now accepts cshorts and
    cbytes
---
 src/algorithms/acquisition/adapters/CMakeLists.txt |  50 +++---
 .../adapters/gps_l1_ca_pcps_acquisition.cc         | 169 ++++++++++++++-------
 .../adapters/gps_l1_ca_pcps_acquisition.h          |   6 +
 .../acquisition/gnuradio_blocks/CMakeLists.txt     |  38 ++---
 .../input_filter/adapters/CMakeLists.txt           |   5 +-
 .../input_filter/gnuradio_blocks/CMakeLists.txt    |  12 +-
 src/algorithms/libs/CMakeLists.txt                 |  48 +++---
 .../byte_x2_to_complex_byte.cc                     |   0
 .../byte_x2_to_complex_byte.h                      |   0
 .../complex_byte_to_float_x2.cc                    |   0
 .../complex_byte_to_float_x2.h                     |   0
 .../complex_float_to_complex_byte.cc               |   0
 .../complex_float_to_complex_byte.h                |   0
 .../gnuradio_blocks => libs}/cshort_to_float_x2.cc |   0
 .../gnuradio_blocks => libs}/cshort_to_float_x2.h  |   0
 .../gnuradio_blocks => libs}/short_x2_to_cshort.cc |   0
 .../gnuradio_blocks => libs}/short_x2_to_cshort.h  |   0
 17 files changed, 187 insertions(+), 141 deletions(-)

diff --git a/src/algorithms/acquisition/adapters/CMakeLists.txt b/src/algorithms/acquisition/adapters/CMakeLists.txt
index edbac5b..781ecd1 100644
--- a/src/algorithms/acquisition/adapters/CMakeLists.txt
+++ b/src/algorithms/acquisition/adapters/CMakeLists.txt
@@ -16,37 +16,25 @@
 # along with GNSS-SDR. If not, see <http://www.gnu.org/licenses/>.
 #
 
+
+set(ACQ_ADAPTER_SOURCES
+    gps_l1_ca_pcps_acquisition.cc
+    gps_l1_ca_pcps_multithread_acquisition.cc
+    gps_l1_ca_pcps_assisted_acquisition.cc
+    gps_l1_ca_pcps_acquisition_fine_doppler.cc
+    gps_l1_ca_pcps_tong_acquisition.cc
+    gps_l1_ca_pcps_quicksync_acquisition.cc
+    galileo_e1_pcps_ambiguous_acquisition.cc
+    galileo_e1_pcps_cccwsr_ambiguous_acquisition.cc
+    galileo_e1_pcps_quicksync_ambiguous_acquisition.cc
+    galileo_e1_pcps_tong_ambiguous_acquisition.cc
+    galileo_e1_pcps_8ms_ambiguous_acquisition.cc
+    galileo_e5a_noncoherent_iq_acquisition_caf.cc
+)
+
+
 if(OPENCL_FOUND)
-    set(ACQ_ADAPTER_SOURCES
-         gps_l1_ca_pcps_acquisition.cc
-         gps_l1_ca_pcps_multithread_acquisition.cc
-         gps_l1_ca_pcps_assisted_acquisition.cc
-         gps_l1_ca_pcps_acquisition_fine_doppler.cc
-         gps_l1_ca_pcps_tong_acquisition.cc
-         gps_l1_ca_pcps_quicksync_acquisition.cc
-         gps_l1_ca_pcps_opencl_acquisition.cc
-         galileo_e1_pcps_ambiguous_acquisition.cc
-         galileo_e1_pcps_cccwsr_ambiguous_acquisition.cc
-         galileo_e1_pcps_quicksync_ambiguous_acquisition.cc
-         galileo_e1_pcps_tong_ambiguous_acquisition.cc
-         galileo_e1_pcps_8ms_ambiguous_acquisition.cc
-         galileo_e5a_noncoherent_iq_acquisition_caf.cc
-    )
-else(OPENCL_FOUND)
-    set(ACQ_ADAPTER_SOURCES
-         gps_l1_ca_pcps_acquisition.cc
-         gps_l1_ca_pcps_multithread_acquisition.cc
-         gps_l1_ca_pcps_assisted_acquisition.cc
-         gps_l1_ca_pcps_acquisition_fine_doppler.cc
-         gps_l1_ca_pcps_tong_acquisition.cc
-         gps_l1_ca_pcps_quicksync_acquisition.cc
-         galileo_e1_pcps_ambiguous_acquisition.cc
-         galileo_e1_pcps_cccwsr_ambiguous_acquisition.cc
-         galileo_e1_pcps_quicksync_ambiguous_acquisition.cc
-         galileo_e1_pcps_tong_ambiguous_acquisition.cc
-         galileo_e1_pcps_8ms_ambiguous_acquisition.cc
-         galileo_e5a_noncoherent_iq_acquisition_caf.cc
-    )
+    set(ACQ_ADAPTER_SOURCES ${ACQ_ADAPTER_SOURCES} gps_l1_ca_pcps_opencl_acquisition.cc)
 endif(OPENCL_FOUND)
 
 include_directories(
@@ -60,9 +48,11 @@ include_directories(
      ${GLOG_INCLUDE_DIRS}
      ${GFlags_INCLUDE_DIRS}
      ${GNURADIO_RUNTIME_INCLUDE_DIRS}
+     ${GNURADIO_BLOCKS_INCLUDE_DIRS}
 )
 
 file(GLOB ACQ_ADAPTER_HEADERS "*.h")
 add_library(acq_adapters ${ACQ_ADAPTER_SOURCES} ${ACQ_ADAPTER_HEADERS})
 source_group(Headers FILES ${ACQ_ADAPTER_HEADERS}) 
 target_link_libraries(acq_adapters gnss_sp_libs acq_gr_blocks ${Boost_LIBRARIES} ${GNURADIO_RUNTIME_LIBRARIES} ${GNURADIO_BLOCKS_LIBRARIES})
+
diff --git a/src/algorithms/acquisition/adapters/gps_l1_ca_pcps_acquisition.cc b/src/algorithms/acquisition/adapters/gps_l1_ca_pcps_acquisition.cc
index 21eda07..dcb216c 100644
--- a/src/algorithms/acquisition/adapters/gps_l1_ca_pcps_acquisition.cc
+++ b/src/algorithms/acquisition/adapters/gps_l1_ca_pcps_acquisition.cc
@@ -90,25 +90,36 @@ GpsL1CaPcpsAcquisition::GpsL1CaPcpsAcquisition(
 
     code_= new gr_complex[vector_length_];
 
-    if (item_type_.compare("gr_complex") == 0)
-    {
-        item_size_ = sizeof(gr_complex);
-        acquisition_cc_ = pcps_make_acquisition_cc(sampled_ms_, max_dwells_,
-                shift_resolution_, if_, fs_in_, code_length_, code_length_,
-                bit_transition_flag_, queue_, dump_, dump_filename_);
+   // if (item_type_.compare("gr_complex") == 0 || (item_type_.compare("cshort") == 0))
+   //         {
+            item_size_ = sizeof(gr_complex);
+            acquisition_cc_ = pcps_make_acquisition_cc(sampled_ms_, max_dwells_,
+                    shift_resolution_, if_, fs_in_, code_length_, code_length_,
+                    bit_transition_flag_, queue_, dump_, dump_filename_);
 
-        stream_to_vector_ = gr::blocks::stream_to_vector::make(item_size_, vector_length_);
+            stream_to_vector_ = gr::blocks::stream_to_vector::make(item_size_, vector_length_);
 
-        DLOG(INFO) << "stream_to_vector(" << stream_to_vector_->unique_id()
-                << ")";
-        DLOG(INFO) << "acquisition(" << acquisition_cc_->unique_id()
-                << ")";
-    }
-    else
-    {
-        LOG(WARNING) << item_type_
-                << " unknown acquisition item type";
-    }
+            DLOG(INFO) << "stream_to_vector(" << stream_to_vector_->unique_id() << ")";
+            DLOG(INFO) << "acquisition(" << acquisition_cc_->unique_id() << ")";
+    //        }
+
+    if (item_type_.compare("cshort") == 0)
+        {
+            cshort_to_float_x2_ = make_cshort_to_float_x2();
+            float_to_complex_ = gr::blocks::float_to_complex::make();
+        }
+
+    if (item_type_.compare("cbyte") == 0)
+        {
+            cbyte_to_float_x2_ = make_complex_byte_to_float_x2();
+            float_to_complex_ = gr::blocks::float_to_complex::make();
+        }
+    //}
+    //else
+    // {
+    //     LOG(WARNING) << item_type_
+    //             << " unknown acquisition item type";
+    // }
 }
 
 
@@ -147,30 +158,30 @@ void GpsL1CaPcpsAcquisition::set_threshold(float threshold)
 
     DLOG(INFO) <<"Channel "<<channel_<<" Threshold = " << threshold_;
 
-    if (item_type_.compare("gr_complex") == 0)
-        {
+   // if (item_type_.compare("gr_complex") == 0)
+    //    {
             acquisition_cc_->set_threshold(threshold_);
-        }
+    //    }
 }
 
 
 void GpsL1CaPcpsAcquisition::set_doppler_max(unsigned int doppler_max)
 {
     doppler_max_ = doppler_max;
-    if (item_type_.compare("gr_complex") == 0)
-    {
+    //   if (item_type_.compare("gr_complex") == 0)
+    //  {
         acquisition_cc_->set_doppler_max(doppler_max_);
-    }
+        // }
 }
 
 
 void GpsL1CaPcpsAcquisition::set_doppler_step(unsigned int doppler_step)
 {
     doppler_step_ = doppler_step;
-    if (item_type_.compare("gr_complex") == 0)
-        {
+    //   if (item_type_.compare("gr_complex") == 0)
+    //      {
             acquisition_cc_->set_doppler_step(doppler_step_);
-        }
+            //     }
 
 }
 
@@ -179,33 +190,33 @@ void GpsL1CaPcpsAcquisition::set_channel_queue(
         concurrent_queue<int> *channel_internal_queue)
 {
     channel_internal_queue_ = channel_internal_queue;
-    if (item_type_.compare("gr_complex") == 0)
-        {
+    //  if (item_type_.compare("gr_complex") == 0)
+    //      {
             acquisition_cc_->set_channel_queue(channel_internal_queue_);
-        }
+            //     }
 }
 
 
 void GpsL1CaPcpsAcquisition::set_gnss_synchro(Gnss_Synchro* gnss_synchro)
 {
     gnss_synchro_ = gnss_synchro;
-    if (item_type_.compare("gr_complex") == 0)
-        {
+    //   if (item_type_.compare("gr_complex") == 0)
+    //     {
             acquisition_cc_->set_gnss_synchro(gnss_synchro_);
-        }
+            //     }
 }
 
 
 signed int GpsL1CaPcpsAcquisition::mag()
 {
-    if (item_type_.compare("gr_complex") == 0)
-        {
-            return acquisition_cc_->mag();
-        }
-    else
-        {
-            return 0;
-        }
+    // //    if (item_type_.compare("gr_complex") == 0)
+    //        {
+    return acquisition_cc_->mag();
+    //       }
+    //   else
+    //       {
+    //           return 0;
+    //      }
 }
 
 
@@ -218,8 +229,8 @@ void GpsL1CaPcpsAcquisition::init()
 
 void GpsL1CaPcpsAcquisition::set_local_code()
 {
-    if (item_type_.compare("gr_complex") == 0)
-    {
+   // if (item_type_.compare("gr_complex") == 0)
+ //   {
         std::complex<float>* code = new std::complex<float>[code_length_];
 
         gps_l1_ca_code_gen_complex_sampled(code, gnss_synchro_->PRN, fs_in_, 0);
@@ -233,24 +244,24 @@ void GpsL1CaPcpsAcquisition::set_local_code()
         acquisition_cc_->set_local_code(code_);
 
         delete[] code;
-    }
+  //  }
 }
 
 
 void GpsL1CaPcpsAcquisition::reset()
 {
-    if (item_type_.compare("gr_complex") == 0)
-    {
+    //  if (item_type_.compare("gr_complex") == 0)
+    //  {
         acquisition_cc_->set_active(true);
-    }
+        //  }
 }
 
 void GpsL1CaPcpsAcquisition::set_state(int state)
 {
-    if (item_type_.compare("gr_complex") == 0)
-    {
+    //  if (item_type_.compare("gr_complex") == 0)
+    //  {
         acquisition_cc_->set_state(state);
-    }
+        //  }
 }
 
 
@@ -281,6 +292,24 @@ void GpsL1CaPcpsAcquisition::connect(gr::top_block_sptr top_block)
         {
             top_block->connect(stream_to_vector_, 0, acquisition_cc_, 0);
         }
+    else if (item_type_.compare("cshort") == 0)
+        {
+            top_block->connect(cshort_to_float_x2_, 0, float_to_complex_, 0);
+            top_block->connect(cshort_to_float_x2_, 1, float_to_complex_, 1);
+            top_block->connect(float_to_complex_, 0, stream_to_vector_, 0);
+            top_block->connect(stream_to_vector_, 0, acquisition_cc_, 0);
+        }
+    else if (item_type_.compare("cbyte") == 0)
+        {
+            top_block->connect(cbyte_to_float_x2_, 0, float_to_complex_, 0);
+            top_block->connect(cbyte_to_float_x2_, 1, float_to_complex_, 1);
+            top_block->connect(float_to_complex_, 0, stream_to_vector_, 0);
+            top_block->connect(stream_to_vector_, 0, acquisition_cc_, 0);
+        }
+    else
+        {
+            LOG(WARNING) << item_type_ << " unknown acquisition item type";
+        }
 
 }
 
@@ -288,15 +317,49 @@ void GpsL1CaPcpsAcquisition::connect(gr::top_block_sptr top_block)
 void GpsL1CaPcpsAcquisition::disconnect(gr::top_block_sptr top_block)
 {
     if (item_type_.compare("gr_complex") == 0)
-    {
-        top_block->disconnect(stream_to_vector_, 0, acquisition_cc_, 0);
-    }
+        {
+            top_block->disconnect(stream_to_vector_, 0, acquisition_cc_, 0);
+        }
+    else if (item_type_.compare("cshort") == 0)
+        {
+            top_block->disconnect(cshort_to_float_x2_, 0, float_to_complex_, 0);
+            top_block->disconnect(cshort_to_float_x2_, 1, float_to_complex_, 1);
+            top_block->disconnect(float_to_complex_, 0, stream_to_vector_, 0);
+            top_block->disconnect(stream_to_vector_, 0, acquisition_cc_, 0);
+        }
+    else if (item_type_.compare("cbyte") == 0)
+        {
+            top_block->disconnect(cbyte_to_float_x2_, 0, float_to_complex_, 0);
+            top_block->disconnect(cbyte_to_float_x2_, 1, float_to_complex_, 1);
+            top_block->disconnect(float_to_complex_, 0, stream_to_vector_, 0);
+            top_block->disconnect(stream_to_vector_, 0, acquisition_cc_, 0);
+        }
+    else
+        {
+            LOG(WARNING) << item_type_ << " unknown acquisition item type";
+        }
 }
 
 
 gr::basic_block_sptr GpsL1CaPcpsAcquisition::get_left_block()
 {
-    return stream_to_vector_;
+    if (item_type_.compare("gr_complex") == 0)
+        {
+            return stream_to_vector_;
+        }
+    else if (item_type_.compare("cshort") == 0)
+        {
+            return cshort_to_float_x2_;
+        }
+    else if (item_type_.compare("cbyte") == 0)
+        {
+            return cbyte_to_float_x2_;
+        }
+    else
+        {
+            LOG(WARNING) << item_type_ << " unknown acquisition item type";
+            return nullptr;
+        }
 }
 
 
diff --git a/src/algorithms/acquisition/adapters/gps_l1_ca_pcps_acquisition.h b/src/algorithms/acquisition/adapters/gps_l1_ca_pcps_acquisition.h
index b421a81..077a937 100644
--- a/src/algorithms/acquisition/adapters/gps_l1_ca_pcps_acquisition.h
+++ b/src/algorithms/acquisition/adapters/gps_l1_ca_pcps_acquisition.h
@@ -39,9 +39,12 @@
 #include <string>
 #include <gnuradio/msg_queue.h>
 #include <gnuradio/blocks/stream_to_vector.h>
+#include <gnuradio/blocks/float_to_complex.h>
 #include "gnss_synchro.h"
 #include "acquisition_interface.h"
 #include "pcps_acquisition_cc.h"
+#include "cshort_to_float_x2.h"
+#include "complex_byte_to_float_x2.h"
 
 
 
@@ -140,6 +143,9 @@ private:
     ConfigurationInterface* configuration_;
     pcps_acquisition_cc_sptr acquisition_cc_;
     gr::blocks::stream_to_vector::sptr stream_to_vector_;
+    gr::blocks::float_to_complex::sptr float_to_complex_;
+    cshort_to_float_x2_sptr cshort_to_float_x2_;
+    complex_byte_to_float_x2_sptr cbyte_to_float_x2_;
     size_t item_size_;
     std::string item_type_;
     unsigned int vector_length_;
diff --git a/src/algorithms/acquisition/gnuradio_blocks/CMakeLists.txt b/src/algorithms/acquisition/gnuradio_blocks/CMakeLists.txt
index 31f0b26..5a1d0d5 100644
--- a/src/algorithms/acquisition/gnuradio_blocks/CMakeLists.txt
+++ b/src/algorithms/acquisition/gnuradio_blocks/CMakeLists.txt
@@ -16,31 +16,21 @@
 # along with GNSS-SDR. If not, see <http://www.gnu.org/licenses/>.
 #
 
+
+set(ACQ_GR_BLOCKS_SOURCES
+    pcps_acquisition_cc.cc
+    pcps_multithread_acquisition_cc.cc
+    pcps_assisted_acquisition_cc.cc
+    pcps_acquisition_fine_doppler_cc.cc
+    pcps_tong_acquisition_cc.cc
+    pcps_cccwsr_acquisition_cc.cc
+    pcps_quicksync_acquisition_cc.cc
+    galileo_pcps_8ms_acquisition_cc.cc
+    galileo_e5a_noncoherent_iq_acquisition_caf_cc.cc
+) 
+    
 if(OPENCL_FOUND)
-    set(ACQ_GR_BLOCKS_SOURCES
-            pcps_acquisition_cc.cc
-            pcps_multithread_acquisition_cc.cc
-            pcps_assisted_acquisition_cc.cc
-            pcps_acquisition_fine_doppler_cc.cc
-            pcps_tong_acquisition_cc.cc
-            pcps_cccwsr_acquisition_cc.cc
-            pcps_quicksync_acquisition_cc.cc
-            galileo_pcps_8ms_acquisition_cc.cc
-            galileo_e5a_noncoherent_iq_acquisition_caf_cc.cc
-            pcps_opencl_acquisition_cc.cc # Needs OpenCL
-    )
-else(OPENCL_FOUND)
-    set(ACQ_GR_BLOCKS_SOURCES
-            pcps_acquisition_cc.cc
-            pcps_multithread_acquisition_cc.cc
-            pcps_assisted_acquisition_cc.cc
-            pcps_acquisition_fine_doppler_cc.cc
-            pcps_tong_acquisition_cc.cc
-            pcps_cccwsr_acquisition_cc.cc
-            pcps_quicksync_acquisition_cc.cc
-            galileo_pcps_8ms_acquisition_cc.cc
-            galileo_e5a_noncoherent_iq_acquisition_caf_cc.cc
-    )
+    set(ACQ_GR_BLOCKS_SOURCES ${ACQ_GR_BLOCKS_SOURCES} pcps_opencl_acquisition_cc.cc)
 endif(OPENCL_FOUND)
 
 include_directories(
diff --git a/src/algorithms/input_filter/adapters/CMakeLists.txt b/src/algorithms/input_filter/adapters/CMakeLists.txt
index 23c59e4..019415c 100644
--- a/src/algorithms/input_filter/adapters/CMakeLists.txt
+++ b/src/algorithms/input_filter/adapters/CMakeLists.txt
@@ -27,6 +27,7 @@ include_directories(
      ${CMAKE_SOURCE_DIR}/src/core/system_parameters
      ${CMAKE_SOURCE_DIR}/src/core/interfaces
      ${CMAKE_SOURCE_DIR}/src/algorithms/input_filter/gnuradio_blocks
+     ${CMAKE_SOURCE_DIR}/src/algorithms/libs
      ${GLOG_INCLUDE_DIRS}
      ${GFlags_INCLUDE_DIRS}
      ${GNURADIO_RUNTIME_INCLUDE_DIRS}
@@ -36,5 +37,5 @@ include_directories(
 file(GLOB INPUT_FILTER_ADAPTER_HEADERS "*.h")
 add_library(input_filter_adapters ${INPUT_FILTER_ADAPTER_SOURCES} ${INPUT_FILTER_ADAPTER_HEADERS})
 source_group(Headers FILES ${INPUT_FILTER_ADAPTER_HEADERS})
-add_dependencies(input_filter_adapters glog-${glog_RELEASE})
-target_link_libraries(input_filter_adapters input_filter_gr_blocks ${GNURADIO_RUNTIME_LIBRARIES} ${GNURADIO_BLOCKS_LIBRARIES} ${GNURADIO_FILTER_LIBRARIES})
+add_dependencies(input_filter_adapters glog-${glog_RELEASE} gnss_sp_libs)
+target_link_libraries(input_filter_adapters input_filter_gr_blocks ${GNURADIO_RUNTIME_LIBRARIES} ${GNURADIO_BLOCKS_LIBRARIES} ${GNURADIO_FILTER_LIBRARIES} gnss_sp_libs)
diff --git a/src/algorithms/input_filter/gnuradio_blocks/CMakeLists.txt b/src/algorithms/input_filter/gnuradio_blocks/CMakeLists.txt
index 68d32cb..050425b 100644
--- a/src/algorithms/input_filter/gnuradio_blocks/CMakeLists.txt
+++ b/src/algorithms/input_filter/gnuradio_blocks/CMakeLists.txt
@@ -19,11 +19,6 @@
 
 set(INPUT_FILTER_GR_BLOCKS_SOURCES 
      beamformer.cc
-     complex_byte_to_float_x2.cc
-     byte_x2_to_complex_byte.cc
-     cshort_to_float_x2.cc
-     short_x2_to_cshort.cc
-     complex_float_to_complex_byte.cc
 )
 
 include_directories(
@@ -32,14 +27,9 @@ include_directories(
      ${GFlags_INCLUDE_DIRS}
      ${GNURADIO_RUNTIME_INCLUDE_DIRS}
      ${GNURADIO_BLOCKS_INCLUDE_DIRS}
-     ${VOLK_INCLUDE_DIRS}
-     ${VOLK_GNSSSDR_INCLUDE_DIRS}
 )
 
 file(GLOB INPUT_FILTER_GR_BLOCKS_HEADERS "*.h")
 add_library(input_filter_gr_blocks ${INPUT_FILTER_GR_BLOCKS_SOURCES} ${INPUT_FILTER_GR_BLOCKS_HEADERS})
 source_group(Headers FILES ${INPUT_FILTER_GR_BLOCKS_HEADERS})
-target_link_libraries(input_filter_gr_blocks ${GNURADIO_RUNTIME_LIBRARIES} ${VOLK_LIBRARIES} ${VOLK_GNSSSDR_LIBRARIES} ${GNURADIO_BLOCKS_LIBRARIES})
-if(NOT VOLK_GNSSSDR_FOUND)
-    add_dependencies(input_filter_gr_blocks volk_gnsssdr_module)
-endif(NOT VOLK_GNSSSDR_FOUND)
\ No newline at end of file
+target_link_libraries(input_filter_gr_blocks ${GNURADIO_RUNTIME_LIBRARIES})
diff --git a/src/algorithms/libs/CMakeLists.txt b/src/algorithms/libs/CMakeLists.txt
index a25cc87..90ce61d 100644
--- a/src/algorithms/libs/CMakeLists.txt
+++ b/src/algorithms/libs/CMakeLists.txt
@@ -16,30 +16,28 @@
 # along with GNSS-SDR. If not, see <http://www.gnu.org/licenses/>.
 #
 
+
+set(GNSS_SPLIBS_SOURCES
+    galileo_e1_signal_processing.cc
+    gnss_sdr_valve.cc
+    gnss_signal_processing.cc
+    gps_sdr_signal_processing.cc
+    nco_lib.cc
+    pass_through.cc
+    galileo_e5_signal_processing.cc
+    complex_byte_to_float_x2.cc
+    byte_x2_to_complex_byte.cc
+    cshort_to_float_x2.cc
+    short_x2_to_cshort.cc
+    complex_float_to_complex_byte.cc
+)
+    
+    
 if(OPENCL_FOUND)
-    set(GNSS_SPLIBS_SOURCES
-         galileo_e1_signal_processing.cc
-         gnss_sdr_valve.cc
-         gnss_signal_processing.cc
-         gps_sdr_signal_processing.cc
-         nco_lib.cc
-         fix_fft.cc
-         pass_through.cc
+    set(GNSS_SPLIBS_SOURCES ${GNSS_SPLIBS_SOURCES}
          fft_execute.cc # Needs OpenCL
          fft_setup.cc # Needs OpenCL
          fft_kernelstring.cc # Needs OpenCL
-         galileo_e5_signal_processing.cc
-    )
-else(OPENCL_FOUND)
-    set(GNSS_SPLIBS_SOURCES
-         galileo_e1_signal_processing.cc
-         gnss_sdr_valve.cc
-         gnss_signal_processing.cc
-         gps_sdr_signal_processing.cc
-         nco_lib.cc
-         fix_fft.cc
-         pass_through.cc
-         galileo_e5_signal_processing.cc
     )
 endif(OPENCL_FOUND)
 
@@ -52,7 +50,9 @@ include_directories(
      ${GLOG_INCLUDE_DIRS}
      ${GFlags_INCLUDE_DIRS}
      ${GNURADIO_RUNTIME_INCLUDE_DIRS}
+     ${GNURADIO_BLOCKS_INCLUDE_DIRS}
      ${VOLK_INCLUDE_DIRS}
+     ${VOLK_GNSSSDR_INCLUDE_DIRS}
 )
 
 if(OPENCL_FOUND)
@@ -68,10 +68,16 @@ file(GLOB GNSS_SPLIBS_HEADERS "*.h")
 add_library(gnss_sp_libs ${GNSS_SPLIBS_SOURCES} ${GNSS_SPLIBS_HEADERS})
 source_group(Headers FILES ${GNSS_SPLIBS_HEADERS})
 
-target_link_libraries(gnss_sp_libs ${GNURADIO_RUNTIME_LIBRARIES} 
+target_link_libraries(gnss_sp_libs ${GNURADIO_RUNTIME_LIBRARIES}
+                                   ${VOLK_LIBRARIES} 
+                                   ${VOLK_GNSSSDR_LIBRARIES} 
                                    ${GNURADIO_BLOCKS_LIBRARIES} 
                                    ${GNURADIO_FFT_LIBRARIES} 
                                    ${GNURADIO_FILTER_LIBRARIES} 
                                    ${OPT_LIBRARIES} 
                                    gnss_rx
 )
+
+if(NOT VOLK_GNSSSDR_FOUND)
+    add_dependencies(gnss_sp_libs volk_gnsssdr_module)
+endif(NOT VOLK_GNSSSDR_FOUND)
diff --git a/src/algorithms/input_filter/gnuradio_blocks/byte_x2_to_complex_byte.cc b/src/algorithms/libs/byte_x2_to_complex_byte.cc
similarity index 100%
rename from src/algorithms/input_filter/gnuradio_blocks/byte_x2_to_complex_byte.cc
rename to src/algorithms/libs/byte_x2_to_complex_byte.cc
diff --git a/src/algorithms/input_filter/gnuradio_blocks/byte_x2_to_complex_byte.h b/src/algorithms/libs/byte_x2_to_complex_byte.h
similarity index 100%
rename from src/algorithms/input_filter/gnuradio_blocks/byte_x2_to_complex_byte.h
rename to src/algorithms/libs/byte_x2_to_complex_byte.h
diff --git a/src/algorithms/input_filter/gnuradio_blocks/complex_byte_to_float_x2.cc b/src/algorithms/libs/complex_byte_to_float_x2.cc
similarity index 100%
rename from src/algorithms/input_filter/gnuradio_blocks/complex_byte_to_float_x2.cc
rename to src/algorithms/libs/complex_byte_to_float_x2.cc
diff --git a/src/algorithms/input_filter/gnuradio_blocks/complex_byte_to_float_x2.h b/src/algorithms/libs/complex_byte_to_float_x2.h
similarity index 100%
rename from src/algorithms/input_filter/gnuradio_blocks/complex_byte_to_float_x2.h
rename to src/algorithms/libs/complex_byte_to_float_x2.h
diff --git a/src/algorithms/input_filter/gnuradio_blocks/complex_float_to_complex_byte.cc b/src/algorithms/libs/complex_float_to_complex_byte.cc
similarity index 100%
rename from src/algorithms/input_filter/gnuradio_blocks/complex_float_to_complex_byte.cc
rename to src/algorithms/libs/complex_float_to_complex_byte.cc
diff --git a/src/algorithms/input_filter/gnuradio_blocks/complex_float_to_complex_byte.h b/src/algorithms/libs/complex_float_to_complex_byte.h
similarity index 100%
rename from src/algorithms/input_filter/gnuradio_blocks/complex_float_to_complex_byte.h
rename to src/algorithms/libs/complex_float_to_complex_byte.h
diff --git a/src/algorithms/input_filter/gnuradio_blocks/cshort_to_float_x2.cc b/src/algorithms/libs/cshort_to_float_x2.cc
similarity index 100%
rename from src/algorithms/input_filter/gnuradio_blocks/cshort_to_float_x2.cc
rename to src/algorithms/libs/cshort_to_float_x2.cc
diff --git a/src/algorithms/input_filter/gnuradio_blocks/cshort_to_float_x2.h b/src/algorithms/libs/cshort_to_float_x2.h
similarity index 100%
rename from src/algorithms/input_filter/gnuradio_blocks/cshort_to_float_x2.h
rename to src/algorithms/libs/cshort_to_float_x2.h
diff --git a/src/algorithms/input_filter/gnuradio_blocks/short_x2_to_cshort.cc b/src/algorithms/libs/short_x2_to_cshort.cc
similarity index 100%
rename from src/algorithms/input_filter/gnuradio_blocks/short_x2_to_cshort.cc
rename to src/algorithms/libs/short_x2_to_cshort.cc
diff --git a/src/algorithms/input_filter/gnuradio_blocks/short_x2_to_cshort.h b/src/algorithms/libs/short_x2_to_cshort.h
similarity index 100%
rename from src/algorithms/input_filter/gnuradio_blocks/short_x2_to_cshort.h
rename to src/algorithms/libs/short_x2_to_cshort.h

-- 
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