mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-01-18 14:34:17 +08:00
Added a 'pretty printer' for the msvc debugger (tested on Visual Studio 2008).
This commit is contained in:
parent
097cab26fb
commit
64beff03b6
306
debug/msvc/eigen_autoexp_part.dat
Normal file
306
debug/msvc/eigen_autoexp_part.dat
Normal file
@ -0,0 +1,306 @@
|
||||
; ***************************************************************
|
||||
; * 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
|
||||
),
|
||||
")"
|
||||
)
|
||||
)
|
||||
}
|
Loading…
Reference in New Issue
Block a user