| ; *************************************************************** | |
| ; * Eigen Visualizer | |
| ; * | |
| ; * Author: Hauke Heibel <hauke.heibel@gmail.com> | |
| ; * | |
| ; * Support the enhanced debugging of the following Eigen | |
| ; * types (*: any, +:fixed dimension) : | |
| ; * | |
| ; * - Eigen::Matrix<*,4,1,*,*,*> and Eigen::Matrix<*,1,4,*,*,*> | |
| ; * - Eigen::Matrix<*,3,1,*,*,*> and Eigen::Matrix<*,1,3,*,*,*> | |
| ; * - Eigen::Matrix<*,2,1,*,*,*> and Eigen::Matrix<*,1,2,*,*,*> | |
| ; * - Eigen::Matrix<*,33331,33331,*,*,*> | |
| ; * - Eigen::Matrix<*,+,33331,*,*,*> | |
| ; * - Eigen::Matrix<*,33331,+,*,*,*> | |
| ; * - Eigen::Matrix<*,+,+,*,*,*> | |
| ; * | |
| ; * Matrices are displayed properly independantly of the memory | |
| ; * alignment (RowMajor vs. ColMajor). | |
| ; * | |
| ; * This file is distributed WITHOUT ANY WARRANTY. Please ensure | |
| ; * that your original autoexp.dat file is copied to a safe | |
| ; * place before proceeding with its modification. | |
| ; *************************************************************** | |
| ; Fixed size 4-vectors | |
| Eigen::Matrix<*,4,1,*,*,*>|Eigen::Matrix<*,1,4,*,*,*>{ | |
| children | |
| ( | |
| #( | |
| [internals]: [$c,!], | |
| x : ($c.m_storage.m_data.array)[0], | |
| y : ($c.m_storage.m_data.array)[1], | |
| z : ($c.m_storage.m_data.array)[2], | |
| w : ($c.m_storage.m_data.array)[3] | |
| ) | |
| ) | |
| preview | |
| ( | |
| #( | |
| "(", | |
| #array | |
| ( | |
| expr : [($c.m_storage.m_data.array)[$i],g], | |
| size : 4 | |
| ), | |
| ")" | |
| ) | |
| ) | |
| } | |
| ; Fixed size 3-vectors | |
| Eigen::Matrix<*,3,1,*,*,*>|Eigen::Matrix<*,1,3,*,*,*>{ | |
| children | |
| ( | |
| #( | |
| [internals]: [$c,!], | |
| x : ($c.m_storage.m_data.array)[0], | |
| y : ($c.m_storage.m_data.array)[1], | |
| z : ($c.m_storage.m_data.array)[2] | |
| ) | |
| ) | |
| preview | |
| ( | |
| #( | |
| "(", | |
| #array | |
| ( | |
| expr : [($c.m_storage.m_data.array)[$i],g], | |
| size : 3 | |
| ), | |
| ")" | |
| ) | |
| ) | |
| } | |
| ; Fixed size floating point 2-vectors | |
| Eigen::Matrix<float,2,1,*,*,*>|Eigen::Matrix<float,1,2,*,*,*>|Eigen::Matrix<double,2,1,*,*,*>|Eigen::Matrix<double,1,2,*,*,*>{ | |
| children | |
| ( | |
| #( | |
| [internals]: [$c,!], | |
| x : ($c.m_storage.m_data.array)[0], | |
| y : ($c.m_storage.m_data.array)[1] | |
| ) | |
| ) | |
| preview | |
| ( | |
| #( | |
| "(", | |
| #array | |
| ( | |
| expr : [($c.m_storage.m_data.array)[$i],g], | |
| size : 2 | |
| ), | |
| ")" | |
| ) | |
| ) | |
| } | |
| ; Fixed size integral 2-vectors | |
| Eigen::Matrix<*,2,1,*,*,*>|Eigen::Matrix<*,1,2,*,*,*>{ | |
| children | |
| ( | |
| #( | |
| [internals]: [$c,!], | |
| x : ($c.m_storage.m_data.array)[0], | |
| y : ($c.m_storage.m_data.array)[1] | |
| ) | |
| ) | |
| preview | |
| ( | |
| #( | |
| "(", | |
| #array | |
| ( | |
| expr : ($c.m_storage.m_data.array)[$i], | |
| size : 2 | |
| ), | |
| ")" | |
| ) | |
| ) | |
| } | |
| ; Dynamic matrices (ColMajor and RowMajor support) | |
| Eigen::Matrix<*,33331,33331,*,*,*>{ | |
| children | |
| ( | |
| #( | |
| [internals]: [$c,!], | |
| rows: $c.m_storage.m_rows, | |
| cols: $c.m_storage.m_cols, | |
| ; Check for RowMajorBit | |
| #if ($c.Flags & 0x1) ( | |
| #array( | |
| rank: 2, | |
| base: 0, | |
| expr: ($c.m_storage.m_data)[($i % $c.m_storage.m_rows)*$c.m_storage.m_cols + (($i- $i % $c.m_storage.m_rows)/$c.m_storage.m_rows)], | |
| size: ($r==1)*$c.m_storage.m_rows+($r==0)*$c.m_storage.m_cols | |
| ) | |
| ) #else ( | |
| #array( | |
| rank: 2, | |
| base: 0, | |
| expr: ($c.m_storage.m_data)[$i], | |
| size: ($r==1)*$c.m_storage.m_rows+($r==0)*$c.m_storage.m_cols | |
| ) | |
| ) | |
| ) | |
| ) | |
| preview | |
| ( | |
| #( | |
| "[", | |
| $c.m_storage.m_rows, | |
| ",", | |
| $c.m_storage.m_cols, | |
| "](", | |
| #array( | |
| expr : [($c.m_storage.m_data)[$i],g], | |
| size : $c.m_storage.m_rows*$c.m_storage.m_cols | |
| ), | |
| ")" | |
| ) | |
| ) | |
| } | |
| ; Fixed rows, dynamic columns matrix (ColMajor and RowMajor support) | |
| Eigen::Matrix<*,*,33331,*,*,*>{ | |
| children | |
| ( | |
| #( | |
| [internals]: [$c,!], | |
| rows: $c.RowsAtCompileTime, | |
| cols: $c.m_storage.m_cols, | |
| ; Check for RowMajorBit | |
| #if ($c.Flags & 0x1) ( | |
| #array( | |
| rank: 2, | |
| base: 0, | |
| expr: ($c.m_storage.m_data)[($i % $c.RowsAtCompileTime)*$c.m_storage.m_cols + (($i- $i % $c.RowsAtCompileTime)/$c.RowsAtCompileTime)], | |
| size: ($r==1)*$c.RowsAtCompileTime+($r==0)*$c.m_storage.m_cols | |
| ) | |
| ) #else ( | |
| #array( | |
| rank: 2, | |
| base: 0, | |
| expr: ($c.m_storage.m_data)[$i], | |
| size: ($r==1)*$c.RowsAtCompileTime+($r==0)*$c.m_storage.m_cols | |
| ) | |
| ) | |
| ) | |
| ) | |
| preview | |
| ( | |
| #( | |
| "[", | |
| $c.RowsAtCompileTime, | |
| ",", | |
| $c.m_storage.m_cols, | |
| "](", | |
| #array( | |
| expr : [($c.m_storage.m_data)[$i],g], | |
| size : $c.RowsAtCompileTime*$c.m_storage.m_cols | |
| ), | |
| ")" | |
| ) | |
| ) | |
| } | |
| ; Dynamic rows, fixed columns matrix (ColMajor and RowMajor support) | |
| Eigen::Matrix<*,33331,*,*,*,*>{ | |
| children | |
| ( | |
| #( | |
| [internals]: [$c,!], | |
| rows: $c.m_storage.m_rows, | |
| cols: $c.ColsAtCompileTime, | |
| ; Check for RowMajorBit | |
| #if ($c.Flags & 0x1) ( | |
| #array( | |
| rank: 2, | |
| base: 0, | |
| expr: ($c.m_storage.m_data)[($i % $c.m_storage.m_rows)*$c.ColsAtCompileTime + (($i- $i % $c.m_storage.m_rows)/$c.m_storage.m_rows)], | |
| size: ($r==1)*$c.m_storage.m_rows+($r==0)*$c.ColsAtCompileTime | |
| ) | |
| ) #else ( | |
| #array( | |
| rank: 2, | |
| base: 0, | |
| expr: ($c.m_storage.m_data)[$i], | |
| size: ($r==1)*$c.m_storage.m_rows+($r==0)*$c.ColsAtCompileTime | |
| ) | |
| ) | |
| ) | |
| ) | |
| preview | |
| ( | |
| #( | |
| "[", | |
| $c.m_storage.m_rows, | |
| ",", | |
| $c.ColsAtCompileTime, | |
| "](", | |
| #array( | |
| expr : [($c.m_storage.m_data)[$i],g], | |
| size : $c.m_storage.m_rows*$c.ColsAtCompileTime | |
| ), | |
| ")" | |
| ) | |
| ) | |
| } | |
| ; Fixed size matrix (ColMajor and RowMajor support) | |
| Eigen::Matrix<*,*,*,*,*,*>{ | |
| children | |
| ( | |
| #( | |
| [internals]: [$c,!], | |
| rows: $c.RowsAtCompileTime, | |
| cols: $c.ColsAtCompileTime, | |
| ; Check for RowMajorBit | |
| #if ($c.Flags & 0x1) ( | |
| #array( | |
| rank: 2, | |
| base: 0, | |
| expr: ($c.m_storage.m_data.array)[($i % $c.RowsAtCompileTime)*$c.ColsAtCompileTime + (($i- $i % $c.RowsAtCompileTime)/$c.RowsAtCompileTime)], | |
| size: ($r==1)*$c.RowsAtCompileTime+($r==0)*$c.ColsAtCompileTime | |
| ) | |
| ) #else ( | |
| #array( | |
| rank: 2, | |
| base: 0, | |
| expr: ($c.m_storage.m_data.array)[$i], | |
| size: ($r==1)*$c.RowsAtCompileTime+($r==0)*$c.ColsAtCompileTime | |
| ) | |
| ) | |
| ) | |
| ) | |
| preview | |
| ( | |
| #( | |
| "[", | |
| $c.RowsAtCompileTime, | |
| ",", | |
| $c.ColsAtCompileTime, | |
| "](", | |
| #array( | |
| expr : [($c.m_storage.m_data.array)[$i],g], | |
| size : $c.RowsAtCompileTime*$c.ColsAtCompileTime | |
| ), | |
| ")" | |
| ) | |
| ) | |
| } |