diff options
author | Benoit Jacob <jacob.benoit.1@gmail.com> | 2008-04-03 11:10:17 +0000 |
---|---|---|
committer | Benoit Jacob <jacob.benoit.1@gmail.com> | 2008-04-03 11:10:17 +0000 |
commit | d1a29d6319d6919e0c3d1c624ad45d8202be1942 (patch) | |
tree | b9882a823c7d08819037d341f7e61971304eeadf /doc/examples/class_CwiseUnaryOp.cpp | |
parent | e74fbfb2bc13dee268950361a957aea73bcefc21 (diff) |
-new: recursive costs system, useful to determine automatically
when to evaluate arguments and when to meta-unroll.
-use it in Product to determine when to eval args. not yet used
to determine when to unroll. for now, not used anywhere else but
that'll follow.
-fix badness of my last commit
Diffstat (limited to 'doc/examples/class_CwiseUnaryOp.cpp')
-rw-r--r-- | doc/examples/class_CwiseUnaryOp.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/doc/examples/class_CwiseUnaryOp.cpp b/doc/examples/class_CwiseUnaryOp.cpp index 042e051e9..ea27876eb 100644 --- a/doc/examples/class_CwiseUnaryOp.cpp +++ b/doc/examples/class_CwiseUnaryOp.cpp @@ -5,9 +5,10 @@ using namespace std; // define a custom template binary functor template<typename Scalar> 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 x<m_inf ? m_inf : (x>m_sup ? m_sup : x); } - Scalar m_inf, m_sup; + CwiseClampOp(const Scalar& inf, const Scalar& sup) : m_inf(inf), m_sup(sup) {} + const Scalar operator()(const Scalar& x) const { return x<m_inf ? m_inf : (x>m_sup ? m_sup : x); } + Scalar m_inf, m_sup; + enum { Cost = Eigen::ConditionalJumpCost + Eigen::NumTraits<Scalar>::AddCost }; }; int main(int, char**) |