diff options
author | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2019-09-28 00:40:51 +0300 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2019-10-04 19:33:08 +0300 |
commit | 224ef9776ac5be51f984780c761713027f2c6102 (patch) | |
tree | 3d626e0a4991c70e4b51b57abe0e821deb4a138b /test/controls | |
parent | c5dfd9d57eae881626a842c666cc6140b11bbba4 (diff) |
libcamera: controls: Make ControlValue get/set accessors template methods
The ControlValue get accessors are implemented with functions of
different names, whlie the set accessors use polymorphism to support
different control types. This isn't very consistent and intuitive. Make
the API clearer by using template methods. This will also have the added
advantage that support for the new types will only require adding
template specialisations, without adding new methods.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Diffstat (limited to 'test/controls')
-rw-r--r-- | test/controls/control_info.cpp | 4 | ||||
-rw-r--r-- | test/controls/control_list.cpp | 16 | ||||
-rw-r--r-- | test/controls/control_value.cpp | 12 |
3 files changed, 16 insertions, 16 deletions
diff --git a/test/controls/control_info.cpp b/test/controls/control_info.cpp index 8cda860b..faefaaa4 100644 --- a/test/controls/control_info.cpp +++ b/test/controls/control_info.cpp @@ -32,7 +32,7 @@ protected: return TestFail; } - if (info.min().getInt() != 0 || info.max().getInt() != 0) { + if (info.min().get<int>() != 0 || info.max().get<int>() != 0) { cout << "Invalid control range for Brightness" << endl; return TestFail; } @@ -50,7 +50,7 @@ protected: return TestFail; } - if (info.min().getInt() != 10 || info.max().getInt() != 200) { + if (info.min().get<int>() != 10 || info.max().get<int>() != 200) { cout << "Invalid control range for Contrast" << endl; return TestFail; } diff --git a/test/controls/control_list.cpp b/test/controls/control_list.cpp index f1d79ff8..0402e7c2 100644 --- a/test/controls/control_list.cpp +++ b/test/controls/control_list.cpp @@ -96,7 +96,7 @@ protected: return TestFail; } - if (list[Brightness].getInt() != 255) { + if (list[Brightness].get<int>() != 255) { cout << "Incorrest Brightness control value" << endl; return TestFail; } @@ -125,8 +125,8 @@ protected: /* * Test control value retrieval and update through ControlInfo. */ - if (list[brightness].getInt() != 64 || - list[contrast].getInt() != 128) { + if (list[brightness].get<int>() != 64 || + list[contrast].get<int>() != 128) { cout << "Failed to retrieve control value" << endl; return TestFail; } @@ -134,8 +134,8 @@ protected: list[brightness] = 10; list[contrast] = 20; - if (list[brightness].getInt() != 10 || - list[contrast].getInt() != 20) { + if (list[brightness].get<int>() != 10 || + list[contrast].get<int>() != 20) { cout << "Failed to update control value" << endl; return TestFail; } @@ -185,9 +185,9 @@ protected: return TestFail; } - if (newList[Brightness].getInt() != 10 || - newList[Contrast].getInt() != 20 || - newList[Saturation].getInt() != 255) { + if (newList[Brightness].get<int>() != 10 || + newList[Contrast].get<int>() != 20 || + newList[Saturation].get<int>() != 255) { cout << "New list contains incorrect values" << endl; return TestFail; } diff --git a/test/controls/control_value.cpp b/test/controls/control_value.cpp index 778efe5c..397c43f7 100644 --- a/test/controls/control_value.cpp +++ b/test/controls/control_value.cpp @@ -27,12 +27,12 @@ protected: << " Bool: " << boolean.toString() << endl; - if (integer.getInt() != 1234) { + if (integer.get<int>() != 1234) { cerr << "Failed to get Integer" << endl; return TestFail; } - if (boolean.getBool() != true) { + if (boolean.get<bool>() != true) { cerr << "Failed to get Boolean" << endl; return TestFail; } @@ -45,19 +45,19 @@ protected: return TestFail; } - value.set(true); + value.set<bool>(true); if (value.isNone()) { cerr << "Failed to set an empty object" << endl; return TestFail; } - if (value.getBool() != true) { + if (value.get<bool>() != true) { cerr << "Failed to get Booleans" << endl; return TestFail; } - value.set(10); - if (value.getInt() != 10) { + value.set<int>(10); + if (value.get<int>() != 10) { cerr << "Failed to get Integer" << endl; return TestFail; } |