function_taking_eigenbase.cpp revision c981c48f5bc9aefeffc0bcb0cc3934c2fae179dd
1#include <iostream>
2#include <Eigen/Core>
3using namespace Eigen;
4
5template <typename Derived>
6void print_size(const EigenBase<Derived>& b)
7{
8  std::cout << "size (rows, cols): " << b.size() << " (" << b.rows()
9            << ", " << b.cols() << ")" << std::endl;
10}
11
12int main()
13{
14    Vector3f v;
15    print_size(v);
16    // v.asDiagonal() returns a 3x3 diagonal matrix pseudo-expression
17    print_size(v.asDiagonal());
18}
19