| 1058 | } |
| 1059 | |
| 1060 | bool ProcessCommandLineArguments(int argc, char *argv[]) |
| 1061 | { |
| 1062 | bool bReturn(true); |
| 1063 | int iArgPtr = 1; |
| 1064 | while (iArgPtr < argc && bReturn) |
| 1065 | { |
| 1066 | if (argc >= iArgPtr + 1) |
| 1067 | { |
| 1068 | if (!strcmp(argv[iArgPtr], "-f") || |
| 1069 | !strcmp(argv[iArgPtr], "--log-file") || |
| 1070 | !strcmp(argv[iArgPtr], "-sf") || |
| 1071 | !strcmp(argv[iArgPtr], "--short-log-file")) |
| 1072 | { |
| 1073 | if (argc >= iArgPtr + 2) |
| 1074 | { |
| 1075 | g_logOutput.open(argv[iArgPtr + 1]); |
| 1076 | g_bShortLog = (!strcmp(argv[iArgPtr], "-sf") || !strcmp(argv[iArgPtr], "--short-log-file")); |
| 1077 | iArgPtr += 2; |
| 1078 | } |
| 1079 | else |
| 1080 | { |
| 1081 | std::cout << "== skipped log-file parameter: no file given ==" << std::endl; |
| 1082 | ++iArgPtr; |
| 1083 | } |
| 1084 | } |
| 1085 | else if (!strcmp(argv[iArgPtr], "-d") || |
| 1086 | !strcmp(argv[iArgPtr], "--log-level")) |
| 1087 | { |
| 1088 | if (argc >= iArgPtr + 2) |
| 1089 | { |
| 1090 | int iNewLevel = atoi(argv[iArgPtr + 1]); |
| 1091 | if (iNewLevel >= CEC_LOG_ERROR && iNewLevel <= CEC_LOG_ALL) |
| 1092 | { |
| 1093 | g_cecLogLevel = iNewLevel; |
| 1094 | if (!g_bSingleCommand) |
| 1095 | std::cout << "log level set to " << argv[iArgPtr + 1] << std::endl; |
| 1096 | } |
| 1097 | else |
| 1098 | { |
| 1099 | std::cout << "== skipped log-level parameter: invalid level '" << argv[iArgPtr + 1] << "' ==" << std::endl; |
| 1100 | } |
| 1101 | iArgPtr += 2; |
| 1102 | } |
| 1103 | else |
| 1104 | { |
| 1105 | std::cout << "== skipped log-level parameter: no level given ==" << std::endl; |
| 1106 | ++iArgPtr; |
| 1107 | } |
| 1108 | } |
| 1109 | else if (!strcmp(argv[iArgPtr], "-t") || |
| 1110 | !strcmp(argv[iArgPtr], "--type")) |
| 1111 | { |
| 1112 | if (argc >= iArgPtr + 2) |
| 1113 | { |
| 1114 | if (!strcmp(argv[iArgPtr + 1], "p")) |
| 1115 | { |
| 1116 | if (!g_bSingleCommand) |
| 1117 | std::cout << "== using device type 'playback device'" << std::endl; |
no test coverage detected