⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 settings.cpp

📁 Dream.exe soft source (Visual C++)
💻 CPP
📖 第 1 页 / 共 3 页
字号:
		}


		/* Frequency acquisition search window center ----------------------- */
		if (GetNumericArgument(argc, argv, i, "-E", "--fracwincent", 0,
			MAX_FREQ_AQC_SE_WIN_CEN, rArgument) == TRUE)
		{
			rFreqAcSeWinCenter = rArgument;
			continue;
		}


		/* Input channel selection ------------------------------------------ */
		if (GetNumericArgument(argc, argv, i, "-c", "--inchansel", 0,
			MAX_VAL_IN_CHAN_SEL, rArgument) == TRUE)
		{
			switch ((int) rArgument)
			{
			case 0:
				pDRMRec->GetReceiver()->
					SetInChanSel(CReceiveData::CS_LEFT_CHAN);
				break;

			case 1:
				pDRMRec->GetReceiver()->
					SetInChanSel(CReceiveData::CS_RIGHT_CHAN);
				break;

			case 2:
				pDRMRec->GetReceiver()->
					SetInChanSel(CReceiveData::CS_MIX_CHAN);
				break;

			case 3:
				pDRMRec->GetReceiver()->
					SetInChanSel(CReceiveData::CS_IQ_POS);
				break;

			case 4:
				pDRMRec->GetReceiver()->
					SetInChanSel(CReceiveData::CS_IQ_NEG);
				break;

			case 5:
				pDRMRec->GetReceiver()->
					SetInChanSel(CReceiveData::CS_IQ_POS_ZERO);
				break;

			case 6:
				pDRMRec->GetReceiver()->
					SetInChanSel(CReceiveData::CS_IQ_NEG_ZERO);
				break;
			}
			continue;
		}


		/* Output channel selection ----------------------------------------- */
		if (GetNumericArgument(argc, argv, i, "-u", "--outchansel", 0,
			MAX_VAL_OUT_CHAN_SEL, rArgument) == TRUE)
		{
			switch ((int) rArgument)
			{
			case 0:
				pDRMRec->GetWriteData()->
					SetOutChanSel(CWriteData::CS_BOTH_BOTH);
				break;

			case 1:
				pDRMRec->GetWriteData()->
					SetOutChanSel(CWriteData::CS_LEFT_LEFT);
				break;

			case 2:
				pDRMRec->GetWriteData()->
					SetOutChanSel(CWriteData::CS_RIGHT_RIGHT);
				break;

			case 3:
				pDRMRec->GetWriteData()->
					SetOutChanSel(CWriteData::CS_LEFT_MIX);
				break;

			case 4:
				pDRMRec->GetWriteData()->
					SetOutChanSel(CWriteData::CS_RIGHT_MIX);
				break;
			}
			continue;
		}


#ifdef USE_QT_GUI /* QThread needed for log file timing */
		/* Start log file flag ---------------------------------------------- */
		if (GetNumericArgument(argc, argv, i, "-l", "--startlog", 1,
			MAX_SEC_LOG_FI_START, rArgument) == TRUE)
		{
			pDRMRec->GetParameters()->ReceptLog.
				SetDelLogStart((int) rArgument);
			continue;
		}


		/* Frequency for log file ------------------------------------------- */
		if (GetNumericArgument(argc, argv, i, "-r", "--frequency", 0,
			MAX_FREQ_LOG_FILE, rArgument) == TRUE)
		{
			pDRMRec->GetParameters()->ReceptLog.
				SetFrequency((int) rArgument);
			continue;
		}


		/* Latitude string for log file ------------------------------------- */
		if (GetStringArgument(argc, argv, i, "-a", "--latitude",
			strArgument) == TRUE)
		{
			pDRMRec->GetParameters()->ReceptLog.SetLatitude(strArgument);
			continue;
		}


		/* Longitude string for log file ------------------------------------ */
		if (GetStringArgument(argc, argv, i, "-o", "--longitude",
			strArgument) == TRUE)
		{
			pDRMRec->GetParameters()->ReceptLog.SetLongitude(strArgument);
			continue;
		}


		/* Color scheme main plot ------------------------------------------- */
		if (GetNumericArgument(argc, argv, i, "-y", "--colorstyle", 0,
			MAX_COLOR_SCHEMES_VAL, rArgument) == TRUE)
		{
			pDRMRec->iMainPlotColorStyle = (int) rArgument;
			continue;
		}


		/* MDI out address -------------------------------------------------- */
		if (GetStringArgument(argc, argv, i, "--mdioutadr", "--mdioutadr",
			strArgument) == TRUE)
		{
			pDRMRec->GetMDI()->SetNetwOutAddr(strArgument);
			continue;
		}


		/* MDI in port number ----------------------------------------------- */
		if (GetNumericArgument(argc, argv, i, "--mdiinport", "--mdiinport", 0,
			MAX_MDI_PORT_IN_NUM, rArgument) == TRUE)
		{
			pDRMRec->GetMDI()->SetNetwInPort((int) rArgument);
			continue;
		}
#endif

