From 2944fac99787ad2d37cd3e2c8b166d56735c52f5 Mon Sep 17 00:00:00 2001
From: Andreas Huber
Date: Fri, 30 May 2003 15:12:19 +0000
Subject: [PATCH] Various small changes and bug fixes
[SVN r18613]
---
doc/DispatchCost.gif | Bin 4702 -> 0 bytes
doc/acknowledgments.html | 20 +-
doc/index.html | 21 +-
doc/rationale.html | 380 ++++++++++--------
doc/tutorial.html | 140 ++++---
example/BitMachine/BitMachine.cpp | 52 ++-
example/BitMachine/BitMachine.vcproj | 11 +-
example/BitMachine/UniqueObjectAllocator.hpp | 3 +-
example/Camera/Camera.hpp | 8 +-
example/Camera/Camera.vcproj | 3 +
example/Camera/Shooting.hpp | 2 +-
example/Handcrafted/Handcrafted.cpp | 3 +-
example/Handcrafted/Handcrafted.vcproj | 3 +-
example/StateSize/StateSize.cpp | 33 +-
example/StateSize/StateSize.vcproj | 3 +
example/StopWatch/StopWatch.cpp | 4 +-
example/StopWatch/StopWatch.vcproj | 7 +-
include/boost/statechart/custom_reaction.hpp | 9 +-
include/boost/statechart/deferal.hpp | 9 +-
.../boost/statechart/detail/counted_base.hpp | 2 +-
.../boost/statechart/detail/leaf_state.hpp | 12 +-
.../boost/statechart/detail/node_state.hpp | 33 +-
.../boost/statechart/detail/state_base.hpp | 45 ++-
.../statechart/detail/universal_state.hpp | 13 +-
include/boost/statechart/event.hpp | 34 +-
.../boost/statechart/exception_translator.hpp | 5 +-
include/boost/statechart/rtti_policy.hpp | 88 ++++
include/boost/statechart/simple_state.hpp | 64 +--
include/boost/statechart/state.hpp | 2 +-
include/boost/statechart/state_machine.hpp | 235 ++++++-----
include/boost/statechart/termination.hpp | 8 +-
include/boost/statechart/transition.hpp | 18 +-
32 files changed, 762 insertions(+), 508 deletions(-)
delete mode 100644 doc/DispatchCost.gif
create mode 100644 include/boost/statechart/rtti_policy.hpp
diff --git a/doc/DispatchCost.gif b/doc/DispatchCost.gif
deleted file mode 100644
index 60389d99e89caa7142f977dd721d9c321e470229..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 4702
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
diff --git a/doc/acknowledgments.html b/doc/acknowledgments.html
index 7db7f09..4aa4072 100644
--- a/doc/acknowledgments.html
+++ b/doc/acknowledgments.html
@@ -20,15 +20,27 @@
Very special thanks go to Aleksey Gurtovoy, the developer of the ingenious meta programming library (boost::mpl). The interface as well as
-the implementation of boost::fsm hugely benefit from Alekseys work. I would have given up long ago without mpl.
-I would also like to thank
+the implementation of boost::fsm hugely benefit from Alekseys work. I would have given up long ago without mpl.
+Moreover, Aleksey's double dispatch implementation in
+his FSM
+framework gave me fresh ideas after I had come to the conclusion that my
+dynamic_cast-based solution was too bloody bad
+☺. Special
+thanks go to:
- - David Abrahams and Gustavo Guerra for giving feedback on a very early (and quite clumsy) design of this library.
+ - Peter Dimov for developing two other important libraries (
lightweight_mutex, intrusive_ptr) boost::fsm
+ is building on.
+ - various config developers whose efforts make cross-platform
+ development so much less painful.
+
+I would also like to thank:
+
+ - David Abrahams and Gustavo Guerra for giving feedback on a very early (and clumsy) design of this library.
- Aleksey Gurtovoy, Douglas Gregor and Jeff Garland for their encouragement to continue working on this library.
Revised
-19 May, 2003
+30 May, 2003
© Copyright Andreas Huber Dönni 2003. All Rights Reserved.