mirror of
https://github.com/cjcliffe/CubicSDR.git
synced 2026-06-01 21:54:39 -04:00
Persist modem settings on new instances
This commit is contained in:
@@ -28,6 +28,14 @@ ModemArgInfo::ModemArgInfo(void) {
|
||||
|
||||
}
|
||||
|
||||
Modem::Modem() {
|
||||
|
||||
}
|
||||
|
||||
Modem::~Modem() {
|
||||
|
||||
}
|
||||
|
||||
void Modem::addModemFactory(Modem *factorySingle) {
|
||||
modemFactories[factorySingle->getName()] = factorySingle;
|
||||
}
|
||||
@@ -58,12 +66,19 @@ std::string Modem::readSetting(std::string setting) {
|
||||
return "";
|
||||
}
|
||||
|
||||
Modem::Modem() {
|
||||
|
||||
void Modem::writeSettings(ModemSettings settings) {
|
||||
for (ModemSettings::const_iterator i = settings.begin(); i != settings.end(); i++) {
|
||||
writeSetting(i->first, i->second);
|
||||
}
|
||||
}
|
||||
|
||||
Modem::~Modem() {
|
||||
|
||||
ModemSettings Modem::readSettings() {
|
||||
ModemArgInfoList args = getSettings();
|
||||
ModemSettings rs;
|
||||
for (ModemArgInfoList::const_iterator i = args.begin(); i != args.end(); i++) {
|
||||
rs[i->key] = readSetting(i->key);
|
||||
}
|
||||
return rs;
|
||||
}
|
||||
|
||||
bool Modem::shouldRebuildKit() {
|
||||
|
||||
@@ -105,6 +105,8 @@ typedef std::vector<ModemArgInfo> ModemArgInfoList;
|
||||
class Modem;
|
||||
typedef std::map<std::string,Modem *> ModemFactoryList;
|
||||
|
||||
typedef std::map<std::string, std::string> ModemSettings;
|
||||
|
||||
class Modem {
|
||||
public:
|
||||
static void addModemFactory(Modem *factorySingle);
|
||||
@@ -122,7 +124,9 @@ public:
|
||||
|
||||
virtual ModemArgInfoList getSettings();
|
||||
virtual void writeSetting(std::string setting, std::string value);
|
||||
virtual void writeSettings(ModemSettings settings);
|
||||
virtual std::string readSetting(std::string setting);
|
||||
virtual ModemSettings readSettings();
|
||||
|
||||
virtual int checkSampleRate(long long sampleRate, int audioSampleRate) = 0;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user