GNU Radio's HOWTO Package
fcd_control_impl.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2011-2013 Free Software Foundation, Inc.
4 *
5 * GNU Radio is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 3, or (at your option)
8 * any later version.
9 *
10 * GNU Radio is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with GNU Radio; see the file COPYING. If not, write to
17 * the Free Software Foundation, Inc., 51 Franklin Street,
18 * Boston, MA 02110-1301, USA.
19 */
20
21#ifndef INCLUDED_FCD_CONTROL_IMPL_H
22#define INCLUDED_FCD_CONTROL_IMPL_H
23
25
26#ifdef SYSTEM_HIDAPI
27#include <hidapi/hidapi.h>
28#else
29#include "hidapi.h"
30#endif
31
32namespace gr {
33 namespace fcdproplus {
34
36 {
37 public:
40
41 /* Public API functions documented in include/fcdprplus/fcd_control.h */
42 void set_freq(float freq);
43 void set_lna_gain(float gain);
44 void set_mixer_gain(float gain);
45 void set_freq_corr(int ppm);
46 void set_dc_corr(double _dci, double _dcq);
47 void set_iq_corr(double _gain, double _phase);
48 void set_frequency_msg(pmt::pmt_t msg);
49 private:
50 int d_freq_corr; /*!< The frequency correction in ppm */
51 hid_device *d_control_handle; /*!< handle to control the device, set frequency, etc */
52 unsigned char aucBuf[65]; /*!< Buffers to read/write control messages to the dongle */
53
54 };
55
56 } /* namespace fcd */
57} /* namespace gr */
58
59#endif /* INCLUDED_FCD_CONTROL_IMPL_H */
Definition: fcd_control_impl.h:36
void set_freq(float freq)
Return a shared_ptr to a new instance of fcd_source_c.
void set_freq_corr(int ppm)
Set new frequency correction.
void set_dc_corr(double _dci, double _dcq)
Set DC offset correction.
void set_frequency_msg(pmt::pmt_t msg)
void set_iq_corr(double _gain, double _phase)
Set IQ phase and gain balance.
void set_mixer_gain(float gain)
Set mixer gain.
void set_lna_gain(float gain)
Set LNA gain.
Funcube Dongle control block.
Definition: fcd_control.h:45
struct hid_device_ hid_device
Definition: hidapi.h:46
Definition: fcd.h:29