From 138aad0ed03cb9045b1f74ce52f0e47ce02966c8 Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Thu, 6 Mar 2008 11:36:27 +0000 Subject: * coefficient wise operators are more generic, with controllable result type. - compatible with current STL's functors as well as with the extention proposal (TR1) * thanks to the above, Cast and ScalarMultiple have been removed * benchmark_suite is more flexible (compiler and matrix size) --- doc/examples/class_CwiseUnaryOp.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 doc/examples/class_CwiseUnaryOp.cpp (limited to 'doc/examples/class_CwiseUnaryOp.cpp') diff --git a/doc/examples/class_CwiseUnaryOp.cpp b/doc/examples/class_CwiseUnaryOp.cpp new file mode 100644 index 000000000..e10037352 --- /dev/null +++ b/doc/examples/class_CwiseUnaryOp.cpp @@ -0,0 +1,17 @@ +#include +USING_PART_OF_NAMESPACE_EIGEN +using namespace std; + +// define a custom template binary functor +template +struct CwiseClampOp EIGEN_EMPTY_STRUCT { + CwiseClampOp(const Scalar& inf, const Scalar& sup) : m_inf(inf), m_sup(sup) {} + Scalar operator()(const Scalar& x) const { return xm_sup : m_sup : x); } +}; + +int main(int, char**) +{ + Matrix4d m1 = Matrix4d::random(), m2 = Matrix4d::random(); + cout << m1.cwise(m2, CwiseClampOp(-0.5,0.5)) << endl; + return 0; +} -- cgit v1.2.3