libcyberradio  22.01.24
DucComponent.cpp
1 /***************************************************************************
2  * \file DucComponent.cpp
3  * \brief Defines the DUC interface for the NDR651.
4  * \author DA
5  * \author NH
6  * \author MN
7  * \copyright (c) 2017 CyberRadio Solutions, Inc. All rights reserved.
8  *
9  ***************************************************************************/
10 
11 #include "LibCyberRadio/Driver/NDR651/DucComponent.h"
12 #include "LibCyberRadio/Driver/RadioHandler.h"
13 #include <boost/format.hpp>
14 
15 
16 namespace LibCyberRadio
17 {
18  namespace Driver
19  {
20 
21  namespace NDR651
22  {
23 
26  bool debug,
27  int dataPort,
28  double frequency,
29  double attenuation,
30  int rateIndex,
31  int txChannels,
32  int mode,
33  int streamId) :
34  ::LibCyberRadio::Driver::DucComponent(
35  /* const std::string& name */ (boost::format("NDR651-DUC%02d") % \
36  index).str(),
37  /* int index */ index,
38  /* ::LibCyberRadio::Driver::RadioHandler* parent */ parent,
39  /* bool debug */ debug,
40  /* double freqRangeMin */ -25.6e6,
41  /* double freqRangeMax */ 25.6e6,
42  /* double freqRes */ 1.0,
43  /* double freqUnits */ 1.0,
44  /* double attRangeMin */ -6.0,
45  /* double attRangeMax */ 60.0,
46  /* double attRes */ 0.1,
47  /* int dataPort */ dataPort,
48  /* double frequency */ frequency,
49  /* double attenuation */ attenuation,
50  /* int rateIndex */ rateIndex,
51  /* int txChannels */ txChannels,
52  /* int mode */ mode,
53  /* unsigned int streamId */ streamId)
54  {
56  // Set rate set
57  _rateSet[0] = 102.4e6;
58  _rateSet[1] = 51.2e6;
59  _rateSet[2] = 25.6e6;
60  _rateSet[3] = 12.8e6;
61  _rateSet[4] = 6.4e6;
62  _rateSet[5] = 3.2e6;
63  _rateSet[6] = 1.6e6;
64  _rateSet[7] = 800e3;
65  _rateSet[8] = 400e3;
66  _rateSet[9] = 200e3;
67  _rateSet[10] = 100e3;
68  _rateSet[11] = 50e3;
69  _rateSet[12] = 25e3;
70  _rateSet[13] = 12.5e3;
71  _rateSet[16] = 13e6 / 48;
72  _rateSet[20] = 5.6e6;
73  }
74 
76  {
77  }
78 
80  ::LibCyberRadio::Driver::DucComponent(other)
81  {
82  }
83 
85  {
86  ::LibCyberRadio::Driver::DucComponent::operator=(other);
87  if ( this != &other )
88  {
89  }
90  return *this;
91  }
92 
93  } /* namespace NDR651 */
94 
95  } // namespace Driver
96 
97 } // namespace LibCyberRadio
98 
virtual void initConfigurationDict()
Initializes the configuration dictionary, defining the allowed keys.
virtual DucComponent & operator=(const DucComponent &other)
Assignment operator for DucComponent objects.
DUC component class for the NDR651.
Definition: DucComponent.h:59
Generic radio handler class.
Definition: RadioHandler.h:54
DucComponent(int index=1, ::LibCyberRadio::Driver::RadioHandler *parent=NULL, bool debug=false, int dataPort=0, double frequency=0.0, double attenuation=0.0, int rateIndex=0, int txChannels=0, int mode=0, int streamId=0)
Constructs a DucComponent object.
Defines functionality for LibCyberRadio applications.
Definition: App.h:23
virtual ~DucComponent()
Destroys a DucComponent object.