#ifdef HAVE_LIBHAMLIB
		/* Hamlib Model ID -------------------------------------------------- */
		if (GetStringArgument(argc, argv, i, "-C", "--hamlib-config",
			strArgument) == TRUE)
		{
			pDRMRec->GetHamlib()->SetHamlibConf(strArgument);
			continue;
		}


		/* Hamlib config string --------------------------------------------- */
		if (GetNumericArgument(argc, argv, i, "-M", "--hamlib-model", 0,
			MAX_ID_HAMLIB, rArgument) == TRUE)
		{
			pDRMRec->GetHamlib()->SetHamlibModelID((int) rArgument);
			continue;
		}


# ifdef USE_QT_GUI
		/* Enable s-meter flag ---------------------------------------------- */
		if (GetFlagArgument(argc, argv, i, "-T", "--ensmeter") == TRUE)
		{
			pDRMRec->bEnableSMeter = TRUE;
			continue;
		}
# endif
#endif


		/* Help (usage) flag ------------------------------------------------ */
		if ((!strcmp(argv[i], "--help")) ||
			(!strcmp(argv[i], "-h")) ||
			(!strcmp(argv[i], "-?")))
		{
			const string strHelp = UsageArguments(argv);

#if defined(_WIN32)
			MessageBox(NULL, strHelp.c_str(), "Dream",
				MB_SYSTEMMODAL | MB_OK | MB_ICONINFORMATION);
#else
			cerr << strHelp;
#endif

			exit(1);
		}


		/* Unknown option --------------------------------------------------- */
		cerr << argv[0] << ": ";
		cerr << "Unknown option '" << argv[i] << "' -- use '--help' for help"
			<< endl;

		exit(1);
	}

	/* Set parameters for frequency acquisition search window if needed */
	if (rFreqAcSeWinSize != (_REAL) 0.0)
	{
		if (rFreqAcSeWinCenter == (_REAL) 0.0)
		{
			/* If no center was specified, set default parameter (in the
			   middle of the available spectrum) */
			rFreqAcSeWinCenter = (_REAL) SOUNDCRD_SAMPLE_RATE / 4;
		}

		/* Set new parameters */
		pDRMRec->GetFreqSyncAcq()->SetSearchWindow(rFreqAcSeWinCenter,
			rFreqAcSeWinSize);
	}

	return bIsReceiver;
}

string CSettings::UsageArguments(char** argv)
{
// TODO: Use macro definitions for help text, too (instead of hard-coded numbers)!

	return
		"Usage: " + string(argv[0]) + " [option] [argument]\n\n"
		"Recognized options:\n\n"
		"  -t, --transmitter           DRM transmitter mode\n"
		"  -p, --flipspectrum          flip input spectrum\n"
		"  -i <n>, --mlciter <n>       number of MLC iterations\n"
		"                              allowed range: 0...4\n"
		"                              default: 1\n"
		"  -s <r>, --sampleoff <r>     sample rate offset initial value [Hz]\n"
		"                              allowed range: -200.0...200.0\n"
		"  -m, --muteaudio             mute audio output\n"
		"  -f <s>, --fileio <s>        disable sound card,\n"
		"                              use file <s> instead\n"
		"  -w <s>, --writewav <s>      write output to wave file\n"
		"  -S <r>, --fracwinsize <r>   freq. acqu. search window size [Hz]\n"
		"  -E <r>, --fracwincent <r>   freq. acqu. search window center [Hz]\n"
		"  -F, --filter                apply bandpass filter\n"
		"  -D, --modmetric             enable modified metrics\n"
		"  -c <n>, --inchansel <n>     input channel selection\n"
		"                              0: left channel\n"
		"                              1: right channel\n"
		"                              2: mix both channels (default)\n"
		"                              3: I / Q input positive\n"
		"                              4: I / Q input negative\n"
		"                              5: I / Q input positive (0 Hz IF)\n"
		"                              6: I / Q input negative (0 Hz IF)\n"
		"  -u <n>, --outchansel <n>    output channel selection\n"
		"                              0: L -> L, R -> R (default)\n"
		"                              1: L -> L, R muted\n"
		"                              2: L muted, R -> R\n"
		"                              3: mix -> L, R muted\n"
		"                              4: L muted, mix -> R\n"

#ifdef USE_QT_GUI
		"  -r <n>, --frequency <n>     set frequency [kHz] for log file\n"
		"  -a <s>, --latitude <s>      set latitude string for log file\n"
		"  -o <s>, --longitude <s>     set longitude string for log file\n"
		"  -l <n>, --startlog <n>      start log file (delayed by\n"
		"                              <n> seconds)\n"
		"                              allowed range: 1...3600\n"
		"  -y <n>, --colorscheme <n>   set color scheme for main plot\n"
		"                              0: blue-white (default)\n"
		"                              1: green-black\n"
		"                              2: black-grey\n"
		"  --mdioutadr <s>             MDI out network address\n"
		"                              format [IP#]:[port]\n"
		"  --mdiinport <n>             set MDI in port number\n"
#endif

		"  -I <n>, --snddevin <n>      set sound in device\n"
		"  -O <n>, --snddevout <n>     set sound out device\n"

#ifdef HAVE_LIBHAMLIB
		"  -M <n>, --hamlib-model <n>  set Hamlib radio model ID\n"
		"  -C <s>, --hamlib-config <s> set Hamlib config parameter\n"
		"  -T, --ensmeter              enable S-Meter\n"
#endif

		"\n  -h, -?, --help             this help text\n\n"
		"Example: " + string(argv[0]) +
		" -p --sampleoff -0.23 -i 2 "
#ifdef USE_QT_GUI
		"-r 6140 -a 50

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -