GNSS-SDR  0.0.13
An Open Source GNSS Software Defined Receiver
acq_conf.h
Go to the documentation of this file.
1 /*!
2  * \file acq_conf.h
3  * \brief Class that contains all the configuration parameters for generic
4  * acquisition block based on the PCPS algorithm.
5  * \author Carles Fernandez, 2018. cfernandez(at)cttc.es
6  *
7  * -----------------------------------------------------------------------------
8  *
9  * Copyright (C) 2010-2020 (see AUTHORS file for a list of contributors)
10  *
11  * GNSS-SDR is a software defined Global Navigation
12  * Satellite Systems receiver
13  *
14  * This file is part of GNSS-SDR.
15  *
16  * SPDX-License-Identifier: GPL-3.0-or-later
17  *
18  * -----------------------------------------------------------------------------
19  */
20 
21 #ifndef GNSS_SDR_ACQ_CONF_H
22 #define GNSS_SDR_ACQ_CONF_H
23 
25 #include <cstdint>
26 #include <string>
27 
28 class Acq_Conf
29 {
30 public:
31  Acq_Conf();
32 
33  void SetFromConfiguration(const ConfigurationInterface *configuration, const std::string &role, double chip_rate, double opt_freq);
34 
35  /* PCPS Acquisition configuration */
36  std::string item_type;
37  std::string dump_filename;
38 
39  int64_t fs_in;
40  int64_t resampled_fs;
41 
42  size_t it_size;
43 
44  float doppler_step;
45  float samples_per_ms;
46  float doppler_step2;
47  float pfa;
48  float pfa2;
49  float samples_per_code;
50  float resampler_ratio;
51 
52  uint32_t sampled_ms;
53  uint32_t ms_per_code;
54  uint32_t samples_per_chip;
55  uint32_t chips_per_second;
56  uint32_t max_dwells;
57  uint32_t num_doppler_bins_step2;
58  uint32_t resampler_latency_samples;
59  uint32_t dump_channel;
60  int32_t doppler_max;
61  int32_t doppler_min;
62 
63  bool bit_transition_flag;
64  bool use_CFAR_algorithm_flag;
65  bool dump;
66  bool blocking;
67  bool blocking_on_standby; // enable it only for unit testing to avoid sample consume on idle status
68  bool make_2_steps;
69  bool use_automatic_resampler;
70 
71 private:
72  void SetDerivedParams();
73 
74  void ConfigureAutomaticResampler(double opt_freq);
75 };
76 
77 #endif
This abstract class represents an interface to configuration parameters.
This class represents an interface to configuration parameters.