GNU Radio's HERMESLITE2 Package
hermesNB_impl.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2013-2015 Thomas C. McDermott, N5EG.
4 *
5 * This 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 * This software 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 this software; 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_HERMESLITE2_HERMESNB_IMPL_H
22#define INCLUDED_HERMESLITE2_HERMESNB_IMPL_H
23
25
26namespace gr {
27 namespace hermeslite2 {
28
29 class hermesNB_impl : public hermesNB
30 {
31 private:
32 // Nothing to declare in this block.
33
34 public:
35
36/*! \brief Construct a HermesNB module
37 * \param RxFreq0 Receiver 0 frequency, Hz.
38 * \param RxFreq1 Receiver 1 frequency, Hz.
39 * \param RxFreq2 Receiver 2 frequency, Hz.
40 * \param RxFreq3 Receiver 3 frequency, Hz.
41 * \param RxFreq4 Receiver 4 frequency, Hz.
42 * \param RxFreq5 Receiver 5 frequency, Hz.
43 * \param RxFreq6 Receiver 6 frequency, Hz.
44 * \param RxFreq7 Receiver 7 frequency, Hz.
45 * \param TxFreq Transmitter frequency, Hz.
46 * \param PTTModeSel PTT mode selector off (0), VOX (1), on (2)
47 * \param PTTTxMute Mute Tx on PTT
48 * \param PTTRxMute Mute Rx on PTT
49 * \param TxDr Transmit Drive Level (0..255)
50 * \param RxSmp Receive Sample Rate, 192000, 96000, or 48000
51 * \param Intfc Ethernet interface to use
52 * \param Verbose Turns Verbose mode on (=1) or off (=0)
53 * \param NumRx Number of Receivers (1 or 2)
54 * \param MACAddr MAC Address of target or * for first detected
55 * \param AGC HL2 Hardware AGC
56 * \param LNAG HL2 LNA gain
57 * \param PA HL2 onboard PA enable
58 * \param Q5 HL2 enable Q5 switch external PTT in low power mode
59 *
60 */
61 hermesNB_impl(int RxFreq0, int RxFreq1, int RxFreq2, int RxFreq3,
62 int RxFreq4, int RxFreq5, int RxFreq6, int RxFreq7,
63 int TxFreq,
64 int PTTModeSel, bool PTTTxMute, bool PTTRxMute,
65 unsigned char TxDr, int RxSmp, const char* Intfc,
66 int Verbose, int NumRx,
67 const char* MACAddr, bool AGC, int LNAG, bool PA, bool Q5);
69
70 // Where all the action really happens
71 void forecast (int noutput_items, gr_vector_int &ninput_items_required);
72
73 int general_work(int noutput_items,
74 gr_vector_int &ninput_items,
75 gr_vector_const_void_star &input_items,
76 gr_vector_void_star &output_items);
77 };
78
79 } // namespace hermeslite2
80} // namespace gr
81
82#endif /* INCLUDED_HERMESLITE2_HERMESNB_IMPL_H */
83
Definition: hermesNB_impl.h:30
int general_work(int noutput_items, gr_vector_int &ninput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
void forecast(int noutput_items, gr_vector_int &ninput_items_required)
hermesNB_impl(int RxFreq0, int RxFreq1, int RxFreq2, int RxFreq3, int RxFreq4, int RxFreq5, int RxFreq6, int RxFreq7, int TxFreq, int PTTModeSel, bool PTTTxMute, bool PTTRxMute, unsigned char TxDr, int RxSmp, const char *Intfc, int Verbose, int NumRx, const char *MACAddr, bool AGC, int LNAG, bool PA, bool Q5)
Construct a HermesNB module.
<+description of block+>
Definition: hermesNB.h:37
Definition: hermesNB.h:28