aboutsummaryrefslogtreecommitdiffhomepage
path: root/doc/examples/class_Reshaped.cpp
diff options
context:
space:
mode:
authorGravatar Gael Guennebaud <g.gael@free.fr>2017-02-11 15:31:28 +0100
committerGravatar Gael Guennebaud <g.gael@free.fr>2017-02-11 15:31:28 +0100
commit83d6a529c3a917763b35aafe8cd5b3b7478fcee6 (patch)
tree931640b3d66c2cae526995c438eb64000dbae52f /doc/examples/class_Reshaped.cpp
parent24409f3acdd987f2734cb3b67d5a78e1d70fd362 (diff)
Use Eigen::fix<N> to pass compile-time sizes.
Diffstat (limited to 'doc/examples/class_Reshaped.cpp')
-rw-r--r--doc/examples/class_Reshaped.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/doc/examples/class_Reshaped.cpp b/doc/examples/class_Reshaped.cpp
new file mode 100644
index 000000000..18fb45454
--- /dev/null
+++ b/doc/examples/class_Reshaped.cpp
@@ -0,0 +1,23 @@
+#include <Eigen/Core>
+#include <iostream>
+using namespace std;
+using namespace Eigen;
+
+template<typename Derived>
+const Reshaped<const Derived>
+reshape_helper(const MatrixBase<Derived>& m, int rows, int cols)
+{
+ return Reshaped<const Derived>(m.derived(), rows, cols);
+}
+
+int main(int, char**)
+{
+ MatrixXd m(3, 4);
+ m << 1, 4, 7, 10,
+ 2, 5, 8, 11,
+ 3, 6, 9, 12;
+ cout << m << endl;
+ Ref<const MatrixXd> n = reshape_helper(m, 2, 6);
+ cout << "Matrix m is:" << endl << m << endl;
+ cout << "Matrix n is:" << endl << n << endl;
+}