GNSS-SDR  0.0.13
An Open Source GNSS Software Defined Receiver
conjugate_ic.h
Go to the documentation of this file.
1 /*!
2  * \file conjugate_ic.h
3  * \brief Conjugate a stream of lv_8sc_t ( std::complex<char> )
4  * \author Carles Fernandez Prades, cfernandez(at)cttc.es
5  *
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_CONJUGATE_IC_H
22 #define GNSS_SDR_CONJUGATE_IC_H
23 
24 #include <gnuradio/sync_block.h>
25 #include <gnuradio/types.h> // for gr_vector_const_void_star
26 #if GNURADIO_USES_STD_POINTERS
27 #include <memory>
28 #else
29 #include <boost/shared_ptr.hpp>
30 #endif
31 
32 class conjugate_ic;
33 
34 #if GNURADIO_USES_STD_POINTERS
35 using conjugate_ic_sptr = std::shared_ptr<conjugate_ic>;
36 #else
37 using conjugate_ic_sptr = boost::shared_ptr<conjugate_ic>;
38 #endif
39 
40 conjugate_ic_sptr make_conjugate_ic();
41 
42 /*!
43  * \brief This class adapts a std::complex<short> stream
44  * into two 32-bits (float) streams
45  */
46 class conjugate_ic : public gr::sync_block
47 {
48 public:
49  int work(int noutput_items,
50  gr_vector_const_void_star &input_items,
51  gr_vector_void_star &output_items);
52 
53 private:
54  friend conjugate_ic_sptr make_conjugate_ic();
55  conjugate_ic();
56 };
57 
58 #endif
This class adapts a std::complex<short> stream into two 32-bits (float) streams.
Definition: conjugate_ic.h:46