GNU Radio's HPSDR Package
hermesNB.h
Go to the documentation of this file.
1
/* -*- c++ -*- */
2
/*
3
* Copyright 2013-2017 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_HPSDR_HERMESNB_H
22
#define INCLUDED_HPSDR_HERMESNB_H
23
24
#include <
hpsdr/api.h
>
25
#include <gnuradio/block.h>
26
27
namespace
gr
{
28
namespace
hpsdr {
29
30
/*!
31
* \brief <+description of block+>
32
* \ingroup hpsdr
33
*
34
*/
35
class
HPSDR_API
hermesNB
:
virtual
public
gr::block
36
{
37
public
:
38
typedef
boost::shared_ptr<hermesNB>
sptr
;
39
40
/*!
41
* \brief Return a shared_ptr to a new instance of hpsdr::hermesNB.
42
*
43
* To avoid accidental use of raw pointers, hpsdr::hermesNB's
44
* constructor is in a private implementation
45
* class. hpsdr::hermesNB::make is the public interface for
46
* creating new instances.
47
*/
48
static
sptr
make(
int
RxFreq0=7200000,
int
RxFreq1=7200000,
int
RxFreq2=7200000,
int
RxFreq3=7200000,
49
int
RxFreq4=7200000,
int
RxFreq5=7200000,
int
RxFreq6=7200000,
int
RxFreq7=7200000,
50
int
TxFreq=7200000,
int
RxPre=0,
51
int
PTTModeSel=0,
int
PTTTxMute=1,
int
PTTRxMute=1,
52
unsigned
char
TxDr=0,
int
RxSmp=192000,
const
char
* Intfc=
"eth0"
,
53
const
char
* ClkS=
"0xF8"
,
int
AlexRA=0,
int
AlexTA=0,
54
int
AlexHPF=0x00,
int
AlexLPF=0x00,
int
Verbose=0,
int
NumRx=1,
55
const
char
* MACAddr=
"*"
);
56
57
void
set_Receive0Frequency(
float
);
// callback
58
void
set_Receive1Frequency(
float
);
// callback
59
void
set_Receive2Frequency(
float
);
// callback
60
void
set_Receive3Frequency(
float
);
// callback
61
void
set_Receive4Frequency(
float
);
// callback
62
void
set_Receive5Frequency(
float
);
// callback
63
void
set_Receive6Frequency(
float
);
// callback
64
void
set_Receive7Frequency(
float
);
// callback
65
66
void
set_TransmitFrequency(
float
);
// callback
67
void
set_RxSampRate(
int
);
// callback
68
void
set_RxPreamp(
int
);
// callback
69
void
set_PTTMode(
int
);
// callback
70
void
set_PTTOffMutesTx(
int
);
// callback
71
void
set_PTTOnMutesRx(
int
);
// callback
72
void
set_TxDrive(
int
);
// callback
73
void
set_ClockSource(
const
char
*);
// callback
74
//
75
// Break up Alex Control into individual registers
76
//
77
void
set_AlexRxAntenna(
int
);
// callback
78
void
set_AlexTxAntenna(
int
);
// callback
79
void
set_AlexRxHPF(
int
);
// callback
80
void
set_AlexTxLPF(
int
);
// callback
81
//
82
// Turn Verbose mode on / off
83
//
84
void
set_Verbose(
int
);
// callback
85
86
bool
stop();
// override
87
bool
start();
// override
88
89
};
90
91
}
// namespace hpsdr
92
}
// namespace gr
93
94
#endif
/* INCLUDED_HPSDR_HERMESNB_H */
gr::hpsdr::hermesNB::sptr
boost::shared_ptr< hermesNB > sptr
Definition:
hermesNB.h:38
gr::hpsdr::hermesNB
<+description of block+>
Definition:
hermesNB.h:35
HPSDR_API
#define HPSDR_API
Definition:
api.h:31
gr
Definition:
hermesNB.h:27
api.h
include
hpsdr
hermesNB.h
Generated by
1.8.17