11 #include "LibCyberRadio/Driver/Driver.h" 12 #include "LibCyberRadio/Driver/NDR308/RadioHandler.h" 13 #include "LibCyberRadio/Driver/NDR308TS/RadioHandler.h" 14 #include "LibCyberRadio/Driver/NDR472/RadioHandler.h" 15 #include "LibCyberRadio/Driver/NDR651/RadioHandler.h" 16 #include "LibCyberRadio/Driver/NDR810/RadioHandler.h" 17 #include "LibCyberRadio/Driver/NDR551/RadioHandler.h" 18 #include "LibCyberRadio/Driver/NDR358/RadioHandler.h" 19 #include "LibCyberRadio/Driver/NDR324/RadioHandler.h" 20 #include "LibCyberRadio/Common/Pythonesque.h" 21 #include "LibCyberRadio/Common/BasicList.h" 22 #include "LibCyberRadio/Common/Debuggable.h" 35 const std::string& nameString,
36 const std::string& device,
41 dbg.
debug(
"Called\n");
42 dbg.
debug(
"-- Name string = \"%s\"\n", nameString.c_str());
48 std::string adjNameString = nameString;
51 std::string::iterator its = std::copy_if(nameString.begin(),
53 adjNameString.begin(),
55 adjNameString.erase(its, adjNameString.end());
57 std::transform(adjNameString.begin(), adjNameString.end(),
58 adjNameString.begin(), tolower);
61 dbg.
debug(
"Getting handler for \"%s\"...\n", adjNameString.c_str());
62 if ( adjNameString ==
"ndr308" )
64 dbg.
debug(
"-- FOUND ndr308\n");
65 sptr = std::shared_ptr<RadioHandler>(
69 else if ( adjNameString ==
"ndr308ts" )
71 dbg.
debug(
"-- FOUND ndr308ts\n");
72 sptr = std::shared_ptr<RadioHandler>(
76 else if ( adjNameString ==
"ndr308a" )
78 dbg.
debug(
"-- FOUND ndr308\n");
79 sptr = std::shared_ptr<RadioHandler>(
83 else if ( adjNameString ==
"ndr651" )
85 dbg.
debug(
"-- FOUND ndr651\n");
86 sptr = std::shared_ptr<RadioHandler>(
90 else if ( adjNameString ==
"ndr810" )
92 dbg.
debug(
"-- FOUND ndr810\n");
93 sptr = std::shared_ptr<RadioHandler>(
97 else if ( adjNameString ==
"ndr472" )
99 dbg.
debug(
"-- FOUND ndr472\n");
100 sptr = std::shared_ptr<RadioHandler>(
104 else if ( adjNameString ==
"ndr551" )
106 dbg.
debug(
"-- FOUND ndr551\n");
107 sptr = std::shared_ptr<RadioHandler>(
111 else if ( adjNameString ==
"ndr358" )
113 dbg.
debug(
"-- FOUND ndr358\n");
114 sptr = std::shared_ptr<RadioHandler>(
118 else if ( adjNameString ==
"ndr324" )
120 dbg.
debug(
"-- FOUND ndr324\n");
121 sptr = std::shared_ptr<RadioHandler>(
127 dbg.
debug(
"-- CANNOT FIND %s\n", adjNameString.c_str());
130 if ( (sptr != NULL) && (device !=
"") )
132 dbg.
debug(
"Auto-connection started...\n");
133 dbg.
debug(
"-- Device = %s\n", device.c_str());
135 for (BasicStringList::const_iterator it = connModes.begin();
136 it != connModes.end(); it++)
138 dbg.
debug(
"-- Attempting connection mode: %s\n", it->c_str());
139 sptr->connect(*it, device, sptr->getDefaultDeviceInfo());
140 if ( sptr->isConnected() )
149 std::vector<std::string> getSupportedDevices(
void )
151 std::vector<std::string> suppDevs = {
Radio handler class for the NDR810.
Radio handler class for the NDR551.
Radio handler class for the NDR472.
std::shared_ptr< RadioHandler > RadioHandlerPtr
A pointer to a radio handler object.
Class that supports debug output.
RadioHandlerPtr getRadioObject(const std::string &nameString, const std::string &device="", int devicePort=-1, bool debug=false)
Factory method for returning a radio handler object for a given radio.
Radio handler class for the NDR308.
Generic radio handler class.
virtual int debug(const char *format,...)
Outputs debug information.
BASIC_LIST_CONTAINER< std::string > BasicStringList
Type representing a list of strings.
Radio handler class for the NDR551.
Defines functionality for LibCyberRadio applications.
Radio handler class for the NDR651.
Radio handler class for the NDR308-TS.
Radio handler class for the NDR551.