Skip to content

Commit 0782cb4

Browse files
1.9.0 (#42)
+ added hfsm2::Config::ManualActivation via Root::enter() / exit() + added replayEnter() and replayTransition() under HFSM2_ENABLE_TRANSITION_HISTORY
1 parent 8140c29 commit 0782cb4

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+1613
-709
lines changed

hfsm2.natvis

Lines changed: 46 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020

2121
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
2222

23-
<Type Name="hfsm2::detail::Array&lt;*&gt;">
23+
<Type Name="hfsm2::detail::ArrayT&lt;*&gt;">
2424
<DisplayString>&lt;{(unsigned) _count &amp; 0xFF}&gt;</DisplayString>
2525
<Expand HideRawView="true">
2626
<ArrayItems>
@@ -32,8 +32,7 @@
3232

3333
<!-- ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ -->
3434

35-
<Type Name="hfsm2::detail::StaticArray&lt;*&gt;">
36-
<DisplayString>&lt;{$T2}&gt;</DisplayString>
35+
<Type Name="hfsm2::detail::StaticArrayT&lt;*&gt;">
3736
<Expand HideRawView="true">
3837
<ArrayItems>
3938
<Size>$T2</Size>
@@ -44,52 +43,34 @@
4443

4544
<!-- ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ -->
4645

47-
<Type Name="hfsm2::detail::BitArray&lt;*&gt;">
48-
<DisplayString>&lt;{CAPACITY &amp; 0x1}&gt;</DisplayString>
46+
<Type Name="hfsm2::detail::BitArrayT&lt;*&gt;">
4947
<Expand HideRawView="true">
5048
<IndexListItems>
51-
<Size>(CAPACITY + 7 / 8)</Size>
52-
<ValueNode>(_storage[$i / (sizeof(Unit) * 8)] &gt;&gt; ($i % (sizeof(Unit) * 8))) &amp; 0x1</ValueNode>
49+
<Size>BIT_COUNT</Size>
50+
<ValueNode>(_storage[$i / UNIT_WIDTH] &gt;&gt; ($i % UNIT_WIDTH)) &amp; 0x1</ValueNode>
5351
</IndexListItems>
5452
</Expand>
5553
</Type>
5654

57-
<Type Name="hfsm2::detail::BitArray&lt;*&gt;::Bits">
55+
<Type Name="hfsm2::detail::BitArrayT&lt;*&gt;::Bits">
5856
<DisplayString>&lt;{CAPACITY &amp; 0x1}&gt;</DisplayString>
5957
<Expand HideRawView="true">
6058
<IndexListItems>
61-
<Size>(CAPACITY + 7 / 8)</Size>
62-
<ValueNode>(_storage[$i / (sizeof(Unit) * 8)] &gt;&gt; ($i % (sizeof(Unit) * 8))) &amp; 0x1</ValueNode>
59+
<Size>BIT_COUNT</Size>
60+
<ValueNode>(_storage[$i / UNIT_WIDTH] &gt;&gt; ($i % UNIT_WIDTH)) &amp; 0x1</ValueNode>
6361
</IndexListItems>
6462
</Expand>
6563
</Type>
6664

67-
<Type Name="hfsm2::detail::BitArray&lt;*&gt;::CBits">
68-
<DisplayString>&lt;{CAPACITY &amp; 0x1}&gt;</DisplayString>
65+
<Type Name="hfsm2::detail::BitArrayT&lt;*&gt;::CBits">
6966
<Expand HideRawView="true">
7067
<IndexListItems>
71-
<Size>(CAPACITY + 7 / 8)</Size>
72-
<ValueNode>(_storage[$i / (sizeof(Unit) * 8)] &gt;&gt; ($i % (sizeof(Unit) * 8))) &amp; 0x1</ValueNode>
68+
<Size>BIT_COUNT</Size>
69+
<ValueNode>(_storage[$i / UNIT_WIDTH] &gt;&gt; ($i % UNIT_WIDTH)) &amp; 0x1</ValueNode>
7370
</IndexListItems>
7471
</Expand>
7572
</Type>
7673

77-
<!-- ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ -->
78-
79-
<Type Name="hfsm2::detail::List&lt;*&gt;">
80-
<DisplayString>{_count} / {CAPACITY}</DisplayString>
81-
<Expand HideRawView="true">
82-
<IndexListItems Condition="_count > 0">
83-
<Size>CAPACITY</Size>
84-
<ValueNode>_cells[$i]</ValueNode>
85-
</IndexListItems>
86-
</Expand>
87-
</Type>
88-
89-
<Type Name="hfsm2::detail::List&lt;*&gt;::Cell">
90-
<DisplayString>{item}</DisplayString>
91-
</Type>
92-
9374
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
9475

9576
<Type Name="hfsm2::detail::Parent">
@@ -163,33 +144,52 @@
163144

164145
<!-- ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ -->
165146

166-
<Type Name="hfsm2::detail::Task">
167-
<DisplayString>{origin} ► {destination}</DisplayString>
147+
<Type Name="hfsm2::detail::TaskBase">
148+
<DisplayString Condition="origin == INVALID_STATE_ID">(■)</DisplayString>
149+
<DisplayString>({(unsigned) origin} ► {(unsigned) destination})</DisplayString>
150+
<Expand HideRawView="true" />
151+
</Type>
152+
153+
<Type Name="hfsm2::detail::TaskListT&lt;*&gt;">
154+
<Expand HideRawView="true">
155+
<IndexListItems Condition="_count > 0">
156+
<Size>CAPACITY</Size>
157+
<ValueNode>_items[$i]</ValueNode>
158+
</IndexListItems>
159+
</Expand>
168160
</Type>
169161

170162
<Type Name="hfsm2::detail::TaskLink">
171-
<DisplayString>{prev} ◄► {next}</DisplayString>
163+
<DisplayString Condition="prev == INVALID_STATE_ID &amp;&amp; next == INVALID_STATE_ID">[■]</DisplayString>
164+
<DisplayString Condition="prev == INVALID_STATE_ID">[► {(unsigned) next}]</DisplayString>
165+
<DisplayString Condition="next == INVALID_STATE_ID">[{(unsigned) prev} ◄]</DisplayString>
166+
<DisplayString>[{(unsigned) prev} ◄► {(unsigned) next}]</DisplayString>
167+
</Type>
168+
169+
<Type Name="hfsm2::detail::Bounds">
170+
<DisplayString>[{(unsigned) first} .. {(unsigned) last}]</DisplayString>
171+
<Expand HideRawView="true" />
172172
</Type>
173173

174174
<!-- ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ -->
175175

176176
<Type Name="hfsm2::detail::PlanT&lt;*&gt;">
177-
<DisplayString Condition="_bounds.first == INVALID_LONG_INDEX">&lt;Empty&gt;</DisplayString>
177+
<DisplayString Condition="_bounds.first == INVALID_LONG">&lt;Empty&gt;</DisplayString>
178178
<Expand HideRawView="true">
179179
<CustomListItems MaxItemsPerView="100">
180180
<Variable Name="i" InitialValue="_bounds.first" />
181181

182-
<If Condition="_bounds.first != INVALID_LONG_INDEX &amp;&amp; _bounds.first != _bounds.last">
182+
<If Condition="_bounds.first != INVALID_LONG &amp;&amp; _bounds.first != _bounds.last">
183183
<Loop>
184-
<Item>_planData.tasks._cells[i].item</Item>
184+
<Item>_planData.tasks._items[i]</Item>
185185
<Exec>i = _planData.taskLinks[i].next</Exec>
186186
<Break Condition="i == _bounds.last" />
187187
</Loop>
188-
<Item>_planData.tasks._cells[_bounds.last].item</Item>
188+
<Item>_planData.tasks._items[_bounds.last]</Item>
189189
</If>
190190

191-
<If Condition="_bounds.first != INVALID_LONG_INDEX &amp;&amp; _bounds.first == _bounds.last">
192-
<Item>_planData.tasks._cells[_bounds.last].item</Item>
191+
<If Condition="_bounds.first != INVALID_LONG &amp;&amp; _bounds.first == _bounds.last">
192+
<Item>_planData.tasks._items[_bounds.last]</Item>
193193
</If>
194194
</CustomListItems>
195195
</Expand>
@@ -198,22 +198,23 @@
198198
<!-- ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ -->
199199

200200
<Type Name="hfsm2::detail::PlanT&lt;*&gt;::Iterator">
201-
<DisplayString Condition="_curr == INVALID_LONG_INDEX">&lt;Empty&gt;</DisplayString>
202-
<DisplayString Condition="_curr != INVALID_LONG_INDEX">{_plan._planData.tasks._cells[_curr].item}</DisplayString>
201+
<DisplayString Condition="_curr == INVALID_LONG">&lt;Empty&gt;</DisplayString>
202+
<DisplayString Condition="_curr != INVALID_LONG">{_plan._planData.tasks._items[_curr]}</DisplayString>
203203
<Expand HideRawView="true">
204-
<ExpandedItem Condition="_curr != INVALID_LONG_INDEX">_plan._planData.tasks._cells[_curr].item</ExpandedItem>
204+
<ExpandedItem Condition="_curr != INVALID_LONG">_plan._planData.tasks._items[_curr]</ExpandedItem>
205205
</Expand>
206206
</Type>
207207

208208
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
209209

210-
<Type Name="hfsm2::detail::DBox&lt;*&gt;">
210+
<Type Name="hfsm2::detail::DynamicBox&lt;*&gt;">
211211
<DisplayString>{TYPE}</DisplayString>
212212
<Expand HideRawView="true" />
213213
</Type>
214214

215-
<Type Name="hfsm2::detail::SBox&lt;*&gt;">
216-
<DisplayString>{TYPE}</DisplayString>
215+
<Type Name="hfsm2::detail::StaticBox&lt;*&gt;">
216+
<DisplayString Optional="true">{TYPE}</DisplayString>
217+
<DisplayString Optional="true">{(Type)t_}</DisplayString>
217218
<Expand HideRawView="true" />
218219
</Type>
219220

0 commit comments

Comments
 (0)