diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2017-06-27 11:33:53 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2017-08-03 06:21:10 +0000 |
commit | da3afed804d47d25b5078103d400b5889e67915b (patch) | |
tree | 8363cba63a9af2a3bf9eec615cf9f6dfcadd4b84 /sources/shiboken2/tests/libsample | |
parent | 8c699313c85419dc73db35dbdefc844d88a039c6 (diff) |
libshiboken: Add Array converters
Add a SbkArrayConverter struct which provides a list of
check functions that return a converter function
for an array of matching size.
Add simple array converters for arrays of C++ primitive types.
Instances of the ArrayHandle<>, Array2Handle<> templates will be
generated which may point to internal data or allocated arrays.
Task-number: PYSIDE-354
Task-number: PYSIDE-516
Change-Id: I157606891fad345ccd7af6d4a9d4dcb0c634b2f4
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'sources/shiboken2/tests/libsample')
-rw-r--r-- | sources/shiboken2/tests/libsample/functions.cpp | 12 | ||||
-rw-r--r-- | sources/shiboken2/tests/libsample/functions.h | 2 |
2 files changed, 14 insertions, 0 deletions
diff --git a/sources/shiboken2/tests/libsample/functions.cpp b/sources/shiboken2/tests/libsample/functions.cpp index 4a15cdae8..7a91a7b62 100644 --- a/sources/shiboken2/tests/libsample/functions.cpp +++ b/sources/shiboken2/tests/libsample/functions.cpp @@ -28,7 +28,9 @@ #include "functions.h" #include <string.h> +#include <algorithm> #include <iostream> +#include <numeric> using namespace std; @@ -197,6 +199,16 @@ acceptOddBoolReference(OddBool& x) return x; } +int sumIntArray(int array[4]) +{ + return std::accumulate(array, array + 4, 0); +} + +double sumDoubleArray(double array[4]) +{ + return std::accumulate(array, array + 4, double(0)); +} + ClassWithFunctionPointer::ClassWithFunctionPointer() { callFunctionPointer(0, &ClassWithFunctionPointer::doNothing); diff --git a/sources/shiboken2/tests/libsample/functions.h b/sources/shiboken2/tests/libsample/functions.h index 89a175bc4..69d4cdceb 100644 --- a/sources/shiboken2/tests/libsample/functions.h +++ b/sources/shiboken2/tests/libsample/functions.h @@ -81,6 +81,8 @@ LIBSAMPLE_API double acceptDouble(double x); LIBSAMPLE_API int acceptIntReference(int& x); LIBSAMPLE_API OddBool acceptOddBoolReference(OddBool& x); +LIBSAMPLE_API int sumIntArray(int array[4]); +LIBSAMPLE_API double sumDoubleArray(double array[4]); class LIBSAMPLE_API ClassWithFunctionPointer { |