LP-311 Remove basic/advanced stabilization tab auto-switch (autotune/txpid lock issues)
[librepilot.git] / ground / gcs / src / libs / eigen / debug / msvc / eigen.natvis
blobda8985717974359810e7df52d257cfa8692fa844
1 <?xml version="1.0" encoding="utf-8"?>
3 <AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
5 <!-- Fixed x Fixed Matrix -->
6 <Type Name="Eigen::Matrix&lt;*,*,*,*,*,*&gt;">
7 <AlternativeType Name="Eigen::Array&lt;*,-1,-1,*,*,*&gt;"/>
8 <DisplayString>[{$T2}, {$T3}] (fixed matrix)</DisplayString>
9 <Expand>
10 <ArrayItems Condition="Flags%2"> <!-- row major layout -->
11 <Rank>2</Rank>
12 <Size>$i==0 ? $T2 : $T3</Size>
13 <ValuePointer>m_storage.m_data.array</ValuePointer>
14 </ArrayItems>
15 <ArrayItems Condition="!(Flags%2)"> <!-- column major layout -->
16 <Direction>Backward</Direction>
17 <Rank>2</Rank>
18 <Size>$i==0 ? $T2 : $T3</Size>
19 <ValuePointer>m_storage.m_data.array</ValuePointer>
20 </ArrayItems>
21 </Expand>
22 </Type>
24 <!-- 2 x 2 Matrix -->
25 <Type Name="Eigen::Matrix&lt;*,2,2,*,*,*&gt;">
26 <AlternativeType Name="Eigen::Array&lt;*,2,2,*,*,*&gt;"/>
27 <DisplayString>[2, 2] (fixed matrix)</DisplayString>
28 <Expand>
29 <Synthetic Name="[row 0]" Condition="Flags%2">
30 <DisplayString>({m_storage.m_data.array[0]}, {m_storage.m_data.array[1]})</DisplayString>
31 </Synthetic>
32 <Synthetic Name="[row 0]" Condition="!(Flags%2)">
33 <DisplayString>({m_storage.m_data.array[0]}, {m_storage.m_data.array[2]})</DisplayString>
34 </Synthetic>
35 <Synthetic Name="[row 1]" Condition="Flags%2">
36 <DisplayString>({m_storage.m_data.array[2]}, {m_storage.m_data.array[3]})</DisplayString>
37 </Synthetic>
38 <Synthetic Name="[row 1]" Condition="!(Flags%2)">
39 <DisplayString>({m_storage.m_data.array[1]}, {m_storage.m_data.array[3]})</DisplayString>
40 </Synthetic>
41 </Expand>
42 </Type>
44 <!-- 3 x 3 Matrix -->
45 <Type Name="Eigen::Matrix&lt;*,3,3,*,*,*&gt;">
46 <AlternativeType Name="Eigen::Array&lt;*,3,3,*,*,*&gt;"/>
47 <DisplayString>[3, 3] (fixed matrix)</DisplayString>
48 <Expand>
49 <Synthetic Name="[row 0]" Condition="Flags%2">
50 <DisplayString>({m_storage.m_data.array[0]}, {m_storage.m_data.array[1]}, {m_storage.m_data.array[2]})</DisplayString>
51 </Synthetic>
52 <Synthetic Name="[row 0]" Condition="!(Flags%2)">
53 <DisplayString>({m_storage.m_data.array[0]}, {m_storage.m_data.array[3]}, {m_storage.m_data.array[6]})</DisplayString>
54 </Synthetic>
55 <Synthetic Name="[row 1]" Condition="Flags%2">
56 <DisplayString>({m_storage.m_data.array[3]}, {m_storage.m_data.array[4]}, {m_storage.m_data.array[5]})</DisplayString>
57 </Synthetic>
58 <Synthetic Name="[row 1]" Condition="!(Flags%2)">
59 <DisplayString>({m_storage.m_data.array[1]}, {m_storage.m_data.array[4]}, {m_storage.m_data.array[7]})</DisplayString>
60 </Synthetic>
61 <Synthetic Name="[row 2]" Condition="Flags%2">
62 <DisplayString>({m_storage.m_data.array[6]}, {m_storage.m_data.array[7]}, {m_storage.m_data.array[8]})</DisplayString>
63 </Synthetic>
64 <Synthetic Name="[row 2]" Condition="!(Flags%2)">
65 <DisplayString>({m_storage.m_data.array[2]}, {m_storage.m_data.array[5]}, {m_storage.m_data.array[8]})</DisplayString>
66 </Synthetic>
67 </Expand>
68 </Type>
70 <!-- 4 x 4 Matrix -->
71 <Type Name="Eigen::Matrix&lt;*,4,4,*,*,*&gt;">
72 <AlternativeType Name="Eigen::Array&lt;*,4,4,*,*,*&gt;"/>
73 <DisplayString>[4, 4] (fixed matrix)</DisplayString>
74 <Expand>
75 <Synthetic Name="[row 0]" Condition="Flags%2">
76 <DisplayString>({m_storage.m_data.array[0]}, {m_storage.m_data.array[1]}, {m_storage.m_data.array[2]}, {m_storage.m_data.array[3]})</DisplayString>
77 </Synthetic>
78 <Synthetic Name="[row 0]" Condition="!(Flags%2)">
79 <DisplayString>({m_storage.m_data.array[0]}, {m_storage.m_data.array[4]}, {m_storage.m_data.array[8]}, {m_storage.m_data.array[12]})</DisplayString>
80 </Synthetic>
81 <Synthetic Name="[row 1]" Condition="Flags%2">
82 <DisplayString>({m_storage.m_data.array[4]}, {m_storage.m_data.array[5]}, {m_storage.m_data.array[6]}, {m_storage.m_data.array[7]})</DisplayString>
83 </Synthetic>
84 <Synthetic Name="[row 1]" Condition="!(Flags%2)">
85 <DisplayString>({m_storage.m_data.array[1]}, {m_storage.m_data.array[5]}, {m_storage.m_data.array[9]}, {m_storage.m_data.array[13]})</DisplayString>
86 </Synthetic>
87 <Synthetic Name="[row 2]" Condition="Flags%2">
88 <DisplayString>({m_storage.m_data.array[8]}, {m_storage.m_data.array[9]}, {m_storage.m_data.array[10]}, {m_storage.m_data.array[11]})</DisplayString>
89 </Synthetic>
90 <Synthetic Name="[row 2]" Condition="!(Flags%2)">
91 <DisplayString>({m_storage.m_data.array[2]}, {m_storage.m_data.array[6]}, {m_storage.m_data.array[10]}, {m_storage.m_data.array[14]})</DisplayString>
92 </Synthetic>
93 <Synthetic Name="[row 3]" Condition="Flags%2">
94 <DisplayString>({m_storage.m_data.array[12]}, {m_storage.m_data.array[13]}, {m_storage.m_data.array[14]}, {m_storage.m_data.array[15]})</DisplayString>
95 </Synthetic>
96 <Synthetic Name="[row 3]" Condition="!(Flags%2)">
97 <DisplayString>({m_storage.m_data.array[3]}, {m_storage.m_data.array[7]}, {m_storage.m_data.array[11]}, {m_storage.m_data.array[15]})</DisplayString>
98 </Synthetic>
99 </Expand>
100 </Type>
102 <!-- Dynamic x Dynamic Matrix -->
103 <Type Name="Eigen::Matrix&lt;*,-1,-1,*,*,*&gt;">
104 <AlternativeType Name="Eigen::Array&lt;*,-1,-1,*,*,*&gt;"/>
105 <DisplayString Condition="m_storage.m_data == 0">empty</DisplayString>
106 <DisplayString Condition="m_storage.m_data != 0">[{m_storage.m_rows}, {m_storage.m_cols}] (dynamic matrix)</DisplayString>
107 <Expand>
108 <ArrayItems Condition="Flags%2"> <!-- row major layout -->
109 <Rank>2</Rank>
110 <Size>$i==0 ? m_storage.m_rows : m_storage.m_cols</Size>
111 <ValuePointer>m_storage.m_data</ValuePointer>
112 </ArrayItems>
113 <ArrayItems Condition="!(Flags%2)"> <!-- column major layout -->
114 <Direction>Backward</Direction>
115 <Rank>2</Rank>
116 <Size>$i==0 ? m_storage.m_rows : m_storage.m_cols</Size>
117 <ValuePointer>m_storage.m_data</ValuePointer>
118 </ArrayItems>
119 </Expand>
120 </Type>
122 <!-- Fixed x Dynamic Matrix -->
123 <Type Name="Eigen::Matrix&lt;*,*,-1,*,*,*&gt;">
124 <AlternativeType Name="Eigen::Array&lt;*,*,-1,*,*,*&gt;"/>
125 <DisplayString Condition="m_storage.m_data == 0">empty</DisplayString>
126 <DisplayString Condition="m_storage.m_data != 0">[{$T2}, {m_storage.m_cols}] (dynamic column matrix)</DisplayString>
127 <Expand>
128 <ArrayItems Condition="Flags%2"> <!-- row major layout -->
129 <Rank>2</Rank>
130 <Size>$i==0 ? $T2 : m_storage.m_cols</Size>
131 <ValuePointer>m_storage.m_data</ValuePointer>
132 </ArrayItems>
133 <ArrayItems Condition="!(Flags%2)"> <!-- column major layout -->
134 <Direction>Backward</Direction>
135 <Rank>2</Rank>
136 <Size>$i==0 ? $T2 : m_storage.m_cols</Size>
137 <ValuePointer>m_storage.m_data</ValuePointer>
138 </ArrayItems>
139 </Expand>
140 </Type>
142 <!-- Dynamic x Fixed Matrix -->
143 <Type Name="Eigen::Matrix&lt;*,-1,*,*,*,*&gt;">
144 <AlternativeType Name="Eigen::Array&lt;*,-1,*,*,*,*&gt;"/>
145 <DisplayString Condition="m_storage.m_data == 0">empty</DisplayString>
146 <DisplayString Condition="m_storage.m_data != 0">[{m_storage.m_rows}, {$T2}] (dynamic row matrix)</DisplayString>
147 <Expand>
148 <ArrayItems Condition="Flags%2"> <!-- row major layout -->
149 <Rank>2</Rank>
150 <Size>$i==0 ? m_storage.m_rows : $T2</Size>
151 <ValuePointer>m_storage.m_data</ValuePointer>
152 </ArrayItems>
153 <ArrayItems Condition="!(Flags%2)"> <!-- column major layout -->
154 <Direction>Backward</Direction>
155 <Rank>2</Rank>
156 <Size>$i==0 ? m_storage.m_rows : $T2</Size>
157 <ValuePointer>m_storage.m_data</ValuePointer>
158 </ArrayItems>
159 </Expand>
160 </Type>
162 <!-- Dynamic Column Vector -->
163 <Type Name="Eigen::Matrix&lt;*,1,-1,*,*,*&gt;">
164 <AlternativeType Name="Eigen::Array&lt;*,1,-1,*,*,*&gt;"/>
165 <DisplayString Condition="m_storage.m_data == 0">empty</DisplayString>
166 <DisplayString Condition="m_storage.m_data != 0">[{m_storage.m_cols}] (dynamic column vector)</DisplayString>
167 <Expand>
168 <Item Name="[size]">m_storage.m_cols</Item>
169 <ArrayItems>
170 <Size>m_storage.m_cols</Size>
171 <ValuePointer>m_storage.m_data</ValuePointer>
172 </ArrayItems>
173 </Expand>
174 </Type>
176 <!-- Dynamic Row Vector -->
177 <Type Name="Eigen::Matrix&lt;*,-1,1,*,*,*&gt;">
178 <AlternativeType Name="Eigen::Array&lt;*,-1,1,*,*,*&gt;"/>
179 <DisplayString Condition="m_storage.m_data == 0">empty</DisplayString>
180 <DisplayString Condition="m_storage.m_data != 0">[{m_storage.m_rows}] (dynamic row vector)</DisplayString>
181 <Expand>
182 <Item Name="[size]">m_storage.m_rows</Item>
183 <ArrayItems>
184 <Size>m_storage.m_rows</Size>
185 <ValuePointer>m_storage.m_data</ValuePointer>
186 </ArrayItems>
187 </Expand>
188 </Type>
190 <!-- Fixed Vector -->
191 <Type Name="Eigen::Matrix&lt;*,1,1,*,*,*&gt;">
192 <AlternativeType Name="Eigen::Array&lt;*,1,1,*,*,*&gt;"/>
193 <DisplayString>[1] ({m_storage.m_data.array[0]})</DisplayString>
194 <Expand>
195 <Item Name="[x]">m_storage.m_data.array[0]</Item>
196 </Expand>
197 </Type>
199 <Type Name="Eigen::Matrix&lt;*,2,1,*,*,*&gt;">
200 <AlternativeType Name="Eigen::Matrix&lt;*,1,2,*,*,*&gt;"/>
201 <AlternativeType Name="Eigen::Array&lt;*,2,1,*,*,*&gt;"/>
202 <AlternativeType Name="Eigen::Array&lt;*,1,2,*,*,*&gt;"/>
203 <DisplayString>[2] ({m_storage.m_data.array[0]}, {m_storage.m_data.array[1]})</DisplayString>
204 <Expand>
205 <Item Name="[x]">m_storage.m_data.array[0]</Item>
206 <Item Name="[y]">m_storage.m_data.array[1]</Item>
207 </Expand>
208 </Type>
210 <Type Name="Eigen::Matrix&lt;*,3,1,*,*,*&gt;">
211 <AlternativeType Name="Eigen::Matrix&lt;*,1,3,*,*,*&gt;"/>
212 <AlternativeType Name="Eigen::Array&lt;*,3,1,*,*,*&gt;"/>
213 <AlternativeType Name="Eigen::Array&lt;*,1,3,*,*,*&gt;"/>
214 <DisplayString>[3] ({m_storage.m_data.array[0]}, {m_storage.m_data.array[1]}, {m_storage.m_data.array[2]})</DisplayString>
215 <Expand>
216 <Item Name="[x]">m_storage.m_data.array[0]</Item>
217 <Item Name="[y]">m_storage.m_data.array[1]</Item>
218 <Item Name="[z]">m_storage.m_data.array[2]</Item>
219 </Expand>
220 </Type>
222 <Type Name="Eigen::Matrix&lt;*,4,1,*,*,*&gt;">
223 <AlternativeType Name="Eigen::Matrix&lt;*,1,4,*,*,*&gt;"/>
224 <AlternativeType Name="Eigen::Array&lt;*,4,1,*,*,*&gt;"/>
225 <AlternativeType Name="Eigen::Array&lt;*,1,4,*,*,*&gt;"/>
226 <DisplayString>[4] ({m_storage.m_data.array[0]}, {m_storage.m_data.array[1]}, {m_storage.m_data.array[2]}, {m_storage.m_data.array[3]})</DisplayString>
227 <Expand>
228 <Item Name="[x]">m_storage.m_data.array[0]</Item>
229 <Item Name="[y]">m_storage.m_data.array[1]</Item>
230 <Item Name="[z]">m_storage.m_data.array[2]</Item>
231 <Item Name="[w]">m_storage.m_data.array[3]</Item>
232 </Expand>
233 </Type>
235 </AutoVisualizer>