@@ -36,32 +36,38 @@ void cfg_camera::save() const
36
36
}
37
37
}
38
38
39
- cfg_camera::camera_setting cfg_camera::get_camera_setting (const std::string& camera, bool & success)
39
+ cfg_camera::camera_setting cfg_camera::get_camera_setting (const std::string& handler, const std::string& camera, bool & success)
40
40
{
41
- camera_setting setting;
42
- const std::string value = cameras.get_value (camera);
41
+ camera_setting setting {} ;
42
+ const std::string value = cameras.get_value (handler + " - " + camera);
43
43
success = !value.empty ();
44
44
if (success)
45
45
{
46
- setting.from_string (cameras. get_value (camera) );
46
+ setting.from_string (value );
47
47
}
48
48
return setting;
49
49
}
50
50
51
- void cfg_camera::set_camera_setting (const std::string& camera, const camera_setting& setting)
51
+ void cfg_camera::set_camera_setting (const std::string& handler, const std::string& camera, const camera_setting& setting)
52
52
{
53
+ if (handler.empty ())
54
+ {
55
+ camera_log.error (" String '%s' cannot be used as handler key." , handler);
56
+ return ;
57
+ }
58
+
53
59
if (camera.empty ())
54
60
{
55
61
camera_log.error (" String '%s' cannot be used as camera key." , camera);
56
62
return ;
57
63
}
58
64
59
- cameras.set_value (camera, setting.to_string ());
65
+ cameras.set_value (handler + " - " + camera, setting.to_string ());
60
66
}
61
67
62
68
std::string cfg_camera::camera_setting::to_string () const
63
69
{
64
- return fmt::format (" %d,%d,%f,%f,%d" , width, height, min_fps, max_fps, format);
70
+ return fmt::format (" %d,%d,%f,%f,%d,%d " , width, height, min_fps, max_fps, format, colorspace );
65
71
}
66
72
67
73
void cfg_camera::camera_setting::from_string (const std::string& text)
@@ -106,12 +112,14 @@ void cfg_camera::camera_setting::from_string(const std::string& text)
106
112
!to_integer (::at32 (list, 1 ), height) ||
107
113
!to_double (::at32 (list, 2 ), min_fps) ||
108
114
!to_double (::at32 (list, 3 ), max_fps) ||
109
- !to_integer (::at32 (list, 4 ), format))
115
+ !to_integer (::at32 (list, 4 ), format) ||
116
+ !to_integer (::at32 (list, 4 ), colorspace))
110
117
{
111
118
width = 0 ;
112
119
height = 0 ;
113
120
min_fps = 0 ;
114
121
max_fps = 0 ;
115
122
format = 0 ;
123
+ colorspace = 0 ;
116
124
}
117
125
}
0 commit comments