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