1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-12-15 20:50:33 +00:00

Replace <ctime> library by <chrono>

This commit is contained in:
Carles Fernandez 2018-01-26 14:48:44 +01:00
parent 77ab00698c
commit 3865143909
2 changed files with 25 additions and 28 deletions

View File

@ -31,7 +31,7 @@
*/ */
#include <ctime> #include <chrono>
#include <iostream> #include <iostream>
#include <gnuradio/top_block.h> #include <gnuradio/top_block.h>
#include <gnuradio/blocks/file_source.h> #include <gnuradio/blocks/file_source.h>
@ -149,11 +149,11 @@ void GlonassL1CaDllPllCAidTrackingTest::init()
config->set_property("Tracking_1G.dll_bw_hz", "0.5"); config->set_property("Tracking_1G.dll_bw_hz", "0.5");
} }
TEST_F(GlonassL1CaDllPllCAidTrackingTest, ValidationOfResults) TEST_F(GlonassL1CaDllPllCAidTrackingTest, ValidationOfResults)
{ {
struct timeval tv; std::chrono::time_point<std::chrono::system_clock> start, end;
long long int begin = 0; std::chrono::duration<double> elapsed_seconds(0);
long long int end = 0;
int fs_in = 6625000; int fs_in = 6625000;
int nsamples = fs_in*4e-3*2; int nsamples = fs_in*4e-3*2;
@ -170,15 +170,15 @@ TEST_F(GlonassL1CaDllPllCAidTrackingTest, ValidationOfResults)
ASSERT_NO_THROW( { ASSERT_NO_THROW( {
tracking->set_channel(gnss_synchro.Channel_ID); tracking->set_channel(gnss_synchro.Channel_ID);
}) << "Failure setting channel." << std::endl; }) << "Failure setting channel.";
ASSERT_NO_THROW( { ASSERT_NO_THROW( {
tracking->set_gnss_synchro(&gnss_synchro); tracking->set_gnss_synchro(&gnss_synchro);
}) << "Failure setting gnss_synchro." << std::endl; }) << "Failure setting gnss_synchro.";
ASSERT_NO_THROW( { ASSERT_NO_THROW( {
tracking->connect(top_block); tracking->connect(top_block);
}) << "Failure connecting tracking to the top_block." << std::endl; }) << "Failure connecting tracking to the top_block.";
ASSERT_NO_THROW( { ASSERT_NO_THROW( {
gr::analog::sig_source_c::sptr sin_source = gr::analog::sig_source_c::make(fs_in, gr::analog::GR_SIN_WAVE, 1000, 1, gr_complex(0)); gr::analog::sig_source_c::sptr sin_source = gr::analog::sig_source_c::make(fs_in, gr::analog::GR_SIN_WAVE, 1000, 1, gr_complex(0));
@ -192,18 +192,17 @@ TEST_F(GlonassL1CaDllPllCAidTrackingTest, ValidationOfResults)
top_block->connect(valve, 0, tracking->get_left_block(), 0); top_block->connect(valve, 0, tracking->get_left_block(), 0);
top_block->connect(tracking->get_right_block(), 0, sink, 0); top_block->connect(tracking->get_right_block(), 0, sink, 0);
top_block->msg_connect(tracking->get_right_block(), pmt::mp("events"), msg_rx, pmt::mp("events")); top_block->msg_connect(tracking->get_right_block(), pmt::mp("events"), msg_rx, pmt::mp("events"));
}) << "Failure connecting the blocks of tracking test." << std::endl; }) << "Failure connecting the blocks of tracking test.";
tracking->start_tracking(); tracking->start_tracking();
EXPECT_NO_THROW( { EXPECT_NO_THROW( {
gettimeofday(&tv, NULL); start = std::chrono::system_clock::now();
begin = tv.tv_sec *1000000 + tv.tv_usec;
top_block->run(); // Start threads and wait top_block->run(); // Start threads and wait
gettimeofday(&tv, NULL); end = std::chrono::system_clock::now();
end = tv.tv_sec *1000000 + tv.tv_usec; elapsed_seconds = end - start;
}) << "Failure running the top_block." << std::endl; }) << "Failure running the top_block.";
// TODO: Verify tracking results // TODO: Verify tracking results
std::cout << "Tracked " << nsamples << " samples in " << (end - begin) << " microseconds" << std::endl; std::cout << "Tracked " << nsamples << " samples in " << elapsed_seconds.count() * 1e6 << " microseconds" << std::endl;
} }

