28 int main(
int argc,
char const* argv[])
33 LFATAL(
"USAGE: jevois-add-videomapping <USBmode> <USBwidth> <USBheight> <USBfps> <CAMmode> "
34 "<CAMwidth> <CAMheight> <CAMfps> <Vendor> <Module>");
37 for (
int i = 1; i < argc; ++i) { args += argv[i]; args +=
' '; }
39 std::stringstream ss(args);
44 std::vector<jevois::VideoMapping> vm =
45 jevois::videoMappingsFromStream(jevois::CameraSensor::any, ss, defidx,
false,
true);
47 LFATAL(
"Could not parse input args into a valid video mapping: [" << ss.str() <<
']');
48 jevois::VideoMapping & m = vm[0];
51 std::ifstream ifs(JEVOIS_ENGINE_CONFIG_FILE);
52 if (ifs.is_open() ==
false)
LFATAL(
"Could not open [" << JEVOIS_ENGINE_CONFIG_FILE <<
']');
53 std::vector<jevois::VideoMapping> mappings =
54 jevois::videoMappingsFromStream(jevois::CameraSensor::any, ifs, defidx,
false,
true);
58 for (jevois::VideoMapping
const & mm : mappings)
59 if (m.hasSameSpecsAs(mm) && m.wdr == mm.wdr && m.vendor == mm.vendor && m.modulename == mm.modulename)
63 std::ofstream ofs(JEVOIS_ENGINE_CONFIG_FILE, std::ios_base::app);
64 if (ofs.is_open() ==
false)
LFATAL(
"Could not write to [" << JEVOIS_ENGINE_CONFIG_FILE <<
']');
65 ofs << std::endl << m << std::endl;
67 LINFO(
"Added [" << m.str() <<
"] to [" << JEVOIS_ENGINE_CONFIG_FILE <<
']');