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
22namespace 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,
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
virtual int debug(const char *format,...)
Outputs debug information.
bool executeFreqCommand(int index, double &freq) override
Executes the NBDDC frequency set command.
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.
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.
void queryConfiguration() override
Tells the component to query its hardware configuration in order to create its configuration dictiona...
void initConfigurationDict() override
Setup Config Dict.
bool executeSourceCommand(int index, int &source) override
Executes the NBDDC source set command.
virtual ~NbddcComponent()
Destroys a NbddcComponent object.
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 & operator=(const NbddcComponent &other)
Assignment operator for NbddcComponent objects.
void updateConfigurationDict() override
Updates the configuration dictionary from component settings.
Base NBDDC component class.
Generic radio handler class.
Provides programming elements for driving NDR551 radios.
Definition DataPort.h:36
Provides programming elements for driving CRS NDR-class radios.
Defines functionality for LibCyberRadio applications.
Definition App.h:24