View File

@ -31,7 +31,7 @@
*/ */
#include <ctime> #include <chrono>
#include <iostream> #include <iostream>
#include <gnuradio/top_block.h> #include <gnuradio/top_block.h>
#include <gnuradio/blocks/file_source.h> #include <gnuradio/blocks/file_source.h>
@ -151,9 +151,8 @@ void GlonassL1CaDllPllTrackingTest::init()
TEST_F(GlonassL1CaDllPllTrackingTest, ValidationOfResults) TEST_F(GlonassL1CaDllPllTrackingTest, ValidationOfResults)
{ {
struct timeval tv; std::chrono::time_point<std::chrono::system_clock> start, end;
long long int begin = 0; std::chrono::duration<double> elapsed_seconds(0);
long long int end = 0;
int fs_in = 6625000; int fs_in = 6625000;
int nsamples = fs_in*4e-3*2; int nsamples = fs_in*4e-3*2;
@ -170,15 +169,15 @@ TEST_F(GlonassL1CaDllPllTrackingTest, ValidationOfResults)
ASSERT_NO_THROW( { ASSERT_NO_THROW( {
tracking->set_channel(gnss_synchro.Channel_ID); tracking->set_channel(gnss_synchro.Channel_ID);
}) << "Failure setting channel." << std::endl; }) << "Failure setting channel.";
ASSERT_NO_THROW( { ASSERT_NO_THROW( {
tracking->set_gnss_synchro(&gnss_synchro); tracking->set_gnss_synchro(&gnss_synchro);
}) << "Failure setting gnss_synchro." << std::endl; }) << "Failure setting gnss_synchro.";
ASSERT_NO_THROW( { ASSERT_NO_THROW( {
tracking->connect(top_block); tracking->connect(top_block);
}) << "Failure connecting tracking to the top_block." << std::endl; }) << "Failure connecting tracking to the top_block.";
ASSERT_NO_THROW( { ASSERT_NO_THROW( {
gr::analog::sig_source_c::sptr sin_source = gr::analog::sig_source_c::make(fs_in, gr::analog::GR_SIN_WAVE, 1000, 1, gr_complex(0)); gr::analog::sig_source_c::sptr sin_source = gr::analog::sig_source_c::make(fs_in, gr::analog::GR_SIN_WAVE, 1000, 1, gr_complex(0));
@ -192,18 +191,17 @@ TEST_F(GlonassL1CaDllPllTrackingTest, ValidationOfResults)
top_block->connect(valve, 0, tracking->get_left_block(), 0); top_block->connect(valve, 0, tracking->get_left_block(), 0);
top_block->connect(tracking->get_right_block(), 0, sink, 0); top_block->connect(tracking->get_right_block(), 0, sink, 0);
top_block->msg_connect(tracking->get_right_block(), pmt::mp("events"), msg_rx, pmt::mp("events")); top_block->msg_connect(tracking->get_right_block(), pmt::mp("events"), msg_rx, pmt::mp("events"));
}) << "Failure connecting the blocks of tracking test." << std::endl; }) << "Failure connecting the blocks of tracking test.";
tracking->start_tracking(); tracking->start_tracking();
EXPECT_NO_THROW( { EXPECT_NO_THROW( {
gettimeofday(&tv, NULL); start = std::chrono::system_clock::now();
begin = tv.tv_sec *1000000 + tv.tv_usec;
top_block->run(); // Start threads and wait top_block->run(); // Start threads and wait
gettimeofday(&tv, NULL); end = std::chrono::system_clock::now();
end = tv.tv_sec *1000000 + tv.tv_usec; elapsed_seconds = end - start;
}) << "Failure running the top_block." << std::endl; }) << "Failure running the top_block.";
// TODO: Verify tracking results // TODO: Verify tracking results
std::cout << "Tracked " << nsamples << " samples in " << (end - begin) << " microseconds" << std::endl; std::cout << "Tracked " << nsamples << " samples in " << elapsed_seconds.count() * 1e6 << " microseconds" << std::endl;
} }