libcyberradio  22.01.24
NbddcComponent.h
1 /***************************************************************************
2  * \file NbddcComponent.h
3  * \brief Defines the NBDDC interface for the NDR551.
4  * \author DA
5  * \author NH
6  * \author MN
7  * \copyright (c) 2017 CyberRadio Solutions, Inc. All rights reserved.
8  *
9  ***************************************************************************/
10 
11 #ifndef INCLUDED_LIBCYBERRADIO_DRIVER_NDR551_NBDDCCOMPONENT_H
12 #define INCLUDED_LIBCYBERRADIO_DRIVER_NDR551_NBDDCCOMPONENT_H
13 
14 #include "LibCyberRadio/Driver/NbddcComponent.h"
15 #include "LibCyberRadio/Common/BasicDict.h"
16 #include <string>
17 
18 
22 namespace LibCyberRadio
23 {
27  namespace Driver
28  {
29  // Forward declaration for RadioHandler
30  class RadioHandler;
31 
35  namespace NDR551
36  {
37 
53  {
54  public:
70  NbddcComponent(int index = 1,
71  ::LibCyberRadio::Driver::RadioHandler* parent = NULL,
72  bool debug = false,
73  int dataPort = 1,
74  int rateIndex = 0,
75  int udpDestination = 0,
76  int vitaEnable = 0,
77  int streamId = 0,
78  double frequency = 0.0,
79  int source = 1);
83  virtual ~NbddcComponent();
88  NbddcComponent(const NbddcComponent& other);
94  virtual NbddcComponent& operator=(const NbddcComponent& other);
98  void initConfigurationDict() override;
99  // NbddcComponent extensions
117  bool executeNbddcQuery(int index,
118  int& rateIndex,
119  int& udpDestination,
120  bool& enabled,
121  int& vitaEnable,
122  unsigned int& streamId,
123  double& frequency,
124  int& source) override;
125  void queryConfiguration() override;
126  bool executeSourceCommand(int index, int& source) override;
127  bool executeFreqCommand(int index, double& freq) override;
128  bool executeNbddcCommand(int index,
129  int& rateIndex,
130  int& udpDestination,
131  bool& enabled,
132  int& vitaEnable,
133  unsigned int& streamId,
134  double& frequency,
135  int& source) override;
136  void updateConfigurationDict() override;
137  protected:
138  std::string _mode;
139 
140  private:
142 
143  }; /* class NbddcComponent */
144 
145  } /* namespace NDR551 */
146 
147  } // namespace Driver
148 
149 } // namespace LibCyberRadio
150 
151 
152 #endif // INCLUDED_LIBCYBERRADIO_DRIVER_NDR551_NBDDCCOMPONENT_H
void updateConfigurationDict() override
Updates the configuration dictionary from component settings.
bool executeFreqCommand(int index, double &freq) override
Executes the NBDDC frequency set command.
bool executeSourceCommand(int index, int &source) override
Executes the NBDDC source set command.
void initConfigurationDict() override
Setup Config Dict.
NBDDC component class for the NDR551.
Generic radio handler class.
Definition: RadioHandler.h:54
virtual int debug(const char *format,...)
Outputs debug information.
Definition: Debuggable.cpp:95
Defines functionality for LibCyberRadio applications.
Definition: App.h:23
Base NBDDC component class.
bool executeNbddcCommand(int index, int &rateIndex, int &udpDestination, bool &enabled, int &vitaEnable, unsigned int &streamId, double &frequency, int &source) override
Executes the NBDDC configuration set command.
void queryConfiguration() override
Tells the component to query its hardware configuration in order to create its configuration dictiona...
bool executeNbddcQuery(int index, int &rateIndex, int &udpDestination, bool &enabled, int &vitaEnable, unsigned int &streamId, double &frequency, int &source) override
Executes the NBDDC configuration query command.
virtual ~NbddcComponent()
Destroys a NbddcComponent object.
virtual NbddcComponent & operator=(const NbddcComponent &other)
Assignment operator for NbddcComponent objects.
NbddcComponent(int index=1, ::LibCyberRadio::Driver::RadioHandler *parent=NULL, bool debug=false, int dataPort=1, int rateIndex=0, int udpDestination=0, int vitaEnable=0, int streamId=0, double frequency=0.0, int source=1)
Constructs a NbddcComponent object.