diff options
author | Marcelo Lira <marcelo.lira@openbossa.org> | 2009-08-27 02:48:03 -0300 |
---|---|---|
committer | Marcelo Lira <marcelo.lira@openbossa.org> | 2009-08-27 02:48:03 -0300 |
commit | 39dd735c9486a5808e26a4f07e19522cc904ddd9 (patch) | |
tree | 4717cba945fa41a30d563932a8e327ec58395100 /tests/libsample | |
parent | 560cd5ba22479d4b5067c171838a46a4e559e886 (diff) |
updated sample library with VirtualMethods class which contains
a case of a virtual method that is reimplemented in Python and
checked in the unit test
Reference class and unit tests with cases
of virtual methods that receive C++ references
Diffstat (limited to 'tests/libsample')
-rw-r--r-- | tests/libsample/CMakeLists.txt | 1 | ||||
-rw-r--r-- | tests/libsample/virtualmethods.cpp | 9 | ||||
-rw-r--r-- | tests/libsample/virtualmethods.h | 21 |
3 files changed, 31 insertions, 0 deletions
diff --git a/tests/libsample/CMakeLists.txt b/tests/libsample/CMakeLists.txt index 83c480776..0fe198ead 100644 --- a/tests/libsample/CMakeLists.txt +++ b/tests/libsample/CMakeLists.txt @@ -15,6 +15,7 @@ point.cpp reference.cpp samplenamespace.cpp size.cpp +virtualmethods.cpp ) include_directories(${CMAKE_CURRENT_SOURCE_DIR}) diff --git a/tests/libsample/virtualmethods.cpp b/tests/libsample/virtualmethods.cpp new file mode 100644 index 000000000..a6df98d3b --- /dev/null +++ b/tests/libsample/virtualmethods.cpp @@ -0,0 +1,9 @@ +#include <string.h> +#include "virtualmethods.h" + +double +VirtualMethods::virtualMethod0(Point pt, int val, Complex cpx, bool b) +{ + return (pt.x() * pt.y() * val) + cpx.imag() + ((int) b); +} + diff --git a/tests/libsample/virtualmethods.h b/tests/libsample/virtualmethods.h new file mode 100644 index 000000000..49c12e6ed --- /dev/null +++ b/tests/libsample/virtualmethods.h @@ -0,0 +1,21 @@ +#ifndef VIRTUALMETHODS_H +#define VIRTUALMETHODS_H + +#include "point.h" +#include "complex.h" + +class VirtualMethods +{ +public: + VirtualMethods() {} + ~VirtualMethods() {} + + virtual double virtualMethod0(Point pt, int val, Complex cpx, bool b); + double callVirtualMethod0(Point pt, int val, Complex cpx, bool b) + { + return virtualMethod0(pt, val, cpx, b); + } +}; + +#endif // VIRTUALMETHODS_H + |